From b4d3e8e7441a331bebaeb500d57094ac469e9b5c Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Mon, 19 Jun 2017 18:01:13 -0400 Subject: [PATCH 1/3] Fix: tapping input obscures last messages // FREEBIE --- .../ConversationView/OWSMessagesComposerTextView.m | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m index 27081c8e3..7a923bb7b 100644 --- a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m +++ b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m @@ -11,6 +11,9 @@ NS_ASSUME_NONNULL_BEGIN - (BOOL)canBecomeFirstResponder { + // Intercept to scroll to bottom when text view is tapped. + [self.textViewPasteDelegate textViewDidChangeSize]; + return YES; } From 8fc22891521eeb96c1a884b59ec23c77c1a8c4ed Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Tue, 20 Jun 2017 09:31:18 -0400 Subject: [PATCH 2/3] prefer becomeFirstResponder Feels a little more reasonable than interecepting canBecomeFirstResponder // FREEBIE --- .../ConversationView/OWSMessagesComposerTextView.m | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m index 7a923bb7b..597f72341 100644 --- a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m +++ b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m @@ -11,12 +11,19 @@ NS_ASSUME_NONNULL_BEGIN - (BOOL)canBecomeFirstResponder { - // Intercept to scroll to bottom when text view is tapped. - [self.textViewPasteDelegate textViewDidChangeSize]; - return YES; } +- (BOOL)becomeFirstResponder +{ + BOOL becameFirstResponder = [super becomeFirstResponder]; + if (becameFirstResponder) { + // Intercept to scroll to bottom when text view is tapped. + [self.textViewPasteDelegate textViewDidChangeSize]; + } + return becameFirstResponder; +} + - (BOOL)pasteboardHasPossibleAttachment { // We don't want to load/convert images more than once so we From 0419d35f121f700c165e5888a6faa6af64b55ff3 Mon Sep 17 00:00:00 2001 From: Michael Kirk Date: Tue, 20 Jun 2017 11:02:43 -0400 Subject: [PATCH 3/3] CR: rename method not always resized when used // FREEBIE --- .../ConversationView/MessagesViewController.m | 2 +- .../ConversationView/OWSMessagesComposerTextView.h | 2 +- .../ConversationView/OWSMessagesComposerTextView.m | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Signal/src/ViewControllers/ConversationView/MessagesViewController.m b/Signal/src/ViewControllers/ConversationView/MessagesViewController.m index d24c61223..ae0e1e3aa 100644 --- a/Signal/src/ViewControllers/ConversationView/MessagesViewController.m +++ b/Signal/src/ViewControllers/ConversationView/MessagesViewController.m @@ -3946,7 +3946,7 @@ typedef enum : NSUInteger { [self presentViewController:controller animated:YES completion:nil]; } -- (void)textViewDidChangeSize +- (void)textViewDidChangePosition { OWSAssert([NSThread isMainThread]); diff --git a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.h b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.h index 080608b18..e25b6dbc5 100644 --- a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.h +++ b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.h @@ -12,7 +12,7 @@ NS_ASSUME_NONNULL_BEGIN - (void)didPasteAttachment:(SignalAttachment *_Nullable)attachment; -- (void)textViewDidChangeSize; +- (void)textViewDidChangePosition; @end diff --git a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m index 597f72341..077ce03f8 100644 --- a/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m +++ b/Signal/src/ViewControllers/ConversationView/OWSMessagesComposerTextView.m @@ -19,7 +19,7 @@ NS_ASSUME_NONNULL_BEGIN BOOL becameFirstResponder = [super becomeFirstResponder]; if (becameFirstResponder) { // Intercept to scroll to bottom when text view is tapped. - [self.textViewPasteDelegate textViewDidChangeSize]; + [self.textViewPasteDelegate textViewDidChangePosition]; } return becameFirstResponder; } @@ -61,7 +61,7 @@ NS_ASSUME_NONNULL_BEGIN [super setFrame:frame]; if (didChangeSize && isNonEmpty) { - [self.textViewPasteDelegate textViewDidChangeSize]; + [self.textViewPasteDelegate textViewDidChangePosition]; } } @@ -73,7 +73,7 @@ NS_ASSUME_NONNULL_BEGIN [super setBounds:bounds]; if (didChangeSize && isNonEmpty) { - [self.textViewPasteDelegate textViewDidChangeSize]; + [self.textViewPasteDelegate textViewDidChangePosition]; } }