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

Unified Diff: views/controls/textfield/native_textfield_views.cc

Issue 7458014: Implement Uniscribe RenderText for Windows. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address nits. Created 9 years, 4 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: views/controls/textfield/native_textfield_views.cc
diff --git a/views/controls/textfield/native_textfield_views.cc b/views/controls/textfield/native_textfield_views.cc
index 810bad1d3c4c715f107cae0632cf7b5812960e83..c14463ef52fee75ca50b9b537a4449f0f017b11a 100644
--- a/views/controls/textfield/native_textfield_views.cc
+++ b/views/controls/textfield/native_textfield_views.cc
@@ -861,11 +861,18 @@ bool NativeTextfieldViews::HandleKeyEvent(const KeyEvent& key_event) {
cursor_changed = true;
break;
case ui::VKEY_END:
- model_->MoveCursorRight(gfx::LINE_BREAK, selection);
- cursor_changed = true;
- break;
case ui::VKEY_HOME:
- model_->MoveCursorLeft(gfx::LINE_BREAK, selection);
+ // TODO(msw): Implement RenderText::GetTextDirection for platforms.
+ // Windows string directionality is determined by UI directionality.
+ // Linux/ChromeOS uses the first strong directionality character.
+#if defined(OS_WIN)
+ if (base::i18n::IsRTL() == (key_code == ui::VKEY_HOME))
+#else
+ if (key_code == ui::VKEY_END)
+#endif
+ model_->MoveCursorRight(gfx::LINE_BREAK, selection);
+ else
+ model_->MoveCursorLeft(gfx::LINE_BREAK, selection);
cursor_changed = true;
break;
case ui::VKEY_BACK:
@@ -908,7 +915,7 @@ bool NativeTextfieldViews::HandleKeyEvent(const KeyEvent& key_event) {
cursor_changed = text_changed = model_->Delete();
break;
case ui::VKEY_INSERT:
- GetRenderText()->toggle_insert_mode();
+ GetRenderText()->ToggleInsertMode();
cursor_changed = true;
break;
default:

Powered by Google App Engine
This is Rietveld 408576698