Attribute indices not computed correctly for surrogate pairs in follow-on text nodes |
||
Issue descriptionExample: https://jsfiddle.net/0o4hbqsh/ Expected: The first couple of notes should be positioned at y=80 while the second should be positioned at y=40. Actual: Both couple of notes are positioned at y=80.
,
Mar 23 2016
Feel free to grab if time permits.
,
Apr 9 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9331211c22aee7b499131aa1c58ce515deceeb45 commit 9331211c22aee7b499131aa1c58ce515deceeb45 Author: fs <fs@opera.com> Date: Sat Apr 09 19:13:43 2016 Use characters (not code units) when computing value list positions The value list position is updated by one for each character, and not at all when spaces are skipped (collapsed). When assigning value list positions, we are currently counting surrogates as two (on for each code unit.) Use the text metrics data to count the number of (non-collapsed) characters instead. BUG= 597312 , 594058 Review URL: https://codereview.chromium.org/1866703002 Cr-Commit-Position: refs/heads/master@{#386305} [add] https://crrev.com/9331211c22aee7b499131aa1c58ce515deceeb45/third_party/WebKit/LayoutTests/svg/text/surrogate-pair-attribute-positions-expected.html [add] https://crrev.com/9331211c22aee7b499131aa1c58ce515deceeb45/third_party/WebKit/LayoutTests/svg/text/surrogate-pair-attribute-positions.html [modify] https://crrev.com/9331211c22aee7b499131aa1c58ce515deceeb45/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutAttributesBuilder.cpp [modify] https://crrev.com/9331211c22aee7b499131aa1c58ce515deceeb45/third_party/WebKit/Source/core/layout/svg/SVGTextLayoutAttributesBuilder.h
,
Apr 9 2016
"trivial one-liner", mmm, yes... |
||
►
Sign in to add a comment |
||
Comment 1 by f...@opera.com
, Mar 23 2016