Commit bbf8a1c1 authored by oshima@chromium.org's avatar oshima@chromium.org

Set aura window focus in NativeWidgetAura::ClearNativeFocus only if the focus...

Set aura window focus in NativeWidgetAura::ClearNativeFocus only if the focus is owned by child window.

 This was causing a focus to be stolen when non active window calls ClearNativeFocus.

BUG=114477
TEST=OmniboxViewTest.PopupAccelerators passes with this change


Review URL: http://codereview.chromium.org/8931022

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114561 0039d316-1c4b-4281-b951-d872f2087c98
parent 8083cc31
...@@ -1131,7 +1131,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxViewTest, FLAKY_BrowserAccelerators) { ...@@ -1131,7 +1131,7 @@ IN_PROC_BROWSER_TEST_F(OmniboxViewTest, FLAKY_BrowserAccelerators) {
} }
// Flakily fails and times out on Win only. http://crbug.com/69941 // Flakily fails and times out on Win only. http://crbug.com/69941
#if defined(OS_WIN) || defined(USE_AURA) #if defined(OS_WIN)
#define MAYBE_PopupAccelerators DISABLED_PopupAccelerators #define MAYBE_PopupAccelerators DISABLED_PopupAccelerators
#else #else
#define MAYBE_PopupAccelerators PopupAccelerators #define MAYBE_PopupAccelerators PopupAccelerators
......
...@@ -528,8 +528,10 @@ void NativeWidgetAura::SetCursor(gfx::NativeCursor cursor) { ...@@ -528,8 +528,10 @@ void NativeWidgetAura::SetCursor(gfx::NativeCursor cursor) {
} }
void NativeWidgetAura::ClearNativeFocus() { void NativeWidgetAura::ClearNativeFocus() {
if (window_ && window_->GetFocusManager()) if (window_ && window_->GetFocusManager() &&
window_->Contains(window_->GetFocusManager()->GetFocusedWindow())) {
window_->GetFocusManager()->SetFocusedWindow(window_); window_->GetFocusManager()->SetFocusedWindow(window_);
}
} }
void NativeWidgetAura::FocusNativeView(gfx::NativeView native_view) { void NativeWidgetAura::FocusNativeView(gfx::NativeView native_view) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment