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

Unified Diff: ios/chrome/browser/ui/payments/contact_info_edit_coordinator.mm

Issue 2944083003: [Payment Request] Fixes modally presented editors (Closed)
Patch Set: Addressed comment Created 3 years, 6 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 side-by-side diff with in-line comments
Download patch
Index: ios/chrome/browser/ui/payments/contact_info_edit_coordinator.mm
diff --git a/ios/chrome/browser/ui/payments/contact_info_edit_coordinator.mm b/ios/chrome/browser/ui/payments/contact_info_edit_coordinator.mm
index cec036f3914103a6ab1797c33b00032c787215f5..fce47e035d709964840e4db15ade1244126a5bd2 100644
--- a/ios/chrome/browser/ui/payments/contact_info_edit_coordinator.mm
+++ b/ios/chrome/browser/ui/payments/contact_info_edit_coordinator.mm
@@ -31,7 +31,10 @@ using ::AutofillTypeFromAutofillUIType;
@interface ContactInfoEditCoordinator ()
-@property(nonatomic, strong) PaymentRequestEditViewController* viewController;
+@property(nonatomic, strong) UINavigationController* viewController;
+
+@property(nonatomic, strong)
+ PaymentRequestEditViewController* editViewController;
@property(nonatomic, strong) ContactInfoEditMediator* mediator;
@@ -43,25 +46,33 @@ using ::AutofillTypeFromAutofillUIType;
@synthesize paymentRequest = _paymentRequest;
@synthesize delegate = _delegate;
@synthesize viewController = _viewController;
+@synthesize editViewController = _editViewController;
@synthesize mediator = _mediator;
- (void)start {
- self.viewController = [[PaymentRequestEditViewController alloc] init];
+ self.editViewController = [[PaymentRequestEditViewController alloc] init];
// TODO(crbug.com/602666): Title varies depending on what field is missing.
// e.g., Add Email vs. Add Phone Number.
NSString* title =
self.profile
? l10n_util::GetNSString(IDS_PAYMENTS_EDIT_CONTACT_DETAILS_LABEL)
: l10n_util::GetNSString(IDS_PAYMENTS_ADD_CONTACT_DETAILS_LABEL);
- [self.viewController setTitle:title];
- [self.viewController setDelegate:self];
- [self.viewController setValidatorDelegate:self];
+ [self.editViewController setTitle:title];
+ [self.editViewController setDelegate:self];
+ [self.editViewController setValidatorDelegate:self];
self.mediator = [[ContactInfoEditMediator alloc]
initWithPaymentRequest:self.paymentRequest
profile:self.profile];
- [self.mediator setConsumer:self.viewController];
- [self.viewController setDataSource:self.mediator];
- [self.viewController loadModel];
+ [self.mediator setConsumer:self.editViewController];
+ [self.editViewController setDataSource:self.mediator];
+ [self.editViewController loadModel];
+
+ self.viewController = [[UINavigationController alloc]
+ initWithRootViewController:self.editViewController];
+ [self.viewController setModalPresentationStyle:UIModalPresentationFormSheet];
+ [self.viewController
+ setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
+ [self.viewController setNavigationBarHidden:YES];
[[self baseViewController] presentViewController:self.viewController
animated:YES
@@ -72,6 +83,7 @@ using ::AutofillTypeFromAutofillUIType;
[[self.viewController presentingViewController]
dismissViewControllerAnimated:YES
completion:nil];
+ self.editViewController = nil;
self.viewController = nil;
}

Powered by Google App Engine
This is Rietveld 408576698