Expands outward from the selected post (±1, ±2, ±3...) with
200ms pacing between each download. Already-cached files skip
instantly. Setting renamed to "Prefetch whole page over time".
- Mute, volume, autoplay, loop state synced on slideshow open/close
- Loop restart detection requires position > 80% of duration to
prevent false triggers on new video loads
- QProxyStyle overrides drawPrimitive to draw arrow triangles in
the theme's text color (extracted from QSS)
- Works for spinbox up/down and combobox dropdown arrows
- Cross-platform, no SVG resources needed
- Library button widened to 80px to prevent text clipping
Extract text and background colors from QSS and set palette roles
(ButtonText, WindowText, Button) so Fusion draws arrows in the
correct color. Removed broken spinbox button overrides from themes.
- Use codicon codepoints (eb7c etc.) which exist in Terminess/Nerd Fonts
- All icons overridable via QSS: qproperty-playIcon, qproperty-pauseIcon,
qproperty-muteIcon, qproperty-unmuteIcon on VideoPlayer
- Lazy detection after QSS is applied
Auto-detects if app font has Nerd Font glyphs. If yes, uses
unicode icons for Play/Pause/Mute/Loop/etc. Falls back to text.
Removed all setFixedWidth on buttons so QSS can control sizing.
- Ctrl+P now hides slideshow window and pauses all video playback
- Slideshow restored when privacy screen is toggled off
- README keybinds: arrow keys + hjkl for preview navigation
Right-click selects the thumbnail (border highlight) but doesn't
trigger post_selected/activated, so preview stays on current post.
Added hover border highlight. Removed _last_activated_index guard.
- Video thumbnails: try ffmpeg, fall back to play icon placeholder
- Right-click no longer restarts video playback on same post
- Reset activated index on new search
- Add prefetch_adjacent, clear_cache_on_exit, slideshow_monitor,
library_dir to _DEFAULTS for fresh installs
- Replace all silent except-pass with logged warnings
Auto-shows the info panel when slideshow opens (filling the empty
preview space with tags and post details). Restores previous
visibility state when slideshow closes.
- Loop: repeat forever
- Once: play once, stop at end
- Next: play once, advance to next post
- Autoplay/Manual labels for auto-start toggle
- Document :checked state in themes/README.md
EndOfMedia doesn't fire reliably with setLoops(1). Instead,
use Infinite loops and detect the loop restart via position
jumping from near-end back to 0. Pause and emit play_next
when in Next mode. Toggle takes effect immediately.
Uses keyPressEvent on main window — only fires when no text
input has focus (search bar consumes Space itself). Checks
underMouse() so it only works when hovering the preview.
- Missing file indicator (red dot) for NAS/lost files, QSS-controllable
via qproperty-missingColor
- Library items now show green saved dot
- Missing files detected on refresh and marked red