Author: titmuss
Date: Thu Mar 13 07:40:38 2008
New Revision: 2111
URL: http://svn.slimdevices.com?rev=2111&root=Jive&view=rev
Log:
Bug: 6019
Description:
The window layout was not being correctly calcualated when the help text
changed, especially when
events were delivered to objects while rendering the menu. This change repeats
the window layout
until all widgets are corectly positioned.
Modified:
trunk/squeezeplay/src/squeezeplay/src/ui/jive_widget.c
trunk/squeezeplay/src/squeezeplay/src/ui/jive_window.c
Modified: trunk/squeezeplay/src/squeezeplay/src/ui/jive_widget.c
URL:
http://svn.slimdevices.com/trunk/squeezeplay/src/squeezeplay/src/ui/jive_widget.c?rev=2111&root=Jive&r1=2110&r2=2111&view=diff
==============================================================================
--- trunk/squeezeplay/src/squeezeplay/src/ui/jive_widget.c (original)
+++ trunk/squeezeplay/src/squeezeplay/src/ui/jive_widget.c Thu Mar 13 07:40:38
2008
@@ -323,13 +323,13 @@
if (perfwarn.layout) t1 = SDL_GetTicks();
+ peer->layout_origin = jive_origin;
+
/* update the layout */
if (jive_getmethod(L, 1, "_layout")) {
lua_pushvalue(L, 1);
lua_call(L, 1, 0);
}
-
- peer->layout_origin = jive_origin;
if (perfwarn.layout) {
t2 = SDL_GetTicks();
@@ -346,13 +346,13 @@
}
if (peer->child_origin != jive_origin) {
+ peer->child_origin = jive_origin;
+
/* layout children */
jive_getmethod(L, 1, "iterate");
lua_pushvalue(L, 1);
lua_pushcfunction(L, jiveL_widget_check_layout);
lua_call(L, 2, 0);
-
- peer->child_origin = jive_origin;
}
return 0;
Modified: trunk/squeezeplay/src/squeezeplay/src/ui/jive_window.c
URL:
http://svn.slimdevices.com/trunk/squeezeplay/src/squeezeplay/src/ui/jive_window.c?rev=2111&root=Jive&r1=2110&r2=2111&view=diff
==============================================================================
--- trunk/squeezeplay/src/squeezeplay/src/ui/jive_window.c (original)
+++ trunk/squeezeplay/src/squeezeplay/src/ui/jive_window.c Thu Mar 13 07:40:38
2008
@@ -90,7 +90,7 @@
}
lua_pop(L, 1);
- if (peer->w.child_origin != jive_origin) {
+ while (peer->w.child_origin != jive_origin) {
#if 0
/* debugging */
jive_getmethod(L, 1, "dump");
_______________________________________________
Jive-checkins mailing list
[email protected]
http://lists.slimdevices.com/cgi-bin/mailman/listinfo/jive-checkins