Title: [151836] trunk
Revision
151836
Author
[email protected]
Date
2013-06-21 08:45:21 -0700 (Fri, 21 Jun 2013)

Log Message

Rollout r150602: Restoring text-overflow vs. floating rendering behaviour.
https://bugs.webkit.org/show_bug.cgi?id=117871

Unreviewed. Rolling out r150602.
Undesirable rendering behaviour.

Patch by Zalan Bujtas <[email protected]> on 2013-06-21

Source/WebCore:

* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::checkLinesForTextOverflow):

LayoutTests:

* fast/css/text-overflow-ellipsis-behind-floats-expected.html:
* fast/css/text-overflow-ellipsis-behind-floats.html:
* fast/css/text-overflow-ellipsis-full-truncate-rtl-expected.html:
* fast/css/text-overflow-ellipsis-full-truncate-rtl.html:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (151835 => 151836)


--- trunk/LayoutTests/ChangeLog	2013-06-21 14:31:26 UTC (rev 151835)
+++ trunk/LayoutTests/ChangeLog	2013-06-21 15:45:21 UTC (rev 151836)
@@ -1,3 +1,16 @@
+2013-06-21  Zalan Bujtas  <[email protected]>
+
+        Rollout r150602: Restoring text-overflow vs. floating rendering behaviour.
+        https://bugs.webkit.org/show_bug.cgi?id=117871
+
+        Unreviewed. Rolling out r150602.
+        Undesirable rendering behaviour.
+
+        * fast/css/text-overflow-ellipsis-behind-floats-expected.html:
+        * fast/css/text-overflow-ellipsis-behind-floats.html:
+        * fast/css/text-overflow-ellipsis-full-truncate-rtl-expected.html:
+        * fast/css/text-overflow-ellipsis-full-truncate-rtl.html:
+
 2013-06-21  Radu Stavila  <[email protected]>
 
         Web Inspector: Integrate new regionOversetChange event into inspector

Modified: trunk/LayoutTests/fast/css/text-overflow-ellipsis-behind-floats-expected.html (151835 => 151836)


--- trunk/LayoutTests/fast/css/text-overflow-ellipsis-behind-floats-expected.html	2013-06-21 14:31:26 UTC (rev 151835)
+++ trunk/LayoutTests/fast/css/text-overflow-ellipsis-behind-floats-expected.html	2013-06-21 15:45:21 UTC (rev 151836)
@@ -2,23 +2,17 @@
 <html>
 <head>
 <style>
-  div {
+  .ellipsis {
+    width: 200px;
     overflow: hidden;
     white-space: nowrap;
-  }
-
- .ellipsis {
     text-overflow: ellipsis;
   }
-
 </style>
 </head>
 <body>
-
 <div class="ellipsis">
-<div id="float"></div>
-1. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
 </div>
-
 </body>
 </html>

Modified: trunk/LayoutTests/fast/css/text-overflow-ellipsis-behind-floats.html (151835 => 151836)


--- trunk/LayoutTests/fast/css/text-overflow-ellipsis-behind-floats.html	2013-06-21 14:31:26 UTC (rev 151835)
+++ trunk/LayoutTests/fast/css/text-overflow-ellipsis-behind-floats.html	2013-06-21 15:45:21 UTC (rev 151836)
@@ -2,29 +2,24 @@
 <html>
 <head>
 <style>
-  div {
-    overflow: hidden;
-    white-space: nowrap;
-  }
-
- #float {
+  #float {
     float: right;
     width: 100px;
     height: 20px;
   }
 
  .ellipsis {
+    width: 300px;
+    overflow: hidden;
+    white-space: nowrap;
     text-overflow: ellipsis;
   }
-
 </style>
 </head>
 <body>
-
 <div class="ellipsis">
 <div id="float"></div>
-1. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
+Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
 </div>
-
 </body>
 </html>

Modified: trunk/LayoutTests/fast/css/text-overflow-ellipsis-full-truncate-rtl-expected.html (151835 => 151836)


--- trunk/LayoutTests/fast/css/text-overflow-ellipsis-full-truncate-rtl-expected.html	2013-06-21 14:31:26 UTC (rev 151835)
+++ trunk/LayoutTests/fast/css/text-overflow-ellipsis-full-truncate-rtl-expected.html	2013-06-21 15:45:21 UTC (rev 151836)
@@ -1,20 +1,24 @@
 <!DOCTYPE html>
-<html dir='rtl'>
+<html>
 <head>
 <style>
   div {
     text-overflow: ellipsis;
     overflow: hidden;
     white-space: nowrap;
+    width: 200px;
+    direction: rtl;
   }
 
-  input {
+  span {
+    width: 100px;
+    height: 20px;
     float: left;
   }
 </style>
 <body>
-<p dir='ltr'>This tests that ellipsis is placed correctly, when full truncation takes over in an rtl flow.</p>
-<div style='width:582px;'><input type="text" size='74'>consectetur adipisicing elitconsectetur adipisicing elitconsectetur adipisicing elitconsectetur adipisicing elitconsectetur adipisicing elitconsectetur adipisicing elit, sed do eiusmod</div>
+<p>This tests that ellipsis is placed correctly, when full truncation takes over in an rtl flow.</p>
+<span></span><div>Lorem ipsum dolor sit consectetur adipisicing elitconsectetur adipisicing elitconsectetur</div>
 </body>
 </div>
 

Modified: trunk/LayoutTests/fast/css/text-overflow-ellipsis-full-truncate-rtl.html (151835 => 151836)


--- trunk/LayoutTests/fast/css/text-overflow-ellipsis-full-truncate-rtl.html	2013-06-21 14:31:26 UTC (rev 151835)
+++ trunk/LayoutTests/fast/css/text-overflow-ellipsis-full-truncate-rtl.html	2013-06-21 15:45:21 UTC (rev 151836)
@@ -1,20 +1,24 @@
 <!DOCTYPE html>
-<html dir='rtl'>
+<html>
 <head>
 <style>
   div {
     text-overflow: ellipsis;
     overflow: hidden;
     white-space: nowrap;
+    width: 300px;
+    direction: rtl;
   }
 
-  input {
+  span {
+    width: 100px;
+    height: 20px;
     float: left;
   }
 </style>
 <body>
-<p dir='ltr'>This tests that ellipsis is placed correctly, when full truncation takes over in an rtl flow.</p>
-<div style='width:582px;'><input type="text" size='74'><span>Lorem ipsum dolor sit</span>consectetur adipisicing elitconsectetur adipisicing elitconsectetur adipisicing elitconsectetur adipisicing elitconsectetur adipisicing elit</div>
+<p>This tests that ellipsis is placed correctly, when full truncation takes over in an rtl flow.</p>
+<div><span></span>Lorem ipsum dolor sit consectetur adipisicing elitconsectetur adipisicing elitconsectetur</div>
 </body>
 </div>
 

Modified: trunk/Source/WebCore/ChangeLog (151835 => 151836)


--- trunk/Source/WebCore/ChangeLog	2013-06-21 14:31:26 UTC (rev 151835)
+++ trunk/Source/WebCore/ChangeLog	2013-06-21 15:45:21 UTC (rev 151836)
@@ -1,3 +1,14 @@
+2013-06-21  Zalan Bujtas  <[email protected]>
+
+        Rollout r150602: Restoring text-overflow vs. floating rendering behaviour.
+        https://bugs.webkit.org/show_bug.cgi?id=117871
+
+        Unreviewed. Rolling out r150602.
+        Undesirable rendering behaviour.
+
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::RenderBlock::checkLinesForTextOverflow):
+
 2013-06-21  Radu Stavila  <[email protected]>
 
         Web Inspector: Integrate new regionOversetChange event into inspector

Modified: trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp (151835 => 151836)


--- trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp	2013-06-21 14:31:26 UTC (rev 151835)
+++ trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp	2013-06-21 15:45:21 UTC (rev 151836)
@@ -3570,8 +3570,8 @@
     for (RootInlineBox* curr = firstRootBox(); curr; curr = curr->nextRootBox()) {
         // FIXME: Use pixelSnappedLogicalRightOffsetForLine instead of snapping it ourselves once the column workaround in said method has been fixed.
         // https://bugs.webkit.org/show_bug.cgi?id=105461
-        int blockRightEdge = snapSizeToPixel(ltr ? logicalRightOffsetForContent(curr->lineTop()) : logicalRightOffsetForLine(curr->lineTop(), firstLine), curr->x());
-        int blockLeftEdge = ltr ? pixelSnappedLogicalLeftOffsetForLine(curr->lineTop(), firstLine).toInt() : snapSizeToPixel(logicalLeftOffsetForContent(curr->lineTop()), curr->x());
+        int blockRightEdge = snapSizeToPixel(logicalRightOffsetForLine(curr->lineTop(), firstLine), curr->x());
+        int blockLeftEdge = pixelSnappedLogicalLeftOffsetForLine(curr->lineTop(), firstLine);
         int lineBoxEdge = ltr ? snapSizeToPixel(curr->x() + curr->logicalWidth(), curr->x()) : snapSizeToPixel(curr->x(), 0);
         if ((ltr && lineBoxEdge > blockRightEdge) || (!ltr && lineBoxEdge < blockLeftEdge)) {
             // This line spills out of our box in the appropriate direction.  Now we need to see if the line
@@ -3585,7 +3585,7 @@
                 float totalLogicalWidth = curr->placeEllipsis(ellipsisStr, ltr, blockLeftEdge, blockRightEdge, width);
 
                 float logicalLeft = 0; // We are only intersted in the delta from the base position.
-                float truncatedWidth = snapSizeToPixel(logicalRightOffsetForContent(curr->lineTop()), curr->x());
+                float truncatedWidth = pixelSnappedLogicalRightOffsetForLine(curr->lineTop(), firstLine);
                 updateLogicalWidthForAlignment(textAlign, 0, logicalLeft, totalLogicalWidth, truncatedWidth, 0);
                 if (ltr)
                     curr->adjustLogicalPosition(logicalLeft, 0);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to