Commit graph

100 commits

Author SHA1 Message Date
Ahmad Ansori Palembani
cae0332ef9
refactor(library): Store sectioned library instead of flatten version of it (#336)
* refactor(library): Store sectioned first before flattening it out

* fix: Fix build, also rename some variables and move stuff around

* chore: Replace findCurrentCategory with currentCategory getter

* fix: Empty category can't be collapsed

* chore: Disable file log for debug build

* fix: Entry always displayed on default category

* refactor: Specify id, source, and url directly from MangaImpl constructor

* refactor: Make LibraryManga not extend MangaImpl

* refactor: Separate placeholder from LibraryManga

* fix: Default category should always be at the very beginning

* fix: Accidentally made the entries invisible

* fix: Default category disappear everytime a new category is added
2025-01-05 18:15:34 +07:00
e65497baef
fix: Don't log everything to log files unless verbose logging is enabled 2024-12-22 10:42:08 +07:00
a6e5b41d7d
chore: Disable FlexibleAdapter verbose log 2024-12-22 10:16:55 +07:00
b974eff320
debug: Verbose logging for FlexibleAdapter 2024-12-20 13:19:36 +07:00
bfbc1f6742
chore(db): Clean up unused StorIO relics 2024-11-30 09:08:43 +07:00
d7160db53a
fix: Add modified version of RollingFileLogWriter 2024-11-22 19:02:38 +07:00
5fa5815541
fix: Some attempt 2024-11-22 17:04:08 +07:00
cea9da9c6d
fix: Disable log file for now 2024-11-22 15:46:22 +07:00
53ea5bafee
fix: Log file is not being created 2024-11-22 15:31:15 +07:00
b1766ebb94
feat: Write logs to file 2024-11-22 12:57:52 +07:00
AntsyLich
fd73958923
feat: Add option to lower the threshold for hardware bitmaps 2024-11-20 23:31:53 +07:00
Ahmad Ansori Palembani
9d858cc810
refactor: Replace Injekt with Koin (Experiment) (#191)
* refactor: Use Koin

An experiment, aims to ditch Injekt and replace it with Koin while providing Injekt API facade for extensions

* fix: Mimic "InjektScope"

* fix: Mimic more classes

Completely fixed source search

* refactor(deps): Use Injekt-Koin library

* fix(r8): Keep Koin
2024-09-19 13:18:02 +07:00
5a1a7063b2
feat: Verbose logging 2024-09-02 09:40:54 +07:00
839f762fa7
refactor(cover): Data class for manga cover 2024-08-18 18:44:04 +07:00
103fae06d3
refactor(coil): Simplify cover fetcher code
Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2024-08-18 11:33:26 +07:00
653b2d7839
refactor(cover): Adjust cover (memory) cache key
Hopefully fix library image flickering on resume/bind
2024-08-17 11:45:15 +07:00
df66327996
chore(coil): Remove explicit memoryCache config 2024-08-17 09:59:23 +07:00
d3149abf9c
chore: Remove unused migrations
Yokai earliest version starts at version code 111 anyway, so older
migrations are basically useless
2024-08-14 07:14:37 +07:00
arkon
859674681a
enhance: Limit parallelism for Coil image loading
REF: https://www.reddit.com/r/androiddev/comments/xbeizp/comment/io4ytdv/

Co-authored-by: ivaniskandar <ivaniskandar@users.noreply.github.com>
2024-07-10 12:18:34 +07:00
5785550e75
chore(deps): Bump coil version and some code reformat 2024-07-10 12:09:41 +07:00
Ahmad Ansori Palembani
875100dd6c
refactor: Migrate i18n to use Moko Resources (#110)
* fix(deps): "String index out of range" compile error

REF: https://github.com/icerockdev/moko-resources/issues/732

* refactor(i18n): Simplify gradle

* refactor: Migrate i18n files to moko-resources

Also split plurals to their own files

* fix: Only use firebase on releases

* revert: Revert "fix: Only use firebase on releases"

This reverts commit e4f40b450a.

* ci: Just build standard release

* refactor: Fully migrate to Moko Resources for i18n
2024-06-24 13:46:42 +07:00
2b46f94a5a
revert: Revert "Revert "Modularize the app""
This reverts commit f59f2346dc.
2024-06-16 18:44:15 +07:00
f59f2346dc
revert: Revert "Modularize the app"
Epic fail, not sure what happened, but I am sure that I don't want to spend the rest of the day debugging no error crash, I'll just try again later. It is what it is, I guess...
2024-06-16 13:26:29 +07:00
fffebbcc78
refactor: Change package namespace to just "yokai" 2024-06-16 11:36:37 +07:00
573015a4b9
refactor: Rewrite migrator
Should also fixed auto-backup, auto-update, and update checker being stuck when it failed

Co-authored-by: Andreas <andreas.everos@gmail.com>
2024-06-15 11:34:29 +07:00
a8b1c7f05e
refactor: Implement the log writer myself
Kermit's official crashlytics integration enable firebase way too early.
2024-06-13 18:52:47 +07:00
3b2fa5d542
chore(deps): Update and Kermit Crashlytics 2024-06-12 08:50:48 +07:00
555bcecfbc
refactor: Use Kermit instead of Timber 2024-06-09 15:44:21 +07:00
d60b66ac9f
enhance: Load GlobalExceptionHandler before Crashlytics 2024-06-06 06:49:26 +07:00
55455090d1
refactor: Grab extension repo detail from repo.json and include in DB
Co-authored-by: Matthew Witman <mnwranger@gmail.com>
2024-06-05 05:21:51 +07:00
c602b913e8
refactor: Separate di module for domain 2024-06-04 09:28:29 +07:00
e62c781c86
refactor: Move di to dev.yokai.core.di 2024-06-04 09:15:47 +07:00
32ab87df61
refactor: Use Okio instead of java.io pt.1
This is the easy part... the next part is hell :')
2024-05-29 19:49:01 +07:00
4f59fbae07
fix: Actually make AppState singleton 2024-05-28 12:04:04 +07:00
6b47578354
feat: Add CrashActivity 2024-05-27 17:46:50 +07:00
6e84ddcb04
refactor: Move coil packages out of image dir 2024-05-24 07:17:40 +07:00
1c798b3a25
refactor: Move CoilSetup to App 2024-05-24 07:14:38 +07:00
e32f7225a3
refactor: Use App as context 2024-05-23 20:42:20 +07:00
3412806bfc
refactor: Switch to Coil3 2024-05-23 20:38:59 +07:00
d05c0dbeda
fix: Hopefully fix race condition 2024-02-11 08:14:42 +07:00
e8f32f192e
refactor: Split preference and app di module 2024-01-11 11:54:08 +07:00
af87ccf8f1
refactor: Migrate to upstream's preference abstraction 2024-01-10 17:07:58 +07:00
Jays2Kings
83969b84c3 More fixes to targeting A14 2023-09-27 13:11:41 -07:00
Jays2Kings
3140361452
Targeting SDK 33 (Android 13) (#1525)
* starting workmanager updates

* Update Download service to download job

Also making downloader use suspend methods like upstream

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

* Make BackupRestorer a job

* Make LibraryUpdateJob a datasync service type

* Changing Extension auto installer to a job instead of service

* Changing App auto installer to a job instead of service

With it theres no more services, and nearly ready to up the target sdk

* Add runtime permission for notifications

Shows permission when adding to library, seeing the app update in app prompt, or loading library or recents
Tries to show the permission again (or a warning message) when trying to restore a backup or set library update timing
Same warning messages shows when not allowing notifications

* Set target sdk to 33

we made it.

* Clean up ContextExtensions

* Add notification check for incognito mode

* Add last updated timestamp to updates job

* Update LibraryUpdateJob.kt

minor changes to the notifier's placeholder, and making sure it uses localeContext for versions under A13

* update channel logic in library updater

* Change library update channel to just take a Long instead a whole Manga

* Use extensionManager flow in ExtensionInstallerJob

* Update MainActivity.kt

* Fixes to downloadFlow

* reworking running extensions after library update logic

* Change update channel to shared flow in library job

* More updates to the library updates flow

no longer using a suspend, instead holding a buffer for the flow

* updates to the flow in extensionInstaller

from state to shared, also using "tryEmit" less for it

* Fix extension auto installing notification not dismissing/dismissable

* Version 1.7.0

* Update AppDownloadInstallJob.kt

* Refactor DownloadJob

* Version 1.7.0-b02

* Fix uninstalling extensions not refreshing the list

* Show notification permission prompt when pressing update all

* Chunked the extension install job in case too many extensions are being updated at once

The limit is around 62 extensions, but to be safe it runs 32 per job (which jobs still update 3 at a time)

Closes #1584

* Update Java Version

---------

Co-authored-by: Ivan Iskandar <12537387+ivaniskandar@users.noreply.github.com>
2023-07-31 16:19:43 -04:00
Jays2Kings
cd699a17dc Remove arca in favor of crashlytics 2023-03-21 16:03:13 -04:00
Jays2Kings
5c0c1aaf88 Update Widget on app start 2023-03-16 16:06:25 -04:00
Jays2Kings
da5939acec Fix biometrics not being prompted
Fixes #1472
2022-12-22 18:31:01 -05:00
Jays2Kings
4f0caca3c0 hinge support 2022-12-15 18:55:39 -05:00
Jays2Kings
30b4b589e0
App language change (#1370)
* Add back option to change app langauge

Courtesy of AndroidX/Appcompat
On Android 13, it uses the native methods (at least for now) Also adding locales config file to only list supported languages in android app info's setting

A bit about this for A12 and under, an app restart is needed right now when switching from LTR to RTL or vice versa, not sure if later versions of androidx app compat will change this

* stop using preference context for strings (when possible)

which fixes some of the language issues on a12 and under

* Fixes to timespanfromnow method

now respect set language

* Dont show langauge selector on android 6

it doesn't work so rip

* Filter out unsupported locales in language selector

* appcompat -> 1.6.0-beta01

* Set notifications to use app language

* Add beta tag to language

* Update ExtensionHolder.kt
2022-08-17 14:57:47 -04:00
Jays2Kings
0764012b87 More gradle updates + remove tests
junrar -> 7.5.0
firebase -> 20.1.2
acra-http -> 5.9.3
java-string-similarity -> 2.0.0
com.google.guava (added)

Same as upstream, been broken for a while
2022-05-02 15:30:38 -04:00