Skip to content

fix: smooth now-playing seek bar#65

Merged
hoobio merged 3 commits into
mainfrom
feat/smooth-slider-polish
Jun 7, 2026
Merged

fix: smooth now-playing seek bar#65
hoobio merged 3 commits into
mainfrom
feat/smooth-slider-polish

Conversation

@hoobio

@hoobio hoobio commented Jun 7, 2026

Copy link
Copy Markdown
Owner

Reworks the now-playing seek bar so the thumb and fill glide instead of stepping once a second. A WinUI Slider positions its thumb through a layout pass that rounds to a whole pixel each frame, so on a narrow card (~1px/second) it could only move once a second however smooth the bound value was. The bar is now a custom element whose track/fill/thumb are positioned by RenderTransforms (sub-pixel, render-thread) driven from the strip position. Pointer and keyboard seeking are handled directly (drag to scrub, commit on release, Esc cancels, arrows/Page/Home/End nudge), with a timestamp bubble that follows the thumb while seeking. A view-model clock interpolates the position at 20 Hz and absorbs the per-snapshot truncation so there are no backsteps.

Also on this branch:


fix: drop platform tags from now-playing titles

docs: ask for an optional mockup in feature request template

hoobio added 3 commits June 7, 2026 16:53
Strip bracketed descriptor groups (Official/Original/Lyric Video, Audio,
Visualizer, HD, 4K, VEVO) only when every word in the group is a known
descriptor, so real qualifiers like "(Get Out)" and "(feat. X)" survive.
Bundles the resumed smoothed playback-clock interpolation in the same file.
Replace the seek Slider with a custom transform-driven bar. A Slider
positions its thumb via a layout pass that rounds to whole pixels each
frame, so on a narrow card (~1px/second) it could only step once a
second however smooth the bound value was. The track/fill/thumb are now
positioned by RenderTransforms (sub-pixel, render-thread) driven from
the strip position, so they glide. Pointer and keyboard seeking are
handled directly (drag to scrub, commit on release, Esc cancels, arrows
nudge), with a timestamp bubble that follows the thumb while seeking.
@hoobio hoobio enabled auto-merge (squash) June 7, 2026 07:33
@hoobio hoobio merged commit e9d2c92 into main Jun 7, 2026
11 checks passed
@hoobio hoobio deleted the feat/smooth-slider-polish branch June 7, 2026 07:40
hoobio pushed a commit that referenced this pull request Jun 7, 2026
🤖 I have created a release *beep* *boop*
---


## [1.1.0](v1.0.0...v1.1.0)
(2026-06-07)


### Features

* a Settings context menu on Quick Controls cards and group titles
([4ccac45](4ccac45))
* compact card density and Quick Controls display options
([#63](#63))
([4ccac45](4ccac45))
* compact card density mode for the Devices page and Quick Controls
([4ccac45](4ccac45))
* hideable device badges, globally and per device
([4ccac45](4ccac45))
* Quick Controls as a configurable view with its own rules,
([4ccac45](4ccac45))


### Bug Fixes

* disable the whole update-check card on Dev builds, not just the
([4ccac45](4ccac45))
* drop platform tags from now-playing titles
([e9d2c92](e9d2c92))
* even out Devices settings spacing by collapsing closed override
([4ccac45](4ccac45))
* smooth now-playing seek bar
([#65](#65))
([e9d2c92](e9d2c92))


### Documentation

* ask for an optional mockup in feature request template
([e9d2c92](e9d2c92))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please-hoobi[bot] <279189756+release-please-hoobi[bot]@users.noreply.github.com>
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.

1 participant