Repository: wicket
Updated Branches:
  refs/heads/wicket-6.x 38d888271 -> 2678faa03


WICKET-6191 always add timeout when rendered, since wicket-ajax removes any 
previous timer


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/2678faa0
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/2678faa0
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/2678faa0

Branch: refs/heads/wicket-6.x
Commit: 2678faa0391774058f34779b815c1cbb2e9dd1e3
Parents: 38d8882
Author: Sven Meier <[email protected]>
Authored: Tue Jun 28 21:03:05 2016 +0200
Committer: Sven Meier <[email protected]>
Committed: Tue Jun 28 21:12:03 2016 +0200

----------------------------------------------------------------------
 .../wicket/ajax/AbstractAjaxTimerBehavior.java  | 28 ++------------------
 .../wicket/ajax/AjaxTimerBehaviorTest.java      |  3 +--
 2 files changed, 3 insertions(+), 28 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/2678faa0/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
 
b/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
index cb25ac6..8bcde22 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractAjaxTimerBehavior.java
@@ -41,11 +41,6 @@ public abstract class AbstractAjaxTimerBehavior extends 
AbstractDefaultAjaxBehav
        private boolean stopped = false;
 
        /**
-        * Is the timeout present in JavaScript already.
-        */
-       private boolean hasTimeout = false;
-
-       /**
         * Construct.
         * 
         * @param updateInterval
@@ -86,12 +81,6 @@ public abstract class AbstractAjaxTimerBehavior extends 
AbstractDefaultAjaxBehav
        {
                super.renderHead(component, response);
 
-               if (component.getRequestCycle().find(AjaxRequestTarget.class) 
== null)
-               {
-                       // complete page is rendered, so timeout has to be 
rendered again
-                       hasTimeout = false;
-               }
-
                if (isStopped() == false)
                {
                        addTimeout(response);
@@ -124,9 +113,6 @@ public abstract class AbstractAjaxTimerBehavior extends 
AbstractDefaultAjaxBehav
 
                        if (shouldTrigger())
                        {
-                               // re-add timeout
-                               hasTimeout = false;
-
                                addTimeout(target.getHeaderResponse());
 
                                return;
@@ -203,22 +189,12 @@ public abstract class AbstractAjaxTimerBehavior extends 
AbstractDefaultAjaxBehav
 
        private void addTimeout(IHeaderResponse headerResponse)
        {
-               if (hasTimeout == false)
-               {
-                       hasTimeout = true;
-
-                       
headerResponse.render(OnLoadHeaderItem.forScript(getJsTimeoutCall(updateInterval)));
-               }
+               
headerResponse.render(OnLoadHeaderItem.forScript(getJsTimeoutCall(updateInterval)));
        }
 
        private void clearTimeout(IHeaderResponse headerResponse)
        {
-               if (hasTimeout)
-               {
-                       hasTimeout = false;
-
-                       
headerResponse.render(OnLoadHeaderItem.forScript("Wicket.Timer.clear('" + 
getComponent().getMarkupId() + "');"));
-               }
+               
headerResponse.render(OnLoadHeaderItem.forScript("Wicket.Timer.clear('" + 
getComponent().getMarkupId() + "');"));
        }
 
        /**

http://git-wip-us.apache.org/repos/asf/wicket/blob/2678faa0/wicket-core/src/test/java/org/apache/wicket/ajax/AjaxTimerBehaviorTest.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/test/java/org/apache/wicket/ajax/AjaxTimerBehaviorTest.java 
b/wicket-core/src/test/java/org/apache/wicket/ajax/AjaxTimerBehaviorTest.java
index 9b30a05..4684c11 100644
--- 
a/wicket-core/src/test/java/org/apache/wicket/ajax/AjaxTimerBehaviorTest.java
+++ 
b/wicket-core/src/test/java/org/apache/wicket/ajax/AjaxTimerBehaviorTest.java
@@ -150,8 +150,7 @@ public class AjaxTimerBehaviorTest extends WicketTestCase
 
                tester.clickLink(MockPageWithLinkAndComponent.LINK_ID);
 
-               // ajax update does not set timeout
-               assertMatches("Wicket.Timer.set", 0);
+               assertMatches("Wicket.Timer.set", 1);
 
                tester.executeBehavior(timer);
 

Reply via email to