Context: we have a prototype whose global layout is made of a Viewport enclosing a BorderLayoutContainer.
In the center area, we put a ContentPanel, which we clear and where we add a widget, depending on selections in the tree on the west side.

First point: The widget we put is a grid inside a FramedPanel. It seems we cannot add a grid via UiBinder. I see no example in the Explorer Demo, and if I add <gxt:grid.Grid ui:field="grid"/> then declare it as UiField(provided=true) Grid<Data> grid; and fill after the createAndBindUi, I get only empty divs. Looks similar to my issue with filling a UiBinder-declared combo box with RPC I reported earlier.
When adding the grid manually after the UI binding, the first time there is a glitch: the body of the grid goes way beyond the bottom of the browser screen, as if no height was defined. Upon resizing the browser, the body is correctly sized and the scrollbar appears. If I go to another grid, it is correctly resized the first time (not if I resized the browser while the grid wasn't displayed, then I display the grid...). So it is mostly okay.

Second point: in another view, we put in the content panel a FramedPanel containing a VerticalLayoutContainer (VLC) because we need a ButtonBar above the grid.
We have to add the grid manually here too, to the VLC, after the ButtonBar.
Here again, the grid has no scroll bar and is way too tall.
Using Firebug, I can see it is the div of class x-grid3-scroller has a defined width (set to the width of the FramedPanel, but which isn't adjusted when resizing) but no defined height, hence the lack of scrollbars.

I don't know how to workaround this: I can set a height, but it is browser / environment dependent, so it will be ugly. Is there a way to propagate resizing beyond a VLC? Viewport is used only on the whole browser area, not on a div.

I hoped that Beta3 fixed this problem, but no luck.