Commit Graph

3554 Commits

Author SHA1 Message Date
Ivan Iskandar
b3426f37e7
ExtensionPresenter: Fix crash on first launch (#7685)
* Revert "Use SharedFlow for available extensions to always emit the value (#7609)"

This reverts commit 73901f50c0.

* ExtensionPresenter: Explicitly set refreshing status

* Scope coroutines job to presenter

* cleanup

* fix toast
2022-08-04 15:44:37 -04:00
Ivan Iskandar
afceac15c8
Add scroll overlay to LibraryToolbar (#7669)
Works when category tab is not shown
2022-08-03 17:41:15 -04:00
nzoba
3d4e56948d
Save read duration to backup (#7672)
* Save read duration to backup

* Add default value

Co-authored-by: Andreas <andreas.everos@gmail.com>

Co-authored-by: Andreas <andreas.everos@gmail.com>
2022-08-03 17:40:13 -04:00
Ivan Iskandar
737cf9898d
Reimplement appbar color overlay on scroll (#7663)
only on updates and history screen for now, but the required changes on app bar
is there.

also fix missing incognito-downloaded mode indicator on history screen
2022-07-31 22:24:19 -04:00
arkon
322f3a07e8 Remove some unneeded TODOs 2022-07-31 17:52:17 -04:00
Andreas
6c7b3d7811
Fix null pointer exception on Extension Detail screen (#7666) 2022-07-31 17:17:36 -04:00
arkon
2ca62c4eda Remove unused viewstatepageradapter dependency 2022-07-31 11:55:07 -04:00
Ivan Iskandar
29e1976b90
Glance widget for Updates (#7581)
* glance

* glance2
2022-07-31 11:31:40 -04:00
stevenyomi
4efb736e56
Filter out empty genres before saving manga to database (#7655) 2022-07-31 11:18:12 -04:00
Andreas
58acf0a8aa
Remove deprecated LibrarySort (#7659)
* Remove deprecated LibrarySort

* Apply suggestions from code review
2022-07-31 11:17:43 -04:00
stevenyomi
9f5f101858
Dismiss clear database confirm dialog on success (#7657) 2022-07-31 10:59:55 -04:00
AntsyLich
2a875fe9b8
SyncChaptersWithSource: Fix early exit condition for readded chapters (#7661) 2022-07-31 10:58:55 -04:00
Andreas
039fe4a618
Fix Clear Database item trying to display language when empty (#7651) 2022-07-30 13:55:07 -04:00
arkon
0c9c4c0347 Mimic M3 rounded tab indicators 2022-07-30 12:27:32 -04:00
MatchaSoba
b563e85c3b
Fix logic for searchWithGenre (#7559) 2022-07-30 11:53:25 -04:00
Andreas
99ac30e59f
Use Compose on Clear Database screen (#7639) 2022-07-30 11:51:47 -04:00
AntsyLich
4774deb1ef
Use Stable interface for Updates screen + Cleanup (#7627)
* Use Stable interface for Updates screen + Cleanup

Co-Authored-By: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

* Disable swipe refresh in selection mode

* Review Changes

Co-Authored-By: Andreas <6576096+ghostbear@users.noreply.github.com>

* Review Changes 2

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
2022-07-30 11:50:00 -04:00
Ivan Iskandar
d49ec41f3a
Library category page performance fixes (#7650)
* Don't compose category page unnecessarily

* Remove unnecessary library pager recompose

Defer and remember the "currentPage" state read since it's only needed when the
pager is composed for the first time.

* Badge opts

* Sync text style with previous impl

Also avoid reallocating by using copy
2022-07-30 11:47:27 -04:00
arkon
f90e1b935c Bump dependencies 2022-07-29 23:13:40 -04:00
Andreas
db93d1da76
Fix library bugs (#7648)
- Fix mixup in Action Menu
- Fix back action not clearing search
2022-07-29 22:42:18 -04:00
Andreas
7d74b174e0
Merge GetExtensions and GetExtensionUpdates (#7646) 2022-07-29 15:09:49 -04:00
Andreas
e513487caa
Fix number of items not updating when Show category tabs is off (#7644) 2022-07-29 10:17:31 -04:00
Ivan Iskandar
483b204fb5
MangaPresenter: Add distinctUntilChanged to db flow (#7629)
* MangaScreen: Disable swipe refresh on action mode

* MangaPresenter: Add distinctUntilChanged to db flow

Now will only emit update when the related entry is changed
2022-07-29 07:47:09 -04:00
Andreas
56028aff55
Fix category exclude not working in DownloadManager (#7641) 2022-07-29 07:46:09 -04:00
Andreas
8bde35298f
Add fast scroller to Library screen (#7600)
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
2022-07-27 09:13:43 -04:00
Ivan Iskandar
3fe5e53b25
MangaScreen large UI tweaks (#7625)
* MangaScreen: Fix large UI column sizing behavior

* MangaInfoHeader: Adjust large UI cover sizing behavior

* BottomActionMenu: Change bg shape
2022-07-27 09:12:01 -04:00
Ivan Iskandar
dcafdac036
Retain backstack views by default (#7621) 2022-07-27 09:00:18 -04:00
Andreas
f8d8cf9f6a
Wait for library to load before creating Pager (#7623) 2022-07-27 09:00:09 -04:00
Andreas
5bb1133f0f
Use non nullable parameters in the MangaCover invoke function (#7624)
Issue cause the non nullables to become nullable has been fixed since 1.2.0-rc01
2022-07-27 08:59:41 -04:00
Andreas
2b96709799
Make Selection toolbar take precedence over search toolbar (#7611) 2022-07-26 09:05:08 -04:00
Ivan Iskandar
1c8da5fa97
BrowseSourceController: Fix broken page after opening manga (#7608)
Probably related to 788583e66f
2022-07-25 08:32:11 -04:00
Andreas
73901f50c0
Use SharedFlow for available extensions to always emit the value (#7609)
- Fixes Extension screen being stuck refreshing due to StateFlow not emitting due to the value being the same
2022-07-25 08:31:41 -04:00
Andreas
76057b84b2
Fix wrong query being used when opening Global Search (#7604) 2022-07-24 15:06:18 -04:00
Andreas
164de67a56
Fix infinite loading when user library is empty (#7602)
- If no manga in library add default category this to remove loading state
2022-07-24 12:43:33 -04:00
Ivan Iskandar
aeffb5eeb8
ChapterDownloadIndicator: Optimize further and reimplement error state (#7599)
In the context of a weaker device--remembering objects inside a list item
is expensive. So only do it when we really need to.

This also flattens the download button by drawing a single icon instead of using
separate icon and progress indicator.
2022-07-24 10:27:00 -04:00
Andreas
6f94777530
Fix toolbar having bottom padding in portrait (#7601) 2022-07-24 09:56:03 -04:00
Ivan Iskandar
2e15be59af
Fix unnecessary recompose when calling LazyListState.isScrolledToEnd (#7598) 2022-07-24 08:49:28 -04:00
Andreas
bc1f6ba517
Tweaks on Library screen (#7597)
- Toolbar not having padding in landscape
- Fix library always refreshing everything even though user is refreshing category
- Tab text using primary color
- Fix Grid having to big of a top padding
- Fix Pager crashing when initial page is greater than the number of categories
2022-07-24 08:48:54 -04:00
Ivan Iskandar
59f8c1a288
MangaPresenter: Don't update fav state when changing categories (#7594) 2022-07-23 22:18:40 -04:00
arkon
cd9487f94c Set splash screen ready state for history and updates pages 2022-07-23 19:37:26 -04:00
Andreas
978489fade
Fix crash in Extension Detail and set ready to true on Library screen (#7591) 2022-07-23 19:27:40 -04:00
arkon
07c9af4901 Fix padding in history screen 2022-07-23 11:25:45 -04:00
arkon
d6977e5676 Avoid catastrophic failure when cover can't be created in local source (fixes #7577) 2022-07-23 11:14:34 -04:00
arkon
a843054388 Show better error when trying to open RARv5 file 2022-07-23 11:13:52 -04:00
Andreas
c751851941
Use Stable interface for History screen (#7586)
- Adds Stable interface
- Move last Dialog into Compose
- Make History screen be full Compose screen
2022-07-23 10:01:51 -04:00
Andreas
9f2ddaadde
Cleanup Library after Compose changes (#7584) 2022-07-23 09:58:05 -04:00
Andreas
fc328e141c
Remove unused dependencies (#7585) 2022-07-23 08:54:08 -04:00
arkon
27bac4fffb Remove unused legacy ActionModeWithToolbar 2022-07-22 22:46:53 -04:00
arkon
4bf4b167a5 Remove bottom nav behavior and add bottom padding to root controller contents 2022-07-22 22:44:05 -04:00
Andreas
2b8d1bcc02
Use Compose for Library screen (#7557)
- Move Pager to Compose
- Move AppBar to Compose
- Use Stable interface for state
- Use pills for no. of manga in category instead of (x)
2022-07-22 19:05:50 -04:00
nzoba
e8b7743826
Add downloaded icon in TransitionView when chapter is downloaded (#7575)
* Add downloaded icon in TransitionView

* Change icon
2022-07-22 18:55:31 -04:00
AntsyLich
8ea05e852e
Fix logic of app unlock (#7569) 2022-07-21 22:23:59 -04:00
stevenyomi
3547d0142f
Fix image MIME issues that cause download errors (#7562)
* Downloader: ignore non-image MIME to prevent .bin extensions

* ProgressResponseBody: allow null content type

Co-authored-by: anenasa <84259093+anenasa@users.noreply.github.com>

Co-authored-by: anenasa <84259093+anenasa@users.noreply.github.com>
2022-07-20 09:10:41 -04:00
arkon
4d9d587366 Migrate More screen to full Compose 2022-07-18 18:51:36 -04:00
arkon
e2510c144a Misc cleanup
- Migrate sources filter screen to full compose
- Use standard "OK"/"Cancel" actions for delete category dialog
- Abstract some AppBar logic
- Remove some dead code
- Group related strings
2022-07-18 18:32:25 -04:00
Ivan Iskandar
00519e3b93
MangaScreen: Save selection state (#7560) 2022-07-18 16:42:46 -04:00
Ivan Iskandar
473dc688f0
Fix download status not updated properly after starting batch download (#7561) 2022-07-18 16:22:49 -04:00
f1998f1998
b635f02d93
fix concurrent download (#7552)
* Fix concurrent download

* lower Concurrency

* artist Update app/src/main/java/eu/kanade/tachiyomi/data/download/Downloader.kt

Co-authored-by: Vetle Ledaal <vetle.ledaal@gmail.com>

Co-authored-by: Vetle Ledaal <vetle.ledaal@gmail.com>
2022-07-18 13:22:09 -04:00
AntsyLich
d8fb6b893f
Migrate Updates screen to compose (#7534)
* Migrate Updates screen to compose

* Review Changes + Cleanup

Remove more unused stuff and show confirmation dialog when mass deleting chapters

* Review Changes 2 + Rebase
2022-07-17 22:17:40 -04:00
arkon
cbfe9c30bb Migrate more screens to full Compose 2022-07-16 21:00:01 -04:00
arkon
459b369feb Avoid crashes due to SQLite support in older Android versions for debug builds 2022-07-16 20:54:27 -04:00
arkon
3192d47837 Fix tablet manga screen column ratios
Matches previous stable design. Related to #7401
2022-07-16 20:41:13 -04:00
arkon
f6f5b6aeab Fix library column setting jumping in 2022-07-16 18:26:30 -04:00
arkon
1b2c12385f Migrate licenses screen to full Compose 2022-07-16 18:12:09 -04:00
arkon
80c7a45328 Remove top app bar scroll behavior
This lets us make it more consistent with the Compose screens for now. Maybe it'll return in the future.

This also includes making the AboutController a full Compose controller with a new abstracted TopAppBar composable.
2022-07-16 17:58:43 -04:00
arkon
2096df301d Consolidate badge components 2022-07-16 17:40:40 -04:00
arkon
0b78028cf6 Tweak categories view
- Remove Compose top app bar behaviour since it's kind of jank -- we'll probably just remove the scrolling behaviour everywhere
- Tap title to rename
- Focus in textfield when opening dialogs
2022-07-16 17:28:50 -04:00
arkon
46ac9fe970 Consolidate Compose content/theme setting 2022-07-16 17:28:50 -04:00
AntsyLich
b034f503f8
MangaPresenter: Incognito and downloaded only label related tweaks (#7535)
When manga screen takes time to load incognito and downloaded only label doesn't show up. It's fixed in the pr.
2022-07-16 16:45:05 -04:00
Andreas
9ebeff04e6
Fix Library List not using correct text color (#7548) 2022-07-16 16:40:51 -04:00
arkon
fa73e2403b Minor library view cleanup
- Clean up unused code
- Add text shadow in compact mode
- Tweak some paddings to better match stable
2022-07-16 15:36:38 -04:00
Andreas
35ec593658
Use Flow in ExtensionManager and SourceManager (#7547)
- Replace ExtensionManager relay and observable with Flow
- Inverse SourceManager dependency
    - SourceManager observers ExtensionManager flow
- Separate SourceData from SourceRepository as it created a circular dependency
2022-07-16 15:08:15 -04:00
Andreas
905c96922b
Use Compose for Library list and grid (#7520) 2022-07-16 15:06:24 -04:00
Andreas
018ca71336
Use Stable interface for Browse screens (#7544) 2022-07-16 14:44:37 -04:00
Andreas
a21aa8125e
Add Stable interface for Category state (#7539) 2022-07-15 17:35:19 -04:00
AntsyLich
83e193f1ab
Fix extension setting isn't accesiable when it has update (#7537)
Closes #7516
2022-07-15 14:44:59 -04:00
jobobby04
bdbe1c4d0f
Use MangaImpl defaults in Manga.create() (#7538) 2022-07-15 14:44:45 -04:00
arkon
4ee1d72b6f Make default user agent string configurable 2022-07-14 23:01:50 -04:00
AntsyLich
902bb35ba7
Little cleanup for stub source (#7519)
* Little cleanup for stub source

Fixes instances where name shows up blank for stub sources

* Review Changes

Co-authored-by: Andreas <andreas.everos@gmail.com>

Co-authored-by: Andreas <andreas.everos@gmail.com>
2022-07-14 17:17:31 -04:00
jobobby04
4684797dfb
Fix crash with chapterFlags in Manga.create() (#7530) 2022-07-14 17:16:45 -04:00
AntsyLich
386b8945c8
Use Material Icons for untrusted extension's icon (#7518) 2022-07-13 09:18:50 -04:00
Trevor Paley
86a018ebad
Fix bug in default category downloading logic (#7525) 2022-07-13 09:18:17 -04:00
Ivan Iskandar
ba93060e59
Fix scroll animation when system animation is disabled (#7509) 2022-07-11 22:21:00 -04:00
arkon
788583e66f Replace some usages of RxJava 2022-07-10 19:48:07 -04:00
Ivan Iskandar
cbcab5a545
Fix MangaScreen app bar title and nav icon action (#7506) 2022-07-10 14:29:58 -04:00
Ivan Iskandar
634ee86bbd
MangaPresenter: Always fetch chapter from source if current chapter is empty (#7507) 2022-07-10 14:29:52 -04:00
AntsyLich
64f60c36e6
ExtensionManger: Fix unofficial extension has update (#7503) 2022-07-10 10:00:48 -04:00
arkon
0b4f3f5532 Replace deprecated ACTION_MEDIA_SCANNER_SCAN_FILE intent 2022-07-09 17:51:58 -04:00
Andreas
d977b89af1
Configure SQLite (#7495)
- Turn on `foreign_keys` to cascade on delete properly
- Turn on `journal_mode` and set `synchronous` to NORMAL which may help performance for larger libraries
2022-07-09 17:35:49 -04:00
arkon
487ce37d91 Set content descriptions for bottom nav badges
Doesn't seem to produce #6708, but at least it'll be used by screen readers?
2022-07-09 16:40:16 -04:00
Ivan Iskandar
1551891c15
MangaScreen: Improve chapter list scrolling performance (#7491)
* MangaScreen: Improve chapter list scrolling performance

Process chapter title, date and read progress string ahead of time

* Use enum for contentType and add key
2022-07-09 16:20:40 -04:00
Ivan Iskandar
e56f6c1017
ChapterDownloadIndicator: Fixes and improvements (#7485)
* Increased touch target
* Fix downloaded icon smaller than other states
* Deferred state reads to minimize recompose works
* Move things around to eliminate unnecessary elements
2022-07-09 12:38:33 -04:00
Ivan Iskandar
34906a7425
MangaScreen: Ditch the expanded app bar (#7470)
Animating the content padding that's used for the lazy list is heavy. A simple
fix to *just* offset the list is blocked by a Compose fling issue (b/179417109).

So I decided to go with the previous layout of this screen by putting everything
in the list. MangaInfoHeader is split into separate composables to avoid jank
when the item is being inflated.
2022-07-09 12:37:49 -04:00
Andreas
86bacbe586
Use Compose for Category screen (#7454)
* Use Compose for Category screen

* Use correct string for CategoryRenameDialog title

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2022-07-09 12:31:14 -04:00
Ivan Iskandar
9385b86ecb
VerticalFastScroller: Fix scroller consuming touch when it's invisible (#7484) 2022-07-09 09:20:47 -04:00
arkon
ab1a44e108 Merge branch 'patch' 2022-07-08 16:09:19 -04:00
arkon
473a4fec70 Fix cherry pick errors 2022-07-08 09:11:28 -04:00
arkon
1919c2d925 Update default user agent string
(cherry picked from commit 7d3fe0ed43)
2022-07-08 08:58:55 -04:00
arkon
71e31e6c03 Add MIME type mapping for image/jxl (fixes #7117)
(cherry picked from commit 591df8abcc)
2022-07-08 08:58:46 -04:00
arkon
c01df7f0a1 Increase height of transition view in webtoon viewers (fixes #7242)
(cherry picked from commit 46734c525f)
2022-07-08 08:57:45 -04:00