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 { |