     grammar = @editor.getGrammar()
     @pairingChannel.trigger 'client-grammar-sync', grammar.scopeName
 
-  syncMarker: ->
-
-    lastScreenRow = @editor.getLastScreenRow()
-
-    @editor.onDidChangeCursorPosition (event) =>
-      if event.newBufferPosition.toArray()[0] isnt event.oldBufferPosition.toArray()[0]
-        newLineNumber = @editor.getCursorScreenRow()
-        if @editor.getCursorScreenRow() > lastScreenRow
-          console.log 'expansion'
-          target = $('atom-text-editor#pusht::shadow .line-numbers')[0]
-          self = @
-          observer = new MutationObserver (mutations) ->
-            console.log mutations
-            self.clearMarkers(self.markerColour)
-            self.addMarker(newLineNumber, self.markerColour)
-            self.pairingChannel.trigger 'client-cursor-moved', {colour: self.markerColour, line: newLineNumber}
-            @disconnect()
-          config = {attributes: true, childList: true, characterData: true}
-          observer.observe target, config
-        else if @editor.getSelectedText() isnt ""
-          console.log 'selection'
-          rows = @editor.getSelectedBufferRange().getRows()
-          @clearMarkers(@markerColour)
-          @markRows(rows, @markerColour)
-        else
-          console.log 'movement'
-          @clearMarkers(@markerColour)
-          @addMarker(newLineNumber, @markerColour)
-          @pairingChannel.trigger 'client-cursor-moved', {colour: @markerColour, line: newLineNumber}
-        lastScreenRow = @editor.getLastScreenRow()
-
-
-  markRows: (rows, colour, triggerEnabled = true) ->
+  markRows: (rows, colour) ->
     _.each rows, (row) => @addMarker(row, colour)
-    console.log 'sending selection'
-    if triggerEnabled then @pairingChannel.trigger 'client-cursor-moved', {colour: @markerColour, selection: true, rows: rows}
 
   clearMarkers: (colour)->
     $("atom-text-editor#pusht::shadow .line-number").each (index, line) =>


      triggerPush = false

      cursorPosition = @editor.getCursorBufferPosition().toArray()
      cursor = @editor.getCursor()

      if data.deletion
        buffer.delete oldRange
        @editor.scrollToBufferPosition(oldRange.start)
        cursor.setBufferPosition(cursorPosition)
      else if oldRange.containsRange(newRange)
        buffer.setTextInRange oldRange, newText
        @editor.scrollToBufferPosition(oldRange.start)
        cursor.setBufferPosition(cursorPosition)
      else
        buffer.insert newRange.start, newText
        @editor.scrollToBufferPosition(newRange.start)
        cursor.setBufferPosition(cursorPosition)

      triggerPush = true

    buffer.onDidChange (event) =>
      return unless triggerPush
      deletion = !(event.newText is "\n") and (event.newText.length is 0)
      @pairingChannel.trigger 'client-change', {deletion: deletion, event: event, cursorColour: @gutterColour}

  receiveFriendInfo: (data) ->
    friendInfo = {colour: data.colour}


    buffer = @buffer = @editor.buffer

    # $('atom-text-editor#pusht::shadow .line-number.cursor-line').addClass(@markerColour)
    # @syncMarker()

    @pusher = new Pusher @app_key,
      authTransport: 'client'
