| Index: ui/base/accelerators/accelerator_manager_unittest.cc
|
| diff --git a/ui/base/accelerators/accelerator_manager_unittest.cc b/ui/base/accelerators/accelerator_manager_unittest.cc
|
| index 5383403be6799c3ebcd0900b668ef3a47f622eea..ede99e33d4592f65403a665305c936198d7b8fa7 100644
|
| --- a/ui/base/accelerators/accelerator_manager_unittest.cc
|
| +++ b/ui/base/accelerators/accelerator_manager_unittest.cc
|
| @@ -90,8 +90,21 @@ class TestAcceleratorManagerDelegate : public AcceleratorManagerDelegate {
|
| return commands;
|
| }
|
|
|
| + void OnAcceleratorsRegistered(
|
| + const std::vector<ui::Accelerator>& accelerators) override {
|
| + for (auto iter = accelerators.begin(); iter != accelerators.end(); ++iter)
|
| + OnAcceleratorRegistered(*iter);
|
| + }
|
| +
|
| + void OnAcceleratorsUnregistered(
|
| + std::vector<ui::Accelerator>& accelerators) override {
|
| + for (auto iter = accelerators.begin(); iter != accelerators.end(); ++iter)
|
| + OnAcceleratorUnregistered(*iter);
|
| + }
|
| // AcceleratorManagerDelegate:
|
| - void OnAcceleratorRegistered(const Accelerator& accelerator) override {
|
| + void OnAcceleratorRegistered(
|
| + const Accelerator& accelerator,
|
| + bool add_accelerator_immediately = true) override {
|
| if (!commands_.empty())
|
| commands_ += " ";
|
| commands_ += "Register " + accelerator_to_id_[accelerator];
|
| @@ -125,8 +138,8 @@ TEST_F(AcceleratorManagerTest, Register) {
|
| const Accelerator accelerator_a(VKEY_A, EF_NONE);
|
| TestTarget target;
|
| delegate_.SetIdForAccelerator(accelerator_a, "a");
|
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
|
| - &target);
|
| + const std::vector<ui::Accelerator>& accelerators = {accelerator_a};
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
|
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
|
|
|
| // The registered accelerator is processed.
|
| @@ -138,11 +151,12 @@ TEST_F(AcceleratorManagerTest, RegisterMultipleTarget) {
|
| const Accelerator accelerator_a(VKEY_A, EF_NONE);
|
| delegate_.SetIdForAccelerator(accelerator_a, "a");
|
| TestTarget target1;
|
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
|
| + const std::vector<ui::Accelerator>& accelerators = {accelerator_a};
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
|
| &target1);
|
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
|
| TestTarget target2;
|
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
|
| &target2);
|
| // Registering the same command shouldn't notify the delegate.
|
| EXPECT_TRUE(delegate_.GetAndClearCommands().empty());
|
| @@ -158,14 +172,16 @@ TEST_F(AcceleratorManagerTest, Unregister) {
|
| const Accelerator accelerator_a(VKEY_A, EF_NONE);
|
| delegate_.SetIdForAccelerator(accelerator_a, "a");
|
| TestTarget target;
|
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
|
| - &target);
|
| - EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
|
| +
|
| const Accelerator accelerator_b(VKEY_B, EF_NONE);
|
| delegate_.SetIdForAccelerator(accelerator_b, "b");
|
| - manager_.Register(accelerator_b, AcceleratorManager::kNormalPriority,
|
| - &target);
|
| - EXPECT_EQ("Register b", delegate_.GetAndClearCommands());
|
| +
|
| + const std::vector<ui::Accelerator>& accelerators = {accelerator_a,
|
| + accelerator_b};
|
| +
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
|
| +
|
| + EXPECT_EQ("Register a Register b", delegate_.GetAndClearCommands());
|
|
|
| // Unregistering a different accelerator does not affect the other
|
| // accelerator.
|
| @@ -186,17 +202,25 @@ TEST_F(AcceleratorManagerTest, UnregisterAll) {
|
| const Accelerator accelerator_a(VKEY_A, EF_NONE);
|
| delegate_.SetIdForAccelerator(accelerator_a, "a");
|
| TestTarget target1;
|
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
|
| - &target1);
|
| +
|
| const Accelerator accelerator_b(VKEY_B, EF_NONE);
|
| delegate_.SetIdForAccelerator(accelerator_b, "b");
|
| - manager_.Register(accelerator_b, AcceleratorManager::kNormalPriority,
|
| +
|
| + const std::vector<ui::Accelerator>& accelerators = {accelerator_a,
|
| + accelerator_b};
|
| +
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
|
| &target1);
|
| +
|
| const Accelerator accelerator_c(VKEY_C, EF_NONE);
|
| delegate_.SetIdForAccelerator(accelerator_c, "c");
|
| +
|
| + const std::vector<ui::Accelerator>& accelerators_2 = {accelerator_c};
|
| +
|
| TestTarget target2;
|
| - manager_.Register(accelerator_c, AcceleratorManager::kNormalPriority,
|
| + manager_.Register(accelerators_2, AcceleratorManager::kNormalPriority,
|
| &target2);
|
| +
|
| EXPECT_EQ("Register a Register b Register c",
|
| delegate_.GetAndClearCommands());
|
| manager_.UnregisterAll(&target1);
|
| @@ -224,7 +248,8 @@ TEST_F(AcceleratorManagerTest, Process) {
|
| for (size_t i = 0; i < (1 << arraysize(kAcceleratorModifiers)); ++i) {
|
| const int modifiers = BuildAcceleratorModifier(i);
|
| Accelerator accelerator(GetAccelerator(VKEY_A, modifiers));
|
| - manager_.Register(accelerator, AcceleratorManager::kNormalPriority,
|
| + const std::vector<ui::Accelerator>& accelerators = {accelerator};
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority,
|
| &target);
|
|
|
| // The registered accelerator is processed.
|
| @@ -267,13 +292,12 @@ TEST_F(AcceleratorManagerTest, Reregister) {
|
| const Accelerator accelerator_a(VKEY_A, EF_NONE);
|
| TestTarget target;
|
| delegate_.SetIdForAccelerator(accelerator_a, "a");
|
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
|
| - &target);
|
| + const std::vector<ui::Accelerator>& accelerators = {accelerator_a};
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
|
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
|
| manager_.UnregisterAll(&target);
|
| EXPECT_EQ("Unregister a", delegate_.GetAndClearCommands());
|
| - manager_.Register(accelerator_a, AcceleratorManager::kNormalPriority,
|
| - &target);
|
| + manager_.Register(accelerators, AcceleratorManager::kNormalPriority, &target);
|
| EXPECT_EQ("Register a", delegate_.GetAndClearCommands());
|
| }
|
|
|
|
|