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

Side by Side Diff: chrome/browser/devtools/global_confirm_info_bar.cc

Issue 1551503002: Convert Pass()→std::move() in //chrome (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 12 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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/devtools/global_confirm_info_bar.h" 5 #include "chrome/browser/devtools/global_confirm_info_bar.h"
6 6
7 #include <utility>
8
7 #include "base/macros.h" 9 #include "base/macros.h"
8 #include "chrome/browser/ui/browser.h" 10 #include "chrome/browser/ui/browser.h"
9 #include "chrome/browser/ui/host_desktop.h" 11 #include "chrome/browser/ui/host_desktop.h"
10 #include "chrome/browser/ui/tabs/tab_strip_model.h" 12 #include "chrome/browser/ui/tabs/tab_strip_model.h"
11 #include "components/infobars/core/infobar.h" 13 #include "components/infobars/core/infobar.h"
12 #include "ui/gfx/image/image.h" 14 #include "ui/gfx/image/image.h"
13 15
14 // InfoBarDelegateProxy ------------------------------------------------------- 16 // InfoBarDelegateProxy -------------------------------------------------------
15 17
16 class GlobalConfirmInfoBar::DelegateProxy : public ConfirmInfoBarDelegate { 18 class GlobalConfirmInfoBar::DelegateProxy : public ConfirmInfoBarDelegate {
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 119
118 void GlobalConfirmInfoBar::DelegateProxy::Detach() { 120 void GlobalConfirmInfoBar::DelegateProxy::Detach() {
119 global_info_bar_.reset(); 121 global_info_bar_.reset();
120 } 122 }
121 123
122 // GlobalConfirmInfoBar ------------------------------------------------------- 124 // GlobalConfirmInfoBar -------------------------------------------------------
123 125
124 // static 126 // static
125 base::WeakPtr<GlobalConfirmInfoBar> GlobalConfirmInfoBar::Show( 127 base::WeakPtr<GlobalConfirmInfoBar> GlobalConfirmInfoBar::Show(
126 scoped_ptr<ConfirmInfoBarDelegate> delegate) { 128 scoped_ptr<ConfirmInfoBarDelegate> delegate) {
127 GlobalConfirmInfoBar* info_bar = new GlobalConfirmInfoBar(delegate.Pass()); 129 GlobalConfirmInfoBar* info_bar =
130 new GlobalConfirmInfoBar(std::move(delegate));
128 return info_bar->weak_factory_.GetWeakPtr(); 131 return info_bar->weak_factory_.GetWeakPtr();
129 } 132 }
130 133
131 void GlobalConfirmInfoBar::Close() { 134 void GlobalConfirmInfoBar::Close() {
132 delete this; 135 delete this;
133 } 136 }
134 137
135 GlobalConfirmInfoBar::GlobalConfirmInfoBar( 138 GlobalConfirmInfoBar::GlobalConfirmInfoBar(
136 scoped_ptr<ConfirmInfoBarDelegate> delegate) 139 scoped_ptr<ConfirmInfoBarDelegate> delegate)
137 : delegate_(delegate.Pass()), 140 : delegate_(std::move(delegate)),
138 browser_tab_strip_tracker_(this, nullptr, nullptr), 141 browser_tab_strip_tracker_(this, nullptr, nullptr),
139 weak_factory_(this) { 142 weak_factory_(this) {
140 browser_tab_strip_tracker_.Init( 143 browser_tab_strip_tracker_.Init(
141 BrowserTabStripTracker::InitWith::BROWSERS_IN_ACTIVE_DESKTOP); 144 BrowserTabStripTracker::InitWith::BROWSERS_IN_ACTIVE_DESKTOP);
142 } 145 }
143 146
144 GlobalConfirmInfoBar::~GlobalConfirmInfoBar() { 147 GlobalConfirmInfoBar::~GlobalConfirmInfoBar() {
145 while (!proxies_.empty()) { 148 while (!proxies_.empty()) {
146 auto it = proxies_.begin(); 149 auto it = proxies_.begin();
147 it->second->Detach(); 150 it->second->Detach();
(...skipping 10 matching lines...) Expand all
158 InfoBarService::FromWebContents(web_contents); 161 InfoBarService::FromWebContents(web_contents);
159 // WebContents from the tab strip must have the infobar service. 162 // WebContents from the tab strip must have the infobar service.
160 DCHECK(infobar_service); 163 DCHECK(infobar_service);
161 if (proxies_.find(infobar_service) != proxies_.end()) 164 if (proxies_.find(infobar_service) != proxies_.end())
162 return; 165 return;
163 166
164 scoped_ptr<GlobalConfirmInfoBar::DelegateProxy> proxy( 167 scoped_ptr<GlobalConfirmInfoBar::DelegateProxy> proxy(
165 new GlobalConfirmInfoBar::DelegateProxy(weak_factory_.GetWeakPtr())); 168 new GlobalConfirmInfoBar::DelegateProxy(weak_factory_.GetWeakPtr()));
166 GlobalConfirmInfoBar::DelegateProxy* proxy_ptr = proxy.get(); 169 GlobalConfirmInfoBar::DelegateProxy* proxy_ptr = proxy.get();
167 infobars::InfoBar* added_bar = infobar_service->AddInfoBar( 170 infobars::InfoBar* added_bar = infobar_service->AddInfoBar(
168 infobar_service->CreateConfirmInfoBar(proxy.Pass())); 171 infobar_service->CreateConfirmInfoBar(std::move(proxy)));
169 172
170 proxy_ptr->info_bar_ = added_bar; 173 proxy_ptr->info_bar_ = added_bar;
171 DCHECK(added_bar); 174 DCHECK(added_bar);
172 proxies_[infobar_service] = proxy_ptr; 175 proxies_[infobar_service] = proxy_ptr;
173 infobar_service->AddObserver(this); 176 infobar_service->AddObserver(this);
174 } 177 }
175 178
176 void GlobalConfirmInfoBar::TabChangedAt(content::WebContents* web_contents, 179 void GlobalConfirmInfoBar::TabChangedAt(content::WebContents* web_contents,
177 int index, 180 int index,
178 TabChangeType change_type) { 181 TabChangeType change_type) {
(...skipping 13 matching lines...) Expand all
192 break; 195 break;
193 } 196 }
194 } 197 }
195 } 198 }
196 199
197 void GlobalConfirmInfoBar::OnManagerShuttingDown( 200 void GlobalConfirmInfoBar::OnManagerShuttingDown(
198 infobars::InfoBarManager* manager) { 201 infobars::InfoBarManager* manager) {
199 manager->RemoveObserver(this); 202 manager->RemoveObserver(this);
200 proxies_.erase(manager); 203 proxies_.erase(manager);
201 } 204 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698