[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373

dino at apple.com dino at apple.com
Thu Apr 8 02:11:50 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit 264c482403b5109531ad3cd79e2b45b94d3afd6a
Author: dino at apple.com <dino at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sat Mar 6 00:21:22 2010 +0000

    2010-03-05  Dean Jackson  <dino at apple.com>
    
            Reviewed by NOBODY (OOPS!).
    
            https://bugs.webkit.org/show_bug.cgi?id=35815
            Animation Fill Modes fail on Windows
    
            * css/CSSComputedStyleDeclaration.cpp:
            * css/CSSStyleSelector.cpp:
            * platform/graphics/mac/GraphicsLayerCA.mm:
                - use new enum value
            * platform/animation/Animation.h:
                - change bitfield type
            * rendering/style/RenderStyleConstants.h:
                - add new enum for fill mode
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55601 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 04971fc..0a5b670 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,22 @@
+2010-03-05  Dean Jackson  <dino at apple.com>
+
+        Reviewed by Simon Fraser
+
+        https://bugs.webkit.org/show_bug.cgi?id=35815
+        Animation fill mode tests break on Windows
+
+        * animations/fill-mode-transform-expected.txt:
+        * animations/fill-mode-transform.html:
+            - use the real expected values, rather than
+              try to get the test to pass on Snow Leopard.
+        * platform/mac-leopard/Skipped:
+            - remove the skip entry for the test above
+        * platform/mac-snowleopard/Skipped:
+            - skip this test on Snow Leopard while
+              hardware acceleration gives the wrong
+              value for computed style.
+              See bug 35714.
+
 2010-03-05  Simon Fraser  <simon.fraser at apple.com>
 
         Reviewed by Darin Adler.
diff --git a/LayoutTests/animations/fill-mode-transform-expected.txt b/LayoutTests/animations/fill-mode-transform-expected.txt
index a88da5f..630edf3 100644
--- a/LayoutTests/animations/fill-mode-transform-expected.txt
+++ b/LayoutTests/animations/fill-mode-transform-expected.txt
@@ -4,11 +4,9 @@ Backwards
 Forwards
 Both
 Both Iterate
-Note that due to Bug 35714 the expected values for the start of the animation on elements "a" and "c" are intentionally incorrect. The expected values should be 100, not 200. If this test fails, then it's likely that bug has been fixed and the expected values here should be updated.
-
-PASS - start of animation - id: a expected: 200 actual: 200
+PASS - start of animation - id: a expected: 100 actual: 100
 PASS - start of animation - id: b expected: 200 actual: 200
-PASS - start of animation - id: c expected: 200 actual: 200
+PASS - start of animation - id: c expected: 100 actual: 100
 PASS - start of animation - id: d expected: 200 actual: 200
 PASS - start of animation - id: e expected: 200 actual: 200
 PASS - end of animation - id: a expected: 100 actual: 100
diff --git a/LayoutTests/animations/fill-mode-transform.html b/LayoutTests/animations/fill-mode-transform.html
index 71c5c68..1af81e0 100644
--- a/LayoutTests/animations/fill-mode-transform.html
+++ b/LayoutTests/animations/fill-mode-transform.html
@@ -50,9 +50,9 @@
     var animsFinished = 0;
     const allowance = 5;
     const expectedValues = [
-      {id: "a", start: 200, end: 100},
+      {id: "a", start: 100, end: 100},
       {id: "b", start: 200, end: 100},
-      {id: "c", start: 200, end: 300},
+      {id: "c", start: 100, end: 300},
       {id: "d", start: 200, end: 300},
       {id: "e", start: 200, end: 200}
     ];
@@ -127,13 +127,6 @@ It takes snapshots at document load and the end of the animations.
 <div id="e" class="box">
   Both Iterate
 </div>
-<p>
-  Note that due to <a href="https://bugs.webkit.org/show_bug.cgi?id=35714">Bug 35714</a>
-  the expected values for the start of the animation on elements "a" and "c" are
-  intentionally incorrect. The expected values should be 100, not 200. If this
-  test fails, then it's likely that bug has been fixed and the expected values here
-  should be updated.
-</p>
 <div id="result">
 </div>
 </body>
diff --git a/LayoutTests/platform/mac-leopard/Skipped b/LayoutTests/platform/mac-leopard/Skipped
index d4e8673..3719956 100644
--- a/LayoutTests/platform/mac-leopard/Skipped
+++ b/LayoutTests/platform/mac-leopard/Skipped
@@ -48,8 +48,3 @@ fast/canvas/webgl/texImage2DImageDataTest.html
 # Fails on Mac
 # https://bugs.webkit.org/show_bug.cgi?id=34331
 http/tests/media/video-referer.html
-
-# Thanks to https://bugs.webkit.org/show_bug.cgi?id=35714
-# computed style on HW transforms are wrong in SL, but
-# correct in Leopard.
-animations/fill-mode-transform.html
diff --git a/LayoutTests/platform/mac-snowleopard/Skipped b/LayoutTests/platform/mac-snowleopard/Skipped
index 865eed8..ed4a3b9 100644
--- a/LayoutTests/platform/mac-snowleopard/Skipped
+++ b/LayoutTests/platform/mac-snowleopard/Skipped
@@ -103,3 +103,8 @@ media/video-display-aspect-ratio.html
 # Flakey on Snow Leopard Debug builds, skip it until it can be made non-flakey:
 # https://bugs.webkit.org/show_bug.cgi?id=33543
 fast/forms/search-event-delay.html
+
+# Thanks to https://bugs.webkit.org/show_bug.cgi?id=35714
+# computed style on HW transforms are wrong in SL, but
+# correct on other platforms.
+animations/fill-mode-transform.html
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 1f2d874..cb107c9 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,19 @@
+2010-03-05  Dean Jackson  <dino at apple.com>
+
+        Reviewed by Simon Fraser
+
+        https://bugs.webkit.org/show_bug.cgi?id=35815
+        Animation Fill Modes fail on Windows
+
+        * css/CSSComputedStyleDeclaration.cpp:
+        * css/CSSStyleSelector.cpp:
+        * platform/graphics/mac/GraphicsLayerCA.mm:
+            - use new enum value
+        * platform/animation/Animation.h:
+            - change bitfield type
+        * rendering/style/RenderStyleConstants.h:
+            - add new enum for fill mode
+
 2010-03-05  Csaba Osztrogonác  <ossy at webkit.org>
 
         Unreviewed buildfix after r55593. (To fix Qt --minimal build.)
diff --git a/WebCore/css/CSSComputedStyleDeclaration.cpp b/WebCore/css/CSSComputedStyleDeclaration.cpp
index f7c5dc4..643cce4 100644
--- a/WebCore/css/CSSComputedStyleDeclaration.cpp
+++ b/WebCore/css/CSSComputedStyleDeclaration.cpp
@@ -1205,16 +1205,16 @@ PassRefPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValue(int proper
             if (t) {
                 for (size_t i = 0; i < t->size(); ++i) {
                     switch (t->animation(i)->fillMode()) {
-                    case Animation::AnimationFillModeNone:
+                    case AnimationFillModeNone:
                         list->append(CSSPrimitiveValue::createIdentifier(CSSValueNone));
                         break;
-                    case Animation::AnimationFillModeForwards:
+                    case AnimationFillModeForwards:
                         list->append(CSSPrimitiveValue::createIdentifier(CSSValueForwards));
                         break;
-                    case Animation::AnimationFillModeBackwards:
+                    case AnimationFillModeBackwards:
                         list->append(CSSPrimitiveValue::createIdentifier(CSSValueBackwards));
                         break;
-                    case Animation::AnimationFillModeBoth:
+                    case AnimationFillModeBoth:
                         list->append(CSSPrimitiveValue::createIdentifier(CSSValueBoth));
                         break;
                     }
diff --git a/WebCore/css/CSSStyleSelector.cpp b/WebCore/css/CSSStyleSelector.cpp
index 8168ecb..1097611 100644
--- a/WebCore/css/CSSStyleSelector.cpp
+++ b/WebCore/css/CSSStyleSelector.cpp
@@ -5663,16 +5663,16 @@ void CSSStyleSelector::mapAnimationFillMode(Animation* layer, CSSValue* value)
     CSSPrimitiveValue* primitiveValue = static_cast<CSSPrimitiveValue*>(value);
     switch (primitiveValue->getIdent()) {
     case CSSValueNone:
-        layer->setFillMode(Animation::AnimationFillModeNone);
+        layer->setFillMode(AnimationFillModeNone);
         break;
     case CSSValueForwards:
-        layer->setFillMode(Animation::AnimationFillModeForwards);
+        layer->setFillMode(AnimationFillModeForwards);
         break;
     case CSSValueBackwards:
-        layer->setFillMode(Animation::AnimationFillModeBackwards);
+        layer->setFillMode(AnimationFillModeBackwards);
         break;
     case CSSValueBoth:
-        layer->setFillMode(Animation::AnimationFillModeBoth);
+        layer->setFillMode(AnimationFillModeBoth);
         break;
     }
 }
diff --git a/WebCore/platform/animation/Animation.h b/WebCore/platform/animation/Animation.h
index 32628e1..a629f43 100644
--- a/WebCore/platform/animation/Animation.h
+++ b/WebCore/platform/animation/Animation.h
@@ -84,8 +84,7 @@ public:
     enum AnimationDirection { AnimationDirectionNormal, AnimationDirectionAlternate };
     AnimationDirection direction() const { return m_direction; }
 
-    enum AnimationFillMode { AnimationFillModeNone, AnimationFillModeForwards, AnimationFillModeBackwards, AnimationFillModeBoth };
-    AnimationFillMode fillMode() const { return m_fillMode; }
+    unsigned fillMode() const { return m_fillMode; }
 
     double duration() const { return m_duration; }
 
@@ -99,7 +98,7 @@ public:
     void setDelay(double c) { m_delay = c; m_delaySet = true; }
     void setDirection(AnimationDirection d) { m_direction = d; m_directionSet = true; }
     void setDuration(double d) { ASSERT(d >= 0); m_duration = d; m_durationSet = true; }
-    void setFillMode(AnimationFillMode f) { m_fillMode = f; m_fillModeSet = true; }
+    void setFillMode(unsigned f) { m_fillMode = f; m_fillModeSet = true; }
     void setIterationCount(int c) { m_iterationCount = c; m_iterationCountSet = true; }
     void setName(const String& n) { m_name = n; m_nameSet = true; }
     void setPlayState(unsigned d) { m_playState = d; m_playStateSet = true; }
@@ -131,7 +130,7 @@ private:
     double m_duration;
     TimingFunction m_timingFunction;
     AnimationDirection m_direction : 1;
-    AnimationFillMode m_fillMode : 2;
+    unsigned m_fillMode : 2;
 
     unsigned m_playState     : 2;
 
@@ -151,7 +150,7 @@ public:
     static float initialAnimationDelay() { return 0; }
     static AnimationDirection initialAnimationDirection() { return AnimationDirectionNormal; }
     static double initialAnimationDuration() { return 0; }
-    static AnimationFillMode initialAnimationFillMode() { return AnimationFillModeNone; }
+    static unsigned initialAnimationFillMode() { return AnimationFillModeNone; }
     static int initialAnimationIterationCount() { return 1; }
     static String initialAnimationName() { return String("none"); }
     static unsigned initialAnimationPlayState() { return AnimPlayStatePlaying; }
diff --git a/WebCore/platform/graphics/mac/GraphicsLayerCA.mm b/WebCore/platform/graphics/mac/GraphicsLayerCA.mm
index d9ef105..caf2622 100644
--- a/WebCore/platform/graphics/mac/GraphicsLayerCA.mm
+++ b/WebCore/platform/graphics/mac/GraphicsLayerCA.mm
@@ -1861,16 +1861,16 @@ void GraphicsLayerCA::setupAnimation(CAPropertyAnimation* propertyAnim, const An
 
     NSString* fillMode = 0;
     switch (anim->fillMode()) {
-    case Animation::AnimationFillModeNone:
+    case AnimationFillModeNone:
         fillMode = kCAFillModeRemoved;
         break;
-    case Animation::AnimationFillModeBackwards:
+    case AnimationFillModeBackwards:
         fillMode = kCAFillModeBackwards;
         break;
-    case Animation::AnimationFillModeForwards:
+    case AnimationFillModeForwards:
        fillMode = kCAFillModeForwards;
        break;
-    case Animation::AnimationFillModeBoth:
+    case AnimationFillModeBoth:
        fillMode = kCAFillModeBoth;
        break;
     }
diff --git a/WebCore/rendering/style/RenderStyleConstants.h b/WebCore/rendering/style/RenderStyleConstants.h
index 4abbc1c..29412c6 100644
--- a/WebCore/rendering/style/RenderStyleConstants.h
+++ b/WebCore/rendering/style/RenderStyleConstants.h
@@ -293,6 +293,8 @@ enum StyleContentType {
 
 enum EBorderFit { BorderFitBorder, BorderFitLines };
 
+enum EAnimationFillMode { AnimationFillModeNone, AnimationFillModeForwards, AnimationFillModeBackwards, AnimationFillModeBoth };
+
 enum EAnimPlayState {
     AnimPlayStatePlaying = 0x0,
     AnimPlayStatePaused = 0x1

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list