Title: [179663] branches/safari-600.5-branch/Source/WebCore
- Revision
- 179663
- Author
- [email protected]
- Date
- 2015-02-04 19:40:49 -0800 (Wed, 04 Feb 2015)
Log Message
Merge r179070. rdar://problem/19451292
Modified Paths
Diff
Modified: branches/safari-600.5-branch/Source/WebCore/ChangeLog (179662 => 179663)
--- branches/safari-600.5-branch/Source/WebCore/ChangeLog 2015-02-05 03:40:46 UTC (rev 179662)
+++ branches/safari-600.5-branch/Source/WebCore/ChangeLog 2015-02-05 03:40:49 UTC (rev 179663)
@@ -1,3 +1,23 @@
+2015-01-24 David Kilzer <[email protected]>
+
+ Merge r175260.
+
+ 2014-10-28 David Hyatt <[email protected]>
+
+ Selection gap painting is ugly for ruby bases.
+ https://bugs.webkit.org/show_bug.cgi?id=138136
+
+ Reviewed by Dean Jackson.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::selectionGaps):
+ For ruby bases don't fill to the end of the block (in the block direction),
+ since ideographic baselines push that end below the text baseline.
+
+ (WebCore::RenderBlock::blockSelectionGaps):
+ * rendering/RenderBlockFlow.cpp:
+ Skip ruby bases for block selection gap filling.
+
2015-02-04 Matthew Hanson <[email protected]>
Merge r178490. rdar://problem/19687156
Modified: branches/safari-600.5-branch/Source/WebCore/rendering/RenderBlock.cpp (179662 => 179663)
--- branches/safari-600.5-branch/Source/WebCore/rendering/RenderBlock.cpp 2015-02-05 03:40:46 UTC (rev 179662)
+++ branches/safari-600.5-branch/Source/WebCore/rendering/RenderBlock.cpp 2015-02-05 03:40:49 UTC (rev 179663)
@@ -1965,7 +1965,7 @@
result = blockSelectionGaps(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock, lastLogicalTop, lastLogicalLeft, lastLogicalRight, cache, paintInfo);
// Go ahead and fill the vertical gap all the way to the bottom of our block if the selection extends past our block.
- if (&rootBlock == this && (selectionState() != SelectionBoth && selectionState() != SelectionEnd)) {
+ if (&rootBlock == this && (selectionState() != SelectionBoth && selectionState() != SelectionEnd) && !isRubyBase()) {
result.uniteCenter(blockSelectionGap(rootBlock, rootBlockPhysicalPosition, offsetFromRootBlock,
lastLogicalTop, lastLogicalLeft, lastLogicalRight, logicalHeight(), cache, paintInfo));
}
@@ -2010,7 +2010,7 @@
}
bool paintsOwnSelection = curr->shouldPaintSelectionGaps() || curr->isTable(); // FIXME: Eventually we won't special-case table like this.
- bool fillBlockGaps = paintsOwnSelection || (curr->canBeSelectionLeaf() && childState != SelectionNone);
+ bool fillBlockGaps = !isRubyBase() && (paintsOwnSelection || (curr->canBeSelectionLeaf() && childState != SelectionNone));
if (fillBlockGaps) {
// We need to fill the vertical gap above this object.
if (childState == SelectionEnd || childState == SelectionInside) {
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes