Title: [90765] trunk
Revision
90765
Author
[email protected]
Date
2011-07-11 11:20:23 -0700 (Mon, 11 Jul 2011)

Log Message

Patch by Young Han Lee <[email protected]> on 2011-07-11
Reviewed by Simon Fraser.

Transition LayoutTest using pause API shows wrong result if it tries to pause a transition after its delay time.
https://bugs.webkit.org/show_bug.cgi?id=63859

The existing code to set the m_startTime haven't worked because
the animation is not the right state to accept the start event.
This patch just sets the values directly instead of using event.

Source/WebCore:

Test: transitions/delay.html

* page/animation/AnimationBase.cpp:
(WebCore::AnimationBase::freezeAtTime):

LayoutTests:

* transitions/delay-expected.txt: Added.
* transitions/delay.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (90764 => 90765)


--- trunk/LayoutTests/ChangeLog	2011-07-11 18:14:01 UTC (rev 90764)
+++ trunk/LayoutTests/ChangeLog	2011-07-11 18:20:23 UTC (rev 90765)
@@ -1,3 +1,17 @@
+2011-07-11  Young Han Lee  <[email protected]>
+
+        Reviewed by Simon Fraser.
+
+        Transition LayoutTest using pause API shows wrong result if it tries to pause a transition after its delay time.
+        https://bugs.webkit.org/show_bug.cgi?id=63859
+
+        The existing code to set the m_startTime haven't worked because 
+        the animation is not the right state to accept the start event. 
+        This patch just sets the values directly instead of using event.
+
+        * transitions/delay-expected.txt: Added.
+        * transitions/delay.html: Added.
+
 2011-07-11  Anders Carlsson  <[email protected]>
 
         Implement getFormValue for WebKit2

Added: trunk/LayoutTests/transitions/delay-expected.txt (0 => 90765)


--- trunk/LayoutTests/transitions/delay-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/transitions/delay-expected.txt	2011-07-11 18:20:23 UTC (rev 90765)
@@ -0,0 +1,2 @@
+PASS - "left" property for "target" element at 2s saw something close to: 100
+

Added: trunk/LayoutTests/transitions/delay.html (0 => 90765)


--- trunk/LayoutTests/transitions/delay.html	                        (rev 0)
+++ trunk/LayoutTests/transitions/delay.html	2011-07-11 18:20:23 UTC (rev 90765)
@@ -0,0 +1,36 @@
+<html>
+<head>
+  <style>
+    #target {
+      position: relative;
+      left: 0px;
+      height: 50px;
+      width: 50px;
+      background-color: green;
+      -webkit-transition: left 4s linear 1s;
+    }
+    
+    #target.moved {
+      left: 400px;
+    }
+   </style>
+   <script src=""
+   <script>
+     const expectedValues = [
+       // [time, element-id, property, expected-value, tolerance]
+       [2, "target", "left", 100, 4],
+     ];
+
+     function setupTest()
+     {
+       document.getElementById("target").className = "moved";
+     }
+
+     runTransitionTest(expectedValues, setupTest, usePauseAPI);
+   </script>
+</head>
+<body>
+  <div id="target"></div>
+  <div id="result"></div>
+</body>
+</html>

Modified: trunk/Source/WebCore/ChangeLog (90764 => 90765)


--- trunk/Source/WebCore/ChangeLog	2011-07-11 18:14:01 UTC (rev 90764)
+++ trunk/Source/WebCore/ChangeLog	2011-07-11 18:20:23 UTC (rev 90765)
@@ -1,3 +1,19 @@
+2011-07-11  Young Han Lee  <[email protected]>
+
+        Reviewed by Simon Fraser.
+
+        Transition LayoutTest using pause API shows wrong result if it tries to pause a transition after its delay time.
+        https://bugs.webkit.org/show_bug.cgi?id=63859
+
+        The existing code to set the m_startTime haven't worked because 
+        the animation is not the right state to accept the start event. 
+        This patch just sets the values directly instead of using event.
+
+        Test: transitions/delay.html
+
+        * page/animation/AnimationBase.cpp:
+        (WebCore::AnimationBase::freezeAtTime):
+
 2011-07-11  Ryosuke Niwa  <[email protected]>
 
         Move selection related code from RenderTextControl to HTMLTextFormControlElement

Modified: trunk/Source/WebCore/page/animation/AnimationBase.cpp (90764 => 90765)


--- trunk/Source/WebCore/page/animation/AnimationBase.cpp	2011-07-11 18:14:01 UTC (rev 90764)
+++ trunk/Source/WebCore/page/animation/AnimationBase.cpp	2011-07-11 18:20:23 UTC (rev 90765)
@@ -1443,8 +1443,9 @@
         return;
 
     if (!m_startTime) {
-        // If we haven't started yet, just generate the start event now
-        m_compAnim->animationController()->receivedStartTimeResponse(currentTime());
+        // If we haven't started yet, make it as if we started.
+        m_animState = AnimationStateStartWaitResponse;
+        onAnimationStartResponse(currentTime());
     }
 
     ASSERT(m_startTime);        // if m_startTime is zero, we haven't started yet, so we'll get a bad pause time.
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to