Commit graph

53 commits

Author SHA1 Message Date
Cuong-Tran
707d9854ec
Change backup proto & improve code of backup/restore category related preferences (mihonapp/mihon#1726)
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit e1724d1aa0e3340e1404cfd80bd264831d86a879)
2025-02-26 10:29:59 +07:00
Cuong-Tran
4c08f61f68
Fix: ktlint config for SY code (#712)
* Add more editor configs and move ktlint config to it (mihonapp/mihon#1731)

(cherry picked from commit 34d1e6fa278846dd8eb6ea82c936818d4610d3c2)

* more ktlint config

* fix compile

* restore comment-wrapping

* restore all of them

* disable in gradle.kts

* cleanup

* remove filenamktlint_standard_filename

* fix filename

* remove unused EhAssets

* ktlint_standard_multiline-expression-wrapping

* property-naming & function-naming

* ktlint_standard_argument-list-wrapping

* fix argument-list-wrapping

* Improve  in case source is null

related to commit 343cd372

* comment

* comment

* comment

* comment

* comment

* comment

* comment

* comment

* Revert "Improve  in case source is null"

This reverts commit 08e317bb075b4b634f0c6f19f11eb78b99406e59.

* Revert "remove unused EhAssets"

This reverts commit e2cfc3e0c2b8d5b8bac41f2dfc4d9baef332f83e.

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2025-02-18 13:44:57 +07:00
MajorTanya
db3fa582ce
Add Infinix system app to list of invalid browsers (mihonapp/mihon#1684)
* Add Infinix system app to list of invalid browsers

`com.transsion.resolver` being picked by the system as a suitable
browser caused a Mihon user with an Infinix device to be unable to
open any links in browsers, including tracker login and opening a
WebView page in a real browser.

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* Add docstring to DeviceUtil.invalidDefaultBrowsers

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit bfc8320aa4720dc3b908aab1b8a1ffb99d43193b)
2025-02-04 19:30:44 +07:00
Cuong-Tran
747cd48abc
update website link (#655) 2025-01-26 02:04:20 +07:00
MajorTanya
42ac5e0e70
Always use software bitmap on certain devices (mihonapp/mihon#1543)
* Include Coil's broken hardware bitmap device list

Declares all listed devices as unable to use hardware bitmaps.

Might fix mihonapp/mihon#1541.

* Hide Hardware Bitmap Threshold setting if unusable

This hides the setting from the UI if the user's device in on Coil's
list of devices with problematic hardware bitmap implementations.

Also moved HARDWARE_BITMAP_UNSUPPORTED into the ImageUtil as a
property for more ergonomic access across the project.

* Add missing negation

* Update CHANGELOG.md

* Update CHANGELOG.md

* Needs to be and not or

Also fix typo in CHANGELOG.md

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 7f2cfb5eb224896d6d0ffa6960f0a98c7325e240)
2024-12-06 23:39:22 +07:00
MajorTanya
af34b13fe3
Add a Honor system app to list of invalid browsers (mihonapp/mihon#1520)
Closes mihonapp/mihon#1348.

Specifically adds com.hihonor.android.internal.app to the list of
invalid browsers. It's very similar to the existing entry for Huawei,
so it stands to reason it is the same/similar problem as with Huawei's
internal app.

(cherry picked from commit 3bd8d3ecb7023d1b01930ab0f91482c23e89c946)
2024-12-05 15:42:12 +07:00
Cuong-Tran
5a893927a3
App update retry/resume (#523)
* custom timeout for NetworkHelper.client

* support retry/resume downloading app update apk

* retain app update download progress over retries

* increase app update download timeout to 180 seconds / 3 minutes from previously 2 minutes
2024-11-28 22:06:48 +07:00
Cuong-Tran
7628e064e5
custom timeout for NetworkHelper.client (#524) 2024-11-28 22:06:13 +07:00
AntsyLich
e3d17184a6
Improve hardware bitmap threshold option
Also `spotlessApply`

(cherry picked from commit d6dfd24548eaa05a8c3e478068fe2e08f2ee4473)
2024-11-21 09:39:44 +07:00
AntsyLich
f6eaad8439
Add option to lower the threshold for hardware bitmaps
Closes #mihonapp/mihon1436
Closes #mihonapp/mihon1486

(cherry picked from commit dcddac5daaff3ec89c8507c35dc13d345ffdb6d7)
2024-11-21 02:06:18 +07:00
AntsyLich
9d3b99ec1a
Switch to hardware bitmap in reader only if device can handle it
Closes #mihonapp/mihon1460

(cherry picked from commit e6d96bd348ea5d18a005d6465222ad5f5123103e)
2024-11-21 02:06:18 +07:00
AntsyLich
3c0c45eb81
Address some build warnings and cleanup (mihonapp/mihon#1412)
(cherry picked from commit a1c60897916f418726107fec80ad79b2a4b8d500)
2024-11-01 10:37:52 +07:00
AntsyLich
3acfcbec21
Bump default user agent 2024-11-01 10:37:52 +07:00
AntsyLich
3a12f5e83e
Fix long strip images not loading in some old devices
Fixes mihonapp/mihon#1398

(cherry picked from commit 06efc3b25c5af51f42448af27a269ee459d9093d)
2024-11-01 10:37:52 +07:00
Cuong-Tran
6b6e6a7fba
fix dependencies 2024-10-28 23:12:15 +07:00
Cuong-Tran
451fe433cf
Error screen (#462)
- A dedicated screen in Settings for error list when updating library
- Allow to jump to Error screen if click on notification
- Allow to migrate error entry
- Create error on each entry updated instead of waiting for the whole updating list to finished
- Overwrite entry's error if new error happens after updating
- Clear entry's error if it successfully updated
- Clear un-relevant errors (entry which was removed from Library) on next update
- List of errors can jump to top/bottom or next/previous errors group
- Won't create error file anymore

* Added library update errors screen

(cherry picked from commit 7cf37d52f959ac65f53cf7657563fb4428bd9188)

* Open library update errors screen on clicking library update error notification

(cherry picked from commit d2d22f437a1d61b086f1e19dfbcd2c0a2bc125f4)

* LibraryUpdateErrorScreen's bottom UI with scroll to top/bottom buttons

(cherry picked from commit 859ce54474d456232510e21f4f6795af65489be2)

* migrate to AppBar

* sticky header

* scroll to next/previous group of errors

* insert error entry one by one

* delete error from DB when successfully updated

* clean un-relevant errors from DB on every updates

* fix errors & clean up

* catch exception & fix notification intent

---------

Co-authored-by: ImaginaryDesignation <108343184+ImaginaryDesignation@users.noreply.github.com>
2024-10-28 23:12:14 +07:00
AntsyLich
4ba654c29a
Update dependency com.pinterest.ktlint:ktlint-cli to v1.4.0
Co-authored-by: Mend Renovate <bot@renovateapp.com>
(cherry picked from commit 140083ee39df7d458e5ff9abc6d0ee9831d99387)
2024-10-28 22:11:48 +07:00
Roshan Varughese
8eb2582a88
Add option to opt out of Analytics and Crashlytics (mihonapp/mihon#1237)
(cherry picked from commit 7c7af72f8cb12decc06b76c36852dcc54696236d)
2024-10-23 14:19:45 +07:00
AntsyLich
7d8f96d856
Cleanup .gitignore files
(cherry picked from commit afa50029882655af8d5eea40aed7644fce4564d8)
2024-10-23 14:19:38 +07:00
AntsyLich
80063ffba4
Bump compile sdk to 35
Co-authored-by: p
(cherry picked from commit 37419cdc26c2b5c4f8583fc2ba439b08fab42856)
2024-10-23 13:08:41 +07:00
AntsyLich
81d70c5ce3
Use new library for injekt with inorichi patch
(cherry picked from commit 83fd4746eda1b99f35292b0c2211e606a421b3eb)
2024-09-08 23:04:57 +07:00
AntsyLich
a1e0a1cd4b
Move archive related code to :core:archive
(cherry picked from commit bd7b35419861df6d426d6ec0a188391910d0f615)
2024-09-05 22:00:46 +07:00
Cuong-Tran
48d874342e
Address more spotless lint errors from KMK & SY 2024-08-26 00:08:37 +07:00
AntsyLich
e7ca892f65
Address spotless lint errors (mihonapp/mihon#1138)
* Add spotless (with ktlint)

* Run spotlessApply

* screaming case screaming case screaming case

* Update PagerViewerAdapter.kt

* Update ReaderTransitionView.kt

(cherry picked from commit d6252ab7703d52ecf9f43de3ee36fd63e665a31f)
2024-08-26 00:08:37 +07:00
AntsyLich
335f0956b4
Remove detekt (mihonapp/mihon#1130)
Annoying. More annoying in this project.

(cherry picked from commit 777ae2461e1eb277a3aa0c998ff69e4f100387a1)
2024-08-26 00:08:37 +07:00
Shamicen
e6d2b1b930
Libarchive refactor (jobobby04/TachiyomiSY#1249)
* Refactor archive support with libarchive

* Refactor archive support with libarchive

* Revert string resource changs

* Only mark archive formats as supported

Comic book archives should not be compressed.

* Fixup

* Remove epub from archive format list

* Move to mihon package

* Format

* Cleanup

Co-authored-by: Shamicen <84282253+Shamicen@users.noreply.github.com>
(cherry picked from commit 239c38982c4fd55d4d86b37fd9c3c51c3b47d098)

* handle incorrect passwords

* lint

* fixed broken encryption detection + small tweaks

* Add safeguard to prevent ArchiveInputStream from being closed twice (#967)

* fix: Add safeguard to prevent ArchiveInputStream from being closed twice

* detekt

* lint: Make detekt happy

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

(cherry picked from commit e620665dda9eb5cc39f09e6087ea4f60a3cbe150)

* fixed ArchiveReaderMode CACHE_TO_DISK

* Added some missing SY --> comments

---------

Co-authored-by: FooIbar <118464521+fooibar@users.noreply.github.com>
Co-authored-by: Ahmad Ansori Palembani <46041660+null2264@users.noreply.github.com>
(cherry picked from commit 95c834581b106f73a28ade78b7aa4a6769633507)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ArchivePageLoader.kt
#	core/common/src/main/kotlin/eu/kanade/tachiyomi/util/storage/EpubFile.kt
#	gradle/libs.versions.toml
#	source-local/src/androidMain/kotlin/tachiyomi/source/local/LocalSource.kt
2024-08-26 00:08:37 +07:00
AntsyLich
93f228c8e1
Remove WebViewClientCompat
(cherry picked from commit f4348df8709529b7b2319485fc8eb54c6e8173c7)
2024-08-13 22:44:52 +08:00
AntsyLich
bd3455abe8
Bump default user agent string
(cherry picked from commit 8160b47ff5fbbd9b32caeb462b5be881fabd3449)
2024-08-02 13:19:11 +07:00
Cuong-Tran
4816d485d7
feat: update default popular user-agent
(might need to go to Settings->Advanced->Reset user agent)
2024-07-22 22:54:50 +07:00
FooIbar
0496c608c0
Fix some issues when reading/saving images
(mihonapp/mihon#993)

* Fix unsupported mime type error when saving images

Avoid using platform mime type map to get extensions as it may not have
all mime types we support.

* Fix jxl images downloading/reading

(cherry picked from commit daa47e049327c4d8b1fe4724ed1b84897d81fcf2)
2024-07-08 21:07:56 +07:00
Jobobby04
8c3d99889c
Move some libs to sylibs
(cherry picked from commit f929a4bc26641fa43afcaabfec07cd76cff6f483)

# Conflicts:
#	gradle/libs.versions.toml
#	gradle/sy.versions.toml
2024-07-05 15:22:54 +07:00
Tran M. Cuong
c8a0ba67ec
remove unnecessary i18n-kmk dependence 2024-06-16 20:16:06 +07:00
Jobobby04
854ea8c7f0
Cleanup some build warnings
(cherry picked from commit 4deaa41c53fec59604d5cd4a0ba63c6e91add5b4)
2024-06-16 01:52:24 +07:00
Cuong M. Tran
e10662f26a
Remove deprecated API for Android N 2024-06-11 00:04:02 +07:00
AntsyLich
cdac438f1e
Make the app Android 8+
(cherry picked from commit dfb3091e380dda3e9bfb64bf5c9a685cf3a03d0e)

# Conflicts:
#	README.md
#	app/src/debug/res/mipmap-hdpi/ic_launcher.png
#	app/src/debug/res/mipmap-hdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-mdpi/ic_launcher.png
#	app/src/debug/res/mipmap-mdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-xhdpi/ic_launcher.png
#	app/src/debug/res/mipmap-xhdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-xxhdpi/ic_launcher.png
#	app/src/debug/res/mipmap-xxhdpi/ic_launcher_round.png
#	app/src/debug/res/mipmap-xxxhdpi/ic_launcher.png
#	app/src/debug/res/mipmap-xxxhdpi/ic_launcher_round.png
#	app/src/main/java/eu/kanade/domain/ui/UiPreferences.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsAdvancedScreen.kt
#	app/src/main/java/eu/kanade/presentation/more/settings/screen/SettingsReaderScreen.kt
#	app/src/main/java/eu/kanade/tachiyomi/data/coil/TachiyomiImageDecoder.kt
#	app/src/main/java/eu/kanade/tachiyomi/extension/installer/ShizukuInstaller.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/loader/ZipPageLoader.kt
#	app/src/main/res/mipmap-hdpi/ic_launcher.png
#	app/src/main/res/mipmap-hdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-mdpi/ic_launcher.png
#	app/src/main/res/mipmap-mdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-xhdpi/ic_launcher.png
#	app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-xxhdpi/ic_launcher.png
#	app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
#	app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
#	app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
#	buildSrc/src/main/kotlin/AndroidConfig.kt
2024-06-11 00:04:02 +07:00
Cuong M. Tran
271e78eaf1
i18n for Komikku 2024-06-11 00:04:02 +07:00
Cuong M. Tran
302fdfe979
Clean up some build warning 2024-06-04 17:03:11 +07:00
Jobobby04
28d9778d49
Minor cleanup
(cherry picked from commit 253060a3bcc7f70f409944ec5212d3e2cd4542f8)
2024-05-19 02:52:52 +07:00
FooIbar
b226027dce
Use Okio instead of java.io for image processing (#691)
(cherry picked from commit b152e3881bffd9050a8a0ed4030823886e3fe04f)

# Conflicts:
#	app/src/main/java/eu/kanade/tachiyomi/App.kt
#	app/src/main/java/eu/kanade/tachiyomi/ui/reader/viewer/pager/PagerPageHolder.kt
#	core/common/src/main/kotlin/tachiyomi/core/common/util/system/ImageUtil.kt
(cherry picked from commit aeeff72bed2a568812e8f09b3089d86df6bfea4d)
2024-05-19 02:52:51 +07:00
Shamicen
6720f44762
Safer password handling (#1146)
* no longer convert passwords to string

* also clear backing array of outputStream

* use fill and small refactor
2024-04-26 11:35:16 +07:00
AntsyLich
72634e76f8
Rework buildSrc and remove usage of subprojects
(cherry picked from commit e448e40406e8d9916120a278e42829a6f1b25a7a)

# Conflicts:
#	app/build.gradle.kts
#	buildSrc/src/main/kotlin/AndroidConfig.kt
#	i18n/build.gradle.kts
#	source-api/build.gradle.kts
2024-04-26 11:35:15 +07:00
Maddie Witman
ffed74b74c
New Feature: Introduce Upcoming page to Mihon (#420)
* Work in progress upcoming feature

* Checkpointing WIP upcoming feature

* Functional Upcoming Screen

* Rename UpdateCalendar to UpdateUpcoming

* Converted Strings to resources

* Cleanup

* Fixed detekt issues

* Removed Link icon per @AntsyLich's suggestion.

* Detekt

* Fixed Calendar display on wide form factor devices

* Added Key to upcoming lazycolumn

* Updated tablet mode UI to support two column view

* Updated header creation logic

* Updated header creation logic... again

* Moved stray string to resources

* Fixed PR Comments and query refactor

* Tweaks to query, refactored to flow, comments on calendar

* Switched to Date Formatter

* Cleaned up date formatter

* More Refactor work

* Updated Calendar to support localized week formats

* Fixed year format

* Refactored Header animation

* Moved upcoming FAQ

* Completed YearMonth Migration

* Replaced currentYearMonth with delegate

* Even more cleanup

* cleaned up alignment modifiers

* Click Handler and other refactors

* Removed Wrapped Content Height/Size/extra clips

* Huge Refactor for CalendarDay

* Another cleanup attempt

* Migrated to new mihon.feature.* module pattern

* changed access modifier

* A Bunch of changes from the next round of reviews

* Cleanups

* Cleanup 2

---------

Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
(cherry picked from commit 72222ad86d6fb328d20eead86c6357833d08c061)

# Conflicts:
#	app/src/main/java/eu/kanade/domain/DomainModule.kt
#	gradle/libs.versions.toml
2024-04-26 11:35:15 +07:00
AntsyLich
cc5c56c8ed
Fix regression from coil3 migration
Fixes #495

Co-authored-by: jobobby04 <17078382+jobobby04@users.noreply.github.com>
(cherry picked from commit 59bedb33ff59ad5db1df2e93567a2266fb63eacc)

# Conflicts:
#	core/common/src/main/kotlin/tachiyomi/core/common/util/system/ImageUtil.kt
2024-04-26 11:35:14 +07:00
Jobobby04
2f7617db9e
Actually fix animated images 2024-03-29 12:04:31 +07:00
Jobobby04
2708ddef70
Revert "Re-Add Animated Image Decoders to Coil"
This reverts commit 5d1b1408eb78d94912c36cfbe63ee7663f3c1bb4.
2024-03-29 12:04:31 +07:00
Jobobby04
6799f9b6f7
Re-Add Animated Image Decoders to Coil 2024-03-29 12:00:26 +07:00
Shamicen
02775c7c99
implement mihonapp/mihon#326 (#1104)
* implement mihonapp/mihon#326

Archives are now being read from channels

Co-authored-by: FooIbar <118464521+FooIbar@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>

* disable parallelisms for loading into memory

* switched to mutex

* detekt changes

* more detekt baseline changes

---------

Co-authored-by: FooIbar <118464521+FooIbar@users.noreply.github.com>
Co-authored-by: AntsyLich <59261191+AntsyLich@users.noreply.github.com>
2024-03-29 12:00:26 +07:00
KaiserBh
d7ed145c82
feat: add cross device sync (#1005)
* feat: add cross device sync.

* chore: add google api.

* chore: add SY specifics.

* feat: add backupSource, backupPref, and "SY" backupSavedSearches.

I forgot to add the data into the merging logic, So remote always have empty value :(. Better late than never.

* feat(sync): Allow to choose what to sync.

Various improvement and added the option to choose what they want to sync. Added sync library button to LibraryTab as well.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* oops.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor: fix up the sync triggers, and update imports.

* refactor

* chore: review pointers.

* refactor: update imports

* refactor: add more error guard for gdrive.

Also changed it to be app specific, we don't want them to use sync data from SY or other forks as some of the model and backup is different. So if people using other forks they should use the same data and not mismatch.

* fix: conflict and refactor.

* refactor: update imports.

* chore: fix some of detekt error.

* refactor: add breaks and max retries.

I think we were reaching deadlock or infinite loop causing the sync to go forever.

* feat: db changes to accommodate new syncing logic.

Using timestamp to sync is a bit skewed due to system clock etc and therefore there was a lot of issues with it such as removing a manga that shouldn't have been removed. Marking chapters as unread even though it was marked as a read. Hopefully by using versioning system it should eliminate those issues.

* chore: add migrations

* chore: version and is_syncing fields.

* chore: add SY only stuff.

* fix: oops wrong index.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: review pointers.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove the option to reset timestamp

We don't need this anymore since we are utilizing versioning system.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor: Forgot to use the new versioning system.

I forgot to cherry pick this from mihon branch.

* chore: remove isSyncing from Chapter/Manga model.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove unused import.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove isSyncing leftover.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* chore: remove isSyncing.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

* refactor: make sure the manga version is bumped.

When there is changes in the chapters table such as reading or updating last read page we should bump the manga version. This way the manga is synced properly as in the History and last_read history is synced properly. This should fix the sorting issue.

Signed-off-by: KaiserBh <kaiserbh@proton.me>

---------

Signed-off-by: KaiserBh <kaiserbh@proton.me>
2024-03-29 12:00:26 +07:00
Shamicen
c87b68f445
Change preferences containing passwords to appStateKeys (#1083)
* Change preferences containing passwords to appStateKeys

* Change versionCode to 65

* fix merge conflict and add instructions to get library back after migration
2024-03-29 11:56:21 +07:00
AntsyLich
43a11da694
Bump default user agent
(cherry picked from commit f66f52c244b786ae09f8e4ae683575907068d15f)
2024-03-29 11:56:21 +07:00