зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #11142 - Fix inline size adjustment when stripping trailing whitespace from fragments (from kaksmet:another-justify-fix); r=mbrubeck
The whitespace range was not properly shifted which caused us to adjust the fragment's inline size by the advance of a different set of characters. This was causing justified text lines to be too long or too short. Source-Repo: https://github.com/servo/servo Source-Revision: 4a274cf58028267b7cbfbcadebf9504eceb14a4a
This commit is contained in:
Родитель
4f43a25df2
Коммит
d230e205b1
|
@ -2401,7 +2401,8 @@ impl Fragment {
|
|||
}
|
||||
let whitespace_start = ByteIndex(trailing_whitespace_start_byte as isize);
|
||||
let whitespace_len = scanned_text_fragment_info.range.length() - whitespace_start;
|
||||
let whitespace_range = Range::new(whitespace_start, whitespace_len);
|
||||
let mut whitespace_range = Range::new(whitespace_start, whitespace_len);
|
||||
whitespace_range.shift_by(scanned_text_fragment_info.range.begin());
|
||||
|
||||
let text_bounds = scanned_text_fragment_info.run
|
||||
.metrics_for_range(&whitespace_range)
|
||||
|
|
Загрузка…
Ссылка в новой задаче