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

Side by Side Diff: chrome/browser/download/download_request_infobar_delegate.cc

Issue 812823002: Remove dependency of infobars component on the embedder (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix compilation on Android Created 6 years 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/download/download_request_infobar_delegate.h" 5 #include "chrome/browser/download/download_request_infobar_delegate.h"
6 6
7 #include "chrome/browser/infobars/infobar_service.h" 7 #include "chrome/browser/infobars/infobar_service.h"
8 #include "chrome/grit/generated_resources.h" 8 #include "chrome/grit/generated_resources.h"
9 #include "components/infobars/core/infobar.h" 9 #include "components/infobars/core/infobar.h"
10 #include "grit/theme_resources.h" 10 #include "grit/theme_resources.h"
(...skipping 18 matching lines...) Expand all
29 // |web_contents| may not have a InfoBarService if it's actually a 29 // |web_contents| may not have a InfoBarService if it's actually a
30 // WebContents like those used for extension popups/bubbles and hosted apps 30 // WebContents like those used for extension popups/bubbles and hosted apps
31 // etc. 31 // etc.
32 // TODO(benjhayden): If this is an automatic download from an extension, 32 // TODO(benjhayden): If this is an automatic download from an extension,
33 // it would be convenient for the extension author if we send a message to 33 // it would be convenient for the extension author if we send a message to
34 // the extension's DevTools console (as we do for CSP) about how 34 // the extension's DevTools console (as we do for CSP) about how
35 // extensions should use chrome.downloads.download() (requires the 35 // extensions should use chrome.downloads.download() (requires the
36 // "downloads" permission) to automatically download >1 files. 36 // "downloads" permission) to automatically download >1 files.
37 host->Cancel(); 37 host->Cancel();
38 } else { 38 } else {
39 infobar_service->AddInfoBar(ConfirmInfoBarDelegate::CreateInfoBar( 39 infobar_service->AddInfoBar(infobar_service->CreateConfirmInfoBar(
40 scoped_ptr<ConfirmInfoBarDelegate>( 40 scoped_ptr<ConfirmInfoBarDelegate>(
41 new DownloadRequestInfoBarDelegate(host)))); 41 new DownloadRequestInfoBarDelegate(host))));
42 } 42 }
43 } 43 }
44 44
45 // static 45 // static
46 void DownloadRequestInfoBarDelegate::SetCallbackForTesting( 46 void DownloadRequestInfoBarDelegate::SetCallbackForTesting(
47 FakeCreateCallback* callback) { 47 FakeCreateCallback* callback) {
48 DownloadRequestInfoBarDelegate::callback_ = callback; 48 DownloadRequestInfoBarDelegate::callback_ = callback;
49 } 49 }
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
81 81
82 bool DownloadRequestInfoBarDelegate::Cancel() { 82 bool DownloadRequestInfoBarDelegate::Cancel() {
83 DCHECK(!responded_); 83 DCHECK(!responded_);
84 responded_ = true; 84 responded_ = true;
85 if (host_) { 85 if (host_) {
86 // This may invalidate |host_|. 86 // This may invalidate |host_|.
87 host_->Cancel(); 87 host_->Cancel();
88 } 88 }
89 return !host_; 89 return !host_;
90 } 90 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698