Title: [167628] trunk
- Revision
- 167628
- Author
- [email protected]
- Date
- 2014-04-21 14:45:35 -0700 (Mon, 21 Apr 2014)
Log Message
Empty RenderInline objects should not be line break objects.
https://bugs.webkit.org/show_bug.cgi?id=131861
<rdar://problem/15663617>
Reviewed by David Hyatt.
.:
* ManualTests/empty-inline-as-line-break-position.html: Added.
This issue wouldn't reproduce in WebKitTestRunner.
Source/WebCore:
* rendering/line/BreakingContextInlineHeaders.h:
(WebCore::BreakingContext::canBreakAtThisPosition):
Don't break at this position if this is an empty RenderInline.
Modified Paths
Added Paths
Diff
Modified: trunk/ChangeLog (167627 => 167628)
--- trunk/ChangeLog 2014-04-21 21:44:34 UTC (rev 167627)
+++ trunk/ChangeLog 2014-04-21 21:45:35 UTC (rev 167628)
@@ -1,3 +1,15 @@
+2014-04-18 Jon Honeycutt <[email protected]>
+
+ Empty RenderInline objects should not be line break objects.
+
+ https://bugs.webkit.org/show_bug.cgi?id=131861
+ <rdar://problem/15663617>
+
+ Reviewed by David Hyatt.
+
+ * ManualTests/empty-inline-as-line-break-position.html: Added.
+ This issue wouldn't reproduce in WebKitTestRunner.
+
2014-04-19 Brent Fulgham <[email protected]>
Revert unintended workspace change in my last commit.
Added: trunk/ManualTests/empty-inline-as-line-break-position.html (0 => 167628)
--- trunk/ManualTests/empty-inline-as-line-break-position.html (rev 0)
+++ trunk/ManualTests/empty-inline-as-line-break-position.html 2014-04-21 21:45:35 UTC (rev 167628)
@@ -0,0 +1,20 @@
+<div>
+ WebKit bug #<a href="" Empty inlines should not be line break objects. This test must be run manually. On success, you will see "Test passed" below.
+</div>
+<script>
+ window._onload_ = function() {
+ document.body.offsetTop;
+ b.style.display = "inline-block";
+
+ document.body.offsetTop;
+ a.removeChild(c);
+
+ window.resizeTo(window.outerWidth + 1, window.outerHeight + 1);
+ setTimeout(function() { x.innerHTML = "Test passed"; }, 100);
+ }
+</script>
+<div style="width: 0px;" id="x">foo<span id="a">
+ <span id="b"></span><span>bar</span><span id="c"></span>
+ </span>
+ >
+
Modified: trunk/Source/WebCore/ChangeLog (167627 => 167628)
--- trunk/Source/WebCore/ChangeLog 2014-04-21 21:44:34 UTC (rev 167627)
+++ trunk/Source/WebCore/ChangeLog 2014-04-21 21:45:35 UTC (rev 167628)
@@ -1,3 +1,16 @@
+2014-04-18 Jon Honeycutt <[email protected]>
+
+ Empty RenderInline objects should not be line break objects.
+
+ https://bugs.webkit.org/show_bug.cgi?id=131861
+ <rdar://problem/15663617>
+
+ Reviewed by David Hyatt.
+
+ * rendering/line/BreakingContextInlineHeaders.h:
+ (WebCore::BreakingContext::canBreakAtThisPosition):
+ Don't break at this position if this is an empty RenderInline.
+
2014-04-21 Enrica Casucci <[email protected]>
[iOS WebKit2] support replacements for misspelled words.
Modified: trunk/Source/WebCore/rendering/line/BreakingContextInlineHeaders.h (167627 => 167628)
--- trunk/Source/WebCore/rendering/line/BreakingContextInlineHeaders.h 2014-04-21 21:44:34 UTC (rev 167627)
+++ trunk/Source/WebCore/rendering/line/BreakingContextInlineHeaders.h 2014-04-21 21:45:35 UTC (rev 167628)
@@ -931,6 +931,10 @@
if (m_width.committedWidth() && !m_width.fitsOnLine(m_currentCharacterIsSpace) && m_currWS == NOWRAP)
return true;
+ // Avoid breaking on empty inlines.
+ if (m_current.renderer()->isRenderInline() && isEmptyInline(toRenderInline(*m_current.renderer())))
+ return false;
+
// Avoid breaking before empty inlines.
if (m_nextObject && m_nextObject->isRenderInline() && isEmptyInline(toRenderInline(*m_nextObject)))
return false;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes