Commit graph

8771 commits

Author SHA1 Message Date
AntsyLich
42a97bb918 Add more migration config options and remove skipping option (mihonapp/mihon#2193)
(cherry picked from commit 288f577a45a6835c34ad41caab95794f164b7a0b)

* Further tweak migration config screen sheet

(cherry picked from commit 019fc08da2392725c36e064ffadc4e645edafb63)

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2026-01-21 11:47:31 +07:00
AntsyLich
2236e94f50 Add option to skip migration config
(cherry picked from commit 8714653a2f3b1a1f536494bcefbe66e7a7bbb4f7)

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2026-01-21 11:09:06 +07:00
AntsyLich
5ab24620ec Cleanup migrate manga dialog and related code (mihonapp/mihon#2156)
(cherry picked from commit 2b126f1ff56b63e470b48a04149e28c609f01148)

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2026-01-21 10:46:16 +07:00
AntsyLich
2196c84a0c Fix no sources while migrating alongside UI and code cleanup (mihonapp/mihon#2155)
(cherry picked from commit 5919f34fc96f254724bd3042ac2b91ac65912930)
(cherry picked from commit f0e6103f44d5a59e19decbd3ff48269009d782fc)

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2026-01-20 16:41:10 +07:00
AntsyLich
c328b37675 Add migration config screen to select and prioritize target sources (mihonapp/mihon#2144)
(cherry picked from commit 2e180005a01f633ad7fafc5cfb3079f0bc858448)

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2026-01-20 13:36:59 +07:00
Radon Rosborough
f12e997fb8 Improve handling of downloads for chapters with same metadata and optionally for OSes that don't support Unicode in filename (mihonapp/mihon#2305)
Co-authored-by: jkim <jhskim@hotmail.com>
Co-authored-by: fatotak <111342761+fatotak@users.noreply.github.com>
Co-authored-by: MajorTanya <39014446+MajorTanya@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 58b25d697f7987e9888344e815d5646ec010a663)
2026-01-14 12:56:19 +07:00
AntsyLich
4affedcf5a Handle reader cutout setting with Insets to support Android 15+ (mihonapp/mihon#2640)
(cherry picked from commit 0e0b6d92833f8e4f3aebdcc1f7c8c175084175d6)

Fix extra padding appearing in reader after user interactions (mihonapp/mihon#2669)

(cherry picked from commit aa300cb53ea3a02b63c3b3f3fca60d5e7533a8f1)
2026-01-13 15:18:17 +07:00
Cuong-Tran
26b1331750 refactor(ReaderAppBars): simplify reader app bar layout and vertical navigator (#1386)
- Removes `BoxIgnoreLayoutDirection` wrapper and related `CompositionLocalProvider` logic.
- Integrates vertical `ChapterNavigator` directly into the main `Column` layout using `Modifier.weight(1f)`.
- Replaces separate `AnimatedVisibility` blocks for vertical navigation with a single `when` branch inside the main UI structure.
- Refines positioning for `NavBarType.VerticalLeft` and `NavBarType.VerticalRight`.
2026-01-13 14:42:37 +07:00
AntsyLich
77ecb97535 Make reader edge-to-edge (mihonapp/mihon#1908)
(cherry picked from commit 5f0c4606681cd59b38ae0855c7827e149fa5488c)
2026-01-13 14:42:37 +07:00
Constantin Piber
8cf4d9dd96 Migrate Kitsu to use library_id and remote_id properly (mihonapp/mihon#2609)
(cherry picked from commit cbf72f4c60cb85f29f8446ba1adb1cfd29d38a59)
2026-01-13 14:05:40 +07:00
Jobobby04
b85fa5b9c9
Minor refactors
(cherry picked from commit 9b6c5effc9262f190c8758d2047708cd51549855)
2026-01-09 16:31:05 +07:00
Cuong-Tran
9136c15b9e
Revert part of "Switch to MaterialExpressiveTheme" (#1377)
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit 3e6afee13b9fd5716f7f2d547b3edcd3e17915db)

This reverts part of commit 3ab83f1270.
2026-01-09 14:30:16 +07:00
MajorTanya
ab9e17c739 Add authors/artists to MAL search results (mihonapp/mihon#2833)
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit 51b3ab3fd19bdf6a7c3bd2085104392a9c412622)
2026-01-08 15:20:55 +07:00
MajorTanya
69aba243ed Optimise MAL search queries by ~11x (mihonapp/mihon#2832)
Previously, the app made one request for the search, and then fired
off 1 request per search result to obtain additional data, such as
each title's synopsis, etc.

However, MAL's search allows field selection during the initial query,
which will return all the data in that first response, avoiding the
massive bunch of requests (and alleviating some pressure on MAL from
our userbase).

By combining the selected fields into one constant, I was able to also
get rid of the MALUserListSearch entirely because it was redundant.
This allows for a unified MALManga->TrackSearch helper, further
reducing complexity.

I got to my "11x" improvement because on page of search results has 10
elements, and this change turns 11 (1+10 for results) requests into 1.

(cherry picked from commit 9bf2d78a421213b1885456f5b54c3286edc539e1)
2026-01-08 15:20:55 +07:00
NGB-Was-Taken
58d1bf34d3 Enable logcat logging on stable and debug builds without enabling verbose logging (mihonapp/mihon#2836)
(cherry picked from commit a4f5a8184c956a3d92183e52a1c96d786cfe9517)
2026-01-08 14:29:25 +07:00
Constantin Piber
cfa624811a Add a small increment to chapter number before comparison to fix progress sync issues for Suwayomi (mihonapp/mihon#2675)
Due to a `Float->Double->Float` conversion somewhere inside Mihon, the
tracker sees 2.1 as 2.0999999046325684, which means this filter ignores
the 2.1 chapter (which we just tried to mark as read). This small
epsilon is small enough to never bother any serious usage, but large
enough to ignore any such conversion errors.

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit bd5c4d48f980d2d3dcc1112fe499dba17ef8e507)
2026-01-08 14:02:42 +07:00
NGB-Was-Taken
59ecc73253 Fix crash when trying to install/update extensions while shizuku isn't running (mihonapp/mihon#2837)
(cherry picked from commit 4ce249c1a0ee9f3a20d91214fd09145e0924b2e4)
2026-01-08 13:42:03 +07:00
AntsyLich
f24949748f Switch to M3E ExtendedFloatingActionButton
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit a39b5a56e853a9c11c0984b0385a2e60b0addc3a)
2026-01-08 12:55:25 +07:00
AntsyLich
3ab83f1270 Switch to MaterialExpressiveTheme
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit 3e6afee13b9fd5716f7f2d547b3edcd3e17915db)
2026-01-08 12:15:55 +07:00
Cuong-Tran
259b682527
refactor(color-scheme): Remove manual contrast level handling (#1370)
- Remove manual `contrastLevel`
- Simplify color scheme generation
2026-01-08 11:12:34 +07:00
AntsyLich
bbb460bfd5 Use materilalKolor for monet compat color scheme
(cherry picked from commit 9a11ec8ead41cb7199e10f3c7464790a0bd3b1ad)
2026-01-08 10:51:14 +07:00
Cuong-Tran
8eaa177ad5
Update dependency com.pinterest.ktlint:ktlint-cli to v1.8.0 (#1369)
* Update dependency com.pinterest.ktlint:ktlint-cli to v1.8.0 (mihonapp/mihon#2708)

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

* chore: disable ktlint consecutive comments and single line block comment rules

* spacing-between-declarations-with-comments & mix condition

* Remove unused rule

* More blank lines

---------

Co-authored-by: Mend Renovate <bot@renovateapp.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2026-01-08 10:19:37 +07:00
AntsyLich
3a7898eeac Cleanup extension screen search query predicate
(cherry picked from commit e059190fabe3cbe8498fc3cec7e39b0350f3c289)
2026-01-07 12:03:05 +07:00
AntsyLich
e3186b3db4
Remember descriptionAnnotator across composition
Closes mihonapp/mihon#2510

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit 906d6f3cdbd6f7168d9cdea0c3eb8f9c663a09c2)
2026-01-07 11:46:46 +07:00
Constantin Piber
c525ce49af Implement automatic removal of downloads on Suwayomi after reading, configurable via extension settings (mihonapp/mihon#2673)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 1263df9d4111511e49a43463c9808060433ce76d)
2026-01-07 11:27:00 +07:00
MajorTanya
130aae8515 Fix pre-1970 upload date display in chapter list (mihonapp/mihon#2779)
A user in mihonapp/mihon#2777 was using the ComicInfo.xml Year/Month/Day fields to
indicate date of publication for some American comics, which often
predate the UNIX Epoch of 1970.

They were seeing "N/A" displays because this line of code discarded
date information for any time before Jan 1st, 1970.

The `toRelativeString` extension function used in the other
`relativeDateText` function already accounts for very distant dates
(anything >7 days away turns into full date, not relative, regardless
of setting, though disabling the relative timestamp setting
circumvents this with the same result). Removing this line should not
cause any issues as it is purely a display difference and the use case
of backdating comics to pre-1970 is worth it in my opinion.

(cherry picked from commit 7a1c8a1b61e07d2e1a402b5daf0e7c04c232f655)
2026-01-05 15:46:17 +07:00
AntsyLich
2274e901a1 Fix reader not saving read duration when changing chapter (mihonapp/mihon#2784)
(cherry picked from commit 2e0786f699cc6d4863eb20331739c8325a451e63)
2026-01-05 14:56:08 +07:00
Luca Auer
a5d8f2efac
Minimize memory usage by reducing in-memory cover cache size (mihonapp/mihon#2266)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 4c9cfd8da5f9c67daa4b6401a910f979fd79179f)
2026-01-05 14:19:08 +07:00
AntsyLich
5e40d56dce Update tracker icons (mihonapp/mihon#2773)
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit 876c3f951b7e9782054d8f788ab39772ae6cf440)
2026-01-05 13:56:59 +07:00
AntsyLich
d5d36300ad Cleanup BaseOAuthLoginActivity and TrackLoginActivity (mihonapp/mihon#2748)
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit c222a28bd14c989b6fa0d53d7497bf063887c9ec)
2026-01-05 12:55:37 +07:00
NGB-Was-Taken
b7cdc46c0e Fix shizuku installer not updating installed extensions (mihonapp/mihon#2697)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
(cherry picked from commit c3d858a5613a133352f6b140916d05de7f752771)
2026-01-05 12:23:58 +07:00
NGB-Was-Taken
9ade58cc95 Stop tap zones from triggering when scrolling is stopped by tapping (mihonapp/mihon#2680)
(cherry picked from commit 2ec67ac0c1831a68d8d73e2679f8c98a5a48acf5)
2026-01-05 11:03:17 +07:00
NGB-Was-Taken
f225e611c6
Fix flaky migration tests (mihonapp/mihon#2663)
(cherry picked from commit 506d51a007e730594e4e5f05f00b4f94c4f24e05)
2025-12-31 13:54:37 +07:00
Constantin Piber
4293c00a50
Update Suwayomi tracker to use GraphQL API instead of REST API (mihonapp/mihon#2585)
(cherry picked from commit cc2877673539db779af00fbefab3802ac52a7719)

Co-authored-by: Constantin Piber <59023762+cpiber@users.noreply.github.com>
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2025-12-31 13:54:37 +07:00
Trevor Paley
87d4783bdd
Improve WebView multi-window UX (mihonapp/mihon#2662)
- Navigation history for lower windows is preserved when a popup is opened
- Back gesture will close a popup window rather than the entire WebView activity when there is no previous page
- The leftmost close button closes the entire activity as before
- When a popup window is shown, a new button appears to close just that window

(cherry picked from commit 855eea2ada8c09404dee99a965325913b246618f)
2025-12-31 13:54:37 +07:00
bapeey
2f41991b5d
Fix WebView crash introduced in v0.19.2 (mihonapp/mihon#2649)
(cherry picked from commit bdb0ce4779d565fc528e97bd38133a72ff3c1724)
2025-12-31 13:54:37 +07:00
Trevor Paley
b6bda7fea2
Added proper multi window support in WebView instead of treating everything as a redirect (mihonapp/mihon#2584)
(cherry picked from commit 6ab87c793122165f98c36b4b7d9158069ea40f5a)
2025-12-31 13:54:37 +07:00
Kashish Aggarwal
987109098c
Fix date picker not allowing the same start and finish date in negative time zones (mihonapp/mihon#2617)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 8662f80fbf6b7c3aee4945bf656def8341cfdfd3)
2025-12-31 13:54:37 +07:00
Cuong-Tran
eb8e9ba986
feat(extension): add refresh functionality for extension list after enabling/disabling repos (#1345) 2025-12-31 13:54:37 +07:00
c2y5
dfacf681fa
Fix extension download stuck at pending state in some cases (mihonapp/mihon#2483)
Also auto update extension list whenever a repository is added or removed

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 87c6f34a558b009be4d316e396ec3eeb4cfbbbf8)
2025-12-31 13:54:37 +07:00
AntsyLich
8ec37f3807
Add option to customize concurrent downloads, increase page concurrency (mihonapp/mihon#2637)
(cherry picked from commit 643762f91325a460c74398d472a555fb00ed9f63)
2025-12-31 13:54:37 +07:00
AntsyLich
4ab421e822
Add subtitle support to slider preference and general cleanup (mihonapp/mihon#2635)
(cherry picked from commit f36c259c1faf2ee4a108fd98a5d27d93014ba34c)
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2025-12-31 13:54:37 +07:00
AntsyLich
c9b3f8fda0
Fix reader "Unable to edit key" error (mihonapp/mihon#2634)
(cherry picked from commit aef3beb15fb2d4acbde9cb2ea4c5f639606d9fc8)
2025-12-31 13:54:37 +07:00
Cuong-Tran
76803d9649
Update shizuku.version to v13.1.5 (mihonapp/mihon#2566)
* Update shizuku.version to v13.1.5 (mihonapp/mihon#2566)

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

* fix(ShizukuInstaller): Improve error handling during asset installation and receiver unregistration

* fix(ShizukuInstaller): Reset readiness state on service disconnection

* fix(ShellInterface): Enhance output stream handling with improved exception management

* fix(ShizukuInstaller): Improve null handling for shell interface during entry processing

---------

Co-authored-by: NGB-Was-Taken <76197326+NGB-Was-Taken@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2025-12-31 13:54:35 +07:00
Luca Auer
617c8788d5
feat(coil): Configure Coil-cache to no longer leak memory (#1031)
Configure Coil-cache to no longer leak memory, causing the app to slow down and eventually crash

This configures the memory caching in the way presented by the official documentation at
https://coil-kt.github.io/coil/image_loaders/
2025-12-09 16:29:30 +07:00
Cuong-Tran
51c1f95791
fix(manga-cover-dialog): Avoid crash with SubsamplingScaleImageView (SSIV) not fully support Hardware decoder (#1319)
* Avoid crash with SubsamplingScaleImageView (SSIV) not fully support Hardware decoder

* keep original config if it's not Hardware

* refactor
2025-12-09 16:16:05 +07:00
Cuong-Tran
2d5497dcd9
Fix eHentai tag's text color (#1317) 2025-12-09 15:21:55 +07:00
Cuong-Tran
294f7d046d
Merge hentaiSourceIds (#1318) 2025-12-09 15:21:33 +07:00
Cuong-Tran
6b15d76be6
chore: Replace deprecated usages with Locale, LocalResources, Bitmap and toColorInt (#1316)
* Replace deprecated usages with Locale, LocalResources, Bitmap and toColorInt; remove FlagKit class

* remember(resources)
2025-12-09 14:55:49 +07:00
Cuong-Tran
b648afb889
fix(sticky-header): Fix sticky-header and scrolling issues in source screens (#1315)
* Fix padding in MigrateSourceScreen

* Fix scrolling bar glitch due to sticky headers in RelatedMangasList

* Dynamically measure source search's height

* sticky header in source screen

* fix(sticky-header): update sticky header keys for improved uniqueness

* Fix padding on related-manga-grid

* Avoid mixing dp and px units when initializing searchBoxHeight

* extract `hasKeyword`

* fillMaxWidth
2025-12-09 13:19:54 +07:00
dhanuarf
b24b14c73d
fix(sources-search): search box visibility glitch when scrolling (#1278)
* fix(sources-screen): search box visibility glitch when scrolling

* Refactor to a reusable function

* Apply to MigrateSourceScreen

* Fix warning

* suggestions

* Revert "Fix warning"

This reverts commit b1c97bcf04b9e34b3eb314fd54c45be953d2f451.

* Add comment

---------

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
2025-11-28 14:21:41 +07:00
kana-shii
798bfc19ff
Re-add bookmarks in reader screen (#1262) 2025-11-06 14:13:17 +07:00
Cuong-Tran
f668e31cf6
fix(migration): Add Merged Manga Dedupe Mode Migration and update versioning (#1258) 2025-10-30 08:59:30 +07:00
mrtear
dd69b6f9c0
Manhua type support to AutoWebtoonMode (#1248)
* AutoWebtoonMode: manhua
2025-10-30 07:54:20 +07:00
Cuong-Tran
3e55ea8eac
fix(library-update-job): Fix disappearing library update job (#1254)
* fix(library-update-job): Fix disappearing library update job

* extract to shared utils
2025-10-29 09:42:11 +07:00
Cuong-Tran
98e4c24939
feat(discord-UI): Re-UI logout button and improve thumbnail URL handling (#1253)
* feat(discord): re-UI the logout button

* fix(discord): Add URL utility functions and improve thumbnail URL handling

* refactor

* Update core/common/src/main/kotlin/tachiyomi/core/common/util/system/UrlUtils.kt

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>

* fix(UrlUtils): Correct comments for URL scheme checks in utility functions

* removing redundant checks

* Remove redundant comment about URL scheme validation

---------

Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
2025-10-27 15:26:17 +07:00
Cuong-Tran
0fa21a3de4
fix(discord): Fix service crash (#1252)
* fix(discord): Fix crash caused by late/not calling `Service.startForeground`

* fix(discord): Prevent Discord RPC from re-starting without a valid token

* Pass connectionsManager to start method after restart intent failure

* refactor condition
2025-10-27 12:07:19 +07:00
Cuong-Tran
6dcd548061
fix(sync-job): Fix disabling sync-job (#1251)
* fix(sync-job): Fix disabling sync-job

* param
2025-10-27 11:52:17 +07:00
Cuong-Tran
212e0d8a45
fix(backup-job): Fix disappearing backup job (#1250)
* fix(backup-job): Fix disappearing backup job

* optimize

* localization

* fix string resource

* try/catch exception on workinfo
2025-10-27 11:33:35 +07:00
Cuong-Tran
317a21adc0
chore(discord): Enhance Discord integration and update application ID (#1236)
* fix(discord): Update Komikku image

* feat(discord): Enhance Discord connection preferences with login state and improved UI

* fix(discord): Update application ID for Discord Rich Presence
2025-10-13 14:38:27 +07:00
Cuong-Tran
d15fa402df
refactor(library): Simplify category handling and improve filtering logic (#1235) 2025-10-13 14:24:48 +07:00
Cuong-Tran
296a314429
chore(library): Optimize library grouping (#1153)
* chore(library): Optimize library grouping

(cherry picked from commit 2f89d98cf9f0568401b39c09fdffe9fb3ece1fda)

* refactor(library): Avoiding a redundant iteration when grouping by Track Status

* fix(strings): Remove unnecessary period from search/filtering string
2025-10-13 13:49:26 +07:00
Cuong-Tran
f15ce1b433
fix(manga-screen): Don't show track dialog automatically if manga is not favorited (dialog dismissed) (#1234) 2025-10-13 13:47:29 +07:00
Cuong-Tran
5bdd464200
feat(library): Improve category tab selection when searching/filtering library or adding/removing categories (#1233)
* feat(library): Improve category tab selection when searching/filtering library or adding/removing categories

* Improve active category index handling in LibraryScreenModel
2025-10-13 13:10:31 +07:00
Cuong-Tran
0db0238d6b
fix(library-merged): Fix download-filter for merged entries (#1232) 2025-10-13 11:35:38 +07:00
Cuong-Tran
95f1e44e34
fix(merged-entry): Fix update progress and mark duplicate as read for merged entries (#1226)
* fix(merged-entry): Fix update progress and mark duplicate as read for merged entries

* Change brightnessOverlayValue annotation from param to field
2025-10-13 11:21:25 +07:00
Cuong-Tran
8211d6ae68
fix(merged-entries): Fix disabled option to clear data folder (#1196)
* fix(merged-entries): Fix disabled option to clear data folder

* fix(merged-entries): Minor correction of source filtering when delete data folder
2025-10-07 16:18:49 +07:00
Cuong-Tran
cedc79782b
refactor(merged-settings): Remove unused no-dedupe option (#1194)
* refactor(merged-settings): Remove unused no-dedupe option

* refactor(merged-settings): Remove unused no-dedupe option
2025-10-07 15:58:18 +07:00
Cuong-Tran
61a48e592d
fix(deps): update dependency com.materialkolor:material-kolor to v3 (#1220) 2025-10-07 14:42:48 +07:00
Secozzi
a464d2f4de Update markdown to 0.37.0 (mihonapp/mihon#2516)
(cherry picked from commit 27a4f6f45c0ba639450428f5f58b1c938fe3032e)
2025-10-06 17:11:50 +07:00
NGB-Was-Taken
83827f7e8e Fix disabling incognito mode from notification (mihonapp/mihon#2512)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 96e5131358110079587d262d37ec346e10941758)
2025-10-06 16:49:41 +07:00
Guzmazow
136fb7652c Improve spoofing of X-Requested-With header to support newer WebView versions (mihonapp/mihon#2491)
Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
(cherry picked from commit 065147472e8e683c47d11f3e00386aba2a7c1bac)
2025-10-06 16:35:26 +07:00
Constantin Piber
e6bddcab14 Delegate Suwayomi tracker authentication to extension (mihonapp/mihon#2476)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 6f635782c22cc0844caa4e4d88cf390005989b0b)
2025-10-06 16:14:46 +07:00
Cuong-Tran
dfc93fab39
fix(deps): update dependency androidx.compose:compose-bom to v2025.09.01 (#1189) 2025-10-06 14:25:15 +07:00
Cuong-Tran
61c6918e11
chore(build): bump version code to 76 and version name to 1.13.4 2025-09-15 12:40:55 +07:00
Cuong-Tran
4aa8f5a201
fix(webtoon-scale): Improve webtoon scale type handling & listener (#1150)
* fix(webtoon): improve webtoon scale type handling and listener invocation

* fix(webtoon): streamline webtoon scale type handling and improve listener invocation

* add retry

* qualifier

* remove listener on destroy to avoid memory leaks

* using an object expression for the listener

* ensure listener is removed only if viewTreeObserver is alive

* refactor layout listener to improve retry logic and ensure proper removal

* using doOnLayout

* use doOnLayout for scaling logic to ensure proper execution after view is laid out
2025-09-15 11:45:32 +07:00
Cuong-Tran
11c26a32fa
chore(dialog): Consistent text style (#1133)
* remove filtered_scanlators (old field not used anymore)

* Improve coding

* Revert "remove filtered_scanlators (old field not used anymore)"

This reverts commit 24042c17a432ff4c5012010155476aedbed3825f.

* consistent text style

* add comment
2025-09-10 12:43:09 +07:00
Cuong-Tran
8f2ab5b87e
fix(merged-manga): Fix download ahead for merged entries (#1132)
* Fix download ahead for merged entries

* correctly handle merged manga
2025-09-10 12:04:29 +07:00
Fermín Cirella
004b63dfb5
feat(library): Add library preference to show empty categories during search/filtering (#1088)
* feat(library): Add library preference to show empty categories during search/filtering

* Add comment back

* Fix formatting

* subscribe to changes & refactor Regex

* format

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
2025-09-10 10:02:36 +07:00
Cuong-Tran
632856c2f2
fix(track): wrongly set track's status when start tracking (#1076) 2025-09-09 13:33:26 +07:00
Cuong-Tran
a0e2d2942a
feat(webtoon): Adaptive scale for wider screen size (#1130)
* feat: Add webtoon scale type option

This commit introduces a new setting for webtoon reading mode that allows users to select a scale type for webtoon images.

The available scale types are:
- Fit Screen
- 16:9
- 20:9
- 4:3
- 3:2

This setting can be found in both the reader settings sheet and the global reader settings.

* mutable

* add to Reader's settings page & fix size calculation

* option for long strip gap preference

* fix: ensure recycler scales to default when screen ratio is less than desired

* hide smart scale for long strip gap preference

* Avoid zero division

* using forEach

* improve readability

* better viewer size calculation & optimize list
2025-09-09 13:20:55 +07:00
Cuong-Tran
683bf172bf
feat(reader): Add zoom option for Automatically zoom wide images (#1124)
* feat(reader): Add zoom option for `Automatically zoom wide images`

* improve
2025-09-05 01:23:35 +07:00
Cuong-Tran
9e5069a376
feat(reader-paged): Add options to disable zoom in or double tap to zoom for paged-reader (#1123) 2025-09-04 17:03:49 +07:00
Stefano Russo
242b980e57
feat(webtoon): Add option to enable/disable pinch to zoom in webtoon viewer (#1101)
* feat: Add option to disable pinch to zoom in webtoon viewer

* Change default settings & also include settings for Paged mode

* refactor webtoon

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
2025-09-04 16:19:54 +07:00
David Brochero
91a208ada2
fix(reader): gifs not animating (#1105)
* fix: gifs not animating

* add missing proguard coil3 rules

* add comment
2025-09-04 13:07:08 +07:00
Cuong-Tran
58eccf9ddb
chore(settings): Always display App Language text in settings (#1122)
* chore(settings): Add App language text all the time

* spotless

* English variants
2025-09-04 12:54:29 +07:00
kana-shii
c41d5fb847
feat(discord): Discord RPC from Anikku (#1100)
* Add RPC [Barebone, barely works]

Co-Authored-By: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>

* refactor connections

* RPC (#223)

* Add error handling and refactor DiscordRPCService methods

* Add Discord RPC customization options and preferences

* Update Discord RPC button labels and clean up comments

* Refactor DiscordRPCService to improve readability by adding braces for null checks

* Refactor ConnectionsPreferences to improve code clarity and organization

* Refactor ConnectionsPreferences to improve code clarity and organization

(cherry picked from commit df42d196368d28c3c9dcee3692f3f9140da7f2a1)

* Feat: implement Discord account management enhancements and RPC restart functionality (#245)

* fix: correct indentation in CastManager for better readability

* feat: implement Discord account management enhancements and RPC restart functionality

(cherry picked from commit b7c50f1f0184dd717c5cc4dee0310053bfb8d613)

* Notification color & icon for DiscordRPC

Co-Authored-By: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>

* Change foss variant application id suffix to '.foss' and more (mihonapp/mihon#1831)

- Remove `BuildConfig.PREVIEW`
- Rename `BuildConfig.INCLUDE_ANALYTICS` -> `BuildConfig.ANALYTICS_INCLUDED`
- Rename `BuildConfig.INCLUDE_UPDATER` -> `BuildConfig.UPDATER_ENABLED`
- Rename build property `with-analytics` -> `include-analytics`
- Rename build property `with-updater` -> `enable-updater`
- Add build property to disable code shrink
- Add build property to include dependency info in apk/app bundle

(cherry picked from commit 0893609ad2c4791dc404d72a5e69a2e0373517ae)

* feat(discord): update App/icon & fully works with all screens

* update Discord Rich Presence application ID and icon URLs

* Fix updateDiscordRPC for all screens (also reuse code)

* integrate Discord Rich Presence for WebViewScreen

* feat: ghibli style images for Discord RPC

* optimize code

* further optimize

* supprest useless warning

* refactor: simplify setScreen calls related to lastUsedScreen

* optimize whole file

* a

Co-Authored-By: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>

* fix(discord): update download button URL to point to the official website

* feat(discord): allow stop Discord RPC from notification

also improve error handling

* fix(i18n): Torrent server "stop" multi-lang

* Start DiscordRPCService as foreground service on Android O+

This commit modifies the `DiscordRPCService` to start as a foreground service on Android O (API level 26) and above. This change ensures the service continues to run in the background, especially when the app is not in the foreground.

- Added a conditional check using `Build.VERSION.SDK_INT` to detect if the device is running Android O or later.
- If the device is running Android O or later, `startForegroundService` is called instead of `startService` to ensure it runs as foreground service.
- If the device is running a version prior to Android O, `startService` is called.

(cherry picked from commit 869617d8cac3aa8461158f1f9a34b9e29147e8f0)

* fix(discord): episode/chapter formating

* fix(discord): Fix & improve Discord login/accounts

* New webview with DiscordLoginScreen

* Add appbar

* Using Webview directly instead of AndroidView and add clearCookies, browsing navigation

* Using coroutine instead of thread

* Revert service

* use response block

* save preference in coroutine too

* no web navigator

* address comments for DiscordLoginScreen

* Refactor Settings screen & dialog

* Using serialization to parse JSON to avoid blocking API

* Don't clear all cookies and web storage aggressively

* Extract constant

* Fix login

Co-Authored-By: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>

* fix(discord): Fix screen crash & token retrievement

* Update images to my liking

* spotless

* small fixes

* Update strings.xml

* Revert "Update images to my liking"

This reverts commit 4ad3b9f84fdada45ee480ae7dc242b6e1b4bc18a.

* small fixes

* hopeful fix + chapter progress

* Update ReaderActivity.kt

* Update ReaderActivity.kt

* remove timestamps

* Remove isNSFW check

because 95% of tachi extensions are rated as +18, even when there is sfw content

* Clean up

* Fix ReaderActivity

* Cleanup Settings

* Fix login

* Fix lag when getting categories

* Fix jump to pages

* Remove old SDK check

* Fix status when back from reading

* Remove pages progress

* Only set necessary action in ReaderActivity

* Using IO coroutine instead

* Add back timestamps

* Fix strings & settings

* Fix crash

* ActivityType

* Adjust description

* refactor Discord settings menu

* Using its own scope

* Optimize the connection waiting

* remove source.isNSFW

* Using screenModelScope

* Fix state access

* add modifier

* sharing OkHttpClient instance for better resource management

* Restart RPC directly via service intent instead of toggling

* remove lint suppression

* add back showProgress

* Fix set Discord status

* Fix Discord login no avatar

* Handle API rate limits and errors in getDiscordUri

* Token-based isLogged checking

* Make Discord token sensitive data and not in backup

* Minor fix

* remove debug message

---------

Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
Co-authored-by: Dark25 <nadiecaca2000@gmail.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
Co-authored-by: Jery <jery99961@gmail.com>
2025-09-04 12:40:32 +07:00
kana-shii
5280caa60d
feat(reader): Download from reader chapter list (#1110)
* Download from reader

* Fix for localsource

* Fix actions for merged entries

* fix spotless

* refactor code

* catching Exception instead of Throwable

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
2025-09-03 18:12:38 +07:00
Cuong-Tran
46f0e26dd3
fix(merged-reader): Fix chapter list's download badge in Reader (#1117)
* Fix chapter list's download badge in Reader

* improve
2025-08-29 18:11:38 +07:00
Cuong-Tran
d385dfe808
fix(merged-chapters) Fix chapter's webview (#1116)
* Fix chapter's webview

* combine null check

* variable name

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-08-29 18:10:55 +07:00
Cuong-Tran
8cfab79227
fix(merged-entries): Fix manga folder opening and source click (#1115)
* Fix open manga folder

* Fix source click

* fix null

* warning
2025-08-29 17:53:29 +07:00
Cuong-Tran
b067690678
fix(merged-entries): Fix deletion of chapters and data folders in merged entries (#1114)
* fix(merged-entries): Fix delete chapters or data folders

* spotless

* comment

* safely using state.source
2025-08-29 17:00:57 +07:00
Cuong-Tran
21d221a048 chore(library): Using fastFilter, fastAny, fastMap 2025-08-27 14:29:01 +07:00
Cuong-Tran
4e2445d60c feat(library): Optimize trackers filter speed 2025-08-27 14:29:01 +07:00
krysanify
639459f8af Fix crash opening filter sheet with empty library and mark as read/unread for selected items (mihonapp/mihon#2355)
(cherry picked from commit d88dbe6409b9c4dd7fbb37757e89c09af73f1fd3)
2025-08-27 14:29:01 +07:00
AntsyLich
395f68f71f Fix 'Default' category showing in library with no user-added categories (mihonapp/mihon#2371)
(cherry picked from commit 7d717ee7fd9779b85fee29cadc946292cfdcee89)
2025-08-27 14:29:01 +07:00
AntsyLich
3ccf255d4e Potentially fix library IndexOutOfBound crash (mihonapp/mihon#2341)
(cherry picked from commit c4407eda0eed5a7faed47d4470d79e6b1512b5c2)
2025-08-27 14:29:01 +07:00
Cuong-Tran
3485297434 fix(library): De-duplicate entries mistakenly created in DB 2025-08-27 14:29:01 +07:00
Cuong-Tran
379d36e586 feat(library): Optimize library grouping 2025-08-27 14:29:01 +07:00
Cuong-Tran
ea06631670 feat(library): Rework categories filter 2025-08-27 14:29:01 +07:00