Some spring cleaning to remove some unnecessary complexity so things are easier to maintain.
- Start screen: redundant with app shortcuts in Android 7.1+
- Jump to chapters: irrelevant in tablet mode and people can scroll a tiny bit if they really have to
- Option to not scroll away bottom nav: issues with fast scroll will be irrelevant with it being replaced or removed in the Compose migrations
Get ready for people malding over their special needs. https://xkcd.com/1172/
(cherry picked from commit 0b77b78f6a360d759241ac42b1dcf0fe66b27d50)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
* Use Compose in Source tab
* Replace hashCode with key function
* Add ability to turn off pins moving on top of source list
* Changes from review comments
(cherry picked from commit 29a0989f2889d3361f583285091878c9b4570a52)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/source/SourceManager.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourceItem.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcePresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
* Migrate History screen to Compose
- Migrate screen
- Strip logic from presenter into use cases and repository
- Setup for other screen being able to migrate to Compose with Theme
* Changes from review comments
(cherry picked from commit c475acd1eaf9f1fd9394f126a8a6f3c0daf52048)
# Conflicts:
# app/build.gradle.kts
# app/src/main/java/eu/kanade/tachiyomi/App.kt
# app/src/main/java/eu/kanade/tachiyomi/data/database/queries/HistoryQueries.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
# settings.gradle.kts
* Added divider to top of migrate button + adjusted top margin
* Migration sheet now opens fully when initialized
Co-authored-by: CrepeTF <trungnguyen02@outlookcom>
Considering there's no pagination for this list, the data loading can take some
time. So this will show the existing refresh indicator instead of empty view
while the list is loading.
(cherry picked from commit ffd9c6995a0ca376e72ca8271ff673b3477a6e78)
Use ConstraintLayout for ez size ratio calculation and merge cover-only view
holder with compact's
(cherry picked from commit fad1449de34952e12e2c5464dccf500d49fa7fa1)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryComfortableGridHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryCompactGridHolder.kt
# app/src/main/res/layout/source_comfortable_grid_item.xml
# app/src/main/res/layout/source_compact_grid_item.xml
* No title grid added to library and source
* Else added to display title in case image is null or empty
* No title grid renamed and now only available in library
* Spanish strings about cover only grid removed
Co-authored-by: micaelagimenez <micaela.gimenez@ext.prosegur.com>
(cherry picked from commit 44b055c01986b6b4952ab4658e04cf236f922fa0)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceItem.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/setting/DisplayModeSetting.kt
* pan if the image is zoomed instead of navigating away
quickly display full landscape image before zooming to fit height in fit to screen
* add Tap to pan preference, defaults to true
add landscape zoom preference, defaults to false
* hide landscape image zoom option if scale is not fit screen
* fix landscape image zoom for first image and loading image
* properly reload pagerholders when landscape zoom option is changed
* enable landscape zoom by default
(cherry picked from commit d8719ceee9d19af73649613695c739c68091f146)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewer.kt
So nobody will think that the error layout is broken when they see different
layout.
(cherry picked from commit 7108993936f440e6ad7fa927966b4963ec913124)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
* Pair ActionToolbar with ActionMode
This makes ActionToolbar an activity object that can be configured in the
similar way as ActionMode
* Remove action toolbar workaround now that it stays in activity layout
5924
* Set status bar color when action mode is active
6256
* Adjust fab show timing after action mode finished
* Adjust action toolbar layout and animation
Default corner size and use bottom sheet animation
6069
* Adjust action toolbar layout on large screen
Right half of the screen
(cherry picked from commit 2ed01af72381c3abc8692af22bc528c93f24d530)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
Brightness should be modified more often than the color filter. Since this will always be visible even when the sheet is half expanded, you have a better idea of its effect.
(cherry picked from commit ecd54142873d1282721163690c38c52c133e4129)
* SimpleNavigationView: Don't set background and elevation
* Add divider for tabs in bottom sheet
(cherry picked from commit be0a23d9ad6a82ed9b26eaa6248807a80876db63)
* MinMaxNumberPicker: Set IME input to use number only
* MinMaxNumberPicker: Auto disable keyboard input when needed
(cherry picked from commit 3463d6c752cfc1145f4c8db9f65f145002ece5fb)
* Implement feature to selectively clear manga from database based on it's source
* Code cleanup and refactoring
(cherry picked from commit 9fe1a7e2ae14c4d7e70bfd85516d91c44514f04a)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
# app/src/main/java/eu/kanade/tachiyomi/data/database/queries/RawQueries.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
* Changing the text on source title (browse items) to semibold and fixing the color of the subtitle on global search
* Updated history_item, updates_item and global_search to not have bold titles
* Changing global_search_controller_card
* Changing back history_item
(cherry picked from commit f453236840dc3cb1599cf15dd8e362d8418e49f5)
* Implemented language badge on library items
* Added left margin for better viewing the badge on list view
* Adjusting borders on badges, cleaning string interpolation and cleaning code
* Improving readability on Holders and removing unused background and text on grid items
(cherry picked from commit 918502742d9cd26ac70b0db067bfae02bb4c4e88)
* Implement new extension install methods
* Fixes
* Resolve feedback
* Keep pending status when waiting to install
* Cancellable installation
* Remove auto error now that we have cancellable job
(cherry picked from commit b284384f0ad318fea24e7324a4621e12eb9aca7f)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt
# app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/ExtensionHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
* Change how the bottom navigation is hidden
Modifies the translationY instead of the height.
* Cleanups
(cherry picked from commit f125ab01ee07d7144f93e1c67cfcf425f0df5779)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
* MangaFullCoverDialog: Support animated drawable
* Scaled zoom duration
* Wrap reader's image view to be reused in MangaFullCoverDialog
* Cleanups
* Forgot animated stuff for webtoon view
* Cleanups
* Oopsie
* Cleanups
* Consistent max scale for SubsamplingScaleImageView
The max scale will be obtained from the default scale times 3 for
consistent 3x zoom scale.
(cherry picked from commit 746d35b52be76b1ba75be62cdc1192a769fb9661)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerConfig.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt
* Remove the remaining MotionLayout
* Use ImageButton instead of Blank View to handle taps in dead area
And some tweaks
(cherry picked from commit abdb67a123d714401ede9760dfae797f37bb8c56)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
# app/src/main/res/layout-sw720dp/manga_info_header.xml
# app/src/main/res/layout/manga_info_header.xml
# app/src/main/res/xml/manga_summary_section_scene.xml
* Add icons to manga status
* Slightly better formatting
Mixed in with a dose of syntactic sugar
* Remove unnecessary lines
I think they are, at least
* Change according to review comments
- Fix forgotten Tablet code removal
- Change 'android:background' to 'app:srcCompat'
* Adjust size of icon
Smaller and more fitting to the environment
(cherry picked from commit d935e22f0df88d59e6e527cbc3db5dd7d908df35)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
* Remove MotionLayout and add full screen dialog for enlarged cover
* Address some of the review comments
(cherry picked from commit e7d6dfff530db08a8380e68425b9f9d11da497cb)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
# app/src/main/res/xml/manga_info_header_scene.xml
# app/src/main/res/xml/manga_info_header_scene_sw720dp.xml
* Add IME_FLAG_NO_PERSONALIZED_LEARNING flag to text input when incognito is enabled
Tested with Gboard only.
* Revert "Add IME_FLAG_NO_PERSONALIZED_LEARNING flag to text input when incognito is enabled"
This reverts commit 068399db
* Add IME_FLAG_NO_PERSONALIZED_LEARNING flag to text inputs when incognito is enabled
Source preference is not affected.
* Source preference stuff
(cherry picked from commit 3ea84cf0ce23d37a1787663834ab9922f10577f8)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesController.kt
* make check only visible after selecting an item
* replace tick with button and send to bottom
* fixed button visibility
* grey btn out
* resolving some bits
* removing the tick from appbar
* remove useless lines, appl insetter
(cherry picked from commit c666dd623d2efdac2ec5a853cd5761a97ef6fd3a)
* Replace "More" with Arrows
We used to have arrows but it was set away from the description which took a lot of space.
It was changed to "More" text, but with the recent design changes I think it'd look better to get a mix between them both.
* Properly align icons
Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>
* Expand support to Tablets
Get it... expand... hehe 😎
* Fix expanded width
Also fixes so that the constraint for the toggleLess is dependant on the right thing
* Give info toggles its own space
Uses its own margin now to push info rather than just being attached as a info margin.
* Remove weird duplicates I did not add
I did not add these but I don't see a reason to keep dupes
* Add bottom scrim
* Change to centered arrow under info
Anyone wanna experiment/build on top off then feel free to tweak
* Add background glow to icon for contrast
Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
Co-authored-by: Andreas <andreas.everos@gmail.com>
(cherry picked from commit 57aefcd9176450c6413d8e34482fb6c57d120498)
# Conflicts:
# app/src/main/res/drawable/manga_info_more_gradient.xml
# app/src/main/res/layout/manga_info_header.xml
# app/src/main/res/xml/manga_summary_section_scene.xml
Make margin between transparent toolbar and cover more match 1.x
Fixes from when view was redone with MotionLayout
(cherry picked from commit 72002c13d6e37d073a33d0061045d0fafb323296)
# Conflicts:
# app/src/main/res/xml/manga_info_header_scene.xml
* Prepare for edge-to-edge MangaController
* Fix derpy liftToScroll with our own implementation
* Edge-to-edge MangaController
Except when legacy blue theme is used.
* Save app bar lift state for controller backstack
* Fix expanded cover position after the view recycled
* Handle overlap changes when incognito mode disabled
* Tablet fixes
* Revert "Handle overlap changes when incognito mode disabled"
This reverts commit 1f492449
Breaks on rotation changes.
* Fix MangaController's swipe refresh position
* All controllers are now doing lift app bar on scroll by default
They are already doing that before so this pretty much just a cleanups.
* TachiyomiCoordinatorLayout: Support ViewPager for app bar lift state check
I'm willing to revert this if this minute detail solution is deemed too hacky xD
* Fix app bar not lifted when scrolled without fling
* Save app bar lift state across configuration changes
* Fix MangaController's swipe refresh position after configuration change
* TachiyomiCoordinatorLayout: Update ViewPager reference when controller is changed
(cherry picked from commit da16110e1c571526baea34275db41937f68c7e8c)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/ConductorExtensions.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoHeaderAdapter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
* Put themed reader context in adapter
This avoids creating themed context everytime the page holder is created, this
also allows the transition view to use the same themed context.
* Check against app night mode to create themed reader context
* ReaderTransitionView: Use context theme color for texts
The whole reader will need to be recreated when changing reader background while
webtoon mode is used, because recreating just the RecyclerView without messing
up the scroll position is impossible (I hope I just missed something).
(cherry picked from commit 914b686c8eaf3954e291355975532eb28662c38c)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewerAdapter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonConfig.kt
* Use CircularProgressIndicator on PageHolder
Manually rotate the CircularProgressIndicator inside a wrapper view instead of
drawing our own custom indicator.
* Use CircularProgressIndicator on TransitionHolder
(cherry picked from commit 6ba779fb7ae014d1f6e23d46cabf8c633d279d8e)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
* Added "Ninomae" theme
Based on the lovely Ninomae Ina'nis, for Arkon and Flat
* Use updated colors from Ghostbear
Adapted after feedback
Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>
* Tweak the Ninomae theme further
* Sort themes alphabetically
- Sorts themes alphabetically.
- Use the same capital word system in colors.xml for themes.xml as well.
- Rename AMOLED theme to AMOLED mode in theme.xml and color.xml references.
* More tweaks
* Style incognito bar
Uses a dark purple which looks super clean instead of a washed out gray
This sets the groundwork for other themes too
* Tweak final onPrimary color
* Rename Ninomae to Tako
RIP
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
(cherry picked from commit 0d62aedfbb183fbe7c1a4886ed7505c5ce6c8518)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseThemedActivity.kt
* Use Material Components' dialogs
For all dialogs that has direct replacement.
* Convert text input dialogs
* Convert quad-state multi choices dialogs
* Convert date picker dialogs
This also changes the flow to remove selected start/finish tracking date and
the track item itself
* Remove material-dialogs dependencies
(cherry picked from commit ae97bb04458c6a754c6e0ca05a2a3b96ce16894f)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/main/WhatsNewDialogController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPageSheet.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAdvancedController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsBackupController.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsDownloadController.kt