mirror of
https://github.com/atom/atom.git
synced 2026-02-08 21:55:05 -05:00
Use wheelDelta instead of delta
In Atom 1.19 we changed the scroll handler to use deltaX and deltaY instead of wheelDeltaX/wheelDeltaY. wheelDelta is larger so this caused the scrolling speed to slow down. This change in speed was especially noticable on Linux
This commit is contained in:
@@ -1510,28 +1510,28 @@ class TextEditorComponent {
|
||||
didMouseWheel (event) {
|
||||
const scrollSensitivity = this.props.model.getScrollSensitivity() / 100
|
||||
|
||||
let {deltaX, deltaY} = event
|
||||
let {wheelDeltaX, wheelDeltaY} = event
|
||||
|
||||
if (Math.abs(deltaX) > Math.abs(deltaY)) {
|
||||
deltaX = (Math.sign(deltaX) === 1)
|
||||
? Math.max(1, deltaX * scrollSensitivity)
|
||||
: Math.min(-1, deltaX * scrollSensitivity)
|
||||
deltaY = 0
|
||||
if (Math.abs(wheelDeltaX) > Math.abs(wheelDeltaY)) {
|
||||
wheelDeltaX = (Math.sign(wheelDeltaX) === 1)
|
||||
? Math.max(1, wheelDeltaX * scrollSensitivity)
|
||||
: Math.min(-1, wheelDeltaX * scrollSensitivity)
|
||||
wheelDeltaY = 0
|
||||
} else {
|
||||
deltaX = 0
|
||||
deltaY = (Math.sign(deltaY) === 1)
|
||||
? Math.max(1, deltaY * scrollSensitivity)
|
||||
: Math.min(-1, deltaY * scrollSensitivity)
|
||||
wheelDeltaX = 0
|
||||
wheelDeltaY = (Math.sign(wheelDeltaY) === 1)
|
||||
? Math.max(1, wheelDeltaY * scrollSensitivity)
|
||||
: Math.min(-1, wheelDeltaY * scrollSensitivity)
|
||||
}
|
||||
|
||||
if (this.getPlatform() !== 'darwin' && event.shiftKey) {
|
||||
let temp = deltaX
|
||||
deltaX = deltaY
|
||||
deltaY = temp
|
||||
let temp = wheelDeltaX
|
||||
wheelDeltaX = wheelDeltaY
|
||||
wheelDeltaY = temp
|
||||
}
|
||||
|
||||
const scrollLeftChanged = deltaX !== 0 && this.setScrollLeft(this.getScrollLeft() + deltaX)
|
||||
const scrollTopChanged = deltaY !== 0 && this.setScrollTop(this.getScrollTop() + deltaY)
|
||||
const scrollLeftChanged = wheelDeltaX !== 0 && this.setScrollLeft(this.getScrollLeft() - wheelDeltaX)
|
||||
const scrollTopChanged = wheelDeltaY !== 0 && this.setScrollTop(this.getScrollTop() - wheelDeltaY)
|
||||
|
||||
if (scrollLeftChanged || scrollTopChanged) this.updateSync()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user