OLD | NEW |
| (Empty) |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "chrome/browser/ui/views/auto_keep_alive.h" | |
6 | |
7 #include "chrome/browser/lifetime/application_lifetime.h" | |
8 #include "chrome/browser/ui/host_desktop.h" | |
9 | |
10 AutoKeepAlive::AutoKeepAlive(gfx::NativeWindow window) | |
11 : keep_alive_available_(false) { | |
12 // In case of aura we want default to be keep alive not available for ash | |
13 // because ash has keep alive set and we don't want additional keep alive | |
14 // count. | |
15 chrome::HostDesktopType desktop_type = | |
16 window ? chrome::GetHostDesktopTypeForNativeWindow(window) | |
17 : chrome::GetActiveDesktop(); | |
18 if (desktop_type != chrome::HOST_DESKTOP_TYPE_ASH) { | |
19 keep_alive_available_ = true; | |
20 chrome::IncrementKeepAliveCount(); | |
21 } | |
22 } | |
23 | |
24 AutoKeepAlive::~AutoKeepAlive() { | |
25 if (keep_alive_available_) | |
26 chrome::DecrementKeepAliveCount(); | |
27 } | |
OLD | NEW |