emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] emacs-26 d9be870: Fix hscroll suspension after cursor moti


From: Eli Zaretskii
Subject: [Emacs-diffs] emacs-26 d9be870: Fix hscroll suspension after cursor motion
Date: Sat, 4 Nov 2017 05:31:11 -0400 (EDT)

branch: emacs-26
commit d9be8704ae905e510cc4b657d267770deb816873
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Fix hscroll suspension after cursor motion
    
    * src/xdisp.c (hscroll_window_tree): Trigger a thorough redisplay
    of the window when temporary suspension of hscrolling is
    disabled.  (Bug#29002)
---
 src/xdisp.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/src/xdisp.c b/src/xdisp.c
index dc23959..b8bb6ba 100644
--- a/src/xdisp.c
+++ b/src/xdisp.c
@@ -13174,8 +13174,15 @@ hscroll_window_tree (Lisp_Object window)
 
          /* If the position of this window's point has explicitly
             changed, no more suspend auto hscrolling.  */
-         if (NILP (Fequal (Fwindow_point (window), Fwindow_old_point 
(window))))
-           w->suspend_auto_hscroll = false;
+         if (w->suspend_auto_hscroll
+             && NILP (Fequal (Fwindow_point (window),
+                              Fwindow_old_point (window))))
+           {
+             w->suspend_auto_hscroll = false;
+             /* Force thorough redisplay of this window, to show the
+                effect of disabling hscroll suspension immediately.  */
+             SET_FRAME_GARBAGED (XFRAME (w->frame));
+           }
 
          /* Remember window point.  */
          Fset_marker (w->old_pointm,



reply via email to

[Prev in Thread] Current Thread [Next in Thread]