[SCM] WebKit Debian packaging branch, webkit-1.3, updated. upstream/1.3.7-4207-g178b198

simon.fraser at apple.com simon.fraser at apple.com
Sun Feb 20 23:03:55 UTC 2011


The following commit has been merged in the webkit-1.3 branch:
commit cfb0cfc6a095f27804da8c2e91864c6032850e85
Author: simon.fraser at apple.com <simon.fraser at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sun Jan 16 18:04:01 2011 +0000

    2011-01-16  Simon Fraser  <simon.fraser at apple.com>
    
            Reviewed by Dan Bernstein.
    
            RenderView needs to take transforms on its layer into account
            https://bugs.webkit.org/show_bug.cgi?id=52536
    
            The RenderView's coordinate mapping methods failed to
            take into account a transform on the RenderView's layer.
    
            No tests because it's not possible to get a transform
            on the RenderView's layer through content.
    
            * rendering/RenderView.cpp:
            (WebCore::RenderView::mapLocalToContainer):
            (WebCore::RenderView::mapAbsoluteToLocalPoint):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@75892 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index c0428a4..38141c0 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2011-01-16  Simon Fraser  <simon.fraser at apple.com>
+
+        Reviewed by Dan Bernstein.
+
+        RenderView needs to take transforms on its layer into account
+        https://bugs.webkit.org/show_bug.cgi?id=52536
+        
+        The RenderView's coordinate mapping methods failed to
+        take into account a transform on the RenderView's layer.
+
+        No tests because it's not possible to get a transform
+        on the RenderView's layer through content.
+
+        * rendering/RenderView.cpp:
+        (WebCore::RenderView::mapLocalToContainer):
+        (WebCore::RenderView::mapAbsoluteToLocalPoint):
+
 2011-01-15  Sheriff Bot  <webkit.review.bot at gmail.com>
 
         Unreviewed, rolling out r75708.
diff --git a/Source/WebCore/rendering/RenderView.cpp b/Source/WebCore/rendering/RenderView.cpp
index 3e4fc77..44ba4af 100644
--- a/Source/WebCore/rendering/RenderView.cpp
+++ b/Source/WebCore/rendering/RenderView.cpp
@@ -136,20 +136,32 @@ void RenderView::layout()
     setNeedsLayout(false);
 }
 
-void RenderView::mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool fixed, bool /*useTransforms*/, TransformState& transformState) const
+void RenderView::mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool fixed, bool useTransforms, TransformState& transformState) const
 {
     // If a container was specified, and was not 0 or the RenderView,
     // then we should have found it by now.
     ASSERT_UNUSED(repaintContainer, !repaintContainer || repaintContainer == this);
 
+    if (useTransforms && shouldUseTransformFromContainer(0)) {
+        TransformationMatrix t;
+        getTransformFromContainer(0, IntSize(), t);
+        transformState.applyTransform(t);
+    }
+    
     if (fixed && m_frameView)
         transformState.move(m_frameView->scrollOffset());
 }
 
-void RenderView::mapAbsoluteToLocalPoint(bool fixed, bool /*useTransforms*/, TransformState& transformState) const
+void RenderView::mapAbsoluteToLocalPoint(bool fixed, bool useTransforms, TransformState& transformState) const
 {
     if (fixed && m_frameView)
         transformState.move(-m_frameView->scrollOffset());
+
+    if (useTransforms && shouldUseTransformFromContainer(0)) {
+        TransformationMatrix t;
+        getTransformFromContainer(0, IntSize(), t);
+        transformState.applyTransform(t);
+    }
 }
 
 void RenderView::paint(PaintInfo& paintInfo, int tx, int ty)

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list