arkon
8857b7e0c1
Use custom threshold for what's consider a low RAM device
2023-11-19 15:10:26 -05:00
arkon
4a7c20f5a0
Add "Rotate wide pages to fit" for webtoon reader too
...
Closes #1977
2023-11-19 15:03:54 -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
336221a972
Use immutable collections in more places
2023-11-11 22:44:12 -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
Ota
f30ab56fd0
New alphabetical chapter sort ( #10073 )
...
* added alphabetical chapter sorting
* Deleted sort_by_alphabet and re-utilized action_sort_alpha
* Accidentally deleted wrong string. Now solved
* Accidentally deleted wrong string. Now solved
Deleted sort_by_source instead of sort_by_alphabet in strings.xml.
Now reverted.
* Alphabetical sorting now uses Collator
* Clean up repeated Collator instances
---------
Co-authored-by: arkon <eugcheung94@gmail.com>
2023-11-04 15:47:32 -04:00
arkon
7cf2ce2994
Handle Brotli-compressed responses
2023-10-31 18:03:07 -04:00
arkon
cb8ea5eab0
Add basic storage usage info to "Data and storage" settings screen
2023-10-29 18:18:56 -04:00
arkon
ce7bf396eb
Don't include "app state" preferences in backups
2023-10-29 12:24:02 -04:00
arkon
092d930175
Update default user agent string
2023-10-24 21:58:53 -04:00
arkon
22df12a680
Change crash log info to just have actual WebView version
2023-10-17 22:30:55 -04:00
Caleb Morris
447bcb28ef
[dev QoL] Added AndroidStudio previews for [presentation.history] namespace ( #10012 )
...
* Added display preview for HistoryDialogs
* Added preview with provider for each branch for HistoryItem
* Added previews for HistoryScreen
Created in-memory preferences construct for when its needed at top-level injection
* Fixed ktlint violations
2023-10-14 22:23:11 -04:00
arkon
94cba9324c
Remove beta webtoon viewer split page
...
This had a bunch of issues around split pages not showing up properly so things
end up appearing to be missing while reading.
It'd be more worthwhile redoing the reader viewers than trying to get this to work
properly. It'd be better to just enable the split pages on download instead.
Closes #8433
2023-10-08 16:39:45 -04:00
arkon
0f42b9f154
Add source preferences to backups
...
Closes #1857
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-10-08 16:02:03 -04:00
arkon
730f3a6e52
Exclude tracker credentials in backups
2023-10-08 11:07:42 -04:00
arkon
72024aa44a
Add app settings to backups
...
This should be compatible with Aniyomi's implementation.
Related to #1857
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-10-08 10:41:20 -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
Soitora
f5e0cee36c
Change website URLs to reflect changes ( #9916 )
...
Change website URLs
2023-09-10 18:11:00 -04:00
arkon
26c5d761da
Add more replacement suspend functions for source APIs
...
These are basically 1-to-1 replacements for the existing RxJava APIs.
This will make the initial migration off of RxJava simpler. We'll
revisit the actual call flows in followup versions of the API.
2023-09-08 22:58:46 -04:00
arkon
d29b7c4e57
Switch to different ktlint plugin
...
Should be better at incremental builds.
To format, run `./gradlew ktlintFormat`.
2023-09-01 23:02:18 -04:00
arkon
d1c956401c
Add documentation for HttpException
...
Corresponds with https://github.com/tachiyomiorg/extensions-lib/pull/12
2023-08-18 22:28:14 -04:00
Alessandro Jean
9b6567f5e4
Add support to kotlin.time APIs in the rate limit interceptor ( #9797 )
...
* Add support to kotlin.time APIs in the rate limit interceptor.
* Add a missing line break in the doc.
* Move the specific host to the same file.
* Add kotlin.time rule to Proguard and remove specific host rule.
* Mark the old version as deprecated and address review.
* Remove unused import.
* Remove yet another unused import.
2023-08-04 17:11:43 -04:00
arkon
6d69caf59e
Show help banner when Cloudflare captcha page is shown in WebView
2023-07-28 23:09:52 -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
5467104b95
Fix window undimming when reader custom filter settings are open
2023-07-15 13:23:25 -04:00
arkon
e0733c1a4c
Clean up NetworkHelper
2023-07-15 13:05:25 -04:00
arkon
22e8050fff
Handle Cloudflare in default network client and deprecate cloudflareClient
2023-07-15 09:34:20 -04:00
arkon
a629db2884
Address some build warnings
2023-07-14 23:08:45 -04:00
arkon
87bdee5990
Move SettingsItems composables to presentation-core
2023-07-10 17:25:52 -04:00
arkon
0ac5f3b93c
Accept third party cookies in WebView instances
...
May help with Cloudflare.
2023-07-01 09:40:58 -04:00
arkon
e2d6269a38
Bump default user agent string
2023-06-23 22:23:56 -04:00
arkon
e323f3c25a
Don't update last page read/read state of chapter if Incognito Mode is enabled
...
Actually closes #7228 , which I forgot was about history more than trackers.
2023-06-13 19:30:02 -04:00
arkon
431f8772f8
Address minor build warnings
2023-05-31 22:47:31 -04:00
arkon
8f4bc71cf7
Remove confirm exit option
...
Redundant with predictive back, but also just sort of pointless since it doesn't help
with any sort of app state retention.
2023-05-31 18:51:01 -04:00
arkon
46efd4c134
Fix some crashes
2023-05-27 09:53:01 -04:00
arkon
efdff9a21a
Update minimum WebView version
2023-05-24 17:55:27 -04:00
arkon
1824adb2ed
Update default user agent string
2023-05-24 17:54:16 -04:00
Ivan Iskandar
2c6e025063
Add more info to debug screen ( #9357 )
...
* App version
* WebView version
* ART profile status
* Device model
* Android version
2023-04-18 22:59:27 -04:00
arkon
1814b3b22c
Don't unnecessarily wrap IOExceptions in UncaughtExceptionInterceptor
2023-03-28 18:16:26 -04:00
arkon
953720472f
Add "Rotate wide pages to fit" setting for paged reader
...
Originally authored in #7983
Co-authored-by: timothyng-164 <timothyng-164@users.noreply.github.com>
2023-03-24 22:49:35 -04:00
arkon
c6e5f8abd9
Bump default user agent string and minimum WebView version
2023-03-05 10:17:22 -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
arkon
26d422b0ae
Avoid uncaught exceptions from OkHttp interceptors crashing entire app
2023-02-25 15:13:59 -05:00
arkon
fd7c993b0b
Move CheckboxState to core module
2023-02-21 22:52:36 -05:00
arkon
93523ef50b
Remove dependency injection from core module and data module from presentation-widget module
...
Includes side effects:
- No longer need to restart app for user agent string change to take effect
- parseAs extension function requires a Json instance in the calling context, which doesn't necessarily need to be the default one provided by Injekt
2023-02-20 19:02:38 -05:00
arkon
b49280e347
Remove unused Rx/Coroutines converters
2023-02-18 10:16:05 -05:00
stevenyomi
0d8f1c8560
Tweak Response.parseAs() to utilize intrinsics ( #9047 )
2023-02-07 22:10:28 -05:00
stevenyomi
7559c133c0
Call.await(): copy exception message when preserving error stack ( #9013 )
2023-02-01 11:09:35 -05:00
arkon
1730dd6af1
Move more things around
2023-01-27 22:31:12 -05:00
Andreas
2501fef9e4
Split UpdatesGridGlanceWidget into smaller bits ( #8991 )
...
- Renamed Composables
- Moved Constants to core module
2023-01-27 14:49:57 -05:00
Andreas
12e41b6e6f
Move Glance Widget to seperate module ( #8989 )
...
Move Widget to seperate module
- Create a core module for presentation. Widget and App will share some resources and hopefully composables
2023-01-26 17:53:24 -05:00
stevenyomi
448702e5be
OkHttp Call: split await() and awaitSuccess() ( #8980 )
2023-01-24 22:34:31 -05:00
Andreas
aee785a8bb
Move more implementation to data module ( #8971 )
2023-01-22 11:44:39 -05:00
Andreas
2b5d9fd76b
Move shared configuration to subprojects in root Gradle file ( #8951 )
...
* Move shared configuration to subprojects in root Gradle file
* Missed but not forgotten
* Review changes
2023-01-20 23:04:22 -05:00
Andreas
c31e75f02f
Create plugin for linting ( #8942 )
2023-01-18 22:33:56 -05:00
arkon
a2ee4e63ae
Minor cleanup
2023-01-12 22:53:28 -05:00
arkon
4cd01428ed
Only show MIUI extension warning on MIUI >= 13
...
Related to #8834
2023-01-08 15:04:06 -05:00
arkon
addd6bffbd
Bump default user agent string and minimum WebView version
2023-01-07 11:51:36 -05:00
arkon
db3c98fe72
Update OkHttp
2022-12-25 00:24:53 -05:00
arkon
2a2c6cee5f
Allow zooming in WebView
...
Note that this does not force-enable zooming on pages with set viewports (which typically implies proper mobile scaling).
Closes #8588
2022-11-21 18:39:16 -05:00
arkon
d12ea86b55
Add shecan DoH provider
...
Closes #8557
2022-11-18 22:28:08 -05:00
arkon
21bc0f1952
Don't use default Lenovo "browser" handler
2022-11-09 19:43:52 -05:00
arkon
65387d0089
Bump default user agent string
2022-11-04 09:38:49 -04:00
stevenyomi
073e9f94ff
Reorder parameters of JSON parsing method ( #8321 )
2022-10-28 22:44:31 -04:00
arkon
fbda243c0d
Avoid crashing during eager WebView init
2022-10-21 16:57:13 -04:00
stevenyomi
2d19729869
Clean up OkHttp methods and parse from Okio directly ( #8238 )
2022-10-18 12:09:23 -04:00
Ivan Iskandar
890f1a3c7b
Full Compose settings ( #8201 )
...
* Uses Voyager for navigation.
* Replaces every screen inside settings except category editor screen since it's
called from several places.
2022-10-15 11:38:01 -04:00
arkon
26a42ba9c0
Upgrade to Kotlin 1.7.20
...
Also run formatter and address some deprecation warnings.
2022-10-11 22:40:08 -04:00
arkon
7be6863910
Add JavaScriptEngine abstraction to extensions-lib ( #8155 )
...
This allows us to swap out the implementation in the future and on different platforms
without major changes to the extensions themselves.
2022-10-08 09:45:06 -04:00
stevenyomi
8b9a06e298
Requests: add GET(HttpUrl)
overload ( #8107 )
...
Requests: add GET(HttpUrl) overload
2022-09-28 17:35:58 -04:00
AntsyLich
e2ce3f68bf
Increase timeout duration of WebViewInterceptors ( #8099 )
2022-09-27 17:43:46 -04:00
stevenyomi
f4c684b4b8
Remove cache control on already cacheless image request ( #8085 )
2022-09-26 17:13:03 -04:00
AntsyLich
a35f947892
Cleanup webview interceptors ( #8067 )
...
* Cleanup webview interceptors
* Review changes + Improvement
* Review Changes 2
2022-09-25 13:09:40 -04:00
arkon
f0af3858e8
Bump minimum WebView version and default user agent string
2022-09-25 10:55:10 -04:00
Andreas
b5dca2eb09
Move chapter preferences from PreferencesHelper to LibraryPrefrences ( #8061 )
2022-09-24 10:14:16 -04:00
Andreas
5cdcc1679f
Split backup preferences from PreferencesHelper ( #8051 )
2022-09-22 08:57:42 -04:00
Andreas
e82963c9ef
Split download preferences from PreferencesHelper ( #8048 )
2022-09-21 17:45:07 -04:00
arkon
2b089648a3
Remove redundant preference keys
2022-09-20 00:13:33 -04:00
arkon
0225711f6f
Clean up base classes
...
Should be able to throw away some of the search controller stuff after Global Search is migrated
2022-09-18 17:22:54 -04:00
arkon
7ec822503a
Catch error properly when app update check fails ( fixes #8019 )
2022-09-18 16:24:26 -04:00
Andreas
b668364afb
Split security preferences from PrefrencesHelper ( #8030 )
2022-09-18 13:07:48 -04:00
Andreas
0086743a53
Use 1.x preference abstraction ( #8020 )
...
* Use 1.x preference abstraction
- Uses SharedPreferences compared to 1.x impl which uses DataStore but it breaks all settings screens currently
- Move PreferencesHelper to new PreferenceStore
- PreferencesHelper should be split into smaller preference stores and be in core or domain
- Remove flow preferences as new PreferenceStore handles changes for us
Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
* Fix PreferenceMutableState not updating
* Fix changes not emitting on first subscription
Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
2022-09-17 11:48:24 -04:00
Andreas
86fe850794
Extract source api from app module ( #8014 )
...
* Extract source api from app module
* Extract source online api from app module
2022-09-15 18:12:27 -04:00