From 38a6f52ef73ceb9c9a2bf42402b79fc63c0c78b7 Mon Sep 17 00:00:00 2001 From: Russell Lescai Date: Tue, 7 Oct 2014 11:13:50 +1030 Subject: [PATCH] Rearranged onMouseWheel function for tidier merge. --- src/text-editor-component.coffee | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) diff --git a/src/text-editor-component.coffee b/src/text-editor-component.coffee index ede88ca1d..270583ab8 100644 --- a/src/text-editor-component.coffee +++ b/src/text-editor-component.coffee @@ -587,9 +587,16 @@ TextEditorComponent = React.createClass onMouseWheel: (event) -> {editor} = @props - {wheelDeltaX, wheelDeltaY} = event - if event.ctrlKey and (process.platform isnt 'darwin') + # Only scroll in one direction at a time + {wheelDeltaX, wheelDeltaY} = event + if Math.abs(wheelDeltaX) > Math.abs(wheelDeltaY) + # Scrolling horizontally + previousScrollLeft = editor.getScrollLeft() + editor.setScrollLeft(previousScrollLeft - Math.round(wheelDeltaX * @scrollSensitivity)) + event.preventDefault() unless previousScrollLeft is editor.getScrollLeft() + return + else if event.ctrlKey and (process.platform isnt 'darwin') # Ctrl+MouseWheel adjusts font size. currentFontSize = atom.config.get("editor.fontSize") if wheelDeltaY > 0 @@ -598,20 +605,15 @@ TextEditorComponent = React.createClass amount = -1 atom.config.set("editor.fontSize", currentFontSize + amount) event.preventDefault() + return else - if Math.abs(wheelDeltaX) > Math.abs(wheelDeltaY) - # Scrolling horizontally - previousScrollLeft = editor.getScrollLeft() - editor.setScrollLeft(previousScrollLeft - Math.round(wheelDeltaX * @scrollSensitivity)) - event.preventDefault() unless previousScrollLeft is editor.getScrollLeft() - else - # Scrolling vertically - @mouseWheelScreenRow = @screenRowForNode(event.target) - @clearMouseWheelScreenRowAfterDelay ?= debounce(@clearMouseWheelScreenRow, @mouseWheelScreenRowClearDelay) - @clearMouseWheelScreenRowAfterDelay() - previousScrollTop = editor.getScrollTop() - editor.setScrollTop(previousScrollTop - Math.round(wheelDeltaY * @scrollSensitivity)) - event.preventDefault() unless previousScrollTop is editor.getScrollTop() + # Scrolling vertically + @mouseWheelScreenRow = @screenRowForNode(event.target) + @clearMouseWheelScreenRowAfterDelay ?= debounce(@clearMouseWheelScreenRow, @mouseWheelScreenRowClearDelay) + @clearMouseWheelScreenRowAfterDelay() + previousScrollTop = editor.getScrollTop() + editor.setScrollTop(previousScrollTop - Math.round(wheelDeltaY * @scrollSensitivity)) + event.preventDefault() unless previousScrollTop is editor.getScrollTop() onScrollViewScroll: -> if @isMounted()