Open elementary_test go to popup, check enable popup scroll and then click to open some of the popups. The sizing is broken on all of them.
|Resolved||zmike||T6926 Legacy Breaks That Need to Be Fixed for Release|
|Resolved||None||T6886 Elm Popup with scrollable enabled is borken|
|Duplicate||herdsman||T6593 edje min size calc is broken with TEXT part and scale factor != 1|
- Mentioned In
- T6593: edje min size calc is broken with TEXT part and scale factor != 1
T6926: Legacy Breaks That Need to Be Fixed for Release
- Mentioned Here
- D6361: Focus Manager: Recursively go into subobjects. This fixes scrollabe popup being broken @T6886
rEFL253430ab7634: efl_ui_focus_manager_calc: call next after requesting a subchild
T6593: edje min size calc is broken with TEXT part and scale factor != 1
The problem i see with this is, that it plainly causes bugs. What you patches does it the following:
Imagine something like
(a) / \ / \ (b) (c)
Now imagine this little tree n times, where a is connected to b, so we get some sort of cascade.
After your patch
Which is definitly not what we should do.
Also, it strikes me quite odd, what causes edje or something else to misplace the scroller, i somehow cannot believe that this is caused by something in focus.
I dont disagree with you. When I found this to be the commit in question I thought I must have accidentally bisected wrong, until I tested the fix and confirmed that fixed it. Something with the focus tree calc realizes all the parts/objects in the scrollable popup?
After a evening of debugging with @okra, (which was quite usefull):
The following patch makes the issue not completly go away but better:
However we have progress!
And my interpretation is, that edje has a bug here, and does not mark itself as smart_changed, but it should.
It is a drawing/rendering issue. See this video: http://www.smhouston.us/stuff/popup_render.ogv ... Notice the focus calcs the objects at the exact coordinates and size and placement of where they are supposed to be, regardless of the popup being drawn incorrectly. For reference of what the popup actually looks like drawn correctly so you can compare to the focus highlight in the video: https://www.enlightenment.org/ss/display.php?image=e-5b3bad1d204ad8.08297482.jpg
Most likely due to forcing a canvas recalc; see evas_render_pre where pending objects are finalized (unlikely) or evas_smart_objects_calculate which forces a canvas-wide recalc of smart objects which have the recalc flag set. I would expect that by the time the RENDER_PRE callback finishes then whatever is not currently sizing correctly has been fixed based on the above comment.