diff options
| -rw-r--r-- | lisp/better-pixel-scroll.el | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/lisp/better-pixel-scroll.el b/lisp/better-pixel-scroll.el index ac342a425a2..6101778ac0a 100644 --- a/lisp/better-pixel-scroll.el +++ b/lisp/better-pixel-scroll.el | |||
| @@ -118,16 +118,17 @@ according to the user's turning the mouse wheel. If EVENT does | |||
| 118 | not have precise scrolling deltas, call `mwheel-scroll' instead. | 118 | not have precise scrolling deltas, call `mwheel-scroll' instead. |
| 119 | ARG is passed to `mwheel-scroll', should that be called." | 119 | ARG is passed to `mwheel-scroll', should that be called." |
| 120 | (interactive (list last-input-event current-prefix-arg)) | 120 | (interactive (list last-input-event current-prefix-arg)) |
| 121 | (if (nth 4 event) | 121 | (let ((window (mwheel-event-window event))) |
| 122 | (let ((delta (round (cdr (nth 4 event)))) | 122 | (if (and (nth 4 event) |
| 123 | (window (mwheel-event-window event))) | 123 | (zerop (window-hscroll window))) |
| 124 | (if (> (abs delta) (window-text-height window t)) | 124 | (let ((delta (round (cdr (nth 4 event))))) |
| 125 | (mwheel-scroll event arg) | 125 | (if (> (abs delta) (window-text-height window t)) |
| 126 | (with-selected-window window | 126 | (mwheel-scroll event arg) |
| 127 | (with-selected-window window | ||
| 127 | (if (< delta 0) | 128 | (if (< delta 0) |
| 128 | (better-pixel-scroll-scroll-down (- delta)) | 129 | (better-pixel-scroll-scroll-down (- delta)) |
| 129 | (better-pixel-scroll-scroll-up delta))))) | 130 | (better-pixel-scroll-scroll-up delta))))) |
| 130 | (mwheel-scroll event arg))) | 131 | (mwheel-scroll event arg)))) |
| 131 | 132 | ||
| 132 | ;;;###autoload | 133 | ;;;###autoload |
| 133 | (define-minor-mode better-pixel-scroll-mode | 134 | (define-minor-mode better-pixel-scroll-mode |