Commit graph

352 commits

Author SHA1 Message Date
Cuong-Tran
a979e3cda5
rename Related Titles to Suggestions (#317)
* Rename RelatedTitles to RelatedMangas/Suggestions

* Website suggestions
2024-08-29 23:13:42 +07:00
Cuong-Tran
8b50cba75a
More language flags 2024-08-29 16:48:09 +07:00
Cuong-Tran
9fc6ea65a5
use UN flag for language All 2024-08-29 16:14:35 +07:00
Tran M. Cuong
eb311ee27a
feat: merge multiple library entries (#302)
* extract SmartSearchMerge to a separated class

* multiple select & merging from library

* fix various case when merging an already merged entry

* allow run 1 manga search-merging directly from Library screen

* allow remove merged entries after merging

* Open the newly-created merged manga after merging

* don't expand description on the merged manga being opened after merging
2024-08-28 18:26:00 +07:00
Tran M. Cuong
228abc31c4
feat: allow ext from multiple repos & show their name (#294)
* show repo name

* Fix Obsolete status when disable/enable repo

* find extension's repo correctly using pkgName together with signature

* Don't filter out extension with same pkgname from different repo (signature)

* Preview

* Revert "Update CrashLog to include Unofficial ext’s info"

This reverts commit 7c11ddfc1e.

* remove Unofficial status

* show repo's short name if possible
2024-08-26 12:56:14 +07:00
Tran M. Cuong
50b837c976
feat: enable/disable repo (#288)
* Enable/Disable repo

* update extensions list when refresh
2024-08-26 00:08:38 +07:00
Tran M. Cuong
2536e5a77e
Remove built-in Komikku repo (#286)
* Add Help to Repo EmptyScreen

* Migration: insert Official Repo for old users

* button to auto fill official KMK extension repo

* 'More extensions' button to go to Repo page

* Remove default official repo

* fix spotless
2024-08-26 00:08:38 +07:00
Dani
94acbb08d7
Add option to skip downloading duplicate read chapters (mihonapp/mihon#1125)
* Add query to get chapter count by manga and chapter number

* Add functions to get chapter count by manga and chapter number

* Only count read chapters

* Add interactor

* Savepoint

* Extract new chapter logic to separate function

* Update javadocs

* Add preference to toggle new functionality

* Add todo

* Add debug logcat

* Use string resource instead of hardcoding title

* Add temporary logcat for debugging

* Fix detekt issues

* Update javadocs

* Update download unread chapters preference

* Remove debug logcat calls

* Update javadocs

* Resolve issue where read chapters were still being downloaded during manual manga fetch

* Apply code review changes

* Apply code review changes

* Revert "Apply code review changes"

This reverts commit 1a2dce78acc66a7c529ce5b572bdaf94804b1a30.

* Revert "Apply code review changes"

This reverts commit ac2a77829313967ad39ce3cb0c0231083b9d640d.

* Group download chapter logic inside the interactor GetChaptersToDownload

* Update javadocs

* Apply code review

* Apply code review

* Apply code review

* Update CHANGELOG.md to include the new feature

* Run spotless

* Update domain/src/main/java/mihon/domain/chapter/interactor/FilterChaptersForDownload.kt

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit ca968f162ef7a61a9036b7ab9bea407a6334801d)
2024-08-26 00:08:38 +07:00
kana-shii
2266447745
Custom themes (#269)
* Update SettingsAppearanceScreen.kt

* Update SettingsAppearanceScreen.kt

* fix spotless

* improve

- Put custom theme in front
- Set default color for custom theme
- Using pre-defined padding values
- Make the color picker scrollable for phone in landscape mode

* fixes and new name

* Update ThemeColorPickerWidget.kt
2024-08-26 00:08:38 +07:00
Cuong-Tran
be9dbc50ea
Allow sync Feeds & extensionRepoSettings 2024-08-26 00:08:38 +07:00
Cuong-Tran
48d874342e
Address more spotless lint errors from KMK & SY 2024-08-26 00:08:37 +07:00
AntsyLich
e7ca892f65
Address spotless lint errors (mihonapp/mihon#1138)
* Add spotless (with ktlint)

* Run spotlessApply

* screaming case screaming case screaming case

* Update PagerViewerAdapter.kt

* Update ReaderTransitionView.kt

(cherry picked from commit d6252ab7703d52ecf9f43de3ee36fd63e665a31f)
2024-08-26 00:08:37 +07:00
Tran M. Cuong
8c6cca09a4
feat (ui): source language flags (#272)
* add countries flags
add flags & simplify/sizing
add flagkit

* add flags to Extensions Filter

* add flags to Sources & Extensions screen

* show language flag in Library
2024-08-26 00:07:56 +07:00
Cuong-Tran
ae7c421d29
ui: put Related titles in overflow
close #248
2024-08-13 02:17:44 +08:00
Tran M. Cuong
c6165c3c51
feat: change feed's order (#220)
allow change feed's order manually by moving up/down

partially implement #130

* add feed_order

- add/migrate feed_order column
- auto increament feed_order when adding new feed
- showing feed in order using feed_order

* refactor code to support feedOrder

* swap feed order

* Fix generating feed's order when no feed existed
2024-08-04 03:02:19 +07:00
Cuong-Tran
c7bab00379 Setting for pre-load cover's library color 2024-07-22 13:34:33 +07:00
Tran M. Cuong
050c661c9e
progress-banner (#163)
* feat: banner showing updating status

* showing progress for updating

* showing progress for syncing & backup restoring too

* preferences for progress banner
2024-07-09 15:00:37 +07:00
KaiserBh
94c0154ee3
chore: improve google drive sync. (jobobby04/TachiyomiSY#1200)
improve google drive sync, removes the lock, change to protobuf, and potentially fix deviceId not being unique, since it wasn't appState...

(cherry picked from commit c2eece0fff7c8b4395bf0aa02c7ef6012f9bbf8d)
2024-07-05 14:59:57 +07:00
AntsyLich
e079b9bfd8
Make global search "Has result" sticky
Closes mihonapp/mihon#133

(cherry picked from commit 5a61ca5535fe0d9e8e7bcb9e665ba2f9cb0cf649)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/source/service/SourcePreferences.kt
2024-07-05 14:47:32 +07:00
Tran M. Cuong
19890ef4d4
update-color-schemes (#121)
* feat: Add more color theme

- CloudFlare
- CottonCandy
- Doom
- Matrix
- Mocha
- Sapphire

* generate full color for Cottoncandy

* generate full color for Mocha

* refactor(ui): reorder themes

close #114
2024-07-02 01:14:27 +07:00
Cuong-Tran
e326358523
feat: Add option to show home icon on related titles
Add an option to show a home icon while browsing related titles, allowing users
to navigate directly back to home screen.
2024-06-24 15:16:28 +07:00
Tran M. Cuong
a539028ec0
Change Recommendation button style & enable default showing it 2024-06-18 18:54:48 +07:00
Cuong M. Tran
d11856fb42
enable mark read track & sync back from trackers by default 2024-06-17 09:33:03 +07:00
Tran M. Cuong
7a99a9a9b5
add KMK comment 2024-06-16 20:15:50 +07:00
Cuong M. Tran
753285275f
Improve Theme cover based (#81)
* Support Pure dark mode
* Tag using elevated style (non pure-dark-mode) and more vibrant outline color (pure-dark-mode)
* More color for various icons
* Color theme for Metadata screen
* Always animated color change
* Always/Only use dominant color for library/update/upcoming cover's background
* Don't always generate color each time cover loaded (library/browse), only update color when new cover changed on detail page
* Fix the spinner background in Edit Manga Info
* Improve manga's backdrop color

Detail:
* Change Cover's color & ratio preference key to AppState

* using ElevatedSuggestionChip with color

* more icon color

* color theme for MetadataViewScreen

* enable animation by default

* Fix: can't turn off theme cover based

* Won't check pref for theme enabled everytime, instead always generate cover's color to run faster later

* Skip generate cover's vibrant color for browsing mangas if already generated, also won't even trying to read ratio for favorite mangas

* Only generate new seed color when cover loaded in detail page

* only use dominantColor for cover when cover is unable to load

* Don't use elevatedSuggestionChip for darkmode and change border color

* EditMangaInfo: Set Spinner's selected item's background color to transparent

* update chip color

* Colors Palette screen

* Support Amoled Dark Mode by upgrading Material-Kolor to 1.7.0

* improve manga's backdrop color

* only generate color while browsing if option is enabled, aslo fixed the case won't update dominant color if cover changed

* always using theme animation

* update translation
2024-06-12 18:22:44 +07:00
Cuong M. Tran
95fef0d019
Option to not show Related titles by default but using a button to open that screen 2024-06-12 17:39:40 +07:00
AntsyLich
cdac438f1e
Make the app Android 8+
(cherry picked from commit dfb3091e380dda3e9bfb64bf5c9a685cf3a03d0e)

# Conflicts:
#	README.md
#	app/src/debug/res/mipmap-hdpi/ic_launcher.png
#	app/src/debug/res/mipmap-hdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-mdpi/ic_launcher.png
#	app/src/debug/res/mipmap-mdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-xhdpi/ic_launcher.png
#	app/src/debug/res/mipmap-xhdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-xxhdpi/ic_launcher.png
#	app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-xxxhdpi/ic_launcher.png
#	app/src/debug/res/mipmap-xxxhdpi/ic_launcher_round.png
#	app/src/main/java/eu/kanade/domain/ui/UiPreferences.kt
#	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/data/coil/TachiyomiImageDecoder.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/installer/ShizukuInstaller.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
#	app/src/main/res/mipmap-hdpi/ic_launcher.png
#	app/src/main/res/mipmap-hdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-mdpi/ic_launcher.png
#	app/src/main/res/mipmap-mdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-xhdpi/ic_launcher.png
#	app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-xxhdpi/ic_launcher.png
#	app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
#	app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
#	buildSrc/src/main/kotlin/AndroidConfig.kt
2024-06-11 00:04:02 +07:00
Cuong M. Tran
40a190e75b
Default to put ShowRecommendation in overflow menu 2024-06-10 13:26:25 +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
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
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
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
4ea7aad280
Update dependencies and cleanup
(cherry picked from commit 2d1240b27455fd781fece76173b5f35641df7cd1)
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
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
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
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
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
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
Cuong M. Tran
05aaacb7d1
Preferences for enable/disable related mangas 2024-04-25 17:23:24 +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
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
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
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
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
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
Cuong M. Tran
c301e4ff76
using komikku-app/extensions/repo 2024-02-22 23:06:27 +07:00