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

Side by Side Diff: chrome/browser/chromeos/accessibility/select_to_speak_event_handler_unittest.cc

Issue 2558903002: Chrome OS select-to-speak feature not properly handling key repeat (Closed)
Patch Set: Created 4 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
« no previous file with comments | « chrome/browser/chromeos/accessibility/select_to_speak_event_handler.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "chrome/browser/chromeos/accessibility/select_to_speak_event_handler.h" 5 #include "chrome/browser/chromeos/accessibility/select_to_speak_event_handler.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "ash/shell.h" 9 #include "ash/shell.h"
10 #include "ash/test/ash_test_base.h" 10 #include "ash/test/ash_test_base.h"
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 generator_->ReleaseLeftButton(); 149 generator_->ReleaseLeftButton();
150 EXPECT_FALSE(event_capturer_.last_mouse_event()); 150 EXPECT_FALSE(event_capturer_.last_mouse_event());
151 151
152 EXPECT_TRUE(event_delegate_->CapturedAXEvent(ui::AX_EVENT_MOUSE_RELEASED)); 152 EXPECT_TRUE(event_delegate_->CapturedAXEvent(ui::AX_EVENT_MOUSE_RELEASED));
153 153
154 event_capturer_.Reset(); 154 event_capturer_.Reset();
155 generator_->ReleaseKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN); 155 generator_->ReleaseKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
156 EXPECT_FALSE(event_capturer_.last_key_event()); 156 EXPECT_FALSE(event_capturer_.last_key_event());
157 } 157 }
158 158
159 TEST_F(SelectToSpeakEventHandlerTest, RepeatSearchKey) {
160 // Holding the Search key may generate key repeat events. Make sure it's
161 // still treated as if the search key is down.
162 generator_->PressKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
163 generator_->PressKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
164
165 generator_->set_current_location(gfx::Point(100, 12));
166 generator_->PressLeftButton();
167 EXPECT_FALSE(event_capturer_.last_mouse_event());
168
169 EXPECT_TRUE(event_delegate_->CapturedAXEvent(ui::AX_EVENT_MOUSE_PRESSED));
170
171 generator_->PressKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
172 generator_->PressKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
173
174 generator_->ReleaseLeftButton();
175 EXPECT_FALSE(event_capturer_.last_mouse_event());
176
177 EXPECT_TRUE(event_delegate_->CapturedAXEvent(ui::AX_EVENT_MOUSE_RELEASED));
178
179 event_capturer_.Reset();
180 generator_->ReleaseKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
181 EXPECT_FALSE(event_capturer_.last_key_event());
182 }
183
159 TEST_F(SelectToSpeakEventHandlerTest, SearchPlusClickTwice) { 184 TEST_F(SelectToSpeakEventHandlerTest, SearchPlusClickTwice) {
160 // Same as SearchPlusClick, above, but test that the user can keep 185 // Same as SearchPlusClick, above, but test that the user can keep
161 // holding down Search and click again. 186 // holding down Search and click again.
162 187
163 generator_->PressKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN); 188 generator_->PressKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
164 ASSERT_TRUE(event_capturer_.last_key_event()); 189 ASSERT_TRUE(event_capturer_.last_key_event());
165 EXPECT_FALSE(event_capturer_.last_key_event()->handled()); 190 EXPECT_FALSE(event_capturer_.last_key_event()->handled());
166 191
167 generator_->set_current_location(gfx::Point(100, 12)); 192 generator_->set_current_location(gfx::Point(100, 12));
168 generator_->PressLeftButton(); 193 generator_->PressLeftButton();
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
243 event_capturer_.Reset(); 268 event_capturer_.Reset();
244 generator_->ReleaseKey(ui::VKEY_I, ui::EF_COMMAND_DOWN); 269 generator_->ReleaseKey(ui::VKEY_I, ui::EF_COMMAND_DOWN);
245 ASSERT_TRUE(event_capturer_.last_key_event()); 270 ASSERT_TRUE(event_capturer_.last_key_event());
246 EXPECT_FALSE(event_capturer_.last_key_event()->handled()); 271 EXPECT_FALSE(event_capturer_.last_key_event()->handled());
247 272
248 event_capturer_.Reset(); 273 event_capturer_.Reset();
249 generator_->ReleaseKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN); 274 generator_->ReleaseKey(ui::VKEY_LWIN, ui::EF_COMMAND_DOWN);
250 ASSERT_TRUE(event_capturer_.last_key_event()); 275 ASSERT_TRUE(event_capturer_.last_key_event());
251 EXPECT_FALSE(event_capturer_.last_key_event()->handled()); 276 EXPECT_FALSE(event_capturer_.last_key_event()->handled());
252 } 277 }
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/accessibility/select_to_speak_event_handler.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698