Commit graph

8628 commits

Author SHA1 Message Date
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
Cuong-Tran
f635fc209b fix(library): Fix categories filter & hidden categories 2025-08-27 14:29:01 +07:00
AntsyLich
1fd86ca74f Optimize and cleanup library code (mihonapp/mihon#2329)
Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
(cherry picked from commit e62cd0e816402303fdf12513816894624f77e208)
2025-08-27 14:29:01 +07:00
Cuong-Tran
74a9182b20
chore(code): Minor improve (#1086)
* remove filtered_scanlators (old field not used anymore)

* Improve coding

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

This reverts commit 24042c17a432ff4c5012010155476aedbed3825f.
2025-08-14 23:12:01 +07:00
Secozzi
7d06e3b211 Don't hardcode app name in strings.xml (mihonapp/mihon#2394)
(cherry picked from commit 3d3c36078a3b8cb741adffd46931aeab9cb38578)
2025-08-12 23:03:22 +07:00
Secozzi
c5c4961ed7 Fix height of description not being calculated correctly if images are present (mihonapp/mihon#2382)
(cherry picked from commit c6a96b3970f0ba4643f438155653790973fa00f6)
2025-08-12 23:03:22 +07:00
MajorTanya
4679aaee23 Add label to privately installed extensions (mihonapp/mihon#2349)
Just adds the same word as the install option ("Private" in English)
next to the extension version and 18+ label.

(cherry picked from commit 549d74a2c9aef0eb41ea18378cd29d4ab9eee2b4)
2025-08-12 23:03:22 +07:00
AwkwardPeak7
e6c760cbcb Include Manga initialized status in backup (mihonapp/mihon#2285)
(cherry picked from commit 62eec15fe61be88e0ebc8be89a1e445dde55ba7e)
2025-08-12 23:03:22 +07:00
Secozzi
7acd998b12 Add option for rendering images in description (mihonapp/mihon#2076)
(cherry picked from commit 2ef8ae11c9da02c24bf4d12bf22b41c5d19bada4)
2025-08-12 23:03:22 +07:00
Cuong-Tran
ddfdd9588e
refactor(library): Combine category filter changes into a single flow (#1093) 2025-08-12 14:37:49 +07:00
Cuong-Tran
865db12b78
fix(UI): Fix repo dialog width on wide screen (#1078) 2025-07-23 16:28:33 +07:00
Cuong-Tran
feabf6efa6
fix(library): Fix Ungrouped UI (#1072) 2025-07-23 15:14:28 +07:00
Cuong-Tran
a9f6f7e8b8
feat(library): Keep tabs when exclude-only categories filtering (#1074)
* feat(library): Keep tabs when exclude-only categories filtering

* Fix updating activeFilter status

* Avoid redundant state updates if unchanged sets are emitted

* improve
2025-07-23 14:23:20 +07:00
Cuong-Tran
0d34d2f8bc
feat(library): Hide empty library tabs when searching/filtering (#1069)
* feat(library): Hide empty library tabs when searching/filtering

* Add search-global to Empty screen in Library

* Simplify conditional logic

* combine conditional flow

* Optimize code

* Simplified the code

* Simplified the code
2025-07-22 18:26:56 +07:00
Cuong-Tran
5dae177b08
feat(history): Add indicator for un-finished reading & has more un-read chapters (#992)
* feat(history): Add indicator for un-finished reading & has more un-read chapters

* Fix StateProvider

* Show reading progress in History screen

* Don't count bookmark excluded chapters in unread dot for History

* Don't count bookmark excluded chapters in Library unread count

* Exclude bookmark filtered chapters from continue-reading list

* Bundle `applyFilter` for bookmark & scanlator together

* Remove parentheses
2025-07-21 15:34:12 +07:00
Cuong-Tran
3ec6aeaba2
feat(local): Allow delete whole manga's downloaded folder & clear chapters list (#1016)
* feat(local): Allow delete local files

* Refresh chapters list after deleting

* Allow delete whole entry's downloaded folder & clear episodes/chapters list

Also hide `Open folder` for merged entries

* Don't delete local folder & refresh local's chapters list state after clear

* use forEachIndexed instead of forEach

* adding comment

* add empty line
2025-07-21 15:29:11 +07:00
Cuong-Tran
32d448d6ab
fix(bottom-action-menu): Properly close dropdown menu when refreshing selected mangas (#1044) 2025-07-18 12:22:54 +07:00
manav_chaudhary
8d65991759
feat(library): Added a button to refresh selected manga entries (#1038)
* feat: add refresh button to MangaBottomActionMenu

* feat: add refresh functionality for selected manga in LibraryTab

* feat: add refreshSelectedManga function to update selected mangas

* feat: add targeted update functionality for specific manga IDs

* Update CHANGELOG.md

* Refactoring & cleanup

* Move it to overflow menu

* Optimize update logic

* Fix index & improve code

* Remove parentheses

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
2025-07-18 00:58:15 +07:00
manav_chaudhary
13a09d970a
feat(library-update): Update manga without chapters even if restricted by source (#1037) 2025-07-17 16:46:34 +07:00
Danny Wu
190f4a68ac Add option to hide missing chapter count (mihonapp/mihon#2108)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit d2c1ff6adf5543e5a593949704d41f2358252593)
2025-07-17 16:20:21 +07:00
Tsukuyoumii
cc8c6be5fc
Reindex Downloads through library overflow (#780)
* Reindex Downloads through library

* Update LibraryToolbar.kt

* Update LibraryTab.kt
2025-07-17 15:23:11 +07:00
Cuong-Tran
737bec70f0
feat(manga-tracking): Allow auto open tracking dialog when adding to library (komikku-app/anikku#59)
* feat(manga-tracking): Allow auto open tracking dialog when adding to library

* Prevent tracking dialog shows up overwrite change-category dialog

* Refactoring

(cherry picked from commit e82af25e198931d04fc2f75f663017fabced904c)
2025-07-17 15:09:07 +07:00
Cuong-Tran
d0823ef3f6
fix(anilist): Fix null recommendation node
(cherry picked from commit 305f8db0adcf821962a539867b5704fbf229461e)
2025-07-17 13:13:10 +07:00
Cuong-Tran
5ec780eddb
fix(merged-entry): Fix actions like URL copy or sharing for merged entries (komikku-app/anikku#55)
* fix(merged-entry): Fix actions like URL copy or sharing for merged entries

* Unify callback parameters

* Add titles for actions in merged manga dialog

* Iterates through the list once

(cherry picked from commit ed7bb96f409701c93bbca056728679af91f3453f)
2025-07-17 13:10:00 +07:00
Mend Renovate
ab44f49fff Update dependency org.junit.jupiter:junit-jupiter to v5.13.1 (mihonapp/mihon#1754)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 591e9c13560f28d71598eb32648387d099ebc881)
2025-06-16 00:38:37 +07:00
claymorwan
0b37b3258c Add Catppuccin theme (mihonapp/mihon#2117)
Mocha for dark and Latte for light, mauve accent

(cherry picked from commit 77eb55874278b7740d43b9144d9253a075cc593c)
2025-06-16 00:38:37 +07:00
Jobobby04
04782957c3 Remove +1 in Page Layout reader settings
(cherry picked from commit 3ad9765dcfa1f8574bd6d6bbb0e2955494b07a33)
2025-06-16 00:38:37 +07:00
Jobobby04
a4a19eb88b More guards against edited data
(cherry picked from commit 95dc82594fe7e503a5ba279c19c0b859c6789470)
2025-06-16 00:38:37 +07:00
NGB-Was-Taken
8af212f970 Change log file extension to .txt (jobobby04/tachiyomiSY#1449)
(cherry picked from commit 80e585fa9170b0dc0f6582ed85f0e9d58afce363)
2025-06-16 00:38:37 +07:00
NGB-Was-Taken
06ce765952 Remove the unused mark duplicate as read preference. (jobobby04/tachiyomiSY#1448)
* Remove the unused mark duplicate as read preference.

* Migrate the old preference to new preference

(cherry picked from commit 71470b9e02bc5e3e7607d7de57f90a882810bb49)
2025-06-16 00:38:37 +07:00
Cuong-Tran
b7c60d0750 Cleanup nHentai media-server 2025-06-16 00:38:37 +07:00
NoFace33
519c5f822e
Update DMCA UUID list using Mangadex Massacre Google Sheet (#988)
* Update DMCA UUID list using Mangadex Massacre Google Sheet

* Fix: add trailing newline to mangadex_dmca_uuids.txt

* Re-add trailing newline for formatting consistency
2025-06-16 00:06:54 +07:00
Callum Wong
3f2eb75b71 Add QR code scan button for sync API key (jobobby04/tachiyomiSY#1430)
* Add dependency com.journeyapps:zxing-android-embedded:4.3.0

* Add widget parameter to EditTextPreferenceWidget

* Add QR code scanner icon button to sync API key preference which launches a ScanContract

* Remove screenOrientation property from CaptureActivity manifest

* Allow scanning both normal and inverted codes

* store values and make code more concise

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>

* Import local context

---------

Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
(cherry picked from commit 84c7da5a7d244ffc0cd7155d15e0a200f548ad35)
2025-06-15 22:28:03 +07:00
AntsyLich
bd93329372 Disable reader's 'Keep screen on' setting by default (mihonapp/mihon#2095)
(cherry picked from commit f0de8f973b331ebad6e1844aea7864f97f237941)
2025-06-15 22:28:03 +07:00
AwkwardPeak7
903281c2ef Fix pressing Enter while searching also triggering navigation back on physical keyboards (mihonapp/mihon#2077)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 86ebf5581598f28feab4090ac3bf627f54b511d7)
2025-06-15 22:28:03 +07:00
Cuong-Tran
87563a239c
fix(searching): fix filter-list param when doing search with some ext while doing: (#1006)
- Smart search
- Suggestions
2025-06-15 21:38:00 +07:00
Cuong-Tran
6c530e4fca
fix(recommendation): Fix null RecommendationSource & refactoring (#1000)
* Remove redundant condition & refactor class

* Batch networkToLocalManga

* Fix null source

* Simplify by creating RecommendationSource to match with upstream

* Add comment
2025-06-12 15:39:09 +07:00
Tim Schneeberger
9a31ffcc41
feat(recommendation): batch processing for recommendations & sort by relevancy (jobobby04/TachiyomiSY#1383)
* refactor: use NoResultsException

* refactor: cleanup RecommendationPagingSources

* refactor: turn wake/wifi lock functions into reusable extensions

* feat: implement batch recommendation (initial version)

* fix: serialization issues

* fix: wrong source id

* refactor: increase performance using virtual paging

* refactor: update string

* refactor: handle 404 of MD source correctly

* style: add newline

* refactor: create universal throttle manager

* refactor: throttle requests

* chore: remove unused strings

* feat: rank recommendations by match count

* feat: add badges indicating match count to batch recommendations

* fix: handle rec search with no results

* fix: validate flags in pre-search bottom sheet

* feat: implement 'hide library entries' for recommendation search using custom SmartSearchEngine for library items

* style: run spotless

* fix: cancel button

* fix: racing condition causing loss of state

* Avoid runBlocking in a property getter

* Remove unnecessary `synchronized`

* Fixes screen staying on in library tab. (jobobby04/TachiyomiSY#1451)

(cherry picked from commit 254980695bc39fe064e7aeb181ecdbf70c1eff95)

---------

Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
Co-authored-by: NGB-Was-Taken <76197326+NGB-Was-Taken@users.noreply.github.com>
2025-06-12 15:19:34 +07:00
Cuong-Tran
cd3dc79583
feat(MangaDex): use tracker links to associate mangas automatically with trackers (#991)
* feat(MangaDex): use tracker links to associate mangas automatically with trackers (jobobby04/TachiyomiSY#1387)

* feat: add searchById support to trackers (MAL, AniList, MangaUpdates only)

* feat: add new preference to toggle auto selection of tracker items using source metadata if available

* feat: add new preference to toggle auto selection of tracker items using source metadata if available

* feat: add automatic title selection using source metadata to TrackInfoDialog.kt

* style: apply spotless

* refactor: remove hardcoded MangaDexSearchMetadata cast and introduce common interface

(cherry picked from commit 217503eab0e2fe551943e3b702cc6df4aaae8ebf)

* Handle null when searchId failed

* Wrap the await() call in a use block to ensure the OkHttp Response is properly closed after use

* Simplify Regex

* Injection via construction

* Wrap the blocking HTTP call in an IO dispatcher context

---------

Co-authored-by: Tim Schneeberger <tim.schneeberger@outlook.de>
2025-06-09 18:43:05 +07:00
Cuong-Tran
2661122d9a
chore(source-feed): Also hide entries already in library (#985) 2025-06-06 10:08:54 +07:00
Cuong-Tran
a843918e7f
feat(ui): Improve migration bottom sheet layout with scrollable content (#983)
* feat(ui): Improve migration bottom sheet layout with scrollable content

* Using with(binding) and remove redundant Box

* Simplify checkbox listener setup in MigrationBottomSheetDialog

* Fix reference ID should not create new ID
2025-06-05 12:03:22 +07:00
Cuong-Tran
4b4e4c6204
chore(sponsor): change to GitHub Sponsor (#981)
* chore(sponsor): change to GitHub Sponsor

* Fix button style

* Font style

* Small fix

* spotless
2025-06-04 16:15:31 +07:00
Cuong-Tran
3d2ad327bc
chore(manga-repository): Revert (in-memory) fast browsing (#965)
* Revert "fix(manga-repository): Fix selected entries while bulk-selection won't show as selected (#927)"

This reverts commit 303a266720.

* Revert "refactor(network-to-local): simplify networkToLocalManga (#910)"

This reverts commit d33efced68.

* Revert "chore(network-local-manga): Reintroduce (in-memory) fast browsing (#909)"

This reverts commit 3310784faf.

* Add updateInfo parameter to insertNetworkManga method
2025-05-31 11:41:20 +07:00
Cuong-Tran
ba63b74163
fix(migration): Fix issue preventing migration dialog to be shown up (#964) 2025-05-31 11:30:46 +07:00