Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(453)

Issue 1524913003: Account for total glyph overflow in CachingWordShaper::width (Closed)

Created:
5 years ago by pdr.
Modified:
5 years ago
CC:
blink-reviews, blink-reviews-platform-graphics_chromium.org, Rik, chromium-reviews, danakj, dshwang, drott+blinkwatch_chromium.org, krit, f(malita), jbroman, Justin Novosad, pdr+graphicswatchlist_chromium.org, rwlbuis, Stephen Chennney, vmpstr+blinkwatch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Account for total glyph overflow in CachingWordShaper::width CachingWordShaper::width works by splitting text runs along word boundaries and incrementing the width & glyph bounding box of each word separately. The function had a bug where the glyph bounding box of all words was effectively at the origin. This patch translates the glyph bounding box into the space of the current word before unioning. This patch fixes the repaint bugs seen in http://jsbin.com/mimujepiki but only a unit test has been added to prove correctness. BUG=569833, 566285 Committed: https://crrev.com/7d40658c384377727dff93c196d79a5f70df9a11 Cr-Commit-Position: refs/heads/master@{#365612}

Patch Set 1 #

Patch Set 2 : Raise our expectations #

Patch Set 3 : Update windows-specific test expectations lines #

Patch Set 4 : Ace of rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+102 lines, -38 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 1 chunk +25 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/block-layout-inline-children-float-positioned-expected.txt View 1 1 chunk +4 lines, -4 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/bugzilla-6278-expected.txt View 1 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/invalidation-after-opacity-change-subtree-expected.txt View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-1-expected.txt View 1 2 chunks +5 lines, -4 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-2-expected.txt View 1 2 chunks +7 lines, -7 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-3-expected.txt View 1 1 chunk +3 lines, -3 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-4-expected.txt View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-5-expected.txt View 1 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-7-expected.txt View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-8-expected.txt View 1 1 chunk +4 lines, -4 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/line-flow-with-floats-9-expected.txt View 1 2 chunks +15 lines, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/make-children-non-inline-expected.txt View 1 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/outline-clip-change-expected.txt View 1 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/overflow-delete-line-expected.txt View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/fast/repaint/text-append-dirty-lines-expected.txt View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/fonts/shaping/CachingWordShaper.cpp View 1 chunk +7 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/fonts/shaping/CachingWordShaperTest.cpp View 1 chunk +19 lines, -0 lines 0 comments Download

Messages

Total messages: 25 (13 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1524913003/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1524913003/1
5 years ago (2015-12-15 07:57:53 UTC) #3
pdr.
It looks like this may need a few rebaselines but this is otherwise ready for ...
5 years ago (2015-12-15 08:40:11 UTC) #4
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_android_rel_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_android_rel_ng/builds/110744)
5 years ago (2015-12-15 09:15:52 UTC) #6
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1524913003/20001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1524913003/20001
5 years ago (2015-12-15 19:18:55 UTC) #8
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1524913003/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1524913003/40001
5 years ago (2015-12-15 21:18:51 UTC) #11
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years ago (2015-12-15 23:07:12 UTC) #13
drott
LGTM, nice, well spotted!
5 years ago (2015-12-16 08:35:49 UTC) #15
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1524913003/40001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1524913003/40001
5 years ago (2015-12-16 17:28:23 UTC) #17
commit-bot: I haz the power
Try jobs failed on following builders: android_arm64_dbg_recipe on tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm64_dbg_recipe/builds/93) android_chromium_gn_compile_dbg on tryserver.chromium.android (JOB_FAILED, ...
5 years ago (2015-12-16 17:34:55 UTC) #19
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1524913003/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1524913003/60001
5 years ago (2015-12-16 18:56:18 UTC) #22
commit-bot: I haz the power
Committed patchset #4 (id:60001)
5 years ago (2015-12-16 20:51:26 UTC) #23
commit-bot: I haz the power
5 years ago (2015-12-16 20:53:08 UTC) #25
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/7d40658c384377727dff93c196d79a5f70df9a11
Cr-Commit-Position: refs/heads/master@{#365612}

Powered by Google App Engine
This is Rietveld 408576698