aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorArtur Signell <artur.signell@itmill.com>2008-10-21 12:14:59 +0000
committerArtur Signell <artur.signell@itmill.com>2008-10-21 12:14:59 +0000
commitae843b6612af88f9a4aa18b17cef79ef064b4cfb (patch)
treebe3094d57483581d665cc0d4933a54809c069dfc /src
parent501f29199412945e4bb8560ee8abc0b79dee629d (diff)
downloadvaadin-framework-ae843b6612af88f9a4aa18b17cef79ef064b4cfb.tar.gz
vaadin-framework-ae843b6612af88f9a4aa18b17cef79ef064b4cfb.zip
Fixed Panel border detection
svn changeset:5684/svn branch:trunk
Diffstat (limited to 'src')
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/IPanel.java37
1 files changed, 15 insertions, 22 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IPanel.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IPanel.java
index 546d481ec5..7302724899 100644
--- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IPanel.java
+++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IPanel.java
@@ -453,32 +453,19 @@ public class IPanel extends SimplePanel implements Container,
// TODO
}
- private RenderSpace contentNodeSize;
-
public RenderSpace getAllocatedSpace(Widget child) {
- if (contentNodeSize == null) {
- contentNodeSize = new RenderSpace(-1, -1) {
-
- @Override
- public int getHeight() {
- return contentNode.getOffsetHeight()
- - getContainerBorderHeight();
- }
+ int w = 0;
+ int h = 0;
- @Override
- public int getWidth() {
- return contentNode.getOffsetWidth()
- - getContainerBorderWidth();
- }
-
- @Override
- public int getScrollbarSize() {
- return Util.getNativeScrollbarSize();
- }
+ if (width != null && !width.equals("")) {
+ w = getOffsetWidth() - getContainerBorderWidth();
+ }
- };
+ if (height != null && !height.equals("")) {
+ w = getOffsetHeight() - getContainerBorderHeight();
}
- return contentNodeSize;
+
+ return new RenderSpace(w, h);
}
public boolean requestLayout(Set<Paintable> child) {
@@ -497,4 +484,10 @@ public class IPanel extends SimplePanel implements Container,
// NOP: layouts caption, errors etc not rendered in Panel
}
+ @Override
+ protected void onAttach() {
+ super.onAttach();
+ detectContainerBorders();
+ }
+
}