There are a number of cases like this. SplitPanels inside DisclosurePanels
for example. Other things inside StackPanels.
They didn't work in 1.5 and the ones I have tried still don't work in 1.6.

The problem appears to be because if you add these things to a closed DP or
StackPanel, then the panel you are adding to is not attached to the DOM and
therefore any widget (like a SplitPanel) which uses absolutely positioned
elements has no reference to absolutely position them (and 0% to set widths
etc).

I first mentioned this in August last year but despite a bump or two, got no
reply from the GWT team. Because there was no fix forthcoming or any
response at all, I eventually took down the 1.5 version of my web site and
put the old 1.4 version back up.

I asked again when I discovered the problem still exists in 1.6. No
response.

I have a quite major project to write in GWT starting Monday, so I will
constrain the design so none of the more complex panels get nested inside
each other. It's very limiting in a large project, I may have to resort to
writing my own versions of things I need.

Maybe V2 will fix it.
Ian

http://examples.roughian.com


2009/2/27 Mike Pontillo <ponti...@gmail.com>

>
>   Additional detail on this: it looks like it's only broken in the
> hosted browser; seems to work fine when I try it from FF3/Linux or IE6/
> XP...
>
> Mike
>
> On Feb 27, 9:25 am, Mike Pontillo <ponti...@gmail.com> wrote:
> >    I was going to post this as a bug, but thought I'd poll the
> > discussion group first. I wasn't sure if this was a TabPanel or a
> > DisclosurePanel bug, or if I'm just doing something wrong.
> >
> >    The problem is, if I put a DisclosurePanel inside a TabPanel, it
> > does not resize correctly when a width is set. Example code:
> >
> >   public void onModuleLoad() {
> >           TabPanel tp = new TabPanel();
> >           tp.setWidth("100%");
> >           DisclosurePanel dp = new DisclosurePanel("Test Disclosure
> Panel");
> >           dp.add(new Label("This is some test text"));
> >
> >           tp.add(dp, "Disclosure Panel Tab");
> >           tp.selectTab(0);
> >
> >           RootPanel.get().add(tp);
> >   }
> >
> >    Note that the first time you expand the disclosure panel, the test
> > text appears below the visible area. If you click the disclosure panel
> > two more times, it resizes correctly. Note that it is not always able
> > to recover; in a larger application it can get so out-of-whack that
> > the disclosure panel is never even visible again.
> >
> >    If I take out the width, it works, but it's "ugly". Am I missing a
> > best practice here, or should I just not be using DisclosurePanel?
> >
> > Regards,
> > Mike
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To post to this group, send email to Google-Web-Toolkit@googlegroups.com
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to