Commit Graph

854 Commits

Author SHA1 Message Date
AntsyLich 6ae79d255d Address various redundant constructs 2026-06-13 23:57:35 +06:00
AntsyLich 4b9974e20a Use duration overload for time related methods 2026-06-13 23:57:35 +06:00
AntsyLich 509eee5dfb Use app scoped CoroutineScope (#3403) 2026-06-12 17:14:29 +06:00
AntsyLich a330258f6a Add vertical chapter navigator for long strip mode (#3377) 2026-06-03 19:54:52 +00:00
AntsyLich d3dcb7fe4b Revert "Fix thread starvation caused by not yielding or using an inappropriate thread pool (#2955)"
This reverts commit 22d5c9d9f4.
2026-03-20 15:28:29 +06:00
AntsyLich 87665736a9 Replace preference getter functions with properties (#3091) 2026-03-20 14:57:01 +06:00
AntsyLich d4b88b13b8 Make retry in reader redownload image (#3089) 2026-03-19 10:40:49 +00:00
AntsyLich 0024278f4b Reapply "Fix thread starvation caused by not yielding or using an inappropriate thread pool (#2955)"
This reverts commit 1d7c838ae6.
2026-02-26 18:42:54 +06:00
AntsyLich 1d7c838ae6 Revert "Fix thread starvation caused by not yielding or using an inappropriate thread pool (#2955)"
This reverts commit  22d5c9d9f4
2026-02-26 18:25:56 +06:00
AntsyLich 0cc724108b Add all pages of adjacent chapters in the UI instead of only the first or last three (#2995) 2026-02-25 12:28:53 +00:00
Cuong-Tran 20c899f2cd Don't wrap an intent-chooser inside another intent-chooser (#2921) 2026-02-20 20:20:13 +06:00
Luca Auer 22d5c9d9f4 Fix thread starvation caused by not yielding or using an inappropriate thread pool (#2955) 2026-02-15 21:47:31 +06:00
MajorTanya b543bc089a Clean up some build warnings (#2929)
* Replace deprecated rememberPlainTooltipPositionProvider

* Remove superfluous when branch

This when is marked as exhaustive.

* Replace deprecated LibrariesContainer call

AboutLibraries now wants us to produce the libraries ourselves.

* Replace deprecated ClipboardManager with Clipboard

Clipboard uses suspend functions, hence the coroutine scope addition.

* Use multi-dollar strs to simplify GraphQL queries

These have been available since Kotlin 2.1.

* Remove various redundant casts & conversions

- WebViewScreenContent: loadingState is in the LoadingState.Loading
  branch, no need to cast at all
- Bangumi: username is not modified, make val
- Kavita: token is already a String
- PagerViewerAdapter: insertPageLastPage is already null-checked
- PagerViewerAdapter: use reified filterIsInstance
- ReaderViewModel: chapter IDs are already Longs
- CloudflareInterceptor: webview is smart-cast to non-null here

* Replace deprecated MenuAnchorType

Literally just a typealias for ExposedDropdownMenuAnchorType anyway.

* OptimizeNonSkippingGroups is enabled by default

* Suppress shadowing warning

This is explicitly intentional according to the KDocs.

* Migrate Context Receivers to Context Parameters

Requires changing the compiler arg, but that is part of the migration:

https://blog.jetbrains.com/kotlin/2025/04/update-on-context-parameters

Apparently, the only visible change is that names are required now.
"_" can be used for anonymous context parameters.

* Fix expression bodies with explicit return

Naming conflict resolved by aliasing.

From 2.4/2.5 onward, these will only be allowed with explicit return
types, or have to be turned into a block body. I opted for the latter
since the function is reasonably dense already.

see: https://youtrack.jetbrains.com/issue/KTLC-288

* Suppress deprecation of non-AutoMirrored icons

We use these arrows for navigation in the Upcoming screen.
I strongly doubt the AutoMirrored versions would make sense for our
use-case.

* Explicitly opt-in to new annotation default rules

affects the following annotated value-parameters:
- Preference.SliderPreference.steps (`@IntRange`)
- ReaderViewModel.State.brightnessOverlayValue (`@IntRange`)
- ReadingMode.iconRes (`@DrawableRes`)
- MigrationListScreenModel.Dialog.Progress.progress (`@FloatRange`)

see: https://youtrack.jetbrains.com/issue/KT-73255
see: https://github.com/Kotlin/KEEP/blob/change-defaulting-rule/proposals/annotation-target-in-properties.md

Warning message was the following:

    This annotation is currently applied to the value parameter only, but in the future it will also be applied to field.
    - To opt in to applying to both value parameter and field, add '-Xannotation-default-target=param-property' to your compiler arguments.
    - To keep applying to the value parameter only, use the '@param:' annotation target.
2026-02-05 11:29:21 +06:00
AntsyLich 2e0786f699 Fix reader not saving read duration when changing chapter (#2784) 2025-12-12 18:49:57 +00:00
Mend Renovate 13552c5ffa Update dependency com.pinterest.ktlint:ktlint-cli to v1.8.0 (#2708)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2025-11-23 07:55:54 +00:00
NGB-Was-Taken 2ec67ac0c1 Stop tap zones from triggering when scrolling is stopped by tapping (#2680) 2025-11-14 13:10:19 +06:00
AntsyLich 412815af06 Revert "Fix reader tap zones triggering after scrolling was stopped by the user" (#2670) 2025-11-07 13:07:14 +00:00
AntsyLich aa300cb53e Fix extra padding appearing in reader after user interactions (#2669) 2025-11-07 10:00:59 +00:00
AntsyLich 0acd80dd95 Fix long strip reader not scrolling on consecutive taps (#2650) 2025-11-04 06:46:48 +00:00
AntsyLich 0e0b6d9283 Handle reader cutout setting with Insets to support Android 15+ (#2640) 2025-11-02 16:28:25 +00:00
AntsyLich 5f0c460668 Make reader edge-to-edge (#1908) 2025-11-02 13:41:33 +00:00
Naputt1 ac28b6c80c Fix reader tap zones triggering after scrolling was stopped by the user (#2518)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2025-11-02 07:39:42 +00:00
Radon Rosborough 58b25d697f Improve handling of downloads for chapters with same metadata and optionally for OSes that don't support Unicode in filename (#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>
2025-10-08 05:07:09 +06:00
AntsyLich f0de8f973b Disable reader's 'Keep screen on' setting by default (#2095) 2025-05-11 12:59:21 +00:00
KokaKiwi 6632a12228 Fix reader not updating progress (#2007)
The condition for updating progress is wrong since fefa8f8498
2025-04-18 09:50:42 +06:00
AwkwardPeak7 fea85241af Include source headers when opening failed images from reader (#2004) 2025-04-13 23:05:42 +06:00
AwkwardPeak7 fefa8f8498 Surface image loading error in Reader (#1981) 2025-04-13 20:46:12 +06:00
AwkwardPeak7 f1e2efcb37 Change Page.State to sealed interface (#1988) 2025-04-13 16:32:20 +06:00
AntsyLich 8a21148578 Fix mark existing duplicate read chapters as read option not working in some cases (#1944) 2025-03-31 11:09:35 +06:00
Mend Renovate 556290f2d3 Update kotlin monorepo to v2.1.20 (#1883)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2025-03-31 04:05:38 +00:00
perokhe 132d77aa99 Fix page number not appearing when opening chapter (#1936) 2025-03-29 15:52:11 +06:00
perokhe 941dde341e Fix next chapter button occasionally jumping to the last page of the current chapter (#1920) 2025-03-27 14:25:25 +00:00
AntsyLich 8a3b610775 Seperate mark duplicate read chapters as read behaviors as options (#1870) 2025-03-19 02:27:58 +06:00
AntsyLich 22b5fb58ff Make option to mark duplicate chapter as read apply when reading (#1839) 2025-03-09 06:37:14 +00:00
AntsyLich d53a3828b1 Address some deprecations 2025-01-21 08:55:34 +06:00
sdaqo c283abefb0 Add option to enable incognito mode per extension (#157)
* add per Extension Incognito Mode

* migrate incognito sources when extension is updated

* remove incognito sources when extension is uninstalled

* remove not used variable

* address change requests

address change requests

* Rebase and cleanup code

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2025-01-12 09:38:05 +06:00
AntsyLich c5655e8803 Revert "Revert "Add option to always use SSIV for image decoding""
This reverts commit 1909126921
2024-12-22 02:38:12 +06:00
AntsyLich dcddac5daa Add option to lower the threshold for hardware bitmaps
Closes #1436
Closes #1486
2024-11-20 17:54:29 +06:00
AntsyLich e6d96bd348 Switch to hardware bitmap in reader only if device can handle it
Closes #1460
2024-11-20 17:18:32 +06:00
AntsyLich 1909126921 Revert "Add option to always use SSIV for image decoding"
This reverts commit bb4d9fc81a.
2024-11-17 02:51:48 +06:00
AntsyLich bb4d9fc81a Add option to always use SSIV for image decoding 2024-11-02 21:24:27 +06:00
AntsyLich 06efc3b25c Fix long strip images not loading in some old devices
Fixes #1398
2024-10-31 19:19:32 +06:00
AntsyLich df9fff60da Cleanup Slider usage 2024-10-26 07:15:01 +06:00
AntsyLich 788235feec Reorder reader menu overflow items 2024-10-15 03:57:58 +06:00
AntsyLich bd7b354198 Move archive related code to :core:archive 2024-09-05 16:00:46 +06:00
AntsyLich a45eb5e528 PagerPageHolder: lazy init loading indicator
Co-authored-by: ivan <12537387+ivaniskandar@users.noreply.github.com>
2024-09-02 21:13:52 +06:00
AntsyLich d6252ab770 Address spotless lint errors (#1138)
* Add spotless (with ktlint)

* Run spotlessApply

* screaming case screaming case screaming case

* Update PagerViewerAdapter.kt

* Update ReaderTransitionView.kt
2024-08-19 18:11:39 +06:00
FooIbar 1c47a6b9b3 Add comment about RecyclerView cache size (#1119)
Note for forks: Increasing cache size may cause OOM on API < 26, better
to make it API 26+ only.
2024-08-13 22:03:10 +06:00
Catting c5994e057b Add an "open in browser" button to reader menu (#1110)
* Add an "open in browser" button to reader menu

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

* fixup! Add an "open in browser" button to reader menu

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

---------

Signed-off-by: Catting <5874051+mm12@users.noreply.github.com>
2024-08-12 03:52:47 +06:00
FooIbar a3dfd2efe6 Match extra layout space with scroll distance (#1076)
And increase recycler item view cache size.
2024-08-04 21:45:11 +06:00