Commit graph

3420 commits

Author SHA1 Message Date
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
arkon
2a070c0b1e Add clear cookies option to WebView menu 2022-04-13 17:48:05 -04:00
arkon
821d9cdb02 Show different update notification for F-Droid installations 2022-04-13 17:44:43 -04:00
arkon
28575936d3 Move learn more text in skipped entries notification to main content
Because people apparently don't realize they can tap actions
2022-04-12 23:08:00 -04:00
jmir1
0894b1394f
Fix cover sharing error string (#6911) 2022-04-12 09:10:32 -04:00
arkon
eb33d3c991 Remove build flavor checks for update warnings
"stable" was invalid anyway, it should've been "release"
2022-04-11 23:05:00 -04:00
arkon
80635343ae Update ACRA 2022-04-11 23:04:07 -04:00
arkon
4ecde9fc39 Gate update/download warnings to non-stable flavors 2022-04-10 12:17:45 -04:00
arkon
5afff31f72 Formatting 2022-04-08 16:44:23 -04:00
arkon
2dfafa387b Remove reader tapping option in favor of disabled nav layouts 2022-04-08 16:44:13 -04:00
arkon
7318f4f5dd Remove some dead code 2022-04-08 16:32:34 -04:00
manatails
175b77fe6f
Add option to disable navigation layout (#6876) 2022-04-08 16:32:25 -04:00
arkon
346652e508 Ensure media store scan is triggered after saving an image (fixes #6808) 2022-04-08 15:55:12 -04:00
arkon
f0eb42e72d Update linter 2022-04-08 15:30:39 -04:00
Ivan Iskandar
ac980a4dbf
MangaCoverFetcher: Handle moving cover cache after adding to library (#6885)
Move cover cache to separate cache dir after the parent manga is added to library
2022-04-08 12:10:06 -04:00
arkon
52911539b8 Bump dependencies 2022-04-07 22:19:31 -04:00
Andreas
3026ff241b
Write library cover to library cover cache (#6883) 2022-04-07 22:00:17 -04:00
Ivan Iskandar
2466a079d5
MangaCoverFetcher: Don't close network response (#6882) 2022-04-07 13:34:31 -04:00
arkon
668d962233 Update WebView requester package name
https://github.com/tachiyomiorg/tachiyomi/issues/6781#issuecomment-1086665483
2022-04-02 12:04:20 -04:00
arkon
996f770935 Override X-Requested-With header value in WebView requests (closes #6781) 2022-04-02 10:49:42 -04:00
Ivan Iskandar
dbad60d03b
Base activities cleanup (#6848)
* secure delegate

* theming delegate
2022-04-02 09:54:21 -04:00
Andreas
dd490f2ac9
Fix DST issue (#6831) 2022-04-02 08:52:53 -04:00
Ivan Iskandar
5409af0a6c
MangaCoverFetcher: Use source's header for network request (#6847) 2022-04-02 08:44:01 -04:00
arkon
0ed0d903cc Force default browser for tracker logins
To avoid potentially opening up third party apps, which aren't useful for handling OAuth login flows.
2022-03-26 16:35:14 -04:00
arkon
85be4c492d Fix clear database selection toggling (fixes #6807) 2022-03-26 16:12:15 -04:00
arkon
c06ad8b87e Stop using custom tabs (closes #6821) 2022-03-26 15:45:58 -04:00
arkon
b89acb5853 Stop removing local manga's title from chapter names (closes #6578)
Users should better curate their chapter folder/file names if need be. There's legit reasons for a chapter to start with or contain the same word(s) that the manga title consists of.
2022-03-26 15:34:53 -04:00
arkon
7890511a53 Update dependencies 2022-03-26 15:23:31 -04:00
Franco Olivera
3aa4e6eb93
Add "Move all chapters from series to top" option to download context menu (#6794)
* Added basic move to top series feature

* Remove intermediate List

* Change text string

* Remove spanish manual translation

* Changed algorithm to use "partition"
2022-03-26 14:49:37 -04:00
Andreas
f8eb9f94f4
Fix filename not having chapter title and page when sharing (#6827) 2022-03-26 12:40:29 -04:00
Ivan Iskandar
ffd9c6995a
UpdatesController: Don't init adapter until chapter data is ready (#6824)
Considering there's no pagination for this list, the data loading can take some
time. So this will show the existing refresh indicator instead of empty view
while the list is loading.
2022-03-25 22:20:47 -04:00
Ivan Iskandar
ef600c0956
Fix extension update badge reset when app resumed (#6822) 2022-03-25 11:11:16 -04:00
arkon
5c0a43e8d6 Fix off by 1 dates (fixes #6791) 2022-03-24 18:49:08 -04:00
Andreas
cd07027192
Use the file extension from the ImageType enum (#6800)
* Use the file extension from the ImageType enum

* Use the mime type from the ImageType enum

- On Android 29+
2022-03-21 13:13:39 -04:00
arkon
da2b30268a Add support for Happy Eyeballs 2022-03-19 16:48:33 -04:00
Andreas
1163aa4e4e
Share logic for saving page/cover (#6787)
* Use MediaStore on newer Android Q or newer

* Use flow instead of Observable

* Review comment fixes

* Use suspended function instead of flow
2022-03-19 16:46:23 -04:00
Ivan Iskandar
ddb856edc7
Add cover error drawable (#6782) 2022-03-15 22:21:30 -04:00
arkon
9c426bc216 Avoid crashing when global search encounters a NoClassDefFoundError 2022-03-15 22:20:41 -04:00
arkon
382852d0bd Require WebView v95+ 2022-03-15 22:12:41 -04:00
Sahaab
87ae86e1be Added reverse portrait reader rotation 2022-03-12 16:50:48 -05:00
quangkieu
9547311d7d Avoid throw as it is slow expensive operations 2022-03-12 16:47:31 -05:00
arkon
1613d561c1 Revert "Add shortcut to change app language in Android 13"
This reverts commit 538478cac8.
2022-03-12 16:45:36 -05:00
arkon
538478cac8 Add shortcut to change app language in Android 13 2022-03-11 22:26:03 -05:00
Ivan Iskandar
fae43fedfa
ReaderActivity: Reduce anim duration when launched from resume FAB (#6762)
From enter 500ms exit 400ms
To both 350ms
2022-03-10 07:51:42 -05:00
arkon
c447022092 Disable app cache WebView (is a deprecated web API and is being removed in Android 13) 2022-03-09 18:04:52 -05:00
arkon
56042ad0b6 Split out global library update skipped entries into separate notification (closes #6722) 2022-03-09 18:04:52 -05:00
arkon
45da036789 Avoid potentially deleting the entire backups folder 2022-03-09 18:04:52 -05:00
arkon
b47b702a52 Copy raw description on long tap (fixes #6557) 2022-03-09 18:04:52 -05:00
Ivan Iskandar
869424cd16
Change cover placeholder (#6756) 2022-03-09 17:26:55 -05:00
arkon
b9fd01315b Minor cleanup 2022-03-06 09:37:39 -05:00
arkon
a72098b862 Add shortcut to edit categories screen from category setting dialog (closes #6280) 2022-03-06 09:37:39 -05:00
Andreas
86016de6cb
Recreate Backup worker with IS_AUTO_BACKUP_KEY flag (#6742)
* Recreate Backup worker with IS_AUTO_BACKUP_KEY flag

* Extra safety net to not delete backup folder
2022-03-06 08:36:47 -05:00
1831553190
592b9fedb9
Fixed the wrong offset (#6704) 2022-03-05 10:08:32 -05:00
arkon
d06984e3a3 Use same name for manual backup job tag and work name 2022-03-05 09:49:21 -05:00
Ivan Iskandar
10eef282fa
Coil 2.x upgrade (#6725)
* Migrate to Coil 2

* Adapt to use coil disk cache

* Update to alpha 7

* Update to alpha 8

* Update to rc01
2022-03-04 16:04:32 -05:00
Ivan Iskandar
d53bb4c337
Use existing worker for manual backup creation (#6718)
* Use existing worker for manual backup creation

This will show the "creating backup" notification when auto backup is
running. Complete or error notification will continue to be shown only on
manual job.

* Make sure disabling auto backup don't cancel running manual backup job
2022-03-03 22:15:49 -05:00
FourTOne5
08ee858f64
Adjust mark as unread and mark previous as read action visibility (#6703) 2022-03-01 22:21:15 -05:00
啊o额iu鱼
6f5328f663
Fix corrupted backup file, fix #6424 (#6691)
Reappear stably on the api30 Android Studio Emulator,
first save a large backup file,
then save a small backup file, overwriting the previous larger backup file,
so you get a backup file with a larger size but only the first part is meaningful,
2022-02-23 09:12:24 -05:00
Gauthier
2f07f226b8
Fix "Landscape zoom" and "Navigate to pan" for split images (#6647)
* fix: getPageHolder would always return the first split, as they share the same index

* split pages have the same number, we need an extra check to know whether we move forward or back
2022-02-17 22:09:03 -05:00
Ivan Iskandar
a8ad19a89d
Restore bottom nav position earlier after being recreated (#6648) 2022-02-17 22:08:36 -05:00
Román
57c07250fd
Side padding: Added missing percentage (#6668) 2022-02-17 10:39:07 -05:00
arkon
4a3e4a7c5c Reword library update restrictions setting and surface skipped entries in error notification/log 2022-02-14 18:16:22 -05:00
arkon
c284a23afb Avoid some crashes if router backstack is empty for whatever reason 2022-02-13 11:10:22 -05:00
Ivan Iskandar
fad1449de3
Grid items optimizations (#6641)
Use ConstraintLayout for ez size ratio calculation and merge cover-only view
holder with compact's
2022-02-13 11:09:49 -05:00
FourTOne5
f18d161eaf
Add "Started" library filter and library update restriction (#6382)
* Add chapter read count to library manga

Co-Authored-By: Jays2Kings <jays@outlook.com>

* Add "Started" library filter and library update restriction

* Update Filter when its changed

* Add back accidentally removed stuff.

* Update..

* Change variable names

* Change Variable name where I missed

Co-authored-by: Jays2Kings <jays@outlook.com>
2022-02-13 10:42:28 -05:00
arkon
88054b453a No need for a new bit for DisplayModeSetting mask
(Thanks Syer)
2022-02-12 22:26:51 -05:00
arkon
c560373596 Fix overlap between DisplayModeSetting and SortModeSetting masks 2022-02-12 22:17:33 -05:00
arkon
d698d03521 Fix Quad9 DoH setting 2022-02-12 22:08:12 -05:00
OncePunchedMan
d8c8d7c588
Add Quad9 DOH provider (#6638)
* add quad9 as new doh provider

* add ipv6 addresses to google doh

* revert changes to import
2022-02-12 17:15:53 -05:00
CrepeTF
51d48bdde6
Update Theme Preview Items (#6628)
* Improved theme preview items

* Tweaked theme preference item border colours

* Polished theme items

* Update ThemesPreference.kt item layout width value

Co-authored-by: CrepeTF <trungnguyen02@outlookcom>
2022-02-12 13:14:04 -05:00
Mica
44b055c019 Cover only grid added to library (#6528)
* No title grid added to library and source

* Else added to display title in case image is null or empty

* No title grid renamed and now only available in library

* Spanish strings about cover only grid removed

Co-authored-by: micaelagimenez <micaela.gimenez@ext.prosegur.com>
2022-02-12 13:09:44 -05:00
arkon
790d7b9170 Rename extension function to avoid confusion with androidx function 2022-02-12 11:23:10 -05:00
Gauthier
d8719ceee9
Navigate to pan / landscape zoom (#6481)
* pan if the image is zoomed instead of navigating away
quickly display full landscape image before zooming to fit height in fit to screen

* add Tap to pan preference, defaults to true
add landscape zoom preference, defaults to false

* hide landscape image zoom option if scale is not fit screen

* fix landscape image zoom for first image and loading image

* properly reload pagerholders when landscape zoom option is changed

* enable landscape zoom by default
2022-02-12 11:21:54 -05:00
Felix Kaiser
71ddb16574 Detect identical mangas when adding to library (#6579)
* added duplicate manga check

When adding a manga to your library, the app will go through each manga previously added and compare their names. If a match is detected, it will prompt the user and ask for confirmation. On this prompt there is also an option to view the other manga.

* added german translations for newly added strings

* Revert "added german translations for newly added strings"

This reverts commit 71ada620671651daeeb2546aecd02400a4bc86bc.

* changed `AlertDialog.Builder` to `MaterialAlertDialogBuilder`

* using SQL query instead of filtering entire library with Kotlin
2022-02-12 11:13:27 -05:00
Ivan Iskandar
2932ed670f
MainActivity fixes (#6591)
* Reduce notifyDataSetChanged calls when category count is disabled

* Fix category tabs briefly showing when it's supposed to be disabled

Also fix tabs showing when activity recreated

* Lift appbar when tab is hidden

Check against tab visibility instead of viewpager

* Restore selected nav item after recreate

* Simplify SHORTCUT_MANGA intent handling

Don't need to change controller if the topmost controller is the target
2022-02-12 10:58:58 -05:00
arkon
8c1662cfdb Disallow PackageInstaller extension installer option on MIUI 2022-02-05 23:02:13 -05:00
arkon
299e52e877 Allow disabling secure screen when incognito mode is on 2022-02-05 18:51:08 -05:00
arkon
95b253db09 Don't show error toasts in MangaController for HTTP 103 responses (closes #6562) 2022-02-05 18:26:50 -05:00
arkon
067cb2452e Add shortcut to backups guide 2022-02-05 17:44:54 -05:00
arkon
45e4092335 Increase minimum required disk space to download chapters to 200MB (closes #6576) 2022-02-05 17:35:54 -05:00
arkon
aa5e428222 Filter archive files as sequence 2022-02-05 17:27:28 -05:00
Midyan Hamdoun
319e4360c8 Display correct string on FAB 2022-02-05 17:26:57 -05:00
Ivan Iskandar
7108993936
Unify reader error layout (#6512)
So nobody will think that the error layout is broken when they see different
layout.
2022-02-02 21:41:20 -05:00
Ivan Iskandar
b6553bdc34
ReaderActivity: Fix transition crash on Android 8 (#6542) 2022-02-02 21:40:48 -05:00
arkon
19fe689969 Revert "Temporarily revert some things for stable release"
This reverts commit b88f8ae9d2.
2022-02-01 12:32:27 -05:00
arkon
b88f8ae9d2 Temporarily revert some things for stable release 2022-02-01 12:31:47 -05:00
arkon
408c7b2ca6 Avoid unnecessary transition setup in reader if not transitioning 2022-02-01 10:31:44 -05:00
Andreas
271253fd0b
Fix app crashing when opening ReaderActivity with FAB (#6535) 2022-02-01 10:30:17 -05:00
Ivan Iskandar
5348154c42
TachiyomiAppBarLayout: Ignore inset visibility (#6533)
For resume button animation
2022-02-01 09:51:14 -05:00
arkon
e1b1f4f3fc Avoid trying to open links in invalid Huawei app 2022-02-01 09:48:37 -05:00
arkon
75a2110626 Update preference dependencies 2022-01-31 18:13:57 -05:00
arkon
59cba2533c Revert "Disable update/download warnings for stable release"
This reverts commit 3da8677e32.
2022-01-31 16:03:42 -05:00
arkon
3da8677e32 Disable update/download warnings for stable release 2022-01-31 15:28:14 -05:00
arkon
8c4ece4b2d Fix selection state appearance in clear database list (fixes #6526) 2022-01-31 15:01:01 -05:00
arkon
bf3bb8a378 Remove more formatting span types in SearchView (maybe fixes #6495) 2022-01-30 10:51:49 -05:00
Ivan Iskandar
cf5e60f8eb
MangaSummaryView: Fix incomplete description on tablet ui (#6518) 2022-01-30 10:47:53 -05:00
arkon
7de707c60a Avoid invalid unset default browser (fixes #6520) 2022-01-30 10:46:46 -05:00
Ivan Iskandar
5cd11ad8c3
Fix bottom nav showing on resume when action mode is active (#6514) 2022-01-29 13:55:33 -05:00
arkon
6bba52a2b6 Always try to use default browser when opening custom tabs on all Android versions 2022-01-29 10:12:46 -05:00
Ivan Iskandar
a68f123594
TachiyomiAppBarLayout: Use insetter to handle inset (#6506)
This requires adding the status bar foreground drawing logic since the parent
class wouldn't know the inset changes anymore.
2022-01-28 10:14:13 -05:00
Rajat
77a3acf5cc
Fix search inputs accepting formatted text (#6501)
* Fix Global and extension search input accepts formatted text #6495

* Code change as requested because of performance issue

* code changes as requested

* minor code changes
2022-01-26 23:37:26 -05:00
Riztard Lanthorn
dea585e69b
add extra space before error in log description (#6505)
to make it easier to read if the log reader using word wrap
2022-01-26 23:29:38 -05:00
arkon
879dacfba6 Copy source ID to clipboard when long pressing source in migrate list (closes #6479) 2022-01-26 23:00:43 -05:00
arkon
b459234ddc Try to show more relevant exception messages when failing to restore a backup 2022-01-26 22:43:27 -05:00
arkon
76d2c676fd Discard backup file if it fails to be created properly (e.g. fails validation) 2022-01-26 22:32:06 -05:00
arkon
d5015d37e1 Show error toast if empty URI is passed when trying to create/restore a backup 2022-01-26 22:31:28 -05:00
arkon
1b71e4cee7 Write job failure exceptions to error log 2022-01-26 22:21:01 -05:00
arkon
adab8e3ed8 Allow choosing browser apps from WebView even when extension deep links are verified in Android 12+ 2022-01-24 09:26:08 -05:00
arkon
89dbb4d300 Avoid migration failing if previous source doesn't exist 2022-01-23 17:21:23 -05:00
arkon
e3f3686b8a Allow Samsung devices on Android 12+ to use dynamic theme
Since it seems to work fine, regardless of what the Material Components library seems to dictate.
2022-01-22 14:53:12 -05:00
Gauthier
cd7cf3583e
fix: handle Komga tracks during manga migration (#6463)
* fix: handle Komga tracks during manga migration

closes #6354

* refactor: remove Komga direct reference
2022-01-22 14:25:05 -05:00
Andreas
66a180bc36
Add ability to open FAQ and Guide, and Changelog in extension repository (#6469) 2022-01-22 14:17:43 -05:00
arkon
0ff8966a27 Fix pages not being serializable for chapter cache (fixes #6483) 2022-01-20 17:48:25 -05:00
arkon
2cc6794db5 Revert "Update core-splashscreen (#6471)"
This reverts commit 46ec655db5.

This broke the background color in Android 12+.
2022-01-18 22:51:43 -05:00
arkon
edd213343b Remove some dead code 2022-01-18 17:54:17 -05:00
Ivan Iskandar
46ec655db5
Update core-splashscreen (#6471) 2022-01-18 17:51:14 -05:00
Ivan Iskandar
769efd9d06
HistoryController: Drop first search event (#6465)
Removes unnecessary data set changes when entering history screen
2022-01-14 22:25:05 -05:00
Ivan Iskandar
49cb3b6aa7
MangaInfo: Don't apply appbar padding on tablet ui (#6464) 2022-01-14 22:24:55 -05:00
arkon
8a8f1d3205 Update crop border shortcut state when reading mode or manga set (fixes #6441) 2022-01-09 10:53:06 -05:00
arkon
4a27f0546c Fix bottom nav being visible when resuming app (fixes #6012) 2022-01-09 10:26:51 -05:00
arkon
2b5e8241ab Fix more crashes 2022-01-08 16:23:55 -05:00
arkon
3dc4fd8dd1 Make tracker status wording/ordering more consistent 2022-01-08 15:49:39 -05:00
arkon
375a27a93d Add new manga statuses
To be exposed in extension-lib 1.3
2022-01-08 15:39:45 -05:00
arkon
544387d1a0 Avoid reader crash 2022-01-08 15:06:44 -05:00
Ivan Iskandar
78a261f5d3
Reduce stutter when entering Browse screen (#6435)
* More coil

* ExtensionController: Drop first text change event

* Browse-Source: Remove unnecessary load

* ExtensionPresenter: Increase debounce timeout

To avoid heavy list reload during first enter animation
2022-01-08 12:55:22 -05:00
Ivan Iskandar
b8f7653fb2
Use material components on reader error views (#6447)
* Use material components on reader error views

* Adjust image loading behavior

Don't set automatic background color right away and keep show progress indicator
until the page image is fully loaded.
2022-01-08 12:53:20 -05:00
Andreas
560be9f553
Remove clutter in main (#6437) 2022-01-06 22:54:51 -05:00
arkon
47723042c5 Fallback to preference title if dialog title isn't set 2022-01-06 22:53:54 -05:00
arkon
d04d676d2f URL encode Kitsu search queries (fixes #5712) 2022-01-05 17:43:11 -05:00
jmir1
2e1572d7cc
fix crash in ReaderActivity (#6439) 2022-01-04 21:29:14 -05:00
arkon
938339690e Custom Cloudflare failure exception to avoid user-facing "java.lang.Exception" text 2022-01-02 17:57:20 -05:00
arkon
dbb2c523c1 Avoid crashes in tracker interceptor errors 2022-01-02 17:56:49 -05:00
arkon
0b9d436753 Fix some crashes 2022-01-02 11:25:35 -05:00
arkon
c4a476d0d2 Handle renaming existing downloaded CBZ chapters on update 2022-01-01 15:22:03 -05:00
Seishirou101
5336c5b46e Add compress to CBZ on download (#6360) 2022-01-01 14:46:43 -05:00
Mohit Mandalia
22615f5981
Fixes descriptive notification message for errors (#6413)
* Fixes descriptive notification message for errors
Fixes #6401

* Fixes descriptive notification message for errors
Fixes #6401
2022-01-01 13:13:44 -05:00
arkon
bdf4b4b679 Add AppInfo functions to replace BuildConfig usages in extensions 2022-01-01 11:30:18 -05:00
arkon
548e300c4b Remove unused Nsfw annotation
Extensions now purely declare it through the Gradle config
2022-01-01 10:51:27 -05:00
arkon
8a5d8c96ef Remove explicit option to store downloads in app data folder
App data is typically deleted during app uninstallation, which some users are unaware of. The folder is also inaccessible externally by default in Android 11+, which is also annoying to users.
2022-01-01 10:44:27 -05:00
arkon
78c2631b6f Move preference extension functions to utils 2021-12-31 16:32:24 -05:00
arkon
7c246ffc71 Add link to troubleshooting guide in library update error log file 2021-12-31 15:16:44 -05:00
arkon
abfdde28ef Swallow observable errors instead of crashing 2021-12-31 13:21:32 -05:00
FourTOne5
fc3a200a63
Fix Crash while trying to search in Settings (#6397)
* Fix Crash while trying to search in Settings

* Use already provided categories
2021-12-31 13:21:05 -05:00
arkon
353485054e Fix some crashes 2021-12-28 16:53:35 -05:00
FourTOne5
800583b5e2
Actually Fix #6341 (#6392) 2021-12-26 15:45:29 -05:00
arkon
2db2b7348d Fix crash for bound intListPreferences 2021-12-26 15:44:34 -05:00
arkon
f3718257f5 Reduce redundancy in some preference declarations
The remaining ones could also be converted to FlowPreferences for this, but it's not really necessary.
2021-12-26 12:44:38 -05:00
Riztard Lanthorn
5500762acd
Update "Library updates restrictions" wording (#6371)
* Update "Library updates restrictions" wording

Co-Authored-By: OncePunchedMan <64155117+OncePunchedMan@users.noreply.github.com>
Co-Authored-By: nicki <72807749+curche@users.noreply.github.com>
Co-Authored-By: Soitora <simon.mattila@protonmail.com>
Co-Authored-By: FourTOne5 <59261191+FourTOne5@users.noreply.github.com>

* Update strings.xml

Co-Authored-By: loocool2 <36128021+loocool2@users.noreply.github.com>

Co-authored-by: OncePunchedMan <64155117+OncePunchedMan@users.noreply.github.com>
Co-authored-by: nicki <72807749+curche@users.noreply.github.com>
Co-authored-by: Soitora <simon.mattila@protonmail.com>
Co-authored-by: FourTOne5 <59261191+FourTOne5@users.noreply.github.com>
Co-authored-by: loocool2 <36128021+loocool2@users.noreply.github.com>
2021-12-26 11:49:27 -05:00
Ivan Iskandar
4c8f5e1f7a
Use animation to hide/show fab (#6385) 2021-12-26 11:38:35 -05:00
arkon
733cf99bb4 Fix incorrect locale name casing in extension details (fixes #6391)
Also closing https://github.com/tachiyomiorg/tachiyomi-extensions/issues/10007 since multisource extensions aren't really a thing anymore.
2021-12-26 11:35:28 -05:00
arkon
58c2f22120 Truncate MAL search queries to first 64 characters (closes #6314)
Is it worth telling the user? ¯\_(ツ)_/¯
2021-12-26 11:35:28 -05:00
FourTOne5
42accebeca
Case insensitive sort in extension list. (#6375)
* Sort Extension irrespective of it's name's case.

* Avoid creating unnecessary strings

Co-Authored-By: arkon <arkon@users.noreply.github.com>

Co-authored-by: arkon <arkon@users.noreply.github.com>
2021-12-24 14:55:11 -05:00
arkon
1c5c370c12 Avoid unnecessary string creation when sorting 2021-12-24 10:26:24 -05:00
arkon
448645d83a Don't recompute constant device info 2021-12-24 10:25:02 -05:00
arkon
7edf7a434f Avoid crash on Samsung devices on Android 12
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2021-12-24 09:42:45 -05:00