* Merge AMOLED and regular dark themes
This allows all variants of dark themes to use black backgrounds as a
separate preference.
* Merge light and dark themes
* Fix ReaderSeekBar color on Dark Blue theme
* Color fixes
* Fix Dark Blue bars ripple
* Simplify night mode check
(cherry picked from commit 0eadc028b6f9daf38cae083cfdc2ff44a1836623)
# 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/base/activity/BaseThemedActivity.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt
* Imported implementation for updating library by next expected update from Neko. This sort uses the last 4 updates for a manga to compute an average time between updates and then extrapolates when the next update should occur.
Currently seems to work perfectly. However, I may have silently messed something up along the way.
All code and algorithms are credited to kyjibo on GitHub. The original commit adding this functionality is here: 681003926a
* Imported implementation for updating library by next expected update from Neko. This sort uses the last 4 updates for a manga to compute an average time between updates and then extrapolates when the next update should occur.
Currently seems to work perfectly. However, I may have silently messed something up along the way.
All code and algorithms are credited to kyjibo on GitHub. The original commit adding this functionality is here: 681003926a
* Remove commented-out line from LibraryUpdateRanker
I missed removing this when first committing. The removed line is a holdover from Neko, which requires 7+, but I removed the function that requires this.
(cherry picked from commit 70ed49e4782579d6ce2e91ace75ef44f8460a64a)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
# app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
# app/src/main/java/eu/kanade/tachiyomi/data/database/tables/MangaTable.kt
* Add Migrate button marginTop and implement Hide not found manga in mass migration
* if else change
* move variable to adapter
* horizontal scroll view for checkboxes in migration_bottom_sheet.xml
* Tracking sheet and search visual adjustments
* Remove track item divider
* Add start margin to "add tracking" button
* Fix track search dialog crash when no item chosen
* Show "remove" action only when track item is previously set
* Remove placeholder for total chapters
* Cleanups
* Add track search error/empty result message
* Make track search dialog fullscreen
* Use AutofitRecyclerView for track search dialog
* Fix text input overlapping
* Run track search from IME action instead
* Remove deprecated method
* Reformat
* Set track search error message on the placeholder
* Use payload to notify track search item change
* Fix track search action icon tint color
(cherry picked from commit cb71d44024816780ba7e0110099a766bdc47f74a)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSearchAdapter.kt
# app/src/main/res/values/styles.xml
* extend library search to enable -<source> search
library search already allows for <source> search to select manga from a
particular source. Similarly, -<source> allows to search for manga that
aren't from the said source. TachiyomiSy has this feature but it heavily
depends on exh methods
A problem when you directly add a negation check is that although
it will work, the genre search kicks in adds back every manga since
-<source> returns true for all genres of a manga
Thus, the solution I decided on was do source search first, and then
move to genre check when it fails. A perhaps useful addition is that,
now you're able to search like this:
<genre1>, -<source>, -<genre2>
* make if-else statements more readable
* refactor containsSourceOrGenre() using `when`
* add comment describing the function
* remove lazy
not really required anymore now that containsSourceOrGenre was rewritten
using `when`
(cherry picked from commit 7e3ea9074c65297177746182a5dfffb5e884c456)
* Fix ReaderActivity system bars behavior
* Fix ReaderActivity transition view text color
* Don't change reader navbar color when windowLightNavigationBar is not available
(cherry picked from commit e2cf15785766f5a386c536154d055e18970adfac)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
* Add flags for sorting per category
* Add logic to LibrarySettingsSheet
* Add logic to LibraryPresenter
* Minor tweaks
* Use enum instead of variables
Also deprecates LibrarySort in favour of the new enum classes
* Remove debug log and suppress deprecation
* Convert DisplayMode setting to enum
Also fix bug were adapter would get de-synced with the current per category setting
* Fix migration crashing app due to values being access before migration
(cherry picked from commit 60890147c3c24ac30a75bfb8c4fab7b8cccd60be)
# Conflicts:
# app/build.gradle.kts
# app/src/main/java/eu/kanade/tachiyomi/data/database/models/Category.kt
# 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/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/LibraryCategoryView.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryItem.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
* Match ReaderActivity theme with the rest of the app
* Fix viewer inset when fullscreen reader is off
* Fix incorrect toolbar color after recreate
* Remove animated inset
* Move isDarkMode to PreferencesHelper
(cherry picked from commit 64c95305b9831762cc0be72f7ab47b006da07fa8)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseThemedActivity.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
# app/src/main/res/layout/reader_activity.xml
* More themes cleanup
* Tweak some things
* Fix 'Clear History' icon
* Split out ripple colored to its own drawable
* Tidy up things
* Unify background dim amount
* Use primaryColor for Account login button
* More colored ripples
* use colorOnPrimary for selected comfortable library item title
Co-authored-by: Soitora <simon.mattila@protonmail.com>
(cherry picked from commit 932c92412c29fe4a8d1410d29a6e77557ad48707)
# Conflicts:
# app/src/main/res/layout-sw720dp/manga_info_header.xml
# app/src/main/res/layout/manga_info_header.xml
# app/src/main/res/layout/reader_activity.xml
# app/src/main/res/menu/library_selection.xml
# app/src/main/res/menu/reader.xml
# app/src/main/res/values/colors.xml
# app/src/main/res/values/dimens.xml
* add start download now
download now for selected chapter
from j2k
Co-Authored-By: Jays2Kings <jays@outlook.com>
* change string to action
* move to bottom
* oopsie
Co-authored-by: Jays2Kings <jays@outlook.com>
(cherry picked from commit 05771ddf6dc7cf61540c51ba1c2e1d4008778f64)
...the browse search
null safe cast to TextView because when searching for manga in a source,
the toolbar has no children and
find() returns null.
(cherry picked from commit ac6b4235b9293c032ad9a290347e0e2ded0a36b8)
* Added text to ChangeMangaCategoriesDialog if invoked with empty category list
* Change dialog text, add negative button, and change positive button to open CategoryController
* Tiny bit of code cleanup and reorganizing
(cherry picked from commit 8deca3b63a5a9348933fa8c5fcfaa13bb85311e4)
* Set notification icon fillColor to Android white
Closes#5340
* Remove '_black' suffix from the glasses icon drawable
(cherry picked from commit 653b7ffcd0fa5213668096059b43766f8ad8ed59)
# Conflicts:
# app/src/main/res/drawable/ic_tachi.xml
This reverts commit c69420373a7e61c1b4eea038447cff6f0409a201.
Caused crashes in TachiyomiSY for some reason. Will have to redo this once we target Android 12.
(cherry picked from commit 07de367476cb337f597880b6f73e8c53e9b2fd19)
* Enable secure screen when incognito mode is enabled
* Fix incognito banner not showing up after configuration changes
(cherry picked from commit fb8aafb69f252efbf9e58bdb80180b3afb59b866)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/security/SecureActivityDelegate.kt
* Coil: Enable disk cache for source items
* MangaCoverFetcher: Let Coil's OkHttp client handle caching for non-library cover
(cherry picked from commit 3527dedc993afc0d88143c4fd03fbaf953a4e715)
- Only used when width is >= 720dp instead of 600dp (typically 10" tablets)
- Fix fastscroll in manga view (fixes#5267)
(cherry picked from commit b03ebc1fa4d2fd4321ff736ddd9eda239fa2fdde)
# Conflicts:
# app/src/main/res/layout-w720dp/manga_controller.xml
* Removed the blinking icon and added back the indeterminate indicator for
queued items
* Make the downloading indicator a solid circle
(cherry picked from commit 9de07c11a624072a8ce7e13721103a06078dee67)
* Edge-to-edge bottom sheet when possible
* ReaderSettingsSheet: Animate background dim changes
* Adjust modal bottom sheet in-out animation
* Use public method to get bottom sheet behavior
* Set bottom sheet peek size to 50% screen height
The current auto peek height gives too low value on landscape orientation
* Set bottom sheet navigation bar scrim when needed
(cherry picked from commit 9f744bc44589a3e44fb8b655615c2184d1748c0a)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
* Animated icon for the Library tab
Co-Authored-By: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
* Animated icon for the More tab
Co-Authored-By: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
* Rename more_vert to overflow
Should maybe help any confusion together with the other more_horiz changes.
* Animated icon for the History tab
Co-Authored-By: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
* Clarify names and clean files
* Animated icon for the Updates tab
* Animated icon for the Browse tab
* Recreate the animated icon for the History tab
History icons look better when the internal clock is not moving.
Co-authored-by: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
(cherry picked from commit aed6e12119b1b71710a4dd4139e776ca63b4636c)
* display the currently active restrictions in the library update preference
* removed first line
* use constant instead of literal string
* remove spanned string builder
(cherry picked from commit d9c27e7109fb01db4a103a2d55b5573c2cfe2185)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsLibraryController.kt
* hide the score display on the tracksheet if not supported
* Convert track item to use LinearLayout
Co-authored-by: Andreas E <andreas.everos@gmail.com>
(cherry picked from commit 9a801cfdfba407634532a5ceac0170a9f4716447)
* Added "Green Apple" theme
Totally not stolen from other forks.
Although to cover all my bases I co-author all people who adapted the theme in any form.
Neko, J2K and Tako
Co-Authored-By: Carlos <2092019+CarlosEsco@users.noreply.github.com>
Co-Authored-By: Jays2Kings <jays@outlook.com>
Co-Authored-By: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
* Add black as the OnSecondary color
Co-authored-by: Carlos <2092019+CarlosEsco@users.noreply.github.com>
Co-authored-by: Jays2Kings <jays@outlook.com>
Co-authored-by: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
(cherry picked from commit 4af13e3536493db7de3ff5e24ae5794c1efe3661)
* add preference to auto update trackers during library update
* also update trackers when updating chapters and preference is set
* remove unnecessary launch/join
* perform tracking update within the same chapter update loop to avoid double notifications
(cherry picked from commit e76e903060658530909455664c954cc4a639527d)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
* removed the add function from TrackService.kt as it's not used except within the tracker implementations
* add private modifier
(cherry picked from commit acd927a937e1d7a7253dfd3954969ee9bb00d610)
* Organize and clarify themes file
Increases clarification with better commenting, should make it easier to add or modify current themes.
* Make AMOLED its own theme category
* Tweak ripples for AMOLED
* Add "Midnight Dusk" theme
Ports it from jobobby04/TachiyomiSY.
Co-Authored-By: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
* Add "Hot Pink" theme
Ports it from jobobby04/TachiyomiSY.
Co-Authored-By: OncePunchedMan <64155117+OncePunchedMan@users.noreply.github.com>
* Make AMOLED a base theme
* Final tweaks
Rename "Toolbar.Light" to "Custom.PopupTheme"
Changes placing of backgroundDusk
Removes HotPink and MidnightDusk custom Toolbars, I believe they are unnecessary.
* Rename a Midnight Dusk color
* Make AMOLED independent from Dark as a theme
Co-authored-by: CrepeTF <70870719+CrepeTF@users.noreply.github.com>
Co-authored-by: OncePunchedMan <64155117+OncePunchedMan@users.noreply.github.com>
(cherry picked from commit 176e984b56d66d1e47bd367d7dde03e4a024152c)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceValues.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/base/activity/BaseThemedActivity.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt
# app/src/main/res/values/styles.xml
# app/src/main/res/values/themes.xml
The application class onCreate will also be called when user navigates to an
activity after the app process is killed by the system.
So make sure the incognito is disabled only when the entry point of the app is
created from scratch (e.g. after being force closed by the user).
(cherry picked from commit 3c186a3c8d3fd74f489a7aa2a27906d29502e0f6)
* fix: prevent crash if TrackService.getScoreList() is empty
* disabled track score button if service doesn't support scoring
* first implementation of the Komga tracking
this doesn't work for read lists
* auto track when adding to library
* handle refresh
* 2-way sync of chapters for unattended tracking services
* Update app/src/main/java/eu/kanade/tachiyomi/ui/manga/track/TrackSheet.kt
Co-authored-by: Andreas <andreas.everos@gmail.com>
* group strings together
* support for read lists
* sync read chapters on bind
* only mark local chapters as read during 2-way sync (incoming)
* local progress from read chapters will be sent to remote tracker on bind/refresh
this enables syncing after reading offline
* remove unused variable
* refactor the 2-way sync in a util function
* handle auto add to track for unattended services from the browse source screen when long clicking
this will also sync chapters, as it is possible to have read or marked as read chapters from there
* 2-way sync when library update for TRACKING
* refactor
* better handling of what has been read server side
* refactor: extract function
* fix: localLastRead could be -1 when all chapters are read
* refactor to rethrow exception so it can be shown in toast
* extract strings
* replace komga logo
Co-authored-by: Andreas <andreas.everos@gmail.com>
(cherry picked from commit d6b3b0baf70b3a6caccffd367b707f26c1e6010d)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateService.kt
# app/src/main/java/eu/kanade/tachiyomi/data/track/TrackManager.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourcePresenter.kt
* Add an icon for each link in About
* Add icon for Open source licenses
* Reorder Facebook and Discord
* Revert "Add icon for Open source licenses"
This reverts commit 9b73f8443d1afea60f8bc4165663c8bef0ebf108.
(cherry picked from commit d3ceecf6200654649fc543cda0322b8ee2b3cccc)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/more/AboutController.kt
TODO:
- Make the side nav go beside the toolbar too
- Extract out common main_activity stuff to remove duplicated code
(cherry picked from commit de35a4c62a7636650b1ff88c33de0cc0695f6411)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
# app/src/main/res/layout/main_activity.xml
* hide update and history buttons option
* Move updates and history button in More then hiding
Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
* disable always visible labels
* make it a setting
* remove redundant line
* Fix preference keys
* Update keys again
* Fix import
* Remove extra line
Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
* Show notification to disable Incognito Mode when it's enabled
* Finish ReaderActivity and BrowseSourceController when incognito is disabled
* CLeanup strings
* Only register DisableIncognitoReceiver when needed
(cherry picked from commit cb203ef02cc3c078d5e5717b98ef1db1cf570586)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/App.kt
# app/src/main/java/eu/kanade/tachiyomi/data/notification/Notifications.kt
If more bugs appear probably better to go back to the main thread and process dual-pages every time a page is shown as it did before
(cherry picked from commit fe373a95a2a6eaf9792a28b4f2b4f394ae40fba4)
* Add manga-wised rotation mode settings
Based on #3522
Co-authored-by: bboyz269 <4453811+bboyz269@users.noreply.github.com>
* Fix small mistakes
* Complete TODOs
* Rename functions
rotation -> orientation
* Fix orientation icon not changing
Bug from video
* Fix bug with force portrait not being force if a default value
Bug from video
* Backup viewer_flag as a seperate field in so legacy/forks doesn't crash
* Make viewer_flags nullable so old backups viewer gets restored
* Add migration for old rotation and viewer to new defaults ones
* Rename variable in enums
* Fix migration after OrientationType was changed
* Remove untrue comment
Co-authored-by: bboyz269 <4453811+bboyz269@users.noreply.github.com>
(cherry picked from commit 0fef546a0d4b2a78089b0880564e80708afbe1da)
# Conflicts:
# app/build.gradle.kts
# app/src/main/java/eu/kanade/tachiyomi/data/backup/full/models/BackupManga.kt
# app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
# app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferenceKeys.kt
# app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderPresenter.kt
* Fix download error color tint
* Use progress indicator as download icon border
* Resolve feedback
* Use extension function to set tinted drawable
(cherry picked from commit bf80dd622c9ebbdd27500f210858231a74ac3f4f)
* Cleanup Dual Page Split
* Move where images is processed
* Change parameter name to imageStream
* Use available instead of Int.MAX_VALUE
* Update JavaDoc
(cherry picked from commit 662b71436eea6ddda4d15d18ec0946e946c6e4e9)
* MainActivity: Show bottom nav when the tab page is changed
* Revert "MainActivity: Show bottom nav when the tab page is changed"
This reverts commit 27fd73db
* MainActivity: Show bottom nav when the app bar is fully expanded
(cherry picked from commit d0bf93ebb706811707b956a22b051b6b2bbe02c9)
Have I ever mentioned that I hate insets?
(cherry picked from commit ad9bad3d17aa01140e5dc339c71e19f405caaf90)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
Based on what's in J2K. Also renamed to MaterialSpinnerView to match what's there.
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
(cherry picked from commit 3287ca9cf264fb0d28bdd7e43404cef595d953de)
Bookmarks, Last Read, Date fetched, and has been read fully (this was already tracked but previously it only took the highest chapters
Closes#151
(cherry picked from commit ee4f3e6586910c8c4d62859c867c2a40e41eef67)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/advanced/process/MigrationProcessAdapter.kt
This fix isn't 100% tested, but like 80%.
@arkon if you're reading this, this issue is happening up stream too. I can make a issue for it in the repo but haven't checked if it happens there:
Steps:
Get Cubari source, search "cubari:imgur/3iOqiIy" change to continuous vertical, crop borders. Then back out and open the chapter again. onPageSelected isn't called because recycler position is -1. Regardless of the 4 pages you should be on
also fyi just a slight scroll fixes this issue but still
(cherry picked from commit 88fd6e5c9897d4a528f93dd02cfa2a4c644a799d)
(cherry picked from commit 5f0493f1e55634471414b1369e2e1b8a1b56c656)
Spamming the list post-migration is currently a more common usecase than sources without chapter dates. We'll need to figure out a better way of handling both scenarios.
(cherry picked from commit 5b23f29d06da74c237d8e0ecc7772773ca0b4c1e)
* add sort by date fetched in library
* chapter fetch date to 8
(cherry picked from commit ddd4cc10ff12d2497a001821c678f2c1a90eef34)
# Conflicts:
# app/src/main/java/eu/kanade/tachiyomi/data/database/queries/MangaQueries.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsSheet.kt
# app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySort.kt