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

Unified Diff: ui/gfx/render_text_harfbuzz.cc

Issue 867003002: Cache gfx::RenderText instances in views::Label. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/gfx/render_text_harfbuzz.cc
diff --git a/ui/gfx/render_text_harfbuzz.cc b/ui/gfx/render_text_harfbuzz.cc
index 7e916ff3ae21142a633c45521e402b3b1b44ebc8..60fffc543c4b584800c240e4cc0e8878eee3fc74 100644
--- a/ui/gfx/render_text_harfbuzz.cc
+++ b/ui/gfx/render_text_harfbuzz.cc
@@ -647,6 +647,10 @@ const base::string16& RenderTextHarfBuzz::GetDisplayText() {
return text_elided() ? display_text() : layout_text();
}
+bool RenderTextHarfBuzz::MultilineSupported() const {
+ return true;
+}
+
Size RenderTextHarfBuzz::GetStringSize() {
const SizeF size_f = GetStringSizeF();
return Size(std::ceil(size_f.width()), size_f.height());
@@ -1009,7 +1013,7 @@ void RenderTextHarfBuzz::DrawVisualText(Canvas* canvas) {
renderer.SetTypeface(run.skia_face.get());
renderer.SetTextSize(SkIntToScalar(run.font_size));
renderer.SetFontRenderParams(run.render_params,
- background_is_transparent());
+ subpixel_rendering_enabled());
Range glyphs_range = run.CharRangeToGlyphRange(segment.char_range);
scoped_ptr<SkPoint[]> positions(new SkPoint[glyphs_range.length()]);
SkScalar offset_x =
@@ -1297,7 +1301,7 @@ bool RenderTextHarfBuzz::ShapeRunWithFont(const base::string16& text,
hb_font_t* harfbuzz_font = CreateHarfBuzzFont(
run->skia_face.get(), SkIntToScalar(run->font_size), run->render_params,
- background_is_transparent());
+ subpixel_rendering_enabled());
// TODO(vadimt): Remove ScopedTracker below once crbug.com/431326 is fixed.
tracked_objects::ScopedTracker tracking_profile1(

Powered by Google App Engine
This is Rietveld 408576698