Index: ash/wm/window_util.cc |
diff --git a/ash/wm/window_util.cc b/ash/wm/window_util.cc |
index accafd9c41af3c9bf18ab9263072e7345be9f232..d45c0612d2d1cb1fdde84e61a646ef6b2c62b136 100644 |
--- a/ash/wm/window_util.cc |
+++ b/ash/wm/window_util.cc |
@@ -22,17 +22,26 @@ DEFINE_WINDOW_PROPERTY_KEY(bool, kOpenWindowSplitKey, false); |
namespace wm { |
void ActivateWindow(aura::Window* window) { |
- aura::client::GetActivationClient(Shell::GetRootWindow())->ActivateWindow( |
+ DCHECK(window); |
+ DCHECK(window->GetRootWindow()); |
+ aura::client::GetActivationClient(window->GetRootWindow())->ActivateWindow( |
window); |
} |
void DeactivateWindow(aura::Window* window) { |
- aura::client::GetActivationClient(Shell::GetRootWindow())->DeactivateWindow( |
+ DCHECK(window); |
+ DCHECK(window->GetRootWindow()); |
+ aura::client::GetActivationClient(window->GetRootWindow())->DeactivateWindow( |
window); |
} |
bool IsActiveWindow(aura::Window* window) { |
- return GetActiveWindow() == window; |
+ DCHECK(window); |
+ if (!window->GetRootWindow()) |
+ return false; |
+ |
+ return aura::client::GetActivationClient(window->GetRootWindow())-> |
+ GetActiveWindow() == window; |
} |
aura::Window* GetActiveWindow() { |