Since 12.5b5 my Material Folder script is not working properly anymore.
Since 12.5b5 my Material Folder script is not working properly anymore. Rendering background image of item is not visible. See attached videos, 12.5b5 (orange) vs 12.5b4 (grey). Good I had a backup.
Also since 12.5b4 some scripts of the Companion template are causing exceptions as reported in that post.
Pierre Hébert
]]>
< ![CDATA[
Thanks for the videos.
I don’t understand the context though. I can see the differences but I can’t interpret them: both versions have an icon but the color is different. If grey is 12.5b4 and orange is 12.5b5, how is this item supposed to be configured for the orange to be hidden? Is there an orange background box image hidden by an icon grey background layer?
There is also the “Favorite apps” folder title with a grey background. Is this the same issue ?
I turned on some hardware accelerated features in b5, other than that I can’t see a difference on backgrounds management 🙁
]]>
< ![CDATA[
Pierre Hébert The colors are orange and grey for easier differentiation.
The effect in orange (12.5b5) should look the same as the grey one (12.5b4). The folder background should fill with white (what it does), then the header/footer bar fill with the color. Which does not. Both are rendered and applied the same way.
]]>
< ![CDATA[
Can’t copy and paste link to the post with the script since resharing is disabled here. Search for “Material Folders”, sorry.
]]>
< ![CDATA[
This works:
iFld.setWindowBackground(imgFld);
This does not:
iHdr.setBoxBackground(imgHdr,”nfs”);
This works, too:
item.setIconLayer(imgIcon,”b”,true);
]]>
< ![CDATA[
This issue is giving me some hard time because of all the stuff around.
I just noticed that with b4 the animation is sometimes different: the header only appear at the very end of the animation, usually right after an app restart. Is this a known issue?
It looks like there is some sort of race condition, maybe b5 has just another timing that tends to trigger an existing bug more often.
]]>
< ![CDATA[
Pierre Hébert It might be I used a different style (“bg first, then header” and “header first, then bg”), this can be chosen in setup dialog of the script. However, I tried all styles on b5, all have the same issue of the header not being drawn. Script is the same, it’s just different offsets and duration for each single animation.
Please find the scripts as APK here:
https://app.box.com/s/14ys6gmee2rlrulgha7xb2xhrv4ow6p9
Run create script from menu on desktop to create and init the folder. Long tap on folder shortcut brings up the color picker and setup dialog.
]]>
< ![CDATA[
I tried with styles 1 and 5, the issue is roughly the same. What I have done is to run b4 and b5 side by side using two emulators. And the issue can be seen with b4 too, but less frequently. Sometimes it happens one time on two, sometimes almost never. With b5 always. Hence my assumption that there is a timing issue here.
I didn’t took the time to dive into your script code to see how it works but I’ll do this later when I have time. What mechanism do you use to synchronize animations?
]]>
< ![CDATA[
It’s a simple “loop” called via with setTimeout. A global step-counter, offset based decision which animation to play at which step.
Thanks for investigating, will take a look myself this evening/night, too.
Never notices before b5 at all BTW…
]]>
< ![CDATA[
I changed something in b5 that should notably speedup transparent drawing, that’s probably the reason why the issue is now more visible.
I started to test blindly every single code revision since b4 to pinpoint the exact change (yes, that’s dumb…)
]]>
< ![CDATA[
Pierre Hébert Tried again with b4 and b5. Changed delay from 5msec to 50msec and 100msec. Not a single frame was drawn in b5, not a single glitch in b4. Tried changes in code, even retrieved the image/bitmap/canvas each frame (pretty slowed everything down), did not help. It seems the setBoxBackground method that’s causing problems.
EDIT: Great to hear you could somewhat pin down the issue.
PS/OT: how’s you leg? Recovering well?
]]>
< ![CDATA[
Pierre Hébert Strange: when long tapping header and entering edit-mode, the background is visible and properly rendered.
]]>
< ![CDATA[
I found at least one bug, the background redraw may be skipped due to hardware accelerations. The fix is easy and seems to work on the emulator… although the initial opening is still wrong 🙁 There is definitely something else wrong but the animation should play better anyway.
I will make an update with current bug fixes, remaining bugs will have to wait for the next update.
Thanks for asking about my leg 😉 I am recovering quite rapidly, and I am doing everything I can for this. I can’t walk yet but at least I can put my socks alone now 🙂
]]>
< ![CDATA[
Works great with b6. Will take a look at initial opening glitch.
]]>