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

Side by Side Diff: ui/aura/window_event_dispatcher_unittest.cc

Issue 404203003: Distinguish between keystroke and character events. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: IsCharFromNative() for Mac build Created 6 years, 5 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 unified diff | Download patch
« no previous file with comments | « ui/aura/remote_window_tree_host_win.cc ('k') | ui/aura/window_tree_host_x11.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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "ui/aura/window_event_dispatcher.h" 5 #include "ui/aura/window_event_dispatcher.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/run_loop.h" 10 #include "base/run_loop.h"
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after
339 339
340 // Prevent w3 from being deleted by the hierarchy since its delegate is owned 340 // Prevent w3 from being deleted by the hierarchy since its delegate is owned
341 // by this scope. 341 // by this scope.
342 w3->parent()->RemoveChild(w3.get()); 342 w3->parent()->RemoveChild(w3.get());
343 } 343 }
344 344
345 TEST_F(WindowEventDispatcherTest, IgnoreUnknownKeys) { 345 TEST_F(WindowEventDispatcherTest, IgnoreUnknownKeys) {
346 ConsumeKeyHandler handler; 346 ConsumeKeyHandler handler;
347 root_window()->AddPreTargetHandler(&handler); 347 root_window()->AddPreTargetHandler(&handler);
348 348
349 ui::KeyEvent unknown_event(ui::ET_KEY_PRESSED, ui::VKEY_UNKNOWN, 0, false); 349 ui::KeyEvent unknown_event(ui::ET_KEY_PRESSED, ui::VKEY_UNKNOWN, ui::EF_NONE);
350 DispatchEventUsingWindowDispatcher(&unknown_event); 350 DispatchEventUsingWindowDispatcher(&unknown_event);
351 EXPECT_FALSE(unknown_event.handled()); 351 EXPECT_FALSE(unknown_event.handled());
352 EXPECT_EQ(0, handler.num_key_events()); 352 EXPECT_EQ(0, handler.num_key_events());
353 353
354 handler.Reset(); 354 handler.Reset();
355 ui::KeyEvent known_event(ui::ET_KEY_PRESSED, ui::VKEY_A, 0, false); 355 ui::KeyEvent known_event(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE);
356 DispatchEventUsingWindowDispatcher(&known_event); 356 DispatchEventUsingWindowDispatcher(&known_event);
357 EXPECT_TRUE(known_event.handled()); 357 EXPECT_TRUE(known_event.handled());
358 EXPECT_EQ(1, handler.num_key_events()); 358 EXPECT_EQ(1, handler.num_key_events());
359 359
360 handler.Reset(); 360 handler.Reset();
361 ui::KeyEvent ime_event(ui::ET_KEY_PRESSED, ui::VKEY_UNKNOWN, 361 ui::KeyEvent ime_event(ui::ET_KEY_PRESSED, ui::VKEY_UNKNOWN,
362 ui::EF_IME_FABRICATED_KEY, false); 362 ui::EF_IME_FABRICATED_KEY);
363 DispatchEventUsingWindowDispatcher(&ime_event); 363 DispatchEventUsingWindowDispatcher(&ime_event);
364 EXPECT_TRUE(ime_event.handled()); 364 EXPECT_TRUE(ime_event.handled());
365 EXPECT_EQ(1, handler.num_key_events()); 365 EXPECT_EQ(1, handler.num_key_events());
366 366
367 handler.Reset(); 367 handler.Reset();
368 ui::KeyEvent unknown_key_with_char_event(ui::ET_KEY_PRESSED, ui::VKEY_UNKNOWN, 368 ui::KeyEvent unknown_key_with_char_event(ui::ET_KEY_PRESSED, ui::VKEY_UNKNOWN,
369 0, false); 369 ui::EF_NONE);
370 unknown_key_with_char_event.set_character(0x00e4 /* "ä" */); 370 unknown_key_with_char_event.set_character(0x00e4 /* "ä" */);
371 DispatchEventUsingWindowDispatcher(&unknown_key_with_char_event); 371 DispatchEventUsingWindowDispatcher(&unknown_key_with_char_event);
372 EXPECT_TRUE(unknown_key_with_char_event.handled()); 372 EXPECT_TRUE(unknown_key_with_char_event.handled());
373 EXPECT_EQ(1, handler.num_key_events()); 373 EXPECT_EQ(1, handler.num_key_events());
374 } 374 }
375 375
376 TEST_F(WindowEventDispatcherTest, NoDelegateWindowReceivesKeyEvents) { 376 TEST_F(WindowEventDispatcherTest, NoDelegateWindowReceivesKeyEvents) {
377 scoped_ptr<Window> w1(CreateNormalWindow(1, root_window(), NULL)); 377 scoped_ptr<Window> w1(CreateNormalWindow(1, root_window(), NULL));
378 w1->Show(); 378 w1->Show();
379 w1->Focus(); 379 w1->Focus();
380 380
381 ui::test::TestEventHandler handler; 381 ui::test::TestEventHandler handler;
382 w1->AddPreTargetHandler(&handler); 382 w1->AddPreTargetHandler(&handler);
383 ui::KeyEvent key_press(ui::ET_KEY_PRESSED, ui::VKEY_A, 0, false); 383 ui::KeyEvent key_press(ui::ET_KEY_PRESSED, ui::VKEY_A, ui::EF_NONE);
384 DispatchEventUsingWindowDispatcher(&key_press); 384 DispatchEventUsingWindowDispatcher(&key_press);
385 EXPECT_TRUE(key_press.handled()); 385 EXPECT_TRUE(key_press.handled());
386 EXPECT_EQ(1, handler.num_key_events()); 386 EXPECT_EQ(1, handler.num_key_events());
387 387
388 w1->RemovePreTargetHandler(&handler); 388 w1->RemovePreTargetHandler(&handler);
389 } 389 }
390 390
391 // Tests that touch-events that are beyond the bounds of the root-window do get 391 // Tests that touch-events that are beyond the bounds of the root-window do get
392 // propagated to the event filters correctly with the root as the target. 392 // propagated to the event filters correctly with the root as the target.
393 TEST_F(WindowEventDispatcherTest, TouchEventsOutsideBounds) { 393 TEST_F(WindowEventDispatcherTest, TouchEventsOutsideBounds) {
(...skipping 1869 matching lines...) Expand 10 before | Expand all | Expand 10 after
2263 ui::EF_LEFT_MOUSE_BUTTON); 2263 ui::EF_LEFT_MOUSE_BUTTON);
2264 DispatchEventUsingWindowDispatcher(&mouse); 2264 DispatchEventUsingWindowDispatcher(&mouse);
2265 EXPECT_TRUE(recorder_first.events().empty()); 2265 EXPECT_TRUE(recorder_first.events().empty());
2266 ASSERT_EQ(1u, recorder_second.events().size()); 2266 ASSERT_EQ(1u, recorder_second.events().size());
2267 EXPECT_EQ(ui::ET_MOUSE_PRESSED, recorder_second.events()[0]); 2267 EXPECT_EQ(ui::ET_MOUSE_PRESSED, recorder_second.events()[0]);
2268 EXPECT_EQ(event_location.ToString(), 2268 EXPECT_EQ(event_location.ToString(),
2269 recorder_second.mouse_locations()[0].ToString()); 2269 recorder_second.mouse_locations()[0].ToString());
2270 } 2270 }
2271 2271
2272 } // namespace aura 2272 } // namespace aura
OLDNEW
« no previous file with comments | « ui/aura/remote_window_tree_host_win.cc ('k') | ui/aura/window_tree_host_x11.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698