         
         collectionView?.dataSource = self
         collectionView?.delegate = self
+        // add a tap gesture for colleciotnview
+        let tapGesture = UITapGestureRecognizer(target: self, action: #selector(didTap(messageCollectionView:)))
+        collectionView?.addGestureRecognizer(tapGesture)
         
         updateCollectionViewInsets(top: self.topLayoutGuide.length, bottom: CGRectGetMaxY(collectionView!.frame) - CGRectGetMinY(self.inputToolbar!.frame))
     }

    }
}

// MARK: message data helper
public extension DUMessageData {
    var isOutgoingMessage: Bool {

    }
    
    
    // FIXME: we remove notification in viewDidDisappear for temporary
    override public func viewDidDisappear(animated: Bool) {
        super.viewDidDisappear(animated)
        clearForNotification()
