Commit graph

309 commits

Author SHA1 Message Date
Ivan Iskandar
3b62396442
Setup Baseline Profile (#8135)
* Setup Baseline Profile

Adds Baseline Profile generator and startup time test.
Readme included in macrobenchmark module to run the generator.

* changes
2022-10-04 09:22:55 -04:00
Andreas
29fa93e829
Split the rest of the preferences in PreferencesHelper (#8074)
* Split the reset of the preferences in PreferencesHelper

* Capitalize ThemeMode
2022-09-25 10:07:06 -04:00
Andreas
b5dca2eb09
Move chapter preferences from PreferencesHelper to LibraryPrefrences (#8061) 2022-09-24 10:14:16 -04:00
Andreas
0086743a53
Use 1.x preference abstraction (#8020)
* Use 1.x preference abstraction

- Uses SharedPreferences compared to 1.x impl which uses DataStore but it breaks all settings screens currently
- Move PreferencesHelper to new PreferenceStore
  - PreferencesHelper should be split into smaller preference stores and be in core or domain
- Remove flow preferences as new PreferenceStore handles changes for us

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

* Fix PreferenceMutableState not updating

* Fix changes not emitting on first subscription

Co-authored-by: inorichi <3521738+inorichi@users.noreply.github.com>
2022-09-17 11:48:24 -04:00
arkon
829aadd0bd Always attempt automatic backup creation
- Defaults to every 12 hours
- Minimum number of backups is now 2, just to offer some level of redundancy in case something happens
- If it's missing storage permissions, it'll fail but that's the user's loss if they somehow haven't granted that permission yet
2022-09-15 22:53:46 -04:00
Andreas
86fe850794
Extract source api from app module (#8014)
* Extract source api from app module

* Extract source online api from app module
2022-09-15 18:12:27 -04:00
Andreas
d5c207d8a3
Extract translation from app module (#7975)
* Extract translation from app module

- Prep for further extraction to modules in the nearish future

* Subproject .gitignore
2022-09-10 09:58:45 -04:00
Ivan Iskandar
fb9791f597
DownloadController: Partial Compose conversion (#7969)
Item list is not changed as currently there is no fitting Compose component to
replace the drag-drop behavior.
2022-09-09 22:29:40 -04:00
arkon
4c1da1bd1d Maybe fix extensions list crash
Also fix weird animation of last updated text in Updates
2022-08-31 15:56:08 -04:00
Andreas
880407442c
Tweak flag classes for Library (#7829)
* Tweak flag classes for Library

- Add interface for Flag and Mask
- Merge Sort Type and Direction into one class
- Use custom serializers for preferences
  - Mainly to not break the old

* Review changes
2022-08-29 13:10:30 -04:00
Andreas
a83d29f058
Add APK output for x86_64 CPU architecture (#7885)
* Add APK output for x86_64 CPU architecture

* Review changes

* Fix formatting

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>

* Use underscore instead of hyphen

Co-authored-by: stevenyomi <95685115+stevenyomi@users.noreply.github.com>
2022-08-28 09:45:33 -04:00
stevenyomi
e36e9d9d5c
Remove 1.x source models (#7781) 2022-08-18 14:07:13 -04:00
Andreas
09abfc7843
Lint changes (#7802)
- Fixes current lint issues
- Changes lint task to lintKotlin on PRs
2022-08-18 14:06:32 -04:00
arkon
1d6aa9a277 Merge branch 'patch'
# Conflicts:
#	app/build.gradle.kts
#	app/src/main/java/eu/kanade/tachiyomi/data/database/DbOpenCallback.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/database/models/Manga.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/notification/NotificationReceiver.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/saver/ImageSaver.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/util/ExtensionInstallReceiver.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/base/controller/SearchableNucleusController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/MigrationFlags.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/migration/search/SearchPresenter.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/browse/source/browse/BrowseSourceController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/library/LibraryController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/AddDuplicateMangaDialog.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/manga/MangaController.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ChapterLoader.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderPageImageView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/ReaderTransitionView.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/webview/WebViewActivity.kt
#	app/src/main/java/eu/kanade/tachiyomi/util/chapter/ChapterSorter.kt
#	app/src/main/res/layout/pref_settings.xml
#	app/src/test/java/eu/kanade/tachiyomi/util/chapter/ChapterRecognitionTest.kt
#	gradle/androidx.versions.toml
#	gradle/libs.versions.toml
2022-08-14 11:28:28 -04:00
Andreas
4291cc8eb1
Add task to generate locales_config.xml (#7754) 2022-08-14 10:43:28 -04:00
arkon
8811d951d0 Release v0.13.6 2022-08-14 10:32:04 -04:00
arkon
3966a917ee Bump dependencies + compile SDK to 33 + linting 2022-08-13 12:52:18 -04:00
arkon
4a71022a60 Update chapter recognition and related tests
Includes 3e07100dc2

Co-authored-by: Saud-97 <Saud-97@users.noreply.github.com>
2022-08-13 12:37:02 -04:00
arkon
d6f1534ee8 Address misc. build warnings 2022-08-10 23:26:34 -04:00
arkon
a2bb81b7db Start cleaning up backup/restore code
The abstraction was useful for handling 2 systems, but it's no longer needed. Cleaning it up will make migrating to domain models easier down the line.
2022-08-05 23:11:06 -04:00
arkon
bfd22f8f2d Minor gradle cleanup 2022-07-31 11:55:53 -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
arkon
7336714306 Bump dependencies and remove some unneeded opt-in compiler flags 2022-07-27 09:26:40 -04:00
Andreas
fc328e141c
Remove unused dependencies (#7585) 2022-07-23 08:54:08 -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
arkon
ab1a44e108 Merge branch 'patch' 2022-07-08 16:09:19 -04:00
arkon
26ddc6e3aa Release v0.13.5 2022-07-08 15:52:48 -04:00
Andreas
17951cfd68
Use SQLDelight for all Manga related queries (#7447) 2022-07-03 10:17:41 -04:00
Andreas
5d77ee37d2
Replace package with namespace (#7436) 2022-07-02 13:08:22 -04:00
arkon
7e4c45858f Bump dependencies 2022-06-29 22:45:22 -04:00
Ivan Iskandar
33a778873a
MangaController overhaul (#7244) 2022-06-25 11:03:48 -04:00
arkon
cd0294b1b6 Replace history query with actual upsert 2022-05-29 12:12:06 -04:00
Ivan Iskandar
3b2362c784
Add scrollbar indicator to LazyColumn (#7164) 2022-05-23 18:03:46 -04:00
Andreas
3e2d7d76b9
Convert Extension tab to use Compose (#7107)
* Convert Extension tab to use Compose

Co-authored-by: jobobby04 <17078382+jobobby04@users.noreply.github.com>

* Review changes

Co-authored-by: jobobby04 <17078382+jobobby04@users.noreply.github.com>
2022-05-15 09:59:53 -04:00
Andreas
6d011ebe32
Update AndroidX SQLite (#7123) 2022-05-14 10:04:43 -04:00
arkon
681e9396b3 Fix crash when using renamed library sort methods (fixes #7092) 2022-05-07 23:48:53 -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
a5d767042c Update compiler flag args 2022-04-28 18:09:16 -04:00
arkon
f1126c55ca Add Plumber to handle some system leaks automatically 2022-04-24 16:28:09 -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
558b18899c Migrate WebViewActivity to Compose 2022-04-24 10:22:22 -04:00
arkon
d6c87ec10e Basic initial port of About screen to Compose 2022-04-23 12:05:00 -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
42eaaa497f Release v0.13.4 2022-04-22 17:29:18 -04:00
arkon
96c894ce5b Revert history Compose/SQLDelight changes 2022-04-22 17:27:58 -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
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
28522f4f90 Release v0.13.3 2022-04-15 16:37:25 -04:00
arkon
80635343ae Update ACRA 2022-04-11 23:04:07 -04:00
arkon
2b38b4e022 Release v0.13.2 2022-04-10 12:17:45 -04:00
arkon
2dfafa387b Remove reader tapping option in favor of disabled nav layouts 2022-04-08 16:44:13 -04:00
arkon
c06ad8b87e Stop using custom tabs (closes #6821) 2022-03-26 15:45:58 -04: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
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
Andreas
f312936629
Use Version Catalog & clean up Gradle files (#6728) 2022-03-04 09:58:31 -05:00
arkon
29c5c0af50 Update Material Components 2022-02-25 18:08:42 -05:00
arkon
ae2a6a3d4f Update dependencies 2022-02-12 10:11:03 -05:00
arkon
299e52e877 Allow disabling secure screen when incognito mode is on 2022-02-05 18:51:08 -05:00
arkon
d6386cef41 Release v0.13.1 2022-02-01 12:32:21 -05:00
arkon
75a2110626 Update preference dependencies 2022-01-31 18:13:57 -05:00
arkon
a6ac2fbc9a Release v0.13.0 2022-01-31 15:32:08 -05:00
arkon
18ef5c6ff9 Update to AGP 7.1.0 2022-01-25 22:49:50 -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
0cb4094dd9 Update dependencies 2022-01-18 18:03:16 -05:00
Ivan Iskandar
46ec655db5
Update core-splashscreen (#6471) 2022-01-18 17:51:14 -05:00
arkon
cb8120d38f Update to Conductor 3.1.2 2022-01-08 15:01:42 -05:00
arkon
47723042c5 Fallback to preference title if dialog title isn't set 2022-01-06 22:53:54 -05:00
arkon
3435636ca0 Replace use-experimental Kotlin compiler flags with opt-in 2022-01-05 17:43:11 -05:00
arkon
2d03f3ce1e Add QuickJS dependency to eventually replace Duktape 2022-01-02 11:25:23 -05:00
arkon
9801f1edfa Update analytics dependencies 2021-12-31 13:21:31 -05:00
arkon
c3a0de7fab Update dependencies 2021-12-24 09:45:56 -05:00
arkon
818fe50f77 Combine global update item restrictions 2021-12-17 09:57:37 -05:00
arkon
aeff846e1f Update dependencies 2021-12-16 23:00:04 -05:00
arkon
ba1a2e9942 Remove Gson dependencies
All official extensions no longer use Gson and Kotson
2021-12-12 18:06:04 -05:00
Carlos Ruiz
0a6160d7cf
Add sui support (#6318)
* Update shizuku api version

* SettingsAdvanced Controller: Verify if Sui is available
2021-12-05 11:19:37 -05:00
arkon
32f3a50def Update dependencies 2021-12-02 23:09:38 -05:00
arkon
e1a43d2e7d Update dependencies 2021-11-28 14:24:43 -05:00
arkon
3153071a8a Update to Conductor 3.1.1 2021-11-19 14:06:11 -05:00
Ivan Iskandar
bdef2cfdfb
Replace Resume FAB reveal animation with container transform (#6250) 2021-11-19 10:16:39 -05:00
arkon
b4ba56bfb4 Update dependencies 2021-11-18 10:42:09 -05:00
arkon
bfcc883f01 Update dependencies 2021-11-11 16:25:45 -05:00
arkon
f28dd4f4de Disable some unnecessary build features 2021-11-07 09:20:13 -05:00
arkon
55b64899f5 Update dependencies 2021-11-07 09:20:00 -05:00
arkon
f8b2c79aef Update dependencies 2021-10-28 22:40:53 -04:00
arkon
5b3bd3f470 Remove jcenter usage (closes #4387) 2021-10-18 12:39:41 -04:00
arkon
9e2ef82902 Remove global update intervals below 12 hours, add every 3 day interval
Users with smaller libraries have a lower change of getting updates frequently. "Power users" are actively hurting sources by updating frequently.
2021-10-18 10:02:18 -04:00
arkon
a8c8f15e07 Update dependencies 2021-10-16 10:21:25 -04:00
Jays2Kings
e621f4e2fa Add migration to add "all" to enabled langauges
Co-authored-by: Jays2Kings <Jays2Kings@users.noreply.github.com>
2021-10-13 09:18:43 -04:00
arkon
ef918078d1 Update dependencies 2021-10-09 10:40:30 -04:00
Ivan Iskandar
7e61900cf5
Add new build type for weekly preview (#6067)
This adds new build type for minified non-debuggable preview builds.
"debugFull" is removed and "debug" will be unminified.

**It means preview build action needs to be updated to build "standardPreview"**
2021-10-09 10:28:43 -04:00
Ivan Iskandar
2e127dff1f
Replace Timber with Square Logcat and make logging configurable (#6062)
* Replace Timber with Square Logcat

* Configurable logger
2021-10-07 22:12:55 -04:00
arkon
f5b591430c Release v0.12.3 2021-10-04 15:55:06 -04:00
arkon
afc400121b Update dependencies 2021-10-01 18:28:02 -04:00
arkon
07771cb5e4 Update kotlinx.serialization 2021-09-25 14:41:48 -04:00
Ivan Iskandar
b284384f0a
Implement new extension install methods (#5904)
* Implement new extension install methods

* Fixes

* Resolve feedback

* Keep pending status when waiting to install

* Cancellable installation

* Remove auto error now that we have cancellable job
2021-09-25 14:31:52 -04:00
arkon
9de08c8166 Update dependencies 2021-09-20 14:33:35 -04:00
arkon
3eec207166 Release v0.12.2 2021-09-13 15:10:41 -04:00
arkon
e942b8a402 Read from streams for local source manga details and legacy backups 2021-09-06 11:54:00 -04:00
arkon
c316e7faab Migrate to flow version of ReactiveNetwork 2021-09-04 10:38:12 -04:00
arkon
2d3a1b6a9e Update dependencies 2021-09-04 10:09:33 -04:00
arkon
9d1f6c4416 Update Material Components 2021-08-31 17:51:24 -04:00
arkon
a3917972b4 Update deprecated Android Gradle DSL calls 2021-08-22 18:05:18 -04:00
arkon
9a45983f17 Update dependencies 2021-08-22 11:48:57 -04:00
arkon
f8a7efbce7 Update jsoup 2021-08-20 22:42:21 -04:00
arkon
96a64c7bd2 Update dependencies 2021-08-13 18:18:22 -04:00
arkon
1d10d29fa9 Replace AboutLibraries activity with custom controller 2021-08-07 11:50:20 -04:00
arkon
9b00e91773 Reorganize dependencies a bit 2021-08-07 10:50:50 -04:00
arkon
cd73c30d6f Remove explicit CardView dependency 2021-08-07 10:50:40 -04:00
arkon
7bbba0c7d9 Update Duktape 2021-08-07 10:50:26 -04:00
arkon
2f94f62a56 Merge branch 'fix-12' into master
# Conflicts:
#	.github/ISSUE_TEMPLATE.md
#	.github/ISSUE_TEMPLATE/report_issue.yml
#	.github/ISSUE_TEMPLATE/request_feature.yml
2021-08-06 17:33:24 -04:00
arkon
85791a9336 Release v0.12.1 2021-08-06 17:31:22 -04:00
arkon
b9736df7e0 Re-enable preview build things 2021-08-06 15:38:16 -04:00
arkon
f48b2681e3 Release v0.12.0 2021-08-06 15:37:42 -04:00
arkon
4d92caacef Dependency updates 2021-08-06 13:40:01 -04:00
arkon
16b9c459ab Update Coil 2021-07-30 18:15:10 -04:00
arkon
d019c5999b Update for AS Arctic Fox 2021-07-28 15:18:17 -04:00
arkon
f2fca0f13d Remove unnecessary MultiDex library 2021-07-24 11:54:53 -04:00
Ivan Iskandar
05e7b0dc22
Fix splash screen icon on Android 12 (#5565)
* Use Core Splashscreen for splashscreen stuff

* Keep splash screen until activity ready

Ready as in the data inside starting screen is finished showing

* Use custom splash screen exit animation on older android version

* Add splash screen minimum duration to prevent exit jank

* Fix broken AMOLED theme

* Improvements
2021-07-17 12:06:15 -04:00
Ivan Iskandar
ef84ed4982
Bump compileSdk to 31 (#5563) 2021-07-16 09:18:32 -04:00
Ivan Iskandar
ae97bb0445
Replace material-dialogs usage with Material Components' (#5423)
* Use Material Components' dialogs

For all dialogs that has direct replacement.

* Convert text input dialogs

* Convert quad-state multi choices dialogs

* Convert date picker dialogs

This also changes the flow to remove selected start/finish tracking date and
the track item itself

* Remove material-dialogs dependencies
2021-07-14 18:04:03 -04:00
arkon
ef9c457681 Update jsoup and Coil 2021-07-12 11:54:06 -04:00
arkon
714aa4b4ba Update dependencies 2021-07-09 17:50:01 -04:00
arkon
67128937ca Update dependencies 2021-07-08 18:16:51 -04:00
w
49cdcc644c
Update image decoder to add JPEG XL support (#5512) 2021-07-07 18:11:20 -04:00
arkon
c50ede8b2c Add back android-process-button library
wtf Android Studio, thanks for lying to me.
2021-07-04 12:20:32 -04:00
arkon
ba0907ae59 Update dependencies; remove unused android-process-button library 2021-07-04 12:16:12 -04:00
arkon
01a1a9ebab Update to Conductor 3.0.0 2021-07-03 12:50:10 -04:00
arkon
d645507eeb Update dependencies 2021-07-02 22:47:25 -04:00
arkon
0cb042cd93 Remove en-GB option since we don't actually localize different English locales 2021-07-02 09:02:28 -04:00
Andreas
60890147c3
Sort per category (#5408)
* Add flags for sorting per category

* Add logic to LibrarySettingsSheet

* Add  logic to LibraryPresenter

* Minor tweaks

* Use enum instead of variables

Also deprecates LibrarySort in favour of the new enum classes

* Remove debug log and suppress deprecation

* Convert DisplayMode setting to enum

Also fix bug were adapter would get de-synced with the current per category setting

* Fix migration crashing app due to values being access before migration
2021-06-26 13:30:16 -04:00
inorichi
ef937f277e Update image decoder with better AVIF support 2021-06-22 12:58:35 +02:00
arkon
e5cdf74587 Downgrade WorkManager
Related to #5364
2021-06-14 17:07:38 -04:00
arkon
b03ebc1fa4 Update tablet UI
- Only used when width is >= 720dp instead of 600dp (typically 10" tablets)
- Fix fastscroll in manga view (fixes #5267)
2021-06-03 23:00:41 -04:00
arkon
db25a9ae4f Support AVIF and HEIF images (closes #4756)
Co-authored-by: inorichi <inorichi@users.noreply.github.com>
2021-06-02 22:59:02 -04:00
arkon
2b8347f899 Update dependencies 2021-06-02 22:51:26 -04:00
arkon
9299a4beff Generate APKs per CPU architecture 2021-06-01 09:55:10 -04:00
arkon
0f3f1e9226 Release 0.11.1 2021-05-31 19:35:52 -04:00
arkon
5b1fe3460f Release 0.11.0 2021-05-31 18:46:30 -04:00
arkon
2d8858edb4 Fix double free when when parsing webp images (fixes #5227)
Co-authored-by: inorichi <inorichi@users.noreply.github.com>
2021-05-29 13:19:37 -04:00
arkon
2c6bcb85a0 Dependency updates 2021-05-27 08:50:18 -04:00
arkon
fefa519486 Update ACRA 2021-05-27 08:49:47 -04:00
arkon
a1a4916abf Update dependencies 2021-05-25 17:48:31 -04:00
inorichi
a271c3726e Fix GIF detection on previous commit 2021-05-25 19:52:49 +02:00
inorichi
8c18a14dfd Display animated webp whenever possible, otherwise fallback to static image. Fixes #5139 2021-05-25 19:42:48 +02:00
arkon
3d89a317c1 Remove kapt 2021-05-24 22:17:14 -04:00
arkon
d8251224cb Use 1.x source-api artifact from Maven Central 2021-05-24 22:17:09 -04:00