pachli-android/core
Nik Clayton 6bef6f2fae
feat: Simplify adding/removing timelines from tabs (#587)
Previously, modifying any tabs meant opening the left-side nav, opening
Account preferences > Tabs, and then adding / removing tabs. This is
time consuming, and difficult for new users to discover.

In addition, it was possible to remove the Home tab, and there was a
hardcoded minimum of at least two tabs.

Fix this.

When viewing a timeline that is not already in a tab an "Add to tab"
menu item is enabled, which appends the timeline to the list of existing
tabs.

When viewing a timeline in a tab (that is not the Home timeline) a
"Remove tab" menu item is enabled, which removes the tab from the list
of existing tabs.

If the user removes the active tab (either with this menu item, or
through preferences) the tab to the left of the active tab becomes the
new active tab.

A new "Manage tabs" menu item is also provided, as a shortcut to the
existing Account preferences > Tabs screen.

When managing tabs the Home timeline can not be removed; the button to
remove it is removed, and swiping is disabled on that list item. The
restriction of "at least two tabs" has also been removed.

`NotificationsActivity` has been removed, as `TimelineActivity` can
display `NotificationsFragment`.

To make the three "Trending" types (hashtags, links, and posts) more
visually distinct add two new icons for links (ic_newspaper) and posts
(ic_whatshot).

Fixes #572, #584, #585, #569
2024-04-03 00:10:09 +02:00
..
accounts fix: Ensure logging out accounts completes (#515) 2024-03-10 12:25:12 +01:00
activity fix: Show sized placeholder for hidden account media (#516) 2024-03-10 23:13:58 +01:00
common refactor: Simplify and optimize viewBinding delegate (#544) 2024-03-19 16:42:08 +01:00
data refactor: Remove `TabData` type (#576) 2024-03-30 23:27:25 +01:00
database refactor: Remove `TabData` type (#576) 2024-03-30 23:27:25 +01:00
designsystem refactor: Extract user list functionality to `feature:lists` (#537) 2024-03-16 18:42:11 +01:00
model refactor: Remove `TabData` type (#576) 2024-03-30 23:27:25 +01:00
navigation feat: Simplify adding/removing timelines from tabs (#587) 2024-04-03 00:10:09 +02:00
network fix: Allow filter expiration to be set to "indefinite" (#582) 2024-04-01 20:48:11 +02:00
preferences feat: Allow the user to trigger update checks (#458) 2024-02-20 14:50:59 +01:00
testing fix(deps): update agp to v8.3.0, lint to 31.3.0 (#483) 2024-03-01 23:07:14 +01:00
ui refactor: Improve show/hide FAB logic (#580) 2024-04-01 19:57:46 +02:00
AndroidManifest.xml refactor: Start creating core modules (#286) 2023-12-04 16:58:36 +01:00