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