Skip to content

EPUB cover previews and sort#24

Open
eric-morrison wants to merge 2 commits intoealang:masterfrom
eric-morrison:feature/ebook-cover-preview
Open

EPUB cover previews and sort#24
eric-morrison wants to merge 2 commits intoealang:masterfrom
eric-morrison:feature/ebook-cover-preview

Conversation

@eric-morrison
Copy link
Copy Markdown

Summary

This adds a lightweight cover-preview experience to the browser UI for Pixel Reader on Onion/Miyoo Mini+, as well as the ability to sort by title or author.

What Changed

  • add EPUB cover extraction for browser preview
  • parse EPUB title and author metadata for browser display
  • show two-line browser rows with title and author
  • add sort toggle between title and author
  • add right-side cover preview pane
  • show a lightweight loading state while browser metadata indexes
  • show selected-book progress in the preview pane
  • fix an EPUB cleanup crash triggered during browser metadata loading
  • make async task queue access thread-safe
  • link pthread for the preview/index worker path

Notes

This improves the browsing experience a lot, but it does introduce some extra work when opening large book folders because metadata is indexed for sorting/display. The current implementation keeps the loading state lightweight and avoids full-library progress scanning during that step, but there is still room for future performance tuning if needed. I tested with 300+ EPUB files and it took a couple seconds to load.

Testing

  • built Onion/Miyoo packages successfully via the cross-compile Docker toolchain
  • tested on-device manually for:
    • right-side cover previews
    • title/author browser rows
    • title/author sort toggle
    • loading-state behavior
    • selected-book progress display

@ealang
Copy link
Copy Markdown
Owner

ealang commented Mar 29, 2026

Thanks! Let me spend a few days to try this out

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.

2 participants