Something else related to this problem:  when a DockLayoutPanel is
animated to resize its children, onResize() is called *before* the
resize but my child component was expecting to examine its new size.

The JavaDoc for onResize says "This method must be called whenever the
implementor's size has been modified."

"Has been modified" signifies that it should be called *after* the
resize has occurred which would definitely be more useful and
expected.

Currently, onResize is not called at the end of the animation because
the animations onComplete() calls Layout.layout() and not
Layout.layout(0, callback).  i.e. if the callback was passed then
onResize() should also get called at the end of the animation.

John

On Mar 20, 12:31 pm, jd <[email protected]> wrote:
> Hi,
>
> I am experiencing a problem using a DockLayoutPanel with IE6 where a
> child widgets RequiresResize.onResize() is fired before the
> LayoutImplIE6 has updated the widgets width and height with new
> values.
>
> I have a child widget that needs to know when it is resized so it can
> resize a nested MapWidget.  I must do this because setting the maps
> height to 100% does not work inside a DockLayoutPanel child in IE7
> because the element is positioned absolutely using top, bottom, left,
> right.  Using this same absolute positioning for the child map does
> work in IE7 but obviously not in IE6.
>
> My current solution is to implement RequiresResize and explicitly
> resize the map to the dimensions of the container.  This works well in
> all browsers except IE6 because the container element has not yet been
> resized by LayoutImplIE6
>
> It looks like this is due to the RootLayoutPanel registering its
> window resize handler before the LayoutImplIE6 registers its handler.
>
> I could work around this problem by either making the map a direct
> child of the DockLayoutPanel which means that the browser specific
> resize problems are handled by the Layout.
>
> Alternatively, I could use another nested LayoutPanel or implement
> browser specific resize logic myself.
>
> But it seems that onResize() is designed for situations like this?
>
> Thanks,
>
> John

-- 
http://groups.google.com/group/Google-Web-Toolkit-Contributors

To unsubscribe from this group, send email to 
google-web-toolkit-contributors+unsubscribegooglegroups.com or reply to this 
email with the words "REMOVE ME" as the subject.

Reply via email to