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

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

Issue 2034623002: Unify ui::TextEditCommand and ui::TextEditCommandAuraLinux::CommandId. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@refactor7_correct_text_edit_command_aura_typo
Patch Set: Created 4 years, 6 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
« ui/events/text_edit_commands.h ('K') | « ui/events/text_edit_commands.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/views/controls/textfield/textfield.cc
diff --git a/ui/views/controls/textfield/textfield.cc b/ui/views/controls/textfield/textfield.cc
index 55f712a9abc259980c6a5f136bf543c15eb82e3b..9999749323e119707ca2a2de1f2e2d5b227fb9ed 100644
--- a/ui/views/controls/textfield/textfield.cc
+++ b/ui/views/controls/textfield/textfield.cc
@@ -167,104 +167,6 @@ ui::TextEditCommand GetCommandForKeyEvent(const ui::KeyEvent& event) {
}
}
-#if defined(OS_LINUX) && !defined(OS_CHROMEOS)
-// Convert a custom text edit |command| to the equivalent views command ID.
-ui::TextEditCommand GetViewsCommand(const ui::TextEditCommandAuraLinux& command,
- bool rtl) {
- const bool select = command.extend_selection();
- switch (command.command_id()) {
- case ui::TextEditCommandAuraLinux::COPY:
- return ui::TextEditCommand::COPY;
- case ui::TextEditCommandAuraLinux::CUT:
- return ui::TextEditCommand::CUT;
- case ui::TextEditCommandAuraLinux::DELETE_BACKWARD:
- return ui::TextEditCommand::DELETE_BACKWARD;
- case ui::TextEditCommandAuraLinux::DELETE_FORWARD:
- return ui::TextEditCommand::DELETE_FORWARD;
- case ui::TextEditCommandAuraLinux::DELETE_TO_BEGINNING_OF_LINE:
- case ui::TextEditCommandAuraLinux::DELETE_TO_BEGINNING_OF_PARAGRAPH:
- return ui::TextEditCommand::DELETE_TO_BEGINNING_OF_LINE;
- case ui::TextEditCommandAuraLinux::DELETE_TO_END_OF_LINE:
- case ui::TextEditCommandAuraLinux::DELETE_TO_END_OF_PARAGRAPH:
- return ui::TextEditCommand::DELETE_TO_END_OF_LINE;
- case ui::TextEditCommandAuraLinux::DELETE_WORD_BACKWARD:
- return ui::TextEditCommand::DELETE_WORD_BACKWARD;
- case ui::TextEditCommandAuraLinux::DELETE_WORD_FORWARD:
- return ui::TextEditCommand::DELETE_WORD_FORWARD;
- case ui::TextEditCommandAuraLinux::INSERT_TEXT:
- return ui::TextEditCommand::INVALID_COMMAND;
- case ui::TextEditCommandAuraLinux::MOVE_BACKWARD:
- if (rtl)
- return select ? ui::TextEditCommand::MOVE_RIGHT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_RIGHT;
- return select ? ui::TextEditCommand::MOVE_LEFT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_LEFT;
- case ui::TextEditCommandAuraLinux::MOVE_DOWN:
- return ui::TextEditCommand::MOVE_DOWN;
- case ui::TextEditCommandAuraLinux::MOVE_FORWARD:
- if (rtl)
- return select ? ui::TextEditCommand::MOVE_LEFT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_LEFT;
- return select ? ui::TextEditCommand::MOVE_RIGHT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_RIGHT;
- case ui::TextEditCommandAuraLinux::MOVE_LEFT:
- return select ? ui::TextEditCommand::MOVE_LEFT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_LEFT;
- case ui::TextEditCommandAuraLinux::MOVE_PAGE_DOWN:
- case ui::TextEditCommandAuraLinux::MOVE_PAGE_UP:
- return ui::TextEditCommand::INVALID_COMMAND;
- case ui::TextEditCommandAuraLinux::MOVE_RIGHT:
- return select ? ui::TextEditCommand::MOVE_RIGHT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_RIGHT;
- case ui::TextEditCommandAuraLinux::MOVE_TO_BEGINNING_OF_DOCUMENT:
- case ui::TextEditCommandAuraLinux::MOVE_TO_BEGINNING_OF_LINE:
- case ui::TextEditCommandAuraLinux::MOVE_TO_BEGINNING_OF_PARAGRAPH:
- return select ? ui::TextEditCommand::
- MOVE_TO_BEGINNING_OF_LINE_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_TO_BEGINNING_OF_LINE;
- case ui::TextEditCommandAuraLinux::MOVE_TO_END_OF_DOCUMENT:
- case ui::TextEditCommandAuraLinux::MOVE_TO_END_OF_LINE:
- case ui::TextEditCommandAuraLinux::MOVE_TO_END_OF_PARAGRAPH:
- return select
- ? ui::TextEditCommand::MOVE_TO_END_OF_LINE_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_TO_END_OF_LINE;
- case ui::TextEditCommandAuraLinux::MOVE_UP:
- return ui::TextEditCommand::MOVE_UP;
- case ui::TextEditCommandAuraLinux::MOVE_WORD_BACKWARD:
- if (rtl) {
- return select
- ? ui::TextEditCommand::MOVE_WORD_RIGHT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_WORD_RIGHT;
- }
- return select ? ui::TextEditCommand::MOVE_WORD_LEFT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_WORD_LEFT;
- case ui::TextEditCommandAuraLinux::MOVE_WORD_FORWARD:
- if (rtl) {
- return select ? ui::TextEditCommand::MOVE_WORD_LEFT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_WORD_LEFT;
- }
- return select ? ui::TextEditCommand::MOVE_WORD_RIGHT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_WORD_RIGHT;
- case ui::TextEditCommandAuraLinux::MOVE_WORD_LEFT:
- return select ? ui::TextEditCommand::MOVE_WORD_LEFT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_WORD_LEFT;
- case ui::TextEditCommandAuraLinux::MOVE_WORD_RIGHT:
- return select ? ui::TextEditCommand::MOVE_WORD_RIGHT_AND_MODIFY_SELECTION
- : ui::TextEditCommand::MOVE_WORD_RIGHT;
- case ui::TextEditCommandAuraLinux::PASTE:
- return ui::TextEditCommand::PASTE;
- case ui::TextEditCommandAuraLinux::SELECT_ALL:
- return ui::TextEditCommand::SELECT_ALL;
- case ui::TextEditCommandAuraLinux::SET_MARK:
- case ui::TextEditCommandAuraLinux::UNSELECT:
- case ui::TextEditCommandAuraLinux::INVALID_COMMAND:
- return ui::TextEditCommand::INVALID_COMMAND;
- }
- NOTREACHED();
- return ui::TextEditCommand::INVALID_COMMAND;
-}
-#endif
-
const gfx::FontList& GetDefaultFontList() {
ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
return rb.GetFontListWithDelta(ui::kLabelFontSizeDelta);
@@ -757,9 +659,8 @@ bool Textfield::OnKeyPressed(const ui::KeyEvent& event) {
ui::GetTextEditKeyBindingsDelegate();
std::vector<ui::TextEditCommandAuraLinux> commands;
if (!handled && delegate && delegate->MatchEvent(event, &commands)) {
- const bool rtl = GetTextDirection() == base::i18n::RIGHT_TO_LEFT;
for (size_t i = 0; i < commands.size(); ++i) {
- const ui::TextEditCommand command = GetViewsCommand(commands[i], rtl);
+ const ui::TextEditCommand command = commands[i].command();
msw 2016/06/10 01:33:23 optional nit: inline this.
karandeepb 2016/06/15 08:13:34 Done.
if (IsEditCommandEnabled(command)) {
ExecuteEditCommand(command);
handled = true;
@@ -896,9 +797,8 @@ bool Textfield::SkipDefaultKeyEventProcessing(const ui::KeyEvent& event) {
ui::GetTextEditKeyBindingsDelegate();
std::vector<ui::TextEditCommandAuraLinux> commands;
if (delegate && delegate->MatchEvent(event, &commands)) {
- const bool rtl = GetTextDirection() == base::i18n::RIGHT_TO_LEFT;
for (size_t i = 0; i < commands.size(); ++i)
- if (IsEditCommandEnabled(GetViewsCommand(commands[i], rtl)))
+ if (IsEditCommandEnabled(commands[i].command()))
return true;
}
#endif
@@ -1554,6 +1454,8 @@ bool Textfield::IsEditCommandEnabled(ui::TextEditCommand command) const {
case ui::TextEditCommand::DELETE_TO_END_OF_LINE:
case ui::TextEditCommand::DELETE_WORD_BACKWARD:
case ui::TextEditCommand::DELETE_WORD_FORWARD:
+ case ui::TextEditCommand::DELETE_TO_BEGINNING_OF_PARAGRAPH:
+ case ui::TextEditCommand::DELETE_TO_END_OF_PARAGRAPH:
return editable;
case ui::TextEditCommand::MOVE_LEFT:
case ui::TextEditCommand::MOVE_LEFT_AND_MODIFY_SELECTION:
@@ -1567,9 +1469,36 @@ bool Textfield::IsEditCommandEnabled(ui::TextEditCommand command) const {
case ui::TextEditCommand::MOVE_TO_BEGINNING_OF_LINE_AND_MODIFY_SELECTION:
case ui::TextEditCommand::MOVE_TO_END_OF_LINE:
case ui::TextEditCommand::MOVE_TO_END_OF_LINE_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_FORWARD:
+ case ui::TextEditCommand::MOVE_BACKWARD:
+ case ui::TextEditCommand::MOVE_TO_BEGINNING_OF_DOCUMENT:
+ case ui::TextEditCommand::MOVE_TO_BEGINNING_OF_PARAGRAPH:
+ case ui::TextEditCommand::MOVE_TO_END_OF_DOCUMENT:
+ case ui::TextEditCommand::MOVE_TO_END_OF_PARAGRAPH:
+ case ui::TextEditCommand::MOVE_WORD_BACKWARD:
+ case ui::TextEditCommand::MOVE_WORD_FORWARD:
+ case ui::TextEditCommand::MOVE_BACKWARD_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_FORWARD_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::
+ MOVE_TO_BEGINNING_OF_DOCUMENT_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::
+ MOVE_TO_BEGINNING_OF_PARAGRAPH_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_TO_END_OF_DOCUMENT_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_TO_END_OF_PARAGRAPH_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_WORD_BACKWARD_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_WORD_FORWARD_AND_MODIFY_SELECTION:
return true;
case ui::TextEditCommand::MOVE_UP:
case ui::TextEditCommand::MOVE_DOWN:
+ case ui::TextEditCommand::MOVE_UP_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_DOWN_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::INSERT_TEXT:
+ case ui::TextEditCommand::MOVE_PAGE_DOWN:
+ case ui::TextEditCommand::MOVE_PAGE_UP:
+ case ui::TextEditCommand::MOVE_PAGE_DOWN_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_PAGE_UP_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::SET_MARK:
+ case ui::TextEditCommand::UNSELECT:
return false;
}
NOTREACHED();
@@ -1617,10 +1546,10 @@ void Textfield::ExecuteEditCommand(ui::TextEditCommand command) {
switch (command) {
case ui::TextEditCommand::DELETE_WORD_BACKWARD:
msw 2016/06/10 01:33:23 nit: reorder these to something a bit neater.
karandeepb 2016/06/15 08:13:34 Done.
case ui::TextEditCommand::DELETE_TO_BEGINNING_OF_LINE:
- command = ui::TextEditCommand::DELETE_BACKWARD;
- break;
case ui::TextEditCommand::DELETE_WORD_FORWARD:
case ui::TextEditCommand::DELETE_TO_END_OF_LINE:
+ case ui::TextEditCommand::DELETE_TO_BEGINNING_OF_PARAGRAPH:
+ case ui::TextEditCommand::DELETE_TO_END_OF_PARAGRAPH:
command = ui::TextEditCommand::DELETE_FORWARD;
break;
default:
@@ -1667,10 +1596,12 @@ void Textfield::ExecuteEditCommand(ui::TextEditCommand command) {
text_changed = cursor_changed = model_->Delete();
break;
case ui::TextEditCommand::DELETE_TO_END_OF_LINE:
+ case ui::TextEditCommand::DELETE_TO_END_OF_PARAGRAPH:
model_->MoveCursor(gfx::LINE_BREAK, end, true);
text_changed = cursor_changed = model_->Delete();
break;
case ui::TextEditCommand::DELETE_TO_BEGINNING_OF_LINE:
+ case ui::TextEditCommand::DELETE_TO_BEGINNING_OF_PARAGRAPH:
model_->MoveCursor(gfx::LINE_BREAK, begin, true);
text_changed = cursor_changed = model_->Backspace();
break;
@@ -1707,19 +1638,64 @@ void Textfield::ExecuteEditCommand(ui::TextEditCommand command) {
model_->MoveCursor(gfx::WORD_BREAK, gfx::CURSOR_RIGHT, true);
break;
case ui::TextEditCommand::MOVE_TO_BEGINNING_OF_LINE:
+ case ui::TextEditCommand::MOVE_TO_BEGINNING_OF_DOCUMENT:
+ case ui::TextEditCommand::MOVE_TO_BEGINNING_OF_PARAGRAPH:
model_->MoveCursor(gfx::LINE_BREAK, begin, false);
break;
case ui::TextEditCommand::MOVE_TO_BEGINNING_OF_LINE_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::
+ MOVE_TO_BEGINNING_OF_DOCUMENT_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::
+ MOVE_TO_BEGINNING_OF_PARAGRAPH_AND_MODIFY_SELECTION:
model_->MoveCursor(gfx::LINE_BREAK, begin, true);
break;
case ui::TextEditCommand::MOVE_TO_END_OF_LINE:
+ case ui::TextEditCommand::MOVE_TO_END_OF_DOCUMENT:
+ case ui::TextEditCommand::MOVE_TO_END_OF_PARAGRAPH:
model_->MoveCursor(gfx::LINE_BREAK, end, false);
break;
case ui::TextEditCommand::MOVE_TO_END_OF_LINE_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_TO_END_OF_DOCUMENT_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_TO_END_OF_PARAGRAPH_AND_MODIFY_SELECTION:
model_->MoveCursor(gfx::LINE_BREAK, end, true);
break;
+
+ case ui::TextEditCommand::MOVE_BACKWARD:
+ model_->MoveCursor(gfx::CHARACTER_BREAK, begin, false);
+ break;
+ case ui::TextEditCommand::MOVE_FORWARD:
+ model_->MoveCursor(gfx::CHARACTER_BREAK, end, false);
+ break;
+ case ui::TextEditCommand::MOVE_WORD_BACKWARD:
+ model_->MoveCursor(gfx::WORD_BREAK, begin, false);
+ break;
+ case ui::TextEditCommand::MOVE_WORD_FORWARD:
+ model_->MoveCursor(gfx::WORD_BREAK, end, false);
+ break;
+ case ui::TextEditCommand::MOVE_BACKWARD_AND_MODIFY_SELECTION:
msw 2016/06/10 01:33:23 ditto nit: keep pairing ordering or follow some ot
karandeepb 2016/06/15 08:13:34 Done.
+ model_->MoveCursor(gfx::CHARACTER_BREAK, begin, true);
+ break;
+ case ui::TextEditCommand::MOVE_FORWARD_AND_MODIFY_SELECTION:
+ model_->MoveCursor(gfx::CHARACTER_BREAK, end, true);
+ break;
+ case ui::TextEditCommand::MOVE_WORD_BACKWARD_AND_MODIFY_SELECTION:
+ model_->MoveCursor(gfx::WORD_BREAK, begin, true);
+ break;
+ case ui::TextEditCommand::MOVE_WORD_FORWARD_AND_MODIFY_SELECTION:
+ model_->MoveCursor(gfx::WORD_BREAK, end, true);
+ break;
+
case ui::TextEditCommand::MOVE_UP:
case ui::TextEditCommand::MOVE_DOWN:
+ case ui::TextEditCommand::MOVE_UP_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_DOWN_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::INSERT_TEXT:
+ case ui::TextEditCommand::MOVE_PAGE_DOWN:
+ case ui::TextEditCommand::MOVE_PAGE_UP:
+ case ui::TextEditCommand::MOVE_PAGE_DOWN_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::MOVE_PAGE_UP_AND_MODIFY_SELECTION:
+ case ui::TextEditCommand::SET_MARK:
+ case ui::TextEditCommand::UNSELECT:
case ui::TextEditCommand::INVALID_COMMAND:
NOTREACHED();
break;
« ui/events/text_edit_commands.h ('K') | « ui/events/text_edit_commands.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698