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

Issue 1323513006: Upstream ScriptRunIterator for segmenting text runs by script (Closed)

Created:
5 years, 3 months ago by drott
Modified:
5 years, 3 months ago
CC:
krit, drott+blinkwatch_chromium.org, Rik, dshwang, jbroman, Justin Novosad, danakj, pdr+graphicswatchlist_chromium.org, f(malita), Stephen Chennney, rwlbuis
Target Ref:
refs/heads/master
Project:
blink
Visibility:
Public.

Description

Upstream ScriptRunIterator for segmenting text runs by script ScriptRunIterator takes a pointer to a UTF-16 text run, and a starting script value, then consume() can be called on it to retrieve the limit and script value of the next segmented script run. It takes care of matching brackets when resolving script runs. This functionality is needed for changing HarfBuzzShaper.cpp so that we do not need to pre-split and store the TextRun into HarfBuzzRuns. We can improve our script segmentation and integrate script splitting and shaping in one loop. Original code written by Doug Felt, big thanks! BUG=526095 R=eae,behdad Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=201722

Patch Set 1 #

Total comments: 7

Patch Set 2 : Blink naming conventions, most review comments addressed #

Patch Set 3 : Match format string to argument in error logging #

Patch Set 4 : Fix size_t logging #

Patch Set 5 : No support for constexpr on Win, unused variable fix for empty test #

Patch Set 6 : Generate UTF-8 encoded symbols for strings on Windows #

Patch Set 7 : Attempting to fix windows build by using explicit utf-8 literals #

Patch Set 8 : Hex escapes seem to be the safest cross-platform bet #

Total comments: 2

Patch Set 9 : Fix Win link step, more verbose primaryScript comparison #

Patch Set 10 : Clang build fix attempt #

Patch Set 11 : Additional review comments addressed, new linkage attempt for kMaxScripts constant #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1287 lines, -2 lines) Patch
M Source/platform/blink_platform.gypi View 2 chunks +5 lines, -2 lines 0 comments Download
A Source/platform/fonts/ScriptRunIterator.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +121 lines, -0 lines 0 comments Download
A Source/platform/fonts/ScriptRunIterator.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +375 lines, -0 lines 0 comments Download
A Source/platform/fonts/ScriptRunIteratorTest.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +786 lines, -0 lines 0 comments Download

Messages

Total messages: 61 (26 generated)
drott
5 years, 3 months ago (2015-08-28 20:46:04 UTC) #1
eae
This looks great! Thanks for doing this drott! https://codereview.chromium.org/1323513006/diff/1/Source/platform/fonts/ScriptRunIterator.cpp File Source/platform/fonts/ScriptRunIterator.cpp (right): https://codereview.chromium.org/1323513006/diff/1/Source/platform/fonts/ScriptRunIterator.cpp#newcode123 Source/platform/fonts/ScriptRunIterator.cpp:123: // ...
5 years, 3 months ago (2015-08-28 21:10:25 UTC) #2
drott
On 2015/08/28 21:10:25, eae wrote: > This looks great! Thanks for doing this drott! Thanks ...
5 years, 3 months ago (2015-08-31 11:01:27 UTC) #3
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/60001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/60001
5 years, 3 months ago (2015-08-31 11:19:42 UTC) #5
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/97843)
5 years, 3 months ago (2015-08-31 11:42:41 UTC) #7
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/80001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/80001
5 years, 3 months ago (2015-08-31 14:24:35 UTC) #9
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_gn_rel on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_gn_rel/builds/128274)
5 years, 3 months ago (2015-08-31 14:47:57 UTC) #11
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/100001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/100001
5 years, 3 months ago (2015-08-31 16:50:18 UTC) #13
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_compile_dbg_32_ng on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_compile_dbg_32_ng/builds/91631)
5 years, 3 months ago (2015-08-31 16:59:43 UTC) #15
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/120001
5 years, 3 months ago (2015-08-31 17:33:31 UTC) #18
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/77309)
5 years, 3 months ago (2015-08-31 18:05:15 UTC) #20
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/140001
5 years, 3 months ago (2015-08-31 18:52:36 UTC) #22
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/100959)
5 years, 3 months ago (2015-08-31 19:43:02 UTC) #24
drott
Hex escapes seem to be the safest cross-platform bet
5 years, 3 months ago (2015-09-01 09:29:48 UTC) #25
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/160001
5 years, 3 months ago (2015-09-01 09:37:30 UTC) #27
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_x64_rel_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/98488)
5 years, 3 months ago (2015-09-01 10:29:15 UTC) #29
behdad_google
lgtm Thanks Dominik. This looks great. We should, later on, port this to C and ...
5 years, 3 months ago (2015-09-01 11:16:36 UTC) #31
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/180001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/180001
5 years, 3 months ago (2015-09-01 13:02:47 UTC) #33
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: mac_chromium_compile_dbg_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_compile_dbg_ng/builds/92584)
5 years, 3 months ago (2015-09-01 13:13:49 UTC) #35
drott
Clang build fix attempt
5 years, 3 months ago (2015-09-01 13:26:51 UTC) #36
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/190001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/190001
5 years, 3 months ago (2015-09-01 13:27:12 UTC) #38
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: win_chromium_compile_dbg_ng on tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/77840)
5 years, 3 months ago (2015-09-01 14:28:04 UTC) #40
drott
Address inconsistent DLL linkage warning
5 years, 3 months ago (2015-09-01 14:38:33 UTC) #41
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/210001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/210001
5 years, 3 months ago (2015-09-01 14:40:11 UTC) #43
commit-bot: I haz the power
Dry run: Try jobs failed on following builders: linux_chromium_gn_rel on tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_gn_rel/builds/128951)
5 years, 3 months ago (2015-09-01 15:30:25 UTC) #45
drott
brettw@, dpranke@: I'm really struggling getting this to build an link everywhere - would you ...
5 years, 3 months ago (2015-09-01 16:14:30 UTC) #48
brettw
When you put the assignment of the constant in the header, you're not actually giving ...
5 years, 3 months ago (2015-09-01 17:14:20 UTC) #49
behdad_google
On 2015/09/01 17:14:20, brettw wrote: > When you put the assignment of the constant in ...
5 years, 3 months ago (2015-09-01 17:31:48 UTC) #50
drott
Additional review comments addressed, new linkage attempt for kMaxScripts constant
5 years, 3 months ago (2015-09-02 07:41:18 UTC) #51
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/230001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/230001
5 years, 3 months ago (2015-09-02 07:42:12 UTC) #53
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
5 years, 3 months ago (2015-09-02 08:50:12 UTC) #55
drott
On 2015/09/01 17:14:20, brettw wrote: > When you put the assignment of the constant in ...
5 years, 3 months ago (2015-09-02 09:13:07 UTC) #56
eae
LGTM
5 years, 3 months ago (2015-09-02 14:43:56 UTC) #57
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1323513006/230001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1323513006/230001
5 years, 3 months ago (2015-09-03 10:43:46 UTC) #60
commit-bot: I haz the power
5 years, 3 months ago (2015-09-03 13:41:05 UTC) #61
Message was sent while issue was closed.
Committed patchset #11 (id:230001) as
https://src.chromium.org/viewvc/blink?view=rev&revision=201722

Powered by Google App Engine
This is Rietveld 408576698