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

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: Use singleton instead of browserprocess 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/scoped_keep_alive.h"
13 #include "chrome/browser/profiles/profile.h" 13 #include "chrome/browser/profiles/profile.h"
14 #include "chrome/browser/ui/app_list/app_list_shower_delegate.h" 14 #include "chrome/browser/ui/app_list/app_list_shower_delegate.h"
15 #include "chrome/browser/ui/app_list/app_list_view_delegate.h" 15 #include "chrome/browser/ui/app_list/app_list_view_delegate.h"
16 #include "ui/app_list/views/app_list_view.h" 16 #include "ui/app_list/views/app_list_view.h"
17 #include "ui/gfx/geometry/point.h" 17 #include "ui/gfx/geometry/point.h"
18 #include "ui/gfx/screen.h" 18 #include "ui/gfx/screen.h"
19 19
20 AppListShower::AppListShower(AppListShowerDelegate* delegate) 20 AppListShower::AppListShower(AppListShowerDelegate* delegate)
21 : delegate_(delegate), 21 : delegate_(delegate),
22 profile_(NULL), 22 profile_(NULL),
23 app_list_(NULL), 23 app_list_(NULL),
24 window_icon_updated_(false) { 24 window_icon_updated_(false) {
25 } 25 }
26 26
27 AppListShower::~AppListShower() { 27 AppListShower::~AppListShower() {
28 } 28 }
29 29
30 void AppListShower::ShowForCurrentProfile() { 30 void AppListShower::ShowForCurrentProfile() {
31 DCHECK(HasView()); 31 DCHECK(HasView());
32 keep_alive_.reset(new ScopedKeepAlive); 32 keep_alive_.reset(new ScopedKeepAlive("AppListShower"));
33 33
34 // If the app list is already displaying |profile| just activate it (in case 34 // If the app list is already displaying |profile| just activate it (in case
35 // we have lost focus). 35 // we have lost focus).
36 if (!IsAppListVisible()) 36 if (!IsAppListVisible())
37 delegate_->MoveNearCursor(app_list_); 37 delegate_->MoveNearCursor(app_list_);
38 38
39 Show(); 39 Show();
40 } 40 }
41 41
42 gfx::NativeWindow AppListShower::GetWindow() { 42 gfx::NativeWindow AppListShower::GetWindow() {
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
149 FROM_HERE, 149 FROM_HERE,
150 base::Bind(&AppListShower::ResetKeepAlive, base::Unretained(this))); 150 base::Bind(&AppListShower::ResetKeepAlive, base::Unretained(this)));
151 return; 151 return;
152 } 152 }
153 ResetKeepAlive(); 153 ResetKeepAlive();
154 } 154 }
155 155
156 void AppListShower::ResetKeepAlive() { 156 void AppListShower::ResetKeepAlive() {
157 keep_alive_.reset(); 157 keep_alive_.reset();
158 } 158 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698