From 3236c8f0f8b5613a33bfe81865e3fccf143fb6e1 Mon Sep 17 00:00:00 2001 From: Antonio Scandurra Date: Thu, 24 Sep 2015 10:07:38 +0200 Subject: [PATCH] Let's start with deprecations! --- src/text-editor-component.coffee | 6 ++++++ src/text-editor-element.coffee | 6 ++++++ src/text-editor-presenter.coffee | 9 +++++++++ src/text-editor.coffee | 8 ++++++-- 4 files changed, 27 insertions(+), 2 deletions(-) diff --git a/src/text-editor-component.coffee b/src/text-editor-component.coffee index 651a333e3..a64d46668 100644 --- a/src/text-editor-component.coffee +++ b/src/text-editor-component.coffee @@ -361,6 +361,12 @@ class TextEditorComponent @scrollViewNode.scrollTop = 0 @scrollViewNode.scrollLeft = 0 + onDidChangeScrollTop: (callback) -> + @presenter.onDidChangeScrollTop(callback) + + onDidChangeScrollLeft: (callback) -> + @presenter.onDidChangeScrollLeft(callback) + setScrollLeft: (scrollLeft) -> @presenter.setScrollLeft(scrollLeft) diff --git a/src/text-editor-element.coffee b/src/text-editor-element.coffee index 7d29b72f9..fe66b6f44 100644 --- a/src/text-editor-element.coffee +++ b/src/text-editor-element.coffee @@ -218,6 +218,12 @@ class TextEditorElement extends HTMLElement onDidDetach: (callback) -> @emitter.on("did-detach", callback) + onDidChangeScrollTop: (callback) -> + @component.onDidChangeScrollTop(callback) + + onDidChangeScrollLeft: (callback) -> + @component.onDidChangeScrollLeft(callback) + setScrollLeft: (scrollLeft) -> @component.setScrollLeft(scrollLeft) diff --git a/src/text-editor-presenter.coffee b/src/text-editor-presenter.coffee index c6dd62606..e01a8a20d 100644 --- a/src/text-editor-presenter.coffee +++ b/src/text-editor-presenter.coffee @@ -1561,6 +1561,8 @@ class TextEditorPresenter @scrollColumn = Math.round(@scrollLeft / @baseCharacterWidth) @model.setScrollColumn(@scrollColumn) + @emitter.emit 'did-change-scroll-top', @scrollLeft + @pendingScrollLeft = null commitPendingScrollTopPosition: -> @@ -1574,6 +1576,7 @@ class TextEditorPresenter @model.setScrollRow(@scrollRow) @didStartScrolling() + @emitter.emit 'did-change-scroll-top', @scrollTop @pendingScrollTop = null @@ -1590,3 +1593,9 @@ class TextEditorPresenter @commitPendingLogicalScrollPosition() @commitPendingScrollLeftPosition() @commitPendingScrollTopPosition() + + onDidChangeScrollTop: (callback) -> + @emitter.on 'did-change-scroll-top', callback + + onDidChangeScrollLeft: (callback) -> + @emitter.on 'did-change-scroll-left', callback diff --git a/src/text-editor.coffee b/src/text-editor.coffee index e8b183229..e15ee13dd 100644 --- a/src/text-editor.coffee +++ b/src/text-editor.coffee @@ -433,10 +433,14 @@ class TextEditor extends Model @displayBuffer.onDidChangeCharacterWidths(callback) onDidChangeScrollTop: (callback) -> - @emitter.on 'did-change-scroll-top', callback + Grim.deprecate("This is now a view method. Call TextEditorElement::onDidChangeScrollTop instead.") + + atom.views.getView(this).onDidChangeScrollTop(callback) onDidChangeScrollLeft: (callback) -> - @emitter.on 'did-change-scroll-left', callback + Grim.deprecate("This is now a view method. Call TextEditorElement::onDidChangeScrollLeft instead.") + + atom.views.getView(this).onDidChangeScrollLeft(callback) onDidChangeScrollPosition: (callback) -> @displayBuffer.onDidChangeScrollPosition(callback)