Skip to content

Commit b7d731f

Browse files
Merge pull request #333 from woocommerce/issue/331-mail-composer-style
OrderDetailsViewController: Email Composer Appearance
2 parents debdda3 + 490637b commit b7d731f

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

WooCommerce/Classes/ViewRelated/Dashboard/Settings/SettingsViewController.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ private extension SettingsViewController {
170170

171171
func displaySupportEmailComposer() {
172172
// Workaround: MFMailCompose isn't *FULLY* picking up UINavigationBar's WC's appearance. Title / Buttons look awful.
173-
// We're falling back to iOS's default appearence
173+
// We're falling back to iOS's default appearance
174174
UINavigationBar.applyDefaultAppearance()
175175

176176
// Subject + Composer

WooCommerce/Classes/ViewRelated/Orders/OrderDetails/OrderDetailsViewController.swift

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -587,16 +587,19 @@ extension OrderDetailsViewController: MFMessageComposeViewControllerDelegate {
587587
//
588588
extension OrderDetailsViewController: MFMailComposeViewControllerDelegate {
589589
func sendEmailIfPossible() {
590-
if MFMailComposeViewController.canSendMail() {
591-
guard let email = viewModel.order.billingAddress?.email else {
592-
return
593-
}
594-
595-
sendEmail(to: email)
590+
guard let email = viewModel.order.billingAddress?.email, MFMailComposeViewController.canSendMail() else {
591+
return
596592
}
593+
594+
sendEmail(to: email)
597595
}
598596

599597
private func sendEmail(to email: String) {
598+
// Workaround: MFMailCompose isn't *FULLY* picking up UINavigationBar's WC's appearance. Title / Buttons look awful.
599+
// We're falling back to iOS's default appearance
600+
UINavigationBar.applyDefaultAppearance()
601+
602+
// Composer
600603
let controller = MFMailComposeViewController()
601604
controller.setToRecipients([email])
602605
controller.mailComposeDelegate = self
@@ -605,6 +608,9 @@ extension OrderDetailsViewController: MFMailComposeViewControllerDelegate {
605608

606609
func mailComposeController(_ controller: MFMailComposeViewController, didFinishWith result: MFMailComposeResult, error: Error?) {
607610
controller.dismiss(animated: true, completion: nil)
611+
612+
// Workaround: Restore WC's navBar appearance
613+
UINavigationBar.applyWooAppearance()
608614
}
609615
}
610616

0 commit comments

Comments
 (0)