INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1] 2   Go Down

Author Topic: Skinning The Playing Now popup  (Read 5817 times)

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Skinning The Playing Now popup
« on: July 13, 2024, 01:49:33 am »

The skinning comments are getting a bit spread out through the 'announcement' thread, so, let's try and fix that :)

[Edit by JimH -- a new thread is here: https://yabb.jriver.com/interact/index.php/topic,139415.0.html ]

The old thread is here: https://yabb.jriver.com/interact/index.php/topic,139189.0.html

I said:
Evening Craig, been thinking about the mouse over detection I've experienced...

The original does not have this issue. Is that because of transparency?

When the MC popup handles transparency, will it just ignore those areas, effectively fixing the mouse-over image border detection thing?

-marko

to which cncb replied:
What are you experiencing?

and the answer:
Have a go with that logo skin I attached above...

Move the mouse slowly from, say, the "Prev" button to the "Stop" button... As you leave previous and enter stop, both buttons are in a "mouse over" state. My thoughts on this figured it was to do with the inevitably overlapping transparent areas of the images?

-marko

and, that should get us rolling here :)

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #1 on: July 13, 2024, 02:20:29 am »

Now, Craig, I'm sure you asked about a background with transparency? Was I dreaming, because I can't find it now? :)

Anyhow... on that subject...

The original plugin allowed you set a hex colour in the background image to be transparent. I always used #000000
The background is a canvas upon which the other items that make up the skin are placed. Anything placed in an area defined as transparent is simply discarded. For it to be seen, it must be moved into a non-transparent area of the background.
The original plugin also has a 'debug' mode. This places a lined border around each item, which is massively helpful when you need to the placement pixel perfect.
The debug mode also helps explain my thing regarding the 'mouse-over' states of the buttons as the mouse moves from item to item...
See attached snap-040.jpg
On the logo, note that the 'Next' track button has transparency on its right edge, which is discarded as it sits over a black area of the background.
You can also now see the overlaps of the control buttons around the central play button. These areas are also transparent and completely ignored by the plugin, so, as the mouse moves from button to button, the mouse over state changes are immediate and precise.


Does that help?

While we're here...
This is quite a good example of a popup skin designed to be an MC mini-view alternative, so snap-041 shows it with debug off and allows me to talk a little more about why it's such a functional thing...

Aside from the obvious logo area on the left, all areas of which work as you'd expect, all have interactive states and informative tooltips.
On the right, the album cover has a tooltip (album review or artist bio IIRC) but the outer buttons, they might interest you... starting at the top and working clockwise, here's what they do...
  • Restores a minimised MC
  • Closes the popup
  • Minimises the MC window
  • Shows an interactive list of the tracks in Playing Now, as shown in snap-042

The one other interactive item available, but not used in this skin is volume control, a snip from the end of my 'Noire-Toolbar' skin shows it in snap-043.
Also note the very subtle drop-shadow effect. That's hard coded in the plugin and to me, is a really neat finishing touch :)

Personally, I found popups on track changes really quite annoying and distracting, but these skins that emulate MC's old mini view skins are, actually, really very good indeed :)

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72380
  • Where did I put my teeth?
Logged

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #3 on: July 15, 2024, 01:16:27 pm »

marko,

We could add something to handle overlapping images, but wouldn't one option be to make the main logo like the one on the right? That is, the background logo image would include the outer gray segments instead of each segment being part of each control/button image.  Then you would just overlay the control images over the logo and there would be no overlap.  You could expand the transparent background of the control images to have a larger click area.

Edit: I see that the logo image already has the gray segments so it might just take a little editing of the button images.  I will share if I get something working.

Edit2: I have attached a modified Logo skin to show what I was describing.  Only the next button was done as a quick example.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #4 on: July 16, 2024, 11:45:37 am »

OK, I kind-of see what you've done there, but, it's nowhere near as elegant or precise.

Give me till the weekend when I'll have time for a proper play with it.

Oddness I see currently with logo_mod, is, get the mouse into the next button so it shows mouse-over state...
Now, on the same "Y-axis" level as the button function icon, drift the mouse over the 'Play' button. Transition of mouse over states is close to perfect.
Now, back over the next button, take the mouse down to just before the mouse over state changes, and now move the mouse slowly towards the Play button... Note that the Play button enters mouse-over state waay too early. The mouse is good what, 10 pixels away from the play button when it actually changes to register 'mouse-over'.

That's what I see right now and don't have time to start digging into it. Be the weekend soon :)

Also, I opened the popup settings, got distracted and forgot I'd opened them. The popup allowed me to right click on it and open a second settings dialogue. Not long after clicking around in this state, MC crashed :)

More feedback in a few days.
ps. The 'crash on move' does appear to be fixed.

-marko

gappie

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4580
Re: Skinning The Playing Now popup
« Reply #5 on: July 19, 2024, 07:04:36 am »

with just a bit fooling around i could change one of the originals to use a bigger thumbnail and move things around.
(ofcource i did it on a renamed copy)
but while working on the skin mc crashed often.

 :)
gab

ps: that was with build 01.  ;)
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72380
  • Where did I put my teeth?
Re: Skinning The Playing Now popup
« Reply #6 on: July 19, 2024, 07:14:25 am »

Hi gappie,  That should be fixed in a later build.
Logged

gappie

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4580
Re: Skinning The Playing Now popup
« Reply #7 on: July 19, 2024, 07:17:45 am »

Hi Gappie,  That should be fixed in a later build.
Cool Jim,
ill keep on playing.
 8)
gab
Logged

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #8 on: July 19, 2024, 11:52:24 am »

marko,

We could add something to handle overlapping images, but wouldn't one option be to make the main logo like the one on the right? That is, the background logo image would include the outer gray segments instead of each segment being part of each control/button image.  Then you would just overlay the control images over the logo and there would be no overlap.  You could expand the transparent background of the control images to have a larger click area.
The weekend is here. Whilst I've not started on this quite yet, I have been thinking about it on and off all week...

In my observations above, without even looking, the reason 'logo_mod' has that odd mouse-over behaviour with the central play button is, of course, because that's where they overlap, still.

More thoughts on this...
Yes, I could make the active portion be just the button icons, but, seriously, look at that logo... Those are clearly defined buttons that are crying out to be brought to life. So, in that regard, it should be a 'no' from me. It's crippling the skin in order to work around limitations of the current implementation.

Quote
We could add something to handle overlapping images,
Please do this :)
It helps, not just with this 'Logo' idea of mine, but with any future skins not yet thought of that will expect transparency to be ignored.

If you get the 32bit MC installed somewhere, and install the plugin I sent you, and try that Logo skin, you will see what I mean... All mouse-over transitions are prompt and precise. I don't mean to be difficult, just, if it's possible to do (which it must be as it's already been done) it should be done :)

-marko

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #9 on: July 19, 2024, 12:47:21 pm »

Craig, here's another interactive item the original plugin has. I didn't use it that much in my skins, but, still, it was super handy when it was showing... aand, it also dealt with transparency...

Around that time, twenty-ish years ago, user 'dragyn' (aka Dave) created the "Opus MC Blue" skin. It's still a great skin even today...


Pay attention to the progress bar in that skin... little blocks that filled up with blue. Attached is a pic of one of the popups I created to match that skin, with matching, interactive, progress bar.

Just to have you tearing out what little hair you must have left by now ;):D

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #10 on: July 23, 2024, 11:48:23 am »

Hi Craig, nothing in the notes for builds .04 or .05

Is there any progress/thoughts on this transparency thing?

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #11 on: July 23, 2024, 12:22:41 pm »

I was out for a few days last week.  I almost have something ready for the overlapping controls.

There is no mechanism for conditional control of images (the progress bar in your example) so I will have to think about that.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #12 on: July 24, 2024, 02:13:01 pm »

The next build (7) will have
Changed: Added option for Playing Now Popup skins to have mouse over ignore transparent areas of images.

To enable this in your skin put MouseBehavior="1" in your Settings element.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #13 on: July 24, 2024, 10:39:36 pm »

Nice one. Looking forward to testing that out.

I don't know how James did it (nor how critical it is today) but if it helps at all, the progress bar was made up of the attached images, and the code below in the skin ini file:
Code: [Select]
[TrackPosition 1]
Top=226
Left=133
Background=.\Progress-clear.png
Marker=.\Progress-full-marker.png
FullBackground=.\Progress-full.png
Direction=Horizontal
The volume slider was also made up from the same three images and code.

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #14 on: July 25, 2024, 11:47:31 am »

The next build (7) will have
Changed: Added option for Playing Now Popup skins to have mouse over ignore transparent areas of images.

To enable this in your skin put MouseBehavior="1" in your Settings element.
This appears to be working really well indeed. Great work. Thank you. At the weekend, I'll fix the background for the Logo256 skin and attach it here for all to play with, and also, hopefully, try to port another couple of skins that rely heavily on transparency. They can be requested here, otherwise I'll pick one at least.

Am I correct in thinking that any specified image can take any existing MCC command?

Do we have "Volume" control yet?
Is there a way to get it to return the Media Center major and minor version, or, the full version, yet?

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #15 on: July 25, 2024, 12:36:50 pm »

Background transparency is not working yet, but I will have a "simulated transparency" for the next build.  That is, it duplicates what is currently behind it on the screen when initially displayed.  The flaw is that if you have it displayed on top for a long period of time it can get out-of-sync when switching the foreground window/program.  The good thing is that this "transparency" should work on Mac and Linux.

Yes, any MCC command should work.

No specific volume control, but you could add up/down buttons with MCC commands.

I could add this capability (version text).
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #16 on: August 01, 2024, 11:51:20 am »

Background transparency is not working yet, but I will have a "simulated transparency" for the next build.  That is, it duplicates what is currently behind it on the screen when initially displayed.  The flaw is that if you have it displayed on top for a long period of time it can get out-of-sync when switching the foreground window/program.  The good thing is that this "transparency" should work on Mac and Linux.
Craig, I got soo excited thinking we had proper background transparency, then, reading this was, kind of, crushing :)
Will we, at some point in the [very near?] future, be able to either specify a hex colour value in the background image to be made transparent, or, just make a background with transparency and have the popup handle it?

The pseudo-transparent effect is not going to work if the display time is set for a long length of time.
The pseudo effect is, imvho, pants in the main MC right click menu too. Why? Invariably, there is a tooltip showing when we right click, which vanishes upon right click, but is captured in the pseudo-transparent background of the right click menu... which is just, wrong, and has bothered me, for literally, years :)

Thinking about this 'long display time' setting... We currently have a keyboard combo to show the popup, which is good, although, kind of useless unless it's global, but we can tackle that later. We are also going to need a keyboard shortcut, plus an actual button, to close the popup too. This might require a new MCC command?

Yes, any MCC command should work.
Interesting... Will need to brush up on the commands available and see what can be leveraged here. Great potential.

No specific volume control, but you could add up/down buttons with MCC commands.
Yeah, I suppose. Not as direct, or precise as a slider, but could be made to work.

I could add this capability (version text).
Aye, go on, do it... You know you want to :)

aaand, finally, for this post...
I do understand that when something like this is being built from scratch, feedback is vital, but, I feel kind of bad at this stage of development because it feels as though mine is predominantly negative atm. Honesty is better though, right?
The transparency setting on overlapping images is working really well still, and I have tried to break it, but so far, without success :D

-marko.

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #17 on: August 02, 2024, 08:22:37 am »

marko,

Don't worry about it, I appreciate the feedback and testing.  That is why we put it out there.

I have not given up on "real" transparency yet.

Thanks.

Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #18 on: August 05, 2024, 10:53:48 am »

There is now skinning documentation here: https://wiki.jriver.com/index.php/Playing_Now_Popup
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #19 on: August 05, 2024, 12:14:37 pm »

Thinking about this 'long display time' setting... We currently have a keyboard combo to show the popup, which is good, although, kind of useless unless it's global, but we can tackle that later. We are also going to need a keyboard shortcut, plus an actual button, to close the popup too. This might require a new MCC command?

I could put something in the popup's context menu and/or have Ctrl+i close it when it's open.

Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #20 on: August 05, 2024, 12:34:36 pm »

Making the key combo a toggle would work for me.
You yourself have much more experience than me regarding the ways the many and varied users interact with the same thing. If you think the majority would buy into it, I'd go for it. It's a starting point if nothing else?

-marko

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #21 on: August 05, 2024, 01:19:11 pm »

I decided to go with the context menu item for now.  See how that works for you.  The next build will have this as well as the capability to display the version number.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #22 on: August 08, 2024, 10:01:53 am »

Finally got background transparency working.  This is for Windows only.  To use set BackColor="Transparent" in your skin and have a background image with transparency.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #23 on: August 08, 2024, 11:30:42 am »

Back of the net. Get in. Thanks Craig. Testing will begin shortly... :D

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #24 on: August 08, 2024, 12:51:27 pm »

Thanks for the work on this, it's shaping up nicely.

As this is the one skin I've been heavily testing with, here it is, with all its transparency glory, attached. Enjoy. (or don't, I'm not that happy with the imagery)

In the coming weeks, I'll brush up on available useful MCC options and experiment with volume up/down buttons as opposed to a slider.

Also attached is a screenshot showing the old beside the new. The 'new' looks like a bag of bolts in comparison. I think this is most likely down to the different approaches taken, where the old allows a specified background colour to be transparent. I just need to more carefully clean up the component images and then it'll look much cleaner.

Note also that while this skin is active on my desktop, a different skin is used in the background to update the image in my forum signature each time the track changes.

Thanks again Craig,

-marko

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #25 on: August 10, 2024, 02:16:39 am »

I decided to go with the context menu item for now.  See how that works for you.  The next build will have this as well as the capability to display the version number.
With the popup set to 'always on top', whilst working in any other application, choosing to close the popup causes MC to bounce into focus if it is not minimised at the time, which is undesirable.

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #26 on: August 11, 2024, 04:44:35 am »

That's the "Logo" skin pretty much as good as my editing skills will allow...
In the attached, the actual logo is on the left, and the skin is on the right. It's actually not too bad.

Other probably undesirable 'user-experience' things happening:
With playback stopped, MC minimised, popup showing with time to show set at 300 seconds...
Pressing "Play" causes the popup to go close until playback begins, then it comes back.
Popup flashes off then on again on track changes.
Popup flashes off then on again if the user presses either next or previous.
Pause is fine on initial click, but the second one to restart playback causes the popup to close and open.

Something is causing the tooltips to stop working, but I've not figured out what just yet...
Tooltips are kind of crucial in something like the Logo skin as they're the only way the user can get any information without bringing up the full MC application.

-marko

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #27 on: August 11, 2024, 07:40:51 am »

btw, that Logo skin looks better in real life than it does in the screenshot above :)

Moving swiftly along, working on something else now...

Is there any possibility of adding access to the "[Elapsed Time] // [Total Time]" tokens for the current track? The ones available when customising the standard view player display.

More thoughts...
They way the default, minimalist xml works to pull design elements from the current skin is, well, really quite clever. I intend to have a go at fully leveraging this sometime in the future. For the time being though, having pretty much finished with the Logo skin, I've moved on to porting my little always there toolbar that sits across the top of my screen...


The WIP is the lower line. If I change the standard view skin to something that uses dark rating stars, this is not going to work very well. Would it be possible to specify a skin specific rating star image(s) that would still work to apply rating changes to the current, previous or next tracks?

-marko

gappie

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4580
Re: Skinning The Playing Now popup
« Reply #28 on: August 11, 2024, 09:26:27 am »

I could put something in the popup's context menu and/or have Ctrl+i close it when it's open.
i find it a pity that you did not go for ctrl + i to also close it. it feels so natural to do that. using ctrl + I to see what is playing when you are busy in other programms, and the same to close it again. going for that close in the context menu is bothersome.
and a big thanks for what you are doing. i have it disabled, but use the keyboard all the time to open it. made it work global which is helpfull.

 8)
gab
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72380
  • Where did I put my teeth?
Re: Skinning The Playing Now popup
« Reply #29 on: August 11, 2024, 10:33:43 am »

i find it a pity that you did not go for ctrl + i to also close it. it feels so natural to do that. using ctrl + I to see what is playing when you are busy in other programs, and the same to close it again.
You're probably right.  Making it global could have conflicts with other programs.
Logged

gappie

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 4580
Re: Skinning The Playing Now popup
« Reply #30 on: August 11, 2024, 10:48:31 am »

You're probably right.  Making it global could have conflicts with other programs.
yes of course as with everything global, i just thought i point it out that it is possible to do, for when somebody is interested. and its great that things like that can be done in MC. it really is.  :)

 8)
gab
Logged

EnglishTiger

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 1073
Re: Skinning The Playing Now popup
« Reply #31 on: August 11, 2024, 11:19:02 pm »

Something is causing the tooltips to stop working, but I've not figured out what just yet...
Tooltips are kind of crucial in something like the Logo skin as they're the only way the user can get any information without bringing up the full MC application.
-marko

marko - the tooltips, for both Images and  Text, aren't working for me either, it's something I reported in a previous version of MC33.
Logged

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #32 on: August 12, 2024, 08:59:41 am »

The next build has a toggle for the shortcut in the Settings to make it global.

I am looking into having Ctrl+I close it as well.

I have noticed the tooltips too.  This seems to be when the popup does not have focus which is most of the time.  I will see if there is a way around this.

The popup is recreated each time it is displayed automatically, so that is why it appears to be flashing when you have it shown pretty much all the time.

You might be better off adding your own images for star rating (individual stars with specific commands).  I will think about elapsed time.



Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #33 on: August 12, 2024, 12:32:06 pm »

The next build has a toggle for the shortcut in the Settings to make it global.
Sweet.

I am looking into having Ctrl+I close it as well.
More sweetness :)

I have noticed the tooltips too.  This seems to be when the popup does not have focus which is most of the time.  I will see if there is a way around this.
We have faith :)

The popup is recreated each time it is displayed automatically, so that is why it appears to be flashing when you have it shown pretty much all the time.
Is this something that can be addressed in a future build?

You might be better off adding your own images for star rating (individual stars with specific commands).  I will think about elapsed time.
I used to have them on my Windows taskbar, way, way back in MC12 days... If I use this approach though, there won't be a "line of five stars with a different image for rated and unrated" will there? The old plugin allowed to specify a filled rating image and an unfilled one, and then took care of the display and interaction. Would be kind of neat if the new could do this too.

Thanks in advance for any progress on the elapsed/total time thing.

-marko

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #34 on: August 16, 2024, 01:52:44 pm »

Playback time display has been added.  I will update the Wiki but you can use something like this:

<ContentItem Type="time" Name="ElapsedTime" X="200" Y="75" Width="100" Height="15" Text="{e} // {t}"/>
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #35 on: August 16, 2024, 09:29:10 pm »

Hi Craig, thank you for the time tokens, looking forward to the next build for those.

I have found another bug...
Creating a popup 25 pixels tall. If I specify Border="Yes", around 15 pixels are being added to the height of the popup.

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #36 on: August 17, 2024, 08:04:39 am »

Getting ever closer to switching off the old plugin and attempting to fly with only the new...

In the attached, the top is the old. The gap in the middle of the new will show the elapsed/total track time once it's available. The new is getting there, but some observations regarding where the new still lags behind. (Two areas)

First, the volume slider. In the old, we can simply click and release anywhere on that slider to set the volume, or, click, drag and release. The old also has a tooltip that shows the current volume percentage setting.

In the absence of a slider in the new popup, I made buttons. "Mute" works beautifully. Up/Down however, are really not pretty. I set them at 2% increments. If you want to go much higher/lower, you instinctively click faster... This is frustrating because it doesn't work. You have to "click-wait a few seconds-click-wait a few seconds" etc. The slider in the old is instantly responsive.

Second, the ratings. They work here, just, but only because the standard view skin rating object doesn't use dark stars.
The old plugin allowed to specify a filled rating icon, and an unfilled icon and the code took care of the presentation in five star format, showing filled/unfilled as you mouse over to indicate what will be applied if clicked there, and applied the rating as chosen by the user.

-marko

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #37 on: August 21, 2024, 02:25:13 pm »

There's a lot of cross-over between functionality requests and skinning... My brain is beginning to hurt thinking about what goes where, so I've decided to attempt to pool all issues and requests I have thus far into this post.

First of all, thanks for the "alternative skin" option in output settings. Currently, your output is what you see in my sig here. Thanks for listening.

A lot of what I'm highlighting obviously takes the popup way beyond a simple information popup. However, the interactive capabilities introduced by James in such a robust fashion all those years ago that they still work flawlessly today, mean that the popup can be fashioned to mimic the old "MiniMe" skins that some may remember. They were very popular.

The work that Craig has done in a relatively short space of time is outstanding, but (there's always one of those right? :)), still room for improvement if possible...

Now, here's the current list...
ctrl+i and the output system
If playback is stopped, ctrl+i will show the popup. This is as expected, very good. Please could the output system also fire whenever ctr+i shows the popup?
Sorted. Thank you.

RE. "Progress/Duration"...
As you can see in my duo screensnip image attached in the post above, the 'old' plugin always displayed this information, even if the track was stopped. The new popup leaves the space empty if playback is stopped. I tried to get clever here and created a library field using if(isequal(isplaying(),1),{e} // {t},Duration: [Duration]) but this failed, because, the popup will only accept text or time for the same ContentItem, not both.
Blanked out bits are not aesthetically pleasing. Is it possible to mimic the old behaviour in the new?

Sorted. Thank you.

Current Playlist button:
Once again, referring to the snap-060 attached above, where the top is old and the bottom is the new. Note the button with the music note on it? That can be clicked, and a textual list of the tracks in Playing Now is shown. Any entry in that list can be clicked on, and playback will immediately move to that track and continue from there. Could this be possible with the new popup?

Very effective approach to this which is working well. Thank you.

Ratings
The 'New' uses the [Rating] element of whichever standard view skin is currently active. This means that when creating a popup skin, the skin creator has zero control over how the rating stars will appear in the skin. Somewhere earlier, it was suggested that individual images be created and given appropriate MCC commands to apply ratings. In theory, this could work, but visually, won't be able to impart the current rating, and will also be lacking in 'Mouse-Over' feedback. The old popup managed this perfectly, and it must have all been in the code, because, all the skin creator needed to do was specify a filled image, an unfilled image, and a highlight brightness value, and the result was exactly as in MC, without the "clear rating" button.

I can see the enormous potential of the ability to build a skin using elements from the current standard view skin. Spend some time on that, and one seriously neat skin that adapts on the fly as per the current skin could be created. I fully intend to have a go at that sooner rather than later.
I feel though, that we shouldn't be constrained by this, so, please can we have custom, graphical ratings as per the old plugin?

Tested, working well, thank you.

Tooltips
I'm sorry, but these need more work. The pseudo transparency thing does not look right at all.
Tested, and, all sorted here too.

Volume Control:
Please, can we get a volume slider control? I made buttons, and they do work, but they are really, pretty clunky :)
Half way there... I really do think we will need to be to create custom sliders that are independent of the standard view skin. Like we can now with ratings.

Redrawing
The popup is recreated each time it is displayed automatically, so that is why it appears to be flashing when you have it shown pretty much all the time.
Any improvement in this behaviour would be gratefully received.

Thanks again for all you're doing,
-marko

Moe

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 718
  • Hi
Re: Skinning The Playing Now popup
« Reply #38 on: August 23, 2024, 08:06:35 pm »

Is it possible to color the border around the entire popup? I tried BorderColor and Border_Color with no success.
Logged

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #39 on: August 24, 2024, 07:53:55 am »

Is it possible to color the border around the entire popup? I tried BorderColor and Border_Color with no success.

We will consider adding this.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #40 on: August 25, 2024, 04:25:22 am »

Good morning...
Being aware that transparent backgrounds are currently a 'Windows only' thing at the moment, and not wanting the Linux and Mac users to miss out on the novelty of a working MC logo, I set about getting one ready with a background...

This has given me some more skinning questions... to help me understand what's actually going on...

Why is it that when I left click on the thumbnail images, none of which have any action assigned to them other than a tooltip, it opens a right click menu?
I checked the stock "3-Track" skin, and there, I see the same thing, but, only with the "Current" thumbnail.

What do you call the cursor you get when you're over a hyperlink? You know the one, anyway, right? In "3-Track", the thumbs for next and previous show that cursor, while the current one, keeps the normal cursor, and spawns the context menu? What is causing the different cursors?

It's the same in the attached. All of the text items shown get the hyperlink cursor, but the exact same text tokens in a different skin, do not. What might be causing that? There are no actions assigned to the text items.

BTW, saw the tooltip additions on the wiki page... This thing is going to be so, so good :D

Thanks,
-marko

markf2748

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 804
Re: Skinning The Playing Now popup
« Reply #41 on: August 25, 2024, 01:31:03 pm »

Why is it that when I left click on the thumbnail images, none of which have any action assigned to them other than a tooltip, it opens a right click menu?
I checked the stock "3-Track" skin, and there, I see the same thing, but, only with the "Current" thumbnail.
In the "3-Track" skin, the PrevThumb and NextThumb lines each have tooltips and MCC commands assigned, Command="10004,0" and Command="10003,0" respectively.  I find that Left Click on these two thumbnails activates the commands (i.e. changes track), while hovering over them activates their tooltips.  Left Click below the thumbnails brings up the Right Click menu, which also happens with Left Click in all non-thumbnail areas of the popup window, as well as on the center thumbnail which does not have a command assigned.

So apparently the Left Click rule is "If MCC command is assigned then execute it, otherwise display the Right Click Menu", which seems fine to me in this popup context.  In any case, the Left Click rule should be added to the top of the Wiki page for the Playing Now Popup.

The concept is really great, but I find the "<<PREV" command does not work consistently.  The "NEXT>>" command works nicely.  Reported in:  https://yabb.jriver.com/interact/index.php/topic,139456.msg967622.html#msg967622

FYI, I lightly skinned the "3-Track":  increased its width, changed X-Y coordinates as needed in order to allow larger text boxes with more characters centered under the middle thumbnail (currently playing), re-ordered lines, and chose to comment out the ratings.  Works well except for the reported "<<PREV" issue.
Logged

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #42 on: August 27, 2024, 10:43:11 am »

I'm not convinced. I find it confusing and unexpected when a right-click menu is displayed on a left-click. I've also yet to figure out why some text is arbitrarily showing the hyperlink cursor. I'm wondering if it might be related to overlapping defined regions for the text...

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #43 on: August 27, 2024, 10:48:17 am »

@cncb, thinking ahead to working out a dynamic skin that changes per the chosen standard view skin, those playerbar buttons are going to be troublesome as they come in all shapes and sizes.

When using Source="{PlayerBar,PlayButton,0}||{PlayerBar,PlayButton,1}||{PlayerBar,PlayButton,2}" could it be possible to express size as a percentage rather than a fixed width and height?

I don't know if that would take care of all cases, feels like it might do, but without testing, I couldn't say for sure. What do you reckon?

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #44 on: August 27, 2024, 12:05:28 pm »

I'm not convinced. I find it confusing and unexpected when a right-click menu is displayed on a left-click.

I made it this way to be easy for new users to access the menu (for move, etc.), but can remove this if it is confusing.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #45 on: August 27, 2024, 12:08:03 pm »

@cnbc, thinking ahead to working out a dynamic skin that changes per the chosen standard view skin, those playerbar buttons are going to be troublesome as they come in all shapes and sizes.

Before I could not get the buttons to layout exactly like the Player Bar, but I will revisit this.
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP

markf2748

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 804
Re: Skinning The Playing Now popup
« Reply #46 on: August 27, 2024, 06:36:21 pm »

I'm not convinced. I find it confusing and unexpected when a right-click menu is displayed on a left-click.
My first reaction was kind of a double take surprise, followed by delight with how clever and cool that is.  There is currently no use for a unique left click menu in the PNP.  So why not make it really simple for the settings menu to appear with minimal thinking on the part of user, showing up everywhere for both LMB and RMB except for where the "hyperlink hand" indicates LMB initiates an action.

Also, it has become nearly universal and automatic for people to LMB in order to drag/move a file, folder, or window.  So in a sense there is "precedent" for LMB to open a menu which includes the move action.

I made it this way to be easy for new users to access the menu (for move, etc.), but can remove this if it is confusing.
I vote to leave it as is for now.

I've also yet to figure out why some text is arbitrarily showing the hyperlink cursor. I'm wondering if it might be related to overlapping defined regions for the text...
I don't see this issue in my lightly lightly skinned "3-Track", Reply #41 (https://yabb.jriver.com/interact/index.php/topic,139241.msg967680.html#msg967680).  "Hyperlink hand" cursor only appears over the outer "<<PREV" and "NEXT>>" thumbnails.  Text boxes are carefully set up with no overlap, widest under the center image.  Just an FYI, since I don't know for sure if text box overlap is the root cause of what you report.
Logged

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #47 on: August 27, 2024, 11:28:47 pm »

I made it this way to be easy for new users to access the menu (for move, etc.), but can remove this if it is confusing.
Still feels odd, but if it works for others, no need to remove it. It's only in my face at the moment because I'm in heavy testing mode and clicking anything and everything presented. Once everything settles down I don't really see this being a show-stopping issue at all.

I've also yet to figure out why some text is arbitrarily showing the hyperlink cursor. I'm wondering if it might be related to overlapping defined regions for the text...

I don't see this issue in my lightly lightly skinned "3-Track", Reply #41 (https://yabb.jriver.com/interact/index.php/topic,139241.msg967680.html#msg967680).  "Hyperlink hand" cursor only appears over the outer "<<PREV" and "NEXT>>" thumbnails.  Text boxes are carefully set up with no overlap, widest under the center image.  Just an FYI, since I don't know for sure if text box overlap is the root cause of what you report.
I went with "text boxes are carefully setup to display as desired in tight spaces", moving them up or down a pixel here or a 2 pixels there, the transparent overlapping areas shouldn't be an issue, but I'm working at it to see if I can find the "why" :)

So apparently the Left Click rule is "If MCC command is assigned then execute it, otherwise display the Right Click Menu", which seems fine to me in this popup context.
Apparently so, though this logic is only applied to thumbnails. I also have a copy of my Logo skin here built using layers of images all the same size, so the all have the same x, y and size settings in the xml. It looks fine, mouse over detection is near perfect, and due to its nature, no left click anywhere should show the context menu, but they do, invariably blocking the MCC command assigned to the button, and also, blocking the assigned tooltip. cnbc has a copy of this for investigation later on.

-marko

marko

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 9124
Re: Skinning The Playing Now popup
« Reply #48 on: September 04, 2024, 05:10:15 am »

Sooo... Today, I have been working on a dynamic skin that changes according to the Standard View skin currently being used.

It's pretty good, but also flawed, depending on the chosen skin, and honestly, I can't imagine how the flaws could be ironed out as the source images can vary quite a lot from skin to skin. Even so though, the results are pretty good...
When they're good, they really are, good.
When they're passable, they are functional, but look amateurish
When they're bad... pick a different skin :)

The seriously neat thing though... I created a background image that was just the outer frame, leaving the interior transparent. I had no idea if this would work, but, ya gotta try otherwise, you won't know. It worked, really well :) The frame is constant, whilst the interior is filled from the current standard view skin. Brilliant...

Attached is where I got to so far. The volume controls were a stumbling block... so for now these are the same regardless of standard view skin selection.

-marko

cncb

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 3091
Re: Skinning The Playing Now popup
« Reply #49 on: September 06, 2024, 01:44:45 pm »

RedrawingAny improvement in this behaviour would be gratefully received.

Some improvement in the next build.  When the popup is re-created, it will initially draw with whatever BackColor you specify or skin dialog background color if not specified.  It will still "flash" a little before the content is drawn but it won't be solid white (unless that's what you want) :).
Logged
-Craig    MO 4Media remote and player:  Android/TV/Auto | iOS | Windows 10/UWP
Pages: [1] 2   Go Up