Feature: Configurable volume step snapping (1-50%) - #1792
Open
dantheman4700 wants to merge 3 commits into
Open
Conversation
- Add VolumeStepAmount setting (1-50%, default 2%) - Add UseRangeSnapping setting to snap scroll wheel to volume grid - Add UseSliderSnap setting to snap slider drag to volume steps - Snapping features are disabled when UseLogarithmicVolume is ON - Update VolumeSlider with snap point calculation logic - Add UI controls in Community Settings page - Add localized resource strings
dantheman4700
force-pushed
the
feature/volume-step-snapping-dev
branch
from
January 12, 2026 21:35
86d57eb to
d562157
Compare
Contributor
|
Will take a look tomorrow (Thursday), thanks! |
The configurable step and snapping settings only reached the flyout sliders. Everything else still moved the volume by a hardcoded 2%, so the setting appeared to do nothing depending on how the volume was adjusted. Add VolumeStepper as the single place that decides how far one nudge moves and where it lands, and route the remaining controls through it: - the tray icon scroll wheel - the global mouse wheel hook, which also ignored logarithmic volume - the absolute volume up/down hotkeys VolumeSlider now shares that helper rather than carrying its own copy of the snap maths. Logarithmic volume keeps its existing per-control step, since the step and snapping settings are defined in percent and do not apply to decibels. Action-configuration sliders (UseCustomRange) are likewise left alone - they carry their own units and bounds, so snapping them to a 0-100 grid was wrong. Also clamp VolumeStepAmount when reading it. The setter already bounded the value, but a step of zero written straight to the registry would have reached the snap maths and divided by zero. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YT7kv6fxQcdQqWcvZt2kKd
dantheman4700
force-pushed
the
feature/volume-step-snapping-dev
branch
from
August 27, 2026 17:55
03d51d6 to
c23b729
Compare
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.
Adds a configurable volume step, with optional snapping to that step's grid.
Settings (Community settings page)
VolumeStepAmount— 1-50%, default 2%, which matches today's behaviourUseRangeSnapping— the volume lands on the step grid instead of offsetting from wherever it happens to sitUseSliderSnap— slider drag snaps to the step gridWhere the step applies
The step applies to every control that nudges the volume, so the setting behaves the same however you adjust it:
VolumeStepperis the single place that decides how far one nudge moves and where it lands, so the snap maths isn't duplicated per control. 100% stays reachable even when the step doesn't divide evenly into it.Deliberately unchanged
UseCustomRange) carry their own units and bounds, so they keep their current behaviour rather than snapping to a 0-100 grid.Made discussion but no attention: 1788