Resolve conflicts: keep upstream GitHub workflows, adopt extension_store
migration as 46.sqm, move fork pages_read history column to 47.sqm, merge
DomainModule DI for ExtensionStore + fork features, and combine DE strings.
Co-authored-by: Cursor <cursoragent@cursor.com>
Add configurable library-update download modes (disabled, next X unread, all)
with settings UI and enqueue downloads after chapter sync completes.
Co-authored-by: Cursor <cursoragent@cursor.com>
Introduce ReadingEtaPreferences and ReadingEtaLimits so library badges, reader series ETA, cross-manga history mining, and page-rate estimation share one configuration. Add reader settings sliders (EN/DE strings). Register preferences in PreferenceModule and wire GetCrossMangaPageRateHistorySamples.
Co-authored-by: Cursor <cursoragent@cursor.com>
* Translated using Weblate (Turkish)
Currently translated at 70.4% (148 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/tr/
* Translated using Weblate (Turkish)
Currently translated at 70.4% (148 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/tr/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 84.2% (177 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 84.2% (177 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hans/
* Translated using Weblate (Bengali)
Currently translated at 22.3% (47 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/bn/
* Translated using Weblate (French)
Currently translated at 92.8% (195 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fr/
* Translated using Weblate (Thai)
Currently translated at 27.1% (57 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/th/
* Translated using Weblate (Thai)
Currently translated at 27.1% (57 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/th/
* Translated using Weblate (Danish)
Currently translated at 79.0% (166 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/da/
* Translated using Weblate (Danish)
Currently translated at 79.0% (166 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/da/
* Translated using Weblate (Czech)
Currently translated at 80.9% (170 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/cs/
* Translated using Weblate (Czech)
Currently translated at 80.9% (170 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/cs/
* Translated using Weblate (Malay)
Currently translated at 20.4% (43 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ms/
* Translated using Weblate (Ukrainian)
Currently translated at 86.1% (181 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/uk/
* Translated using Weblate (Ukrainian)
Currently translated at 86.1% (181 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/uk/
* Translated using Weblate (Spanish)
Currently translated at 85.7% (180 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/es/
* Translated using Weblate (Spanish)
Currently translated at 85.7% (180 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/es/
* Translated using Weblate (Swedish)
Currently translated at 79.5% (167 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/sv/
* Translated using Weblate (Swedish)
Currently translated at 79.5% (167 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/sv/
* Translated using Weblate (Korean)
Currently translated at 76.1% (160 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ko/
* Translated using Weblate (Korean)
Currently translated at 76.1% (160 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ko/
* Translated using Weblate (Italian)
Currently translated at 97.1% (204 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/it/
* Translated using Weblate (Italian)
Currently translated at 97.1% (204 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/it/
* Translated using Weblate (Assamese)
Currently translated at 82.8% (174 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/as/
* Translated using Weblate (Assamese)
Currently translated at 82.8% (174 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/as/
* Translated using Weblate (Vietnamese)
Currently translated at 75.2% (158 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/vi/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 89.0% (187 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/pt_BR/
* Translated using Weblate (Portuguese (Brazil))
Currently translated at 89.0% (187 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/pt_BR/
* Translated using Weblate (Romanian)
Currently translated at 78.5% (165 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ro/
* Translated using Weblate (Romanian)
Currently translated at 78.5% (165 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ro/
* Translated using Weblate (Filipino)
Currently translated at 95.7% (201 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (Filipino)
Currently translated at 95.7% (201 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (German)
Currently translated at 92.8% (195 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/de/
* Translated using Weblate (German)
Currently translated at 92.8% (195 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/de/
* Translated using Weblate (Greek)
Currently translated at 79.0% (166 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/el/
* Translated using Weblate (Greek)
Currently translated at 79.0% (166 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/el/
* Translated using Weblate (Croatian)
Currently translated at 30.4% (64 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/hr/
* Translated using Weblate (Croatian)
Currently translated at 30.4% (64 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/hr/
* Translated using Weblate (Arabic)
Currently translated at 92.3% (194 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ar/
* Translated using Weblate (Arabic)
Currently translated at 92.3% (194 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ar/
* Translated using Weblate (Dutch)
Currently translated at 79.5% (167 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/nl/
* Translated using Weblate (Dutch)
Currently translated at 79.5% (167 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/nl/
* Translated using Weblate (Japanese)
Currently translated at 84.7% (178 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ja/
* Translated using Weblate (Japanese)
Currently translated at 84.7% (178 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ja/
* Translated using Weblate (Finnish)
Currently translated at 79.0% (166 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fi/
* Translated using Weblate (Finnish)
Currently translated at 79.0% (166 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fi/
* Translated using Weblate (Hindi)
Currently translated at 27.1% (57 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/hi/
* Translated using Weblate (Portuguese)
Currently translated at 87.1% (183 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/pt/
* Translated using Weblate (Indonesian)
Currently translated at 92.8% (195 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/id/
* Translated using Weblate (Tamil)
Currently translated at 35.2% (74 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ta/
* Translated using Weblate (Polish)
Currently translated at 80.9% (170 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/pl/
* Translated using Weblate (Polish)
Currently translated at 80.9% (170 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/pl/
* Translated using Weblate (Catalan)
Currently translated at 74.7% (157 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ca/
* Translated using Weblate (Catalan)
Currently translated at 74.7% (157 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ca/
* Translated using Weblate (Korean)
Currently translated at 76.1% (160 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ko/
* Translated using Weblate (Filipino)
Currently translated at 96.6% (203 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (Filipino)
Currently translated at 97.1% (204 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (Assamese)
Currently translated at 100.0% (210 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/as/
* Translated using Weblate (Assamese)
Currently translated at 100.0% (210 of 210 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/as/
* [ar] `connections_discord_info`: placeholder for app name
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [ar] `pref_discord_idle`: don't use emoji tag
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [ro] `pref_discord_idle`: don't use emoji tag
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [zh-rCN] `connections_discord_info`: placeholder for app name
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [ro] `connections_discord_info`: placeholder for app name
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [pt-rBR] `discord_status_description`: placeholder
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [bn] `action_scroll_to_top`: remove quote sign
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [ca] `pref_discord_show_download_button`: translate
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* [da] `connections_discord`: correct Discord name
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [es] `connections_discord`: correct Discord name
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [fi] `connections_discord_info`: placeholder for app name
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [hi] `pref_discord_idle`: correct use of word
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [hi] `pref_theme_cover_based_style_fruitsalad`: type
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [hr] `action_open_folder`: use folder instead of file
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [it] `pref_fetch_manga_chapters_on_add_description`: correct translation
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [ja] `pref_discord_idle`: translate
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [ko] `pref_discord_show_timestamp`: correct use of words
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* [ms] `download_cache_renew_interval_12hour`: remove AM/PM
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* [nl] `connections_discord`: correct Discord
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* [ta] `scale_type_16_9`: remove space
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [tr] `updating`: grammar
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [tr] `pref_auto_sync_progress_from_trackers`: translate
* [uk] `pref_discord_custom_message`: correct translation
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* [zh-rCN] `discord_status_description`: add space
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
---------
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: Weblate <noreply-mt-weblate@weblate.org>
Co-authored-by: 안세훈 <on9686@gmail.com>
Co-authored-by: Infy's Tagalog Translations <ced.paltep10@gmail.com>
Co-authored-by: Itsmechinmoy <167056923+itsmechinmoy@users.noreply.github.com>
Co-authored-by: Cuong-Tran <16017808+cuong-tran@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* feat: split "sync on add" into separate metadata and chapter fetch preferences
* refactor: remove redundant SnackbarHostState and error snackbars when auto sync entries
* clean other languages strings
* feat(migration): Allow skipping smart search for single entry migration
Introduces a "Smart search" setting when migrating a single manga, allowing users to choose between an automated best-match search or manual selection directly.
* ensure manual migration is only triggered once
* Add UI toggle
* refactor pref
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (195 of 195 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Catalan)
Currently translated at 17.9% (35 of 195 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ca/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (197 of 197 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Filipino)
Currently translated at 87.3% (180 of 206 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (Catalan)
Currently translated at 16.9% (35 of 206 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ca/
---------
Co-authored-by: ɴᴇᴋᴏ <s99095lkjjim@gmail.com>
Co-authored-by: Salvador Rodó Coll <salvador.rodo@gmail.com>
Co-authored-by: Infy's Tagalog Translations <ced.paltep10@gmail.com>
Co-authored-by: Cuong Tran <cuongtran.tm@gmail.com>
* Translated using Weblate (Filipino)
Currently translated at 86.9% (166 of 191 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (192 of 192 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Filipino)
Currently translated at 86.0% (166 of 193 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (193 of 193 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (193 of 193 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
---------
Co-authored-by: Infy's Tagalog Translations <ced.paltep10@gmail.com>
Co-authored-by: ɴᴇᴋᴏ <s99095lkjjim@gmail.com>
Co-authored-by: Cuong Tran <cuongtran.tm@gmail.com>
* 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
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (184 of 184 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (190 of 190 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 99.4% (190 of 191 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Vietnamese)
Currently translated at 72.2% (138 of 191 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/vi/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (191 of 191 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (191 of 191 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Translated using Weblate (Russian)
Currently translated at 100.0% (191 of 191 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ru/
* Translated using Weblate (Russian)
Currently translated at 100.0% (191 of 191 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/ru/
* Added translation using Weblate (Thai)
* Update i18n-kmk/src/commonMain/moko-resources/ru/strings.xml
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
---------
Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
Co-authored-by: ɴᴇᴋᴏ <s99095lkjjim@gmail.com>
Co-authored-by: amigo browser <juniperforest1@proton.me>
Co-authored-by: NeCronZ <necronzs12@gmail.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* 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
* 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>
* 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>
* 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
* 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)
* Translated using Weblate (Filipino)
Currently translated at 86.3% (114 of 132 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/fil/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.7% (129 of 132 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.7% (129 of 132 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hans/
* Translated using Weblate (Chinese (Simplified Han script))
Currently translated at 97.7% (129 of 132 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hans/
* Translated using Weblate (Chinese (Traditional Han script))
Currently translated at 100.0% (132 of 132 strings)
Translation: Komikku-App/Komikku
Translate-URL: https://hosted.weblate.org/projects/komikku-app/komikku/zh_Hant/
* Use the full-width question mark (?) for better localization consistency in Chinese UI text
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* more natural translation
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
---------
Co-authored-by: Infy's Tagalog Translations <ced.paltep10@gmail.com>
Co-authored-by: 玄枵 <ipmlosion@users.noreply.hosted.weblate.org>
Co-authored-by: John William <jwmoerls@gmail.com>
Co-authored-by: Cuong-Tran <cuongtran.tm@gmail.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Add Appearance option to set if cover should be vertically aligned in the manga info view
* Apply align modifier with `CenterVertically` or `Top` instead of using `.apply`
* Change option to align cover to top