Chromium Code Reviews| Index: Source/core/rendering/RenderText.cpp |
| diff --git a/Source/core/rendering/RenderText.cpp b/Source/core/rendering/RenderText.cpp |
| index d60eac1bd18d6904e6c73b16bf977a4694d396ea..20e2052e248ff9cc58ddffa2fa847688b2c146b7 100644 |
| --- a/Source/core/rendering/RenderText.cpp |
| +++ b/Source/core/rendering/RenderText.cpp |
| @@ -938,14 +938,18 @@ void RenderText::computePreferredLogicalWidths(float leadWidth, HashSet<const Si |
| bool breakAll = (styleToUse->wordBreak() == BreakAllWordBreak || styleToUse->wordBreak() == BreakWordBreak) && styleToUse->autoWrap(); |
| TextRun textRun(text()); |
| - textRun.setDirection(textDirection); |
| BidiResolver<TextRunIterator, BidiCharacterRun> bidiResolver; |
| bidiResolver.setStatus(BidiStatus(textRun.direction(), textRun.directionalOverride())); |
| bidiResolver.setPositionIgnoringNestedIsolates(TextRunIterator(&textRun, 0)); |
| + |
| + bool hasStrongDirectionality; |
| + textRun.setDirection(bidiResolver.determineParagraphDirectionality(&hasStrongDirectionality)); |
|
leviw_travelin_and_unemployed
2014/03/01 01:37:09
This is confusing since we're only running on a Te
|
| + bidiResolver.setStatus(BidiStatus(textRun.direction(), textRun.directionalOverride())); |
| + bidiResolver.setPositionIgnoringNestedIsolates(TextRunIterator(&textRun, 0)); |
| + |
| bool hardLineBreak = false; |
| bool reorderRuns = false; |
| bidiResolver.createBidiRunsForLine(TextRunIterator(&textRun, textRun.length()), NoVisualOverride, hardLineBreak, reorderRuns); |
| - |
| BidiRunList<BidiCharacterRun>& bidiRuns = bidiResolver.runs(); |
| BidiCharacterRun* run = bidiRuns.firstRun(); |
| for (int i = 0; i < len; i++) { |