Vaadin 6.7.0 breaks my Forms driven by a Table

This was originally posted under the announcement for the 6.7.0 release.

My Form is no longer displaying its fields in a GridLayout when an object is selected from it’s related Table. These worked fine for over a year all the way through version 6.6.8.

Here’s a YouTube video that shows this bug:

http://www.youtube.com/watch?v=E6NJZoVQwks

But it happens on simpler forms with a single Table+Form, though without the slider like the above demo shows, I don’t even know how to make any of the fields appear, though all of the buttons appear fine.

I believe it’s somehow related to layout issues in SplitPanels since moving their sliders causes the Form to partially appear when they are adjusted.

There were no responses on the prior postings in the announcement section, but I am concerned because I either have to suffer rolling back all of the changes for ChameleonTheme and TreeTable to revert back to 6.6.8, or my preference would be a solution I can apply quickly since this disturbs all current development efforts.

Perhaps later I can try to create a test case to help out with a ticket, but for now I can tell you that in my Table+Form combo, in a Window with a VerticalSplitPanel, I see the following in the HTML generated according to Firebug:


div class=“v-splitpanel-vertical” includes an element style=“width: 1261px”
…div style=“width: 100%”
…div class=“v-splitpanel-second-container” with style=“width: 100%”
…div class=“v-form” with style=“width: 1244px;” (appears to remove space for scrollbar on right side)
…fieldset
…div class=“v-gridlayout” but with a style=“width: 197px;”

I am not sure why the gridlayout all of a sudden is so small. If I expand the window, it will be bigger, but it’s never set to 1244 like the form’s width. And this is the code I used to create that layout:
[font=Courier New]

	layout = new GridLayout(2,9);
   	layout.setWidth(100, UNITS_PERCENTAGE);
	layout.setColumnExpandRatio(0, 0.5f);
	layout.setColumnExpandRatio(1, 0.5f);
	layout.setMargin(true);
	layout.setSpacing(true);
	setLayout(layout);

[/font]

So, my setting the width to 100 percent is no longer working. I do know that the Form’s layout in the bottom of the splitpanel is setVisible(false) initially, so perhaps that causes confusion in the sizing calculation, so when a row is selected in the Table in the top of the splitpanel, and then I set the Form’s layout to setVisible(true), it has no size, but will reveal more if I then expand the window, but it’s always off by the original window size.

It looks like you guys may have found this bug since 6.7.1-nightly-20111007 seems to have resolved it.

So we look forward to the official 6.7.1 release. Cheers to Team Vaadin!