OLD | NEW |
---|---|
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/ui/views/auto_keep_alive.h" | 5 #include "chrome/browser/ui/views/auto_keep_alive.h" |
6 | 6 |
7 #include "chrome/browser/lifetime/application_lifetime.h" | 7 #include "chrome/browser/lifetime/scoped_keep_alive.h" |
8 #include "chrome/browser/ui/host_desktop.h" | 8 #include "chrome/browser/ui/host_desktop.h" |
9 | 9 |
10 AutoKeepAlive::AutoKeepAlive(gfx::NativeWindow window) | 10 scoped_ptr<ScopedKeepAlive> 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 = | 11 chrome::HostDesktopType desktop_type = |
16 window ? chrome::GetHostDesktopTypeForNativeWindow(window) | 12 window ? chrome::GetHostDesktopTypeForNativeWindow(window) |
17 : chrome::GetActiveDesktop(); | 13 : chrome::GetActiveDesktop(); |
18 if (desktop_type != chrome::HOST_DESKTOP_TYPE_ASH) { | 14 |
19 keep_alive_available_ = true; | 15 scoped_ptr<ScopedKeepAlive> keep_alive; |
20 chrome::IncrementKeepAliveCount(); | 16 if (desktop_type != chrome::HOST_DESKTOP_TYPE_ASH) |
21 } | 17 keep_alive.reset(new ScopedKeepAlive("AutoView")); |
Bernhard Bauer
2016/02/19 17:39:28
Directly return the a new scoped_ptr here, and ret
dgn
2016/02/19 18:04:28
Done.
| |
18 | |
19 return keep_alive; | |
22 } | 20 } |
23 | |
24 AutoKeepAlive::~AutoKeepAlive() { | |
25 if (keep_alive_available_) | |
26 chrome::DecrementKeepAliveCount(); | |
27 } | |
OLD | NEW |