diff options
author | jamescook@chromium.org <jamescook@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-10 00:18:14 +0000 |
---|---|---|
committer | jamescook@chromium.org <jamescook@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-10 00:18:14 +0000 |
commit | 075d31e3d7606d7a7d6477f37e9dc134575fb5fc (patch) | |
tree | 25ed22445f675f2068546b46bd6111df97272c61 /ash/launcher | |
parent | 8de12ff8ab2d1f85689f49b2291c1065fe8c4399 (diff) | |
download | chromium_src-075d31e3d7606d7a7d6477f37e9dc134575fb5fc.zip chromium_src-075d31e3d7606d7a7d6477f37e9dc134575fb5fc.tar.gz chromium_src-075d31e3d7606d7a7d6477f37e9dc134575fb5fc.tar.bz2 |
Aura: Fix activated windows sometimes not switching to foreground
This was caused by a mismatch in window and layer stacking. We use a NULL layer delegate as a signal that a window is hidden or closed and is animating out. The bottom-of-window status bubble frequently shows and hides, and hence is commonly in this state. If you tried to activate a background window while the status bubble was animating out the window would activate and start processing events, but its layer would not be brought to front, so it would visually appear behind other windows. The problem was probably introduced in either http://crrev.com/119453 (which introduced stacking changes for NULL layer delegate windows) or http://crrev.com/119753 (which fixed a similar issue with transient child windows). This patch ensures that window stacking order always matches layer stacking order and adds unit tests for this situation.
BUG=112562
TEST=aura_unittests WindowTest.Stack*
Review URL: https://chromiumcodereview.appspot.com/9371028
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121351 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/launcher')
-rw-r--r-- | ash/launcher/launcher.cc | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/ash/launcher/launcher.cc b/ash/launcher/launcher.cc index 61810e2..f9b5477 100644 --- a/ash/launcher/launcher.cc +++ b/ash/launcher/launcher.cc @@ -120,6 +120,7 @@ Launcher::Launcher(aura::Window* window_container) delegate_view_->AddChildView(launcher_view); params.delegate = delegate_view_; widget_->Init(params); + widget_->GetNativeWindow()->SetName("LauncherWindow"); gfx::Size pref = static_cast<views::View*>(launcher_view)->GetPreferredSize(); widget_->SetBounds(gfx::Rect(0, 0, pref.width(), pref.height())); // The launcher should not take focus when it is initially shown. |