blob: 43b1e384df7af8633454beefef2e295decc185d6 [file] [log] [blame]
// Copyright 2020 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#import "ios/chrome/browser/download/confirm_download_replacing_overlay.h"
#import "base/bind.h"
#import "components/strings/grit/components_strings.h"
#import "ios/chrome/browser/overlays/public/common/confirmation/confirmation_overlay_response_util.h"
#import "ios/chrome/grit/ios_strings.h"
#import "ui/base/l10n/l10n_util_mac.h"
#if !defined(__has_feature) || !__has_feature(objc_arc)
#error "This file requires ARC support."
#endif
const char kDownloadReplaceActionName[] = "IOSDownloadConfirmReplace";
const char kDownloadDoNotReplaceActionName[] = "IOSDownloadDoNotReplace";
using l10n_util::GetNSString;
OVERLAY_USER_DATA_SETUP_IMPL(ConfirmDownloadReplacingRequest);
void ConfirmDownloadReplacingRequest::CreateAuxiliaryData(
base::SupportsUserData* user_data) {
const std::vector<alert_overlays::ButtonConfig> buttons{
alert_overlays::ButtonConfig(GetNSString(IDS_OK),
kDownloadReplaceActionName),
alert_overlays::ButtonConfig(GetNSString(IDS_CANCEL),
kDownloadDoNotReplaceActionName,
UIAlertActionStyleCancel)};
alert_overlays::AlertRequest::CreateForUserData(
user_data, GetNSString(IDS_IOS_DOWNLOAD_MANAGER_REPLACE_CONFIRMATION),
GetNSString(IDS_IOS_DOWNLOAD_MANAGER_REPLACE_CONFIRMATION_MESSAGE),
/*accessibility_identifier=*/nil,
/*text_fields=*/nil, buttons,
GetConfirmationResponseConverter(/*confirm_button_index=*/0));
}