Commit Graph

115 Commits

Author SHA1 Message Date
arkon
6663abebaf Clean up fetch interval tests a bit
Also limit the dates we look at to most recent 10 distinct dates only. Closes #9930
2023-09-17 12:06:17 -04:00
arkon
26c5d761da Add more replacement suspend functions for source APIs
These are basically 1-to-1 replacements for the existing RxJava APIs.
This will make the initial migration off of RxJava simpler. We'll
revisit the actual call flows in followup versions of the API.
2023-09-08 22:58:46 -04:00
arkon
d29b7c4e57 Switch to different ktlint plugin
Should be better at incremental builds.
To format, run `./gradlew ktlintFormat`.
2023-09-01 23:02:18 -04:00
arkon
87530f506e Limit amount of updates loaded for widget
Probably fixes #9868
2023-08-27 22:05:52 -04:00
KaiserBh
d2290107d3
Merge branch 'master' into sync-part-final 2023-08-27 12:59:10 +10:00
arkon
13dc54df70 Remove unused rxandroid dependency 2023-08-26 10:30:26 -04:00
arkon
74f74eef56 Don't run automatic backup or library update jobs if battery is low 2023-08-24 22:25:29 -04:00
KaiserBh
bedfbf3f71
Merge branch 'master' into sync-part-final 2023-08-13 19:19:47 +10:00
arkon
0a3ce8ebe4 Clean up SetFetchIntervalTest 2023-08-06 22:34:31 -04:00
KaiserBh
c4dc2c89cb
Merge branch 'master' into sync-part-final 2023-08-03 16:06:17 +10:00
arkon
10b0ef9b6d Dismiss extension update notification if all updates installed 2023-08-02 18:00:06 -04:00
KaiserBh
645505e1e9
feat: added google drive service.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-08-03 03:50:01 +10:00
KaiserBh
70452acdda
fix:conflict.
Signed-off-by: KaiserBh <kaiserbh@proton.me>
2023-08-03 01:13:39 +10:00
arkon
81cd765543 More refactoring of expected next update logic 2023-07-30 19:13:16 -04:00
arkon
59f7d2273f Fix unit tests 2023-07-29 16:26:51 -04:00
arkon
cd91ea9b77 Remove need for SQLDelight primitive adapters 2023-07-29 16:14:23 -04:00
arkon
fd30c0adcd Avoid showing duplicate entry dialog for same entry
Fixes #9772
2023-07-29 12:07:13 -04:00
arkon
3ad4f1114a Cleanup related to fetch interval display 2023-07-29 10:29:53 -04:00
Quang Kieu
cb639f4e90 Update Manga in Expected Period (#5734)
* Add Predict Interval Test

* Get mangas next update and interval in library update

* Get next update and interval in backup restore

* Display and set intervals, nextUpdate in Manga Info

* Move logic function to MangeScreen and InfoHeader

Update per suggestion

---------

Co-authored-by: arkon <arkon@users.noreply.github.com>
2023-07-28 23:10:02 -04:00
arkon
abae9bf37d Minor cleanup 2023-07-23 20:03:37 -04:00
arkon
ac306547a0 Bump dependencies 2023-07-18 19:12:04 -04:00
arkon
818471b7e1 Set start date when tracker is bound if any chapters are already read
Closes #6734
2023-07-16 15:01:04 -04:00
KaiserBh
a036e499b1 refactor: don't need device id. 2023-07-14 19:24:58 +10:00
Aria Moradi
1af1ce924d Merge branch 'master' into sync-part-1 2023-07-11 13:43:29 +03:30
arkon
87bdee5990 Move SettingsItems composables to presentation-core 2023-07-10 17:25:52 -04:00
arkon
9a817e49be Set proper defaults for new table columns 2023-07-10 16:44:48 -04:00
KaiserBh
a577f5534f
Database changes to support library syncing (#9683)
* feat: added migrations.

* feat: create triggers, account for new installs.

* feat: update mappers to include the new field.

* feat: update backupManga and backupChapter.

Include the new fields to be backed up as well.

* feat: add sql query to fetch all manga with `last_favorited_at` field.

* feat: version bump.

* chore: revert and refactor.

* chore: forgot to lower case the field name.

* chore: added getAllManga query as well renamed `fetchMangaWithLastFavorite` to `getMangasWithFavoriteTimestamp`

* chore: oops that's not meant to be there.

* feat: back fill and set last_modified_at to not null.

* chore: remove redundant triggers.

* fix: build error, accidentally removed insert.

* fix: build error, accidentally removed insert.

* refactor: review pointer, make fields not null.
2023-07-10 15:52:57 -04:00
arkon
8cc42bce5a Tweak chapter swipe directions and icon color 2023-07-08 15:55:53 -04:00
Aria Moradi
84eb68e1ba Split sync feature part 1
Co-authored-by: KaiserBh <kaiserbh@proton.me>
2023-07-06 14:08:05 +03:30
AntsyLich
fc4fd487f9
Increase update screen limit to 500 (#9599) 2023-06-10 15:38:56 -04:00
arkon
0d9f8e8743 Fix LibraryFlagsTest
Forgot to update these after LibraryDisplayMode was made to not be a flag.
2023-06-09 22:59:06 -04:00
arkon
405a75438a Remove per-category display mode
There seems to be little value in this feature, and juggling flag masks is annoying.
Per-category sorting is still a thing, but could be refactored away from the flag in the feature.
2023-06-04 16:59:21 -04:00
arkon
4c65c2311e Limit updates to 250 most recent chapters
Still limits to things within the past 3 months though.

Closes #9554
2023-05-28 16:48:22 -04:00
arkon
f48f212001 Minor cleanup 2023-05-27 23:27:02 -04:00
Quang Kieu
c90f344910
Add setting and calculate for update interval (#9399)
* Add Grace Period value and settings

* Add functions to calculate nextUpdate

* update per review

* Move more into SetMangaUpdateInterval, keep wrapper
2023-05-27 23:01:36 -04:00
FlaminSarge
4395202703
Fix StubSource param order to match previous SourceData order (#9485)
SourceData was replaced with direct StubSource usage but the param order was changed without changing the usage; fixing the param order as such.
2023-05-09 18:37:24 -04:00
Andreas
f63573f25f
Remove SourceData and use StubSource directly for database (#9429) 2023-05-03 10:33:05 -04:00
Andreas
02864ebd60
Move GitHub Release/App Update logic to data (#9422)
* Move GitHub Release/App Update logic to data

* Add tests for GetApplicationRelease

* Review changes
2023-04-29 22:14:49 -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
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
arkon
26f3995595 Consolidate missing chapters functions to domain module and add tests 2023-04-22 11:34:51 -04:00
arkon
d6b9711e45 Use Kotest matchers in other test classes 2023-04-15 09:54:06 -04:00
arkon
8ab7e63293 Add tests for MissingChapters function 2023-04-15 09:51:52 -04:00
arkon
1ff78173f7 Adjust missing chapters UI 2023-03-26 10:26:58 -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
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
abd23b6826 Set default automatic library updates to off 2023-03-19 17:14:51 -04:00
arkon
2769525b2c Always attempt to split tall images when downloading 2023-03-19 12:57:16 -04:00
arkon
bebd4be43d Move more things to domain/data modules 2023-03-07 22:38:02 -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
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
arkon
bd47eafeec Fix per-category sort/display affecting the wrong category 2023-02-23 13:54:08 -05:00
arkon
c0e2eb211d Fix occasional crash when opening library settings sheet
See https://stackoverflow.com/questions/47648689/sealed-classs-objects-mysteriously-becoming-null-when-referenced-by-other-compa
2023-02-21 12:25:46 -05:00
arkon
93523ef50b Remove dependency injection from core module and data module from presentation-widget module
Includes side effects:
- No longer need to restart app for user agent string change to take effect
- parseAs extension function requires a Json instance in the calling context, which doesn't necessarily need to be the default one provided by Injekt
2023-02-20 19:02:38 -05:00
arkon
07fdb74fbc Minor settings sheet cleanup 2023-02-18 19:00:19 -05:00
arkon
ee818bc7c5 Move chapter utils to domain module 2023-02-18 15:24:04 -05:00
arkon
f816196df2 Move more things to domain module 2023-02-18 15:14:04 -05:00
arkon
f2c48480b6 Move some interactors to domain module 2023-01-27 22:37:17 -05:00
Andreas
cdf242e8c8
Move more to data and domain modules (#8973) 2023-01-22 16:19:22 -05:00
arkon
d45fc1e245 Move more models to domain module 2023-01-22 11:04:50 -05:00
arkon
14500ba4f8 Move more repositories to domain module 2023-01-22 10:59:52 -05:00
arkon
345e9c2a9a Move more models to domain module 2023-01-22 10:54:28 -05:00
arkon
b53e24e0db Move more models to domain module 2023-01-22 10:37:13 -05:00
Andreas
d3a73fc228
Move Category model and repository to domain and data layer (#8967)
To keep the commit from being 100+ files the interactors wasn't moved.

The domain module like the data module uses `tachiyomi` instead of `eu.kanade.tachiyomi` for package names
2023-01-22 10:12:29 -05:00