 
 
   addMessage: (message) ->
+
     return  if @messageMap[message.id]
 
+    @removeFakeMessage message.requestData  if message.requestData
+
+    # insert the real message.
     @messageMap[message.id] = yes
     @prependMessage message, @listController.getItemCount()
 
 
   removeMessage: (message) ->
+
     return  unless @messageMap[message.id]
     super message
 


    @messageMap = {}

    @createParticipantsView()

    @input = new ReplyInputWidget {channel}

    @listController.getListView().on 'ItemWasAdded', @bound 'messageAdded'
    @listController.getListView().on 'ItemWasRemoved', @bound 'messageRemoved'


  bindChannelEvents: (channel) ->

    return  unless channel



  messageRemoved: (item, index) ->

    return  if item.getData().isFake

    {data} = item

