           charLength = 1
           valueIndex++
 
-        return {top, left} if column is targetColumn
+        break if column is targetColumn
 
         left += characterWidths[char] ? baseCharacterWidth unless char is '\0'
         column += charLength
-    {top, left}
+
+    {top: top - @scrollTop, left}
 
   hasPixelRectRequirements: ->
     @hasPixelPositionRequirements() and @scrollWidth?

      # Last row, extending from left side of screen to selection end
      if screenRange.end.column > 0
        regions.push(
          top: endPixelPosition.top - @scrollTop
          height: lineHeightInPixels
          left: 0
          width: endPixelPosition.left


    if spannedRows is 1
      [
        top: startPixelPosition.top
        height: lineHeightInPixels
        left: startPixelPosition.left
        width: endPixelPosition.left - startPixelPosition.left
