AntsyLich
cb06898430
Fix issues when updating extensions
2024-01-22 02:27:45 +06:00
AntsyLich
5067160132
Add a temporary icon
2024-01-16 01:17:18 +06:00
AntsyLich
dfb3091e38
Make the app Android 8+
2024-01-16 01:07:32 +06:00
arkon
02e50411de
Minor extension repo enhancements
...
- Shortcut to settings from extensions tab
- Don't show error toast anymore if nothing's loaded
- Ability to copy extension repo URL to clipboard
2024-01-11 18:25:13 -05:00
arkon
3d178737b1
Move extension repos interactors to proper package
...
Also retain ordering of added repos.
2024-01-08 17:15:48 -05:00
arkon
bf737cf95c
Remove built-in official extension repo support
2024-01-07 23:06:17 -05:00
arkon
4b8fa059d5
Fix external repo info banner in ExtensionDetailsScreen
2024-01-07 16:35:25 -05:00
arkon
6510a9617a
Allow permanently trusting unofficial extensions by version code + signature
...
Closes #10290
2024-01-07 13:35:44 -05:00
arkon
9c899e97a9
Clean up external repos
...
- Accept full URL as input instead, which allows for non-GitHub
- Remove automatic CDN fallback in favor of adding that as an external repo if needed
2024-01-05 23:13:16 -05:00
arkon
556f5a42a7
Fix lint error
2024-01-05 17:49:19 -05:00
arkon
c17ada2c98
Support external repos
...
Largely taken from SY.
Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com >
2024-01-05 17:28:08 -05:00
arkon
e0a0942015
Remove custom extension readme/changelog URLs
...
These were barely used/maintained, so just killing them.
Changelog menu item still exists to take you to the relevant git history.
2024-01-05 17:07:49 -05:00
arkon
493da5c3f4
Force users to retrust unknown extensions on cold starts
2024-01-05 08:53:45 -05:00
arkon
8b65fd5751
Minor exception message cleanup
2023-12-28 16:33:54 -05:00
arkon
80d6d412f3
Avoid crashing if loading non-read-only private extension
...
Fixes #10252
2023-12-24 22:53:35 -05:00
Ivan Iskandar
387159b5af
PackageInstallerInstaller: Fix intent used for install session ( #10240 )
...
Use explicit intent as it's a requirement when targeting v34+
2023-12-17 09:56:33 -05:00
arkon
ab9a26f6bd
Migrate to some newer date/time APIs
2023-12-08 23:11:53 -05:00
arkon
bcc42dd259
Exclude some more app state preferences from backups
2023-11-21 22:11:44 -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
Ivan Iskandar
ea99d77fda
ExtensionLoader: Fix incorrect ext file deletion ( #10026 )
...
Ref c492efcb31
2023-10-15 22:05:35 -04:00
Ivan Iskandar
c492efcb31
ExtensionLoader: Set read-only to private extension files ( #10007 )
2023-10-12 23:04:40 -04:00
arkon
e47f4cc177
Specify broadcast receiver export flags
...
Really only useful once we target Android 14, but doesn't hurt to do it now.
2023-10-07 10:03:45 -04:00
Ivan Iskandar
627f07408e
Add private extension install method ( #9710 )
...
* Add private extension install method
Private extensions are put inside private data directory of the running app, so
this kind of extensions can only be used by the running app and not shared with
other apps.
One limitation of private extension is the lack of deeplink handlers (if there's
any) since the extension APK is not installed to the system.
When both kinds of extensions are installed with a same package name, shared
extension (the one installed to the system) will be used unless the version
codes are different. In that case the one with higher version code will be used.
* update
2023-08-05 12:15:52 -04:00
arkon
7798186c32
Drop support for extension-lib 1.3
2023-08-04 10:35:57 -04:00
arkon
10b0ef9b6d
Dismiss extension update notification if all updates installed
2023-08-02 18:00:06 -04:00
arkon
0f21d16263
Minor cleanup
2023-07-30 10:08:51 -04:00
arkon
abae9bf37d
Minor cleanup
2023-07-23 20:03:37 -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
30f845139d
Use consistent extension icon URLs
...
Better caching between versions.
2023-07-16 15:44:36 -04:00
arkon
a629db2884
Address some build warnings
2023-07-14 23:08:45 -04:00
arkon
b79ef5dc79
Address some deprecation warnings
2023-06-30 22:14:17 -04:00
arkon
ee95c1439f
Blur manga info header image
...
Similar to J2K. This only applies on Android 12+.
2023-06-13 20:36:33 -04:00
Two-Ai
0ac38297f4
Replace RxJava in extension installer ( #9556 )
...
* Replace RxJava in extension installer
Replace common downloadsRelay with Map of individual StateFlows
* Drop RxRelay dependency
* Simplify updateAllExtensions
* Simplify addDownloadState/removeDownloadState
Use immutable Map functions instead of converting to MutableMap
2023-05-30 10:25:20 -04:00
Andreas
f63573f25f
Remove SourceData and use StubSource directly for database ( #9429 )
2023-05-03 10:33:05 -04:00
arkon
ccd4143d9d
extension-lib 1.5: Add AppInfo#getSupportedImageMimeTypes()
2023-04-28 11:36:17 -04:00
arkon
67b4e53a58
Minor cleanup
2023-04-23 10:11:26 -04:00
arkon
3cca460282
Misc cleanup
2023-03-19 22:38:14 -04:00
arkon
7d8a865cac
Simplify some of the notification builders
2023-03-19 16:24:37 -04: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
3d7c136320
Avoid crash when loading invalid extension package
2023-02-19 16:44:58 -05:00
arkon
d400ac2a49
Remove unnecessary usages of NotificationManagerCompat to actually create notifications
2023-02-18 17:10:45 -05:00
arkon
2970eca9e4
Remove background extensions updates check
...
Same reasoning as removing app update check. It gets kicked off in the foreground now too.
2023-02-12 23:07:11 -05:00
arkon
ab6dfe9e25
Bump dependencies
...
Fixes #8168 , I think.
2023-02-08 22:53:42 -05:00
Two-Ai
aca65f13bb
Misc Service cleanup ( #9005 )
...
* Simplify DownloadService wake lock handling
_isRunning is only modified in onCreate/onDestroy, so the listener
job is redundant.
* Drop superclass calls to Service.onCreate/onDestroy
From https://developer.android.com/guide/components/services
> Note: Unlike the activity lifecycle callback methods, you are not
> required to call the superclass implementation of these callback
> methods.
2023-01-30 17:25:54 -05:00