Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(243)

Side by Side Diff: chrome/browser/ui/app_list/app_list_shower_views.cc

Issue 1708343002: Add ScopedKeepAlive to c/b/lifetime (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address PS7 comments, replace strings by a struct ptr, chromeappdelegate ctor takes a boolean Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/app_list/app_list_shower_views.h" 5 #include "chrome/browser/ui/app_list/app_list_shower_views.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/location.h" 8 #include "base/location.h"
9 #include "base/profiler/scoped_tracker.h" 9 #include "base/profiler/scoped_tracker.h"
10 #include "base/single_thread_task_runner.h" 10 #include "base/single_thread_task_runner.h"
11 #include "base/thread_task_runner_handle.h" 11 #include "base/thread_task_runner_handle.h"
12 #include "chrome/browser/apps/scoped_keep_alive.h" 12 #include "chrome/browser/lifetime/keep_alive_options.h"
13 #include "chrome/browser/lifetime/scoped_keep_alive.h"
13 #include "chrome/browser/profiles/profile.h" 14 #include "chrome/browser/profiles/profile.h"
14 #include "chrome/browser/ui/app_list/app_list_shower_delegate.h" 15 #include "chrome/browser/ui/app_list/app_list_shower_delegate.h"
15 #include "chrome/browser/ui/app_list/app_list_view_delegate.h" 16 #include "chrome/browser/ui/app_list/app_list_view_delegate.h"
16 #include "ui/app_list/views/app_list_view.h" 17 #include "ui/app_list/views/app_list_view.h"
17 #include "ui/gfx/geometry/point.h" 18 #include "ui/gfx/geometry/point.h"
18 #include "ui/gfx/screen.h" 19 #include "ui/gfx/screen.h"
19 20
21 namespace {
22
23 static const KeepAliveOptions g_keep_alive_options = {"AppListShowerViews"};
24
25 } // namespace
26
20 AppListShower::AppListShower(AppListShowerDelegate* delegate) 27 AppListShower::AppListShower(AppListShowerDelegate* delegate)
21 : delegate_(delegate), 28 : delegate_(delegate),
22 profile_(NULL), 29 profile_(NULL),
23 app_list_(NULL), 30 app_list_(NULL),
24 window_icon_updated_(false) { 31 window_icon_updated_(false) {
25 } 32 }
26 33
27 AppListShower::~AppListShower() { 34 AppListShower::~AppListShower() {
28 } 35 }
29 36
30 void AppListShower::ShowForCurrentProfile() { 37 void AppListShower::ShowForCurrentProfile() {
31 DCHECK(HasView()); 38 DCHECK(HasView());
32 keep_alive_.reset(new ScopedKeepAlive); 39 keep_alive_.reset(new ScopedKeepAlive(&g_keep_alive_options));
33 40
34 // If the app list is already displaying |profile| just activate it (in case 41 // If the app list is already displaying |profile| just activate it (in case
35 // we have lost focus). 42 // we have lost focus).
36 if (!IsAppListVisible()) 43 if (!IsAppListVisible())
37 delegate_->MoveNearCursor(app_list_); 44 delegate_->MoveNearCursor(app_list_);
38 45
39 Show(); 46 Show();
40 } 47 }
41 48
42 gfx::NativeWindow AppListShower::GetWindow() { 49 gfx::NativeWindow AppListShower::GetWindow() {
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 FROM_HERE, 156 FROM_HERE,
150 base::Bind(&AppListShower::ResetKeepAlive, base::Unretained(this))); 157 base::Bind(&AppListShower::ResetKeepAlive, base::Unretained(this)));
151 return; 158 return;
152 } 159 }
153 ResetKeepAlive(); 160 ResetKeepAlive();
154 } 161 }
155 162
156 void AppListShower::ResetKeepAlive() { 163 void AppListShower::ResetKeepAlive() {
157 keep_alive_.reset(); 164 keep_alive_.reset();
158 } 165 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698