arkon
80d6d412f3
Avoid crashing if loading non-read-only private extension
...
Fixes #10252
2023-12-24 22:53:35 -05:00
arkon
6887d98f15
Minor tracking cleanups
2023-12-24 22:25:22 -05:00
arkon
6d74a86711
Some domain Track model migrations
2023-12-24 18:30:24 -05:00
arkon
5908bd1930
Move backup models to domain module
2023-12-24 18:01:58 -05:00
arkon
1a559124eb
Split up BackupCreator into smaller classes
2023-12-24 16:56:16 -05:00
arkon
54ba1d719e
Don't include settings as defaults when manually creating backup
2023-12-24 16:45:07 -05:00
arkon
93cbeca5c0
Highlight restore backup setting when navigating from onboarding step
2023-12-24 16:35:18 -05:00
arkon
19f0175a56
Don't use localized numbers for downloaded image filenames
...
Probably fixes #10258
2023-12-22 19:13:06 -05:00
arkon
bf3899d04a
Whoops, accidentally made the create backup button unusable before
2023-12-22 09:23:00 -05:00
arkon
9f90ee358b
Initial move of restore backup into a separate screen
2023-12-21 22:47:23 -05:00
arkon
565317d99c
Show MIUI warning more prominently in CreateBackupScreen
2023-12-21 22:41:48 -05:00
arkon
83a67feb48
Foundations for partial restores
...
Related to #3136
2023-12-21 22:16:42 -05:00
arkon
c10cd6c808
Prevent backing out from initial onboarding
2023-12-17 18:30:43 -05:00
Ivan Iskandar
f9b57800b1
DownloadJob: Network check changes ( #10242 )
...
Mostly pulled from WorkManager
2023-12-17 09:57:55 -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
Ivan Iskandar
09531e7f5a
MangaScreenModel: Start downloads in IO dispatcher ( #10241 )
2023-12-17 09:55:54 -05:00
arkon
ff3bc66055
Migrate BuildConfig to Gradle Build Files
2023-12-16 15:57:45 -05:00
Ivan Iskandar
13b3bec8ad
Target Android 14 (SDK 34) and add permission onboarding step
...
(cherry picked from commit 9e0068715f3ba3d1627c4b7539b90fb782f8122f)
2023-12-16 15:51:56 -05:00
arkon
8aaf8df708
Set foreground service type for ExtensionInstallService
2023-12-16 12:11:19 -05:00
arkon
db3ddf07ee
Set foreground service types for remaining jobs
2023-12-16 12:08:08 -05:00
arkon
cd16522805
Split restoring logic into smaller classes
2023-12-16 11:43:18 -05:00
arkon
5fec881387
Clean up history restoring
2023-12-16 11:15:09 -05:00
arkon
3ac68e810d
Workaround for broken nav bar icon colors
2023-12-16 11:15:09 -05:00
Ivan Iskandar
65e1e2cf4f
Refactor onboarding steps
...
(cherry picked from commit 2ca3ab077192a7e5e2e7a5fb00c303a5a633372e)
2023-12-16 10:59:14 -05:00
arkon
e36a2c68f1
Avoid crashing in SourcePreferencesFragment if source can't be loaded
...
Should probably wait for sources to definitely be loaded first, but that's
sort of a bigger change and needs to be lifecycle-aware.
2023-12-16 10:16:05 -05:00
arkon
ad3d915fc5
Skip updating unchanged chapters and tracks when restoring backup
2023-12-15 23:11:14 -05:00
arkon
36f400d542
Fix download indexing with changed storage locations
...
Fixes #10218
2023-12-15 18:44:37 -05:00
arkon
dd1a19745a
Remove redundant job setup calls in migrations
...
We always set them up earlier in the migrations anyway.
2023-12-15 18:43:48 -05:00
arkon
58daedc89e
Clean up manga restoring logic
...
Some behavior changes:
- It prioritizes new entries, then anything more recently updated
- It copies the more recently updated entry's metadata (description, thumbnail, etc.)
2023-12-14 23:26:02 -05:00
arkon
d20a8fcf13
Proper check for when to navigate to tracker settings from tracking action
2023-12-14 19:52:49 -05:00
arkon
e56bf82c31
Clean up some text alpha modifiers
2023-12-13 22:21:55 -05:00
arkon
0f9895eec8
Clean up category restoring logic
2023-12-11 22:48:42 -05:00
arkon
f776c36e70
Add ability to open available extension websites in WebView
...
Closes #8628
2023-12-11 22:24:33 -05:00
arkon
1ef01b53f2
Avoid starting restore job if already running
...
We already check in the settings screen where it's triggered, but who knows.
Also addressing some errors for method calls that require SDK 26+ (but don't
fail the build, somehow?).
2023-12-11 22:02:22 -05:00
arkon
720169dce3
Remove action to delete saved image in notification
...
Can just open it and delete from whatever gallery app the user has which has way
more functionality.
Closes #8327
2023-12-10 18:37:45 -05:00
arkon
0d09039e5f
Fix settings screen crashing when saving state
2023-12-10 17:29:02 -05:00
arkon
cc56fde9fe
Onboarding screen tweaks
...
- Opposite transition when going back a step
- Don't allow skipping (I don't want to deal with an unset storage location in other places)
2023-12-10 17:28:34 -05:00
arkon
3a0b3de175
Always show trackers action in MangaScreen
...
Goes to tracker settings to log in if none are set up.
2023-12-10 11:58:20 -05:00
arkon
47e544b710
Fix next local chapter not being indicated as downloaded in transition
2023-12-10 10:51:50 -05:00
arkon
f7c5b42435
More onboarding screen additions 2: Electric Boogaloo
2023-12-09 18:20:58 -05:00
arkon
e3404cd3d3
More onboarding screen additions
2023-12-09 17:49:35 -05:00
arkon
8b57169e92
Add basic onboarding screen ( #10199 )
2023-12-09 16:50:02 -05:00
arkon
ab9a26f6bd
Migrate to some newer date/time APIs
2023-12-08 23:11:53 -05:00
Ivan Iskandar
8779b263ab
Downloader: Don't queue chapters on GlobalScope ( #10217 )
...
This fixes auto-download on library update not working on certain cases.
2023-12-07 22:17:01 -05:00
arkon
734cb0be6e
Show average scores in tracker search results
...
Closes #8280
2023-12-03 16:52:07 -05:00
arkon
1f259f9298
Fix sharing saved pages from notification
...
Related to #8327
Deleting doesn't seem to do anything still, but at least doesn't throw an exception.
Also removed behavior of dismissing notification after sharing/deleting pages/backups
in case you want to do something again afterwards. Users can manually dismiss the
notification whenever they want.
2023-12-03 16:31:10 -05:00
arkon
427fbfdf5e
Minor cleanup
2023-12-03 15:56:51 -05:00
arkon
0c860c0fe9
Try to fall back to showing URI for storage location if concrete file path isn't available
...
Closes #9977
2023-12-03 15:56:45 -05:00
arkon
5b2a099203
Migrate ReaderColorFilterView to Compose
2023-12-03 15:34:52 -05:00
arkon
ccadfc8fe5
Force recreate download index cache on upgrade
...
Fixes #10187
2023-12-03 14:58:08 -05:00
arkon
3aead3a2a9
Clean up startDownloadNow function a bit
...
Fixes #9330 , I think. If it was even still an issue.
2023-12-03 14:26:44 -05:00
arkon
6a48fed170
Remove storage permission check when manually creating backups
...
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-12-03 14:25:09 -05:00
arkon
e5263d0345
Handle content URIs for covers
...
Co-authored-by: jmir1 <jmir1@users.noreply.github.com>
2023-12-02 14:44:41 -05:00
Ivan Iskandar
24e1b4034e
Move workers to foreground service context a bit more safely ( #10202 )
...
The system will crash the app if the worker that calls setForeground() finished
before the service runner be able to call Service.startForeground(). This edge
case is not handled by WorkManager and there is no way to check if the required
calls are done.
So here we suspend the worker by an arbitrary duration assuming the transition
to foreground service is done by then.
2023-12-02 11:46:59 -05:00
arkon
87be54aa4a
Revert overridePendingTransition refactorings
2023-12-02 11:24:13 -05:00
arkon
82d9ae31bd
Set foreground service types for library update jobs
2023-12-02 11:20:48 -05:00
Ivan Iskandar
e5a22eafe7
Define storage permission in manifest ( #10200 )
...
Mainly for migration process and to avoid breakage on users who doesn't
change their granular storage prefs.
2023-12-02 10:35:03 -05:00
arkon
7a52afd223
Bump dependencies
2023-12-01 22:29:51 -05:00
arkon
296201d6b7
Replace ReaderOrientation icon resources
2023-11-30 22:23:30 -05:00
arkon
162b639705
Remove unused resources
2023-11-30 22:19:38 -05:00
arkon
5dda32bb81
Bump dependencies
2023-11-29 16:55:36 -05:00
Ivan Iskandar
8ce8b60092
Migrate downloader service to WorkManager ( #10190 )
2023-11-29 16:34:07 -05:00
Ivan Iskandar
8ff2c01bf2
HomeScreen: Add static key for TabNavigator ( #10191 )
...
Fixes incorrect tab selection after process death
2023-11-29 10:43:21 -05:00
arkon
e22eebfd02
Target SDK 30
...
Need to convert some services into WorkManager jobs before going to 31 and higher.
2023-11-28 23:02:33 -05:00
arkon
4fcdde4913
Remove storage permissions
...
Requires adjusting some file reading to first copy to a temporary file
in cache that we have permissions to read from. This is only applicable for things
like ZIP files where we need an actual File rather than just some Android content
URI shenanigans.
2023-11-28 22:50:30 -05:00
arkon
e41668862f
Ignore casing when looking for some files/folders
2023-11-28 08:59:34 -05:00
arkon
a74a689c90
Update UniFile
...
Which has more correct nullability for some methods and case insensitivity for listFiles where possible.
2023-11-27 22:21:40 -05:00
arkon
d85a76484c
Revert "Show copied to clipboard toast on Samsung devices even if Android 13+"
...
This reverts commit bf524595e2
.
Apparently it shows a toast, but I don't see it?
2023-11-27 09:06:43 -05:00
arkon
9ce0bc6b5f
Adjust stats overview icons
...
Closes #9865
Still sort of weird, but the icons are now always aligned.
2023-11-26 18:45:16 -05:00
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
27c4db752c
Actually use configured storage location for local source
...
Fixes #10178
2023-11-26 16:24:37 -05:00
arkon
ca54984344
Use UniFile for local source file handling
2023-11-26 16:04:37 -05:00
arkon
46aeab9a7a
Add extensions for handling UniFile name/file extensions
2023-11-26 16:04:37 -05:00
arkon
f365b53a0f
Move automatic backups from /backup/automatic to /autobackup
...
Removes the need to try to create child folders, which simplifies things.
2023-11-26 16:04:25 -05:00
Saud-97
d4dfa9a2c2
Anilist decode item description HTML ( #10181 )
2023-11-26 10:16:06 -05:00
arkon
cf9e60fd92
Use unified storage location for local source
2023-11-25 17:06:15 -05:00
arkon
21ae04d25d
Minor download location cleanup
2023-11-25 16:51:32 -05:00
AntsyLich
ba10093ddc
Library update notification changes ( #10175 )
...
Don't round up notification percentage. Why show 100% when stuff is still updating.
Show same notification when hide notification content is enabled. Just exclude manga titles.
2023-11-25 13:32:54 -05:00
arkon
a5c9469698
Avoid crashing if storage directory can't be read
...
e.g. when first launching and there's no storage permissions yet.
2023-11-25 12:40:09 -05:00
arkon
bcc42dd259
Exclude some more app state preferences from backups
2023-11-21 22:11:44 -05:00
Ivan Iskandar
d59cb9c1e3
Migrate to M3 pull-to-refresh ( #10164 )
2023-11-21 22:09:41 -05:00
AntsyLich
3006604922
MangaScreen: Fix close in action mode exists from screen ( #10160 )
...
* MangaScreen: Fix close in action mode exists from screen
* L
2023-11-21 22:08:41 -05:00
arkon
1fbf8ca079
Use unified storage location for automatic backups
2023-11-19 16:08:24 -05:00
arkon
695813ef7d
Add unified storage location setting
...
Currently only using it as a replacement for the downloads location.
2023-11-19 16:04:28 -05:00
arkon
e3b70ca08d
Remove max automatic backups setting
...
We just always create up to 4 now to simplify it, given the addition of syncing
is going to make this section pretty busy.
2023-11-19 15:18:15 -05:00
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
29368fc953
Fix searchbar style
...
Also address some Compose lint warnings.
2023-11-19 14:49:40 -05:00
arkon
0696e4bce0
Slightly shrink continue reading button size
2023-11-19 11:59:40 -05:00
Ivan Iskandar
255ed50685
Migrate XML themes to Compose ( #10152 )
2023-11-19 11:25:39 -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
Ivan Iskandar
69aa13bc56
Remove animateItemPlacement modifier usage ( #10146 )
2023-11-18 08:39:08 -05:00
arkon
2c032ff70d
Address more Compose lint warnings
2023-11-17 09:46:13 -05:00
arkon
0af4703b78
Migrate to standard M3 TabIndicator
2023-11-16 09:16:24 -05:00
Ivan Iskandar
9ec0f73e87
Migrate deprecated progress indicator components ( #10142 )
2023-11-16 09:01:45 -05:00
Ivan Iskandar
f9fb034330
Migrate deprecated tooltip components ( #10141 )
2023-11-16 09:01:12 -05:00
arkon
6eb5a25ea1
Bump dependencies
2023-11-15 22:30:10 -05:00
arkon
336221a972
Use immutable collections in more places
2023-11-11 22:44:12 -05:00
arkon
3c3b09209c
Use immutable collections in presentation-widget module
2023-11-11 18:31:27 -05:00
arkon
4a6571d310
Minor cleanup
2023-11-11 18:25:27 -05:00
arkon
cb67f1de52
Add Compose lint checks
...
Still need to address most of them though.
2023-11-11 18:13:44 -05:00
arkon
00b2853d3d
Convert create backup dialog to a screen
...
Allows us more flexibility in adding more options/explanations in the future.
2023-11-05 17:22:08 -05:00
AntsyLich
d7442d771b
ScanlatorFilterDialog: Fix crash when no scanlator ( #10111 )
2023-11-05 15:20:54 -05:00
arkon
3a8aa3e8cd
Group mode dialogs together in bottom reader bar
2023-11-05 11:52:05 -05:00
arkon
9e67abcc8a
Add separate default/apply buttons to reading mode/orientation selection dialogs
...
Related to #3453
2023-11-05 11:36:03 -05:00
AntsyLich
d0bcd30909
Trim Chapter
scanlator value ( #10108 )
2023-11-05 11:06:20 -05:00
AntsyLich
b97aa23548
Implement scanlator filter ( #8803 )
...
* Implement scanlator filter
* Visual improvement to scanlator filter dialog
* Review changes + Bug fixes
Backup not containing filtered chapters and similar issue fix
* Review Changes + Fix SQL query
* Lint mamma mia
2023-11-05 10:34:35 -05:00
arkon
e6ca54fd04
Replace custom preview annotation
2023-11-05 10:34:19 -05:00
arkon
4502902fb0
Clean up reading mode / orientation enum classes
...
Categorizing the reading modes so we can implement a better
selection UI.
2023-11-05 10:01:19 -05:00
Ivan Iskandar
5f34539525
MangaScreen: Adjust "missing chapter count" item list styling ( #10105 )
...
Text style to labelMedium and set secondary alpha to the whole row
2023-11-05 09:15:51 -05:00
arkon
953f5fb025
Lint fixes
2023-11-05 09:14:57 -05:00
arkon
4f3a0b3523
Postpone Android 8 requirement
2023-11-05 09:08:17 -05:00
arkon
1d144e6767
Restrict line length with ktlint
2023-11-04 23:28:41 -04:00
arkon
056dbaefda
Minor cleanup
2023-11-04 23:21:24 -04:00
arkon
3a15c6b843
Show EOL message if update check no-ops due to unsupported Android version
2023-11-04 20:26:47 -04:00
arkon
db20d04c4b
No-op app update checks for Android < 8
...
This effectively makes it the last release for the older Android versions.
2023-11-04 19:41:00 -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
4146c4c31d
Ensure page indicator texts are centered
...
Maybe fixes #9976
2023-11-04 17:50:33 -04:00
arkon
69223df27c
Move tracker binding logic to interactor
2023-11-04 17:05:38 -04:00
arkon
4b225a4ff1
Revert "Always save pages/covers in subfolders"
...
This reverts commit 8568d5d6c3
.
Closes #10052
2023-11-04 16:46:02 -04:00
arkon
8644d90bd4
Bump dependencies
2023-11-04 16:11:43 -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
Caleb Morris
5d91b77c93
Added library sort by mean Tracker score ( #10005 )
2023-11-04 15:31:59 -04:00
arkon
aca36f9625
Maybe fix foreign key error during some backup restores
2023-11-01 22:52:00 -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
Eshlender
b3d7c92475
Text on tabs Overflow Ellipsis ( #10095 )
...
* Update TabbedDialog to TabbedScreen
* clean
2023-11-01 22:17:17 -04:00
Eshlender
d862d83511
Combining manga information into a function ( #10093 )
...
* Combining manga information into a function
* clean space
* indexes
* context
* clean
* textAlign for Tablet Mode
2023-11-01 09:01:38 -04:00
Howard Wu
8a1625ec79
buildDir deprecated, use layout.buildDirectory instead ( #10097 )
...
gradle/gradle#20210
gradle/gradle#24820
2023-10-31 22:14:31 -04:00
arkon
2ee895ee3c
Use same icon as chapter list items to indicate downloaded chapter in reader transitions
2023-10-31 18:05:37 -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
1aa5222c99
Record time when last automatic backup was created
...
Closes #3474
2023-10-29 12:03:46 -04:00
arkon
298c49f3ab
Abstract out library last updated timespan text
...
So we can reuse it for showing last automatic backup time.
2023-10-29 11:54:50 -04:00
arkon
ce5e10be95
Clean up chapter restoring logic a bit
2023-10-29 11:43:06 -04:00
arkon
4868dd2d03
Try to ensure that reader page error message is removed if image is loaded
...
Maybe fixes #5687
2023-10-28 17:18:42 -04:00
arkon
443d56f69b
Add option to flash white screen on page change in reader for e-ink displays
...
Closes #2123
2023-10-28 16:21:45 -04:00
Eshlender
7457a18aee
Add icons for author and artist in MangaInfoHeader ( #10079 )
...
* Mark author and artist
* overall style
* Clean up spacing
---------
Co-authored-by: arkon <eugcheung94@gmail.com>
2023-10-28 15:46:10 -04:00
arkon
118d3b7fcc
Add ability to reset chapter flags to defaults
...
Closes #10063
2023-10-28 15:28:39 -04:00
arkon
eed57b80be
Replace AppUpdateService with a WorkManager job
...
Fixes #7773
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2023-10-27 15:45:18 -04:00
arkon
c46c39d4ae
Rename "Backup and restore" settings screen to "Data and storage"
...
We can house more things in here in the future, like:
- A unified storage location setting (with scoped storage)
- Sync
- Disk usage info
2023-10-27 15:06:56 -04:00
arkon
d7d7a6d2fc
Revert Compose update
...
Fixes #10069
2023-10-26 13:06:26 -04:00
AntsyLich
17b90d2491
Yeet app update download progress notification on complete ( #10071 )
2023-10-26 12:30:40 -04:00
arkon
9ecec5d468
Set saved image date modified value to current time
...
Fixes #10070
2023-10-26 08:35:51 -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
7dccde0930
Merge branch 'patch'
2023-10-25 12:06:41 -04:00
arkon
c8d68590db
Release v0.14.7
2023-10-25 12:04:09 -04:00
arkon
94448faf97
Update website links
2023-10-25 11:58:00 -04:00
arkon
f8834ee764
Avoid opening blobs as webpages
...
Fixes #10060
(cherry picked from commit 548f7f415a
)
2023-10-25 11:53:40 -04:00
Vlasov Roman
7c703b17d3
Change Shikimori domain from ".me" to ".one" ( #10027 )
...
(cherry picked from commit 8f3681d79f
)
2023-10-25 11:52:24 -04:00
arkon
91712daee8
Use consistent extension icon URLs
...
Better caching between versions.
(cherry picked from commit 30f845139d
)
2023-10-25 11:49:33 -04:00
arkon
8057f067b9
Handle reader app bar insets in Compose
2023-10-25 09:21:04 -04:00
arkon
548f7f415a
Avoid opening blobs as webpages
...
Fixes #10060
2023-10-25 09:18:59 -04:00
arkon
d9c0b1ce7d
Migrate reader low brightness overlay to Compose
2023-10-24 22:21:17 -04:00
arkon
0a0b686119
Add Compose previews for reading and orientation mode dialogs
2023-10-24 22:16:03 -04:00
Caleb Morris
3b7ed9bc6d
Detached permission request from DiskUtil ( #10051 )
...
Being an extension on the DiskUtil couples to a class at a different abstraction
layer without really needing to. Created PermissionRequestHelper as a place to
put similar requests if needed in the future.
2023-10-22 19:58:16 -04:00
arkon
012854dd1e
Update Voyager
2023-10-22 15:54:31 -04:00
Caleb Morris
6d1e520c6c
[dev QoL] Added AndroidStudio previews for [presentation.track] namespace ( #10022 )
...
* Created DummyTracker for use in tests and presentation previews
* Added previews for TrackerSearch
* Added previews for TrackLogoIcon
* Added preview for TrackInfoDialogSelector
* Added previews for TrackInfoDialogHome
2023-10-22 09:30:34 -04:00
Joshua Owolabi
f84868a264
Allow extensions to open manga or chapter by URL ( #9996 )
...
* open manga and chapter using URL
* removing unnnecessary logs
* Resolving comments
* Resolving comments
2023-10-21 21:44:43 -04:00
arkon
8e4cedf173
Update Compose
2023-10-21 18:09:30 -04:00
Caleb Morris
3a35c13575
Decoupled Tracker Interface ( #10042 )
...
Split out Tracker to interface and created simple dummy instance for previews
2023-10-21 17:10:34 -04:00
arkon
489d22720a
Refresh tracks before updating progress
...
Closes #1652
Also removes the ability to trigger refreshes for the entire library or
as part of a library update as it should no longer be needed. Opening
the tracking sheet already refreshes the data too, so stale data is
irrelevant there.
Also closes #4775 since it would no longer be relevant.
2023-10-21 10:20:35 -04:00
arkon
c53172265b
Consistent labeled checkbox composable
2023-10-21 09:42:12 -04:00
arkon
8626a55fe4
Make text clickable when removing item from tracker
2023-10-18 22:50:09 -04:00
Vlasov Roman
8f3681d79f
Change Shikimori domain from ".me" to ".one" ( #10027 )
2023-10-18 22:49:45 -04:00
arkon
c4ce3dd46f
Update background job preferences once settings are restored
...
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2023-10-17 22:32:13 -04:00
arkon
22df12a680
Change crash log info to just have actual WebView version
2023-10-17 22:30:55 -04:00
arkon
e572abb041
Show an error if backup file URI isn't returned to app when attempting restore
...
Related to #10028
2023-10-17 22:25:05 -04:00
Ivan Iskandar
ea99d77fda
ExtensionLoader: Fix incorrect ext file deletion ( #10026 )
...
Ref c492efcb31
2023-10-15 22:05:35 -04:00
arkon
82a9d36df7
Minor cleanup
2023-10-14 22:46:51 -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
0be7ac5871
Bump dependencies
2023-10-14 22:22:46 -04:00
arkon
d18022c259
Migrate top reader app bar to Compose
2023-10-14 12:30:17 -04:00
arkon
5619a4c0d9
Remove remaining usages of platform-provided strings
2023-10-14 11:11:05 -04:00
Ivan Iskandar
0026f96fad
MangaSummary: Refactor to not use SubcomposeLayout ( #10008 )
2023-10-14 10:52:04 -04:00
Ivan Iskandar
c492efcb31
ExtensionLoader: Set read-only to private extension files ( #10007 )
2023-10-12 23:04:40 -04:00
arkon
c386d375de
Tweak Cloudflare help message in WebView screen
...
Catches pages like what Shinigami is currently showing.
Also adjusts the banner to make it look more like part of the top AppBar so it
looks less like part of the webpage.
2023-10-12 22:56:33 -04:00
arkon
540fb1bb7c
Use AppBar abstraction in more places
2023-10-12 22:49:21 -04:00
arkon
81448f5d01
Minor cleanup
2023-10-12 22:43:03 -04:00
arkon
7c01201055
Refactor reader bottom bar to presentation package
2023-10-12 22:42:49 -04:00
arkon
90d3dd2242
Use relative touch positions for reader tap events
...
Fixes #10004
2023-10-12 22:15:30 -04:00
arkon
97b4d1f13d
Use Compose to animate bottom reader menu bars
2023-10-09 22:27:46 -04:00
arkon
b7d282235d
Remove duplicated logic for binding enhanced trackers
2023-10-08 19:19:04 -04:00
Pauline
77ebc362f6
Add button to reorder categories alphabetically ( #9369 )
...
Closes #6459
Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-10-08 18:55:15 -04:00
arkon
8568d5d6c3
Always save pages/covers in subfolders
...
Ensures that pages and covers are grouped together.
2023-10-08 17:04:02 -04:00
arkon
7ed99fbbd6
Account for skipped entries when showing large updates warning
...
Closes #6159
2023-10-08 16:40:17 -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
6dab94a937
Move backup restoring functions from BackupManager to BackupRestorer
2023-10-08 16:11: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
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
LooKeR
78aa50bb35
Reduce recomposition of MangaHeader ( #9985 )
...
* Reduce recomposition of MangaHeader
* Reuse `Modifier` for `Tags`
Reference:
https://developer.android.com/jetpack/compose/modifiers#reusing-modifiers
* Don't recalculate Read State on recomposition
* Fix Linting issue
* Optimize chapter state calculations
2023-10-06 18:24:43 -04:00
arkon
7f0f67d752
Update social media icons
2023-10-05 09:33:34 -04:00
arkon
df332860b8
Bump dependencies
2023-10-04 22:28:50 -04:00
arkon
afb1ee2200
Rename new method in ConfigurableSource to get preferences
...
Maybe fixes #9969
2023-09-30 14:36:06 -04:00
arkon
c8e226acb2
Tracker-related cleanup
2023-09-25 23:32:39 -04:00
arkon
86edce0d87
Bring back relative timestamp translations
2023-09-24 17:26:12 -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
5de72b7d32
Bump dependencies
2023-09-23 12:15:28 -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
77a8a4229c
Fix duplicate files being created when saving pages on Android 10+ with separate folders setting enabled
...
Fixes #9943
2023-09-22 16:16:23 -04:00
arkon
d4290f6f59
Fix hide entries in library setting causing browse to not load
...
Fixes #9924
2023-09-20 23:19:00 -04:00
arkon
b08d604d2a
Consistently use absolute date strings everywhere
...
Closes #9781
2023-09-20 22:49:15 -04:00
arkon
6663abebaf
Clean up fetch interval tests a bit
...
Also limit the dates we look at to most recent 10 distinct dates only. Closes #9930
2023-09-17 12:06:17 -04:00
arkon
e5f83d0c6e
Fix track search item not filling width if content is too short
2023-09-17 11:03:39 -04:00
arkon
f9754f4f58
Fix cut off labels in reader sheet toggles
2023-09-11 18:39:36 -04:00
arkon
8824c7dbe3
Tweak reading mode and orientation sheet designs
2023-09-10 22:36:57 -04:00
arkon
ccc9a5a052
Update website links
2023-09-10 18:16:53 -04:00
Soitora
f5e0cee36c
Change website URLs to reflect changes ( #9916 )
...
Change website URLs
2023-09-10 18:11:00 -04:00
arkon
2dd2db7225
Update to Kotlin 1.9.10
2023-09-09 14:49:04 -04:00
Joshua
3d0e750519
[Download Queue] Move series to bottom ( #9918 )
...
Added item in download queue page to move series to bottom
2023-09-09 14:01:24 -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
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
cc018cee18
Change backup file names
...
We use the application ID now to ensure uniqueness if the same folder is selected
between different app versions/forks. This will make more sense once storage
settings are unified to a single location.
Also changes the file extension while we're at it so people stop accidentally
ungzipping it.
2023-09-07 22:15:50 -04:00
arkon
3f0db60a99
Minor updates
2023-09-03 10:02:04 -04:00
arkon
87f3d4bd05
Use app name in biometric unlock dialog
...
Mostly for forks to show the right name.
2023-09-03 10:01:47 -04:00
Ivan Iskandar
816d7815e9
"Updates" widget for Galaxy Z Flip5 cover screen ( #9892 )
2023-09-02 09:37:25 -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
98d6ce2eaf
Refactor some tracking-related logic
2023-08-27 10:41:58 -04:00
arkon
dde2f42138
Refactor some tracking-related logic
2023-08-26 18:30:17 -04:00
arkon
6922792ad1
Add more user-friendly network-related exception messages
2023-08-26 17:45:26 -04:00
arkon
13dc54df70
Remove unused rxandroid dependency
2023-08-26 10:30:26 -04:00
arkon
6d9a8a30e9
Add ResolvableSource interface for potentially opening entries directly based on some URI via a share intent
...
Implemented as an intermediate step in the existing Global Search share intent workflow.
If any source manages to resolve the URI (e.g., a URL, a slug, etc.), the resolved SManga entry
is directly opened. If nothing gets resolved, continue to a Global Search.
2023-08-25 22:25:00 -04:00
arkon
c06beac660
Better ignore irrelevant files when indexing downloads
2023-08-24 22:41:22 -04:00
arkon
74f74eef56
Don't run automatic backup or library update jobs if battery is low
2023-08-24 22:25:29 -04:00
Alessandro Jean
eeeaae4570
Only set the dialog title if not already set in the extension ( #9858 )
...
Only set the dialog title if not already set in the extension.
2023-08-19 16:47:20 -04:00
arkon
4e68b62881
Minor cleanup
2023-08-16 23:10:28 -04:00
arkon
8a6a104987
Set tracker finished date when manually updating to last chapter
...
Closes #9834
Individual tracker implementations already handle setting it too on update.
2023-08-11 09:30:35 -04:00
arkon
3ebf39bd55
Minor reader cleanup
2023-08-06 22:27:45 -04:00
Mekanik
8f395d98e7
Make some error messages localizable ( #9811 )
...
* Make error message of 3 exceptions localizable.
* Revert unnecessary file handle exception change.
2023-08-06 09:50:43 -04:00
Mekanik
26b3eb696c
Fix missing inversion in tap zones help overlay. ( #9812 )
2023-08-05 18:36:19 -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
39c6bcccd8
Consider local manga as downloaded when filtering in reader
...
Fixes #9801
2023-08-05 12:01:17 -04:00
arkon
6259bbaa5e
Always include bound trackers when migrating/copying
2023-08-05 11:54:34 -04:00
Mekanik
4b7acdb022
Fix migration flags usage (incorrect defaults and copy mode) ( #9805 )
...
* Fix migration flags usage (incorect defaults and copy mode)
* Remove unused logcat import left from testing.
2023-08-05 11:49:22 -04:00
Ivan Iskandar
af0fdfa3b7
ReaderViewModel: Fix saved state ( #9807 )
...
Also save page index
2023-08-05 09:47:02 -04:00
Quang Kieu
d874f20362
[Hotfix] Fix bug of not fetch update if manual library refresh as fetch period have lower limit ( #9806 )
...
Fix bug of not fetch update if manual library refresh, no auto
If somehow manga missed check period, we would not give new next update cycle and it would forever left behind
2023-08-05 09:07:00 -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
arkon
400ca48456
Remove unnecessary profileable flag in manifest
2023-08-04 17:12:11 -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
7798186c32
Drop support for extension-lib 1.3
2023-08-04 10:35:57 -04:00
arkon
9dc66c7c8d
Combine tracking OAuth login activities
2023-08-04 10:35:47 -04:00
arkon
10b0ef9b6d
Dismiss extension update notification if all updates installed
2023-08-02 18:00:06 -04:00
arkon
81cd765543
More refactoring of expected next update logic
2023-07-30 19:13:16 -04:00
arkon
c9a1bd86b5
Refactor some Screens to be classes
...
Not really much point in keeping these as singletons.
Hopefully allows for these to be GC-ed after closing them.
2023-07-30 19:13:16 -04:00
Alessandro Jean
dfbbbadfac
Show ellipsis in longer OSS library names ( #9780 )
...
Show ellipsis in longer OSS library names.
2023-07-30 17:39:37 -04:00
arkon
0f21d16263
Minor cleanup
2023-07-30 10:08:51 -04:00
arkon
5718983f41
Update benchmarking dependencies
2023-07-29 22:48:56 -04:00
arkon
f7b335e4fb
Set useDefaultDebugSigningConfigForProfileableBuildtypes flag
...
Related to #9774
2023-07-29 19:47:54 -04:00
arkon
aa6937baf2
Disable profiling on preview builds
...
Related to #9774
2023-07-29 18:52:05 -04:00
arkon
cd91ea9b77
Remove need for SQLDelight primitive adapters
2023-07-29 16:14:23 -04:00
arkon
6a558ad119
Upgrade to SQLDelight 2
2023-07-29 15:32:09 -04:00
arkon
90325d48aa
Subscribe to download queue state changes in UpdatesScreen
2023-07-29 14:26:36 -04:00
stevenyomi
e2abf283fe
Don't show future timestamps as Recently ( #9773 )
2023-07-29 14:09:08 -04:00
arkon
db788d519d
Avoid badly wrapped buttons in DuplicateMangaDialog
...
Fixes #9767
2023-07-29 12:14:11 -04:00
arkon
f3e9d5f346
Show feedback message when downloads index manually invalidated
...
Closes #9768
2023-07-29 12:09:00 -04:00
arkon
fd30c0adcd
Avoid showing duplicate entry dialog for same entry
...
Fixes #9772
2023-07-29 12:07:13 -04:00
arkon
3ad4f1114a
Cleanup related to fetch interval display
2023-07-29 10:29:53 -04:00
arkon
fe90546821
Remove relative timestamps setting
2023-07-29 10:03:16 -04:00
arkon
3892c4caac
Minor cleanup
2023-07-29 09:51:51 -04:00
Quang Kieu
cb639f4e90
Update Manga in Expected Period ( #5734 )
...
* Add Predict Interval Test
* Get mangas next update and interval in library update
* Get next update and interval in backup restore
* Display and set intervals, nextUpdate in Manga Info
* Move logic function to MangeScreen and InfoHeader
Update per suggestion
---------
Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-07-28 23:10:02 -04:00
arkon
6d69caf59e
Show help banner when Cloudflare captcha page is shown in WebView
2023-07-28 23:09:52 -04:00
arkon
cdc1c5efa3
Better handle saving animated drawables
2023-07-26 23:26:58 -04:00
arkon
77bfd0c099
Don't attempt to show non-bitmap image in notification when saving
...
Fixes #9758
2023-07-26 23:09:33 -04:00
arkon
8ff0c9d61a
Allow more flexible custom preference composables
2023-07-26 22:57:15 -04:00
arkon
b6620434b3
Bump dependencies
2023-07-26 22:56:49 -04:00
arkon
abae9bf37d
Minor cleanup
2023-07-23 20:03:37 -04:00
arkon
2556e9f08c
Refactor duplicate chapter number formatters
2023-07-23 18:09:08 -04:00
arkon
ee26d6dffd
Remove some uses of color resources
2023-07-22 18:56:45 -04:00
KaiserBh
7b2764e8f7
Refactor backup and restore to support cross device sync. ( #9699 )
...
* refactor: backup and restore to support cross device sync.
* chore: Updated string resources
* refactor: change function name.
* refactor: Use URI SyncHolder.kt not needed anymore.
2023-07-22 18:39:56 -04:00
arkon
46e3b9e40d
Use previously updated track item when binding start date
...
Fixes #9743
2023-07-22 09:32:17 -04:00
arkon
cf14831fbe
Clean up preference extensions/items a bit
2023-07-19 21:57:22 -04:00
arkon
7a4680603d
Avoid triggering new search for same query in global search
2023-07-19 20:31:46 -04:00
Ivan Iskandar
5c73045aa4
Don't require deeplink ext target to be pinned ( #9740 )
2023-07-19 19:54:06 -04:00
arkon
ac306547a0
Bump dependencies
2023-07-18 19:12:04 -04:00
arkon
3f868c0435
Use correct sources when triggering new global search
...
Actually fixes #9724
2023-07-18 18:09:31 -04:00
arkon
262ce3473f
Increase max lines for title in global search to 3
...
Closes #9729
2023-07-16 22:24:14 -04:00
arkon
43b9b104f5
Remove fast scrollbar from some unnecessary places
2023-07-16 22:19:50 -04:00
arkon
c7f0a54a37
Trigger new search on source filter change
...
Fixes #9724
Could be cleaned more though.
2023-07-16 22:19:33 -04:00
arkon
ca789dca0e
Dedupe SearchScreenModels
2023-07-16 19:44:32 -04:00
arkon
ef7b285151
Minor refactoring
2023-07-16 19:18:38 -04:00
arkon
dd3ca0c131
Replicate global search filters to migrate screen
...
Still needs better refactoring to dedupe all of this stuff though...
2023-07-16 17:09:59 -04:00
arkon
8b46e8edad
Dedupe Global/MigrateSearchContent composables
2023-07-16 16:43:26 -04:00
arkon
30f845139d
Use consistent extension icon URLs
...
Better caching between versions.
2023-07-16 15:44:36 -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
a3a3f44056
Constrain reader sheet to max 75% of height
2023-07-16 09:59:17 -04:00
arkon
22c6dbda3f
Replace reader sheet dropdowns with chips
2023-07-16 09:58:52 -04:00
arkon
34f7caa0fc
Use Material3 chips
2023-07-16 09:11:57 -04:00
arkon
01553b1ed8
Don't update chapter progress if current page is errored
...
Closes #5355
2023-07-16 09:11:57 -04:00
AntsyLich
ec08ba05fc
Finish up reader reading mode settings compose migration ( #9721 )
2023-07-15 15:47:01 -04:00
arkon
30bea8b753
Replace library sheet display modes with FlowRow of Chips
2023-07-15 14:31:13 -04:00
arkon
09e4b5a9cd
Replace some reader sheet settings with FlowRow of Chips
2023-07-15 14:27:30 -04:00
arkon
5467104b95
Fix window undimming when reader custom filter settings are open
2023-07-15 13:23:25 -04:00
arkon
1cf7f9be54
Use segmented buttons for reader background setting in sheet
2023-07-15 13:05:06 -04:00
arkon
fb99577836
Implement showing selected per-series reader settings
2023-07-15 12:39:36 -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
e40b8d537c
Move all pager/webtoon reader setting to Compose sheet
2023-07-15 10:47:56 -04:00