 
       when 'PaneRemoved'
         @mySnapshot.delete paneHash  if paneHash
-
-
-  watchParticipant: (nickname) -> @myWatchMap.set nickname, nickname
-
-  unwatchParticipant: (nickname) -> @myWatchMap.delete nickname
-
-
-  bindRealtimeEvents: ->
-
-    @rtm.bindRealtimeListeners @changes, 'list'
-    @rtm.bindRealtimeListeners @broadcastMessages, 'list'
-    @rtm.bindRealtimeListeners @myWatchMap, 'map'
-    @rtm.bindRealtimeListeners @permissions, 'map'
-
-    @rtm.on 'ValuesAddedToList', (list, event) =>
-
-      [value] = event.values
-
-      switch list
-        when @changes           then @handleChange value
-        when @broadcastMessages then @handleBroadcastMessage value
-
-    @rtm.on 'ValuesRemovedFromList', (list, event) =>
-
-      @handleChange event.values[0]  if list is @changes
-
-    @rtm.on 'MapValueChanged', (map, event) =>
-
-      if map is @myWatchMap
-        @handleWatchMapChange event
-
-      else if map is @permissions
-        @handlePermissionMapChange event
-
-
-  handlePermissionMapChange: (event) ->
-
-    @chat.settingsPane.emit 'PermissionChanged', event
-
-    {property, newValue} = event
-
-    return  unless property is KD.nick()
-
-    if      newValue is 'edit' then @makeEditable()
-    else if newValue is 'read' then @makeReadOnly()
-
-
-  handleWatchMapChange: (event) ->
-
-    {property, newValue, oldValue} = event
-
-    if newValue is property
-      @statusBar.emit 'ParticipantWatched', property
-
-    else unless newValue
-      @statusBar.emit 'ParticipantUnwatched', property
 
 
   handleChange: (change) ->

    return panes


  resurrectSnapshot: ->

    return  if @collaborationJustInitialized or @fakeTabView

    mySnapshot   = @mySnapshot.values().filter (item) -> return not item.isInitial
    hostSnapshot = @rtm.getFromModel("#{@collaborationHost}Snapshot")?.values()
    snapshot     = if hostSnapshot then mySnapshot.concat hostSnapshot else mySnapshot

    @forEachSubViewInIDEViews_ (pane) =>
      @removePaneFromTabView pane  if pane.isInitial

    for change in snapshot when change.context
      @changeActiveTabView change.context.paneType
      @createPaneFromChange change


  changeActiveTabView: (paneType) ->

    if paneType is 'terminal'

        @mySnapshot.set paneHash, change


  showModal: (modalOptions = {}, callback = noop) ->
    return  if @modal

