Rockbox

Tasklist

FS#10969 - WPS background not fully overwriting menu backdrop

Attached to Project: Rockbox
Opened by Alex Parker (BigBambi) - Friday, 05 February 2010, 23:48 GMT
Last edited by Jonathan Gordon (jdgordon) - Monday, 08 February 2010, 05:04 GMT
Task Type Bugs
Category Themes
Status Closed
Assigned To No-one
Operating System All players
Severity Low
Priority Normal
Reported Version Daily build (which?)
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Menu looks like menu.bmp, the time at the top and the section at the bottom are from the .sbs The UI viewport is in the black box. The wps background is wpsbackdrop.bmp which should draw over the backdrop when in the WPS

The WPS actually looks like wps-glitch.bmp. The complete theme is also attached. Hopefully this isn't just an error in the theme! Tests performed with r24511
This task depends upon

Closed by  Jonathan Gordon (jdgordon)
Monday, 08 February 2010, 05:04 GMT
Reason for closing:  Not a Bug
Additional comments about closing:  see my last comment
Comment by Daniel Empie (BlastTyrant) - Saturday, 06 February 2010, 05:38 GMT
This is not a bug - it's theme coding problems.

Where to start? Well, for one, you were trying to put the entire WPS inside that black-bordered box (including it's backdrop). That's why the now playing graphic was cut off (among other problems). You needed to make your UI Viewport setting take up the whole upper part of the screen, and not just that bordered box. Also, in your cfg you never put 'statusbar: custom' in it, so the old statusbar was loading up in the simulator.

In your wps: I put the progress bar in here (I don't think that it works in the sbs), changed where your viewports were positioned, and removed more than half of the viewports that weren't needed. The backdrop image should probably have the unfilled progress bar moved up so that when you are in the menus it is covered by the black-bordered box that is supposed to contain the menus.

In your sbs: I couldn't get anything from it to load in the simulator. I tried commenting out almost everything and then adding in a single image or a single line of text, without any luck. It's probably a positioning You'll have to figure this one out. You'll also have to figure out how to get the menus to be contained within the black-bordered box (if possible). I didn't spend a lot of time on this tonight - I didn't have that much free time to do so.

What you might want to do in the meantime is look at other peoples themes to see how they work, and to try getting images and text lines to work one at a time.
Comment by Alex Parker (BigBambi) - Saturday, 06 February 2010, 18:25 GMT
The UI viewport should be in the black box, if it is the entire display, then the menu, filelist etc. will not be bounded inside the black box. This is the point of the UI viewport. The WPS backdrop is loaded before any of the WPS viewports are defined. From the wiki: "For the WPS, all lines before the first viewport declaration are drawn in the default (full-screen) viewport, and lines after a viewport declaration are drawn within that viewport."

Progress bar works just fine in the sbs, and has done for ages.

The missing custom statusbar from the theme.cfg is an error, yes. If you select the sbs through the menu it works just fine.

I'll have a check of the others things. I'm not saying it isn't a theme coding issue - in fact, it probably is. However, it isn't for all the reasons that you have listed, so I'm going to wait until JdGordon tells me I'm a fool before I shut it :)
Comment by Daniel Empie (BlastTyrant) - Saturday, 06 February 2010, 19:38 GMT
Yes, I was wrong about a few things there. And it does seem like this is a bug now that I've messed with it for a while.

The UI Viewport doesn't work with the WPS properly it seems. I spent a few hours trying to figure out your theme this morning. I got it to "work," but it's kind of a hack. Not really the way that you intended it to work. The UI Viewport works fine with the SBS, just not with the backdrop of the WPS. It acts almost like a viewport background (not that there is such a thing yet...).

And I realized my mistake with the progress bar. I did manage to get that working, along with all of the other images, by shifting elements of the theme around the SBS and WPS.

So the "new" version works by disabling the SBS in the WPS and then reloading the statusbar images in the WPS. I also had to remove some viewports, add some other ones, and change their values. I still manage to get a little glitch in the WPS though where some part of the WPS will update and then it will cut off the top part of the AA. I think it's somehow caused by the layout of the date/time elements (along with it's viewport) interacting with the images that are loaded after it. But it's in a mostly done state, just not quite the route that you were trying to go...

Sorry for jumping the gun on this yesterday. :P
Comment by Teruaki Kawashima (teru) - Sunday, 07 February 2010, 02:32 GMT
BlastTyrant: your changes of viewports file is not needed at all and cause redraw issue.
the reason of cut off of AA is due to the line such as "%?pv<%xdsa|%xdsb|%xdsc|%xdsd|%xdse|%xdsf|%xdsg|%xdsh|%xdsi|%xdsj>".
this line contains nothing to show at line on wps where this line is located, but it "clears" the line on wps.
(sorry, probably i'm too ambiguous. to see what i said, append something like "aaa" to the line "%?pv<%xdsa|%xdsb|%xdsc|%xdsd|%xdse|%xdsf|%xdsg|%xdsh|%xdsi|%xdsj>".
you can see that the line with aaa is "cleared" and aa is cut off.)
and bassicaly UI Viewport is not for the wps (only used if the wps dosen't contain any viewport tag).

I agree to one point. the most reliable way to make wps work as expected is disabling the sbs in the WPS and duplicate code where it is needed.
Comment by Jonathan Gordon (jdgordon) - Sunday, 07 February 2010, 02:51 GMT
I havn't had a chance to look through this yet, but needing to duplicate the skin code should be absolutly not necessary. If that really is the problem then we should work to fix the underlying issue. (unless of course it's that you are drawing inside the ui vopewrt in the sbs, or outside of it in the wps.
Comment by Jonathan Gordon (jdgordon) - Monday, 08 February 2010, 05:04 GMT
AH HA!
Alex, what you are doing is ignoring the %Vi (or assuming too much about it) in the wps. The 'x' viewports are all %Vl|z|0|192|240|16|1|FFFFFF|000000| but your %Vi is %Vi|12|20|216|222|-|-|-| which means the 'x' viewport in the wps is drawing outside of the %Vi viewport which means it is expected to break.

with these changes it all works correctly (and the same for the y viewports)

Is this a simple woops? or is there a misunderstanding in how viewports work together which needs to be addressed?

Loading...