summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/ui/views/panels/panel_view.cc22
-rw-r--r--chrome/browser/ui/views/panels/panel_view.h6
2 files changed, 7 insertions, 21 deletions
diff --git a/chrome/browser/ui/views/panels/panel_view.cc b/chrome/browser/ui/views/panels/panel_view.cc
index 1583368..376c9c2 100644
--- a/chrome/browser/ui/views/panels/panel_view.cc
+++ b/chrome/browser/ui/views/panels/panel_view.cc
@@ -292,8 +292,6 @@ PanelView::PanelView(Panel* panel, const gfx::Rect& bounds, bool always_on_top)
panel->profile()->GetPath()),
views::HWNDForWidget(window_));
#endif
-
- views::WidgetFocusManager::GetInstance()->AddFocusChangeListener(this);
}
PanelView::~PanelView() {
@@ -437,8 +435,6 @@ void PanelView::ClosePanel() {
return;
}
- views::WidgetFocusManager::GetInstance()->RemoveFocusChangeListener(this);
-
panel_->OnNativePanelClosed();
if (window_)
window_->Close();
@@ -982,6 +978,13 @@ void PanelView::OnWidgetActivationChanged(views::Widget* widget, bool active) {
#endif
panel()->OnActiveStateChanged(focused);
+
+ // Give web contents view a chance to set focus to the appropriate element.
+ if (focused_) {
+ content::WebContents* web_contents = panel_->GetWebContents();
+ if (web_contents)
+ web_contents->GetView()->RestoreFocus();
+ }
}
void PanelView::OnWidgetBoundsChanged(views::Widget* widget,
@@ -990,17 +993,6 @@ void PanelView::OnWidgetBoundsChanged(views::Widget* widget,
panel()->collection()->OnPanelResizedByMouse(panel(), new_bounds);
}
-void PanelView::OnNativeFocusChange(gfx::NativeView focused_before,
- gfx::NativeView focused_now) {
- if (focused_now != window_->GetNativeView())
- return;
-
- // Give web contents view a chance to set focus to the appropriate element.
- content::WebContents* web_contents = panel_->GetWebContents();
- if (web_contents)
- web_contents->GetView()->RestoreFocus();
-}
-
bool PanelView::OnTitlebarMousePressed(const gfx::Point& mouse_location) {
mouse_pressed_ = true;
mouse_dragging_state_ = NO_DRAGGING;
diff --git a/chrome/browser/ui/views/panels/panel_view.h b/chrome/browser/ui/views/panels/panel_view.h
index 54c078c..93cc9fd 100644
--- a/chrome/browser/ui/views/panels/panel_view.h
+++ b/chrome/browser/ui/views/panels/panel_view.h
@@ -8,7 +8,6 @@
#include "base/memory/scoped_ptr.h"
#include "chrome/browser/ui/panels/native_panel.h"
#include "ui/base/animation/animation_delegate.h"
-#include "ui/views/focus/widget_focus_manager.h"
#include "ui/views/widget/widget_delegate.h"
#include "ui/views/widget/widget_observer.h"
@@ -28,7 +27,6 @@ class WebView;
class PanelView : public NativePanel,
public views::WidgetObserver,
public views::WidgetDelegateView,
- public views::WidgetFocusChangeListener,
#if defined(OS_WIN)
public ui::HWNDMessageFilter,
#endif
@@ -151,10 +149,6 @@ class PanelView : public NativePanel,
virtual void OnWidgetBoundsChanged(views::Widget* widget,
const gfx::Rect& new_bounds) OVERRIDE;
- // Overridden from views::WidgetFocusChangeListener:
- virtual void OnNativeFocusChange(gfx::NativeView focused_before,
- gfx::NativeView focused_now) OVERRIDE;
-
// Overridden from ui::HWNDMessageFilter:
#if defined(OS_WIN)
virtual bool FilterMessage(HWND hwnd,