AntsyLich
2cb08e6bb1
Avoid potential crash when opening library settings sheet ( #9415 )
2023-04-28 09:08:17 -04:00
stevenyomi
058ee4c86b
Fix exception formatter's format ( #9413 )
2023-04-28 09:06:32 -04:00
arkon
ea6e5eebac
Remove "when tapping" from "Pan wide images" setting
...
Closes #9343
2023-04-27 22:54:07 -04:00
arkon
9cc25ff345
Fix disable source option not appearing
2023-04-27 22:47:58 -04:00
arkon
c9805b8612
Consolidate exception message formatting
...
Closes #9408
2023-04-27 22:45:30 -04:00
Quang Kieu
41c89eb61d
Add interval data layer ( #9398 )
...
* Update Manga classes for fetch interval data
* Update per review
bump version
---------
Co-authored-by: quangkieu <qkieu>
2023-04-27 22:27:12 -04:00
arkon
392c3492b3
Minor cleanup
2023-04-26 17:27:44 -04:00
arkon
20bec66a9d
Handle archives with nested directories properly
...
Closes #9389
2023-04-25 22:07:34 -04:00
Ken Swenson
3ce9a9ff97
Double tap zoom toggle ( #9384 )
...
* Double tap zoom toggle
Implements a toggle that allows users to disable double tap zoom including QuickScaling for webtoons. Partially resolves #4145
* Update i18n/src/main/res/values/strings.xml
---------
Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-04-25 18:06:49 -04:00
d-najd
a8f17a3fab
Add swipe actions for chapters ( #9304 )
...
* added chapter swipe
* Rework corner animtion
* Update i18n/src/main/res/values/strings.xml
Co-authored-by: arkon <arkon@users.noreply.github.com>
* Replace LTR/RTL with Start/End layout
* Added label to the animation so the warning will go away
* Getting rid of the swipe threshold setting
* adding disabled option, renaming stuff, other stuff?
* Getting rid of the snackbar
* Getting rid of unecessary strings
* changing enum names as requested
* Renaming Raio to Ratio (I need a better keyboard as well -__-)
* Replacing error with download icon and action
* backup
* minor cleanup
* fixing an nasty edge case
* fixing mistakes in the previous conflict
* space
* fixing bug
fixed bug where the user could dismiss already dismissed item leading to item getting stuck
* fixing lint errors
* fixing lints (hopefully)
* Added "swipe disabled" to the list of actions
* Replacing string value and moving value as requested
* replacing rest of the strings with generic ones
---------
Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-04-25 17:29:39 -04:00
Tooster
ef3d2c14b4
Fix misused string key in library context menu ( #9388 )
...
The "update global" action used key which led to translation issues in Polish.
2023-04-24 22:32:28 -04:00
arkon
44619febd3
Load ZIP file contents to cache ( #9381 )
...
* Extract downloaded archives to tmp folder when loading for viewing
* Generate sequence of entries from ZipInputStream instead of loading entire ZipFile
2023-04-23 11:59:58 -04:00
arkon
418e6a8b3a
Make loader implementation classes internal
2023-04-23 10:11:26 -04:00
arkon
67b4e53a58
Minor cleanup
2023-04-23 10:11:26 -04:00
arkon
e23cc8f83a
Hide beta split tall images setting from reader setting sheet for release builds
...
Closes #9358
2023-04-22 16:33:41 -04:00
arkon
0b125b7106
Use Compose for reader transition chapter info ( #9373 )
2023-04-22 16:33:36 -04:00
arkon
26f3995595
Consolidate missing chapters functions to domain module and add tests
2023-04-22 11:34:51 -04:00
Pauline
41cc1fe723
Fallback chapter name if it ends up as blank ( #9220 )
...
* change the directory's name for a download when the chapter's name is only composed of numbers or is blank
* maj in case the chapter name is blank or empty
* clean code
2023-04-22 11:11:56 -04:00
arkon
add228407f
Remove abstract TabeedBottomSheetDialog class
2023-04-19 22:43:36 -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
c6ac992798
Move library columns settings to library sheet
...
Closes #3969 . Dialog-ception.
2023-04-15 19:36:49 -04:00
arkon
8ab7e63293
Add tests for MissingChapters function
2023-04-15 09:51:52 -04:00
arkon
4bcd623829
Move worker info screen into debug info menu
...
No need to translate anything for debug info. Dunno what else will end up in that menu in the future.
2023-04-15 09:35:22 -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
Ivan Iskandar
60d8650860
WheelPicker: Add manual input ( #9338 )
2023-04-15 09:26:33 -04:00
Eshlender
564a0980b9
Update track domain shikimori.me ( #9333 )
...
shikimori.me
2023-04-14 21:57:05 -04:00
Ivan Iskandar
c1e23ec18e
GlobalSearchScreen: Skip result screen when using search intent ( #9299 )
2023-04-07 22:18:48 -04:00
arkon
b7cd7b8b4e
Better handle overflowing content in MigrateDialog actions
...
Fixes #9207
2023-04-05 22:36:57 -04:00
arkon
776d36caf1
Save current chapter progress when navigating to adjacent chapters
...
Fixes #9295
2023-04-05 22:29:56 -04:00
Ivan Iskandar
182e642cfc
SearchToolbar: Check initial search query to open keyboard by default ( #9297 )
2023-04-05 22:15:56 -04:00
arkon
d25ba23079
Fix automatic backups not working
...
Apparently they die if you rename a worker class.
2023-04-05 22:13:54 -04:00
arkon
75460e01c8
Remove crash log notification in favor of sharing directly
2023-04-02 15:30:22 -04:00
RS156
274218cf22
Make center zoom start vertically centered too ( #8849 )
...
Update ReaderPageImageView.kt
"true center" Zoom start position #8747 .
Changed zoom position to get true center value.
2023-04-01 14:52:15 -04:00
Ivan Iskandar
7a1b599462
Adjust SearchToolbar soft keyboard behavior ( #9282 )
...
* Show soft keyboard when the text field is composed (a redo)
* Clear focus on text field when soft keyboard is hidden
* Request focus on text field and show soft keyboard
when clear button is clicked
2023-03-31 09:24:44 -04:00
arkon
1dd62af188
Ensure EmptyScreen is scrollable
...
Also fix padding for loading/empty states in BrowseSourceScreen
2023-03-29 22:53:58 -04:00
Ivan Iskandar
6f1099b710
AdaptiveSheet: Wrap inside Dialog ( #9279 )
...
Because of Compose issue, the style of the sheet surface is adjusted as
a workaround
Ref https://issuetracker.google.com/issues/246909281
2023-03-29 22:34:32 -04:00
arkon
be8e2f119f
Make pin source icon lighter
...
Closes #9274
2023-03-28 23:01:22 -04:00
arkon
18f9e5ba6b
Use IO dispatcher for some screen model work
...
Not sure if this is an ideal approach. If it is, we could migrate more usages to this.
2023-03-28 22:52:30 -04:00
arkon
d1bf857079
Remove unnecessary withIOContext
2023-03-28 18:16:43 -04:00
arkon
be54b8862e
Refactor away some unnecessary lambda expressions
2023-03-26 13:27:31 -04:00
arkon
1a61130f0b
Don't attempt to initialize manga details from BrowseSource or Search screens
...
This was effectively DDoSing sources as it does a request for every entry to get the details (primarily a cover image).
The expectation now is that users have to open individual entries to load the details/cover if needed.
This isn't necessary for most sources, which are able to provide covers as part of the listing normally.
2023-03-26 13:12:32 -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
arkon
e932983494
Subscribe to changes to manga in BrowseSourceScreen
...
Fixes #9235
2023-03-26 12:06:12 -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
stevenyomi
0bcc22822d
Simplify code in missing chapters warning ( #9263 )
2023-03-26 11:50:29 -04:00
arkon
1ff78173f7
Adjust missing chapters UI
2023-03-26 10:26:58 -04:00
arkon
8d7a7919a9
Add TODO to default to 32-bit color at some point
...
Originally proposed in #8959
2023-03-24 22:52:18 -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
Felix Kaiser
f94d902bb6
Added missing chapters count in MangaInfoHeader ( #9184 )
...
* Added missing chapters count in MangaInfoHeader
* Added "Might be missing chapters"
* Added missing chapters to MangaAndSourceTitlesLarge function
* Removed comments
* Reworked getMissingChapters to countMissingChapters, moved -1 check
* Attempting detecting sub-chapters
* Moved MissingChapters to ChapterHeader; Adapted design to fit in
* Fixed block comment in one-line-element
* Fixed critical missing-chapter counting bug
* Undid unintentional & unnecessary changes
* Moved & refactored countMissingChapters
* Fixed import order; Mapping chapter object to chapterNumber
* Optimized "No (valid) chapters" detection
---------
Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-03-24 22:44:58 -04:00
arkon
da25322572
Bump Compose dependencies
2023-03-23 22:19:43 -04:00
arkon
cb4699a5bb
Bump dependencies
2023-03-22 22:58:42 -04:00
arkon
2e5efadf42
Rename Complications -> Overlay
2023-03-22 09:26:07 -04:00
arkon
ac0596a53d
Revert "Always attempt to split tall images when downloading"
...
This partially reverts commit 2769525b2c
.
Keeps the change to silently ignore spliting errors since it falls back to
the original images in those cases.
2023-03-20 08:45:36 -04:00
arkon
7ec5a51eb8
Move isLocal extension functions to LocalSource
2023-03-20 08:41:44 -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
cdc160afc2
Convert BackupRestoreService to a WorkManager job
...
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2023-03-19 17:28:59 -04:00
arkon
14d1bcacc9
Show proper string in manga detail screen for SourceNotInstalledException
2023-03-19 17:23:51 -04:00
arkon
7d8a865cac
Simplify some of the notification builders
2023-03-19 16:24:37 -04:00
Andreas
dfdb688b43
Migrate things to use newer data models ( #9239 )
...
* Remove old database models from Coil
* Remove old database models from TrackInfoDialogHome
* Remove old database models from Backup Manager
2023-03-19 13:11:58 -04:00
arkon
f3ca4e76a8
Re-enable ComicInfo.xml generation on download
...
Closes #8537
2023-03-19 13:02:38 -04:00
arkon
2769525b2c
Always attempt to split tall images when downloading
2023-03-19 12:57:16 -04:00
arkon
843e748de3
Clean up library display settings tab a bit
2023-03-19 12:41:29 -04:00
Alexandr Kozlinskiy
81af97df77
BrowseSource: do networkToLocal and initializeManga inside flow ( #9217 )
...
* do networkToLocal and initializeManga inside flow
* remove BrowseSourceScreenModel.GetManga
2023-03-18 09:42:44 -04:00
Ivan Iskandar
18e55aa25f
Adjust tab indicator visual ( #9219 )
...
Now behaves like the non-compose indicator by showing the swipe progress too
2023-03-16 22:20:25 -04:00
Ivan Iskandar
4d3e13b0d1
Initialize download index disk cache ( #9179 )
2023-03-16 22:18:11 -04:00
arkon
47a2d06682
Refactor tracker status string mappings
...
Should fix #9195
2023-03-10 23:01:10 -05:00
Ivan Iskandar
c0f94ae8af
Revert "Fix banners-related issues" ( #9186 )
...
Revert "Fix banners-related issues (#9143 )"
This reverts commit 63048d2f0b
.
2023-03-09 22:10:49 -05:00
arkon
ed32a511e7
Bump dependencies
2023-03-08 22:52:19 -05:00
arkon
09acc53483
Remove download all chapters menu item
...
Users can still select all the chapters (long press + select all) to download them.
2023-03-07 22:38:27 -05:00
arkon
bebd4be43d
Move more things to domain/data modules
2023-03-07 22:38:02 -05:00
arkon
9b77759f24
Use stricter visibility for composables where possible
2023-03-05 18:41:08 -05:00
arkon
e458de5e9c
Add dot beside unread chapter names
...
Closes #4261
Also includes changes that might help with #9043
2023-03-05 17:47:27 -05:00
arkon
e917349bb7
Use Compose icons instead of drawables
...
Using:
- https://github.com/DevSrSouza/compose-icons
- https://github.com/DevSrSouza/compose-icons/blob/master/simple-icons/DOCUMENTATION.md
2023-03-05 15:37:41 -05:00
arkon
ad4912803b
Refactor SourceManager/StubSource to domain module
2023-03-05 12:38:31 -05:00
arkon
f96f0c5889
Move some preferences into domain module
2023-03-05 12:11:47 -05:00
arkon
2b9acadc5b
Move sourceMapper to data module
2023-03-05 12:05:48 -05:00
arkon
9caa0d147b
Show proper message when doing global update
...
Fixes #9170
2023-03-05 11:07:33 -05:00
Andreas
1abf01c4a0
Convert source modules to Kotlin Multiplatform ( #9172 )
...
Use KMP in source modules
Use KMP in source-api
Expect LocalSource
2023-03-05 10:16:19 -05:00
Two-Ai
b41565f879
Inline DownloadQueue into Downloader ( #9159 )
...
* Move statusFlow and progressFlow to DownloadManager
* Inline DownloadQueue into Downloader
* Move reorderQueue implementation to Downloader
2023-02-28 22:13:13 -05:00
arkon
f03a834136
Add explicit overflow menu options to refresh library category and manga chapters list
...
Jetpack Compose treats mouse input differently than just mimicking a touch input, so dragging doesn't actually
invoke the pull to refresh. If that changes in the future, we could consider removing these.
Doesn't seem too necessary for the extensions list, so I skipped that.
Closes #8455
2023-02-26 16:58:36 -05:00
arkon
f7f2072621
Use queued last chapter read number when performing delayed tracker update
...
Fixes #8876
2023-02-26 16:48:04 -05:00
arkon
5b2e937d5f
Minor refactoring
2023-02-26 16:47:29 -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
2368c50ebb
Add menu shortcut to source settings in BrowseSourceScreen
...
Adapted from TachiyomiSY.
Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2023-02-26 10:23:07 -05:00
Two-Ai
0505906e7a
Move all DownloadService.stop calls to Downloader ( #9146 )
...
Downloader.stop is now the sole responsible for stopping the
DownloadService. This will help cleanly removing
DownloadService.stop when migrating to coroutines.
2023-02-25 15:40:22 -05:00
arkon
4efca04765
Avoid crashing in SourcePreferencesScreen if source can't be loaded
2023-02-25 15:32:46 -05:00
arkon
b12c7cf963
Avoid crash in DeleteLibraryMangaDialog
...
No clue why it ever gets a -1 index though.
2023-02-25 15:29:00 -05:00
arkon
487622c592
Close source filter dialog when filtering
2023-02-25 15:16:48 -05:00
Ivan Iskandar
63048d2f0b
Fix banners-related issues ( #9143 )
...
This is most likely Compose issue so these changes will
be reevaluated when new Compose ver is out.
2023-02-25 14:44:35 -05:00
Two-Ai
79662a5866
Misc Downloader state cleanup ( #9145 )
...
* Replace Downloader CompositeSubscription with nullable Subscription
* Derive Downloader.isRunning from subscription
Also simplify usages of isRunning
* Move DownloadNotifier.paused to Downloader.isPaused
* Remove unused DownloadNotifier.errorThrown
2023-02-25 14:43:00 -05:00
Two-Ai
ed6809fa28
Simplify filter logic ( #9141 )
...
* Remove unnecessary else branch
* Add TriStateFilter applyFilter
* Simplify filterFnTracking filter logic
2023-02-25 11:46:40 -05:00
Two-Ai
86b9262a7e
Make DownloadManager the sole entry point for DownloadService ( #9140 )
...
* Rename functions for DownloadService internal use
* Call DownloadService.start via DownloadManager
* Inline DownloadService.stop into pauseDownloads
* Inline DownloadService.stop into clearQueue
NotificationReceiver will now also stop the DownloadService when
receiving ACTION_CLEAR_DOWNLOADS.
* Provide DownloadService.isRunning via DownloadManager
2023-02-24 22:07:30 -05:00
arkon
7ec87e76db
Migrate TriState usages to TriStateFilter enum
2023-02-24 16:09:47 -05:00
Ivan Iskandar
ec3ce74af8
TrackDateSelectorScreen: Use M3 date picker ( #9138 )
2023-02-24 15:22:23 -05:00
Two-Ai
83a4e34095
Remove redundant Downloader isNotification argument ( #9139 )
...
DownloadQueue.clear() already sets QUEUE downloads to NOT_DOWNLOADED.
2023-02-24 15:11:51 -05:00
arkon
84a0044d51
Remove some unused resources
2023-02-23 22:42:02 -05:00
arkon
92132c59f5
Migrate source filter sheet to Compose ( #9135 )
2023-02-23 22:32:40 -05:00