It is currently August 11th, 2020, 7:20 pm

Dark Music Player

Post your work-in-progress and completed skins to share and discuss.
Kmafin
Posts: 29
Joined: March 23rd, 2017, 7:35 am

Dark Music Player

Post by Kmafin »

Image

I decided to share my new skin here. I am happy to receive some feedback (negative and positive), so that I could possibly learn something new from you guys. Balala already help me, thanks for that! Not much else to say, simple to use, that's it.

ChangeLog:
v1.4
- Improved code of the Settings and Player.
v1.3.6
- Made changes to the code.
- Added ability to "drag" progress bar.

v1.3
- Added Settings -skin.
- Improved code.
- Added Rotator Vinyl (rotates only when the music is playing).
- Added option to put skin sounds on or off.

v1.1
- Added action to "vol" text to toggle off/on player volume.
- Made changes to the code.

v1.0
- First version.

My other skins can be found here: http://hekee.deviantart.com/.
You do not have the required permissions to view the files attached to this post.
Last edited by Kmafin on April 30th, 2017, 7:41 pm, edited 14 times in total.
User avatar
sephirotess
Posts: 334
Joined: December 8th, 2016, 6:45 am

Re: Dark Music Player

Post by sephirotess »

Great design and very nice work :welcome:.
User avatar
CyberTheWorm
Posts: 714
Joined: August 22nd, 2016, 11:32 pm
Location: Surrey, B.C., Canada

Re: Dark Music Player

Post by CyberTheWorm »

Like the design and function, but the sounds when you do stuff annoyed me. Putting a button/mouse click to enable/disable would be fantastic.

That being said great job on the rest.

By the way I had already download your multi function circle, you did a great job on that one.
The only source of knowledge is experience. Albert Einstein
Deviant Art Page
User avatar
balala
Rainmeter Sage
Posts: 11199
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: Dark Music Player

Post by balala »

Hi Kmafin,

Congratulations, well done and good looking skin.
However I have one more comment: the skin has two, practically, useless sets of meters: the set of [PROGRESS_XX] and the set of [VOLUME_XX]. There are twice one hundred of meters, to can set the progress and volume to any level, with a step of 1 percent. However, instead of having so much meters, one near the other, you should remove them and add two simple options to the appropriate meters. More than this, the [PROGRESS_00] - [PROGRESS_100] meters don't have the same forms. The two used forms are:

Code: Select all

[PROGRESS_03]
Meter=Image
MeterStyle=Progress_02
LeftMouseUpAction=[!CommandMeasure "Measure_Player" "SetPosition 3"]
UpdateDivider=-1
respectively:

Code: Select all

[PROGRESS_22]
Meter=Image
SolidColor=0,0,0,1
X=231
Y=76
W=3
H=12
LeftMouseUpAction=[!CommandMeasure "Measure_Player" "SetPosition 22"]
UpdateDivider=-1
See that on [PROGRESS_22] you didn't use the MeterStyle=Progress_02 option, as you did on the previous meters. There also are some other minor differences too.
As a result, I'm saying that I'd remove all these meters and would add to the [METER_PROGRESS_BAR] meter, the following option: LeftMouseUpAction=[!CommandMeasure "MEASURE_PLAYER" "SetPosition $MouseX:%$"].
The same comment about the [VOLUME_00] - [VOLUME_100] meters, which could be removed and replaced by the LeftMouseUpAction=[!CommandMeasure "MEASURE_PLAYER" "SetVolume $MouseX:%$"] option, added to the [METER_VOLUME_BAR] meter.
This way, the code would simplify a lot, the size of the player.ini would reduce from the initial 35,432 B, to 14,157 B.

This solution was proposed many times, by different users, last time earlier today, by CyberTheWorm: https://forum.rainmeter.net/viewtopic.php?p=134193#p134193
Kmafin
Posts: 29
Joined: March 23rd, 2017, 7:35 am

Re: Dark Music Player

Post by Kmafin »

sephirotess wrote:Great design and very nice work :welcome:.
Thank you buddy, very kind of you! :welcome:
Kmafin
Posts: 29
Joined: March 23rd, 2017, 7:35 am

Re: Dark Music Player

Post by Kmafin »

CyberTheWorm wrote:Like the design and function, but the sounds when you do stuff annoyed me. Putting a button/mouse click to enable/disable would be fantastic.

That being said great job on the rest.

By the way I had already download your multi function circle, you did a great job on that one.
Thank you for your feedback! I actually tried to add the opportunity to do so right away, and I managed. I will add button or something for that to settings -skin. :bow: I'm glad, if you like the Multifunctional Circle, because I made my best!
Last edited by Kmafin on March 27th, 2017, 4:23 am, edited 2 times in total.
Kmafin
Posts: 29
Joined: March 23rd, 2017, 7:35 am

Re: Dark Music Player

Post by Kmafin »

balala wrote:Hi Kmafin,

Congratulations, well done and good looking skin.
However I have one more comment: the skin has two, practically, useless sets of meters: the set of [PROGRESS_XX] and the set of [VOLUME_XX]. There are twice one hundred of meters, to can set the progress and volume to any level, with a step of 1 percent. However, instead of having so much meters, one near the other, you should remove them and add two simple options to the appropriate meters. More than this, the [PROGRESS_00] - [PROGRESS_100] meters don't have the same forms. The two used forms are:

Code: Select all

[PROGRESS_03]
Meter=Image
MeterStyle=Progress_02
LeftMouseUpAction=[!CommandMeasure "Measure_Player" "SetPosition 3"]
UpdateDivider=-1
respectively:

Code: Select all

[PROGRESS_22]
Meter=Image
SolidColor=0,0,0,1
X=231
Y=76
W=3
H=12
LeftMouseUpAction=[!CommandMeasure "Measure_Player" "SetPosition 22"]
UpdateDivider=-1
See that on [PROGRESS_22] you didn't use the MeterStyle=Progress_02 option, as you did on the previous meters. There also are some other minor differences too.
As a result, I'm saying that I'd remove all these meters and would add to the [METER_PROGRESS_BAR] meter, the following option: LeftMouseUpAction=[!CommandMeasure "MEASURE_PLAYER" "SetPosition $MouseX:%$"].
The same comment about the [VOLUME_00] - [VOLUME_100] meters, which could be removed and replaced by the LeftMouseUpAction=[!CommandMeasure "MEASURE_PLAYER" "SetVolume $MouseX:%$"] option, added to the [METER_VOLUME_BAR] meter.
This way, the code would simplify a lot, the size of the player.ini would reduce from the initial 35,432 B, to 14,157 B.

This solution was proposed many times, by different users, last time earlier today, by CyberTheWorm: https://forum.rainmeter.net/viewtopic.php?p=134193#p134193
Thank you for your feedback! If I would have used only "MeterStyle=Progress_02" ("W=2") to 0-100 progress level, then it would not have been enough for the whole bar meter length. That's why I had to use part of the lenght "W=3". I hope you understand what I'm trying to mean. :oops:

Omg, much easier solution than what I'm used to. I should have known this from at the beginning! Thank you very much! :great: Will be changed in the next update.
User avatar
balala
Rainmeter Sage
Posts: 11199
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: Dark Music Player

Post by balala »

Kmafin wrote:Thank you for your feedback! If I would have used only "MeterStyle=Progress_02" ("W=2") to 0-100 progress level, then it would not have been enough for the whole bar meter length. That's why I had to use part of the lenght "W=3". I hope you understand what I'm trying to mean. :oops:
In this case, it would be a good idea in my opinion, to alternate the meters with different width. I mean that to set the position, you have now 21 meters with a width of 2 pixels ([PROGRESS_01] - [PROGRESS_21]), then 57 meters of 3 pixels ([PROGRESS_22] - [PROGRESS_78]) and finally other 22 meters of 2 pixels again ([PROGRESS_79] - [PROGRESS_100]). This means 43, 2 pixels wide meters and 57, 3 pixels wide meters. I'd use alternatively one of 2, then one of 3 pixels, sometimes with an additional 3 pixels wide meter. Just to distribute them equally...
Kmafin wrote:Omg, much easier solution than what I'm used to. I should have known this from at the beginning! Thank you very much! :great: Will be changed in the next update.
Finally those meters can be left there, in which case could be implemented a solution to make the bar(s) "draggable". It's not impossible at all. Are you interested how to do it?
Kmafin
Posts: 29
Joined: March 23rd, 2017, 7:35 am

Re: Dark Music Player

Post by Kmafin »

balala wrote:In this case, it would be a good idea in my opinion, to alternate the meters with different width. I mean that to set the position, you have now 21 meters with a width of 2 pixels ([PROGRESS_01] - [PROGRESS_21]), then 57 meters of 3 pixels ([PROGRESS_22] - [PROGRESS_78]) and finally other 22 meters of 2 pixels again ([PROGRESS_79] - [PROGRESS_100]). This means 43, 2 pixels wide meters and 57, 3 pixels wide meters. I'd use alternatively one of 2, then one of 3 pixels, sometimes with an additional 3 pixels wide meter. Just to distribute them equally...

Finally those meters can be left there, in which case could be implemented a solution to make the bar(s) "draggable". It's not impossible at all. Are you interested how to do it?
I'm not going to argue with you, you seem to know everything. :D Sure I am, please tell me!
User avatar
balala
Rainmeter Sage
Posts: 11199
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: Dark Music Player

Post by balala »

Kmafin wrote:I'm not going to argue with you, you seem to know everything. :D Sure I am, please tell me!
Thanks for the appreciations and sorry for the late reply, but here is the solution. For now, let's start just with the progress bar, later we'll also work with the volume bar.
So, first add a ClickProgress variable, to the [Variables] section:

Code: Select all

[Variables]
...
ClickProgress=0
The meaning of this variable is the following: it will be set to 1, (just) while the button of the mouse is pressed and for this time, some MouseOverActions will be set to the [PROGRESS_01] - [PROGRESS_100] meters (see below).
Add a Group=Progress option to each of the following meters: [PROGRESS_01], [PROGRESS_02], [PROGRESS_22], [PROGRESS_23], [PROGRESS_79] and [PROGRESS_80]. If you do so, through the MeterStyle options, this group will be set to each [PROGRESS_XX] meter.
Now add the following measure to the code (yeah, I know it's long, but just add it):

Code: Select all

[MeasureClickProgress]
Measure=Calc
Formula=#ClickProgress#
IfCondition=(MeasureClickProgress=1)
IfTrueAction=[!SetOption PROGRESS_01 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 1"]"""][!SetOption PROGRESS_02 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 2"]"""][!SetOption PROGRESS_03 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 3"]"""][!SetOption PROGRESS_04 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 4"]"""][!SetOption PROGRESS_05 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 5"]"""][!SetOption PROGRESS_06 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 6"]"""][!SetOption PROGRESS_07 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 7"]"""][!SetOption PROGRESS_08 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 8"]"""][!SetOption PROGRESS_09 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 9"]"""][!SetOption PROGRESS_10 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 10"]"""][!SetOption PROGRESS_11 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 11"]"""][!SetOption PROGRESS_12 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 12"]"""][!SetOption PROGRESS_13 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 13"]"""][!SetOption PROGRESS_14 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 14"]"""][!SetOption PROGRESS_15 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 15"]"""][!SetOption PROGRESS_16 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 16"]"""][!SetOption PROGRESS_17 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 17"]"""][!SetOption PROGRESS_18 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 18"]"""][!SetOption PROGRESS_19 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 19"]"""][!SetOption PROGRESS_20 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 20"]"""][!SetOption PROGRESS_21 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 21"]"""][!SetOption PROGRESS_22 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 22"]"""][!SetOption PROGRESS_23 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 23"]"""][!SetOption PROGRESS_24 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 24"]"""][!SetOption PROGRESS_25 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 25"]"""][!SetOption PROGRESS_26 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 26"]"""][!SetOption PROGRESS_27 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 27"]"""][!SetOption PROGRESS_28 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 28"]"""][!SetOption PROGRESS_29 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 29"]"""][!SetOption PROGRESS_30 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 30"]"""][!SetOption PROGRESS_31 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 31"]"""][!SetOption PROGRESS_32 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 32"]"""][!SetOption PROGRESS_33 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 33"]"""][!SetOption PROGRESS_34 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 34"]"""][!SetOption PROGRESS_35 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 35"]"""][!SetOption PROGRESS_36 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 36"]"""][!SetOption PROGRESS_37 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 37"]"""][!SetOption PROGRESS_38 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 38"]"""][!SetOption PROGRESS_39 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 39"]"""][!SetOption PROGRESS_40 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 40"]"""][!SetOption PROGRESS_41 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 41"]"""][!SetOption PROGRESS_42 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 42"]"""][!SetOption PROGRESS_43 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 43"]"""][!SetOption PROGRESS_44 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 44"]"""][!SetOption PROGRESS_45 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 45"]"""][!SetOption PROGRESS_46 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 46"]"""][!SetOption PROGRESS_47 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 47"]"""][!SetOption PROGRESS_48 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 48"]"""][!SetOption PROGRESS_49 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 49"]"""][!SetOption PROGRESS_50 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 50"]"""][!SetOption PROGRESS_51 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 51"]"""][!SetOption PROGRESS_52 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 52"]"""][!SetOption PROGRESS_53 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 53"]"""][!SetOption PROGRESS_54 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 54"]"""][!SetOption PROGRESS_55 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 55"]"""][!SetOption PROGRESS_56 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 56"]"""][!SetOption PROGRESS_57 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 57"]"""][!SetOption PROGRESS_58 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 58"]"""][!SetOption PROGRESS_59 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 59"]"""][!SetOption PROGRESS_60 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 60"]"""][!SetOption PROGRESS_61 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 61"]"""][!SetOption PROGRESS_62 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 62"]"""][!SetOption PROGRESS_63 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 63"]"""][!SetOption PROGRESS_64 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 64"]"""][!SetOption PROGRESS_65 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 65"]"""][!SetOption PROGRESS_66 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 66"]"""][!SetOption PROGRESS_67 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 67"]"""][!SetOption PROGRESS_68 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 68"]"""][!SetOption PROGRESS_69 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 69"]"""][!SetOption PROGRESS_70 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 70"]"""][!SetOption PROGRESS_71 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 71"]"""][!SetOption PROGRESS_72 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 72"]"""][!SetOption PROGRESS_73 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 73"]"""][!SetOption PROGRESS_74 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 74"]"""][!SetOption PROGRESS_75 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 75"]"""][!SetOption PROGRESS_76 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 76"]"""][!SetOption PROGRESS_77 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 77"]"""][!SetOption PROGRESS_78 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 78"]"""][!SetOption PROGRESS_79 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 79"]"""][!SetOption PROGRESS_80 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 80"]"""][!SetOption PROGRESS_81 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 81"]"""][!SetOption PROGRESS_82 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 82"]"""][!SetOption PROGRESS_83 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 83"]"""][!SetOption PROGRESS_84 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 84"]"""][!SetOption PROGRESS_85 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 85"]"""][!SetOption PROGRESS_86 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 86"]"""][!SetOption PROGRESS_87 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 87"]"""][!SetOption PROGRESS_88 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 88"]"""][!SetOption PROGRESS_89 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 89"]"""][!SetOption PROGRESS_90 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 90"]"""][!SetOption PROGRESS_91 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 91"]"""][!SetOption PROGRESS_92 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 92"]"""][!SetOption PROGRESS_93 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 93"]"""][!SetOption PROGRESS_94 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 94"]"""][!SetOption PROGRESS_95 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 95"]"""][!SetOption PROGRESS_96 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 96"]"""][!SetOption PROGRESS_97 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 97"]"""][!SetOption PROGRESS_98 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 98"]"""][!SetOption PROGRESS_99 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 99"]"""][!SetOption PROGRESS_100 MouseOverAction """[!CommandMeasure "Measure_Player" "SetPosition 100"]"""][!UpdateMeterGroup "Progress"]
IfFalseAction=[!SetOptionGroup Progress MouseOverAction ""][!UpdateMeterGroup "Progress"]
DynamicVariables=1
Just one more thing have to be done: add to the [METER_PROGRESS_BAR] meter, the following LeftMouseDownAction and LeftMouseUpAction options, respectively modify the MouseLeaveAction, as it follows:

Code: Select all

[METER_PROGRESS_BAR]
...
MouseLeaveAction=[!SetOption "Meter_Progress_Bar" ImageTint "#Meter_Color#,#Meter_Opacity#"][!SetVariable ClickProgress "0"][!UpdateMeasure "MeasureClickProgress"][!Redraw]
...
LeftMouseDownAction=[!SetVariable ClickProgress "1"][!UpdateMeasure "MeasureClickProgress"][!Redraw]
LeftMouseUpAction=[!SetVariable ClickProgress "0"][!UpdateMeasure "MeasureClickProgress"][!Redraw]
Leave untouched the other options of this meter.
Now a few explanations: when you press the button of the mouse over the progress bar, the ClickProgress variable will be set to 1 and as a result, the [MeasureClickProgress] measure will set the appropriate MouseOverAction options to each of the [PROGRESS_XX] meters. These options will be kept only while the button of the mouse is kept pressed. When you release it, the MouseOverAction options will be removed (by the [!SetOptionGroup Progress MouseOverAction ""] bang of the IfFalseAction option of the [MeasureClickProgress] measure).
As a result of these actions, while the button of the mouse is pressed, if you move the mouse over the progress bar, the progress is set to a new value each time you're passing with the mouse to another [PROGRESS_XX] meter.
Please try to implement the above things (I hope I succeeded describing what you have to do) and let me know if everything is working well. If it is, we'll do a similar update to the volume bar, too.
So is it working?