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

Side by Side 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 unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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 "chrome/browser/ui/views/frame/browser_view.h" 5 #include "chrome/browser/ui/views/frame/browser_view.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <memory> 10 #include <memory>
(...skipping 1999 matching lines...) Expand 10 before | Expand all | Expand 10 after
2010 2010
2011 /////////////////////////////////////////////////////////////////////////////// 2011 ///////////////////////////////////////////////////////////////////////////////
2012 // BrowserView, ui::AcceleratorTarget overrides: 2012 // BrowserView, ui::AcceleratorTarget overrides:
2013 2013
2014 bool BrowserView::AcceleratorPressed(const ui::Accelerator& accelerator) { 2014 bool BrowserView::AcceleratorPressed(const ui::Accelerator& accelerator) {
2015 std::map<ui::Accelerator, int>::const_iterator iter = 2015 std::map<ui::Accelerator, int>::const_iterator iter =
2016 accelerator_table_.find(accelerator); 2016 accelerator_table_.find(accelerator);
2017 DCHECK(iter != accelerator_table_.end()); 2017 DCHECK(iter != accelerator_table_.end());
2018 int command_id = iter->second; 2018 int command_id = iter->second;
2019 2019
2020 if (accelerator.IsRepeat() && !repeatable_command_ids_.count(command_id))
2021 return false;
2022
2020 chrome::BrowserCommandController* controller = browser_->command_controller(); 2023 chrome::BrowserCommandController* controller = browser_->command_controller();
2021 if (!controller->block_command_execution()) 2024 if (!controller->block_command_execution())
2022 UpdateAcceleratorMetrics(accelerator, command_id); 2025 UpdateAcceleratorMetrics(accelerator, command_id);
2023 return chrome::ExecuteCommand(browser_.get(), command_id); 2026 return chrome::ExecuteCommand(browser_.get(), command_id);
2024 } 2027 }
2025 2028
2026 /////////////////////////////////////////////////////////////////////////////// 2029 ///////////////////////////////////////////////////////////////////////////////
2027 // BrowserView, OmniboxPopupModelObserver overrides: 2030 // BrowserView, OmniboxPopupModelObserver overrides:
2028 void BrowserView::OnOmniboxPopupShownOrHidden() { 2031 void BrowserView::OnOmniboxPopupShownOrHidden() {
2029 SetMaxTopArrowHeight(GetMaxTopInfoBarArrowHeight(), infobar_container_); 2032 SetMaxTopArrowHeight(GetMaxTopInfoBarArrowHeight(), infobar_container_);
(...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after
2399 if (is_app_mode && !chrome::IsCommandAllowedInAppMode(it->command_id)) 2402 if (is_app_mode && !chrome::IsCommandAllowedInAppMode(it->command_id))
2400 continue; 2403 continue;
2401 2404
2402 ui::Accelerator accelerator(it->keycode, it->modifiers); 2405 ui::Accelerator accelerator(it->keycode, it->modifiers);
2403 accelerator_table_[accelerator] = it->command_id; 2406 accelerator_table_[accelerator] = it->command_id;
2404 2407
2405 // Also register with the focus manager. 2408 // Also register with the focus manager.
2406 focus_manager->RegisterAccelerator( 2409 focus_manager->RegisterAccelerator(
2407 accelerator, ui::AcceleratorManager::kNormalPriority, this); 2410 accelerator, ui::AcceleratorManager::kNormalPriority, this);
2408 } 2411 }
2412
2413 repeatable_command_ids_ = chrome::GetRepeatableCommandIds();
2409 } 2414 }
2410 2415
2411 int BrowserView::GetCommandIDForAppCommandID(int app_command_id) const { 2416 int BrowserView::GetCommandIDForAppCommandID(int app_command_id) const {
2412 #if defined(OS_WIN) 2417 #if defined(OS_WIN)
2413 switch (app_command_id) { 2418 switch (app_command_id) {
2414 // NOTE: The order here matches the APPCOMMAND declaration order in the 2419 // NOTE: The order here matches the APPCOMMAND declaration order in the
2415 // Windows headers. 2420 // Windows headers.
2416 case APPCOMMAND_BROWSER_BACKWARD: return IDC_BACK; 2421 case APPCOMMAND_BROWSER_BACKWARD: return IDC_BACK;
2417 case APPCOMMAND_BROWSER_FORWARD: return IDC_FORWARD; 2422 case APPCOMMAND_BROWSER_FORWARD: return IDC_FORWARD;
2418 case APPCOMMAND_BROWSER_REFRESH: return IDC_RELOAD; 2423 case APPCOMMAND_BROWSER_REFRESH: return IDC_RELOAD;
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
2665 } 2670 }
2666 2671
2667 extensions::ActiveTabPermissionGranter* 2672 extensions::ActiveTabPermissionGranter*
2668 BrowserView::GetActiveTabPermissionGranter() { 2673 BrowserView::GetActiveTabPermissionGranter() {
2669 content::WebContents* web_contents = GetActiveWebContents(); 2674 content::WebContents* web_contents = GetActiveWebContents();
2670 if (!web_contents) 2675 if (!web_contents)
2671 return nullptr; 2676 return nullptr;
2672 return extensions::TabHelper::FromWebContents(web_contents) 2677 return extensions::TabHelper::FromWebContents(web_contents)
2673 ->active_tab_permission_granter(); 2678 ->active_tab_permission_granter();
2674 } 2679 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698