     @pendingChanges = []
     @newCursors = []
     @newSelections = []
+    @lineId = 0
+    @pixelLeftCache = {}
 
     if editSession?
       @edit(editSession)


  positionLeftForLineAndColumn: (lineElement, column) ->
    return 0 if column is 0
    delta = 0
    iterator = document.createNodeIterator(lineElement, NodeFilter.SHOW_TEXT, acceptNode: -> NodeFilter.FILTER_ACCEPT)
    while textNode = iterator.nextNode()

    range.collapse()
    leftPixels = range.getClientRects()[0].left - Math.floor(@scrollView.offset().left) + Math.floor(@scrollLeft())
    range.detach()

    @pixelLeftCache[cacheKey] = leftPixels

    leftPixels

  pixelOffsetForScreenPosition: (position) ->
