Bug 123960 - Bidi-Isolate inlines break layout with collapsed whitespace
Summary: Bidi-Isolate inlines break layout with collapsed whitespace
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Text (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords: BlinkMergeCandidate
Depends on:
Blocks:
 
Reported: 2013-11-06 23:12 PST by Ryosuke Niwa
Modified: 2013-12-16 14:32 PST (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ryosuke Niwa 2013-11-06 23:12:10 PST
Consider merging https://chromium.googlesource.com/chromium/blink/+/d1cf2bc1fb535d697d9060d9f8d5aa5906558ceb

Collapsed space never worked properly if we have spaces inside and/or after a Bidi-isolate.
The problem happens in two parts of the code:

1. The midpointState is not updated properly in addFakeRunIfNecessary. So when 
an isolated run is added the next midpoint state is wrong.
2. Since isolated runs have a two pass algorithm. In the second pass the 
midpoint state is wrong.

This patches fixes the first problem implementing a method called 
adjustMidpointsAndAppendRunsForObjectIfNeeded, when a fake run is added it basically 
updates the midpointState properly. And the second problem is fixed
saving and restoring the midpointState for Bidi-isolate inlines.
Comment 2 Igor Trindade Oliveira 2013-12-03 22:04:35 PST
recommitted again in: https://src.chromium.org/viewvc/blink?revision=160400&view=revision