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

Unified Diff: chrome/browser/ui/views/frame/browser_view.cc

Issue 2128243003: Make most browser accelerators not repeat. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: use set and fix tests Created 4 years, 3 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: chrome/browser/ui/views/frame/browser_view.cc
diff --git a/chrome/browser/ui/views/frame/browser_view.cc b/chrome/browser/ui/views/frame/browser_view.cc
index 9bdc2b2b80422a72497dde99de4a309aabb7b047..648d826a53c429cfc3aefe820f0be938deae76ff 100644
--- a/chrome/browser/ui/views/frame/browser_view.cc
+++ b/chrome/browser/ui/views/frame/browser_view.cc
@@ -2017,6 +2017,9 @@ bool BrowserView::AcceleratorPressed(const ui::Accelerator& accelerator) {
DCHECK(iter != accelerator_table_.end());
int command_id = iter->second;
+ if (accelerator.IsRepeat() && !repeatable_command_ids_.count(command_id))
+ return false;
+
chrome::BrowserCommandController* controller = browser_->command_controller();
if (!controller->block_command_execution())
UpdateAcceleratorMetrics(accelerator, command_id);
@@ -2406,6 +2409,8 @@ void BrowserView::LoadAccelerators() {
focus_manager->RegisterAccelerator(
accelerator, ui::AcceleratorManager::kNormalPriority, this);
}
+
+ repeatable_command_ids_ = chrome::GetRepeatableCommandIds();
}
int BrowserView::GetCommandIDForAppCommandID(int app_command_id) const {

Powered by Google App Engine
This is Rietveld 408576698