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

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

Issue 10412009: Enable disabled omnibox tests on aura (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 7 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/views/controls/textfield/native_textfield_views.cc
diff --git a/ui/views/controls/textfield/native_textfield_views.cc b/ui/views/controls/textfield/native_textfield_views.cc
index c56f876ee3d7723d83a1bc7f049a6010e7e306be..0829d0c4bd30a5520a98b00d0d74fe0d8c003475 100644
--- a/ui/views/controls/textfield/native_textfield_views.cc
+++ b/ui/views/controls/textfield/native_textfield_views.cc
@@ -855,14 +855,16 @@ bool NativeTextfieldViews::HandleKeyEvent(const KeyEvent& key_event) {
OnBeforeUserAction();
bool editable = !textfield_->read_only();
bool readable = !textfield_->IsObscured();
- bool selection = key_event.IsShiftDown();
+ bool shift = key_event.IsShiftDown();
bool control = key_event.IsControlDown();
bool text_changed = false;
bool cursor_changed = false;
switch (key_code) {
case ui::VKEY_Z:
- if (control && editable)
+ if (control && !shift && editable)
cursor_changed = text_changed = model_->Undo();
+ else if (control && shift && editable)
+ cursor_changed = text_changed = model_->Redo();
break;
case ui::VKEY_Y:
if (control && editable)
@@ -891,16 +893,16 @@ bool NativeTextfieldViews::HandleKeyEvent(const KeyEvent& key_event) {
model_->MoveCursor(
control ? gfx::WORD_BREAK : gfx::CHARACTER_BREAK,
(key_code == ui::VKEY_RIGHT) ? gfx::CURSOR_RIGHT : gfx::CURSOR_LEFT,
- selection);
+ shift);
cursor_changed = true;
break;
case ui::VKEY_END:
case ui::VKEY_HOME:
if ((key_code == ui::VKEY_HOME) ==
(GetRenderText()->GetTextDirection() == base::i18n::RIGHT_TO_LEFT))
- model_->MoveCursor(gfx::LINE_BREAK, gfx::CURSOR_RIGHT, selection);
+ model_->MoveCursor(gfx::LINE_BREAK, gfx::CURSOR_RIGHT, shift);
else
- model_->MoveCursor(gfx::LINE_BREAK, gfx::CURSOR_LEFT, selection);
+ model_->MoveCursor(gfx::LINE_BREAK, gfx::CURSOR_LEFT, shift);
cursor_changed = true;
break;
case ui::VKEY_BACK:
@@ -910,7 +912,7 @@ bool NativeTextfieldViews::HandleKeyEvent(const KeyEvent& key_event) {
if (!model_->HasSelection()) {
gfx::VisualCursorDirection direction = (key_code == ui::VKEY_DELETE) ?
gfx::CURSOR_RIGHT : gfx::CURSOR_LEFT;
- if (selection && control) {
+ if (shift && control) {
// If both shift and control are pressed, then erase up to the
// beginning/end of the buffer in ChromeOS. In windows, do nothing.
#if defined(OS_WIN)

Powered by Google App Engine
This is Rietveld 408576698