diff options
author | oshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-09 07:04:18 +0000 |
---|---|---|
committer | oshima@chromium.org <oshima@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-09 07:04:18 +0000 |
commit | bb0c80765c0d4285b2a80bf54d5ed2e6d2f1570a (patch) | |
tree | 7f8b1377720bcd62c20efca757edc0343b2e8b37 /ash/wm/power_button_controller.cc | |
parent | 2ca5b5a1c132b34ee8ae90f708e5dee933a03180 (diff) | |
download | chromium_src-bb0c80765c0d4285b2a80bf54d5ed2e6d2f1570a.zip chromium_src-bb0c80765c0d4285b2a80bf54d5ed2e6d2f1570a.tar.gz chromium_src-bb0c80765c0d4285b2a80bf54d5ed2e6d2f1570a.tar.bz2 |
Decouple EventClientImpl and root window. Check containers on the same root window as focused window when testing if the focused window can receive events. This was causing lock screen to lose focus when mouse is clicked on another root window.
This Cl also adds a debug build/linux desktop only shortcut (F11) to lock/shutdown.
BUG=152982
TEST=covered by test.
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=160696
Review URL: https://codereview.chromium.org/11047030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@160804 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/wm/power_button_controller.cc')
-rw-r--r-- | ash/wm/power_button_controller.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/ash/wm/power_button_controller.cc b/ash/wm/power_button_controller.cc index bd9bb91..4f05f1b 100644 --- a/ash/wm/power_button_controller.cc +++ b/ash/wm/power_button_controller.cc @@ -13,6 +13,10 @@ #include "ui/aura/root_window.h" #include "ui/aura/shared/compound_event_filter.h" +#if defined(OS_CHROMEOS) +#include "base/chromeos/chromeos_version.h" +#endif + namespace ash { namespace { @@ -307,6 +311,13 @@ void PowerButtonController::OnShutdownTimeout() { void PowerButtonController::OnRealShutdownTimeout() { DCHECK(shutting_down_); +#if defined(OS_CHROMEOS) + if (!base::chromeos::IsRunningOnChromeOS()) { + ShellDelegate* delegate = Shell::GetInstance()->delegate(); + if (delegate) + delegate->Exit(); + } +#endif delegate_->RequestShutdown(); } |