Commit Graph

572 Commits

Author SHA1 Message Date
arkon bf524595e2 Show copied to clipboard toast on Samsung devices even if Android 13+
Since OneUI didn't implement the AOSP thing.
2023-11-26 16:36:42 -05:00
arkon 0d1bced122 Replace remaining Android-specific strings
Also renaming the helper composables so it's a bit easier to find/replace everything
in forks.
2023-11-18 19:41:33 -05:00
arkon 46e734fc8e Migrate to multiplatform string resources (#10147)
* Migrate to multiplatform string resources

* Move plurals translations into separate files

* Fix lint check on generated files
2023-11-18 13:54:56 -05:00
arkon 953f5fb025 Lint fixes 2023-11-05 09:14:57 -05:00
arkon 1d144e6767 Restrict line length with ktlint 2023-11-04 23:28:41 -04:00
arkon c5e8c9f01f Revert "Require Android 8+"
This reverts commit 64c50c1283.

Forgot we need to manage app update checks manually...
2023-11-04 19:36:29 -04:00
arkon 64c50c1283 Require Android 8+
Given that the next stable version of Chrome (120) will require Android 8+, it's
inevitable that the WebView functionality will gradually break. As always, newer
OS versions are recommended for better support with evolving Internet technologies.

According to https://apilevels.com/, Android 8+ still covers 93.7% of Android users.
2023-11-04 19:21:46 -04:00
arkon 8644d90bd4 Bump dependencies 2023-11-04 16:11:43 -04:00
AntsyLich 6d538db5f2 Show missing chapter count between two chapters in chapter list (#10096)
* Show missing chapter count between two chapters in chapter list

Closes #8460

* Fix crash

* Lint

* Review changes

* Lint
2023-11-01 22:18:19 -04:00
Seishirou101 0bdd3f79d4 Add info about problematic extensions to debug logs (#10059)
* add ext info to crashlog

* add unofficial to crashlog too

* update to have header include unofficial too

* after ktlintFormat

* Clean up debug info output

---------

Co-authored-by: arkon <eugcheung94@gmail.com>
2023-10-25 22:13:46 -04:00
arkon 22df12a680 Change crash log info to just have actual WebView version 2023-10-17 22:30:55 -04:00
Ivan Iskandar c492efcb31 ExtensionLoader: Set read-only to private extension files (#10007) 2023-10-12 23:04:40 -04:00
arkon 6dab94a937 Move backup restoring functions from BackupManager to BackupRestorer 2023-10-08 16:11:45 -04:00
arkon 56d2464870 Bring back simplified relative timestamp setting
Except now it's just an on/off toggle for relative up to a week.
2023-09-24 17:18:10 -04:00
arkon de92b1351f Add WebView-based user agent string to debug info
Could probably use this when choosing a user agent later on.
2023-09-22 16:42:04 -04:00
arkon b08d604d2a Consistently use absolute date strings everywhere
Closes #9781
2023-09-20 22:49:15 -04:00
arkon 1668be8587 Remove old FastScroller
Not sure if this will return to the download queue screen, you really
shouldn't be downloading a ton of stuff at once anyway?
2023-09-08 22:30:13 -04:00
arkon 39c6bcccd8 Consider local manga as downloaded when filtering in reader
Fixes #9801
2023-08-05 12:01:17 -04:00
arkon 8680accd8e Migrate bottom reader menu to Compose 2023-08-04 18:05:02 -04:00
arkon 7308090288 Migrate reader shortcut menus to Compose
Contents' UIs should probably be improved, but that can happen separately.
2023-08-04 17:34:08 -04:00
stevenyomi e2abf283fe Don't show future timestamps as Recently (#9773) 2023-07-29 14:09:08 -04:00
arkon fe90546821 Remove relative timestamps setting 2023-07-29 10:03:16 -04:00
arkon cdc1c5efa3 Better handle saving animated drawables 2023-07-26 23:26:58 -04:00
arkon cf14831fbe Clean up preference extensions/items a bit 2023-07-19 21:57:22 -04:00
arkon ac306547a0 Bump dependencies 2023-07-18 19:12:04 -04:00
arkon 818471b7e1 Set start date when tracker is bound if any chapters are already read
Closes #6734
2023-07-16 15:01:04 -04:00
arkon 28131ac135 Remove legacy settings sheet
The per-series settings aren't quite functional yet, but they're also
accessible outside of the sheet.
2023-07-15 11:14:18 -04:00
arkon a629db2884 Address some build warnings 2023-07-14 23:08:45 -04:00
arkon 3125d78706 Remove some dead code 2023-07-01 14:54:35 -04:00
Simon dddba7bb6f Filter out non-downloaded chapters in reader when Downloaded Only is enabled (#9568)
* FIxed Issue #5463 - DownloadedOnly Bug

* Changes according to Feedback

* Changes according to Feedback

---------

Co-authored-by: AlphiGhost <71730726+AlphiGhost@users.noreply.github.com>
2023-06-10 12:48:15 -04:00
arkon 9a10656bf0 Migrate reader slider and next/prev buttons to Compose 2023-05-03 17:14:11 -04:00
arkon 3c79777e66 Migrate PageIndicatorTextView to Compose
Probably closes #7798
2023-05-03 16:18:25 -04:00
arkon f5ad95d78a Fix language in source filter list jumping to top incorrectly
Fixes #9068
2023-05-03 15:07:41 -04:00
arkon 0b125b7106 Use Compose for reader transition chapter info (#9373) 2023-04-22 16:33:36 -04:00
Trace 4816b4b53a fix: skip duplicate chapters on download ahead if option to skip duplicates is enabled (#9334)
* fix: skip duplicate chapters on download ahead if option is enabled

* fix: Use a function to filter duplicates
2023-04-15 09:34:02 -04:00
arkon 75460e01c8 Remove crash log notification in favor of sharing directly 2023-04-02 15:30:22 -04:00
arkon 1de4bc9586 Restore POST_NOTIFICATIONS permission check for SDK 33+
Although we don't even target it yet and don't prompt for it but whatever, less work in the future.
2023-03-26 12:56:34 -04:00
arkon 1986042277 Skip POST_NOTIFICATIONS permission check for now
Fixes #9265
2023-03-26 12:34:32 -04:00
Two-Ai 35d381144d Cleanup Preference.asHotFlow() (#9257)
* Drop duplicate initial call in Preference.asHotFlow

Preference.changes() always starts by returning the current value of
the preference, so asHotFlow calls block twice on the initial value.

Possible breaking change: As implemented, asHotFlow ran block(get())
before returning the flow. After this change, the first call to block
will run within the flow collection. This might cause concurrency
issues if the flow collection is late to execute.

* Inline Preference.asHotFlow

The Preference.changes().onEach().launchIn() pattern is used widely,
so the asHotFlow extension method is redundant.
2023-03-26 11:52:54 -04:00
arkon cb4699a5bb Bump dependencies 2023-03-22 22:58:42 -04:00
arkon 3cca460282 Misc cleanup 2023-03-19 22:38:14 -04:00
arkon d703fb7946 Split up ContextExtensions into smaller files 2023-03-19 18:27:30 -04:00
arkon 859601a46e Clean up WorkManager usages a bit 2023-03-19 18:19:40 -04:00
arkon 7d8a865cac Simplify some of the notification builders 2023-03-19 16:24:37 -04:00
arkon ed32a511e7 Bump dependencies 2023-03-08 22:52:19 -05:00
arkon f96f0c5889 Move some preferences into domain module 2023-03-05 12:11:47 -05:00
Andreas f27dc19b37 Move Local Source to separate module (#9152)
* Move Local Source to separate module

* Review changes
2023-02-26 16:16:49 -05:00
Two-Ai fa61c8fe6f Convert downloadChapter to suspend function (#9127)
1:1 translation from the RxJava implementation, should match the
previous behavior.

Dropped the return value from functions of the form
```
fun foo(t: T, ...): Observable<T>
```
where the Observable produced the original argument `t`.
The caller already has the result if necessary.

While this conversion is not flow-based overall, some sections use
flows to use the flatMapMerge and retryWhen operators.

Removed RetryWithDelay as it was only used here.

Inlined fetchAllImageUrlsFromPageList instead of converting it to a
suspending equivalent. fetchAllImageUrlsFromPageList is no longer
used in the app, but was not removed as it is part of source-api.
(However, it does not seem to be used exposed in extensions-lib or
used in tachiyomi-extensions.)

runBlocking is used as a temporary stop-gap.
2023-02-21 23:02:10 -05:00
arkon ee818bc7c5 Move chapter utils to domain module 2023-02-18 15:24:04 -05:00
arkon b49280e347 Remove unused Rx/Coroutines converters 2023-02-18 10:16:05 -05:00