fix(ui+audio): resync on lazy unmute + review fixes#24
Merged
Conversation
…t glyph tint, dedup _s Addresses the code-review findings on this branch: - cell.py _enable_audio_track: re-seek to the current position after selecting the audio track. Enabling a track mid-stream started its decoder cold; with video_sync=audio the master clock followed the half-filled buffer, so unmuting a cell produced choppy audio until audio_buffer filled. Re-seeking refills both decoders from a common point (one brief blip on unmute instead of sustained stutter). - cell.py hideEvent: stop the looping LOADING pulse so a cell that never reached play() (failed query, app closing mid-stagger) doesn't drive opacity repaints forever. Dropped the redundant stop()-before-start(). - cell.py + theme.py: drive the active favorite/trash glyph colour from QSS #favBtn:checked / #tagBtn:checked (new theme.FAVORITE gold) instead of a VS16 colour-emoji selector that fonts can silently ignore. Glyphs are always monochrome VS15; removed _refresh_fav_glyph/_refresh_tag_glyph and the _COLOR constant. - constants.py: single _s() helper; cell.py and wizard.py now import it instead of each defining their own. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Follow-up to #23 addressing the code-review findings on the branch.
Fixes
cell.py_enable_audio_track): after selecting the audio track mid-stream, re-seek to the current position. Enabling a track cold undervideo_sync=audiomade the master clock follow a half-filled buffer, producing stutter untilaudio_bufferfilled. Re-seeking refills both decoders from a common point — one brief blip on unmute instead of sustained choppiness. The muted-cell decode-skip optimization is preserved.cell.pyhideEvent): stop the looping opacity animation when a cell is hidden, so a cell that never reachedplay()(failed query, app closing mid-stagger) doesn't drive repaints forever. Also removed the redundantstop()beforestart().cell.py+theme.py): active favorite/trash colour now comes from QSS#favBtn:checked/#tagBtn:checked(newtheme.FAVORITEgold) instead of a VS16 colour-emoji selector fonts can silently ignore. Glyphs are always monochrome VS15; removed_refresh_fav_glyph/_refresh_tag_glyphand_COLOR._s()helper (constants.py): single source;cell.pyandwizard.pyimport it.Testing
tests/run_all.py).🤖 Generated with Claude Code