     }
         
     override func addTimestampLabel(toCell cell: MXKRoomBubbleTableViewCell, cellData: RoomBubbleCellData) {
-
+        
         // If cell contains a bubble background, add the timestamp inside of it
-        if let bubbleBackgroundView = cell.messageBubbleBackgroundView, bubbleBackgroundView.isHidden == false {
-
-            let componentIndex = cellData.mostRecentComponentIndex
-
-            guard let bubbleComponents = cellData.bubbleComponents,
-                    componentIndex < bubbleComponents.count else {
-                      return
-                  }
-
-            let component = bubbleComponents[componentIndex]
-
-            let timestampLabel = self.createTimestampLabel(cellData: cellData,
-                                                           bubbleComponent: component,
-                                                           viewTag: componentIndex)
+        if let bubbleBackgroundView = cell.messageBubbleBackgroundView, bubbleBackgroundView.isHidden == false, let timestampLabel = self.createTimestampLabel(for: cellData) {
+
             timestampLabel.translatesAutoresizingMaskIntoConstraints = false
 
             cell.addTemporarySubview(timestampLabel)

                trailingConstraint,
                bottomConstraint
            ])
        } else {
            super.addTimestampLabel(toCell: cell, cellData: cellData)
        }

    
    // MARK: - Private
    
    private func createTimestampLabel(cellData: MXKRoomBubbleCellData, bubbleComponent: MXKRoomBubbleComponent, viewTag: Int, textColor: UIColor) -> UILabel {
        
        let timeLabel = UILabel()

        timeLabel.text = cellData.eventFormatter.timeString(from: bubbleComponent.date)
        timeLabel.textAlignment = .right
        timeLabel.textColor = textColor
        timeLabel.font = self.theme.fonts.caption2
        timeLabel.adjustsFontSizeToFitWidth = true
        timeLabel.tag = viewTag
        timeLabel.accessibilityIdentifier = "timestampLabel"
        
        return timeLabel
    }
    
    func createTimestampLabel(for cellData: RoomBubbleCellData) -> UILabel? {
        return self.createTimestampLabel(for: cellData, textColor: self.theme.textSecondaryColor)
    }
    
    private func createTimestampLabel(for cellData: RoomBubbleCellData, textColor: UIColor) -> UILabel? {
        
        let componentIndex = cellData.mostRecentComponentIndex
        
        guard let bubbleComponents = cellData.bubbleComponents,
              componentIndex < bubbleComponents.count else {
                  return nil
              }
        
        let component = bubbleComponents[componentIndex]

        return self.createTimestampLabel(cellData: cellData, bubbleComponent: component, viewTag: componentIndex, textColor: textColor)
    }
    
    private func canShowTimestamp(forCellData cellData: MXKRoomBubbleCellData) -> Bool {
