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

Side by Side Diff: chrome/browser/ui/browser_tab_restorer.cc

Issue 2847173004: Switch SupportsUserData uses to use unique_ptr. (Closed)
Patch Set: Created 3 years, 7 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 "base/macros.h" 5 #include "base/macros.h"
6 #include "base/memory/ptr_util.h"
6 #include "base/metrics/user_metrics.h" 7 #include "base/metrics/user_metrics.h"
7 #include "base/metrics/user_metrics_action.h" 8 #include "base/metrics/user_metrics_action.h"
8 #include "base/supports_user_data.h" 9 #include "base/supports_user_data.h"
9 #include "chrome/browser/profiles/profile.h" 10 #include "chrome/browser/profiles/profile.h"
10 #include "chrome/browser/sessions/tab_restore_service_factory.h" 11 #include "chrome/browser/sessions/tab_restore_service_factory.h"
11 #include "chrome/browser/ui/browser.h" 12 #include "chrome/browser/ui/browser.h"
12 #include "chrome/browser/ui/browser_commands.h" 13 #include "chrome/browser/ui/browser_commands.h"
13 #include "chrome/browser/ui/browser_list.h" 14 #include "chrome/browser/ui/browser_list.h"
14 #include "chrome/browser/ui/browser_list_observer.h" 15 #include "chrome/browser/ui/browser_list_observer.h"
15 #include "chrome/browser/ui/browser_live_tab_context.h" 16 #include "chrome/browser/ui/browser_live_tab_context.h"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
69 } 70 }
70 71
71 BrowserTabRestorer::BrowserTabRestorer(Browser* browser) 72 BrowserTabRestorer::BrowserTabRestorer(Browser* browser)
72 : browser_(browser), 73 : browser_(browser),
73 tab_restore_service_( 74 tab_restore_service_(
74 TabRestoreServiceFactory::GetForProfile(browser->profile())) { 75 TabRestoreServiceFactory::GetForProfile(browser->profile())) {
75 DCHECK(tab_restore_service_); 76 DCHECK(tab_restore_service_);
76 DCHECK(!tab_restore_service_->IsLoaded()); 77 DCHECK(!tab_restore_service_->IsLoaded());
77 tab_restore_service_->AddObserver(this); 78 tab_restore_service_->AddObserver(this);
78 BrowserList::GetInstance()->AddObserver(this); 79 BrowserList::GetInstance()->AddObserver(this);
79 browser_->profile()->SetUserData(kBrowserTabRestorerKey, this); 80 browser_->profile()->SetUserData(kBrowserTabRestorerKey,
81 base::WrapUnique(this));
80 tab_restore_service_->LoadTabsFromLastSession(); 82 tab_restore_service_->LoadTabsFromLastSession();
81 } 83 }
82 84
83 void BrowserTabRestorer::TabRestoreServiceChanged( 85 void BrowserTabRestorer::TabRestoreServiceChanged(
84 sessions::TabRestoreService* service) {} 86 sessions::TabRestoreService* service) {}
85 87
86 void BrowserTabRestorer::TabRestoreServiceDestroyed( 88 void BrowserTabRestorer::TabRestoreServiceDestroyed(
87 sessions::TabRestoreService* service) {} 89 sessions::TabRestoreService* service) {}
88 90
89 void BrowserTabRestorer::TabRestoreServiceLoaded( 91 void BrowserTabRestorer::TabRestoreServiceLoaded(
(...skipping 19 matching lines...) Expand all
109 111
110 if (service->IsLoaded()) { 112 if (service->IsLoaded()) {
111 service->RestoreMostRecentEntry(browser->live_tab_context()); 113 service->RestoreMostRecentEntry(browser->live_tab_context());
112 return; 114 return;
113 } 115 }
114 116
115 BrowserTabRestorer::CreateIfNecessary(browser); 117 BrowserTabRestorer::CreateIfNecessary(browser);
116 } 118 }
117 119
118 } // namespace chrome 120 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698