| 
						
						
						
					 | 
					 | 
					@ -1,6 +1,7 @@
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Copyright © 2022 Rangeproof Pty Ltd. All rights reserved.
 | 
					 | 
					 | 
					 | 
					// Copyright © 2022 Rangeproof Pty Ltd. All rights reserved.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import UIKit
 | 
					 | 
					 | 
					 | 
					import UIKit
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					import SessionUIKit
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import SignalUtilitiesKit
 | 
					 | 
					 | 
					 | 
					import SignalUtilitiesKit
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import SessionUtilitiesKit
 | 
					 | 
					 | 
					 | 
					import SessionUtilitiesKit
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					import SessionMessagingKit
 | 
					 | 
					 | 
					 | 
					import SessionMessagingKit
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
					 | 
					@ -774,15 +775,21 @@ final class VisibleMessageCell: MessageCell, TappableLabelDelegate {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    // MARK: - Interaction
 | 
					 | 
					 | 
					 | 
					    // MARK: - Interaction
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    
 | 
					 | 
					 | 
					 | 
					    
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
 | 
					 | 
					 | 
					 | 
					    override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//        if let bodyTappableLabel = bodyTappableLabel {
 | 
					 | 
					 | 
					 | 
					        // We are currently using Appium to do automated UI testing, unfortunately it seems to run into
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//            let btIngetBodyTappableLabelCoordinates = convert(point, to: bodyTappableLabel)
 | 
					 | 
					 | 
					 | 
					        // issues when trying to long-press an element which has custom interaction logic - the TappableLabel
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//            if bodyTappableLabel.bounds.contains(btIngetBodyTappableLabelCoordinates) {
 | 
					 | 
					 | 
					 | 
					        // only needs to custom handle touches for interacting with links so we check to see if it contains
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//                return bodyTappableLabel
 | 
					 | 
					 | 
					 | 
					        // links before forwarding touches to it
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//            }
 | 
					 | 
					 | 
					 | 
					        if let bodyTappableLabel: TappableLabel = bodyTappableLabel, bodyTappableLabel.containsLinks {
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//        }
 | 
					 | 
					 | 
					 | 
					            let bodyTappableLabelLocalTapCoordinate: CGPoint = convert(point, to: bodyTappableLabel)
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//        return super.hitTest(point, with: event)
 | 
					 | 
					 | 
					 | 
					            
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    }
 | 
					 | 
					 | 
					 | 
					            if bodyTappableLabel.bounds.contains(bodyTappableLabelLocalTapCoordinate) {
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                return bodyTappableLabel
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					        return super.hitTest(point, with: event)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    override func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
 | 
					 | 
					 | 
					 | 
					    override func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        return true // Needed for the pan gesture recognizer to work with the table view's pan gesture recognizer
 | 
					 | 
					 | 
					 | 
					        return true // Needed for the pan gesture recognizer to work with the table view's pan gesture recognizer
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
 
 |