fix: preserve native thumb geometry while seeking beside it

Remove the knobRect override: native slider geometry also affects drag positioning. Progress pointer tracking now shares the drawn thumb bounds, preserves the initial grab offset, and clamps to the track endpoints. Expanded native event regression covers adjacent clicks, thumb drags, track drags, and endpoint clamping; application build passes.
This commit is contained in:
2026-10-22 12:26:31 +02:00
parent dea8880b9b
commit 19a1de625b
3 changed files with 63 additions and 21 deletions
+2 -2
View File
@@ -201,9 +201,9 @@ struct CastPlaybackCheck {
_ = NSApplication.shared
NSApp.setActivationPolicy(.prohibited)
require(castVolumeSliderFeedbackCheck(), "Native slider keeps user position during tracking and applies receiver volume when idle")
require(playbackSliderHitCheck(), "Progress slider seeks beside the visible thumb and grabs only the thumb")
require(playbackSliderHitCheck(), "Progress slider seeks beside the thumb and preserves cursor alignment throughout dragging")
if CommandLine.arguments.count == 2, CommandLine.arguments[1] == "--slider-regression" {
print("PASS: progress thumb hit bounds, adjacent seeking, and volume tracking feedback")
print("PASS: adjacent seeking, thumb and track drag alignment, and volume tracking feedback")
return
}
let source = URL(fileURLWithPath: CommandLine.arguments[1])