From 60fdd3793fdf8b26671bfaa03c4f81bf1e505fcf Mon Sep 17 00:00:00 2001 From: Antonio Scandurra Date: Wed, 23 Sep 2015 11:23:18 +0200 Subject: [PATCH] Stop reporting scroll positions to the model --- spec/text-editor-component-spec.coffee | 3 ++- spec/text-editor-presenter-spec.coffee | 8 +++----- src/text-editor-presenter.coffee | 6 ------ 3 files changed, 5 insertions(+), 12 deletions(-) diff --git a/spec/text-editor-component-spec.coffee b/spec/text-editor-component-spec.coffee index 0177826f9..46e635088 100644 --- a/spec/text-editor-component-spec.coffee +++ b/spec/text-editor-component-spec.coffee @@ -3461,7 +3461,8 @@ describe "TextEditorComponent", -> wrapperNode.setScrollTop(0) wrapperNode.scrollToCursorPosition(center: false) - expect(editor.getScrollBottom()).toBe (8 + editor.getVerticalScrollMargin()) * 10 + expect(wrapperNode.getScrollTop()).toBe (7.8 - editor.getVerticalScrollMargin()) * 10 + expect(wrapperNode.getScrollBottom()).toBe (9.3 + editor.getVerticalScrollMargin()) * 10 describe "moving cursors", -> it "scrolls down when the last cursor gets closer than ::verticalScrollMargin to the bottom of the editor", -> diff --git a/spec/text-editor-presenter-spec.coffee b/spec/text-editor-presenter-spec.coffee index 6d5f4a13d..0aacef524 100644 --- a/spec/text-editor-presenter-spec.coffee +++ b/spec/text-editor-presenter-spec.coffee @@ -5,7 +5,7 @@ TextBuffer = require 'text-buffer' TextEditor = require '../src/text-editor' TextEditorPresenter = require '../src/text-editor-presenter' -describe "TextEditorPresenter", -> +fdescribe "TextEditorPresenter", -> # These `describe` and `it` blocks mirror the structure of the ::state object. # Please maintain this structure when adding specs for new state fields. describe "::getState()", -> @@ -523,14 +523,12 @@ describe "TextEditorPresenter", -> expectStateUpdate presenter, -> presenter.setScrollLeft(70) expectValues presenter.getState().hiddenInput, {top: 0, left: 0} - global.enableLogs = true expectStateUpdate presenter, -> editor.setCursorBufferPosition([11, 43]) - expectValues presenter.getState().hiddenInput, {top: 11 * 10 - editor.getScrollTop(), left: 43 * 10 - editor.getScrollLeft()} - global.enableLogs = false + expectValues presenter.getState().hiddenInput, {top: 11 * 10 - presenter.getScrollTop(), left: 43 * 10 - presenter.getScrollLeft()} newCursor = null expectStateUpdate presenter, -> newCursor = editor.addCursorAtBufferPosition([6, 10]) - expectValues presenter.getState().hiddenInput, {top: (6 * 10) - editor.getScrollTop(), left: (10 * 10) - editor.getScrollLeft()} + expectValues presenter.getState().hiddenInput, {top: (6 * 10) - presenter.getScrollTop(), left: (10 * 10) - presenter.getScrollLeft()} expectStateUpdate presenter, -> newCursor.destroy() expectValues presenter.getState().hiddenInput, {top: 50 - 10, left: 300 - 10} diff --git a/src/text-editor-presenter.coffee b/src/text-editor-presenter.coffee index 6c6f56881..3bba67275 100644 --- a/src/text-editor-presenter.coffee +++ b/src/text-editor-presenter.coffee @@ -54,10 +54,6 @@ class TextEditorPresenter @model.setWidth(@contentFrameWidth) if @contentFrameWidth? @model.setLineHeightInPixels(@lineHeight) if @lineHeight? @model.setDefaultCharWidth(@baseCharacterWidth) if @baseCharacterWidth? - @model.setScrollTop(@scrollTop) if @scrollTop? - @model.setScrollLeft(@scrollLeft) if @scrollLeft? - @model.setVerticalScrollbarWidth(@measuredVerticalScrollbarWidth) if @measuredVerticalScrollbarWidth? - @model.setHorizontalScrollbarHeight(@measuredHorizontalScrollbarHeight) if @measuredHorizontalScrollbarHeight? # Private: Determines whether {TextEditorPresenter} is currently batching changes. # Returns a {Boolean}, `true` if is collecting changes, `false` if is applying them. @@ -1538,13 +1534,11 @@ class TextEditorPresenter scrollLeft = Math.round(@constrainScrollLeft(@pendingScrollLeft)) if scrollLeft isnt @scrollLeft and not Number.isNaN(scrollLeft) @scrollLeft = scrollLeft - @model.setScrollLeft(scrollLeft) commitPendingScrollTopPosition: -> scrollTop = Math.round(@constrainScrollTop(@pendingScrollTop)) if scrollTop isnt @scrollTop and not Number.isNaN(scrollTop) @scrollTop = scrollTop - @model.setScrollTop(scrollTop) updateScrollPosition: -> @commitPendingLogicalScrollPosition() if @pendingScrollLogicalPosition?