Skip to content

Conversation

@lalalasupa0
Copy link
Contributor

@lalalasupa0 lalalasupa0 commented Feb 5, 2026

Description

This PR improves the Local Source experience by fixing storage merging, scoped storage access, update reliability, and file format support.
Resolves #197, #270, #468, #359, #473.

Core Changes:

  1. Merged Storage (For Local source to detect manga from both internal and external storage, not just one #197): LocalSource now merges chapter lists from all configured storage roots (Internal + SD Card) into a single manga entry.
  2. Reliable Covers (Not loading covers of local source entries from android/data #270): Fixed cover.jpg detection in scoped storage (Android/data).
  3. Global Update Fixes (Global updating no refreshing local sources #468, Don't refresh manga from the local source automatically #359):
    • Manual Updates now correctly process LocalSource entries.
    • Automatic Updates now strictly ignore LocalSource entries to prevent data loss if files are temporarily moved/unmounted.
  4. APNG & Animation Support (Display APNGs properly #473): registered AnimatedImageDecoder (Coil) in App.kt. This enables support for APNG, Animated WebP, and GIFs (fixing "static image" bugs) on Android 9+.

Technical Details

  • App.kt: Added AnimatedImageDecoder.Factory (API 28+) / GifDecoder.Factory to newImageLoader components.
  • LibraryUpdateJob.kt:
    • Filter: Excludes local manga if WORK_NAME_AUTO tag is present.
    • Processing: Allows CatalogueSource types.
  • LocalSource.kt: Full refactor for UniFile based merging logic.
  • TachiyomiImageDecoder.kt: Preserved existing JXL/AVIF handling alongside new animation support.

Checklist

  • Tested manually
  • Code follows project style

Add a 👍 reaction to pull requests you find important.

@null2264 null2264 merged commit 827edf1 into null2264:master Feb 12, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

For Local source to detect manga from both internal and external storage, not just one

2 participants