Merged
Conversation
Add a user setting to blur unread book and series covers across browse and detail surfaces, including oneshots. Extend shared thumbnail rendering so blur only affects image content, keep overlays readable, and centralize reading-state helpers used by cover UI and reader flows.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Issue #618 asks for a way to hide spoiler-heavy covers until reading has actually started. The existing UI could show unread indicators, but unread book, oneshot, and series covers still rendered fully in browse and detail surfaces.
Approach
Add a browse appearance setting that blurs unread covers and apply it through the shared thumbnail renderer so only the image content is blurred while badges, overlays, and actions stay readable. Reading-state helpers are centralized on
Book,KomgaBook,Series, andKomgaSeriesso cover UI, detail actions, reader resume logic, and reading stats use the same unread/in-progress/completed semantics.Scope
thumbnailBlurUnreadCoverssettings UI, preview support, and localized stringsValidation
make formatmake buildCloses #618.