Commit Graph
136 Commits
Author SHA1 Message Date
FooIbar 9edea5d584 Clean up unfinished download files 2023-02-20 18:48:49 +08:00
tarsin 1b71f6a60a Fix issue that download progress being reset when entering reader 2023-02-14 16:20:38 +08:00
tarsin f7bf1d624b Only cancel decode job for recycled viewHolder 2023-02-14 15:45:55 +08:00
tarsin 032563d7a4 Should never update state by request 2023-02-14 14:05:58 +08:00
tarsin 1073ed6c24 Minor cleanup 2023-02-14 13:40:56 +08:00
tarsin e5ce3450e8 Coroutinize Decoder 2023-02-14 13:16:53 +08:00
tarsin d30379251d Refactor Image source provider
Skia use SKMemoryStream to read file mapping data
SKMemoryStream always use memcpy to emulate posix read stream behaviour, cannot take advantages of file mapping reading

* https://github.com/google/skia/blob/1f193df9b393d50da39570dab77a0bb5d28ec8ef/src/core/SkStream.cpp#L335
2023-02-13 18:21:57 +08:00
tarsin 4d69bf2aba Introduce new Decoder scope 2023-02-05 14:32:31 +08:00
tarsin 2234d056fc Fix download finished 2023-02-05 13:46:01 +08:00
tarsin 4a4c447bd2 Fix download 2023-02-05 13:16:53 +08:00
tarsin 933a95023c Tweak readahead logic 2023-02-05 12:31:30 +08:00
tarsin 25d90a3c78 Rewrite Image fetching with kotlin coroutines 2023-02-04 22:59:35 +08:00
tarsin ef3d3e6443 Introduce new SpiderQueenWorker stub 2023-02-04 20:31:56 +08:00
tarsin 057ba0c6e1 Migrate image downloading to ktor 2023-02-04 12:20:41 +08:00
tarsin 37804e67c1 Fix serialization 2023-02-01 11:28:24 +08:00
tarsin 487925b1f2 Refactor SpiderDen 2023-01-30 14:32:43 +08:00
tarsin 54c8183666 Add dummy cancellation support 2023-01-30 13:23:30 +08:00
tarsin cf31a31430 Refactor SpiderDen 2023-01-30 13:08:10 +08:00
tarsin 34445e6f92 Move spiderInfo compat to separate file 2023-01-30 10:58:05 +08:00
tarsin 7d00e01e00 Avoid unnecessary thread create 2023-01-30 10:46:23 +08:00
tarsin 300fabca21 Avoid unnecessary diskcache edit 2023-01-30 10:33:31 +08:00
tarsin e17dc78aeb Handle cache internally 2023-01-29 12:38:44 +08:00
tarsin 1b9e00efe1 Fix a NPE 2023-01-29 12:20:07 +08:00
tarsin 152b4d3765 Fixup! New SpiderInfo serialization format
Don't serialize thousands of nulls
2023-01-29 11:36:29 +08:00
tarsin e71d61ef37 Cleanup JvmStatic usage 2023-01-28 17:11:42 +08:00
tarsin 30c7f9e020 New SpiderInfo serialization format 2023-01-28 15:58:45 +08:00
tarsin ae4d589c8e Move to androidx collection LongSparseArray 2023-01-26 17:46:37 +08:00
tarsin 7ae452cf13 Fixup! Use FileChannel transferFrom 2023-01-18 12:29:19 +08:00
tarsin 4c024c5faa Fixup! Use FileChannel transferFrom 2023-01-18 12:24:10 +08:00
tarsin 9d16e9d98c Use FileChannel transferFrom, Resolve #682 2023-01-18 12:18:43 +08:00
tarsin 726f482c33 Introduce new file read path 2023-01-17 10:40:20 +08:00
tarsin da87fb2551 Fix image save 2023-01-17 08:20:57 +08:00
tarsin d4dc65a4ba Drop old disklrucache (#685)
* Drop Old DiskLruCache

* Avoid being interrupted when completing editor

* Protect all journal operations

* Revert "Protect all journal operations"

This reverts commit 5b7c7e3b33a515ee3e92826a6b76c2dfb3040c5d.

* Revert "Avoid being interrupted when completing editor"

This reverts commit cf4fbed1281eff766c6e65b6f685dfc355208a0b.

* Shutdown Thread gracefully

Test: m, Check no thread leaks

* Fix download extensions
2023-01-16 21:44:25 +08:00
tarsin 0707a0fad8 Report DiskLruCache corruption if met 2023-01-16 17:42:55 +08:00
小白-白 5267cad896 Fix wrong extension when downloading 2023-01-15 14:34:03 +08:00
tarsin 8c821ecad3 Make EhEngine obtain its okhttpClient 2023-01-11 21:46:17 +08:00
o0kam1 d769fe9074 fix #642 2023-01-07 22:13:16 +08:00
tarsin 13660cb70a Cleanup JvmFields in GalleryInfo 2023-01-06 09:33:24 +08:00
tarsin f98fd5e5f1 Handle Call cancellation internally 2023-01-04 14:31:40 +08:00
FooIbar 5f6da284fb fixup! Create download dir only in download mode 2023-01-03 11:12:28 +08:00
FooIbar 3b5e56b049 Create download dir only in download mode
Do not try to find download dir, should use restore download instead
2023-01-02 22:10:27 +08:00
tarsin 57d4967f2a Implement #612 2023-01-02 21:39:46 +08:00
tarsin f6b0134fdb Remove redundant comment 2022-12-30 14:33:20 +08:00
tarsin bcce20d9ac Remove unnecessary okhttpclient rebuild 2022-12-29 21:18:47 +08:00
tarsin 420e760fb3 fixup! Convert spiderInfo cache to Coil DiskCache 2022-12-29 20:38:48 +08:00
tarsin d8ccec45f9 Convert spiderInfo cache to Coil DiskCache 2022-12-29 20:27:33 +08:00
tarsin b4aa5ec593 Revert "Get download dir in download mode only"
This reverts commit 241d9daae9.
2022-12-28 12:20:49 +08:00
FooIbar d77e1e6820 Remove redundant context parameter 2022-12-26 16:38:22 +08:00
FooIbar 241d9daae9 Get download dir in download mode only
Resolve? #381
2022-12-26 16:38:22 +08:00
FooIbar 45411fa14d Use notifyAll() instead of notify() on mDecodeRequestQueue
Resolve #549
2022-12-19 08:13:31 +08:00