summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfs <fs@opera.com>2016-03-22 12:54:24 -0700
committerCommit bot <commit-bot@chromium.org>2016-03-22 19:55:31 +0000
commiteb829d2e605994528ec3f6cf1edd69a3e6f3fb97 (patch)
tree170fb0be1e127ebc9870021afb2cdd90571415bf
parentd83aa53f1beb27037f5f77fc06d5b6b0c2e05642 (diff)
downloadchromium_src-eb829d2e605994528ec3f6cf1edd69a3e6f3fb97.zip
chromium_src-eb829d2e605994528ec3f6cf1edd69a3e6f3fb97.tar.gz
chromium_src-eb829d2e605994528ec3f6cf1edd69a3e6f3fb97.tar.bz2
Use the line box's direction in computeGlyphOverflow
Use SVGInlineTextBox::constructTextRun in order to get the direction as determined by the BiDi algorithm rather than the what is specified on the element. (This should also get the right override value for similar reasons.) BUG=596721 Review URL: https://codereview.chromium.org/1823073002 Cr-Commit-Position: refs/heads/master@{#382655}
-rw-r--r--third_party/WebKit/LayoutTests/TestExpectations22
-rw-r--r--third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.cpp2
2 files changed, 23 insertions, 1 deletions
diff --git a/third_party/WebKit/LayoutTests/TestExpectations b/third_party/WebKit/LayoutTests/TestExpectations
index 570f94a..061a958 100644
--- a/third_party/WebKit/LayoutTests/TestExpectations
+++ b/third_party/WebKit/LayoutTests/TestExpectations
@@ -92,6 +92,28 @@ crbug.com/524236 virtual/spv2/paint/invalidation/spv2/repaint-tile-clipped-as-te
crbug.com/524236 virtual/spv2/paint/invalidation/spv2/updating-scrolling-content-as-text.html [ Failure ]
crbug.com/524236 virtual/spv2/paint/invalidation/spv2/scrolling-without-painting-as-text.html [ Failure ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirLTR-anchorEnd.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirLTR-anchorMiddle.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirLTR-anchorStart.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirNone-anchorEnd.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirNone-anchorMiddle.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirNone-anchorStart.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirRTL-anchorEnd.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirRTL-anchorMiddle.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-dirRTL-anchorStart.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorEnd.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorMiddle.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-inherited-dirLTR-anchorStart.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorEnd.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorMiddle.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-inherited-dirRTL-anchorStart.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/text-anchor-no-markup.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/tspan-dirLTR-ubEmbed-in-rtl-context.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/W3C-I18N/tspan-direction-ltr.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/text/bidi-text-query.svg [ NeedsRebaseline ]
+crbug.com/596721 svg/text/combining-character-queries.html [ NeedsRebaseline ]
+crbug.com/596721 svg/text/text-selection-intro-05-t.svg [ NeedsRebaseline ]
+
crbug.com/527242 virtual/spv2/paint/invalidation/spv2/cached-cell-append.html [ Failure ]
crbug.com/527242 virtual/spv2/paint/invalidation/spv2/cached-cell-remove.html [ Failure ]
crbug.com/527242 virtual/spv2/paint/invalidation/spv2/cached-change-cell-border-width.html [ Failure ]
diff --git a/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.cpp b/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.cpp
index 68f4a4c..8954380 100644
--- a/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.cpp
+++ b/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutEngine.cpp
@@ -114,7 +114,7 @@ void SVGTextLayoutEngine::updateRelativePositionAdjustmentsIfNeeded(float dx, fl
static void computeGlyphOverflow(SVGInlineTextBox* textBox, SVGTextFragment& textFragment)
{
LineLayoutSVGInlineText textLineLayout = LineLayoutSVGInlineText(textBox->getLineLayoutItem());
- TextRun run = SVGTextMetrics::constructTextRun(textLineLayout, textFragment.characterOffset, textFragment.length, textLineLayout.styleRef().direction());
+ TextRun run = textBox->constructTextRun(textLineLayout.styleRef(), textFragment);
float scalingFactor = textLineLayout.scalingFactor();
ASSERT(scalingFactor);