summaryrefslogtreecommitdiffstats
path: root/chrome/browser/views/frame/browser_view.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/views/frame/browser_view.cc')
-rw-r--r--chrome/browser/views/frame/browser_view.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/chrome/browser/views/frame/browser_view.cc b/chrome/browser/views/frame/browser_view.cc
index 9d6e7dd..960aef1 100644
--- a/chrome/browser/views/frame/browser_view.cc
+++ b/chrome/browser/views/frame/browser_view.cc
@@ -51,6 +51,7 @@
#include "chrome/views/hwnd_notification_source.h"
#include "chrome/views/native_scroll_bar.h"
#include "chrome/views/non_client_view.h"
+#include "chrome/views/root_view.h"
#include "chrome/views/view.h"
#include "chrome/views/window.h"
#include "grit/chromium_strings.h"
@@ -700,7 +701,10 @@ void BrowserView::FocusToolbar() {
// Do not restore the button that previously had accessibility focus, if
// focus is set by using the toolbar focus keyboard shortcut.
toolbar_->set_acc_focused_view(NULL);
- toolbar_->RequestFocus();
+ // HACK: Do not use RequestFocus() here, as the toolbar is not marked as
+ // "focusable". Instead bypass the sanity check in RequestFocus() and just
+ // force it to focus, which will do the right thing.
+ GetRootView()->FocusView(toolbar_);
}
void BrowserView::DestroyBrowser() {