From 01f2ae88c5d71a3f2d39ae73bd4cc4f075045a60 Mon Sep 17 00:00:00 2001 From: Artur Signell Date: Thu, 18 Dec 2008 12:28:42 +0000 Subject: [PATCH] Size update optimization for OrderedLayout and SplitPanel svn changeset:6271/svn branch:trunk --- .../terminal/gwt/client/ui/IOrderedLayout.java | 7 ++++++- .../toolkit/terminal/gwt/client/ui/ISplitPanel.java | 12 ++++++++++-- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java index 12295239f5..7256727cb3 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java @@ -37,6 +37,8 @@ public class IOrderedLayout extends CellBasedLayout { private boolean isRendering = false; + private String width = ""; + public IOrderedLayout() { setStyleName(CLASSNAME); } @@ -758,11 +760,14 @@ public class IOrderedLayout extends CellBasedLayout { @Override public void setWidth(String width) { + if (this.width.equals(width)) { + return; + } Size sizeBefore = new Size(activeLayoutSize.getWidth(), activeLayoutSize.getHeight()); super.setWidth(width); - + this.width = width; if (width != null && !width.equals("")) { setActiveLayoutWidth(getOffsetWidth() - activeMargins.getHorizontal()); diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/ISplitPanel.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/ISplitPanel.java index 3f83dc6229..c267035e1a 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/ISplitPanel.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/ISplitPanel.java @@ -66,9 +66,9 @@ public class ISplitPanel extends ComplexPanel implements Container, private ApplicationConnection client; - private String width = null; + private String width = ""; - private String height = null; + private String height = ""; private RenderSpace firstRenderSpace = new RenderSpace(0, 0, true); private RenderSpace secondRenderSpace = new RenderSpace(0, 0, true); @@ -462,6 +462,10 @@ public class ISplitPanel extends ComplexPanel implements Container, @Override public void setHeight(String height) { + if (this.height.equals(height)) { + return; + } + this.height = height; super.setHeight(height); if (!rendering && client != null) { @@ -472,6 +476,10 @@ public class ISplitPanel extends ComplexPanel implements Container, @Override public void setWidth(String width) { + if (this.width.equals(width)) { + return; + } + this.width = width; super.setWidth(width); if (!rendering && client != null) { -- 2.39.5