diff --git a/src/app/anchor.coffee b/src/app/anchor.coffee index 16ca42d25..2fd4d7add 100644 --- a/src/app/anchor.coffee +++ b/src/app/anchor.coffee @@ -54,7 +54,7 @@ class Anchor @screenPosition.row setScreenPosition: (position, options={}) -> - previousScreenPosition = @screenPosition + oldScreenPosition = @screenPosition @screenPosition = Point.fromObject(position) clip = options.clip ? true assignBufferPosition = options.assignBufferPosition ? true @@ -65,8 +65,12 @@ class Anchor Object.freeze @screenPosition Object.freeze @bufferPosition - unless @screenPosition.isEqual(previousScreenPosition) - @trigger 'moved', @screenPosition, bufferChange: options.bufferChange, autoscroll: options.autoscroll + unless @screenPosition.isEqual(oldScreenPosition) + @trigger 'moved', + oldScreenPosition: oldScreenPosition + newScreenPosition: @screenPosition + bufferChange: options.bufferChange + autoscroll: options.autoscroll refreshScreenPosition: (options={}) -> return unless @editSession diff --git a/src/app/cursor-view.coffee b/src/app/cursor-view.coffee index 1d7c3a042..36af2fd2b 100644 --- a/src/app/cursor-view.coffee +++ b/src/app/cursor-view.coffee @@ -19,7 +19,7 @@ class CursorView extends View shouldPauseBlinking: false initialize: (@cursor, @editor) -> - @cursor.on 'moved.cursor-view', (screenPosition, { autoscroll }) => + @cursor.on 'moved.cursor-view', ({ autoscroll }) => @needsUpdate = true @shouldPauseBlinking = true @needsAutoscroll = (autoscroll ? true) and @cursor?.isLastCursor() diff --git a/src/app/selection.coffee b/src/app/selection.coffee index 90d7fcdc7..4a6728ea0 100644 --- a/src/app/selection.coffee +++ b/src/app/selection.coffee @@ -12,8 +12,8 @@ class Selection constructor: ({@cursor, @editSession}) -> @cursor.selection = this - @cursor.on 'moved.selection', (e) => - @screenRangeChanged() unless e.bufferChange + @cursor.on 'moved.selection', ({bufferChange}) => + @screenRangeChanged() unless bufferChange @cursor.on 'destroy.selection', => @cursor = null