Commit graph

7111 commits

Author SHA1 Message Date
Cuong M. Tran
d5c57d1ee3
warning to private installer 2024-06-04 13:55:34 +07:00
Cuong M. Tran
0a7f828d77
Feature: details page's theme based on cover (#41)
* Using MaterialKolor & Pallete to generate MaterialTheme based on seedColor

* Fix MangaActionRow's color

* Merge ImageRequest methods into one

* add backdrop color

* support dynamic color in EnhancedSource's metadata view

* dynamic color for MetadataViewScreen

* dynamic color for all dialogs

* Remove palette buttons

* add settings preference

* Update MaterialKolor version to 1.6.1 to fix DynamicMaterialTheme & Add PalleteStyle

* split DynamicMaterialTheme content

* Missed text color in Tsumino & Cleanup & revert some unneeded changes

* Change icon color to secondary

* color for EditMangaDialog

* Custom Spinner's Dropdown style

* TextSelectionHandle color

* color for add-tag dialog

* setting for Style & Animate

* Palette does not support Hardware bitmap

* using MaterialTheme instead of DynamicMaterialTheme when no need for color animation

* reduce color on backdrop

* save/load manga's cover color & ratio with Preferences

* Trying to decode bitmap directly from response when coverCache is not available

* Update MangaCover.vibrantCoverColor map with new color

* Hide Style & Animate settings if theme-cover-based is not enable

* Only generate color if theme-cover-based is enabled

* seedColor by vibrantColor from MangaCover: setPaletteColor won't needed (almost), only when failed to load vibrantColor from MangaCover

* seedColor uses remember directly to the hashmap to recompose whenever cover is updated/changed. Drop successState.seedColor

* generate favorite manga's color every time, instead of just update ratio

* Move MangaCoverMetadata to coil
2024-06-04 00:18:49 +07:00
Cuong M. Tran
acfaab6102
only sync back read chapters from Trackers if chapter list is incremental
also click Tracker button won't sync back if Auto sync is not turned on
2024-05-30 16:47:17 +07:00
Cuong M. Tran
6c844e9ecb
Won't show Related title row if nothing found 2024-05-30 15:34:48 +07:00
Cuong Tran
8dff9ea669
Add Timber logging 2024-05-27 01:49:53 +07:00
Cuong M. Tran
296c2946a2
Avoid set chapter 1 as Read if Tracker is in Wish list/Plan to read/Unread 2024-05-24 01:49:37 +07:00
Cuong M. Tran
6bd8f399d8
Fix auto-sync read from Trackers switch 2024-05-24 00:42:38 +07:00
Cuong M. Tran
6876d82982 Fix Related Mangas (#29)
* using mangaDetailsRequest for relatedMangaListRequest

* rethrow exception if extension failed to get related mangas

* improve coroutine

* More like these

* Fix missing unique mess up LazyRow/LazyGrid order
2024-05-23 11:02:49 +07:00
Cuong M. Tran
ce7177efc6 Auto sync read chapters from Trackers & mark read to update (#28)
* Mark chapter(s) as read will update Tracking

* Fix: sync tracking 2 ways for all trackers

* automatically sync read chapters from Trackers
2024-05-23 11:02:49 +07:00
Cuong M. Tran
81376ae818
[skip ci] update discord 2024-05-22 10:17:26 +07:00
Cuong M. Tran
6cf789e747
Revert back LazyList.isScroll... & fix menuAnchor deprecation caused by Bump compose version (#9682b8d9) 2024-05-20 13:16:47 +07:00
Cuong M. Tran
ac86a9a2d9
Fix fetching related mangas from extensions was not concurrently 2024-05-20 12:38:25 +07:00
CrepeTF
28fb304229
Update themes to follow new compose update changes (#766)
* Update Green Apple theme

* Add some Green Apple theme comments

* Update Lavender theme

* Update Midnight Dusk theme

* Update Nord theme

* Update Strawberry Daiquiri theme

* Update Tako theme

* Update Teal & Turquoise theme

* Update Lavender secondaryContainer and onSecondaryContainer colour

* Update M.Dusk secondaryContainer and onSecondaryContainer colour

* Update Tako secondaryContainer and onSecondaryContainer colour

* Comments

* Update Tidal Wave theme

* Update Yin Yang theme

* Update Yotsuba theme

* Fix navbar tinted background on pure black

* Add surfaceContainer levels to Lavender theme

* Resolve detekt issues

* Add surfaceContainer levels to Midnight Dusk theme

* Add surfaceContainer levels to Nord theme

* Add surfaceContainer levels to Tako theme

* Add surfaceContainer levels to Teal & Turquoise theme

* Add surfaceContainer levels to Tidal Wave theme

* Add surfaceContainer levels to Yin Yang theme

* Add surfaceContainer levels to Yotsuba theme

* Add dark theme surfaceContainer levels to Yotsuba theme

* surfaceContainer tweaks to Yotsuba theme

* surfaceContainer tweaks to Strawberry Daiquiri theme

* surfaceContainer tweaks to Nord theme

* surfaceContainer tweaks to Lavender theme

* Update Tachiyomi theme

* Update Pure Black theme

* Resolve detekt issues

* Oopsie
2024-05-19 02:52:52 +07:00
AntsyLich
33c24ad6ff
Use new SurfaceContainer color roles
Non-dynamic themes need to be updated

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/ReaderPageActionsDialog.kt
2024-05-19 02:52:52 +07:00
FooIbar
05b349c508
Fix tap control area shifting after zooming out (#767) 2024-05-19 02:52:52 +07:00
AntsyLich
dc2dd3dc58
Fix search bar style
(cherry picked from commit ca7391bbf3d49428f6321aa6baa03b0d2b5abff9)
2024-05-19 02:52:52 +07:00
Cuong M. Tran
7f567eaad2
What's New & Preview peeking
- Showing What's New from all Github's release notes
- Add button to show What's Coming from Preview repo
- Add regex to styling Github's comparing link

(cherry picked from commit 06cfba58998fa7d1ff39be80770f16833f81409c)
2024-05-19 02:52:52 +07:00
Cuong M. Tran
bdd8a652c2
A dedicated screen for related entries, fetching directly from sources
* Faster loading of related entries

* Enable fetching related entries from site's entry page (things like "More like this", "Recommendations" etc.)

* Improve & fix bugs of algorithm looking for related entries

(cherry picked from commit 54d91c3f71557becd4fc22ec8500e05f79dc48d8)
2024-05-19 02:52:52 +07:00
Jobobby04
d90a4da895
Possibly fix extension obsolete bug
(cherry picked from commit 46bf139f019fbe6284dc0fa8823715ac877a96b5)
2024-05-19 02:52:52 +07:00
Reagan
b54b3c6267
Change keyboard type in extension repo dialog (#764)
(cherry picked from commit 550f1197e818c35c7c05fd6184e69c7d29559e9f)
(cherry picked from commit 000a4ffc3fd5578890edbca6a8cdd765c4b842df)
2024-05-19 02:52:52 +07:00
Jobobby04
28d9778d49
Minor cleanup
(cherry picked from commit 253060a3bcc7f70f409944ec5212d3e2cd4542f8)
2024-05-19 02:52:52 +07:00
Jobobby04
4465aae0fd
Get new page url on image fetch failure for EHentai
(cherry picked from commit b6b33e8c00b616b70254bdbc13d240f4c13409bb)
2024-05-19 02:52:52 +07:00
Jobobby04
087121a5ec
Add getImageUrl override to EHentai
(cherry picked from commit 2e4f8110908e0f5f61377907e57f13e51790b4dc)
2024-05-19 02:52:52 +07:00
Jobobby04
0d89d0184d
Include lewd filter in filter highlight
(cherry picked from commit 215a1908f700ce30bb117ef6d627ed1b16a11911)
2024-05-19 02:52:52 +07:00
Jobobby04
4ea7aad280
Update dependencies and cleanup
(cherry picked from commit 2d1240b27455fd781fece76173b5f35641df7cd1)
2024-05-19 02:52:52 +07:00
Cuong M. Tran
6f5b8903c0
Fix warning 2024-05-19 02:52:52 +07:00
AntsyLich
9682b8d9d2
Bump compose version
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit e473c7f09fc009161145aca94bd70027f042b0bf)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/components/GlobalSearchResultItems.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
(cherry picked from commit 5550ddad4ef023b335024d9648a59c36ae242168)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionFilterScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/GlobalSearchScreen.kt
2024-05-19 02:52:52 +07:00
Radon Rosborough
7df4ec93b0
Massively improve findFile performance (#728)
* Massively improve findFile performance

* Update libs.versions.toml

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 7ec2108812fbe0483111dbe996e29e5a621b583a)
(cherry picked from commit 089e6268e7777394fe2b2b572ad65e59bdf3477d)
2024-05-19 02:52:52 +07:00
AntsyLich
20230046ae
Trust extension by repo (#570)
(cherry picked from commit 70cd688ac245a70a3146e2ac7374f24b0c3453ab)
(cherry picked from commit bbc8adc3e8d1614f75075a1a81f1cb1b61457168)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/util/ExtensionLoader.kt
2024-05-19 02:52:52 +07:00
AntsyLich
59144028c1
Fix some extension related issue and cleanups
- Extension being marked as not installed instead of untrusted after updating with private installer
- Extension update counter not updating due to extension being marked as untrusted
- Minimize `Key "extension-XXX-YYY" was already used` crash

(cherry picked from commit 21145144cdf550aa775047603e06e261951ebc42)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
(cherry picked from commit 077b673c0aaa78cf94356cdfc43a4730e5b1f787)
2024-05-19 02:52:52 +07:00
FooIbar
5625b0a49f
Log app crash exceptions in dumped crash logs (#742)
(cherry picked from commit a3d438e2f5b427eb8b4c391ab9fe10c5a83baf29)
(cherry picked from commit 14dae420f5f1cd0df8fd91e5e393a598ef853333)
2024-05-19 02:52:52 +07:00
FooIbar
dc75025d78
Use Coil pipeline instead of SSIV for image decode (#692)
(cherry picked from commit c3e7bb12f4cccf42dd3ea169111c771876e640fe)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/coil/TachiyomiImageDecoder.kt
(cherry picked from commit 5ae350866538cb21e43bd92f4fde42472da5afb8)
2024-05-19 02:52:51 +07:00
FooIbar
b226027dce
Use Okio instead of java.io for image processing (#691)
(cherry picked from commit b152e3881bffd9050a8a0ed4030823886e3fe04f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	core/common/src/main/kotlin/tachiyomi/core/common/util/system/ImageUtil.kt
(cherry picked from commit aeeff72bed2a568812e8f09b3089d86df6bfea4d)
2024-05-19 02:52:51 +07:00
FooIbar
35522c75a1
Use m3 ripple and clean up interactionSource usage (#675)
Also remove a leftover of scoped storage adaptation.

(cherry picked from commit f27ca3b1b2f92258c213bca6b27d8eff4c7363ad)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
(cherry picked from commit 5895e78b398b8d3b3c58cb742f2511f20c8103d1)
2024-05-19 02:52:51 +07:00
Cuong M. Tran
1eefa745ea
Updater: similar to Mihon
- Preview version now name Beta, use different package & repo
- Drop syDebugVersion, use commitCount
- Fix Firebase analytics for both Release & Preview build
- Create separate variant for Preview build instead of using syDebugVersion
- Preview version showing changelog_debug.xml
- Release version showing changelog_release.xml
2024-05-08 11:55:10 +07:00
Cuong M. Tran
4161b6cac9
WhatsNewDialog: add button to open Github's release version 2024-05-08 11:12:54 +07:00
Cuong M. Tran
533caa0cc2
AboutScreen: remove Mihon's link & update Komikku's link 2024-05-08 11:01:16 +07:00
Cuong M. Tran
1044e1d115
Change WhatsNew confirm button from Cancel to OK 2024-05-03 18:08:13 +07:00
Cuong M. Tran
0f29586723
Disable invalidate_download_cache since it's not working yet 2024-05-03 18:07:41 +07:00
Cuong M. Tran
5942daa4e1
Related titles: switch to Map to avoid duplicated entries 2024-05-03 10:21:22 +07:00
Cuong M. Tran
2f752e0fc5
Navigate from SourceFeedScreen will allow go back to it instead of Home screen 2024-05-02 16:12:38 +07:00
Cuong M. Tran
5392999e39
Click on the missing Source name in MangaScreen will search for missing extension in ExtensionsScreen 2024-05-02 15:53:43 +07:00
Cuong M. Tran
ba1414d70d
Click uninstalled source in MangaScreen will open extensionsTab 2024-05-02 15:53:43 +07:00
Cuong M. Tran
01007bf870
Add WebView button to SourceFeedScreen 2024-05-02 13:42:50 +07:00
Cuong M. Tran
329417c431
Click on Source name in MangaScreen will open Source's Browsing instead of Global searching 2024-05-02 12:38:49 +07:00
Cuong M. Tran
d9e440084e
Support showing related titles for all extensions...
...by using getSearchManga (if extension support searching)

Drop old API style (using suspend function instead of RxJava)

Cleanup
2024-04-30 02:33:54 +07:00
Cuong Tran
f6be3a494c
BulkSelection: “Select all” for all screens
(cherry picked from commit bddcc089df738e23331b351cc20c8425cb316c74)
2024-04-26 12:44:49 +07:00
Cuong Tran
45553eb096
BulkSelection: avoid using toggle when Select all
(cherry picked from commit 695f872b381feca1051f0f5133a0288d252691e5)
2024-04-26 12:33:05 +07:00
Cuong Tran
097ce0e2c3
Hide bulkSelection’s “Select all” button when not used
(cherry picked from commit 8f8214f65467cde97161a5fd9edab5b1543b333e)
2024-04-26 12:06:29 +07:00
Cuong M. Tran
fddfe6280a
Select All for GlobalSearch
(cherry picked from commit a28233735cac5bce5a630de84555b501ffcccc8d)
2024-04-26 11:45:09 +07:00
Cuong M. Tran
5d870559e7
Merge branch 'master' into bulk-favorite 2024-04-26 11:38:17 +07:00
Cologler
30ab6153ca
fix: check order before restore from backup (#1156) 2024-04-26 11:35:16 +07:00
KaiserBh
e3e5c55a5a
feat: syncing etag and overall improvement. (#1155)
* chore: don't log the access token from google.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: don't log the access token from google.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: forgot to add sy stuff.

The customInfo and readEntries wasn't taken into account, so when it was disabled it will always sync it because it's true by default in BackupOptions.kt. Should be fixed and now it doesn't reset the check mark.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* fix: same device sync.

When same device is initiating the sync just update the remote that.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor: throw early.

When there is network failure or any sort during downloading just throw exception and stop syncing.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor(gdrive): stream the json.

People with over 3k library can't sync because we are hitting OOM ```java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: Failed to allocate a 370950192 byte allocation with 25165824 free bytes and 281MB until OOM, target footprint 333990992, growth limit 603979776```. This should fix that for them but only gdrive.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* feat: a demo for sync with new api

* refactor: perform early null checks

* feat: restore even if push failed

* feat: switch to protobuf

* chore: show error notification when sync fails.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* fix: update order by merge

* fix: call pushSyncData twice

---------

Signed-off-by: KaiserBh <kaiserbh@proton.me>
Co-authored-by: Cologler <skyoflw@gmail.com>
2024-04-26 11:35:16 +07:00
Jobobby04
9681b8f055
Move sync strings to SY files 2024-04-26 11:35:15 +07:00
AntsyLich
9b66027ad8
MangaCoverFetcher: Small cleanups
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 13656959ae0606736f6ca9eb62699dc23e467c2f)
2024-04-26 11:35:15 +07:00
AntsyLich
4836ddfffc
Remove unused imports
(cherry picked from commit 20e4cb26d6c264b13edb357ecfa25a6db21f19b8)
2024-04-26 11:35:15 +07:00
AntsyLich
b07a1428a3
Fix build time zone in about screen
And slight cleanup

(cherry picked from commit aed53d3bdc85ce0e899fbb90b9f9cad0f1b86480)
2024-04-26 11:35:15 +07:00
Andreas
6d4623e616
Fix Migrator not doing work (#604)
(cherry picked from commit 6b3423a12b620dd2aae635ac4e859d00a4f62ceb)
2024-04-26 11:35:15 +07:00
Maddie Witman
ffed74b74c
New Feature: Introduce Upcoming page to Mihon (#420)
* Work in progress upcoming feature

* Checkpointing WIP upcoming feature

* Functional Upcoming Screen

* Rename UpdateCalendar to UpdateUpcoming

* Converted Strings to resources

* Cleanup

* Fixed detekt issues

* Removed Link icon per @AntsyLich's suggestion.

* Detekt

* Fixed Calendar display on wide form factor devices

* Added Key to upcoming lazycolumn

* Updated tablet mode UI to support two column view

* Updated header creation logic

* Updated header creation logic... again

* Moved stray string to resources

* Fixed PR Comments and query refactor

* Tweaks to query, refactored to flow, comments on calendar

* Switched to Date Formatter

* Cleaned up date formatter

* More Refactor work

* Updated Calendar to support localized week formats

* Fixed year format

* Refactored Header animation

* Moved upcoming FAQ

* Completed YearMonth Migration

* Replaced currentYearMonth with delegate

* Even more cleanup

* cleaned up alignment modifiers

* Click Handler and other refactors

* Removed Wrapped Content Height/Size/extra clips

* Huge Refactor for CalendarDay

* Another cleanup attempt

* Migrated to new mihon.feature.* module pattern

* changed access modifier

* A Bunch of changes from the next round of reviews

* Cleanups

* Cleanup 2

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 72222ad86d6fb328d20eead86c6357833d08c061)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	gradle/libs.versions.toml
2024-04-26 11:35:15 +07:00
Andreas
19035174cb
Migrator improvements (#588)
(cherry picked from commit 0265c16eb239518d52b7e9fb4200b5b003418d5d)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2024-04-26 11:35:15 +07:00
Jobobby04
8b4caf11c3
Reduce build warnings 2024-04-26 11:35:15 +07:00
Jobobby04
ae8e931a4a
Fix build 2024-04-26 11:35:15 +07:00
Maddie Witman
1d039752dd
Migrated from Accompanist Webview to KevinZou WebView (#569)
* Migrated from Accompanist Webview to KevinZou WebView to preempt deprecation

* Removed old webview from version library

(cherry picked from commit ba9cfd867c028551c0b0740922c5130b14455c9f)
2024-04-26 11:35:15 +07:00
Andreas
0f9add0eca
Rewrite Migrations (#577)
* Rewrite Migrations

* Fix Detekt errors

* Do migrations synchronous

* Filter and sort migrations

* Review changes

* Review changes 2

* Fix Detekt errors

(cherry picked from commit 666d6aa117756f0a9a57b31f91b7acb0ee5d7409)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/Migrations.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2024-04-26 11:35:15 +07:00
Jobobby04
8c651a1d0f
Fix build 2024-04-26 11:35:15 +07:00
Jobobby04
7a482c64e4
Revert "Migrated from Accompanist Webview to KevinZou WebView (#569)"
This reverts commit 268b4831826df121f2b7fb7529ad367389bc731c.
2024-04-26 11:35:15 +07:00
AntsyLich
e258770407
Fix more TypeReference issues and cleanup
(cherry picked from commit e020ae5ed558e80742ef0ad8bfa0f69af0959d5a)
2024-04-26 11:35:15 +07:00
MajorTanya
4ffdc2d426
Fix extension repo crash with TypeReference issue (#574)
Fix by @AntsyLich.

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 05071b420572a8fa93a55ab02c743c7da4fd3b3a)
2024-04-26 11:35:15 +07:00
MajorTanya
ee4b89ccf9
Fix repo name used for URL instead of baseUrl (#572)
* Fix repo name used for URL instead of baseUrl

This applies to both the item being shown in the screen as well as the
"copy to clipboard" button. Before, copying a repo url would return
"The Repo Name/index.json.min". This PR fixes that.

* Correct Misunderstanding

Passing the whole ExtensionRepo data class through now, using the name
for display purposes and the baseUrl for copying the URL.

(cherry picked from commit da20d00481f112802aade5d63fc1eca15c5496ba)
2024-04-26 11:35:15 +07:00
Maddie Witman
7aefe011fa
Migrated from Accompanist Webview to KevinZou WebView (#569)
* Migrated from Accompanist Webview to KevinZou WebView to preempt deprecation

* Removed old webview from version library

(cherry picked from commit ba9cfd867c028551c0b0740922c5130b14455c9f)
2024-04-26 11:35:14 +07:00
Maddie Witman
93f9bc02d0
Grab extension repo detail from repo.json and include in DB (#506)
* WIP Extension Repo DB Support

* Wired in to extension screen, browse settings screen

* Detekt changes

* Ui tweaks and open in browser

* Migrate ExtensionRepos on Update

* Migration Cleanup

* Slight cleanup / error handling

* Update ExtensionRepo from Repo.json during extension search.
Added Manual refresh in extension repos page.

* Split repo fetching into separate API module, major refactor work

* Removed development strings

* Moved migration to #3

* Fixed rebase

* Detekt changes

* Added Replace Repository Dialog

* Cleanup, removed platform specific code, PR comments

* Removed extra function, reverted small change

* Detekt cleanup

* Apply suggestions from code review

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Fixed error introduced in cleanup

* Tweak for multiline when

* Moved getCount() to flow

* changed getCount to non-suspend, used property delegation

* Apply suggestions from code review

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Fixed formatting with updated comment string

* Big wave of PR comments, renaming/other tweaks

* onOpenWebsite changes

* onOpenWebsite changes

* trying to make single line

* Renamed ExtensionRepoApi.kt to ExtensionRepoService.kt

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 4b4e46851083c29ca412c114b1b96136fcc21442)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/Migrations.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionApi.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	data/src/main/sqldelight/tachiyomi/migrations/3.sqm

# Conflicts:
#	app/src/main/java/eu/kanade/domain/extension/interactor/CreateExtensionRepo.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionApi.kt
2024-04-26 11:35:14 +07:00
renovate[bot]
bc4ee3af78
fix(deps): update aboutlib.version to v11 (major) (#473)
* fix(deps): update aboutlib.version to v11

* Fix build

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit e75488f5d98fb600408d065d1c5060520a8921a4)

# Conflicts:
#	gradle/libs.versions.toml
2024-04-26 11:35:14 +07:00
Maddie Witman
a3fa240253
Rework Duplicate Dialog and Allow Migration (#492)
* (Mostly) Working Manga screen migration via duplicate dialog

* Fully working migrate from Browse Search

* Small tweaks for Antsy

* Update app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt

* Update app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit c0a888807b78891b28c6f6b9f16b719e24b03de1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/DuplicateMangaDialog.kt
#	app/src/main/java/exh/md/follows/MangaDexFollowsScreen.kt
2024-04-26 11:35:14 +07:00
FooIbar
085af9793f
Fix webtoon last visible item position calculation (#562)
Covers the case when image height > screen height.

(cherry picked from commit 34930920a50be25ca05024200bf871512962e3d0)
2024-04-26 11:35:14 +07:00
FooIbar
c8217051b9
Fix recycled item's height being 0 in webtoon mode (#563)
Which will prevent the new image from being decoded until it's visible.

(cherry picked from commit ef6cad58fe0eeb7bfec7e8df33ada87946fa85d3)
2024-04-26 11:35:14 +07:00
AntsyLich
af5dcb6eeb
Address detekt issues
(cherry picked from commit 7e9340aa7f1021eabb4ae01eb0f4cbdfb6cc0589)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/coil/TachiyomiImageDecoder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2024-04-26 11:35:14 +07:00
w
a43e5355b7
Update image-decoder, color management (#523)
* Update image-decoder, color management

* move display profile pref

* remove true color pref

* Move Display Profile settings to a new section

* Partially revert "remove true color pref"

This partially reverts commit e1a75816950e100936699279e1618adb2fa341aa.

* Tweak label

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 3f2c8e9ef6db540c77b818ffdf771674b3e46c8b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	gradle/libs.versions.toml
2024-04-26 11:35:14 +07:00
MajorTanya
4a715c2ff5
Switch to seconds for DATE_MODIFIED of saved pages (#552)
While most Android skins are seemingly able to handle the millisecond
format, the documentation technically specifies seconds. This seems to
be causing issues on Samsung devices using the Samsung Gallery app,
which renders the millisecond timestamps as if they were second ones,
causing the dates to be set at some point in the year 56189.

This change should fix that issue on Samsung devices and have no real
impact on the rest.

(cherry picked from commit 0ea0138a73466af3d371a48e344753844e9bc3d8)
2024-04-26 11:35:14 +07:00
Jobobby04
ed7792b4ee
Fix sync stalled 2024-04-26 11:35:14 +07:00
Cuong M. Tran
7e4fba9bfe
Bulk-selection: Fix warning in BrowseSource 2024-04-26 02:17:29 +07:00
Cuong Tran
8888bfec9d
detekt: cleanup code
# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/FeedScreen.kt
2024-04-26 02:05:02 +07:00
Cuong Tran
3ea1738838
reuse method to add/remove single manga 2024-04-26 01:48:48 +07:00
Cuong Tran
56cabe3c22
reuse bulkSelectionButton as AppBar.Action 2024-04-26 01:48:48 +07:00
Cuong Tran
722ebe757e
reuse Dialog composer 2024-04-26 01:48:48 +07:00
Cuong Tran
55226e3016
fix detekt 2024-04-26 01:48:48 +07:00
Cuong Tran
cd016ab29e
fix: won’t show dialog if skip all then selection list is empty 2024-04-26 01:48:48 +07:00
Cuong Tran
89a5f2e702
no need using builder to create AppBarAction 2024-04-26 01:48:48 +07:00
Cuong M. Tran
a7c6232a50
add BulkSelection to the rest of Migrate, MangaDex… 2024-04-26 01:48:48 +07:00
Cuong M. Tran
df229af0eb
migrate the rest to BulkSelectionScreenModel 2024-04-26 01:48:48 +07:00
Cuong M. Tran
cc5b6a1d5f
separate BulkSelection into standalone BulkFavoriteScreenModel 2024-04-26 01:48:48 +07:00
Cuong M. Tran
42022bf661
improve: toggle selection mode when last item is unselected 2024-04-26 01:48:48 +07:00
Cuong M. Tran
0ad2680b45
renovate code 2024-04-26 01:48:48 +07:00
Cuong M. Tran
3bc673ae17
Feat: allow long click to favorite on GlobalSearch 2024-04-26 01:48:48 +07:00
Cuong M. Tran
c30a8873a2
Bulk favorite for GlobalSearchScreen & MigrateSearchScreen 2024-04-26 01:48:48 +07:00
Cuong M. Tran
8d46ab8fc2
renovate: move SelectionToolbar to its own component 2024-04-26 01:48:48 +07:00
Cuong M. Tran
2df7f13e4e
Fix: Won’t try call favorite if none selected 2024-04-26 01:48:48 +07:00
Cuong M. Tran
a617528fda
Allow/Skip one by one 2024-04-26 01:48:48 +07:00
Cuong M. Tran
83910501b7
Allow skip duplicates 2024-04-26 01:48:48 +07:00
Cuong M. Tran
b64c7f30c0
Bulk selection mode for BrowseSourceScreen 2024-04-26 01:48:48 +07:00
Cuong M. Tran
93fb56b771
rename 2024-04-26 01:48:47 +07:00
Cuong M. Tran
0da6b78d74
Bulk selection for SourceFeedScreen 2024-04-26 01:48:47 +07:00
Cuong M. Tran
46ad83a79b
Use topBar action to add favorite instead of bottomBar
some minor name changes
2024-04-26 01:48:47 +07:00
Cuong M. Tran
8ed81b91ba
Allow bulk-favoite default category 2024-04-26 01:48:47 +07:00
Cuong M. Tran
466f2b0c77
Hide BottomNav when in selection mode 2024-04-26 01:48:47 +07:00
Cuong M. Tran
e3e2141282
Selection:
* Clear selection after set Favorite
* Keep selection when editing categories
2024-04-26 01:48:47 +07:00
Cuong M. Tran
34f35e2461
Allow add to favorite even when no category available 2024-04-26 01:48:47 +07:00
Cuong M. Tran
c7ed0a4324
Set Favorite & Libraries OK now 2024-04-26 01:48:47 +07:00
Cuong M. Tran
468518bdc3
handle back button 2024-04-26 01:48:47 +07:00
Cuong M. Tran
459bbcc9bd
shade for selected items 2024-04-26 01:48:47 +07:00
Cuong M. Tran
5c5a0f5fcf
Toggle and toolbar count 2024-04-26 01:48:47 +07:00
Cuong M. Tran
a4604809bc
selection list & toggleSelection/clearSelection 2024-04-26 01:48:47 +07:00
Cuong M. Tran
89453116d7
Manga won’t show Refreshing while waiting to show related titles 2024-04-25 17:31:23 +07:00
Cuong M. Tran
05aaacb7d1
Preferences for enable/disable related mangas 2024-04-25 17:23:24 +07:00
Cuong M. Tran
0cf256ccce
using search to enable all extensions’ related mangas 2024-04-25 16:43:18 +07:00
Cuong M. Tran
89f8723d7e
Fetching related mangas from Source 2024-04-25 11:40:34 +07:00
Cuong M. Tran
0df6a7fb09
Add relatedMangas to MangaScreenModel 2024-04-25 11:25:02 +07:00
Cuong M. Tran
4d3eeefb2c
LongClick to add/remove related mangas to library
Can support bulkSelection but let’s not complicated the screen
2024-04-23 14:23:44 +07:00
Cuong M. Tran
d764ac3b63
Related titles screen 2024-04-23 13:48:24 +07:00
Jobobby04
2f7617db9e
Actually fix animated images 2024-03-29 12:04:31 +07:00
Jobobby04
2708ddef70
Revert "Re-Add Animated Image Decoders to Coil"
This reverts commit 5d1b1408eb78d94912c36cfbe63ee7663f3c1bb4.
2024-03-29 12:04:31 +07:00
Jobobby04
6799f9b6f7
Re-Add Animated Image Decoders to Coil 2024-03-29 12:00:26 +07:00
Jobobby04
30a27cf6a2
History url is not globally unique 2024-03-29 12:00:26 +07:00
Fermín Cirella
aba59b5522
Add option to reset custom manga info (#1118)
* Add option to reset custom manga info

* Remove extra line

* Update app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt

---------

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2024-03-29 12:00:26 +07:00
KaiserBh
aec3f24831
fix: The trigger for library update wasn't working properly. (#1119)
Missed them, so it was always updating library without actually syncing even when the trigger was on.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2024-03-29 12:00:26 +07:00
Jobobby04
5bcaf4ea4b
Cleanup sync code 2024-03-29 12:00:26 +07:00
Jobobby04
bd9f1c23e5
Update Detekt baseline 2024-03-29 12:00:26 +07:00
Jobobby04
d5ba5a14b4
Move strings to SY strings 2024-03-29 12:00:26 +07:00
Shamicen
02775c7c99
implement mihonapp/mihon#326 (#1104)
* implement mihonapp/mihon#326

Archives are now being read from channels

Co-authored-by: FooIbar <118464521+FooIbar@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* disable parallelisms for loading into memory

* switched to mutex

* detekt changes

* more detekt baseline changes

---------

Co-authored-by: FooIbar <118464521+FooIbar@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2024-03-29 12:00:26 +07:00
KaiserBh
d7ed145c82
feat: add cross device sync (#1005)
* feat: add cross device sync.

* chore: add google api.

* chore: add SY specifics.

* feat: add backupSource, backupPref, and "SY" backupSavedSearches.

I forgot to add the data into the merging logic, So remote always have empty value :(. Better late than never.

* feat(sync): Allow to choose what to sync.

Various improvement and added the option to choose what they want to sync. Added sync library button to LibraryTab as well.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* oops.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor: fix up the sync triggers, and update imports.

* refactor

* chore: review pointers.

* refactor: update imports

* refactor: add more error guard for gdrive.

Also changed it to be app specific, we don't want them to use sync data from SY or other forks as some of the model and backup is different. So if people using other forks they should use the same data and not mismatch.

* fix: conflict and refactor.

* refactor: update imports.

* chore: fix some of detekt error.

* refactor: add breaks and max retries.

I think we were reaching deadlock or infinite loop causing the sync to go forever.

* feat: db changes to accommodate new syncing logic.

Using timestamp to sync is a bit skewed due to system clock etc and therefore there was a lot of issues with it such as removing a manga that shouldn't have been removed. Marking chapters as unread even though it was marked as a read. Hopefully by using versioning system it should eliminate those issues.

* chore: add migrations

* chore: version and is_syncing fields.

* chore: add SY only stuff.

* fix: oops wrong index.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: review pointers.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove the option to reset timestamp

We don't need this anymore since we are utilizing versioning system.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor: Forgot to use the new versioning system.

I forgot to cherry pick this from mihon branch.

* chore: remove isSyncing from Chapter/Manga model.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove unused import.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove isSyncing leftover.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove isSyncing.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor: make sure the manga version is bumped.

When there is changes in the chapters table such as reading or updating last read page we should bump the manga version. This way the manga is synced properly as in the History and last_read history is synced properly. This should fix the sorting issue.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

---------

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2024-03-29 12:00:26 +07:00
Shamicen
c87b68f445
Change preferences containing passwords to appStateKeys (#1083)
* Change preferences containing passwords to appStateKeys

* Change versionCode to 65

* fix merge conflict and add instructions to get library back after migration
2024-03-29 11:56:21 +07:00
AntsyLich
6a6a9dac9c
Fix crash in track date selection dialog
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit f08713587685ddb27cb8ce7184e2dd21ae7968ae)
2024-03-29 11:56:21 +07:00
KaiserBh
caec0afcb1
feat: db changes to accommodate new cross device syncing logic. (#450)
* feat: db changes to accommodate new syncing logic.

Using timestamp to sync is a bit skewed due to system clock etc and therefore there was a lot of issues with it such as removing a manga that shouldn't have been removed. Marking chapters as unread even though it was marked as a read. Hopefully by using versioning system it should eliminate those issues.

* chore: add new line.

* chore: remove isSyncing from Chapter/Manga model.

* chore: remove isSyncing leftover.

* chore: remove isSyncing.

* refactor: remove isSync guard.

Just use it directly to 1 now since we don't have the isSyncing field in Manga or Chapter.

* Lint and stuff

* Add missing ,

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 4ae9dbe52487185ef9ee25f58fabe5025bb2278b)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/creators/MangaBackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupChapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
#	data/src/main/java/tachiyomi/data/chapter/ChapterRepositoryImpl.kt
#	data/src/main/sqldelight/tachiyomi/migrations/2.sqm
#	domain/src/main/java/tachiyomi/domain/manga/model/MangaUpdate.kt
2024-03-29 11:56:12 +07:00
Redjard
38213ce0a6
Fix shizuku being buggy for multi user setups (#494)
* Fix #493

Fetch the current userid separately because shizuku always runs as the main user and would otherwise install and update for the main user

* Update app/src/main/java/eu/kanade/tachiyomi/extension/installer/ShizukuInstaller.kt

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 402e579a69391e7633754066eb8e6480bd9f247d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/installer/ShizukuInstaller.kt
2024-03-29 11:56:12 +07:00
Jobobby04
95250670dc
Fix multiple issues regarding sources loading too late 2024-03-29 11:56:12 +07:00
Cuong Tran
f6dcb2431f
download’s cache renew interval configurable 2024-03-18 14:31:33 +07:00
Cuong M. Tran
7c11ddfc1e
Update CrashLog to include Unofficial ext’s info 2024-03-18 14:30:57 +07:00
Cuong M. Tran
6d255f25ad
Revert "Remove custom extension readme/changelog URLs"
This reverts commit cf5bb4dc9b.

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/ExtensionDetailsScreenModel.kt

This reverts commit cf5bb4dc9b.

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/ExtensionDetailsScreenModel.kt
2024-03-18 14:11:59 +07:00
Cuong M. Tran
3b6d47b68f
Bulk-selection: Fix warning in BrowseSource 2024-03-18 14:08:56 +07:00
Cuong Tran
3fc97b64b5
keep the selection if edit categories list when changing entry/entries categories in Library 2024-03-10 17:01:35 +07:00
Cuong Tran
9e8b9f84fd
detekt: cleanup code 2024-03-10 17:01:35 +07:00
Cuong Tran
f22fea2702
Bulk-selection favorite
- Bulk selection to add to library & change categories of multiple entries all at once, everywhere.
- It can detect duplication being added and give option to allow/skip one by one or allow/skip all duplication.
- Also allow long-click to add/remove single entry to/from library, everywhere.
- It supports default category.

commit 7bca814a8d8481af148fbbe72a6e43623c701356
Merge: 3ee4f35aa 67534b391
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 14:26:29 2024 +0700

    Merge branch 'feature/bulk-favorite' into develop

commit 67534b391ffad5a6586fb1c18394b25afc3b432d
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 14:24:00 2024 +0700

    reuse method to add/remove single manga

commit f24b528c45b49286430286da6fc93a05c2917aa4
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 13:58:14 2024 +0700

    reuse bulkSelectionButton as AppBar.Action

commit d026241d9b742f6acf64d0090a9e6e7be53923c6
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 13:26:46 2024 +0700

    reuse Dialog composer

commit 7eb23481926ec981bece2e2e9ced87c795ef4eb8
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 07:20:58 2024 +0700

    fix detekt

commit 9643b9d834257836300b69bcb95cd587a38e34e0
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sun Mar 10 00:07:18 2024 +0700

    fix: won’t show dialog if skip all then selection list is empty

commit 7faafe9fb440175dcac065bc2963ba3637d10d38
Author: Cuong Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 23:58:46 2024 +0700

    no need using builder to create AppBarAction

commit 5564b366eb879407510a733128c26a73ad8d6f2e
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 18:26:58 2024 +0700

    add BulkSelection to the rest of Migrate, MangaDex…

commit 804bbb3943463298ae0b6eec33c9d3457b2891c9
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 17:40:42 2024 +0700

    migrate the rest to BulkSelectionScreenModel

commit 8e82fc1e87e1e246b7b676ba0fe7ef0c5bf1d016
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Sat Mar 9 11:00:40 2024 +0700

    separate BulkSelection into standalone BulkFavoriteScreenModel

commit 94a127b94d67841339ebdc674e398144e515cd14
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 13:18:35 2024 +0700

    improve: toggle selection mode when last item is unselected

commit ba0009409637f872f37ac407041f937c3afceda8
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 13:00:31 2024 +0700

    renovate code

commit 2d92ff9181297cfe795149968fdcd7e898852792
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 12:25:27 2024 +0700

    Feat: allow long click to favorite on GlobalSearch

commit a24bb06a2a66dcd473c50728b04dc4d6118d0085
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 11:45:48 2024 +0700

    Bulk favorite for GlobalSearchScreen & MigrateSearchScreen

commit 1d844ac74e356a43211c752442cb4279aea30b6f
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 11:29:58 2024 +0700

    renovate: move SelectionToolbar to its own component

commit 62cb90d74c2bde7f7e824de277a3bf6e0256cadc
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Mar 7 09:26:40 2024 +0700

    Fix: Won’t try call favorite if none selected

commit d2ef151c95a4432eddd3848b8e2e102dfd683681
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 18:27:54 2024 +0700

    Allow/Skip one by one

commit 5e138f701ed66b6c18ae1c7a9d58dae482c211e0
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 15:42:21 2024 +0700

    Allow skip duplicates

commit 9ac7a0e393d5aa78d77afde307263a85c8fa051c
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 14:24:52 2024 +0700

    Bulk selection mode for BrowseSourceScreen

commit 9749adca106c3fb911d1b6808f000f9e16008585
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 14:06:12 2024 +0700

    rename

commit 4b5e5105976ca3e488979b93043530a678a36e9c
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 12:34:01 2024 +0700

    Bulk selection for SourceFeedScreen

commit 7775c65af0fd957d020acbccd2bb42073ebcba11
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Wed Mar 6 12:21:55 2024 +0700

    Use topBar action to add favorite instead of bottomBar

    some minor name changes

commit 66417b7adffede1c92e1dbd75b2eac0cc8b9a13c
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 16:32:21 2024 +0700

    Allow bulk-favorite default category

commit 0870a9db3c1986c5ccab641bc77b8a0a9cf47017
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 15:40:02 2024 +0700

    Hide BottomNav when in selection mode

commit 3865c6d467ca0c63be5b387fcac9e9be5a096125
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 15:35:58 2024 +0700

    Selection:

    * Clear selection after set Favorite
    * Keep selection when editing categories

commit e01a5c5d35f226133d15b7ed800688bf442885bc
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Tue Mar 5 15:25:34 2024 +0700

    Allow add to favorite even when no category available

commit a4556058c86801eaabf7bbfae58cdc40af95f467
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Mon Mar 4 18:30:44 2024 +0700

    Set Favorite & Libraries OK now

commit 7e045cb23b2d6da58f0f71f9edcf0c2a2fc60038
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Fri Mar 1 16:40:32 2024 +0700

    handle back button

commit 8e3915431e0d461d45c34fa0ca9188bbdc074203
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Fri Mar 1 16:09:00 2024 +0700

    shade for selected items

commit d89b7bffb5161498bd9e7ebfd26aa3731e808361
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Fri Mar 1 14:33:32 2024 +0700

    Toggle and toolbar count

commit 1ea3a4c5496ca0d002fdbafde2ce913fd28c1987
Author: Cuong M. Tran <cuongtran.tm@gmail.com>
Date:   Thu Feb 29 18:36:57 2024 +0700

    selection list & toggleSelection/clearSelection
2024-03-10 16:53:40 +07:00
AntsyLich
c3b7e33b2f
Fix ChapterDownloadIndicator
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit d8b9a9f593911569ff2bceb49b4f020978d0d2e1)
2024-03-04 11:01:37 +07:00
AntsyLich
e181e2bfe3
Small cleanup
(cherry picked from commit b7e091d5d039e00cababc7daf555280df6cf9c03)
2024-03-04 11:01:37 +07:00
Jobobby04
84fca4290a
Fix for duplicate read 2024-03-04 10:57:36 +07:00
Jobobby04
471c8c9909
Throw IOException 2024-03-04 10:54:05 +07:00
AntsyLich
246ab2e8aa
detekt my beloved
(cherry picked from commit c56f4665ef0276c54f5abebd9ab93e2e283739a6)
2024-03-04 10:53:37 +07:00
renovate[bot]
8766eb412a
Update dependency me.saket.swipe:swipe to v1.3.0 (#343)
* Update dependency me.saket.swipe:swipe to v1.3.0

* Update MangaChapterListItem.kt

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit b51a0a38bd9849b573bc2de0d936d6ab2becb83c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaChapterListItem.kt
2024-03-04 10:53:37 +07:00
AntsyLich
c7757f601e
Switch to Coil3
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit f72b6e4d7c1f2f93d705402e4d80c94160bef54d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/coil/TachiyomiImageDecoder.kt
2024-03-04 10:53:37 +07:00
AntsyLich
c10135002c
Remove custom Pager
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 84984ef7e1d7242924120cd2f171cb9dd75bc916)
2024-03-04 10:53:37 +07:00
AntsyLich
5b40eb5ce9
ChapterDownloadIndicator: Remove composed modifier usage
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit e83bfb0d3511f3c049d1dfe6ca13e74467655e08)
2024-03-04 10:53:37 +07:00
Shamicen
137816b394
Made some changes to ComicInfo metadata (#459)
* Made some changes to ComicInfo metadata

The web field now contains a " " separated list of source and tracker urls.
The translator field will now use the source name if the scanlator field is empty.

* lint

* use already existing source instance

* made translator not nullable

* implemented requested changes

created new Mihon exclusive ComicInfo source field  and populated it with SourceName

reverted previous changes to translator field

* Update core-metadata/src/main/java/tachiyomi/core/metadata/comicinfo/ComicInfo.kt

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Update app/src/main/java/eu/kanade/domain/manga/model/Manga.kt

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Update app/src/main/java/eu/kanade/domain/manga/model/Manga.kt

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Update app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Update app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 4bfc5e7b51452a1a9cac3a3644e6343d1c47aa95)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	core-metadata/src/main/java/tachiyomi/core/metadata/comicinfo/ComicInfo.kt
2024-03-04 10:53:37 +07:00
AntsyLich
9eb420cf42
Don't add custom User Agent for MAL
Closes #298

(cherry picked from commit 7974a1fc0c2b0e237d5704a033a60ec0fd60cdbc)
2024-03-04 10:52:57 +07:00
Splintor
3dad09973e
Allow disabling reader's zoom out (#302)
* Allow disabling reader's zoom out (#62)

* Renamed disable zoom out pref and string

* Zoom to default rate if the scale is inferior

* Fixed null value check and formatting

* Fixed detekt

(cherry picked from commit c15f3f2fd5b11cc9c2088ae2fa444f4fe35ea740)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonFrame.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonRecyclerView.kt
2024-03-04 10:51:49 +07:00
Maddie Witman
2f31c13550
Fix some issues from 7ff95e2 (#415)
* Fixed extra header introduced in 7ff95e2

* Removed parentheses to make detekt happy

* Updated relative date display for dates in the future

* Small cleanup for header creation logic

* replaced "and" with "&&" for better formatting

(cherry picked from commit 07f963d5ae16c3c8d7be025a7e9439ad2110ac71)
2024-03-04 10:51:49 +07:00
beerpsi
31ac23f31c
[ExtensionLoader] Prioritize extension classpath over app classpath (#433)
(cherry picked from commit ab02568ac6e9dabc7a41036bb3d8c77138125544)
2024-03-04 10:51:49 +07:00
MajorTanya
2844dd2e73
Fix DelayedTrackingUpdateJob spam on update errors (#411)
* Fix DelayedTrackingUpdateJob spam on update errors

DelayedTrackingUpdateJob would start spamming when it encountered an
error (e.g. a tracker has an issue) and never stop.
This seems to stem from a circular dependency between the Job's
`doWork` and TrackChapter's `await`.

TrackChapter sets up a completely new instance of the
DelayedTrackingUpdateJob if any Exception was thrown during the track
update.

This causes the Job to get replaced (as per the WorkManager's set
ExistingWorkPolicy).

Because of this, the guard clause at the start of doWork would never
trigger, as all instances of the Job would report being the 0th try
(because they were completely new instances).

This simple fix introduces a boolean `isRetry` parameter to
TrackChapter's await method, which is set to `false` by default.
DelayedTrackingUpdateJob however sets this parameter to `true`, which
means TrackChapter won't try to set up the Job again.

* Rename isRetry parameter to setupJobOnFailure

This also inverts the logic, so true & false were swapped.

(cherry picked from commit 617bf491eee1d1010dc23c3f6df5d148700feb44)
2024-03-04 10:51:49 +07:00
MajorTanya
c33d0d6786
Address overridePendingTransition deprecation (#410)
This function is deprecated starting with API 34 "UpsideDownCake" and
should be replaced with `overrideActivityTransition`.

(cherry picked from commit 840b647b4b4e738fac546b7437dd5449679232a1)
2024-03-04 10:51:49 +07:00
AntsyLich
7628f98b49
Cleanup [BaseColorScheme.getColorScheme]
(cherry picked from commit 95d4df9ca80a88e87e633fc24c7fec677bc9d9b6)
2024-03-04 10:51:49 +07:00
AntsyLich
35f23d66a1
Small cleanup in WorkerInfoScreen
(cherry picked from commit 5aec8f8018236a38106483da08f9cbc28261ac9b)
2024-03-04 10:51:26 +07:00
AntsyLich
12ff1248b5
Revert a mishap in 7ff95e21babda98dd1b479912278d6029cd15f0d
(cherry picked from commit e183cbb231c6d48a17c573dbd3f2c8ce04ff7031)
2024-03-04 10:51:26 +07:00
Jobobby04
18f52a6043
Improve duplicate chapter set as read 2024-03-04 10:50:54 +07:00
Maddie Witman
f7976335f5
Refactor use of Java.util.date to Java.time.*, to fix localized date issues. (#402)
* Add support for localdate based relative times

* Update History Screen to use new localdate based relative times

* Update Updates Screen to use new localdate based relative times

* Cleaned up date util classes

* Updated build time display

* Code cleanup

* Fixed crash in settings

* Updated Preferences item

* Worker Info works

* Fixed Tracker date display

* Code changes to pass detekt

(cherry picked from commit 7ff95e21babda98dd1b479912278d6029cd15f0d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/history/HistoryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/lang/DateExtensions.kt
2024-03-04 10:50:54 +07:00
MajorTanya
4c84954474
Minor refactor of theming when expressions (#396)
* Minor refactor of theming when expressions

Avoids triggering detekt's CyclomaticComplexMethod warning because of
too many when branches, which would happen with one more theme being
added in these two locations.

In TachiyomiTheme, the Monet theme is separated because it requires
the current Compose context to function. The other themes do not and
are delegated to a Map.

* Implement requested changes

- moved themeResources out of the ThemingDelegate interface
- replaced single condition when with if expression

(cherry picked from commit 96c236e5c38248c875f2ac7596cd51845aa651ea)
2024-03-04 10:50:10 +07:00
Jobobby04
804452c909
Cleanup 2024-03-04 10:47:04 +07:00
Fermín Cirella
590f667cc1
Make manga page preview row count configurable (#1087)
* Make manga page preview row count configurable

* Replace string with plural
2024-03-04 10:47:04 +07:00
Shamicen
aaee8c2eb6
fix password protect downloads and copying ComicInfo files in LocalSource (#1084)
* fix password protect downloads

* fixed copying of ComicInfo file in LocalSource.kt

* Return correct archive file

* Applied upstream fix

* Use tempFileManager instead of file path

* Use streams instead of files
2024-03-04 10:47:04 +07:00
Luqman
e9521cb882
add mark read dupes on reading (#1079)
* Feature: mark read dupes

* dupe chapter reading add summary

* Update ReaderViewModel.kt

* Update i18n/src/commonMain/resources/MR/base/strings.xml

* Update app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt

---------

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2024-03-04 10:46:21 +07:00
Jobobby04
b70257bd3b
Ignore chapters with 0 or under chapter numbers 2024-03-04 10:17:23 +07:00
Cuong M. Tran
c301e4ff76
using komikku-app/extensions/repo 2024-02-22 23:06:27 +07:00
Jobobby04
2d09528b7a
Should fix password protect downloads 2024-02-19 17:54:44 +07:00
Jobobby04
c4295e776a
Fix compile 2024-02-19 17:54:44 +07:00
Luqman
729cea1611
Add Hide Feed tab toggle (#1058) 2024-02-19 17:54:44 +07:00
Luqman
65c3c07645
Add custom Thumbnail Url. Support backup & restore (#1059)
* Add custom thumbnail url. Support backup & restore

- add custom thumbnail url in edit info/custom
- include it in backup n restore

* increase chop char

* edit chop char again to match screenshoot

* tweak truncating middle part

* apply edited cover to history, updates , others

* simplify placeholder logic

---------

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2024-02-19 17:54:44 +07:00
Luqman
cbd6a45a4d
Fix blank box if empty (#1069) 2024-02-19 17:54:44 +07:00
Luqman
65fdf75a19
add toggle to auto mark read dupe chapter (#1078)
* add toggle to auto mark read dupe chapter

https: //github.com/tachiyomiorg/tachiyomi/pull/9662
Co-Authored-By: Trace <49712094+traceltrc@users.noreply.github.com>

* Update LibraryUpdateJob.kt

---------

Co-authored-by: Trace <49712094+traceltrc@users.noreply.github.com>
2024-02-19 17:54:44 +07:00
AntsyLich
bd5b8b70a0
Don't throw MALTokenExpired whenever we fail to refresh MAL token
Also cleanup

(cherry picked from commit 0f4de03d7a77b52490dc9a95e96a308b93b26e4f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/myanimelist/MyAnimeListInterceptor.kt

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/myanimelist/MyAnimeListInterceptor.kt
2024-02-19 17:54:44 +07:00
AntsyLich
5b59deb898
Lint
(cherry picked from commit b2d22f86c647e24eed6d9b19f36ac2c444525c87)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
2024-02-19 17:54:44 +07:00
AwkwardPeak7
e8e5f93be8
Fix new extension install not registering in app. (#275)
* Fix extension install not registering

* fix duplicate key compose error on extension update

* fix doubling of extension after update

* not needed

(cherry picked from commit 79f46b25f663c7f49fbd4e292f0f5f210e266dc9)
2024-02-19 17:54:44 +07:00
AntsyLich
d126f2779f
Move :core to :core:common
(cherry picked from commit aa498360db90350f2642e6320dc55e7d474df1fd)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/domain/base/BasePreferences.kt
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SetReadStatus.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/Migrations.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateChecker.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	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/stats/StatsScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/CrashLogUtil.kt
#	core/common/src/main/kotlin/eu/kanade/tachiyomi/util/storage/CbzCrypto.kt
#	data/src/main/java/tachiyomi/data/manga/MangaRepositoryImpl.kt
#	data/src/main/java/tachiyomi/data/source/SourcePagingSource.kt
#	domain/src/main/java/tachiyomi/domain/library/service/LibraryPreferences.kt
#	domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt
#	settings.gradle.kts
#	source-api/src/commonMain/kotlin/eu/kanade/tachiyomi/source/online/HttpSource.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
2024-02-19 17:54:43 +07:00
MajorTanya
c5bd84473a
Add click-to-copy extension debug info (#271)
* Add click-to-copy extension debug info

Adds some debug info about an extension to the user's clipboard when
tapping the logo/name/package name area at the top of the details
screen. Modeled after the debug info from the About screen.

Closes #168.

* Fix linting failure

* Slight cleanup

* Address detekt

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit b71c793fad46b91309da5d505ff49f99847b4f68)
2024-02-19 17:54:43 +07:00
AntsyLich
b9bd40043c
Upgrade combose-bom to latest
(cherry picked from commit 47e542152788e587f5f77dea4b2676683f2fba47)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
2024-02-19 17:54:43 +07:00
Cuong M. Tran
f445263c72
Change extension update error file name (#253) 2024-02-19 17:54:43 +07:00
Theodoro Loureiro mota
00fafb6223
Fixing bottom sheet UI bug in non-tablet devices (#182)
* replace the windowInsetsPadding for navigationBarsPadding + statusBarsPadding

* Setting decorFitsSystemWindows = true to fix ui bug on Android 11

(cherry picked from commit 915a9671514b25fdd62912a5154aca221470c8a7)
2024-02-19 17:54:43 +07:00
Soitora
7b78f16d7b
Hide display cutout setting if fullscreen is off (#241)
- make it behave like the one on more -> setting -> reader

Co-authored-by: Riztard <16263232+Riztard@users.noreply.github.com>
(cherry picked from commit 9cc0c4e0359cf06ef6257fc289f05a6f4fb9cf6e)
2024-02-19 17:54:43 +07:00
Cuong M. Tran
1020962163
Fix MangaDex’s followStatus & type of TrackStatus’s property 2024-02-19 17:54:22 +07:00
Secozzi
02bcffcce4
Fix refreshing from enhanced tracker (#219)
fix refreshing from enhanced tracker

(cherry picked from commit 348b23a9fd833d9040cfbdd60b11f9d5ce6e5fb7)
2024-02-19 15:30:39 +07:00
Theodoro Loureiro mota
20da43ca58
Fix #126: Inconsistent button height with some languages in "Data and storage" (#202)
* replace the windowInsetsPadding for navigationBarsPadding + statusBarsPadding

* Fixing bug in the MultiChoiceSegmentedButtonRow

* Rollback file

(cherry picked from commit 1dd130df9ee389fbacb200ee7a13b6d625b372fc)
2024-02-19 15:30:39 +07:00
Jobobby04
3455e6ee04
Swap over to Mihon.app
# Conflicts:
#	.github/ISSUE_TEMPLATE.md
#	.github/ISSUE_TEMPLATE/config.yml
#	README.md
2024-02-19 15:28:28 +07:00
Cuong M. Tran
b8f88feee9
update useragent 2024-02-19 15:24:46 +07:00
AntsyLich
31b7450c56
Fix issues when updating extensions
(cherry picked from commit cb068984303f811692531bf6f14902ae118d8ac7)
2024-02-19 15:00:30 +07:00
AntsyLich
f301ab36f9
Remove usage of .not() where possible
(cherry picked from commit 39407407f282dbb7fa972b12053c26b3e3bd66d8)
2024-02-19 15:00:01 +07:00
jobobby04
ae61be5e90
Backup and Restore Excluded scanlators (#166)
* Backup and Restore Excluded scanlators

* Improve performance

* This looks better

(cherry picked from commit e0deeb800890c5e3be67c4ebe32ebe34d97e0e25)
2024-02-19 14:58:29 +07:00
AntsyLich
a87ca2a34f
Fix "Flash on page change" gives black screen on page change
Fixes #108

(cherry picked from commit 38d6ab80ce868707829dbc81de4170afe3c2f2a5)
2024-02-19 14:58:29 +07:00
Cuong M. Tran
1b54a5dd10
transfer repo to komikku-app 2024-02-19 14:52:22 +07:00
Cuong M. Tran
3c6696d671
Add extension’s setting to source’s long click 2024-02-11 02:46:01 +07:00
Cuong M. Tran
2d42be6958
ExtensionsScreen: display extension lang even for not-installed ones 2024-02-10 18:26:16 +07:00
Cuong M. Tran
7874363e08
Fix Shikimori tracking 2024-02-09 06:58:16 +07:00
Cuong M. Tran
d353c83dba
Shikimori: using Komikku key 2024-02-09 06:35:34 +07:00
Cuong M. Tran
946e6d0b59
Update types of legacy tracker model to match to domain one (#245)
* `score` to Double

* `tracker_id` to Long

* `last_chapter_read` to Double

* `total_chapters` to Long

* `status` to Long

Additional changes for Komikku/TachiyomiSY version

* `score` to Double

* `tracker_id` to Long

* `last_chapter_read` to Double

* `total_chapters` to Long

* `status` to Long
2024-02-08 01:43:01 +07:00
AntsyLich
581868905e
Lint 2024-02-08 00:35:17 +07:00
AntsyLich
0edf83afab
Refactor MAL code to not spam refresh token when it fails
# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/myanimelist/MyAnimeListApi.kt
2024-02-08 00:35:03 +07:00
AntsyLich
21a2bef94b
Update types of legacy tracker model to match to domain one (#245)
* `score` to Double

* `tracker_id` to Long

* `last_chapter_read` to Double

* `total_chapters` to Long

* `status` to Long
# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/BaseTracker.kt
2024-02-08 00:33:06 +07:00
AntsyLich
576884f6a9
Lint
# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/bangumi/BangumiInterceptor.kt
2024-02-08 00:30:58 +07:00
AntsyLich
4e1dafa62c
Use own client for trackers + custom user agents
Closes #114
Closes #143

Co-authored-by: Med <45147847+kitsumed@users.noreply.github.com>
2024-02-08 00:29:29 +07:00
AntsyLich
066660a743
Remove usage of .not() where possible
# Conflicts:
#	app/src/main/java/eu/kanade/domain/extension/interactor/GetExtensionsByType.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerViewer.kt
2024-02-08 00:25:30 +07:00
Cuong M. Tran
c3246bf4b6
Make tracker use Komikku’s client 2024-02-08 00:19:32 +07:00
Cuong M. Tran
a3e47a1055
allow search source using both source's name & extensions's name 2024-02-07 19:42:26 +07:00
Cuong M. Tran
20e3b1284f Merge branch 'develop' 2024-02-06 04:34:34 +07:00
Cuong M. Tran
e49ff1e137 initialize FirebaseApp 2024-02-06 04:33:59 +07:00
Cuong M. Tran
c166fed426 Show source’s extension name in Source browse & Global search
(often it’s a romanized version so it’s easier to remember)
2024-02-06 04:14:26 +07:00
Cuong M. Tran
97efbd2efc
Update source repo URL 2024-02-05 18:32:26 +07:00
Cuong M. Tran
a4f8a33631 Replace MyAnimeList key with Komikku 2024-02-05 00:33:56 +07:00
Cuong M. Tran
bf250cbc34 Language tag with current locale in Extension Filter 2024-02-05 00:29:49 +07:00
Cuong M. Tran
1fc7604782 Move string resource 2024-02-04 17:34:40 +07:00
Cuong M. Tran
861e43ff06 Filter to show NSFW sources/extensions only in Browse tab 2024-02-04 17:06:20 +07:00
Cuong M. Tran
6a7db7b2e4
Feed: will get Popular if source doesn’t support Latest 2024-01-31 16:03:01 +07:00
Cuong M. Tran
46e7e1fbca
Feed: [Fix] Not trying to add Feed if not select anything on dialog box
Fix warning with RadioSelector declaration
2024-01-31 13:30:30 +07:00
Cuong M. Tran
27a1c3aa76
Increase limitation of Feed from 10 to 20
Also fix limtation message spelling
2024-01-31 11:08:04 +07:00
Cuong M. Tran
b6a60201b6
Move source’s package settings button to SourceFeedScreen 2024-01-30 19:54:28 +07:00
Cuong M. Tran
64d1ef89a6
Move SourceSettingsButton to Presentation domain 2024-01-30 18:33:26 +07:00
Cuong M. Tran
bc65d967d6
Show NSFW mark on SourcesScreen list 2024-01-29 23:23:22 +07:00
Cuong M. Tran
8b29b1dc68
Avoid showing ExtensionDetailsScreen for E-Hentai & ExHentai which is built-in & not actually installed extensions 2024-01-29 23:20:27 +07:00
Cuong M. Tran
48437205cd
Add icon to jump directly to ExtensionDetailsScreen from SourcesScreen
# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
2024-01-29 23:20:14 +07:00
Cuong M. Tran
906012cd40
SourcesSearch with animated search box 2024-01-29 23:14:38 +07:00
Cuong M. Tran
b94f67d9b6
using FastScrollLazyColumn for SourcesScreen scrollbar 2024-01-29 22:53:15 +07:00
Cuong M. Tran
6731edde87
Add OFFICIAL source & mine signature 2024-01-29 22:51:13 +07:00
Cuong M. Tran
81541ca67c
Show Untrusted extensions above Trusted extensions 2024-01-29 22:50:40 +07:00
Cuong M. Tran
da890c42d7
Remove files executable permission 2024-01-28 23:44:37 +07:00
Cuong M. Tran
d38b148915
Change update repo 2024-01-28 23:44:37 +07:00
AntsyLich
7d6bdc75f9
Fix score issue with MangaUpdates
Also add custom user agent

Potentially fix #17

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/mangaupdates/MangaUpdatesInterceptor.kt
2024-01-28 23:44:15 +07:00
Jobobby04
9b9655df90 Update AboutScreen with new links 2024-01-17 23:28:24 -05:00
AntsyLich
7cc6b7147f Fix score issue with MangaUpdates
Also add custom user agent

Potentially fix #17

(cherry picked from commit 99fd2731f5d9d374700e89fa67d4d5bf611bbafa)
2024-01-17 23:19:44 -05:00
Jobobby04
f59b6e393e Put merge in overflow for now 2024-01-13 18:23:46 -05:00
Jobobby04
6632589027 Remove some links in About 2024-01-13 16:40:24 -05:00
Jobobby04
a009d5d080 Change support server 2024-01-13 16:39:52 -05:00
arkon
e28878c5ee Better message for empty extensions list
(cherry picked from commit a37f3eb70922557cd0e4ed0c05d3563850b49757)
2024-01-13 00:18:51 -05:00
arkon
a96079c14c Fixed tap controls not working when zoomed in (#10378)
Co-authored-by: Paloys <Paloys@users.noreply.github.com>
(cherry picked from commit c65a9aecf5ed228550fd994e62a16fc2300c344d)
2024-01-13 00:18:36 -05:00
Jobobby04
d99b3b1203 Revert "Add extension repo mentions to more places"
This reverts commit 8625e75a2b.
2024-01-13 00:18:20 -05:00
arkon
320eb3f16a Minor extension repo enhancements
- Shortcut to settings from extensions tab
- Don't show error toast anymore if nothing's loaded
- Ability to copy extension repo URL to clipboard

(cherry picked from commit 02e50411de8e233dfd0f2bd9671f39a4e71d297c)
2024-01-13 00:17:07 -05:00
Caleb Morris
09a18be5b9 [download-cache] Fixed init logic to skip when cache file is missing (#10362)
There are several possible causes of the cache file to not exist, including user
 action. By skipping these couple steps during initialization when the file is
 missing, a renew action is allowed to start and the cache will rebuild and
 hopefully work as expected.

Simple fix for #10360

(cherry picked from commit 7292dadd5fbbf9b394f047f2207f4de13c8229d0)
2024-01-13 00:16:51 -05:00
KaiserBh
f6407805d3 Use transaction on restore to go brr. (#10375)
refactor: use transaction to go brr.

This improve the restore speed on fresh db and non fresh db.

Signed-off-by: KaiserBh <kaiserbh@proton.me>
(cherry picked from commit b1067b942ef5c8d53e5ab838ef078789b9c0627a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/MangaRestorer.kt
2024-01-13 00:16:39 -05:00
Caleb Morris
a13de19c81 Fixed dev UI preview (#10385)
The TachiyomiTheme introduced a dependency-injection construct that didn't
 exist at the time of rendering previews, so I've changed the preview function
 to use a preview version of the theme that uses declarative configuration
 over dependency injection

(cherry picked from commit cf6f7c521cde88f20c1eef3a6a63a2b73601523f)
2024-01-13 00:14:57 -05:00
Jobobby04
efb95864cd Fix Mangadex Auth not properly handling bad responses 2024-01-13 00:10:10 -05:00
Jobobby04
8625e75a2b Add extension repo mentions to more places 2024-01-09 18:52:29 -05:00
Jobobby04
c3fabce45a Fix build 2024-01-09 18:52:28 -05:00
arkon
727318355a Disable some non-ready stuff for stable build
(cherry picked from commit 68899aea617659a94639d6490cea77833f6eae34)
2024-01-09 18:52:26 -05:00
arkon
613c92c51e Move extension repos interactors to proper package
Also retain ordering of added repos.

(cherry picked from commit 3d178737b1e1c6531f9dbba5b2b5611eac901f90)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
2024-01-09 18:52:22 -05:00
arkon
8f8649c0c0 Remove built-in official extension repo support
(cherry picked from commit bf737cf95c65745b475330a1d90c0d0c0c9f1e80)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
#	data/src/main/java/tachiyomi/data/source/SourceRepositoryImpl.kt
2024-01-09 18:52:20 -05:00
Naputt1
66af8c80b6 fix Can't scroll down to the bottom of the webtoon on the last chapter (#10291)
(cherry picked from commit c91ec9a33bae624ba2ec121daac80edc586f61f0)
2024-01-09 18:52:19 -05:00
Caleb Morris
ffe9517027 [track-search] Added context menu for copy and open-in-web (#10352)
(cherry picked from commit a8040cb21a45bed3c9be85fab12149a1a734a7f7)
2024-01-09 18:52:17 -05:00
arkon
797c385502 Avoid floating point precision issues when converting scores
Fixes #10343
Maybe we'll finally migrate off of those legacy models some day...

(cherry picked from commit f60782f11fd03b302bb81387f24fd56795f3c6bf)
2024-01-09 18:52:16 -05:00
arkon
a8eeb0715c Do proper check for next chapter's download status when downloading ahead
Fixes #10151 (I think?)

(cherry picked from commit 5854ad97e0dbada0b75feda268bf4d57a7161d01)
2024-01-09 18:52:13 -05:00
arkon
a2e121aba1 Fix external repo info banner in ExtensionDetailsScreen
(cherry picked from commit 4b8fa059d5f9234176680d0c5c9e8e706ddd7e98)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
2024-01-09 18:52:12 -05:00
arkon
27d0ad11bd Add advanced setting to revoke all trusted unknown extensions
(cherry picked from commit 3dc2f9a711a732f53f6836a40215f293af8a3cb1)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2024-01-09 18:52:10 -05:00
arkon
190916d01a Trusting new extension shouldn't revoke other irrelevant extensions
(cherry picked from commit 8033a94ee203dc1c0bb717e5b01670fd30a7fd4d)
2024-01-09 18:52:09 -05:00
arkon
80d64bc031 Add filter library by customized update frequency
Supersedes #9619

Co-authored-by: quangkieu <quangkieu@users.noreply.github.com>
(cherry picked from commit 028da099ddf42b8b305afad04aba5f819a8ce24c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	domain/src/main/java/tachiyomi/domain/library/service/LibraryPreferences.kt
2024-01-09 18:52:07 -05:00
arkon
ef443e63a8 Fix selecting custom fetch interval not persisting sometimes
(cherry picked from commit e6c6c32d811349a2524f8ffe5bfc4a0c2d7d9679)
2024-01-09 18:52:06 -05:00
Luqman
0a5bb1ec94 Add Nord Theme (#10308)
* Add Nord Theme

* update

* update error color

* update comment

(cherry picked from commit bce6af62fcbb20d521a137712cddc2e9bbaeaaf8)
2024-01-09 18:52:05 -05:00
Jobobby04
00599a8d33 Fix external repo click 2024-01-09 18:52:03 -05:00
arkon
56b565cc51 Allow permanently trusting unofficial extensions by version code + signature
Closes #10290

(cherry picked from commit 6510a9617a2b5b5389cb5776a2fb91019206f6fc)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/domain/source/service/SourcePreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/Migrations.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/util/ExtensionLoader.kt
2024-01-09 18:52:02 -05:00
arkon
28ca7efdca Avoid jank in extensions list if install permissions already granted
(cherry picked from commit 14510f1d26653b7b4906f32c47a89f4902a176ca)
2024-01-09 18:52:00 -05:00
arkon
807af9a35d Allow deep linking to add external repo
(cherry picked from commit f115edf2eac125d0e6a0fdec79bd9d6627c3c53b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2024-01-09 18:51:59 -05:00
arkon
c801aec27a Allow opening .tachibk files directly with app to restore
(cherry picked from commit 727289c8ebf504edbd1d330ac1ab9091908fc086)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2024-01-09 18:51:56 -05:00
Jobobby04
d669a764a4 Build fixes 2024-01-09 18:51:54 -05:00
arkon
38907e81c8 Add link to storage FAQ in settings screen
(cherry picked from commit 9c91ddd4e3b27d42afac91efeae9e528798f114c)
2024-01-09 18:51:53 -05:00
arkon
bd96864895 Avoid hard crash if cached image file was already deleted
Closes #9720

(cherry picked from commit 3ea026e3116a77fd58bf656e1ecdb5e1ab6de28a)

# Conflicts:
#	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
2024-01-09 18:51:51 -05:00
arkon
3e561f7b67 Normalize some locale names
(cherry picked from commit 36f307e3bbf5a52277fba3033a08201cd37f779a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/GlobalSearchScreen.kt
2024-01-09 18:51:50 -05:00
arkon
ff00c301e1 Show non-localized language names too in app language selection
(cherry picked from commit 89678ebb17ad62b3b0118e13d7ab431f5ead8c46)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
2024-01-09 18:51:49 -05:00
arkon
e873557066 Fix RAR loading
Closes #10302

(cherry picked from commit 80b7d14af195147b52e38765fdb3adf4b9030dd4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
2024-01-09 18:51:47 -05:00
arkon
8adad251a0 Avoid showing WebView button in reader errors if page isn't actually from web
(cherry picked from commit bbd8098a61ca6ab79c4a37f0f529c5c01632835b)
2024-01-09 18:51:46 -05:00
arkon
828ffcaec2 Add link to storage guide during onboarding step
(cherry picked from commit f8ef0f143b148a207defc443549c29696d63418c)
2024-01-09 18:51:45 -05:00
arkon
ed88c76010 Bump dependencies
(cherry picked from commit 8321ff60005892e3ba333caafd1e88c1fb6d6660)
2024-01-09 18:51:39 -05:00
arkon
1ec0a22e37 Clean up external repos
- Accept full URL as input instead, which allows for non-GitHub
- Remove automatic CDN fallback in favor of adding that as an external repo if needed

(cherry picked from commit 9c899e97a97480545d022974ffd3ea1248634155)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/ExtensionManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
2024-01-09 18:51:37 -05:00
arkon
aaeac1b10c Fix lint error
(cherry picked from commit 556f5a42a77fc355819919f91a9436902b25c789)
2024-01-09 18:51:36 -05:00
arkon
7e9199b3ef Disable customized fetch intervals for stable builds for now
Until some of the issues get ironed out.

(cherry picked from commit 850813820c44b1a15484ed9a39ec4feaf5f990d7)
2024-01-09 18:51:34 -05:00
arkon
cc1855e06b Revert "Implement predictive back animation (#10273)"
This reverts commit 9c120e623193271971448fb03665a73dff4f85cb.

Potentially too buggy for a stable release for now.

(cherry picked from commit dba5e6fbfdf65f0482f681b22defb759e9b32437)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
2024-01-09 18:51:33 -05:00
Jobobby04
ea03e28079 Fix firebase on dev builds 2024-01-09 18:51:32 -05:00
arkon
24a56a5529 Support external repos
Largely taken from SY.

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
(cherry picked from commit c17ada2c98041877ab901efb9b03497130ead34a)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/interactor/CreateSourceRepo.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/presentation/category/SourceRepoScreen.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/category/components/repo/SourceRepoContent.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/model/Extension.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/category/CategoryScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2024-01-09 18:51:30 -05:00
arkon
b677f81fb1 Change fetch interval action to show days until next expected update
(cherry picked from commit 32bed9b041d76a6bac699c56c78d1692b71dfc0b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	domain/src/main/java/tachiyomi/domain/manga/model/Manga.kt
2024-01-09 18:50:52 -05:00
arkon
cf5bb4dc9b Remove custom extension readme/changelog URLs
These were barely used/maintained, so just killing them.
Changelog menu item still exists to take you to the relevant git history.

(cherry picked from commit e0a0942015accc217a881739abf8df9d74eab6da)
2024-01-09 18:50:51 -05:00
Jobobby04
59f8e98d69 A warning is enough, no need to reset on cold starts 2024-01-09 18:50:48 -05:00
arkon
07b0c59842 Force users to retrust unknown extensions on cold starts
(cherry picked from commit 493da5c3f471b53615e80411d942fc2c92a33ec5)
2024-01-09 18:50:46 -05:00
arkon
c8ca321be2 Remove tmp chapter files after exiting reader
(cherry picked from commit 4e221397ceaec334307546920b3e1168e56f5433)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2024-01-09 18:50:45 -05:00
arkon
6398f92518 Fix next expected update being weird number sometimes
Occurs if manga.lastUpdate has never been set yet.

(cherry picked from commit 22589a9c3056312dcbd0dfca08b53987cbc4a73d)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/interactor/SyncChaptersWithSource.kt
2024-01-09 18:50:42 -05:00
arkon
d00ddac06f Fix extension settings icon trying to install update instead of opening details
(cherry picked from commit b5e3f429fc08e3743af57d7babc084525bf3cb59)
2024-01-09 18:50:39 -05:00
arkon
25e49a6b3d Try to show actual path in invalid location downloader notification
Instead of the class/hashCode, which doesn't mean much to a user.

(cherry picked from commit 83130f9bf964dfce512c77803f8b5bcfb90c8f08)
2024-01-09 18:50:38 -05:00
arkon
e90f656bb6 Prevent creating backups with no valid options selected
(cherry picked from commit 6f34c5e894beb2ac172d00c3d08a43e6388486b3)
2024-01-09 18:50:37 -05:00
Jobobby04
75f6b0eb40 Hopefully fixes crashlytics 2024-01-09 18:50:35 -05:00
Jobobby04
5065840731 Fix build 2023-12-31 16:31:30 -05:00
arkon
10b8924d43 Use Material3 version of AboutLibraries
(cherry picked from commit 74931fad861abf19f26b51d9395642b58ee34e12)
2023-12-31 15:09:08 -05:00
arkon
f27b8b2ded Don't use reflection for handling backup options as boolean array
Wasn't working correctly in release build, _probably_ because of R8 despite kotlin-reflect
shipping with Proguard rules and us already keeping all Tachiyomi classes.

(cherry picked from commit 6ab8e1e73dbcc65d693dd2ed2680c950139dadde)
2023-12-31 12:53:30 -05:00
arkon
0432f4105e Dedupe common LazyColumn with action at bottom layout
(cherry picked from commit 1cdaa761b7b7d08eaf2f1d829de1c998e75c7c2c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/advanced/ClearDatabaseScreen.kt
2023-12-31 02:01:54 -05:00
arkon
15d21c1151 Show next expected update in interval dialog
Related: #9793
(cherry picked from commit 54f4711f7bf0f96492b49c6c9d5c6f05eaee7b59)
2023-12-31 02:01:19 -05:00
arkon
b72214b922 Misc refactoring
- Abstract away relative date string building
- Dedupe large update warning logic

(cherry picked from commit 3d0d5c047228f13d8a6a7d90400f4d67f2817f24)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/updates/UpdatesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
2023-12-31 02:01:04 -05:00
arkon
acd0ca99ed Allow creating backups without library entries
- In case you want a backup of just settings?
- Also disable backup options if dependent option is disabled (and fix being able to toggle disabled items)
- Also fix crash in RestoreBackupScreen due to attempt to parcelize Uri
- Make restore validation message a bit nicer

(cherry picked from commit f0a0ecfd4a5c8ee85fdcf7e92dc9a0079ef40cde)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/RestoreOptions.kt
2023-12-30 18:15:30 -05:00
arkon
a2d202a2cf Shorten restore warning message a bit
(cherry picked from commit f3b7eaf4a37f047abd6523b9c8ff1da73fd0ef46)
2023-12-30 18:13:51 -05:00
arkon
4bcbddf3b2 Allow partial restores (library/settings)
Closes #3136

(cherry picked from commit 5bba7af24aa0b8c5d66baa1f26a8427ceec8a4ae)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/RestoreOptions.kt
#	core/build.gradle.kts
2023-12-30 18:13:43 -05:00
arkon
b3f0b898b2 Filter out empty source preferences when creating backups
(cherry picked from commit 32c3269291cd31f7a69a6d0c073b52223fa3e918)
2023-12-30 18:08:08 -05:00
arkon
54b9b4f548 Clean up create backup UI
(cherry picked from commit a1e84911be14d353056cc63dc79c341c06c27079)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupOptions.kt
2023-12-30 18:07:57 -05:00
arkon
d13f08ca7a Minor cleanup/address lint warnings
(cherry picked from commit 6bb77bcf1aabfcad2c4a9dd73854f3fcc6c52c89)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
2023-12-30 18:06:11 -05:00
arkon
18d7c2312c Add ability to create manual backups with private preferences too
(cherry picked from commit ccec5c3efeea699124d4bb7448d6fe9718cb883f)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupOptions.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/RestoreOptions.kt
2023-12-30 17:57:39 -05:00
arkon
e1afceb769 Refactor backup option flags to normal data class of booleans
(cherry picked from commit 8735836498f46f7b6dc35ff62ffb595e097d568e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreateFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/creators/MangaBackupCreator.kt
2023-12-30 17:55:10 -05:00
arkon
c496371553 Minor exception message cleanup
(cherry picked from commit 8b65fd57519faa8119fca97febf90c5e8590c4a6)
2023-12-30 16:37:47 -05:00
arkon
fe53d7b7fb Don't make install permission required during onboarding
Closes #10257

We show a warning banner in the extensions list and also rely on the system
alert popup if someone attempts to install without the permission already
granted.

(cherry picked from commit f0710df35696c1f6cf7bb5371dfd6ad91d53fae1)
2023-12-30 16:37:37 -05:00
arkon
ab371a6e50 Hide private installer option for stable builds
(cherry picked from commit 3afcee81f454174aec110a585dba9692f2ac6175)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2023-12-30 16:37:26 -05:00
Ivan Iskandar
d6640bb5dd Implement predictive back animation (#10273)
For home screen tabs, Navigator screens and most dialogs

(cherry picked from commit 9c120e623193271971448fb03665a73dff4f85cb)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/home/HomeScreen.kt
2023-12-30 16:35:59 -05:00
Jobobby04
0c1db9b554 Data object 2023-12-28 14:50:51 -05:00
Jobobby04
834bc28726 Fix double pages not showing in default reading mode 2023-12-28 13:40:38 -05:00
Jobobby04
509f3bc910 Fix protobuf scheme export 2023-12-27 16:38:09 -05:00
Daniel
4c71e46ecc
Center the Exh Utils (#978)
* Update ExhUtils.kt

* Remove import
2023-12-27 16:32:25 -05:00
Jobobby04
25f94e4500 Fix merged manga chapters and merged manga filtered scanlators 2023-12-27 16:30:56 -05:00
arkon
d82b2919f8 Move backup models back to main app module
I didn't realize the package name change would break compatibility with forks
that still have the old package names...

(cherry picked from commit 4b208fc7ce95fb3b3746446da54351bcead0533c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/creators/MangaBackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupFlatMetadata.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupMergedMangaReference.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupSavedSearch.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/metadata/BackupSearchMetadata.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/metadata/BackupSearchTag.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/metadata/BackupSearchTitle.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/MangaRestorer.kt
2023-12-27 13:59:15 -05:00
arkon
653a1f8f14 Allow deleting downloaded chapters even if source isn't available
Fixes #9160

(cherry picked from commit a9b0ac43c490eff063c8b3c8173a90184409ab69)
2023-12-27 13:48:36 -05:00
arkon
71faf85edd Always show chapter download indicators
- Local chapters are just always "downloaded", but you can't delete them from the app
- Unavailable sources show proper state so long as it's stubbed with the name still, but
  you can't download anything new

(cherry picked from commit fca4f251227f983d8313eda546f35644692f39cb)
2023-12-27 13:48:04 -05:00
arkon
4de946ad8e Remove skipped updates notification
Seems to cause more confusion than it's worth.
Will update the UI for the library update skip options to better
explain what they're for later.

(cherry picked from commit bfb0d31ff61a6609cdf8ca421d08cbb4236fc5af)
2023-12-27 13:47:55 -05:00
arkon
1ddcbea113 Simplify storage usage bar UI implementation
(cherry picked from commit 8939274b5cbef7cd8e0c0c0e771f1ae54025baf3)
2023-12-27 13:47:45 -05:00
Jobobby04
b1bbfd5c89 Update EhTags 2023-12-27 13:09:23 -05:00
Jobobby04
22d8711cee Minor cleanup 2023-12-27 13:09:22 -05:00
arkon
1b22be1da8 Tweak page flashing
Closes #10269, maybe. I don't really have something to test with.

(cherry picked from commit 4571dc6b5694d8a32446da2cc9bb131a7175c93e)
2023-12-25 19:59:09 -05:00
arkon
0c8268fe7b Clean up storage usage info
- Show bar representation of used/total space
- Handle all mounted storages
- Also included a bunch of unrelated immutables changes, sorry

(cherry picked from commit f31bc47757b3792f92c2c8721739b5e2d91b825d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/cache/ChapterCache.kt
2023-12-25 19:58:59 -05:00
arkon
25ab1ed7b8 Fix read duration statistic getting inflated when restoring history
(cherry picked from commit 950b4a6c907262e80aaf423d523af518b790cd32)
2023-12-25 19:47:29 -05:00
arkon
4003263828 Address some build warnings
(cherry picked from commit 2d7650537db907a4129f4a07db15950339b319e9)

# Conflicts:
#	README.md
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	source-api/src/commonMain/kotlin/eu/kanade/tachiyomi/source/model/SManga.kt
2023-12-25 19:47:20 -05:00
arkon
fa11413e90 Avoid crashing if loading non-read-only private extension
Fixes #10252

(cherry picked from commit 80d6d412f379ef9796b7274c13c1c03883c800d3)
2023-12-25 19:39:38 -05:00
arkon
0dc3b37e70 Minor tracking cleanups
(cherry picked from commit 6887d98f15b4b9a84230217800fba2d4ae5b186a)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/track/interactor/TrackChapter.kt
2023-12-25 19:38:14 -05:00
arkon
1d68a64e5c Some domain Track model migrations
(cherry picked from commit 6d74a86711ad17be4bebe054d88506303dd07504)
2023-12-25 19:33:32 -05:00
arkon
a96cff950a Move backup models to domain module
(cherry picked from commit 5908bd19305b3461165fcfe2da5d2217115562b9)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/creators/MangaBackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/restorers/MangaRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/Backup.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupFlatMetadata.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupManga.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupMergedMangaReference.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/BackupSavedSearch.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/metadata/BackupSearchMetadata.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/metadata/BackupSearchTag.kt
#	domain/src/main/java/tachiyomi/domain/backup/model/metadata/BackupSearchTitle.kt
2023-12-25 19:33:22 -05:00
arkon
2238b123f9 Split up BackupCreator into smaller classes
(cherry picked from commit 1a559124eb9e029a6146bf2660cbd508941c20d4)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
2023-12-24 17:11:04 -05:00
arkon
18e63cafa0 Don't include settings as defaults when manually creating backup
(cherry picked from commit 54ba1d719e0f03db34e0d0df6c136c638c083d4f)
2023-12-24 17:00:34 -05:00
arkon
6fee96a40b Highlight restore backup setting when navigating from onboarding step
(cherry picked from commit 93cbeca5c0dbcf919bca84d7881888883e16b744)
2023-12-24 16:59:44 -05:00
Jobobby04
565f2b532a Fix sharp corners on page previews 2023-12-24 16:58:17 -05:00
Jobobby04
c6e44104c6 Fix NPE 2023-12-24 16:10:44 -05:00
Jobobby04
66a14d99c5 Fix pre-migration resetting the order 2023-12-24 15:49:48 -05:00
Jobobby04
cbb743f995 Improve page previews 2023-12-24 15:18:15 -05:00
Jobobby04
c36d2794bb Minor cleanup 2023-12-24 14:39:39 -05:00
arkon
7f89587889 Don't use localized numbers for downloaded image filenames
Probably fixes #10258

(cherry picked from commit 19f0175a56b00afd772d5d0c4909c49371a59bbe)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	core/src/main/java/tachiyomi/core/util/system/ImageUtil.kt
2023-12-24 14:13:22 -05:00
arkon
bb33624fb7 Whoops, accidentally made the create backup button unusable before
(cherry picked from commit bf3899d04a50b77ad05e79b3317ac23ca2581183)
2023-12-24 14:12:04 -05:00
arkon
a9462bbfcb Initial move of restore backup into a separate screen
(cherry picked from commit 9f90ee358b8bee6713ef679aef7893f44fcc8f28)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
2023-12-24 14:11:47 -05:00
arkon
af1bfa5888 Show MIUI warning more prominently in CreateBackupScreen
(cherry picked from commit 565317d99c1a7c9b0d3bd650adeb420fd8cd9cf4)
2023-12-24 14:10:07 -05:00
arkon
711ca69876 Foundations for partial restores
Related to #3136

(cherry picked from commit 83a67feb48c4e40994a334520c907f71d2fbf75e)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/BackupRestorer.kt
2023-12-24 14:09:59 -05:00
arkon
e400232072 Prevent backing out from initial onboarding
(cherry picked from commit c10cd6c808786e896d16a82fce63b565c4e425af)
2023-12-24 14:05:46 -05:00
Ivan Iskandar
278f99f1d7 DownloadJob: Network check changes (#10242)
Mostly pulled from WorkManager

(cherry picked from commit f9b57800b1e457c625e99ed9ba0d58fff2d95ef0)
2023-12-24 14:04:40 -05:00
Ivan Iskandar
c6eda810d3 PackageInstallerInstaller: Fix intent used for install session (#10240)
Use explicit intent as it's a requirement when targeting v34+

(cherry picked from commit 387159b5af1f8eed50f7ab565a13fd689f037e7e)
2023-12-24 14:04:29 -05:00
Ivan Iskandar
b53cbd7d05 MangaScreenModel: Start downloads in IO dispatcher (#10241)
(cherry picked from commit 09531e7f5a33508afb4a53542ce7b0f601be8826)
2023-12-24 14:04:19 -05:00
Ivan Iskandar
821a48e4d1 Target Android 14 (SDK 34) and add permission onboarding step
(cherry picked from commit 9e0068715f3ba3d1627c4b7539b90fb782f8122f)
(cherry picked from commit 13b3bec8ad2a5b883cbe5ec99da531fbaba7f50b)
2023-12-24 14:03:44 -05:00
arkon
cf34c2dec5 Set foreground service types for remaining jobs
(cherry picked from commit db3ddf07eedbd82b7a446573fff2d5ed9595631f)
2023-12-24 14:03:10 -05:00
arkon
c9fa0ce395 Split restoring logic into smaller classes
(cherry picked from commit cd16522805eedc73fa3ab0f8db5ee403162a020c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/create/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/restore/MangaRestorer.kt
2023-12-24 14:02:52 -05:00
arkon
98900bc960 Clean up history restoring
(cherry picked from commit 5fec881387d1d4b5dda19b4a58e103bf60ef4a59)
2023-12-24 13:36:55 -05:00
arkon
dd40dbe171 Workaround for broken nav bar icon colors
(cherry picked from commit 3ac68e810d1d5a4a7d40b2be4a846fad96d42735)
2023-12-24 13:36:46 -05:00
Ivan Iskandar
4c634910f7 Refactor onboarding steps
(cherry picked from commit 2ca3ab077192a7e5e2e7a5fb00c303a5a633372e)
(cherry picked from commit 65e1e2cf4f76b48575fe33dd0848b38720a55744)
2023-12-24 13:36:03 -05:00
arkon
b9fb77aeb1 Avoid crashing in SourcePreferencesFragment if source can't be loaded
Should probably wait for sources to definitely be loaded first, but that's
sort of a bigger change and needs to be lifecycle-aware.

(cherry picked from commit e36a2c68f112f98155f5eea859a59a13cc22e168)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesScreen.kt
2023-12-24 13:35:52 -05:00
arkon
2db5aa53ea Skip updating unchanged chapters and tracks when restoring backup
(cherry picked from commit ad3d915fc56ecb8328861fdc2bf9e5f5c2aadbe3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupManga.kt
2023-12-24 13:33:47 -05:00
arkon
b0d7a611f7 Fix download indexing with changed storage locations
Fixes #10218

(cherry picked from commit 36f400d54281dd697f1492befc8241eaf31e31ab)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-12-24 13:29:46 -05:00
arkon
50505574e8 Remove redundant job setup calls in migrations
We always set them up earlier in the migrations anyway.

(cherry picked from commit dd1a19745a0a9df3814f22dd597585e44d3cba35)
2023-12-24 13:28:05 -05:00
arkon
9eb99fb10f Clean up manga restoring logic
Some behavior changes:
- It prioritizes new entries, then anything more recently updated
- It copies the more recently updated entry's metadata (description, thumbnail, etc.)

(cherry picked from commit 58daedc89ee18d04e7af5bab12629680dba4096c)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SMangaExtensions.kt
2023-12-24 13:25:45 -05:00
arkon
6f82c9c867 Proper check for when to navigate to tracker settings from tracking action
(cherry picked from commit d20a8fcf134a02735102010c5d10d1a4455ab8d6)
2023-12-24 13:17:19 -05:00
arkon
c0e1fccf81 Clean up some text alpha modifiers
(cherry picked from commit e56bf82c319f63ff2bdbabf68647a243bcd451d0)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
2023-12-24 13:17:04 -05:00
arkon
3ba70183ec Clean up category restoring logic
(cherry picked from commit 0f9895eec8f5808210f291d1e0ef5cc9f73ccb44)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/BackupCategory.kt
2023-12-24 13:16:22 -05:00
Jobobby04
581e2851bc Build fixes 2023-12-24 13:12:25 -05:00
arkon
5792623204 Add ability to open available extension websites in WebView 2023-12-24 13:12:24 -05:00
arkon
619a05bac4 Avoid starting restore job if already running
We already check in the settings screen where it's triggered, but who knows.
Also addressing some errors for method calls that require SDK 26+ (but don't
fail the build, somehow?).

(cherry picked from commit 1ef01b53f2e740b493e5a94cd4ac011ab25b3ace)
2023-12-24 12:53:42 -05:00
arkon
669cd40134 Remove action to delete saved image in notification
Can just open it and delete from whatever gallery app the user has which has way
more functionality.

Closes #8327

(cherry picked from commit 720169dce3b78e3c761e2c80c1fc6f6fab67b791)
2023-12-24 12:53:31 -05:00
arkon
22e6a1673c Fix settings screen crashing when saving state
(cherry picked from commit 0d09039e5f0eb5d295c699ca4e6f160d7549e771)
2023-12-24 12:53:22 -05:00
arkon
17b0185a2b Onboarding screen tweaks
- Opposite transition when going back a step
- Don't allow skipping (I don't want to deal with an unset storage location in other places)

(cherry picked from commit cc56fde9fe6408e5dca4c752acc2ba6478291cce)
2023-12-24 12:53:13 -05:00
arkon
7b3418acd0 Always show trackers action in MangaScreen
Goes to tracker settings to log in if none are set up.

(cherry picked from commit 3a0b3de1754452cc0e10426c79820baa74d30b63)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/more/MoreTab.kt
2023-12-24 12:53:05 -05:00
arkon
58ed15207e Fix next local chapter not being indicated as downloaded in transition
(cherry picked from commit 47e544b710c1d9337a52dd8fbd5401903a14059a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-12-24 12:51:10 -05:00
arkon
314eb0a02e More onboarding screen additions 2: Electric Boogaloo
(cherry picked from commit f7c5b4243533374f6751055fd4bc037e022db8a8)

# Conflicts:
#	app/build.gradle.kts
2023-12-24 12:49:54 -05:00
arkon
40f8910cbe More onboarding screen additions
(cherry picked from commit e3404cd3d3c096e33c534143b24dbdce5b6e9bf9)
2023-12-24 12:48:48 -05:00
arkon
d71b1219b4 Add basic onboarding screen (#10199)
(cherry picked from commit 8b57169e924aa75a7cb9b49bb3bbce5e83a087da)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAppearanceScreen.kt
2023-12-24 12:48:37 -05:00
arkon
364e4fe41b Migrate to some newer date/time APIs
(cherry picked from commit ab9a26f6bd2855d13ff663cf52dfe4ecb01fda1d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	domain/src/main/java/tachiyomi/domain/updates/interactor/GetUpdates.kt
2023-12-24 12:47:39 -05:00
Ivan Iskandar
0aad7fc006 Downloader: Don't queue chapters on GlobalScope (#10217)
This fixes auto-download on library update not working on certain cases.

(cherry picked from commit 8779b263ab8cc2315005fb7228e7ee41429ddaf8)
2023-12-24 12:45:25 -05:00
arkon
751d22977f Show average scores in tracker search results
Closes #8280

(cherry picked from commit 734cb0be6eeeb484d367ba1cfdbf8cd0076157d3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/track/kitsu/KitsuApi.kt
2023-12-24 12:45:04 -05:00
arkon
c588922b0b Fix sharing saved pages from notification
Related to #8327
Deleting doesn't seem to do anything still, but at least doesn't throw an exception.

Also removed behavior of dismissing notification after sharing/deleting pages/backups
in case you want to do something again afterwards. Users can manually dismiss the
notification whenever they want.

(cherry picked from commit 1f259f92986c3e4c86d6068eec257f6bd32f69b4)
2023-12-24 12:44:19 -05:00
arkon
d6ab0143d9 Minor cleanup
(cherry picked from commit 427fbfdf5e58478bd9b6d35e3137f2a22db9fd96)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2023-12-24 12:44:07 -05:00
arkon
66a04c4757 Try to fall back to showing URI for storage location if concrete file path isn't available
Closes #9977

(cherry picked from commit 0c860c0fe99f2a9b18065e36a35cc46fad265da6)
2023-12-24 12:43:05 -05:00
arkon
e4c229aa3b Migrate ReaderColorFilterView to Compose
(cherry picked from commit 5b2a099203cae59d266a3d417f128b36ddad9858)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
2023-12-24 12:42:49 -05:00
arkon
3a75f7718a Force recreate download index cache on upgrade
Fixes #10187

(cherry picked from commit ccadfc8fe53ff1b8ab66b0e91a4fa5a21481bcda)

# Conflicts:
#	app/build.gradle.kts
2023-12-24 12:27:35 -05:00
arkon
fc5021c79d Clean up startDownloadNow function a bit
Fixes #9330, I think. If it was even still an issue.

(cherry picked from commit 3aead3a2a924ae080b8fa5dbfdef15b91010d2c9)
2023-12-24 12:25:56 -05:00
arkon
4537a5e469 Remove storage permission check when manually creating backups
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit 6a48fed17060dabf38ab1a5f0d5cce2c5c979097)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
2023-12-24 12:25:48 -05:00
arkon
f4afb690c0 Handle content URIs for covers
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit e5263d0345c059d9c11bed7d711f03b31bb2ad34)
2023-12-24 12:16:56 -05:00
Ivan Iskandar
80e88d8383 Move workers to foreground service context a bit more safely (#10202)
The system will crash the app if the worker that calls setForeground() finished
before the service runner be able to call Service.startForeground(). This edge
case is not handled by WorkManager and there is no way to check if the required
calls are done.

So here we suspend the worker by an arbitrary duration assuming the transition
to foreground service is done by then.

(cherry picked from commit 24e1b4034efe24cc042404e2237f01ca1f2cd9b3)
2023-12-24 12:16:46 -05:00
arkon
f5cda51334 Revert overridePendingTransition refactorings
(cherry picked from commit 87be54aa4aed257dfe060c0a9ee7072fece848bb)
2023-12-24 12:16:21 -05:00
arkon
d1c8c2d18e Set foreground service types for library update jobs
(cherry picked from commit 82d9ae31bdde0abaefeb78995d60b6c6b22e6052)
2023-12-24 12:15:48 -05:00
arkon
4a6693124e Bump dependencies
(cherry picked from commit 7a52afd223332819d462365138f65ad8bcd8b3d9)
2023-12-24 12:15:04 -05:00
arkon
39af800143 Replace ReaderOrientation icon resources
(cherry picked from commit 296201d6b7a14427014c24801fec2d931b2860e5)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
2023-12-24 12:14:47 -05:00
arkon
040f4f0ba9 Remove unused resources
(cherry picked from commit 162b6397050e1577c113a88e7b7cfe9f98e6a45c)

# Conflicts:
#	app/src/main/res/values-sw720dp/dimens.xml
2023-12-24 12:11:58 -05:00
Jobobby04
14cfc38724 Address some warnings 2023-12-24 12:01:28 -05:00
arkon
209da5eb04 Bump dependencies
(cherry picked from commit 5dda32bb8143abe4e495fb7a5693299ac9f4da41)

# Conflicts:
#	.github/workflows/build_pull_request.yml
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
2023-12-24 11:54:51 -05:00
Ivan Iskandar
fcb230df45 Migrate downloader service to WorkManager (#10190)
(cherry picked from commit 8ce8b600922410a4eb64da35a1850840a2f28669)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadService.kt
2023-12-24 11:53:10 -05:00
Ivan Iskandar
35d4a154b4 HomeScreen: Add static key for TabNavigator (#10191)
Fixes incorrect tab selection after process death

(cherry picked from commit 8ff2c01bf28d9d645796b7e616d3ab5c6f85a86c)
2023-12-24 11:52:30 -05:00
arkon
865ec2e47b Target SDK 30
Need to convert some services into WorkManager jobs before going to 31 and higher.

(cherry picked from commit e22eebfd02e28eb260273d987d60c216aa4a2100)
2023-12-24 11:47:09 -05:00
arkon
ab63f6036c Remove storage permissions
Requires adjusting some file reading to first copy to a temporary file
in cache that we have permissions to read from. This is only applicable for things
like ZIP files where we need an actual File rather than just some Android content
URI shenanigans.

(cherry picked from commit 4fcdde4913df28bbd678ae1be4a2971ed77179d3)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2023-12-24 11:46:47 -05:00
Jobobby04
7e6d1196ac Use StorageManager for Exh logs 2023-12-23 23:41:24 -05:00
arkon
44fb882654 Ignore casing when looking for some files/folders
(cherry picked from commit e41668862f6d3362d7de030692d052ae653364e3)
2023-12-23 23:30:37 -05:00
arkon
c2d2295149 Update UniFile
Which has more correct nullability for some methods and case insensitivity for listFiles where possible.

(cherry picked from commit a74a689c9048cc67f4854678fbfefa361631a5e7)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
2023-12-23 23:30:24 -05:00
arkon
22cc0de7cd Adjust stats overview icons
Closes #9865
Still sort of weird, but the icons are now always aligned.

(cherry picked from commit 9ce0bc6b5fbdf8b8008adb1feae21b8346223453)
2023-12-23 23:23:59 -05:00
arkon
ab57dd7def Actually use configured storage location for local source
Fixes #10178

(cherry picked from commit 27c4db752ce599a99876021c1019cfb549153a30)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-12-23 23:23:40 -05:00
Jobobby04
03407a784f Build fixes 2023-12-23 23:22:43 -05:00
arkon
927c94041e Use UniFile for local source file handling
(cherry picked from commit ca5498434409d4085c404f4ff5ed5e608f430a3b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/RarPageLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
#	core/src/main/java/tachiyomi/core/util/system/ImageUtil.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
#	source-local/src/commonMain/kotlin/tachiyomi/source/local/image/LocalCoverManager.kt
2023-12-23 23:22:07 -05:00
arkon
bda2ef3eee Add extensions for handling UniFile name/file extensions
(cherry picked from commit 46aeab9a7ac6fd5c45d426e3a733d716dcb1d25f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadCache.kt
2023-12-23 22:53:21 -05:00
arkon
b23e269ac6 Move automatic backups from /backup/automatic to /autobackup
Removes the need to try to create child folders, which simplifies things.

(cherry picked from commit f365b53a0fbfb6f4147c688416e101aee9bae7fc)
2023-12-23 22:52:05 -05:00
Saud-97
b037ca7e24 Anilist decode item description HTML (#10181)
(cherry picked from commit d4dfa9a2c2a6e627256e99efb08e150a6d234964)
2023-12-23 22:51:52 -05:00
arkon
8f4ce62cc9 Use unified storage location for local source
(cherry picked from commit cf9e60fd92b3cea9ab4a48a3b8f62329df388e8d)

# Conflicts:
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2023-12-23 22:51:41 -05:00
arkon
420d047254 Minor download location cleanup
(cherry picked from commit 21ae04d25d0997319b0742627ba441dfee92cc95)
2023-12-23 22:50:17 -05:00
AntsyLich
afa5683d72 Library update notification changes (#10175)
Don't round up notification percentage. Why show 100% when stuff is still updating.

Show same notification when hide notification content is enabled. Just exclude manga titles.

(cherry picked from commit ba10093ddca8d409e43f26a80ea1f485b7767a6c)
2023-12-23 22:49:53 -05:00
arkon
759a3d8d18 Avoid crashing if storage directory can't be read
e.g. when first launching and there's no storage permissions yet.

(cherry picked from commit a5c946969839c8662172ea0709aebb488d3e2bbb)
2023-12-23 22:49:39 -05:00
arkon
27c7154cdb Exclude some more app state preferences from backups
(cherry picked from commit bcc42dd259cd528641ae4963b9b6ef290332bb27)

# Conflicts:
#	app/build.gradle.kts
2023-12-23 22:48:49 -05:00
Ivan Iskandar
e47941ae70 Migrate to M3 pull-to-refresh (#10164)
(cherry picked from commit d59cb9c1e3119b300fb4f0568ac5c77e5addaf47)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-12-23 22:47:12 -05:00
AntsyLich
0851ee98bd MangaScreen: Fix close in action mode exists from screen (#10160)
* MangaScreen: Fix close in action mode exists from screen

* L

(cherry picked from commit 300660492271752a3f75da4f158bd9b8e049a45b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-12-23 22:45:38 -05:00
arkon
59c5484a15 Use unified storage location for automatic backups
(cherry picked from commit 1fbf8ca0790bcf2177e6f8850b51b9fb43c66d6e)
2023-12-23 22:44:53 -05:00
arkon
a37da0d1b7 Add unified storage location setting
Currently only using it as a replacement for the downloads location.

(cherry picked from commit 695813ef7d922bc3d9ad5bccef8a466075caa57b)
2023-12-23 22:44:44 -05:00
arkon
5f84cfdd7c Remove max automatic backups setting
We just always create up to 4 now to simplify it, given the addition of syncing
is going to make this section pretty busy.

(cherry picked from commit e3b70ca08d1c5a09a448891ff66102fd696d7098)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
2023-12-23 22:44:08 -05:00
arkon
4737526067 Use custom threshold for what's consider a low RAM device
(cherry picked from commit 8857b7e0c1a908c1853742b05d7aca7c63880dc9)
2023-12-23 22:43:33 -05:00
arkon
d01518500f Add "Rotate wide pages to fit" for webtoon reader too
Closes #1977

(cherry picked from commit 4a7c20f5a088be75e2a7644d6268f9e21a98d147)
2023-12-23 22:43:24 -05:00
arkon
90ae501cdc Fix searchbar style
Also address some Compose lint warnings.

(cherry picked from commit 29368fc95312c3a68c039b2f896742002caeb953)
2023-12-23 22:43:07 -05:00
arkon
d300e83520 Slightly shrink continue reading button size
(cherry picked from commit 0696e4bce0e61c69e76bc8e02b49ad40ecf53996)
2023-12-23 22:42:54 -05:00
Ivan Iskandar
8a68bfc2ce Migrate XML themes to Compose (#10152)
(cherry picked from commit 255ed50685845e1a43ee4b86cdfd2484942b1368)
2023-12-23 22:42:42 -05:00
Jobobby04
16d433973c Finish migration to moko resources 2023-12-23 22:40:54 -05:00
arkon
82098460ff Replace remaining Android-specific strings
Also renaming the helper composables so it's a bit easier to find/replace everything
in forks.

(cherry picked from commit 0d1bced1226878336f8156671ae0c224c02f2604)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaDialogs.kt
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/advanced/ClearDatabaseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/ReaderPageActionsDialog.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/presentation/reader/components/ChapterNavigator.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/GeneralSettingsPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/history/HistoryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
2023-12-23 20:31:05 -05:00
arkon
1eccf9fad8 Migrate to multiplatform string resources (#10147)
* Migrate to multiplatform string resources

* Move plurals translations into separate files

* Fix lint check on generated files

(cherry picked from commit 46e734fc8eefb8c06a880194e702559ca3fa769d)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionDetailsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/ExtensionsScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceDialogs.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/presentation/category/components/CategoryDialogs.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaBottomActionMenu.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaDialogs.kt
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBrowseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsLibraryScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsSecurityScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/advanced/ClearDatabaseScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/data/CreateBackupScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/ReaderPageActionsDialog.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/presentation/reader/components/ChapterNavigator.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/GeneralSettingsPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/DownloadManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/manga/MigrateMangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/SourceFilterDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/history/HistoryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
#	build.gradle.kts
#	i18n/build.gradle.kts
#	i18n/src/commonMain/resources/MR/base/strings_sy.xml
#	i18n/src/commonMain/resources/MR/fr/strings_sy.xml
#	i18n/src/commonMain/resources/MR/in/strings_sy.xml
#	i18n/src/commonMain/resources/MR/pt-rBR/strings_sy.xml
#	i18n/src/commonMain/resources/MR/ru/strings_sy.xml
#	i18n/src/commonMain/resources/MR/zh-rCN/strings_sy.xml
#	i18n/src/commonMain/resources/MR/zh-rTW/strings_sy.xml
2023-12-23 20:28:29 -05:00
Ivan Iskandar
adfaa75ae9 Remove animateItemPlacement modifier usage (#10146)
(cherry picked from commit 69aa13bc5655813f1366b2020343091c8d2da009)
2023-12-23 19:25:53 -05:00
Jobobby04
8effc7eb05 Fix build 2023-12-23 19:25:12 -05:00
arkon
91d45cc8b9 Address more Compose lint warnings
(cherry picked from commit 2c032ff70d607f0e0197091e53763491775a0ab3)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/MigrateSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/components/BrowseSourceToolbar.kt
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryToolbar.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaToolbar.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsMainScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/sources/MigrateSourceTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesTab.kt
2023-12-23 19:24:57 -05:00
arkon
adb53a9a45 Migrate to standard M3 TabIndicator
(cherry picked from commit 0af4703b78007b117a233c03b9f5e9be2b8e3ab0)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
2023-12-23 18:59:15 -05:00
Ivan Iskandar
97f33888d2 Migrate deprecated progress indicator components (#10142)
(cherry picked from commit 9ec0f73e8778f18001704a6da3a1ac184027efb9)
2023-12-23 18:58:16 -05:00
Ivan Iskandar
4660e2cf8f Migrate deprecated tooltip components (#10141)
(cherry picked from commit f9fb034330d6e5c4f0cf9232649aa9a548e9e443)
2023-12-23 18:58:06 -05:00
arkon
25b496ae14 Bump dependencies
(cherry picked from commit 6eb5a25ea1eb8d20b6532013d6562a38c0efbf8b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/library/components/LibraryTabs.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SourceSearchScreen.kt
2023-12-23 18:57:50 -05:00
arkon
5dd041d470 Use immutable collections in more places
(cherry picked from commit 336221a972187c8e35d733d2f9d1d1a99e7b6f1b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/presentation/browse/SourcesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryTab.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
2023-12-23 18:54:37 -05:00
arkon
b5e1db1973 Use immutable collections in presentation-widget module
(cherry picked from commit 3c3b09209c7ea5729c29b9c3ad414c09b2bb9636)
2023-12-23 18:36:41 -05:00
arkon
5d565f436f Minor cleanup
(cherry picked from commit 4a6571d310ecf2bf77e86a303f1788aaaab3df25)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/di/AppModule.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/SourceExtensions.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/model/SMangaExtensions.kt
2023-12-23 18:36:30 -05:00
Jobobby04
19746904e1 Some linting 2023-12-23 18:23:58 -05:00
arkon
9ab01ec20c Add Compose lint checks
Still need to address most of them though.

(cherry picked from commit cb67f1de526e6120db363f67035966f365467912)

# Conflicts:
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/CollapsibleBox.kt
2023-12-23 18:13:09 -05:00
Jobobby04
86837a6c47 Hopefully fix crash with page previews 2023-12-23 18:11:43 -05:00
arkon
28b980641c Convert create backup dialog to a screen
Allows us more flexibility in adding more options/explanations in the future.

(cherry picked from commit 00b2853d3daaa49a2b3bcada1596e094e8da5156)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupConst.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
2023-12-23 17:51:38 -05:00
AntsyLich
8434d36498 ScanlatorFilterDialog: Fix crash when no scanlator (#10111)
(cherry picked from commit d7442d771b92b4d1b1c0c762ea6473cb58ece544)
2023-12-23 17:43:18 -05:00
arkon
07af2920ff Group mode dialogs together in bottom reader bar
(cherry picked from commit 3a8aa3e8cd7b725ee73b7fe67d0b1c3111af977b)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
2023-12-23 17:42:51 -05:00
arkon
4687f81c42 Add separate default/apply buttons to reading mode/orientation selection dialogs
Related to #3453

(cherry picked from commit 9e67abcc8a1e7ca90c0a92acc563e998a7a99886)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
2023-12-23 17:41:21 -05:00
AntsyLich
e368116a30 Trim Chapter scanlator value (#10108)
(cherry picked from commit d0bcd30909adaaf086e0bd5b0e8231561c4b9e0e)
2023-12-23 17:39:29 -05:00
AntsyLich
c8909961c0 Implement scanlator filter (#8803)
* Implement scanlator filter

* Visual improvement to scanlator filter dialog

* Review changes + Bug fixes

Backup not containing filtered chapters and similar issue fix

* Review Changes + Fix SQL query

* Lint mamma mia

(cherry picked from commit b97aa235480e35b5514b7b1489b9d4413cea66d9)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/manga/ChapterSettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupCreator.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	data/src/main/java/tachiyomi/data/chapter/ChapterRepositoryImpl.kt
#	data/src/main/sqldelight/tachiyomi/migrations/23.sqm
#	data/src/main/sqldelight/tachiyomi/migrations/26.sqm
#	domain/src/main/java/tachiyomi/domain/history/interactor/GetNextChapters.kt
2023-12-23 17:38:22 -05:00
arkon
94fa45597d Replace custom preview annotation
(cherry picked from commit e6ca54fd04668fde5ae12429101a13dc1f03b99e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/widget/TextPreferenceWidget.kt
#	app/src/main/java/eu/kanade/presentation/reader/PageIndicatorText.kt
2023-11-05 17:38:54 -05:00
arkon
e7aa8c31f1 Clean up reading mode / orientation enum classes
Categorizing the reading modes so we can implement a better
selection UI.

(cherry picked from commit 4502902fb0df21f637c905dc5c4c36625dedc710)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/manga/model/Manga.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-11-05 17:36:37 -05:00
Ivan Iskandar
44bda0a611 MangaScreen: Adjust "missing chapter count" item list styling (#10105)
Text style to labelMedium and set secondary alpha to the whole row

(cherry picked from commit 5f34539525f93a92ca80f3b1fb9e71953b6758a1)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
2023-11-05 17:29:37 -05:00
arkon
d9a6a7be50 Restrict line length with ktlint
(cherry picked from commit 1d144e67678a99ec7198e5efcb1410b5da4bc42e)

# Conflicts:
#	.editorconfig
#	app/src/main/java/eu/kanade/domain/chapter/model/ChapterFilter.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2023-11-05 17:28:46 -05:00
arkon
0a9f15d74c Postpone Android 8 requirement
(cherry picked from commit 4f3a0b352397bc6184962e0664d26731ffdd27f8)
2023-11-05 16:54:49 -05:00
arkon
ad1afdc529 Minor cleanup
(cherry picked from commit 056dbaefda791b53240265c8e9562a01f17118c4)
2023-11-05 16:54:32 -05:00
arkon
bd165456ae Show EOL message if update check no-ops due to unsupported Android version
(cherry picked from commit 3a15c6b8438d1a740af0d6ffdec72347eec8cb83)
2023-11-05 16:54:23 -05:00
arkon
0232a65a26 No-op app update checks for Android < 8
This effectively makes it the last release for the older Android versions.

(cherry picked from commit db20d04c4b628a76dfdf7ce5e715ec2cf13de79a)
2023-11-05 16:54:14 -05:00
arkon
aaea2b1720 Ensure page indicator texts are centered
Maybe fixes #9976

(cherry picked from commit 4146c4c31d069ce9fb7ab36d72f1f8fa2be1e050)
2023-11-05 16:53:18 -05:00
arkon
3dc895778f Move tracker binding logic to interactor
(cherry picked from commit 69223df27c198550a7c43dc1af4c65f85bcb395b)
2023-11-05 16:53:07 -05:00
arkon
f3fc4c7be1 Revert "Always save pages/covers in subfolders"
This reverts commit 8568d5d6c3ceae0084a350906b330f23dab571e1.

Closes #10052

(cherry picked from commit 4b225a4ff155dc019cf4db00b59d449e0db521ab)
2023-11-05 16:52:57 -05:00
arkon
91e6f7f79b Bump dependencies
(cherry picked from commit 8644d90bd4572330e720c1eb8b64e3f323bbd709)
2023-11-05 16:52:34 -05:00
Ota
8496856941 New alphabetical chapter sort (#10073)
* added alphabetical chapter sorting

* Deleted sort_by_alphabet and re-utilized action_sort_alpha

* Accidentally deleted wrong string. Now solved

* Accidentally deleted wrong string. Now solved

Deleted sort_by_source instead of sort_by_alphabet in strings.xml.
Now reverted.

* Alphabetical sorting now uses Collator

* Clean up repeated Collator instances

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
(cherry picked from commit f30ab56fd0a2a748f84dd698874cb16d7a61bd62)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
2023-11-05 16:52:23 -05:00
Caleb Morris
e14cc134a0 Added library sort by mean Tracker score (#10005)
(cherry picked from commit 5d91b77c9340604436c63073c83ad8b37794ddf0)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/library/LibrarySettingsDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	domain/src/main/java/tachiyomi/domain/library/model/LibrarySortMode.kt
#	domain/src/main/java/tachiyomi/domain/track/interactor/GetTracksPerManga.kt
2023-11-05 16:51:09 -05:00
arkon
43c5585f7e Maybe fix foreign key error during some backup restores
(cherry picked from commit aca36f962516f04bbbac67c9bf54723a13076c1c)
2023-11-05 16:38:27 -05:00
AntsyLich
35d8c75aa0 Show missing chapter count between two chapters in chapter list (#10096)
* Show missing chapter count between two chapters in chapter list

Closes #8460

* Fix crash

* Lint

* Review changes

* Lint

(cherry picked from commit 6d538db5f2afc45976a65ae5d202a490d2e08352)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/chapter/model/ChapterFilter.kt
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterGetNextUnread.kt
2023-11-05 16:38:06 -05:00
Eshlender
aa2afd1402 Text on tabs Overflow Ellipsis (#10095)
* Update TabbedDialog to TabbedScreen

* clean

(cherry picked from commit b3d7c9247530c0522033b4a9130d252bcbf50163)

# Conflicts:
#	presentation-core/src/main/java/tachiyomi/presentation/core/components/material/Tabs.kt
2023-11-05 16:30:02 -05:00
Eshlender
3dd8aeafe5 Combining manga information into a function (#10093)
* Combining manga information into a function

* clean space

* indexes

* context

* clean

* textAlign for Tablet Mode

(cherry picked from commit d862d83511d6bc7dee53609bcac77c20b01bc795)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-11-05 16:29:34 -05:00
arkon
6eac922cbf Use same icon as chapter list items to indicate downloaded chapter in reader transitions
(cherry picked from commit 2ee895ee3c09004666652181fedd653f4aeeb90f)
2023-11-05 16:28:31 -05:00
arkon
cde00282c1 Add basic storage usage info to "Data and storage" settings screen
(cherry picked from commit cb8ea5eab0ec68ea02e8dc98c0a52771c460d5ab)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsDataScreen.kt
2023-11-05 16:28:14 -05:00
Jobobby04
1202409b25 Merge branch 'release'
# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/webview/WebViewScreenContent.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/online/all/EHentai.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/exh/EXHMigrations.kt
#	app/src/main/java/exh/debug/DebugFunctions.kt
2023-10-29 19:03:29 -04:00
Jobobby04
caaa7a53bc Fix release migrations 2023-10-29 18:55:21 -04:00
Jobobby04
6ba8318b8a Fix page previews cache
(cherry picked from commit d600ddc11a)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/ui/main/MainActivity.kt
#	app/src/main/java/exh/EXHMigrations.kt
#	app/src/main/java/exh/debug/DebugFunctions.kt
2023-10-29 18:44:01 -04:00
Jobobby04
7565e51f95 Fix page previews after E-H update
(cherry picked from commit d45563e58d)
2023-10-29 18:26:42 -04:00
Jobobby04
230aec370c Fix import of reader preferences in reader
(cherry picked from commit 90281affc4)
2023-10-29 18:26:35 -04:00
Luqman
099758f02d Fix Mangadex recommendation (#951)
* Fix Md recs

Disable Md recs if delegated setting is disabled

* Revert "Fix Md recs"

This reverts commit 7dbfa662be2665aa97664720df42e2562bc4adb0.

* Rerun

This reverts commit 971315278b92bcabfbf6b5610cb1c63e281bc172.

(cherry picked from commit 6baa24273a)
2023-10-29 18:25:43 -04:00
AntsyLich
e0480ce8c3 pain (#968)
(cherry picked from commit 8fc04d8cc6)
2023-10-29 18:25:23 -04:00
Jobobby04
4cab34e06c Use readableAt
(cherry picked from commit d37463cf0f)
2023-10-29 18:23:41 -04:00
arkon
3aefee3ce0 Update website links
(cherry picked from commit ccc9a5a052b133174f8ba361490386ff0361283e)
(cherry picked from commit bc5ba6092b)

# Conflicts:
#	CONTRIBUTING.md
#	app/src/main/java/eu/kanade/presentation/more/MoreScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/AboutScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateNotifier.kt
#	app/src/main/java/eu/kanade/tachiyomi/source/LocalSource.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/ExtensionDetailsScreenModel.kt
2023-10-29 18:22:46 -04:00
arkon
72ac3c275c Avoid opening blobs as webpages
Fixes #10060

(cherry picked from commit 548f7f415a28529522f5aef0d53546e8bc68957e)
(cherry picked from commit 7ccb8eaaf2)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/webview/WebViewScreenContent.kt
2023-10-29 18:19:32 -04:00
Vlasov Roman
d14cf0ccea Change Shikimori domain from ".me" to ".one" (#10027)
(cherry picked from commit 8f3681d79f1624a092e5c356c9459897f4220c29)
(cherry picked from commit 2ba5460096)
2023-10-29 18:17:25 -04:00
arkon
c2963709cd Use consistent extension icon URLs
Better caching between versions.

(cherry picked from commit 30f845139d76762798e2cdec7804a38806c3eeca)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/extension/api/ExtensionGithubApi.kt
(cherry picked from commit 01e0c3c040)
2023-10-29 18:17:06 -04:00
Luqman
6baa24273a
Fix Mangadex recommendation (#951)
* Fix Md recs

Disable Md recs if delegated setting is disabled

* Revert "Fix Md recs"

This reverts commit 7dbfa662be2665aa97664720df42e2562bc4adb0.

* Rerun

This reverts commit 971315278b92bcabfbf6b5610cb1c63e281bc172.
2023-10-29 18:13:52 -04:00
Luqman
674d95b783
Shorter Chapter List in Reader (#955) 2023-10-29 18:13:25 -04:00
AntsyLich
8fc04d8cc6
pain (#968) 2023-10-29 18:12:04 -04:00
Shamicen
d502ebc275
Fixed avif/encrypted thumbnails not loading (#966)
* Fixed avif/encrypted thumbnails not loading

* used new input stream instead of byteArray
2023-10-29 18:11:16 -04:00
arkon
20e9ea7725 Don't include "app state" preferences in backups
(cherry picked from commit ce7bf396ebc0b85d0e857c55b27cb5eab2ad9d5b)

# Conflicts:
#	app/build.gradle.kts
2023-10-29 15:29:03 -04:00
arkon
23d683133b Record time when last automatic backup was created
Closes #3474

(cherry picked from commit 1aa5222c99f50543c47d5f3bd4bb892e16e31efb)
2023-10-29 13:52:59 -04:00
arkon
32c98b9c50 Abstract out library last updated timespan text
So we can reuse it for showing last automatic backup time.

(cherry picked from commit 298c49f3ab7000ed0457aa177bba9a98072b1339)
2023-10-29 13:52:45 -04:00
arkon
dfb3e2da8e Clean up chapter restoring logic a bit
(cherry picked from commit ce5e10be955d8166f53de8118f8f12e76546b5ea)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	domain/src/main/java/tachiyomi/domain/history/interactor/GetNextChapters.kt
2023-10-29 13:52:28 -04:00
arkon
5f7d56b6d2 Try to ensure that reader page error message is removed if image is loaded
Maybe fixes #5687

(cherry picked from commit 4868dd2d03214d0b1307cb42abd3e0a4cb5e85c6)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
2023-10-29 12:58:07 -04:00
arkon
ee212460b3 Add option to flash white screen on page change in reader for e-ink displays
Closes #2123

(cherry picked from commit 443d56f69bc1df515ed2edcd5b2936ed8710fb71)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/presentation/reader/settings/GeneralSettingsPage.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2023-10-29 12:57:02 -04:00
Eshlender
6fa77fe894 Add icons for author and artist in MangaInfoHeader (#10079)
* Mark author and artist

* overall style

* Clean up spacing

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
(cherry picked from commit 7457a18aee15ce7b2afd01fc5bc33f08baa2f6f1)
2023-10-29 12:55:34 -04:00
arkon
80a07631bf Add ability to reset chapter flags to defaults
Closes #10063

(cherry picked from commit 118d3b7fcc5cf8a27e52ff690cb3ecd28860c10c)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/ChapterSettingsDialog.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreen.kt
#	data/src/main/sqldelight/tachiyomi/data/mangas.sq
2023-10-29 12:55:08 -04:00
arkon
47f9bf08cc Replace AppUpdateService with a WorkManager job
Fixes #7773

Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
(cherry picked from commit eed57b80be077a9f73c36d8dc572f34f59c1ba8d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/updater/AppUpdateService.kt
2023-10-29 12:47:28 -04:00
arkon
20352e3f10 Rename "Backup and restore" settings screen to "Data and storage"
We can house more things in here in the future, like:
- A unified storage location setting (with scoped storage)
- Sync
- Disk usage info

(cherry picked from commit c46c39d4aea887503838cc832822047f3a41018a)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
2023-10-29 12:46:31 -04:00
AntsyLich
2e2f5264e5 Yeet app update download progress notification on complete (#10071)
(cherry picked from commit 17b90d2491c63a43dba147e93d4e6d0ea54984fd)
2023-10-29 12:43:48 -04:00
arkon
927f6105bf Set saved image date modified value to current time
Fixes #10070

(cherry picked from commit 9ecec5d468629f647f7c6370c78983d5bcf5b670)
2023-10-29 12:43:34 -04:00
Seishirou101
1d6266c578 Add info about problematic extensions to debug logs (#10059)
* add ext info to crashlog

* add unofficial to crashlog too

* update to have header include unofficial too

* after ktlintFormat

* Clean up debug info output

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
(cherry picked from commit 0bdd3f79d4d14318ba8110748c6d39484c6d446b)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/util/CrashLogUtil.kt
2023-10-29 12:43:21 -04:00
arkon
fd02759a56 Handle reader app bar insets in Compose
(cherry picked from commit 8057f067b964835897a2365cee0307cfdc1472f6)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
2023-10-29 12:41:16 -04:00
arkon
7ccb8eaaf2 Avoid opening blobs as webpages
Fixes #10060

(cherry picked from commit 548f7f415a28529522f5aef0d53546e8bc68957e)
2023-10-29 12:37:45 -04:00
arkon
d949e738f0 Migrate reader low brightness overlay to Compose
(cherry picked from commit d9c0b1ce7d1739da3945622f2d18b171a471fc2e)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
2023-10-29 12:37:30 -04:00
arkon
ae6586be2b Add Compose previews for reading and orientation mode dialogs
(cherry picked from commit 0a0b6861190b087776e60e8e20b5cb21d7e2a855)
2023-10-29 12:35:31 -04:00
Caleb Morris
88efcb5c01 Detached permission request from DiskUtil (#10051)
Being an extension on the DiskUtil couples to a class at a different abstraction
 layer without really needing to. Created PermissionRequestHelper as a place to
 put similar requests if needed in the future.

(cherry picked from commit 3b7ed9bc6d99c9822f3051f3696fb8359b4a8f8a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/BrowseTab.kt
2023-10-29 12:34:05 -04:00
Jobobby04
1a3371352c Fix build 2023-10-29 12:32:58 -04:00
arkon
59a6fd7dca Update Voyager
(cherry picked from commit 012854dd1e13eedecd92419fd6a4d1d5cc900462)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/browse/BrowseSourceScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/SourcesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibrarySettingsScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreenModel.kt
2023-10-29 12:32:40 -04:00
Caleb Morris
41920d9e75 [dev QoL] Added AndroidStudio previews for [presentation.track] namespace (#10022)
* Created DummyTracker for use in tests and presentation previews

* Added previews for TrackerSearch

* Added previews for TrackLogoIcon

* Added preview for TrackInfoDialogSelector

* Added previews for TrackInfoDialogHome

(cherry picked from commit 6d1e520c6c5c3860bbd588677bb4a05ab06fe830)
2023-10-29 11:51:34 -04:00
Joshua Owolabi
325a471359 Allow extensions to open manga or chapter by URL (#9996)
* open manga and chapter using URL

* removing unnnecessary logs

* Resolving comments

* Resolving comments

(cherry picked from commit f84868a2641578b7e07719d8f580e4668804fd50)
2023-10-29 11:50:20 -04:00
Caleb Morris
48ef273fb2 Changed data-mappers to use function format (#10045)
The lambda-format was really confusing to read and keep which anonymous data
 item was corresponding to which field. Now it's directly inspectable in the IDE

(cherry picked from commit 15423bfc8476179dff20ed49e5aa92a5387061ff)

# Conflicts:
#	data/src/main/java/tachiyomi/data/chapter/ChapterRepositoryImpl.kt
#	data/src/main/java/tachiyomi/data/manga/MangaMapper.kt
#	data/src/main/java/tachiyomi/data/manga/MangaRepositoryImpl.kt
#	data/src/main/java/tachiyomi/data/updates/UpdatesMapper.kt
#	data/src/main/java/tachiyomi/data/updates/UpdatesRepositoryImpl.kt
2023-10-29 11:50:07 -04:00
Caleb Morris
eee1f34ed2 Decoupled Tracker Interface (#10042)
Split out Tracker to interface and created simple dummy instance for previews

(cherry picked from commit 3a35c13575330e755a81aa550e76c115f69a649a)
2023-10-29 11:10:53 -04:00
arkon
d3ad5d6890 Refresh tracks before updating progress
Closes #1652

Also removes the ability to trigger refreshes for the entire library or
as part of a library update as it should no longer be needed. Opening
the tracking sheet already refreshes the data too, so stale data is
irrelevant there.

Also closes #4775 since it would no longer be relevant.

(cherry picked from commit 489d22720a4343f198c81fe10f69d5b212bfc41a)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-10-29 11:08:08 -04:00
Jobobby04
a4ff56e6eb Build fixes 2023-10-29 11:06:23 -04:00
arkon
ada9239c11 Consistent labeled checkbox composable
(cherry picked from commit c53172265b4dfba380a096c8d9107358515bf0e1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
2023-10-29 11:06:14 -04:00
arkon
19e37454c6 Make text clickable when removing item from tracker
(cherry picked from commit 8626a55fe4ee2fa5f61e6d4a2a8e0c7e3752cd25)
2023-10-29 10:41:00 -04:00
Vlasov Roman
2ba5460096 Change Shikimori domain from ".me" to ".one" (#10027)
(cherry picked from commit 8f3681d79f1624a092e5c356c9459897f4220c29)
2023-10-29 10:40:12 -04:00
arkon
0614a9a0dd Update background job preferences once settings are restored
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
(cherry picked from commit c4ce3dd46fe3ebf9b33b256106b8690e5543ddb8)
2023-10-29 10:39:27 -04:00
arkon
ff4c11bab0 Change crash log info to just have actual WebView version
(cherry picked from commit 22df12a680174890fe8f3559218b1819e37bf2f6)
2023-10-29 10:39:20 -04:00
arkon
07f34281c7 Show an error if backup file URI isn't returned to app when attempting restore
Related to #10028

(cherry picked from commit e572abb041cc0c410842fda1ed703f1b80a94d96)
2023-10-29 10:39:09 -04:00
Ivan Iskandar
ab04d07b3f ExtensionLoader: Fix incorrect ext file deletion (#10026)
Ref c492efcb31775a65464cf68b4a249bc5bb8e6016

(cherry picked from commit ea99d77fda239c54d029223150f20cd69f9665c3)
2023-10-29 10:38:58 -04:00
arkon
54caea4daa Minor cleanup
(cherry picked from commit 82a9d36df7c8a22c7dbd7762ecc38dbdacd2626e)

# Conflicts:
#	.github/renovate.json5
#	app/.gitignore
2023-10-29 10:38:15 -04:00
Caleb Morris
80844883ee [dev QoL] Added AndroidStudio previews for [presentation.history] namespace (#10012)
* Added display preview for HistoryDialogs

* Added preview with provider for each branch for HistoryItem

* Added previews for HistoryScreen

Created in-memory preferences construct for when its needed at top-level injection

* Fixed ktlint violations

(cherry picked from commit 447bcb28efa890ea1ebd73183b9ae25e8150be39)
2023-10-29 10:37:16 -04:00
arkon
3842056d9c Migrate top reader app bar to Compose
(cherry picked from commit d18022c25990f1961fef77eabb3924c68f283250)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/reader/appbars/BottomReaderBar.kt
#	app/src/main/java/eu/kanade/presentation/reader/appbars/ReaderAppBars.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/widget/listener/SimpleAnimationListener.kt
#	app/src/main/res/anim/enter_from_top.xml
#	app/src/main/res/anim/exit_to_top.xml
#	app/src/main/res/layout/reader_activity.xml
#	app/src/main/res/menu/reader.xml
2023-10-29 00:06:12 -04:00
arkon
868a27110a Remove remaining usages of platform-provided strings
(cherry picked from commit 5619a4c0d995774a4ba4e4030f639a62a708b771)
2023-10-28 15:30:56 -04:00
Ivan Iskandar
70ac8ea629 MangaSummary: Refactor to not use SubcomposeLayout (#10008)
(cherry picked from commit 0026f96fadbe029e8419985e69fb63bd2fe16d7f)
2023-10-28 15:26:27 -04:00
Ivan Iskandar
fdc7deb985 ExtensionLoader: Set read-only to private extension files (#10007)
(cherry picked from commit c492efcb31775a65464cf68b4a249bc5bb8e6016)
2023-10-28 15:26:18 -04:00
arkon
0fa0384f3d Tweak Cloudflare help message in WebView screen
Catches pages like what Shinigami is currently showing.
Also adjusts the banner to make it look more like part of the top AppBar so it
looks less like part of the webpage.

(cherry picked from commit c386d375dee2a846dd59395e6eda3a07311ed3d5)
2023-10-28 15:26:07 -04:00
arkon
f55f49b2c8 Use AppBar abstraction in more places
(cherry picked from commit 540fb1bb7c36fda0b6c070caacd8fb2a4176ddc0)
2023-10-28 15:25:12 -04:00
arkon
40b93cc26c Minor cleanup
(cherry picked from commit 81448f5d01ba6c6fb69de10118519c1036c46965)
2023-10-28 15:25:00 -04:00
arkon
7693076c89 Refactor reader bottom bar to presentation package
(cherry picked from commit 7c012010558d5e7a2ea32a8aaef3c908fdc52799)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/res/layout/reader_activity.xml
2023-10-28 15:23:53 -04:00
arkon
6e3dc97458 Use relative touch positions for reader tap events
Fixes #10004

(cherry picked from commit 90d3dd22426bbf1b398026a28e4cb4d552e6f435)
2023-10-27 19:58:04 -04:00
Jobobby04
16c524d81e Fix build 2023-10-27 19:57:54 -04:00
arkon
e427dc2d1c Use Compose to animate bottom reader menu bars
(cherry picked from commit 97b4d1f13de194163d7dc13a0d73d023109bc8c2)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderActivity.kt
#	app/src/main/res/anim/enter_from_bottom.xml
#	app/src/main/res/anim/exit_to_bottom.xml
2023-10-27 19:57:44 -04:00
arkon
7990e6a7de Remove duplicated logic for binding enhanced trackers
(cherry picked from commit b7d282235dd233aac3bbdba3c9cfe7cac877b2e1)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2023-10-27 19:41:57 -04:00
Pauline
9f325ea106 Add button to reorder categories alphabetically (#9369)
Closes #6459

Co-authored-by: arkon <arkon@users.noreply.github.com>
(cherry picked from commit 77ebc362f6d6b765ed2de6d1be18a969df4ca1f3)
2023-10-27 19:41:13 -04:00
arkon
5e2700d420 Always save pages/covers in subfolders
Ensures that pages and covers are grouped together.

(cherry picked from commit 8568d5d6c3ceae0084a350906b330f23dab571e1)
2023-10-27 19:41:04 -04:00
arkon
a39d4c8b83 Account for skipped entries when showing large updates warning
Closes #6159

(cherry picked from commit 7ed99fbbd61bd6748573b1c5463f3c552de8832d)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-10-27 19:40:53 -04:00
Jobobby04
21d898f92f Remove beta webtoon viewer split page
This had a bunch of issues around split pages not showing up properly so things
end up appearing to be missing while reading.
It'd be more worthwhile redoing the reader viewers than trying to get this to work
properly. It'd be better to just enable the split pages on download instead.

Closes #8433

(cherry picked from commit 94cba9324c872b1f0caa3f4d385266f190a9b114)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/ReaderViewModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/setting/ReaderPreferences.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonPageHolder.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/webtoon/WebtoonViewer.kt
#	core/src/main/java/tachiyomi/core/util/system/ImageUtil.kt
2023-10-27 19:39:49 -04:00
arkon
d179893834 Move backup restoring functions from BackupManager to BackupRestorer
(cherry picked from commit 6dab94a9371ad3eac0488c5f105e8e38c6c4e232)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
2023-10-27 17:40:38 -04:00
arkon
b9fe9f7f52 Add source preferences to backups
Closes #1857

Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit 0f42b9f1544b188362d1c0046c8ff853827ed270)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupConst.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/Backup.kt
2023-10-27 17:28:14 -04:00
arkon
92daa4ea28 Exclude tracker credentials in backups
(cherry picked from commit 730f3a6e5209197c7a026c36371545d5aef85851)

# Conflicts:
#	app/build.gradle.kts
2023-10-27 17:25:23 -04:00
arkon
b97dbca402 Add app settings to backups
This should be compatible with Aniyomi's implementation.
Related to #1857

Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
(cherry picked from commit 72024aa44af1622fd148b859c8cea0c3404dc370)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsBackupScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupConst.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/models/Backup.kt
2023-10-27 17:23:40 -04:00
arkon
757dff0c94 Specify broadcast receiver export flags
Really only useful once we target Android 14, but doesn't hurt to do it now.

(cherry picked from commit e47f4cc177485b36cde7f97c54a35ca6540c62ec)
2023-10-27 17:18:47 -04:00
LooKeR
1aa2ad1e9c Reduce recomposition of MangaHeader (#9985)
* Reduce recomposition of MangaHeader

* Reuse `Modifier` for `Tags`

Reference:
https://developer.android.com/jetpack/compose/modifiers#reusing-modifiers

* Don't recalculate Read State on recomposition

* Fix Linting issue

* Optimize chapter state calculations

(cherry picked from commit 78aa50bb350b0142a3e0407b3d2f6084b9c1a835)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/manga/components/MangaInfoHeader.kt
2023-10-27 17:18:20 -04:00
arkon
c2488c41a2 Update social media icons
(cherry picked from commit 7f0f67d75249033451f9e0fc841de6359ec28b69)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/about/AboutScreen.kt
2023-10-27 17:16:51 -04:00
arkon
9b4d0d372b Bump dependencies
(cherry picked from commit df332860b8fa1a4f873a7fa1d08c45e71cfb12ed)
2023-10-27 17:16:13 -04:00
Jobobby04
d600ddc11a Fix page previews cache 2023-10-27 17:14:38 -04:00
Jobobby04
d45563e58d Fix page previews after E-H update 2023-10-27 17:13:54 -04:00
Jobobby04
90281affc4 Fix import of reader preferences in reader 2023-10-27 17:13:27 -04:00
Jobobby04
d37463cf0f Use readableAt 2023-10-01 16:48:58 -04:00
Jobobby04
b3ab8895e3 Attempt to fix image decoder issue 2023-10-01 16:39:00 -04:00
arkon
6f1ad9960b Rename new method in ConfigurableSource to get preferences
Maybe fixes #9969

(cherry picked from commit afb1ee2200053f3ea0603f7db2283043792fb974)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/extension/details/SourcePreferencesScreen.kt
2023-10-01 16:36:28 -04:00
arkon
c24cdb598e Tracker-related cleanup
(cherry picked from commit c8e226acb2ef460f78a298ef44412bb5b2915daf)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/track/interactor/TrackChapter.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/track/TrackerManager.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/MigrateDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/stats/StatsScreenModel.kt
2023-10-01 16:34:14 -04:00
arkon
e2348638f0 Bring back relative timestamp translations
(cherry picked from commit 86edce0d8705beb4f7f750a0c6f5fa4b353ec3c0)
2023-10-01 16:07:24 -04:00
arkon
b5b947400b Bring back simplified relative timestamp setting
Except now it's just an on/off toggle for relative up to a week.

(cherry picked from commit 56d2464870cbd59f1e67dab7cf2a359bddfa0f41)

# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/presentation/updates/UpdatesScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesTab.kt
2023-10-01 16:07:05 -04:00
arkon
35eb6c7ebe Bump dependencies
(cherry picked from commit 5de72b7d32676fe3d0e9ce2176fe48e29a9f859c)
2023-10-01 16:04:38 -04:00
arkon
c3df5563cc Add WebView-based user agent string to debug info
Could probably use this when choosing a user agent later on.

(cherry picked from commit de92b1351f10f9211830358bd225bb768131d6b4)
2023-10-01 16:04:26 -04:00
arkon
ab1b931dcc Fix duplicate files being created when saving pages on Android 10+ with separate folders setting enabled
Fixes #9943

(cherry picked from commit 77a8a4229c9fbf1b601a448dc919f3c5daa94985)
2023-10-01 16:04:15 -04:00
arkon
be8df884d5 Fix hide entries in library setting causing browse to not load
Fixes #9924

(cherry picked from commit d4290f6f596dcafbe354eec51875680eb854d179)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceScreenModel.kt
2023-10-01 16:04:04 -04:00
arkon
326cd14db4 Consistently use absolute date strings everywhere
Closes #9781

(cherry picked from commit b08d604d2a8ae09e623a4375a75cbc844d26a0fa)

# Conflicts:
#	app/src/main/java/eu/kanade/presentation/manga/MangaScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/updates/UpdatesScreenModel.kt
2023-10-01 16:02:28 -04:00
arkon
972ada85ac Clean up fetch interval tests a bit
Also limit the dates we look at to most recent 10 distinct dates only. Closes #9930

(cherry picked from commit 6663abebaf69241741d0702331857951834ba806)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/data/backup/BackupRestorer.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/library/LibraryUpdateJob.kt
2023-10-01 16:01:16 -04:00
arkon
47cf4c135d Fix track search item not filling width if content is too short
(cherry picked from commit e5f83d0c6e0a0e55d35dd3a32e71817447824df0)
2023-10-01 16:00:00 -04:00
arkon
fe9f022363 Fix cut off labels in reader sheet toggles
(cherry picked from commit f9754f4f587449f6d9c3a31a99b5c39269d561ac)
2023-10-01 15:58:53 -04:00