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

Side by Side Diff: ash/sticky_keys/sticky_keys_controller.cc

Issue 118543002: Move sticky keys files to their own directory and rename to StickyKeysController. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: update ash.gyp Created 7 years 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ash/sticky_keys/sticky_keys_controller.h ('k') | ash/sticky_keys/sticky_keys_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 #include "ash/wm/sticky_keys.h" 5 #include "ash/sticky_keys/sticky_keys_controller.h"
6 6
7 #if defined(USE_X11) 7 #if defined(USE_X11)
8 #include <X11/extensions/XInput2.h> 8 #include <X11/extensions/XInput2.h>
9 #include <X11/Xlib.h> 9 #include <X11/Xlib.h>
10 #undef RootWindow 10 #undef RootWindow
11 #endif 11 #endif
12 12
13 #include "base/basictypes.h" 13 #include "base/basictypes.h"
14 #include "base/debug/stack_trace.h" 14 #include "base/debug/stack_trace.h"
15 #include "ui/aura/root_window.h" 15 #include "ui/aura/root_window.h"
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 aura::Window* target) { 81 aura::Window* target) {
82 DCHECK(target); 82 DCHECK(target);
83 target->GetDispatcher()->AsRootWindowHostDelegate() 83 target->GetDispatcher()->AsRootWindowHostDelegate()
84 ->OnHostScrollEvent(event); 84 ->OnHostScrollEvent(event);
85 } 85 }
86 86
87 } // namespace 87 } // namespace
88 88
89 /////////////////////////////////////////////////////////////////////////////// 89 ///////////////////////////////////////////////////////////////////////////////
90 // StickyKeys 90 // StickyKeys
91 StickyKeys::StickyKeys() 91 StickyKeysController::StickyKeysController()
92 : enabled_(false), 92 : enabled_(false),
93 shift_sticky_key_( 93 shift_sticky_key_(
94 new StickyKeysHandler(ui::EF_SHIFT_DOWN, 94 new StickyKeysHandler(ui::EF_SHIFT_DOWN,
95 new StickyKeysHandlerDelegateImpl())), 95 new StickyKeysHandlerDelegateImpl())),
96 alt_sticky_key_( 96 alt_sticky_key_(
97 new StickyKeysHandler(ui::EF_ALT_DOWN, 97 new StickyKeysHandler(ui::EF_ALT_DOWN,
98 new StickyKeysHandlerDelegateImpl())), 98 new StickyKeysHandlerDelegateImpl())),
99 ctrl_sticky_key_( 99 ctrl_sticky_key_(
100 new StickyKeysHandler(ui::EF_CONTROL_DOWN, 100 new StickyKeysHandler(ui::EF_CONTROL_DOWN,
101 new StickyKeysHandlerDelegateImpl())) { 101 new StickyKeysHandlerDelegateImpl())) {
102 } 102 }
103 103
104 StickyKeys::~StickyKeys() { 104 StickyKeysController::~StickyKeysController() {
105 } 105 }
106 106
107 void StickyKeys::Enable(bool enabled) { 107 void StickyKeysController::Enable(bool enabled) {
108 if (enabled_ != enabled) { 108 if (enabled_ != enabled) {
109 enabled_ = enabled; 109 enabled_ = enabled;
110 110
111 // Reset key handlers when activating sticky keys to ensure all 111 // Reset key handlers when activating sticky keys to ensure all
112 // the handlers' states are reset. 112 // the handlers' states are reset.
113 if (enabled_) { 113 if (enabled_) {
114 shift_sticky_key_.reset( 114 shift_sticky_key_.reset(
115 new StickyKeysHandler(ui::EF_SHIFT_DOWN, 115 new StickyKeysHandler(ui::EF_SHIFT_DOWN,
116 new StickyKeysHandlerDelegateImpl())); 116 new StickyKeysHandlerDelegateImpl()));
117 alt_sticky_key_.reset( 117 alt_sticky_key_.reset(
118 new StickyKeysHandler(ui::EF_ALT_DOWN, 118 new StickyKeysHandler(ui::EF_ALT_DOWN,
119 new StickyKeysHandlerDelegateImpl())); 119 new StickyKeysHandlerDelegateImpl()));
120 ctrl_sticky_key_.reset( 120 ctrl_sticky_key_.reset(
121 new StickyKeysHandler(ui::EF_CONTROL_DOWN, 121 new StickyKeysHandler(ui::EF_CONTROL_DOWN,
122 new StickyKeysHandlerDelegateImpl())); 122 new StickyKeysHandlerDelegateImpl()));
123 } 123 }
124 } 124 }
125 } 125 }
126 126
127 bool StickyKeys::HandleKeyEvent(ui::KeyEvent* event) { 127 bool StickyKeysController::HandleKeyEvent(ui::KeyEvent* event) {
128 return shift_sticky_key_->HandleKeyEvent(event) || 128 return shift_sticky_key_->HandleKeyEvent(event) ||
129 alt_sticky_key_->HandleKeyEvent(event) || 129 alt_sticky_key_->HandleKeyEvent(event) ||
130 ctrl_sticky_key_->HandleKeyEvent(event); 130 ctrl_sticky_key_->HandleKeyEvent(event);
131 return ctrl_sticky_key_->HandleKeyEvent(event); 131 return ctrl_sticky_key_->HandleKeyEvent(event);
132 } 132 }
133 133
134 bool StickyKeys::HandleMouseEvent(ui::MouseEvent* event) { 134 bool StickyKeysController::HandleMouseEvent(ui::MouseEvent* event) {
135 return shift_sticky_key_->HandleMouseEvent(event) || 135 return shift_sticky_key_->HandleMouseEvent(event) ||
136 alt_sticky_key_->HandleMouseEvent(event) || 136 alt_sticky_key_->HandleMouseEvent(event) ||
137 ctrl_sticky_key_->HandleMouseEvent(event); 137 ctrl_sticky_key_->HandleMouseEvent(event);
138 } 138 }
139 139
140 bool StickyKeys::HandleScrollEvent(ui::ScrollEvent* event) { 140 bool StickyKeysController::HandleScrollEvent(ui::ScrollEvent* event) {
141 return shift_sticky_key_->HandleScrollEvent(event) || 141 return shift_sticky_key_->HandleScrollEvent(event) ||
142 alt_sticky_key_->HandleScrollEvent(event) || 142 alt_sticky_key_->HandleScrollEvent(event) ||
143 ctrl_sticky_key_->HandleScrollEvent(event); 143 ctrl_sticky_key_->HandleScrollEvent(event);
144 } 144 }
145 145
146 void StickyKeys::OnKeyEvent(ui::KeyEvent* event) { 146 void StickyKeysController::OnKeyEvent(ui::KeyEvent* event) {
147 // Do not consume a translated key event which is generated by an IME. 147 // Do not consume a translated key event which is generated by an IME.
148 if (event->type() == ui::ET_TRANSLATED_KEY_PRESS || 148 if (event->type() == ui::ET_TRANSLATED_KEY_PRESS ||
149 event->type() == ui::ET_TRANSLATED_KEY_RELEASE) { 149 event->type() == ui::ET_TRANSLATED_KEY_RELEASE) {
150 return; 150 return;
151 } 151 }
152 152
153 if (enabled_ && HandleKeyEvent(event)) 153 if (enabled_ && HandleKeyEvent(event))
154 event->StopPropagation(); 154 event->StopPropagation();
155 } 155 }
156 156
157 void StickyKeys::OnMouseEvent(ui::MouseEvent* event) { 157 void StickyKeysController::OnMouseEvent(ui::MouseEvent* event) {
158 if (enabled_ && HandleMouseEvent(event)) 158 if (enabled_ && HandleMouseEvent(event))
159 event->StopPropagation(); 159 event->StopPropagation();
160 } 160 }
161 161
162 void StickyKeys::OnScrollEvent(ui::ScrollEvent* event) { 162 void StickyKeysController::OnScrollEvent(ui::ScrollEvent* event) {
163 if (enabled_ && HandleScrollEvent(event)) 163 if (enabled_ && HandleScrollEvent(event))
164 event->StopPropagation(); 164 event->StopPropagation();
165 } 165 }
166 166
167 /////////////////////////////////////////////////////////////////////////////// 167 ///////////////////////////////////////////////////////////////////////////////
168 // StickyKeysHandler 168 // StickyKeysHandler
169 StickyKeysHandler::StickyKeysHandler(ui::EventFlags target_modifier_flag, 169 StickyKeysHandler::StickyKeysHandler(ui::EventFlags target_modifier_flag,
170 StickyKeysHandlerDelegate* delegate) 170 StickyKeysHandlerDelegate* delegate)
171 : modifier_flag_(target_modifier_flag), 171 : modifier_flag_(target_modifier_flag),
172 current_state_(DISABLED), 172 current_state_(DISABLED),
(...skipping 263 matching lines...) Expand 10 before | Expand all | Expand 10 after
436 &xievent->mods.effective)); 436 &xievent->mods.effective));
437 } 437 }
438 } 438 }
439 #elif defined(USE_OZONE) 439 #elif defined(USE_OZONE)
440 NOTIMPLEMENTED() << "Modifier key is not handled"; 440 NOTIMPLEMENTED() << "Modifier key is not handled";
441 #endif 441 #endif
442 event->set_flags(event->flags() | modifier_flag_); 442 event->set_flags(event->flags() | modifier_flag_);
443 } 443 }
444 444
445 } // namespace ash 445 } // namespace ash
OLDNEW
« no previous file with comments | « ash/sticky_keys/sticky_keys_controller.h ('k') | ash/sticky_keys/sticky_keys_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698