Commit Graph

3274 Commits

Author SHA1 Message Date
CVIUS
6d655ff757
Fix category tabs incorrect scroll position (#7120) 2022-05-14 08:09:15 -04:00
nzoba
63627c81eb
Add switch to DownloadPageLoader when chapter is downloaded (#7119) 2022-05-13 21:42:23 -04:00
arkon
5dc688dc2e Update reset viewer flags strings 2022-05-12 09:04:02 -04:00
FourTOne5
08fb2fe467
Add option to reset viewer flags (#7062)
* Add option to reset viewer flags

* Review Changes

* Run `resetViewerFlags()` content with `launchIO`
2022-05-12 09:00:57 -04:00
CVIUS
f1afeac0bc
Detect identical mangas when long pressing to add to library (#7095)
* Detect identical mangas when long pressing to add to library

* Use extracted duplicate manga dialog to avoid duplication

* Partially revert previous commit

* Review changes

* Review changes part 2
2022-05-12 08:58:37 -04:00
S97
f75d632740
Fixed splitting logic and CBZ compression logic (#7098)
* Fixes:
- spliiting fails when the page was already been split and processed before
- Moved CBZ logic a little earlier to avoid marking a download as complete before the CBZ compression was completed

* Added a single space for readablity

* Added 2 spaces for readability

* Moved the splitting logic to happen inside getOrDownloadImage()

* Minor cleanup

* - Improved error handling when splitting fails due to OOM exception caused by BitmapFactory.decodeFile. - Changed logic from throwing error to only notify to allow the download to complete even if splitting failed.

* reverted auto formatting changes

* removed an extra loop

* Merged to Upstream, cleaned up

* Removed unused localized string

* Minor cleanup
2022-05-11 22:36:16 -04:00
CVIUS
b26daf8824
Fix "Move to top" showing at the most top item in download queue (#7109) 2022-05-11 22:35:30 -04:00
arkon
393fc14630 Update Compose
Fixes #7004
2022-05-11 22:29:28 -04:00
arkon
c7707dc50e Minor cleanup 2022-05-11 22:17:12 -04:00
arkon
37199a10bf Bump dependencies 2022-05-11 18:09:13 -04:00
arkon
b950370f12 Address some build warnings 2022-05-11 18:08:49 -04:00
arkon
ae7df4fb7f Update linter 2022-05-10 17:54:52 -04:00
arkon
d3f9232a3f Minor cleanup
- Add pending intent immutable flags to satisfy lint warnings
- Change AddDuplicateMangaDialog arg to a function instead to avoid leaking controller-specific logic into it
- Require WebView 99+
2022-05-10 17:39:45 -04:00
FourTOne5
9f655e0d41
Fix download splitter potentially throwing OOM on huge images (#7099)
* Fix download splitter potentially throwing OOM on huge images

Also move the splitting to ImageUtil

* Change variable name and logcat output
2022-05-10 17:06:18 -04:00
nicki
e7ed130f2a
Check for app updates by comparing semver (#7100)
Instead of just checking whether the current app version *matches* with
latest app version in GitHub Releases, compare the semver from the tag
names to check whether the latter is greater and the app needs an update

Reference: semver spec #11 https://semver.org/#spec-item-11

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>

Co-authored-by: Andreas <6576096+ghostbear@users.noreply.github.com>
2022-05-10 17:04:40 -04:00
arkon
e421eb61bc Extract add duplicate manga dialog into a controller 2022-05-10 09:19:10 -04:00
nicki
11c01235ac
Don't save categories in backup if not selected (#7101)
Currently, manually created backups contain list of categories even if
Categories option is not selected during Backup Prompt. This leads to
empty categories being created when restoring such backup files

This commit adds a check before saving categories list info to the
backup file. The check is the same check which is used while backing up
category info of manga in library

Tested and worked successfully on app installed on Android 12
2022-05-09 11:03:40 -04:00
arkon
6993e88265 Adjust inset consumption in Compose controllers (fixes #7085)
Co-authored-by: jobobby04 <jobobby04@users.noreply.github.com>
2022-05-07 23:50:14 -04:00
arkon
681e9396b3 Fix crash when using renamed library sort methods (fixes #7092) 2022-05-07 23:48:53 -04:00
arkon
85ef40d0ff Don't allow swiping away app update install notification
Also show the new version number in the notifications.
2022-05-07 11:04:55 -04:00
arkon
39c0b74250 Fix tall image split math issues
- Round up per-split height to ensure the entire page ends up being split
- Handle the last split of a page potentially being shorter than the others
2022-05-06 23:10:56 -04:00
arkon
a9e629aea6 Minor cleanup
- Remove some unused StorIO queries
- Clean up tall image splitting a bit (no need for creating an unscaled scaled bitmap copy, or tracking coordinates)
- Clean up library updater a bit (still needs a lot of work though)
2022-05-06 22:48:00 -04:00
S97
aa11902aa1
Add option to automatically split tall downloaded images (#7029)
* Auto split long images to improve performance of reader

* Auto split long images to improve performance of reader - fixed the sorting

* Improved performance of splitting by getting rid of 1 extra loop

* Cleaned up code and moved the functionality to work during the downloading process (unsure how this affects download speed)

* Replaced the import .* with the actual used imports

* Fixes for Bugs discovered during my testing

* Fixed last split missing bug.

* Reordered the download progress to be updated before splitting instead of after to reflect more meaningful progress of download

* Reverted last commit since it had no effect

* Improved progress tracking when a download is paused then resumed.

* Implemented the recommended changes to enhance the feature.

* Apply suggestions from code review

Co-authored-by: arkon <arkon@users.noreply.github.com>

* Update app/src/main/res/values/strings.xml

Co-authored-by: arkon <arkon@users.noreply.github.com>

Co-authored-by: arkon <arkon@users.noreply.github.com>
2022-05-06 22:17:27 -04:00
FourTOne5
c4088bad12
Fix removing manga from library reverts during global update (#7063)
* Fix removing manga from library reverts during global update

* Review Changes

* Review changes 2
2022-05-06 22:15:44 -04:00
FourTOne5
49d3ddb830
Add -r flag to ShizukuInstaller createCommand (#7080) 2022-05-06 22:00:24 -04:00
FourTOne5
6d802063b4
Reword and Fix library sort (#7068) 2022-05-03 18:39:04 -04:00
FourTOne5
55a1cdb1c7
Case insensitive sort in Source tab (#7067) 2022-05-03 08:45:34 -04:00
jobobby04
ed8a54bd2a
Properly modify StateFlow value (#7059) 2022-05-02 08:31:50 -04:00
FourTOne5
5bd5b21543
Properly show history state (#7052)
* Make `HistoryState` similar to `MigrateState`

* Review Changes

* Also cache the transformation

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

* Fix States

Co-authored-by: Andreas <andreas.everos@gmail.com>
2022-05-01 22:40:35 -04:00
arkon
aec980662f Extract migrate list number badges for later use in library items 2022-05-01 22:35:44 -04:00
FourTOne5
aef1dc6eaf
Make MigrateSourceState similar to MigrateState (#7054) 2022-05-01 22:35:34 -04:00
FourTOne5
bd45bf7407
Make SourceState similar to MigrateState (#7053)
* make `SourceState` similar to `MigrateState`

* Review Changes
2022-05-01 22:34:58 -04:00
arkon
e3f6cfa2df Add newer methods to StubSource 2022-05-01 10:46:44 -04:00
saud-97
5763201307
Notify user of error during a page download failure (#7047)
* Notify user of error during a page download failure

* Included the manga title in the error notification
2022-04-30 16:30:02 -04:00
arkon
dee7830793 Update navigation bar padding in Compose screens 2022-04-30 11:59:39 -04:00
FourTOne5
23f8f35354
Migrate Source Filter Screen to Compose (#7031)
* Migrate Source Filter Screen to Compose

* Changes from Review and some more fixes

* Rename some variable and classes

* Review Change

* Ewbase and Review changes
2022-04-30 11:49:02 -04:00
arkon
cccd09fb5c Allow passing modifier to preference composables 2022-04-30 09:43:49 -04:00
Andreas
bf6d59cd21
Migrate Migrate Manga screen to Compose (#7045)
* Migrate Migrate Manga screen to Compose

* Changes from review comments
2022-04-30 09:37:10 -04:00
FourTOne5
6ef6eab994
Remove source lang on migrate screen also seperate removed source on alphabetical sort (#7041)
* Remove source lang on migrate screen also seperate removed source on alphabetical sort

* Review changes

* Rename Variable
2022-04-30 08:33:00 -04:00
arkon
ccff333123 Use Compose for OAuth login loading indicator 2022-04-29 09:01:05 -04:00
Andreas
891406cc7f
Fix database corruption (#7042)
When using SQLDelight and Storio at the same time
2022-04-29 08:04:59 -04:00
arkon
8798c295e6 Fix about icons sizing 2022-04-28 09:15:59 -04:00
FourTOne5
78207d48ba
Center CurcularProgressIndicator in LoadingScreen (#7032)
* Center `CurcularProgressIndicator` in `LoadingScreen`

* Fix Import and move modifier to top
2022-04-28 08:54:51 -04:00
arkon
70698e6494 Add links to website FAQ for library update and download warning notifications 2022-04-27 22:45:31 -04:00
Andreas
adf02e53fd
Add error state to MangaCover composable (#7022)
* Add error state to MangaCover

- Add error drawable when thumbnailUrl isn't able to be loaded
- Tweak usage of MangaCover

* Change `contentDescription` to be nullable

As the invoke function makes default nulls
2022-04-27 09:24:35 -04:00
Andreas
7261fcccda
Use Compose in Migrate tab (#7008)
* Use Compose in Migrate tab

* Add missing header

* Remove unused files

* Fix build after rebase

* Changes from review comments
2022-04-27 08:36:16 -04:00
arkon
a4a4503311 Migrate SettingsMainController to Compose 2022-04-26 22:41:42 -04:00
arkon
0b77b78f6a Remove some minor settings
Some spring cleaning to remove some unnecessary complexity so things are easier to maintain.

- Start screen: redundant with app shortcuts in Android 7.1+
- Jump to chapters: irrelevant in tablet mode and people can scroll a tiny bit if they really have to
- Option to not scroll away bottom nav: issues with fast scroll will be irrelevant with it being replaced or removed in the Compose migrations

Get ready for people malding over their special needs. https://xkcd.com/1172/
2022-04-24 22:17:15 -04:00
FourTOne5
06bec0ad54
Download new chapters when only excluded categories is selected (#6984) 2022-04-24 16:36:14 -04:00
arkon
2caf220b18 Remove some unused StorIO queries/resolvers 2022-04-24 16:20:46 -04:00
arkon
4d23f35b9d Throw out old unit tests
Considering we never run or update them, they're not providing any value right now.
Kept the chapter recognition tests and bumped to JUnit 5.
2022-04-24 16:16:05 -04:00
arkon
7773deabc0 Adjust library sorting by dates (closes #6954)
Ascending by date = oldest dates first. If no date is present, fallback to epoch 0 (i.e., oldest).
2022-04-24 15:50:51 -04:00
arkon
91ed3a4a5f Fix skipped library entries and size warning notifications using same ID 2022-04-24 15:49:24 -04:00
arkon
20145f7a12 Fix update warning notifications being cut off (fixes #6983) 2022-04-24 15:35:05 -04:00
arkon
883945e3e8 Default to downloading as CBZ (closes #6942)
Generally seems fine. People with weak devices may experience some issues, but they can toggle it off/extract the archives separately if needed.
2022-04-24 15:32:50 -04:00
arkon
3feea71146 Add battery not low restriction for global updates (closes #6980) 2022-04-24 15:25:28 -04:00
ItsLogic
5e32b8e49f
Fix chapter transition setting for one page chapters (#6998) 2022-04-24 15:21:21 -04:00
arkon
08e63e5fab Minor cleanup 2: Electric Boogaloo
- Reword pins on top setting
- Make "Latest" button style match old UI
- Sort sources by name
2022-04-24 15:17:01 -04:00
arkon
0ec9496d26 Minor cleanup 2022-04-24 14:39:51 -04:00
Andreas
29a0989f28
Convert Source tab to use Compose (#6987)
* Use Compose in Source tab

* Replace hashCode with key function

* Add ability to turn off pins moving on top of source list

* Changes from review comments
2022-04-24 14:35:59 -04:00
arkon
558b18899c Migrate WebViewActivity to Compose 2022-04-24 10:22:22 -04:00
arkon
6e95fde4ec Delete entire app_webview folder when clearing WebView data 2022-04-24 09:42:26 -04:00
arkon
e691e17efc Remove unused preference layouts 2022-04-23 18:34:53 -04:00
arkon
c25cffafc6
Migrate More screen to Compose (#6990) 2022-04-23 15:51:50 -04:00
arkon
8933b41937 Tweak about preferences styles 2022-04-23 12:42:35 -04:00
arkon
7e2f1d729f Clean up repetitive controller transactions 2022-04-23 12:10:32 -04:00
arkon
d6c87ec10e Basic initial port of About screen to Compose 2022-04-23 12:05:00 -04:00
CrepeTF
070abd79ce
Resume when history item is tapped (#6982)
* Remove resume button

* Rename onClickItem to onClickCover

* Optimize imports

* Rename reference to onClickItem in HistoryController.kt

Co-authored-by: CrepeTF <trungnguyen02@outlookcom>
2022-04-23 10:58:33 -04:00
arkon
2d01933c28 Lifted NestedScrollConnection to abstract Compose classes
Since it'll likely be used in every controller.
2022-04-23 10:57:04 -04:00
arkon
bf0bb5aa88 Move clear webview data action to network group 2022-04-23 10:52:34 -04:00
arkon
1b4d9fc4e9 Migrate open source licenses screen to Compose 2022-04-23 10:52:19 -04:00
arkon
2b79295240 Revert "Revert history Compose/SQLDelight changes"
This reverts commit 96c894ce5b.
2022-04-22 17:35:18 -04:00
arkon
96c894ce5b Revert history Compose/SQLDelight changes 2022-04-22 17:27:58 -04:00
arkon
c0214103a9 Temporarily remove chapter name cleaning
To be added back in a more consistent manner later around the app. Probably when more things are Compose-y with less repetition.
2022-04-22 14:03:43 -04:00
arkon
2b76a97989 Add advanced setting to clear WebView data 2022-04-22 14:00:42 -04:00
Andreas
9d77052d9c
Enable verbose logging in dev flavor by default (#6979) 2022-04-22 12:34:53 -04:00
arkon
032aa64195 Lift Compose theme to abstract controller 2022-04-21 22:58:28 -04:00
arkon
7c8e8317a8 Simplify history item description building 2022-04-21 22:47:51 -04:00
arkon
eb1cfc4cd4 Add abstract ComposeController 2022-04-21 22:42:37 -04:00
arkon
f1e5cccee7 Add placeholder color for Compose manga covers 2022-04-21 19:02:54 -04:00
arkon
bc2ed763bd Default auto backups to 2 2022-04-21 17:13:33 -04:00
Andreas
a35995b898
Fix crash on History tab when there is no next chapter (#6970) 2022-04-21 16:48:45 -04:00
Andreas
b1f46ed830
Migrate History screen database calls to SQLDelight (#6933)
* Migrate History screen database call to SQLDelight

- Move all migrations to SQLDelight
- Move all tables to SQLDelight

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>

* Changes from review comments

* Add adapters to database

* Remove logging of database version in App

* Change query name for paging source queries

* Update migrations

* Make SQLite Callback handle migration

- To ensure it updates the database

* Use SQLDelight Schema version for Callback database version

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
2022-04-21 15:45:56 -04:00
arkon
6c1565a7d4 Make links in new update dialog clickable
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2022-04-19 22:39:33 -04:00
arkon
2ca6b655ad Replace ignore button in new update dialog with link to GitHub page
Not enough room for 3 buttons. Users can still tap outside or back out of the dialog if they want to ignore it.
2022-04-18 22:45:58 -04:00
arkon
65a8b63b3b Move chapter name cleaning logic to holder (fixes #6955) 2022-04-18 09:26:43 -04:00
Andreas
b20ca36db9
Fix AppBar not unlifting when scrolling using ComposeView (#6952) 2022-04-17 14:33:35 -04:00
arkon
189f92d7e8 Show better error message when empty backup creation is attempted (closes #6941) 2022-04-17 11:51:24 -04:00
arkon
cdd4ec6233 Increase default OkHttp call timeout to 2 minutes
Which is still stupidly high, but maybe it'll be lenient enough for certain people.
2022-04-17 11:32:47 -04:00
arkon
ef1bb4e800 Show parsed Markdown for new version info (closes #6940) 2022-04-17 11:30:05 -04:00
Andreas
c475acd1ea
Migrate History screen to Compose (#6922)
* Migrate History screen to Compose

- Migrate screen
- Strip logic from presenter into use cases and repository
- Setup for other screen being able to migrate to Compose with Theme

* Changes from review comments
2022-04-17 10:36:22 -04:00
arkon
89decf3474 Always remove manga title from if it prefixes chapter names (related to #6913) 2022-04-15 15:52:48 -04:00
arkon
0b2794e843 Limit package name overriding to Android 8+ (related to #6846) 2022-04-15 13:43:54 -04:00
arkon
9c30fa1da3 Update F-Droid migration guide link 2022-04-15 12:11:01 -04:00
arkon
e81bd61e24 Adjust update/download warnings
This is a partial revert/evolution of 538dd60580

- Back to notifications, because Android 12+ may cut off toasts
- Notifications now automatically dismiss after 30s on Android 8+ (taken from J2K)
- Also warn if more than 30 chapters are queued for download
2022-04-15 10:24:54 -04:00
arkon
7a0b54bb38 Set network call timeout to 90 seconds (instead of infinite) 2022-04-15 09:56:35 -04:00
arkon
f060daf8c4 Rollback to stable OkHttp
There's some weird crashes related to it. Happy Eyeballs will return once we upgrade again.
2022-04-14 22:37:51 -04:00
arkon
c1976ef599 Avoid some crashes 2022-04-14 18:28:16 -04:00
arkon
f16fb4e1e4 Minor cleanup 2022-04-14 18:15:47 -04:00
arkon
5da2c82f47 Avoid crashing if picture can't be saved (related to #6905) 2022-04-13 18:45:49 -04:00