| 
						
						
							
								
							
						
						
					 | 
					 | 
					@ -139,22 +139,24 @@ final class ConversationCell : UITableViewCell {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        unreadMessagesIndicatorView.alpha = threadViewModel.hasUnreadMessages ? 1 : 0.0001 // Setting the alpha to exactly 0 causes an issue on iOS 12
 | 
					 | 
					 | 
					 | 
					        unreadMessagesIndicatorView.alpha = threadViewModel.hasUnreadMessages ? 1 : 0.0001 // Setting the alpha to exactly 0 causes an issue on iOS 12
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        profilePictureView.openGroupProfilePicture = nil
 | 
					 | 
					 | 
					 | 
					        profilePictureView.openGroupProfilePicture = nil
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        if threadViewModel.isGroupThread {
 | 
					 | 
					 | 
					 | 
					        if threadViewModel.isGroupThread {
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            if threadViewModel.name == "Loki Public Chat" {
 | 
					 | 
					 | 
					 | 
					            if threadViewModel.name == "Loki Public Chat"
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                || threadViewModel.name == "Session Public Chat" { // Override the profile picture for the Loki Public Chat and the Session Public Chat
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                profilePictureView.hexEncodedPublicKey = ""
 | 
					 | 
					 | 
					 | 
					                profilePictureView.hexEncodedPublicKey = ""
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                profilePictureView.isRSSFeed = true
 | 
					 | 
					 | 
					 | 
					                profilePictureView.isRSSFeed = true
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            } else {
 | 
					 | 
					 | 
					 | 
					            } else if let openGroupProfilePicture = (threadViewModel.threadRecord as! TSGroupThread).groupModel.groupImage { // An open group with a profile picture
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                if let openGroupProfilePicture = (threadViewModel.threadRecord as! TSGroupThread).groupModel.groupImage {
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                profilePictureView.openGroupProfilePicture = openGroupProfilePicture
 | 
					 | 
					 | 
					 | 
					                profilePictureView.openGroupProfilePicture = openGroupProfilePicture
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                } else {
 | 
					 | 
					 | 
					 | 
					            } else if (threadViewModel.threadRecord as! TSGroupThread).groupModel.groupType == .openGroup
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                || (threadViewModel.threadRecord as! TSGroupThread).groupModel.groupType == .rssFeed { // An open group without a profile picture or an RSS feed
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                profilePictureView.hexEncodedPublicKey = ""
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					                profilePictureView.isRSSFeed = true
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					            } else { // A closed group
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                var users = MentionsManager.userPublicKeyCache[threadViewModel.threadRecord.uniqueId!] ?? []
 | 
					 | 
					 | 
					 | 
					                var users = MentionsManager.userPublicKeyCache[threadViewModel.threadRecord.uniqueId!] ?? []
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                users.remove(getUserHexEncodedPublicKey())
 | 
					 | 
					 | 
					 | 
					                users.remove(getUserHexEncodedPublicKey())
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                let randomUsers = users.sorted().prefix(2) // Sort to provide a level of stability
 | 
					 | 
					 | 
					 | 
					                let randomUsers = users.sorted().prefix(2) // Sort to provide a level of stability
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                profilePictureView.hexEncodedPublicKey = randomUsers.count >= 1 ? randomUsers[0] : ""
 | 
					 | 
					 | 
					 | 
					                profilePictureView.hexEncodedPublicKey = randomUsers.count >= 1 ? randomUsers[0] : ""
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                profilePictureView.additionalHexEncodedPublicKey = randomUsers.count >= 2 ? randomUsers[1] : ""
 | 
					 | 
					 | 
					 | 
					                profilePictureView.additionalHexEncodedPublicKey = randomUsers.count >= 2 ? randomUsers[1] : ""
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            }
 | 
					 | 
					 | 
					 | 
					            }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                profilePictureView.isRSSFeed = (threadViewModel.threadRecord as? TSGroupThread)?.isRSSFeed ?? false
 | 
					 | 
					 | 
					 | 
					        } else { // A one-on-one chat
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            }
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					        } else {
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            profilePictureView.hexEncodedPublicKey = threadViewModel.contactIdentifier!
 | 
					 | 
					 | 
					 | 
					            profilePictureView.hexEncodedPublicKey = threadViewModel.contactIdentifier!
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            profilePictureView.additionalHexEncodedPublicKey = nil
 | 
					 | 
					 | 
					 | 
					            profilePictureView.additionalHexEncodedPublicKey = nil
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					            profilePictureView.isRSSFeed = false
 | 
					 | 
					 | 
					 | 
					            profilePictureView.isRSSFeed = false
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
 
 |