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

Side by Side Diff: ui/views/focus/focus_manager_unittest.cc

Issue 10446010: wip: Add ui::EventType parameter. Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: wip - views_unittests Created 8 years, 7 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 | Annotate | Revision Log
« no previous file with comments | « ui/views/focus/focus_manager.cc ('k') | ui/views/window/dialog_client_view.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 "base/utf_string_conversions.h" 5 #include "base/utf_string_conversions.h"
6 #include "ui/base/accelerators/accelerator.h" 6 #include "ui/base/accelerators/accelerator.h"
7 #include "ui/base/keycodes/keyboard_codes.h" 7 #include "ui/base/keycodes/keyboard_codes.h"
8 #include "ui/views/controls/button/text_button.h" 8 #include "ui/views/controls/button/text_button.h"
9 #include "ui/views/controls/textfield/textfield.h" 9 #include "ui/views/controls/textfield/textfield.h"
10 #include "ui/views/focus/accelerator_handler.h" 10 #include "ui/views/focus/accelerator_handler.h"
(...skipping 196 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 private: 207 private:
208 int accelerator_count_; // number of times that the accelerator is activated 208 int accelerator_count_; // number of times that the accelerator is activated
209 bool process_accelerator_; // return value of AcceleratorPressed 209 bool process_accelerator_; // return value of AcceleratorPressed
210 bool can_handle_accelerators_; // return value of CanHandleAccelerators 210 bool can_handle_accelerators_; // return value of CanHandleAccelerators
211 211
212 DISALLOW_COPY_AND_ASSIGN(TestAcceleratorTarget); 212 DISALLOW_COPY_AND_ASSIGN(TestAcceleratorTarget);
213 }; 213 };
214 214
215 TEST_F(FocusManagerTest, CallsNormalAcceleratorTarget) { 215 TEST_F(FocusManagerTest, CallsNormalAcceleratorTarget) {
216 FocusManager* focus_manager = GetFocusManager(); 216 FocusManager* focus_manager = GetFocusManager();
217 ui::Accelerator return_accelerator(ui::VKEY_RETURN, ui::EF_NONE); 217 ui::Accelerator return_accelerator(ui::VKEY_RETURN,
218 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE, ui::EF_NONE); 218 ui::EF_NONE,
219 ui::ET_KEY_PRESSED);
220 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE,
221 ui::EF_NONE,
222 ui::ET_KEY_PRESSED);
219 223
220 TestAcceleratorTarget return_target(true); 224 TestAcceleratorTarget return_target(true);
221 TestAcceleratorTarget escape_target(true); 225 TestAcceleratorTarget escape_target(true);
222 EXPECT_EQ(return_target.accelerator_count(), 0); 226 EXPECT_EQ(return_target.accelerator_count(), 0);
223 EXPECT_EQ(escape_target.accelerator_count(), 0); 227 EXPECT_EQ(escape_target.accelerator_count(), 0);
224 EXPECT_EQ(NULL, 228 EXPECT_EQ(NULL,
225 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); 229 focus_manager->GetCurrentTargetForAccelerator(return_accelerator));
226 EXPECT_EQ(NULL, 230 EXPECT_EQ(NULL,
227 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); 231 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator));
228 232
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 EXPECT_FALSE(focus_manager->ProcessAccelerator(return_accelerator)); 311 EXPECT_FALSE(focus_manager->ProcessAccelerator(return_accelerator));
308 EXPECT_EQ(return_target.accelerator_count(), 2); 312 EXPECT_EQ(return_target.accelerator_count(), 2);
309 EXPECT_EQ(return_target2.accelerator_count(), 2); 313 EXPECT_EQ(return_target2.accelerator_count(), 2);
310 EXPECT_EQ(return_target3.accelerator_count(), 2); 314 EXPECT_EQ(return_target3.accelerator_count(), 2);
311 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator)); 315 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator));
312 EXPECT_EQ(escape_target.accelerator_count(), 1); 316 EXPECT_EQ(escape_target.accelerator_count(), 1);
313 } 317 }
314 318
315 TEST_F(FocusManagerTest, HighPriorityHandlers) { 319 TEST_F(FocusManagerTest, HighPriorityHandlers) {
316 FocusManager* focus_manager = GetFocusManager(); 320 FocusManager* focus_manager = GetFocusManager();
317 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE, ui::EF_NONE); 321 ui::Accelerator escape_accelerator(ui::VKEY_ESCAPE,
322 ui::EF_NONE,
323 ui::ET_KEY_PRESSED);
318 324
319 TestAcceleratorTarget escape_target_high(true); 325 TestAcceleratorTarget escape_target_high(true);
320 TestAcceleratorTarget escape_target_normal(true); 326 TestAcceleratorTarget escape_target_normal(true);
321 EXPECT_EQ(escape_target_high.accelerator_count(), 0); 327 EXPECT_EQ(escape_target_high.accelerator_count(), 0);
322 EXPECT_EQ(escape_target_normal.accelerator_count(), 0); 328 EXPECT_EQ(escape_target_normal.accelerator_count(), 0);
323 EXPECT_EQ(NULL, 329 EXPECT_EQ(NULL,
324 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator)); 330 focus_manager->GetCurrentTargetForAccelerator(escape_accelerator));
325 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); 331 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator));
326 332
327 // Register high priority target. 333 // Register high priority target.
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator)); 402 EXPECT_FALSE(focus_manager->HasPriorityHandler(escape_accelerator));
397 403
398 // Hit the escape key (no change, no targets registered). 404 // Hit the escape key (no change, no targets registered).
399 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator)); 405 EXPECT_FALSE(focus_manager->ProcessAccelerator(escape_accelerator));
400 EXPECT_EQ(escape_target_high.accelerator_count(), 4); 406 EXPECT_EQ(escape_target_high.accelerator_count(), 4);
401 EXPECT_EQ(escape_target_normal.accelerator_count(), 1); 407 EXPECT_EQ(escape_target_normal.accelerator_count(), 1);
402 } 408 }
403 409
404 TEST_F(FocusManagerTest, CallsEnabledAcceleratorTargetsOnly) { 410 TEST_F(FocusManagerTest, CallsEnabledAcceleratorTargetsOnly) {
405 FocusManager* focus_manager = GetFocusManager(); 411 FocusManager* focus_manager = GetFocusManager();
406 ui::Accelerator return_accelerator(ui::VKEY_RETURN, ui::EF_NONE); 412 ui::Accelerator return_accelerator(ui::VKEY_RETURN,
413 ui::EF_NONE,
414 ui::ET_KEY_PRESSED);
407 415
408 TestAcceleratorTarget return_target1(true); 416 TestAcceleratorTarget return_target1(true);
409 TestAcceleratorTarget return_target2(true); 417 TestAcceleratorTarget return_target2(true);
410 418
411 focus_manager->RegisterAccelerator(return_accelerator, 419 focus_manager->RegisterAccelerator(return_accelerator,
412 ui::AcceleratorManager::kNormalPriority, 420 ui::AcceleratorManager::kNormalPriority,
413 &return_target1); 421 &return_target1);
414 focus_manager->RegisterAccelerator(return_accelerator, 422 focus_manager->RegisterAccelerator(return_accelerator,
415 ui::AcceleratorManager::kNormalPriority, 423 ui::AcceleratorManager::kNormalPriority,
416 &return_target2); 424 &return_target2);
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
464 private: 472 private:
465 ui::Accelerator accelerator_; 473 ui::Accelerator accelerator_;
466 FocusManager* focus_manager_; 474 FocusManager* focus_manager_;
467 int accelerator_count_; 475 int accelerator_count_;
468 476
469 DISALLOW_COPY_AND_ASSIGN(SelfUnregisteringAcceleratorTarget); 477 DISALLOW_COPY_AND_ASSIGN(SelfUnregisteringAcceleratorTarget);
470 }; 478 };
471 479
472 TEST_F(FocusManagerTest, CallsSelfDeletingAcceleratorTarget) { 480 TEST_F(FocusManagerTest, CallsSelfDeletingAcceleratorTarget) {
473 FocusManager* focus_manager = GetFocusManager(); 481 FocusManager* focus_manager = GetFocusManager();
474 ui::Accelerator return_accelerator(ui::VKEY_RETURN, ui::EF_NONE); 482 ui::Accelerator return_accelerator(ui::VKEY_RETURN,
483 ui::EF_NONE,
484 ui::ET_KEY_PRESSED);
475 SelfUnregisteringAcceleratorTarget target(return_accelerator, focus_manager); 485 SelfUnregisteringAcceleratorTarget target(return_accelerator, focus_manager);
476 EXPECT_EQ(target.accelerator_count(), 0); 486 EXPECT_EQ(target.accelerator_count(), 0);
477 EXPECT_EQ(NULL, 487 EXPECT_EQ(NULL,
478 focus_manager->GetCurrentTargetForAccelerator(return_accelerator)); 488 focus_manager->GetCurrentTargetForAccelerator(return_accelerator));
479 489
480 // Register the target. 490 // Register the target.
481 focus_manager->RegisterAccelerator(return_accelerator, 491 focus_manager->RegisterAccelerator(return_accelerator,
482 ui::AcceleratorManager::kNormalPriority, 492 ui::AcceleratorManager::kNormalPriority,
483 &target); 493 &target);
484 EXPECT_EQ(&target, 494 EXPECT_EQ(&target,
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
598 608
599 // Test window, button and focus manager should all be destructed. 609 // Test window, button and focus manager should all be destructed.
600 ASSERT_EQ(3, static_cast<int>(dtor_tracker_.size())); 610 ASSERT_EQ(3, static_cast<int>(dtor_tracker_.size()));
601 611
602 // Focus manager should be the last one to destruct. 612 // Focus manager should be the last one to destruct.
603 ASSERT_STREQ("FocusManagerDtorTracked", dtor_tracker_[2].c_str()); 613 ASSERT_STREQ("FocusManagerDtorTracked", dtor_tracker_[2].c_str());
604 } 614 }
605 #endif 615 #endif
606 616
607 } // namespace views 617 } // namespace views
OLDNEW
« no previous file with comments | « ui/views/focus/focus_manager.cc ('k') | ui/views/window/dialog_client_view.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698