| Index: chrome/browser/ui/views/toolbar/browser_action_view.cc
|
| diff --git a/chrome/browser/ui/views/toolbar/browser_action_view.cc b/chrome/browser/ui/views/toolbar/browser_action_view.cc
|
| index 5e2ae578e1e1f1ce5fe22bbeec86cd83edcdf6a8..772a4056b9c3cf2bfbfdaa8219fee267fafca302 100644
|
| --- a/chrome/browser/ui/views/toolbar/browser_action_view.cc
|
| +++ b/chrome/browser/ui/views/toolbar/browser_action_view.cc
|
| @@ -15,6 +15,7 @@
|
| #include "chrome/browser/themes/theme_service.h"
|
| #include "chrome/browser/themes/theme_service_factory.h"
|
| #include "chrome/browser/ui/browser.h"
|
| +#include "chrome/browser/ui/extensions/accelerator_priority.h"
|
| #include "chrome/browser/ui/view_ids.h"
|
| #include "chrome/browser/ui/views/frame/browser_view.h"
|
| #include "chrome/browser/ui/views/toolbar/browser_actions_container.h"
|
| @@ -378,6 +379,12 @@ scoped_ptr<LabelButtonBorder> BrowserActionButton::CreateDefaultBorder() const {
|
|
|
| bool BrowserActionButton::AcceleratorPressed(
|
| const ui::Accelerator& accelerator) {
|
| + // Normal priority shortcuts must be handled via standard browser commands to
|
| + // be processed at the proper time.
|
| + if (GetAcceleratorPriority(accelerator, extension_) ==
|
| + ui::AcceleratorManager::kNormalPriority)
|
| + return false;
|
| +
|
| delegate_->OnBrowserActionExecuted(this);
|
| return true;
|
| }
|
| @@ -424,7 +431,10 @@ void BrowserActionButton::MaybeRegisterExtensionCommand() {
|
| keybinding_.reset(new ui::Accelerator(
|
| browser_action_command.accelerator()));
|
| GetFocusManager()->RegisterAccelerator(
|
| - *keybinding_.get(), ui::AcceleratorManager::kHighPriority, this);
|
| + *keybinding_.get(),
|
| + GetAcceleratorPriority(browser_action_command.accelerator(),
|
| + extension_),
|
| + this);
|
| }
|
| }
|
|
|
|
|