Title: [167677] trunk/Source/WebCore
Revision
167677
Author
hy...@apple.com
Date
2014-04-22 13:05:29 -0700 (Tue, 22 Apr 2014)

Log Message

[New Multicolumn] Make sure columnTranslationForOffset has the same column-span-aware
translation that fragment collection does.
https://bugs.webkit.org/show_bug.cgi?id=131738

Reviewed by Anders Carlsson.

* rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::collectLayerFragments):
Remove a FIXME that is no longer needed, since the translation offset of the 
column set did get patched.

(WebCore::RenderMultiColumnSet::columnTranslationForOffset):
Add the exact same fix to columnTranslationForOffset that was applied to collectLayerFragments.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (167676 => 167677)


--- trunk/Source/WebCore/ChangeLog	2014-04-22 19:58:24 UTC (rev 167676)
+++ trunk/Source/WebCore/ChangeLog	2014-04-22 20:05:29 UTC (rev 167677)
@@ -1,3 +1,19 @@
+2014-04-22  David Hyatt  <hy...@apple.com>
+
+        [New Multicolumn] Make sure columnTranslationForOffset has the same column-span-aware
+        translation that fragment collection does.
+        https://bugs.webkit.org/show_bug.cgi?id=131738
+
+        Reviewed by Anders Carlsson.
+
+        * rendering/RenderMultiColumnSet.cpp:
+        (WebCore::RenderMultiColumnSet::collectLayerFragments):
+        Remove a FIXME that is no longer needed, since the translation offset of the 
+        column set did get patched.
+
+        (WebCore::RenderMultiColumnSet::columnTranslationForOffset):
+        Add the exact same fix to columnTranslationForOffset that was applied to collectLayerFragments.
+
 2014-04-22  Mark Lam  <mark....@apple.com>
 
         WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript() needs to acquire the JSLock before calling into JS.

Modified: trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp (167676 => 167677)


--- trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp	2014-04-22 19:58:24 UTC (rev 167676)
+++ trunk/Source/WebCore/rendering/RenderMultiColumnSet.cpp	2014-04-22 20:05:29 UTC (rev 167677)
@@ -790,9 +790,7 @@
         translationOffset.setY(blockOffset);
         if (!isHorizontalWritingMode())
             translationOffset = translationOffset.transposedPoint();
-        // FIXME: The translation needs to include the multicolumn set's content offset within the
-        // multicolumn block as well. This won't be an issue until we start creating multiple multicolumn sets.
-
+        
         // Shift the dirty rect to be in flow thread coordinates with this translation applied.
         LayoutRect translatedDirtyRect(dirtyRect);
         translatedDirtyRect.moveBy(-translationOffset);
@@ -840,7 +838,7 @@
             inlineOffset += contentLogicalWidth() - colLogicalWidth;
     }
     translationOffset.setX(inlineOffset);
-    LayoutUnit blockOffset = initialBlockOffset + (isHorizontalWritingMode() ? -flowThreadPortion.y() : -flowThreadPortion.x());
+    LayoutUnit blockOffset = initialBlockOffset + logicalTop() - flowThread()->logicalTop() + (isHorizontalWritingMode() ? -flowThreadPortion.y() : -flowThreadPortion.x());
     if (!progressionIsInline) {
         if (!progressionReversed)
             blockOffset = startColumn * colGap;
@@ -854,8 +852,6 @@
     if (!isHorizontalWritingMode())
         translationOffset = translationOffset.transposedPoint();
     
-    // FIXME: The translation needs to include the multicolumn set's content offset within the
-    // multicolumn block as well. This won't be an issue until we start creating multiple multicolumn sets.
     return translationOffset;
 }
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to