diff options
author | yusukes@google.com <yusukes@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-27 00:57:57 +0000 |
---|---|---|
committer | yusukes@google.com <yusukes@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-27 00:57:57 +0000 |
commit | 42f06f9ca2fe07018a88994569f87373a7c6c578 (patch) | |
tree | 526028affef80bcaa4a9b0771f27ac969e0b8c47 /ash/shell.h | |
parent | 706cfde8e0b70a58ecb60d3f6eb918295b188234 (diff) | |
download | chromium_src-42f06f9ca2fe07018a88994569f87373a7c6c578.zip chromium_src-42f06f9ca2fe07018a88994569f87373a7c6c578.tar.gz chromium_src-42f06f9ca2fe07018a88994569f87373a7c6c578.tar.bz2 |
Automatically remap Command key on an Apple keyboard to Control [part 1 of 2 - Ash part]
Add key_rewriter_event_filter.h which allows its delegate to rewrite or delete an aura::KeyEvent. The new interface will be used for implementing the following three features:
* crosbug.com/25097: Remap keys on external keyboards (R19)
* crosbug.com/27167: Consider adding a way to send function keys to web pages (R20)
* crbug.com/115112: Move modifier remapping code from X to Chrome (M20)
Part 2 of 2: http://codereview.chromium.org/9854025/
BUG=chromium-os:25097
BUG=chromium-os:27167
BUG=115112
TEST=try
Review URL: https://chromiumcodereview.appspot.com/9838010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@129076 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/shell.h')
-rw-r--r-- | ash/shell.h | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/ash/shell.h b/ash/shell.h index 10f972a..2c864ad 100644 --- a/ash/shell.h +++ b/ash/shell.h @@ -64,6 +64,7 @@ class DragDropController; class EventClientImpl; class FocusCycler; class InputMethodEventFilter; +class KeyRewriterEventFilter; class MonitorController; class PartialScreenshotEventFilter; class ResizeShadowController; @@ -178,6 +179,9 @@ class ASH_EXPORT Shell { internal::TooltipController* tooltip_controller() { return tooltip_controller_.get(); } + internal::KeyRewriterEventFilter* key_rewriter_filter() { + return key_rewriter_filter_.get(); + } internal::PartialScreenshotEventFilter* partial_screenshot_filter() { return partial_screenshot_filter_.get(); } @@ -296,8 +300,8 @@ class ASH_EXPORT Shell { scoped_ptr<internal::EventClientImpl> event_client_; scoped_ptr<internal::MonitorController> monitor_controller_; - // An event filter that pre-handles all key events to send them to an IME. - scoped_ptr<internal::InputMethodEventFilter> input_method_filter_; + // An event filter that rewrites or drops a key event. + scoped_ptr<internal::KeyRewriterEventFilter> key_rewriter_filter_; // An event filter that pre-handles key events while the partial // screenshot UI is active. @@ -308,6 +312,9 @@ class ASH_EXPORT Shell { scoped_ptr<internal::AcceleratorFilter> accelerator_filter_; #endif + // An event filter that pre-handles all key events to send them to an IME. + scoped_ptr<internal::InputMethodEventFilter> input_method_filter_; + // The shelf for managing the launcher and the status widget in non-compact // mode. Shell does not own the shelf. Instead, it is owned by container of // the status area. |