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

Issue 152473008: More or less implement RenderTextHarfBuzz (Closed)

Created:
6 years, 10 months ago by ckocagil
Modified:
6 years, 7 months ago
CC:
chromium-reviews, tfarina, Alexei Svitkine (slow), Yuki, Andre
Visibility:
Public.

Description

More or less implement RenderTextHarfBuzz Skia font lookup functions for HarfBuzz are from Blink. Much of the implementation copied from RenderTextWin. In the future we should either move the copied methods up, or get rid of all the other RenderText implementations in favor of this one. BUG=321868 TBR=behdad@chromium.org Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=272260

Patch Set 1 #

Patch Set 2 : #

Total comments: 2

Patch Set 3 : rebased #

Patch Set 4 : rebased; decorations #

Total comments: 188

Patch Set 5 : styles; script runs; comments addressed #

Patch Set 6 : more comments #

Total comments: 53

Patch Set 7 : even more comments #

Patch Set 8 : merge 252563003 #

Total comments: 38

Patch Set 9 : Alexei's comments #

Total comments: 18

Patch Set 10 : Alexei's comments 2 #

Total comments: 10

Patch Set 11 : comments #

Total comments: 12

Patch Set 12 : nits #

Total comments: 1

Patch Set 13 : compile fix #

Patch Set 14 : android fix #

Patch Set 15 : actual android fix #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1166 lines, -26 lines) Patch
M chrome/app/generated_resources.grd View 1 chunk +6 lines, -0 lines 0 comments Download
M chrome/browser/about_flags.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +7 lines, -0 lines 0 comments Download
M ui/gfx/DEPS View 1 2 3 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/gfx.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 4 chunks +8 lines, -0 lines 0 comments Download
M ui/gfx/render_text.h View 1 2 3 4 5 6 7 8 4 chunks +9 lines, -1 line 0 comments Download
M ui/gfx/render_text.cc View 1 2 3 4 5 6 7 8 6 chunks +30 lines, -10 lines 0 comments Download
A ui/gfx/render_text_harfbuzz.h View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +126 lines, -0 lines 0 comments Download
A ui/gfx/render_text_harfbuzz.cc View 1 2 3 4 5 6 7 8 9 10 11 12 1 chunk +945 lines, -0 lines 0 comments Download
M ui/gfx/render_text_mac.cc View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M ui/gfx/render_text_ozone.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -1 line 0 comments Download
M ui/gfx/render_text_pango.cc View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M ui/gfx/render_text_win.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
M ui/gfx/switches.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -0 lines 0 comments Download
M ui/gfx/switches.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +4 lines, -0 lines 0 comments Download
M ui/views/examples/multiline_example.cc View 1 2 3 4 4 chunks +25 lines, -11 lines 0 comments Download

Messages

Total messages: 36 (0 generated)
ckocagil
Just a heads up, this is not ready for a thorough review yet. Higher level ...
6 years, 10 months ago (2014-02-10 06:24:20 UTC) #1
eae
https://codereview.chromium.org/152473008/diff/60001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/60001/ui/gfx/render_text_harfbuzz.cc#newcode605 ui/gfx/render_text_harfbuzz.cc:605: hb_buffer_guess_segment_properties(text_buffer); You really don't want to do this. We've ...
6 years, 9 months ago (2014-03-07 18:43:05 UTC) #2
msw
Thanks for working on this, Cem; your efforts are greatly appreciated. People have expressed renewed ...
6 years, 7 months ago (2014-04-29 06:24:44 UTC) #3
eae
https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text_harfbuzz.cc#newcode695 ui/gfx/render_text_harfbuzz.cc:695: hb_buffer_guess_segment_properties(text_buffer); On 2014/04/29 06:24:45, msw wrote: > Address eae's ...
6 years, 7 months ago (2014-04-29 16:01:53 UTC) #4
ckocagil
https://codereview.chromium.org/152473008/diff/60001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/60001/ui/gfx/render_text_harfbuzz.cc#newcode605 ui/gfx/render_text_harfbuzz.cc:605: hb_buffer_guess_segment_properties(text_buffer); On 2014/03/07 18:43:06, eae wrote: > You really ...
6 years, 7 months ago (2014-05-01 22:02:00 UTC) #5
eae
LGTM for harfbuzz/shaping implementation. It's a shame we can't share some of this with blink ...
6 years, 7 months ago (2014-05-01 22:33:44 UTC) #6
msw
I'll take a look at the newest patch set soon, just wanted to post some ...
6 years, 7 months ago (2014-05-02 05:08:21 UTC) #7
ckocagil
https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text.cc File ui/gfx/render_text.cc (right): https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text.cc#newcode321 ui/gfx/render_text.cc:321: matrix_(canvas->sk_canvas()->getTotalMatrix()), On 2014/05/02 05:08:21, msw wrote: > On 2014/05/01 ...
6 years, 7 months ago (2014-05-06 03:38:39 UTC) #8
msw
This is looking pretty good overall, I'm impressed! https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text.cc File ui/gfx/render_text.cc (right): https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text.cc#newcode321 ui/gfx/render_text.cc:321: matrix_(canvas->sk_canvas()->getTotalMatrix()), ...
6 years, 7 months ago (2014-05-09 22:55:18 UTC) #9
ckocagil
https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text.cc File ui/gfx/render_text.cc (right): https://codereview.chromium.org/152473008/diff/100001/ui/gfx/render_text.cc#newcode321 ui/gfx/render_text.cc:321: matrix_(canvas->sk_canvas()->getTotalMatrix()), On 2014/05/09 22:55:18, msw wrote: > On 2014/05/06 ...
6 years, 7 months ago (2014-05-12 09:53:28 UTC) #10
Alexei Svitkine (slow)
Thanks for working on this, excited to see this happen! https://codereview.chromium.org/152473008/diff/200001/ui/gfx/render_text.cc File ui/gfx/render_text.cc (right): https://codereview.chromium.org/152473008/diff/200001/ui/gfx/render_text.cc#newcode360 ...
6 years, 7 months ago (2014-05-12 15:58:31 UTC) #11
ckocagil
https://codereview.chromium.org/152473008/diff/200001/ui/gfx/render_text.cc File ui/gfx/render_text.cc (right): https://codereview.chromium.org/152473008/diff/200001/ui/gfx/render_text.cc#newcode360 ui/gfx/render_text.cc:360: sk_canvas->clipRect(RectToSkRect( On 2014/05/12 15:58:31, Alexei Svitkine wrote: > The ...
6 years, 7 months ago (2014-05-13 15:03:47 UTC) #12
Alexei Svitkine (slow)
https://codereview.chromium.org/152473008/diff/220001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/220001/ui/gfx/render_text_harfbuzz.cc#newcode61 ui/gfx/render_text_harfbuzz.cc:61: CHECK_LE(codepoint, 0xFFFFU); Does this need to be a CHECK ...
6 years, 7 months ago (2014-05-13 15:23:27 UTC) #13
ckocagil
https://codereview.chromium.org/152473008/diff/220001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/220001/ui/gfx/render_text_harfbuzz.cc#newcode61 ui/gfx/render_text_harfbuzz.cc:61: CHECK_LE(codepoint, 0xFFFFU); On 2014/05/13 15:23:27, Alexei Svitkine wrote: > ...
6 years, 7 months ago (2014-05-16 13:47:24 UTC) #14
msw
LGTM with minor nits and a comment request; great work! https://codereview.chromium.org/152473008/diff/140001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/140001/ui/gfx/render_text_harfbuzz.cc#newcode275 ...
6 years, 7 months ago (2014-05-16 18:01:30 UTC) #15
Alexei Svitkine (slow)
https://codereview.chromium.org/152473008/diff/220001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/220001/ui/gfx/render_text_harfbuzz.cc#newcode250 ui/gfx/render_text_harfbuzz.cc:250: bool HasMissingGlyphs(const internal::TextRunHarfBuzz& run) { On 2014/05/16 13:47:25, ckocagil ...
6 years, 7 months ago (2014-05-16 18:22:52 UTC) #16
ckocagil
https://codereview.chromium.org/152473008/diff/140001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/140001/ui/gfx/render_text_harfbuzz.cc#newcode275 ui/gfx/render_text_harfbuzz.cc:275: void ScriptSetIntersect(UChar32 codepoint, On 2014/05/16 18:01:30, msw wrote: > ...
6 years, 7 months ago (2014-05-20 18:35:10 UTC) #17
msw
Still lgtm with a nit. https://codereview.chromium.org/152473008/diff/260001/ui/gfx/render_text_harfbuzz.h File ui/gfx/render_text_harfbuzz.h (right): https://codereview.chromium.org/152473008/diff/260001/ui/gfx/render_text_harfbuzz.h#newcode32 ui/gfx/render_text_harfbuzz.h:32: // Returns whether the ...
6 years, 7 months ago (2014-05-20 19:13:44 UTC) #18
Alexei Svitkine (slow)
LGTM % nits Thanks! https://codereview.chromium.org/152473008/diff/260001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/260001/ui/gfx/render_text_harfbuzz.cc#newcode227 ui/gfx/render_text_harfbuzz.cc:227: bool IsUnusualBlockCode(const UBlockCode block_code) { ...
6 years, 7 months ago (2014-05-21 07:39:02 UTC) #19
ckocagil
https://codereview.chromium.org/152473008/diff/260001/ui/gfx/render_text_harfbuzz.cc File ui/gfx/render_text_harfbuzz.cc (right): https://codereview.chromium.org/152473008/diff/260001/ui/gfx/render_text_harfbuzz.cc#newcode227 ui/gfx/render_text_harfbuzz.cc:227: bool IsUnusualBlockCode(const UBlockCode block_code) { On 2014/05/21 07:39:02, Alexei ...
6 years, 7 months ago (2014-05-21 14:34:38 UTC) #20
ckocagil
+sky: ui/views/examples/multiline_example.cc +behdad: please stamp, or take a look at the HarfBuzz usage if you ...
6 years, 7 months ago (2014-05-21 14:39:30 UTC) #21
sky
LGTM https://codereview.chromium.org/152473008/diff/280001/ui/views/examples/multiline_example.cc File ui/views/examples/multiline_example.cc (right): https://codereview.chromium.org/152473008/diff/280001/ui/views/examples/multiline_example.cc#newcode25 ui/views/examples/multiline_example.cc:25: gfx::Range ClampRange(gfx::Range range, size_t max) { const gfx::Range&
6 years, 7 months ago (2014-05-21 16:16:38 UTC) #22
behdad_google
lgtm
6 years, 7 months ago (2014-05-21 21:41:08 UTC) #23
ckocagil
The CQ bit was checked by ckocagil@chromium.org
6 years, 7 months ago (2014-05-21 23:24:23 UTC) #24
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ckocagil@chromium.org/152473008/280001
6 years, 7 months ago (2014-05-21 23:30:31 UTC) #25
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). Please consider checking whether the failures are ...
6 years, 7 months ago (2014-05-22 05:35:58 UTC) #26
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 7 months ago (2014-05-22 05:44:47 UTC) #27
commit-bot: I haz the power
Try jobs failed on following builders: android_dbg on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/android_dbg/builds/187036) chromium_presubmit on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/chromium_presubmit/builds/69112) linux_chromium_gn_rel ...
6 years, 7 months ago (2014-05-22 05:44:48 UTC) #28
ckocagil
The CQ bit was checked by ckocagil@chromium.org
6 years, 7 months ago (2014-05-22 10:01:23 UTC) #29
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ckocagil@chromium.org/152473008/300001
6 years, 7 months ago (2014-05-22 10:02:34 UTC) #30
ckocagil
The CQ bit was unchecked by ckocagil@chromium.org
6 years, 7 months ago (2014-05-22 14:18:17 UTC) #31
ckocagil
The CQ bit was checked by ckocagil@chromium.org
6 years, 7 months ago (2014-05-22 14:59:35 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/ckocagil@chromium.org/152473008/340001
6 years, 7 months ago (2014-05-22 15:01:00 UTC) #33
commit-bot: I haz the power
Change committed as 272260
6 years, 7 months ago (2014-05-22 19:01:09 UTC) #34
Inactive
After this CL, I am getting the following linking error on Linux (Ubuntu 14.04): ...bgpu_unittest_utils.a ...
6 years, 7 months ago (2014-05-22 23:11:16 UTC) #35
ckocagil
6 years, 7 months ago (2014-05-22 23:15:21 UTC) #36
Message was sent while issue was closed.
@ch.dumez: Does r272355 fix it?

Powered by Google App Engine
This is Rietveld 408576698