OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "ui/views/controls/textfield/textfield.h" | 5 #include "ui/views/controls/textfield/textfield.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "base/debug/trace_event.h" | 9 #include "base/debug/trace_event.h" |
10 #include "grit/ui_strings.h" | 10 #include "grit/ui_strings.h" |
(...skipping 854 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
865 void Textfield::OnPaint(gfx::Canvas* canvas) { | 865 void Textfield::OnPaint(gfx::Canvas* canvas) { |
866 OnPaintBackground(canvas); | 866 OnPaintBackground(canvas); |
867 PaintTextAndCursor(canvas); | 867 PaintTextAndCursor(canvas); |
868 OnPaintBorder(canvas); | 868 OnPaintBorder(canvas); |
869 } | 869 } |
870 | 870 |
871 void Textfield::OnFocus() { | 871 void Textfield::OnFocus() { |
872 GetRenderText()->set_focused(true); | 872 GetRenderText()->set_focused(true); |
873 cursor_visible_ = true; | 873 cursor_visible_ = true; |
874 SchedulePaint(); | 874 SchedulePaint(); |
875 GetInputMethod()->OnTextInputTypeChanged(this); | 875 GetInputMethod()->OnFocus(); |
876 OnCaretBoundsChanged(); | 876 OnCaretBoundsChanged(); |
877 | 877 |
878 const size_t caret_blink_ms = Textfield::GetCaretBlinkMs(); | 878 const size_t caret_blink_ms = Textfield::GetCaretBlinkMs(); |
879 if (caret_blink_ms != 0) { | 879 if (caret_blink_ms != 0) { |
880 cursor_repaint_timer_.Start(FROM_HERE, | 880 cursor_repaint_timer_.Start(FROM_HERE, |
881 base::TimeDelta::FromMilliseconds(caret_blink_ms), this, | 881 base::TimeDelta::FromMilliseconds(caret_blink_ms), this, |
882 &Textfield::UpdateCursor); | 882 &Textfield::UpdateCursor); |
883 } | 883 } |
884 | 884 |
885 View::OnFocus(); | 885 View::OnFocus(); |
886 SchedulePaint(); | 886 SchedulePaint(); |
887 } | 887 } |
888 | 888 |
889 void Textfield::OnBlur() { | 889 void Textfield::OnBlur() { |
890 GetRenderText()->set_focused(false); | 890 GetRenderText()->set_focused(false); |
891 GetInputMethod()->OnTextInputTypeChanged(this); | 891 GetInputMethod()->OnBlur(); |
892 cursor_repaint_timer_.Stop(); | 892 cursor_repaint_timer_.Stop(); |
893 if (cursor_visible_) { | 893 if (cursor_visible_) { |
894 cursor_visible_ = false; | 894 cursor_visible_ = false; |
895 RepaintCursor(); | 895 RepaintCursor(); |
896 } | 896 } |
897 | 897 |
898 DestroyTouchSelection(); | 898 DestroyTouchSelection(); |
899 | 899 |
900 // Border typically draws focus indicator. | 900 // Border typically draws focus indicator. |
901 SchedulePaint(); | 901 SchedulePaint(); |
(...skipping 808 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1710 const size_t length = selection_clipboard_text.length(); | 1710 const size_t length = selection_clipboard_text.length(); |
1711 range = gfx::Range(range.start() + length, range.end() + length); | 1711 range = gfx::Range(range.start() + length, range.end() + length); |
1712 } | 1712 } |
1713 model_->MoveCursorTo(gfx::SelectionModel(range, affinity)); | 1713 model_->MoveCursorTo(gfx::SelectionModel(range, affinity)); |
1714 UpdateAfterChange(true, true); | 1714 UpdateAfterChange(true, true); |
1715 OnAfterUserAction(); | 1715 OnAfterUserAction(); |
1716 } | 1716 } |
1717 } | 1717 } |
1718 | 1718 |
1719 } // namespace views | 1719 } // namespace views |
OLD | NEW |