From: Matti Tahvonen Date: Tue, 3 Nov 2009 09:07:32 +0000 (+0000) Subject: merged [9596] from 6.1 X-Git-Tag: 6.7.0.beta1~2340 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=6f0ac065787bcde54260cb0b0fdb3533a84f2b0c;p=vaadin-framework.git merged [9596] from 6.1 svn changeset:9597/svn branch:6.2 --- diff --git a/src/com/vaadin/terminal/gwt/client/ui/VProgressIndicator.java b/src/com/vaadin/terminal/gwt/client/ui/VProgressIndicator.java index 58d4d5c021..ab9f20bcc3 100644 --- a/src/com/vaadin/terminal/gwt/client/ui/VProgressIndicator.java +++ b/src/com/vaadin/terminal/gwt/client/ui/VProgressIndicator.java @@ -21,6 +21,7 @@ public class VProgressIndicator extends Widget implements Paintable { private final Poller poller; private boolean indeterminate = false; private boolean pollerSuspendedDueDetach; + private int interval; public VProgressIndicator() { setElement(DOM.createDiv()); @@ -33,12 +34,10 @@ public class VProgressIndicator extends Widget implements Paintable { } public void updateFromUIDL(UIDL uidl, ApplicationConnection client) { - if (client.updateComponent(this, uidl, true)) { - return; - } - - poller.cancel(); this.client = client; + if (!uidl.getBooleanAttribute("cached")) { + poller.cancel(); + } if (client.updateComponent(this, uidl, true)) { return; } @@ -61,7 +60,8 @@ public class VProgressIndicator extends Widget implements Paintable { } if (!uidl.getBooleanAttribute("disabled")) { - poller.scheduleRepeating(uidl.getIntAttribute("pollinginterval")); + interval = uidl.getIntAttribute("pollinginterval"); + poller.scheduleRepeating(interval); } } @@ -69,7 +69,7 @@ public class VProgressIndicator extends Widget implements Paintable { protected void onAttach() { super.onAttach(); if (pollerSuspendedDueDetach) { - poller.run(); + poller.scheduleRepeating(interval); } }