| Index: ui/gfx/render_text_harfbuzz.h | 
| diff --git a/ui/gfx/render_text_harfbuzz.h b/ui/gfx/render_text_harfbuzz.h | 
| index 6d8fa8d962a13e7067e0d2f759cf8f9dbdb89916..b8235515b259e2582d434c6b9f0f8d79513c4cb2 100644 | 
| --- a/ui/gfx/render_text_harfbuzz.h | 
| +++ b/ui/gfx/render_text_harfbuzz.h | 
| @@ -54,6 +54,10 @@ struct GFX_EXPORT TextRunHarfBuzz { | 
| // Returns whether the given shaped run contains any missing glyphs. | 
| bool HasMissingGlyphs() const; | 
|  | 
| +  // Returns the glyph width for the given character range. |char_range| is in | 
| +  // text-space (0 corresponds to |GetDisplayText()[0]|). | 
| +  SkScalar GetGlyphWidthForCharRange(const Range& char_range) const; | 
| + | 
| float width; | 
| float preceding_run_widths; | 
| Range range; | 
| @@ -115,6 +119,9 @@ class TextRunList { | 
| // Do not use this when multiline is enabled. | 
| float width() const { return width_; } | 
|  | 
| +  // Get the run index applicable to |position| (at or preceeding |position|). | 
| +  size_t GetRunIndexAt(size_t position) const; | 
| + | 
| private: | 
| // Text runs in logical order. | 
| ScopedVector<TextRunHarfBuzz> runs_; | 
| @@ -165,6 +172,7 @@ class GFX_EXPORT RenderTextHarfBuzz : public RenderText { | 
|  | 
| private: | 
| friend class RenderTextTest; | 
| +  FRIEND_TEST_ALL_PREFIXES(RenderTextTest, Multiline_LineBreakerBehavior); | 
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, Multiline_HorizontalAlignment); | 
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, Multiline_NormalWidth); | 
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, Multiline_WordWrapBehavior); | 
|  |