Index: ios/chrome/browser/payments/payment_items_display_view_controller.mm |
diff --git a/ios/chrome/browser/payments/payment_items_display_view_controller.mm b/ios/chrome/browser/payments/payment_items_display_view_controller.mm |
index 53c03ed609664a12c929bd67a72af61154a9ccd6..afc964554a3fd35ea85b2e79049eaacd20c3bbbf 100644 |
--- a/ios/chrome/browser/payments/payment_items_display_view_controller.mm |
+++ b/ios/chrome/browser/payments/payment_items_display_view_controller.mm |
@@ -4,9 +4,7 @@ |
#import "ios/chrome/browser/payments/payment_items_display_view_controller.h" |
-#import "base/ios/weak_nsobject.h" |
#include "base/mac/foundation_util.h" |
-#include "base/mac/scoped_nsobject.h" |
#include "base/strings/sys_string_conversions.h" |
#include "base/strings/utf_string_conversions.h" |
#include "components/autofill/core/browser/credit_card.h" |
@@ -23,6 +21,10 @@ |
#import "ios/third_party/material_roboto_font_loader_ios/src/src/MaterialRobotoFontLoader.h" |
#include "ui/base/l10n/l10n_util.h" |
+#if !defined(__has_feature) || !__has_feature(objc_arc) |
+#error "This file requires ARC support." |
+#endif |
+ |
NSString* const kPaymentItemsDisplayCollectionViewId = |
@"kPaymentItemsDisplayCollectionViewId"; |
NSString* const kPaymentItemsDisplayItemId = @"kPaymentItemsDisplayItemId"; |
@@ -44,8 +46,7 @@ typedef NS_ENUM(NSInteger, ItemType) { |
} // namespace |
@interface PaymentItemsDisplayViewController () { |
- base::WeakNSProtocol<id<PaymentItemsDisplayViewControllerDelegate>> _delegate; |
- base::scoped_nsobject<MDCFlatButton> _payButton; |
+ MDCFlatButton* _payButton; |
// The PaymentRequest object owning an instance of web::PaymentRequest as |
// provided by the page invoking the Payment Request API. This is a weak |
@@ -62,6 +63,7 @@ typedef NS_ENUM(NSInteger, ItemType) { |
@end |
@implementation PaymentItemsDisplayViewController |
+@synthesize delegate = _delegate; |
- (instancetype)initWithPaymentRequest:(PaymentRequest*)paymentRequest |
payButtonEnabled:(BOOL)payButtonEnabled { |
@@ -80,7 +82,7 @@ typedef NS_ENUM(NSInteger, ItemType) { |
[self navigationItem].leftBarButtonItem = returnButton; |
// Set up right (pay) button. |
- _payButton.reset([[MDCFlatButton alloc] init]); |
+ _payButton = [[MDCFlatButton alloc] init]; |
[_payButton |
setTitle:l10n_util::GetNSString(IDS_IOS_PAYMENT_REQUEST_PAY_BUTTON) |
forState:UIControlStateNormal]; |
@@ -102,8 +104,7 @@ typedef NS_ENUM(NSInteger, ItemType) { |
// height of the bar. We don't want that for the button so we use a UIView |
// here to contain the button instead and the button is vertically centered |
// inside the full bar height. |
- UIView* buttonView = |
- [[[UIView alloc] initWithFrame:CGRectZero] autorelease]; |
+ UIView* buttonView = [[UIView alloc] initWithFrame:CGRectZero]; |
[buttonView addSubview:_payButton]; |
// Navigation bar button items are aligned with the trailing edge of the |
// screen. Make the enclosing view larger here. The pay button will be |
@@ -115,7 +116,7 @@ typedef NS_ENUM(NSInteger, ItemType) { |
buttonView.bounds = buttonViewBounds; |
UIBarButtonItem* payButtonItem = |
- [[[UIBarButtonItem alloc] initWithCustomView:buttonView] autorelease]; |
+ [[UIBarButtonItem alloc] initWithCustomView:buttonView]; |
[self navigationItem].rightBarButtonItem = payButtonItem; |
_paymentRequest = paymentRequest; |
@@ -123,14 +124,6 @@ typedef NS_ENUM(NSInteger, ItemType) { |
return self; |
} |
-- (id<PaymentItemsDisplayViewControllerDelegate>)delegate { |
- return _delegate.get(); |
-} |
- |
-- (void)setDelegate:(id<PaymentItemsDisplayViewControllerDelegate>)delegate { |
- _delegate.reset(delegate); |
-} |
- |
- (void)onReturn { |
[_payButton setEnabled:NO]; |
[_delegate paymentItemsDisplayViewControllerDidReturn:self]; |
@@ -150,7 +143,7 @@ typedef NS_ENUM(NSInteger, ItemType) { |
// Add the total entry. |
PriceItem* totalItem = |
- [[[PriceItem alloc] initWithType:ItemTypePaymentItemTotal] autorelease]; |
+ [[PriceItem alloc] initWithType:ItemTypePaymentItemTotal]; |
totalItem.accessibilityIdentifier = kPaymentItemsDisplayItemId; |
totalItem.item = |
base::SysUTF16ToNSString(_paymentRequest->payment_details().total.label); |
@@ -168,7 +161,7 @@ typedef NS_ENUM(NSInteger, ItemType) { |
for (const auto& paymentItem : |
_paymentRequest->payment_details().display_items) { |
PriceItem* paymentItemItem = |
- [[[PriceItem alloc] initWithType:ItemTypePaymentItem] autorelease]; |
+ [[PriceItem alloc] initWithType:ItemTypePaymentItem]; |
paymentItemItem.accessibilityIdentifier = kPaymentItemsDisplayItemId; |
paymentItemItem.item = base::SysUTF16ToNSString(paymentItem.label); |
payments::CurrencyFormatter* currencyFormatter = |