| Index: ui/gfx/render_text.h
|
| diff --git a/ui/gfx/render_text.h b/ui/gfx/render_text.h
|
| index c10b8abf3d63c2177ee68269b73a0fc9888312a6..c0a078a9893928ee6bd77a20c5b16882a03e187c 100644
|
| --- a/ui/gfx/render_text.h
|
| +++ b/ui/gfx/render_text.h
|
| @@ -193,6 +193,12 @@ class UI_EXPORT RenderText {
|
| // cleared when SetText or SetObscured is called.
|
| void SetObscuredRevealIndex(int index);
|
|
|
| + // Set the maximum length of the displayed layout text, not the actual text.
|
| + // A |length| of 0 forgoes a hard limit, but does not guarantee proper
|
| + // functionality of very long strings. Applies to subsequent SetText calls.
|
| + // WARNING: Only use this for system limits, it lacks complex text support.
|
| + void set_truncate_length(size_t length) { truncate_length_ = length; }
|
| +
|
| const Rect& display_rect() const { return display_rect_; }
|
| void SetDisplayRect(const Rect& r);
|
|
|
| @@ -412,7 +418,7 @@ class UI_EXPORT RenderText {
|
| // Draw the text.
|
| virtual void DrawVisualText(Canvas* canvas) = 0;
|
|
|
| - // Returns the text used for layout, which may be |obscured_text_|.
|
| + // Returns the text used for layout, which may be obscured or truncated.
|
| const base::string16& GetLayoutText() const;
|
|
|
| // Apply (and undo) temporary composition underlines and selection colors.
|
| @@ -451,6 +457,8 @@ class UI_EXPORT RenderText {
|
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, ApplyColorAndStyle);
|
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, ObscuredText);
|
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, RevealObscuredText);
|
| + FRIEND_TEST_ALL_PREFIXES(RenderTextTest, TruncatedText);
|
| + FRIEND_TEST_ALL_PREFIXES(RenderTextTest, TruncatedObscuredText);
|
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, GraphemePositions);
|
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, EdgeSelectionModels);
|
| FRIEND_TEST_ALL_PREFIXES(RenderTextTest, GetTextOffset);
|
| @@ -463,8 +471,8 @@ class UI_EXPORT RenderText {
|
| // it is a NO-OP.
|
| void MoveCursorTo(size_t position, bool select);
|
|
|
| - // Updates |obscured_text_| if the text is obscured.
|
| - void UpdateObscuredText();
|
| + // Updates |layout_text_| if the text is obscured or truncated.
|
| + void UpdateLayoutText();
|
|
|
| // Update the cached bounds and display offset to ensure that the current
|
| // cursor is within the visible display area.
|
| @@ -537,14 +545,17 @@ class UI_EXPORT RenderText {
|
| BreakList<bool> saved_underlines_;
|
| bool composition_and_selection_styles_applied_;
|
|
|
| - // A flag and the text to display for obscured (password) fields.
|
| - // Asterisks are used instead of the actual text glyphs when true.
|
| + // A flag to obscure actual text with asterisks for password fields.
|
| bool obscured_;
|
| - base::string16 obscured_text_;
|
| -
|
| // The index at which the char should be revealed in the obscured text.
|
| int obscured_reveal_index_;
|
|
|
| + // The maximum length of text to display, 0 forgoes a hard limit.
|
| + size_t truncate_length_;
|
| +
|
| + // The obscured and/or truncated text that will be displayed.
|
| + base::string16 layout_text_;
|
| +
|
| // Fade text head and/or tail, if text doesn't fit into |display_rect_|.
|
| bool fade_head_;
|
| bool fade_tail_;
|
|
|