[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#29737: 27.0.50; pixel-scroll-mode is laggy
From: |
Tak Kunihiro |
Subject: |
bug#29737: 27.0.50; pixel-scroll-mode is laggy |
Date: |
Sun, 17 Dec 2017 11:00:45 +0900 (JST) |
> While I see that scrolling became pixel-wise indeed, it is also very
> laggy. CPU blows up to 100% and ui hangs and freezes. It works ok if
> I scroll slowly though. It happens with all my plugins and
> customizations and if I run emacs with -Q flag. My OS is Arch Linux
> and I also have HiDPI screen (it's MacBook 11,4, mid-2015).
On the previous commit <8eb6870be690128fb1cbc012c55093813c39830c>, I
revised two functions. I fixed `pixel-scroll-down' but I broke
`pixel-scroll-up'. I apologize for the careless commit.
With the current and broken `pixel-scroll-up', when EOB is shown on
top of the screen, emacs hangs (or goes in infinite while loop). The
pixel-scroll-up should be reverted to commit
<1bda71ec3b11eeb4d06c3da094a3cb21bac18d5c>.
I'm sending ChangeLog and a patch relative to the current master.
* ChangeLog
Fix vertical cursor motion in pixel-scroll.el
* lisp/pixel-scroll.el (pixel-scroll-up): Do not try to move cursor down when
EOB
is shown at the top. This function is reverted to commit
1bda71ec3b11eeb4d06c3da094a3cb21bac18d5c. (bug#29737)
diff --git a/lisp/pixel-scroll.el b/lisp/pixel-scroll.el
index f64a439..7024487
--- a/lisp/pixel-scroll.el
+++ b/lisp/pixel-scroll.el
@@ -110,11 +110,11 @@ This is an alternative of `scroll-up'. Scope moves
downward."
pixel-resolution-fine-flag
(frame-char-height))
(pixel-line-height))))
- (while (pixel-point-at-top-p amt) ; prevent too late (multi tries)
- (vertical-motion 1)) ; move point downward
- (if (pixel-eob-at-top-p) ; when end-of-the-buffer is close
- (scroll-up 1) ; relay on robust method
- (pixel-scroll-pixel-up amt))))) ; move scope downward
+ (if (pixel-eob-at-top-p) ; when end-of-the-buffer is close
+ (scroll-up 1) ; relay on robust method
+ (while (pixel-point-at-top-p amt) ; prevent too late (multi tries)
+ (vertical-motion 1)) ; move point downward
+ (pixel-scroll-pixel-up amt))))) ; move scope downward
(defun pixel-scroll-down (&optional arg)
"Scroll text of selected window down ARG lines.
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Valentin Ignatyev, 2017/12/16
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Eli Zaretskii, 2017/12/16
- Message not available
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Eli Zaretskii, 2017/12/16
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Valentin Ignatyev, 2017/12/16
- bug#29737: 27.0.50; pixel-scroll-mode is laggy,
Tak Kunihiro <=
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Eli Zaretskii, 2017/12/22
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Tak Kunihiro, 2017/12/22
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Eli Zaretskii, 2017/12/23
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Valentin Ignatyev, 2017/12/23
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Valentin Ignatyev, 2017/12/23
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Tak Kunihiro, 2017/12/23
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Valentin Ignatyev, 2017/12/24
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Tak Kunihiro, 2017/12/24
- bug#29737: 27.0.50; pixel-scroll-mode is laggy, Tak Kunihiro, 2017/12/31