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
3 // found in the LICENSE file.
5 #include "chrome/browser/download/download_permission_request.h"
7 #include "chrome/grit/generated_resources.h"
8 #include "content/public/browser/web_contents.h"
9 #include "grit/theme_resources.h"
10 #include "ui/base/l10n/l10n_util.h"
12 DownloadPermissionRequest::DownloadPermissionRequest(
13 base::WeakPtr
<DownloadRequestLimiter::TabDownloadState
> host
)
16 DownloadPermissionRequest::~DownloadPermissionRequest() {}
18 int DownloadPermissionRequest::GetIconID() const {
19 return IDR_INFOBAR_MULTIPLE_DOWNLOADS
;
22 base::string16
DownloadPermissionRequest::GetMessageText() const {
23 return l10n_util::GetStringUTF16(IDS_MULTI_DOWNLOAD_WARNING
);
26 base::string16
DownloadPermissionRequest::GetMessageTextFragment() const {
27 return l10n_util::GetStringUTF16(IDS_MULTI_DOWNLOAD_PERMISSION_FRAGMENT
);
30 bool DownloadPermissionRequest::HasUserGesture() const {
31 // TODO(gbillock): user gesture for multiple downloads is difficult to
32 // propagate, and the normal thing is that it is background.
36 GURL
DownloadPermissionRequest::GetRequestingHostname() const {
37 const content::WebContents
* web_contents
= host_
->web_contents();
39 return web_contents
->GetURL();
44 void DownloadPermissionRequest::PermissionGranted() {
46 // This may invalidate |host_|.
51 void DownloadPermissionRequest::PermissionDenied() {
53 // This may invalidate |host_|.
58 void DownloadPermissionRequest::Cancelled() {
59 // TODO(gbillock): There's currently no suitable method for telling the host
60 // that a request is cancelled.
63 void DownloadPermissionRequest::RequestFinished() {