Index: chrome/browser/ui/views/location_bar/page_action_image_view.cc |
diff --git a/chrome/browser/ui/views/location_bar/page_action_image_view.cc b/chrome/browser/ui/views/location_bar/page_action_image_view.cc |
index a59ddc287b6f0a07d955ad13ed703e86b4e0be8e..4c96bf4402a13958234b90470f2602b2f9da389e 100644 |
--- a/chrome/browser/ui/views/location_bar/page_action_image_view.cc |
+++ b/chrome/browser/ui/views/location_bar/page_action_image_view.cc |
@@ -17,6 +17,7 @@ |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/sessions/session_id.h" |
#include "chrome/browser/ui/browser_list.h" |
+#include "chrome/browser/ui/extensions/accelerator_priority.h" |
#include "chrome/browser/ui/views/frame/browser_view.h" |
#include "chrome/browser/ui/views/location_bar/location_bar_view.h" |
#include "chrome/browser/ui/webui/extensions/extension_info_ui.h" |
@@ -65,7 +66,7 @@ PageActionImageView::PageActionImageView(LocationBarView* owner, |
new ui::Accelerator(page_action_command.accelerator())); |
owner_->GetFocusManager()->RegisterAccelerator( |
*page_action_keybinding_.get(), |
- ui::AcceleratorManager::kHighPriority, |
+ GetAcceleratorPriority(page_action_command.accelerator(), extension), |
this); |
} |
} |
@@ -177,6 +178,14 @@ bool PageActionImageView::AcceleratorPressed( |
const ui::Accelerator& accelerator) { |
DCHECK(visible()); // Should not have happened due to CanHandleAccelerator. |
+ // Normal priority shortcuts must be handled via the standard browser command |
+ // processing to be effective. |
+ if (GetAcceleratorPriorityById(accelerator, |
Peter Kasting
2014/07/07 23:47:10
Nit: Shorter:
const ui::AcceleratorManager::Han
Mike Wittman
2014/07/08 19:29:01
Done, although requires an extra line for extensio
|
+ page_action()->extension_id(), |
+ owner_->profile()) == |
+ ui::AcceleratorManager::kNormalPriority) |
+ return false; |
+ |
ExecuteAction(ExtensionPopup::SHOW); |
return true; |
} |