| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -25,9 +25,7 @@ const CGFloat kMaxTextViewHeight = 98;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#pragma mark -
 | 
					 | 
					 | 
					 | 
					#pragma mark -
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					@interface ConversationInputToolbar () <UIGestureRecognizerDelegate,
 | 
					 | 
					 | 
					 | 
					@interface ConversationInputToolbar () <ConversationTextViewToolbarDelegate, QuotedReplyPreviewDelegate>
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    ConversationTextViewToolbarDelegate,
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    QuotedReplyPreviewDelegate>
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					@property (nonatomic, readonly) ConversationStyle *conversationStyle;
 | 
					 | 
					 | 
					 | 
					@property (nonatomic, readonly) ConversationStyle *conversationStyle;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -111,7 +109,7 @@ const CGFloat kMaxTextViewHeight = 98;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    self.inputTextView.layer.cornerRadius = kMinTextViewHeight / 2.0f;
 | 
					 | 
					 | 
					 | 
					    self.inputTextView.layer.cornerRadius = kMinTextViewHeight / 2.0f;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    self.inputTextView.textViewToolbarDelegate = self;
 | 
					 | 
					 | 
					 | 
					    self.inputTextView.textViewToolbarDelegate = self;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    self.inputTextView.font = [UIFont ows_dynamicTypeBodyFont];
 | 
					 | 
					 | 
					 | 
					    self.inputTextView.font = [UIFont ows_dynamicTypeBodyFont];
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    [self.inputTextView setContentHuggingLow];
 | 
					 | 
					 | 
					 | 
					    [self.inputTextView setContentHuggingHorizontalLow];
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    _textViewHeightConstraint = [self.inputTextView autoSetDimension:ALDimensionHeight toSize:kMinTextViewHeight];
 | 
					 | 
					 | 
					 | 
					    _textViewHeightConstraint = [self.inputTextView autoSetDimension:ALDimensionHeight toSize:kMinTextViewHeight];
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -153,7 +151,6 @@ const CGFloat kMaxTextViewHeight = 98;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    UILongPressGestureRecognizer *longPressGestureRecognizer =
 | 
					 | 
					 | 
					 | 
					    UILongPressGestureRecognizer *longPressGestureRecognizer =
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)];
 | 
					 | 
					 | 
					 | 
					        [[UILongPressGestureRecognizer alloc] initWithTarget:self action:@selector(handleLongPress:)];
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    longPressGestureRecognizer.minimumPressDuration = 0;
 | 
					 | 
					 | 
					 | 
					    longPressGestureRecognizer.minimumPressDuration = 0;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    longPressGestureRecognizer.delegate = self;
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    [self.voiceMemoButton addGestureRecognizer:longPressGestureRecognizer];
 | 
					 | 
					 | 
					 | 
					    [self.voiceMemoButton addGestureRecognizer:longPressGestureRecognizer];
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    self.userInteractionEnabled = YES;
 | 
					 | 
					 | 
					 | 
					    self.userInteractionEnabled = YES;
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -375,17 +372,6 @@ const CGFloat kMaxTextViewHeight = 98;
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    }
 | 
					 | 
					 | 
					 | 
					    }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}
 | 
					 | 
					 | 
					 | 
					}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#pragma mark - UIGestureRecognizerDelegate
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					{
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //    if ([gestureRecognizer isKindOfClass:[UILongPressGestureRecognizer class]]) {
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //        return self.shouldShowVoiceMemoButton;
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //    } else {
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    return YES;
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    //    }
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#pragma mark - Voice Memo
 | 
					 | 
					 | 
					 | 
					#pragma mark - Voice Memo
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					- (void)showVoiceMemoUI
 | 
					 | 
					 | 
					 | 
					- (void)showVoiceMemoUI
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
 
 |