-
Notifications
You must be signed in to change notification settings - Fork 60
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update VolumePoup.cs #31
base: master
Are you sure you want to change the base?
Update VolumePoup.cs #31
Conversation
Prevent incorrect volume level display, same as Windows.
@@ -39,7 +39,7 @@ public void updateValueSafe() | |||
} | |||
else | |||
{ | |||
volume = ((int)(getVolume() * 100)).ToString(); | |||
volume = (getVolume() * 100).ToString(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is possible. Maybe it's a Windows 11 issue.
I'm actively using it on Windows 10 x64, without the int conversion, it works perfectly. Using both keyboard volume, and using the mouse cursor to change the slider from tray, displays the same value as Windows, no decimals.
I recommend you are using real conditions to verify, not unit tests.
Investigate what is happening, find the source of the issue before coming up with solutions.
The quickest way to get in more trouble is to be smart about it and theoretical, without knowing the source and patching the result.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See this commit on my fork. Tested using both volume up/down keys and the slider from tray.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From Microsoft's documentation here and this code
pAudioEndpointVolume.GetMasterVolumeLevelScalar(out masterVolume);
GetMasterVolumeLevelScalar
returns a float value between 0.0 and 1.0.
The reason why in Windows 11 it may appear as a decimal is because of what is is mentioned with Note that the shape of the curve might change in future versions of Windows
.
Prevent incorrect volume level display, same as Windows.