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

Unified Diff: ash/common/accelerators/accelerator_controller.cc

Issue 2586333003: Make mash register initial batch of accelerators in single shot. (Closed)
Patch Set: Change comment/ Modify log sections/ Refactor code. Created 3 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: ash/common/accelerators/accelerator_controller.cc
diff --git a/ash/common/accelerators/accelerator_controller.cc b/ash/common/accelerators/accelerator_controller.cc
index db032bb3a8cafe407d68f3628775a7d7165a25af..63a1979a8d158ff66073753fc479ed9cf6520584 100644
--- a/ash/common/accelerators/accelerator_controller.cc
+++ b/ash/common/accelerators/accelerator_controller.cc
@@ -553,10 +553,11 @@ AcceleratorController::AcceleratorController(
AcceleratorController::~AcceleratorController() {}
-void AcceleratorController::Register(const ui::Accelerator& accelerator,
- ui::AcceleratorTarget* target) {
+void AcceleratorController::Register(
+ const std::vector<ui::Accelerator>& accelerators,
+ ui::AcceleratorTarget* target) {
accelerator_manager_->Register(
- accelerator, ui::AcceleratorManager::kNormalPriority, target);
+ accelerators, ui::AcceleratorManager::kNormalPriority, target);
}
void AcceleratorController::Unregister(const ui::Accelerator& accelerator,
@@ -750,13 +751,15 @@ void AcceleratorController::Init() {
void AcceleratorController::RegisterAccelerators(
const AcceleratorData accelerators[],
size_t accelerators_length) {
+ std::vector<ui::Accelerator> ui_accelerators;
for (size_t i = 0; i < accelerators_length; ++i) {
ui::Accelerator accelerator =
CreateAccelerator(accelerators[i].keycode, accelerators[i].modifiers,
accelerators[i].trigger_on_press);
- Register(accelerator, this);
+ ui_accelerators.push_back(accelerator);
accelerators_.insert(std::make_pair(accelerator, accelerators[i].action));
}
+ Register(ui_accelerators, this);
}
void AcceleratorController::RegisterDeprecatedAccelerators() {
@@ -766,16 +769,18 @@ void AcceleratorController::RegisterDeprecatedAccelerators() {
actions_with_deprecations_[data->action] = data;
}
+ std::vector<ui::Accelerator> ui_accelerators;
for (size_t i = 0; i < kDeprecatedAcceleratorsLength; ++i) {
const AcceleratorData& accelerator_data = kDeprecatedAccelerators[i];
const ui::Accelerator deprecated_accelerator =
CreateAccelerator(accelerator_data.keycode, accelerator_data.modifiers,
accelerator_data.trigger_on_press);
- Register(deprecated_accelerator, this);
+ ui_accelerators.push_back(deprecated_accelerator);
accelerators_[deprecated_accelerator] = accelerator_data.action;
deprecated_accelerators_.insert(deprecated_accelerator);
}
+ Register(ui_accelerators, this);
#endif // defined(OS_CHROMEOS)
}

Powered by Google App Engine
This is Rietveld 408576698