| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef UI_BASE_IME_LINUX_TEXT_EDIT_COMMAND_AURALINUX_H_ | 5 #ifndef UI_BASE_IME_LINUX_TEXT_EDIT_COMMAND_AURALINUX_H_ |
| 6 #define UI_BASE_IME_LINUX_TEXT_EDIT_COMMAND_AURALINUX_H_ | 6 #define UI_BASE_IME_LINUX_TEXT_EDIT_COMMAND_AURALINUX_H_ |
| 7 | 7 |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "ui/base/ime/ui_base_ime_export.h" | 10 #include "ui/base/ime/ui_base_ime_export.h" |
| 11 | 11 |
| 12 namespace ui { | 12 namespace ui { |
| 13 | 13 |
| 14 enum class TextEditCommand; |
| 15 |
| 14 // Represents a command that performs a specific operation on text. | 16 // Represents a command that performs a specific operation on text. |
| 15 // Copy and assignment are explicitly allowed; these objects live in vectors. | 17 // Copy and assignment are explicitly allowed; these objects live in vectors. |
| 16 class UI_BASE_IME_EXPORT TextEditCommandAuraLinux { | 18 class UI_BASE_IME_EXPORT TextEditCommandAuraLinux { |
| 17 public: | 19 public: |
| 18 enum CommandId { | 20 TextEditCommandAuraLinux(TextEditCommand command, const std::string& argument) |
| 19 COPY, | 21 : command_(command), argument_(argument) {} |
| 20 CUT, | |
| 21 DELETE_BACKWARD, | |
| 22 DELETE_FORWARD, | |
| 23 DELETE_TO_BEGINNING_OF_LINE, | |
| 24 DELETE_TO_BEGINNING_OF_PARAGRAPH, | |
| 25 DELETE_TO_END_OF_LINE, | |
| 26 DELETE_TO_END_OF_PARAGRAPH, | |
| 27 DELETE_WORD_BACKWARD, | |
| 28 DELETE_WORD_FORWARD, | |
| 29 INSERT_TEXT, | |
| 30 MOVE_BACKWARD, | |
| 31 MOVE_DOWN, | |
| 32 MOVE_FORWARD, | |
| 33 MOVE_LEFT, | |
| 34 MOVE_PAGE_DOWN, | |
| 35 MOVE_PAGE_UP, | |
| 36 MOVE_RIGHT, | |
| 37 MOVE_TO_BEGINNING_OF_DOCUMENT, | |
| 38 MOVE_TO_BEGINNING_OF_LINE, | |
| 39 MOVE_TO_BEGINNING_OF_PARAGRAPH, | |
| 40 MOVE_TO_END_OF_DOCUMENT, | |
| 41 MOVE_TO_END_OF_LINE, | |
| 42 MOVE_TO_END_OF_PARAGRAPH, | |
| 43 MOVE_UP, | |
| 44 MOVE_WORD_BACKWARD, | |
| 45 MOVE_WORD_FORWARD, | |
| 46 MOVE_WORD_LEFT, | |
| 47 MOVE_WORD_RIGHT, | |
| 48 PASTE, | |
| 49 SELECT_ALL, | |
| 50 SET_MARK, | |
| 51 UNSELECT, | |
| 52 INVALID_COMMAND | |
| 53 }; | |
| 54 | 22 |
| 55 TextEditCommandAuraLinux(CommandId command_id, | 23 TextEditCommand command() const { return command_; } |
| 56 const std::string& argument, | |
| 57 bool extend_selection) | |
| 58 : command_id_(command_id), | |
| 59 argument_(argument), | |
| 60 extend_selection_(extend_selection) {} | |
| 61 | |
| 62 CommandId command_id() const { return command_id_; } | |
| 63 const std::string& argument() const { return argument_; } | 24 const std::string& argument() const { return argument_; } |
| 64 bool extend_selection() const { return extend_selection_; } | |
| 65 | 25 |
| 66 // We communicate these commands back to blink with a string representation. | 26 // We communicate these commands back to blink with a string representation. |
| 67 // This will combine the base command name with "AndModifySelection" if we | |
| 68 // have |extend_selection_| set. | |
| 69 std::string GetCommandString() const; | 27 std::string GetCommandString() const; |
| 70 | 28 |
| 71 private: | 29 private: |
| 72 CommandId command_id_; | 30 TextEditCommand command_; |
| 73 | 31 |
| 32 // The text for TextEditCommand::INSERT_TEXT; otherwise empty and unused. |
| 74 std::string argument_; | 33 std::string argument_; |
| 75 | |
| 76 // In addition to executing the command, modify the selection. | |
| 77 bool extend_selection_; | |
| 78 }; | 34 }; |
| 79 | 35 |
| 80 } // namespace ui | 36 } // namespace ui |
| 81 | 37 |
| 82 #endif // UI_BASE_IME_LINUX_TEXT_EDIT_COMMAND_AURALINUX_H_ | 38 #endif // UI_BASE_IME_LINUX_TEXT_EDIT_COMMAND_AURALINUX_H_ |
| OLD | NEW |