diff options
author | Matti Tahvonen <matti.tahvonen@itmill.com> | 2007-10-12 08:03:33 +0000 |
---|---|---|
committer | Matti Tahvonen <matti.tahvonen@itmill.com> | 2007-10-12 08:03:33 +0000 |
commit | b0925e6d0e674b725204b9781310fed4e3c7b129 (patch) | |
tree | 460a01bfa4b279838d5724e09ede71a6c61d6bcf | |
parent | 4f706c87154ca88f94e1cfdb1460dc1923a2f6ab (diff) | |
download | vaadin-framework-b0925e6d0e674b725204b9781310fed4e3c7b129.tar.gz vaadin-framework-b0925e6d0e674b725204b9781310fed4e3c7b129.zip |
fixed some caching issues
svn changeset:2504/svn branch:trunk
3 files changed, 10 insertions, 4 deletions
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IForm.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IForm.java index 06c93dcfac..753947b43a 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IForm.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IForm.java @@ -22,6 +22,10 @@ public class IForm extends SimplePanel implements Paintable { public void updateFromUIDL(UIDL uidl, ApplicationConnection client) {
this.client = client;
+
+ if(client.updateComponent(this, uidl, true))
+ return;
+
UIDL layoutUidl = uidl.getChildUIDL(0);
if (lo == null) {
lo = (Container) client.getWidget(layoutUidl);
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java index 64653fb0f0..bdebf5a454 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java @@ -39,6 +39,9 @@ public class ILink extends HTML implements Paintable, ClickListener { public void updateFromUIDL(UIDL uidl, ApplicationConnection client) { + if (client.updateComponent(this, uidl, false)) + return; + enabled = uidl.hasAttribute("disabled") ? false : true; readonly = uidl.hasAttribute("readonly") ? true : false; diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java index 8cca2b6dce..2e9767f022 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java @@ -52,9 +52,6 @@ public class IView extends SimplePanel implements Paintable, this.id = uidl.getId(); - // Start drawing from scratch - clear(); - // Some attributes to note theme = uidl.getStringAttribute("theme"); com.google.gwt.user.client.Window.setTitle(uidl @@ -76,6 +73,7 @@ public class IView extends SimplePanel implements Paintable, // Draw this application level window UIDL childUidl = uidl.getChildUIDL(childIndex); Paintable lo = (Paintable) client.getWidget(childUidl); + if (layout != null) { if (layout != lo) { // remove old @@ -86,8 +84,9 @@ public class IView extends SimplePanel implements Paintable, } } else { setWidget((Widget) lo); + layout = lo; } - lo.updateFromUIDL(childUidl, client); + layout.updateFromUIDL(childUidl, client); // Update subwindows HashSet removedSubWindows = new HashSet(subWindows); |