]> source.dussan.org Git - vaadin-framework.git/commitdiff
fixed some caching issues
authorMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 12 Oct 2007 08:03:33 +0000 (08:03 +0000)
committerMatti Tahvonen <matti.tahvonen@itmill.com>
Fri, 12 Oct 2007 08:03:33 +0000 (08:03 +0000)
svn changeset:2504/svn branch:trunk

src/com/itmill/toolkit/terminal/gwt/client/ui/IForm.java
src/com/itmill/toolkit/terminal/gwt/client/ui/ILink.java
src/com/itmill/toolkit/terminal/gwt/client/ui/IView.java

index 06c93dcfac09ed957ffa7df75ee398b5c5934a7b..753947b43ad698b919a84f3c37c26f4ee7665236 100644 (file)
@@ -22,6 +22,10 @@ public class IForm extends SimplePanel implements Paintable {
 \r
        public void updateFromUIDL(UIDL uidl, ApplicationConnection client) {\r
                this.client = client;\r
+               \r
+               if(client.updateComponent(this, uidl, true))\r
+                       return;\r
+               \r
                UIDL layoutUidl = uidl.getChildUIDL(0);\r
                if (lo == null) {\r
                        lo = (Container) client.getWidget(layoutUidl);\r
index 64653fb0f038adb3d950efae545b93c7bafd8ec9..bdebf5a454cde4a45bcd0ad4c29bdaaaf9794a80 100644 (file)
@@ -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;
 
index 8cca2b6dce0e4b72df7e14b544134c060bd038ad..2e9767f02246772d711edd8d58024a68daed85aa 100644 (file)
@@ -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);