Commit graph

8144 commits

Author SHA1 Message Date
AntsyLich
a1e0a1cd4b
Move archive related code to :core:archive
(cherry picked from commit bd7b35419861df6d426d6ec0a188391910d0f615)
2024-09-05 22:00:46 +07:00
Cuong-Tran
ffd5b4ebc1
Fix crashlytics while using custom global exception handler (#338)
* Add crashlytics to standard builds

(cherry picked from commit 3c611b95fb79e5ac972019b76c7b24f46a3087fd)

* Testing crashlytics

* working

* cleanup

* Revert "Auxiliary commit to revert individual files from 84232c7fe229bf557680a787fa02c055ca18dc66"

This reverts commit 2c9b6277b276f108a25e90e6be9a227440136063.

* Revert "Auxiliary commit to revert individual files from cf3f5fe1586f40fabf5b75a649ab332282608a08"

This reverts commit 708f6b1d3803374b0440d163560a682f0cfc618e.

* Only send crashlytics on Standard & Release/Preview build

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2024-09-05 15:29:28 +07:00
MajorTanya
586001c9a7
Fix Kitsu ratingTwenty being typed as String (mihonapp/mihon#1191)
The API docs and the responses type `ratingTwenty` as a "number" (Int
in Kotlin, it's divided by 2 for a .5 step scale 0-10). It's nullable
because an entry without a user rating returns `null` in that field.

(cherry picked from commit 001249a89dd4824a3df5661733062662c0ab44bd)
2024-09-05 15:26:10 +07:00
AntsyLich
1b637c9f4a
Remove more unnecessary permissions from Firebase dependency
(cherry picked from commit 02af9b1acf9f590d29560bc3fc90d206e8e6e1af)
2024-09-05 13:46:06 +07:00
AntsyLich
6b14769331
Migrate some classpaths to gradle plugins
(cherry picked from commit fc1c804bfda1d76c0399bbb6214e75b3def951cc)

# Conflicts:
#	app/build.gradle.kts
#	build.gradle.kts
#	i18n/build.gradle.kts
2024-09-04 19:07:51 +07:00
Roshan Varughese
11c2ae70dd
Option to update trackers when chapter marked as read (mihonapp/mihon#1177)
* Track when marked as read

* Add dismiss to snack bar

* i18n & ignore decimal chapters

* Detekt would have caught that 🤣

* `Ok` > `Yes`

* Dont prompt if untracked or current > new

* Move to MangaScreenModel

* Suggestions

Co-Authored-By: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Review 2

* toggleAllSelections first

---------

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

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaScreenModel.kt
2024-09-04 19:07:51 +07:00
Cuong-Tran
66077917af
Fix DTO API for MangaDex tracker 2024-09-04 19:07:51 +07:00
MajorTanya
a4d556affc
Use DTOs to parse tracking API responses (mihonapp/mihon#1103)
* Migrate tracking APIs to DTOs

Changes the handling of tracker API responses to be parsed to DTOs
instead of doing so "manually" by use of `jsonPrimitive`s and/or
`Json.decodeFromString` invocations.

This greatly simplifies the API response handling.

Renamed constants to SCREAMING_SNAKE_CASE.

Largely tried to name the DTOs in a uniform pattern, with the
tracker's (short) name at the beginning of file and data class names
(ALOAuth instead of OAuth, etc).

With these changes, no area of the code base should be using
`jsonPrimitive` and/or `Json.decodeFromString` anymore.

* Fix wrong types in KitsuAlgoliaSearchItem

This API returns start and end dates as Long and the score as Double.

Kitsu's docs claim they're strings (and they are, when requesting
manga details from Kitsu directly) but the Algolia search results
return Longs and Double, respectively.

* Apply review changes

- Renamed `BangumiX` classes to `BGMX` classes.
- Renamed `toXStatus` and `toXScore` to `toApiStatus` and `toApiScore`

* Handle migration from detekt to spotless

Removed Suppressions added for detekt.

Specifically removed:
- `SwallowedException` where an exception ends as a default value
- `MagicNumber`
- `CyclomaticComplexMethod`
- `TooGenericExceptionThrown`

Also ran spotlessApply which changed SMAddMangaResponse

* Fix Kitsu failing to add series

The `included` attribute seems to only appear when the user already
has the entry in their Kitsu list.

Since both `data` and `included` are required for `firstToTrack`, a
guard clause has been added before all its calls.

* Fix empty Bangumi error when entry doesn't exist

Previously, the non-null assertion (!!) would cause a
NullPointerException and a Toast with
"Bangumi error: " (no message) when the user had removed their list
entry from Bangumi through other means like the website.

Now it will show "Bangumi error: Could not find manga".

This is analogous to the error shown by Kitsu under these
circumstances.

* Fix Shikimori ignoring missing remote entry

The user would see no indication that Shikimori could not properly
refresh the track from the remote. This change causes the error Toast
notification to pop up with the following message
"Shikimori error: Could not find manga".

This is analogous to Kitsu and Bangumi.

* Remove usage of let where not needed

These particular occurrences weren't needed because properties are
directly accessible to further act upon. This neatly simplifies these
clauses.

* Remove missed let

(cherry picked from commit 9f99f038f341e325c4f56372a5ce950cf9f7cd6d)
2024-09-04 19:07:51 +07:00
Dani
10d155b9a0
Support skip-downloading-duplicate-read-chapters for merged entries
(cherry picked from commit e19c62a8aef2203eb287ef2f450c95b642f7f2f0)
2024-09-04 17:22:29 +07:00
NGB-Was-Taken
4f0960309b
Move "Choose what to sync" out of "Sync now" (jobobby04/TachiyomiSY#1264)
(cherry picked from commit 19bc08659b84498b1c1786ddc3d925528765f4d9)
2024-09-04 17:22:29 +07:00
NGB-Was-Taken
99e2e24b6d
Show local chapters as downloaded on merged entries. (jobobby04/TachiyomiSY#1262)
* Show local chapters as downloaded on merged entries.

* Disable downloadIndicator for local chapters on merged entries.

(cherry picked from commit 2cb8f8f872f055275bf6126f1ed4ef2617c69ea8)
2024-09-04 17:22:23 +07:00
NGB-Was-Taken
4a656f3e84
Respect thumbnailQuality and tryUsingFirstVolumeCover preferences. (MD) (jobobby04/TachiyomiSY#1260)
(cherry picked from commit bdb8553e28bd839c29785012ded2dde93cc885ab)
2024-09-04 17:22:18 +07:00
AntsyLich
6d78d96850
Add stable marker to Manga data class
Co-authored-by: ivan <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 4ee31bfea5b6908e7131e2c46e4cb46155005abf)
2024-09-04 16:27:35 +07:00
AntsyLich
09a38669e8
Collect MangaScreen state with lifecycle
Co-authored-by: ivan <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit 03eb756ecba0692d88d3a76254afc4c157fa225b)
2024-09-04 16:27:29 +07:00
AntsyLich
9f09ac94b9
PagerPageHolder: lazy init loading indicator
Co-authored-by: ivan <12537387+ivaniskandar@users.noreply.github.com>
(cherry picked from commit a45eb5e5288159dbbbbb5f92140ce0dd32a8f3ab)
2024-09-04 15:56:28 +07:00
AntsyLich
96669f6ca4
Remove legacy broken source and history backup
(cherry picked from commit 518abf032ccb9bb45d197927be2a5faca4167d29)
2024-09-04 15:46:42 +07:00
Cuong-Tran
a0d0a2ba09
update changelog 2024-09-01 04:55:08 +07:00
Cuong-Tran
c498e77ced
fix extension won't update (#328) 2024-09-01 03:05:07 +07:00
Cuong-Tran
e372542faa
fix: ext obsolete status (#327)
* fix: ext obsolete status

it was flip-flop each time refreshed

* reformat
2024-09-01 02:37:57 +07:00
Cuong-Tran
dfc33f983f
adjust source search's padding (#325) 2024-08-31 01:59:39 +07:00
Cuong-Tran
eb62927c1b
Add source search, icon & flag on Feed adding dialog (#324)
* add language flag

* add source icon

* source search
2024-08-31 01:23:20 +07:00
Cuong-Tran
b29e7c3ec5
bump versionCode 70
update changelog & README
2024-08-30 00:18:33 +07:00
Cuong-Tran
af212480ae
Serializable object must implement 'readResolve' 2024-08-29 23:14:46 +07:00
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
ce6bd7cbad
Show language flags in AppLanguageScreen 2024-08-29 16:48:39 +07:00
Cuong-Tran
8b50cba75a
More language flags 2024-08-29 16:48:09 +07:00
Cuong-Tran
32e25f7959
use FlagEmoji instead of vector flags in some places 2024-08-29 16:21:08 +07:00
Cuong-Tran
9fc6ea65a5
use UN flag for language All 2024-08-29 16:14:35 +07:00
Cuong-Tran
454228e78f
Hide language icon for LocalSource 2024-08-29 02:14:58 +07:00
Tran M. Cuong
19b36d724c
revert: language badge for ALL (#314) 2024-08-29 00:15:27 +07:00
Tran M. Cuong
593aac4d0a
language flags for SourceFilter (#315) 2024-08-29 00:15:00 +07:00
Tran M. Cuong
ce727d6d42
fix: correctly using language flag in source name to avoid it appears in folder name (#313)
* fix: correctly using language flag in source name to avoid it appears in folder name

* using flag language in PreMigration list
2024-08-28 23:54:39 +07:00
Tran M. Cuong
9def7e7380
add back button on smartsearch source (#309) 2024-08-28 18:37:05 +07:00
Tran M. Cuong
9a12a904ba
safe-guard some edge-cases where chapters are duplicated some how on a merged entry (#311) 2024-08-28 18:36:52 +07:00
Tran M. Cuong
37a817e8f8
don't expand description on the manga found by smart search being used for merging, so user can see the button 'Merge with another' (#310) 2024-08-28 18:36:36 +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
Roshan Varughese
c4f54e54b3
Hide keyboard when a Tracker SearchResultItem is clicked (mihonapp/mihon#1168)
* Hide keyboard on select

* Code Review Suggestion

(cherry picked from commit 7ca64a67c5c64103aa3a5c7efb9227d3a98b715d)
2024-08-28 00:00:37 +07:00
Tran M. Cuong
dadcfe6e21
Don't show Related Titles for merged entries (#308)
Also fix the case it was always showing Related Titles on overflow menu.
2024-08-27 23:58:42 +07:00
Tran M. Cuong
2d73e5e526
move dropdown menu to correct position (#303) 2024-08-27 18:21:12 +07:00
Catting
3791c1adb3
Add "show entry" action to download notifications (mihonapp/mihon#1159)
* Add 'show entry' to download notifications

Signed-off-by: Catting <5874051+mm12@users.noreply.github.com>

* fixup! Add 'show entry' to download notifications

Signed-off-by: Catting <5874051+mm12@users.noreply.github.com>

* fixup! Add 'show entry' to download notifications

Signed-off-by: Catting <5874051+mm12@users.noreply.github.com>

* spotless! Add 'show entry' to download notifications

Signed-off-by: Catting <5874051+mm12@users.noreply.github.com>

* Apply suggestions from code review

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

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

* fixup! spotless- Apply suggestions from code review

Signed-off-by: Catting <5874051+mm12@users.noreply.github.com>

---------

Signed-off-by: Catting <5874051+mm12@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 952a98c1804b2134e59fcb471c54cf7c4e1f415e)
2024-08-26 22:31:25 +07:00
Cuong-Tran
b7896dbb0e
Using emoji flags in manga detail page
Fix source's error icon background
2024-08-26 18:11:14 +07:00
Roshan Varughese
c28ed2317b
Add confirmation when adding repo via URI (mihonapp/mihon#1158)
* Add confirmation when adding repo via URI

* Blank lines

* Suggestions

* Reverting Changes

* Removing Unused Imports

(cherry picked from commit 45628b14db477b266eb1f1f4ca9bec0b43f741cc)
2024-08-26 13:43:14 +07:00
Roshan Varughese
4c5c5f45da
Respect privacy settings in extension update notification (mihonapp/mihon#1156)
* Hide Extension Names in Update Notifications when Content is Hidden

* Moving `val` inside if

* [skip ci] Update CHANGELOG.md

(cherry picked from commit 5dc6569a683da47f5323c252fce1bd4094a5d232)
2024-08-26 13:42:23 +07:00
Tran M. Cuong
b67f0eceb0
add extensions list refresh menu (#296) 2024-08-26 13:40:20 +07:00
Tran M. Cuong
a876742d74
fix: separate same-name extension's installing status from different repos (#295) 2024-08-26 13:27:56 +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
8a7c005d61
repo icon for Komikku & Keiyoushi (#291) 2024-08-26 00:08:38 +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