diff --git a/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalInputAccessoryView.swift b/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalInputAccessoryView.swift index 22c553b7f..643ddc535 100644 --- a/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalInputAccessoryView.swift +++ b/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalInputAccessoryView.swift @@ -127,16 +127,13 @@ class AttachmentApprovalInputAccessoryView: UIView { attachmentTextToolbar.textView.resignFirstResponder() } } else if (isEditingCaptions) { + // While editing captions, the keyboard should always remain visible. if !attachmentCaptionToolbar.textView.isFirstResponder { attachmentCaptionToolbar.textView.becomeFirstResponder() } - } else { - if !attachmentTextToolbar.textView.isFirstResponder { - attachmentTextToolbar.textView.becomeFirstResponder() - } } - - invalidateIntrinsicContentSize() + // NOTE: We don't automatically make attachmentTextToolbar.textView + // first responder; layoutSubviews() } diff --git a/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalViewController.swift b/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalViewController.swift index 5d5474b7d..f9ecc8e0d 100644 --- a/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalViewController.swift +++ b/SignalMessaging/ViewControllers/AttachmentApproval/AttachmentApprovalViewController.swift @@ -301,8 +301,8 @@ public class AttachmentApprovalViewController: UIPageViewController, UIPageViewC } private func updateControlVisibility() { - if !shouldHideControls { - self.becomeFirstResponder() + if !shouldHideControls, !isFirstResponder { + becomeFirstResponder() } bottomToolView.shouldHideControls = shouldHideControls }