GNU bug report logs - #5654
Even slightest scrollbar move warping point

Previous Next

Package: emacs;

Reported by: David De La Harpe Golden <david <at> harpegolden.net>

Date: Sat, 27 Feb 2010 14:41:01 UTC

Severity: normal

Done: Jan Djärv <jan.h.d <at> swipnet.se>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 5654 in the body.
You can then email your comments to 5654 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5654; Package emacs. (Sat, 27 Feb 2010 14:41:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to David De La Harpe Golden <david <at> harpegolden.net>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 27 Feb 2010 14:41:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: David De La Harpe Golden <david <at> harpegolden.net>
To: bug-gnu-emacs <at> gnu.org
Subject: Even slightest scrollbar move warping point
Date: Sat, 27 Feb 2010 14:39:48 +0000
Don't actually use the scrollbar very much, so not presently sure if 
this was just always the way emacs acted and I simply didn't notice, but 
right now (23.1.93), if you "move the scrollbar" a tiny bit (not enough 
to actually visibly scroll the buffer), the point warps to the top of 
the window.

recipe:

* emacs -Q on X11, with gtk+ (debian libgtk 2.18.6-1) toolkit scrollbars:

place point somewhere other than start of buffer. (if you've just done 
emacs -Q, it'll probably be at the end of the *scratch* buffer anyway).

mouse-1 down on scrollbar. move even a tiny amount, not enough to 
scroll. If you've just done emacs -Q, it'll already be at the top, so 
you could just push it against the top, which you might not expect to do 
anything, really.  Point warps to window start.  This happens before
you mouse-1 up.


* emacs -Q on X11, with lucid with toolkit scrollbars: (i.e. 90s-looking 
3d-effect scrollbar):

same as gtk+

* emacs -Q on X11, with lucid without toolkit scrollbars (i.e. flat 
looking scrollbar):

no warp on mouse-1, but of course mouse-1 means something different for 
these scrollbars - there is an immediate warp, but I think that's also 
different since these scrollbars immediately scroll to a location 
corresponding to the position on the scrollbar you mouse-2 down on. So 
this case might be irrelevant and it's only something that's happening 
for toolkit scrollbars.













Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5654; Package emacs. (Sun, 28 Feb 2010 11:42:01 GMT) Full text and rfc822 format available.

Message #8 received at 5654 <at> debbugs.gnu.org (full text, mbox):

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: David De La Harpe Golden <david <at> harpegolden.net>
Cc: 5654 <at> debbugs.gnu.org
Subject: Re: bug#5654: Even slightest scrollbar move warping point
Date: Sun, 28 Feb 2010 12:41:44 +0100
It does not happen in 23.1.
Reverting this change:

2009-11-13  Stefan Monnier  <monnier <at> iro.umontreal.ca>

	* scroll-bar.el (scroll-bar-set-window-start, scroll-bar-drag-1)
	(scroll-bar-maybe-set-window-start):

	Use with-current-buffer.

fixes it.  I don't know if that is the right thing to do.
Adding a save-excursion in scroll-bar-drag-1 also fixes it:

--- lisp/scroll-bar.el	2010-01-13 08:35:10 +0000
+++ lisp/scroll-bar.el	2010-02-28 11:41:09 +0000
@@ -211,12 +211,13 @@
 	 (window (nth 0 start-position))
 	 (portion-whole (nth 2 start-position)))
     (with-current-buffer (window-buffer window)
+      (save-excursion
       ;; Calculate position relative to the accessible part of the buffer.
       (goto-char (+ (point-min)
 		    (scroll-bar-scale portion-whole
 				      (- (point-max) (point-min)))))
       (vertical-motion 0 window)
-      (set-window-start window (point)))))
+      (set-window-start window (point))))))

 (defun scroll-bar-drag (event)
   "Scroll the window by dragging the scroll bar slider.


	Jan D.



David De La Harpe Golden skrev:
> Don't actually use the scrollbar very much, so not presently sure if 
> this was just always the way emacs acted and I simply didn't notice, but 
> right now (23.1.93), if you "move the scrollbar" a tiny bit (not enough 
> to actually visibly scroll the buffer), the point warps to the top of 
> the window.
> 
> recipe:
> 
> * emacs -Q on X11, with gtk+ (debian libgtk 2.18.6-1) toolkit scrollbars:
> 
> place point somewhere other than start of buffer. (if you've just done 
> emacs -Q, it'll probably be at the end of the *scratch* buffer anyway).
> 
> mouse-1 down on scrollbar. move even a tiny amount, not enough to 
> scroll. If you've just done emacs -Q, it'll already be at the top, so 
> you could just push it against the top, which you might not expect to do 
> anything, really.  Point warps to window start.  This happens before
> you mouse-1 up.
> 
> 
> * emacs -Q on X11, with lucid with toolkit scrollbars: (i.e. 90s-looking 
> 3d-effect scrollbar):
> 
> same as gtk+
> 
> * emacs -Q on X11, with lucid without toolkit scrollbars (i.e. flat 
> looking scrollbar):
> 
> no warp on mouse-1, but of course mouse-1 means something different for 
> these scrollbars - there is an immediate warp, but I think that's also 
> different since these scrollbars immediately scroll to a location 
> corresponding to the position on the scrollbar you mouse-2 down on. So 
> this case might be irrelevant and it's only something that's happening 
> for toolkit scrollbars.
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 





Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5654; Package emacs. (Sun, 28 Feb 2010 13:50:03 GMT) Full text and rfc822 format available.

Message #11 received at 5654 <at> debbugs.gnu.org (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: Jan Djärv <jan.h.d <at> swipnet.se>
Cc: 5654 <at> debbugs.gnu.org, David De La Harpe Golden <david <at> harpegolden.net>
Subject: Re: bug#5654: Even slightest scrollbar move warping point
Date: Sun, 28 Feb 2010 08:49:34 -0500
Jan Djärv <jan.h.d <at> swipnet.se> writes:

> Adding a save-excursion in scroll-bar-drag-1 also fixes it:

I think this is the right fix.  Please check in, thanks.




Reply sent to Jan Djärv <jan.h.d <at> swipnet.se>:
You have taken responsibility. (Sun, 28 Feb 2010 14:40:02 GMT) Full text and rfc822 format available.

Notification sent to David De La Harpe Golden <david <at> harpegolden.net>:
bug acknowledged by developer. (Sun, 28 Feb 2010 14:40:02 GMT) Full text and rfc822 format available.

Message #16 received at 5654-done <at> debbugs.gnu.org (full text, mbox):

From: Jan Djärv <jan.h.d <at> swipnet.se>
To: Chong Yidong <cyd <at> stupidchicken.com>
Cc: 5654-done <at> debbugs.gnu.org, David De La Harpe Golden <david <at> harpegolden.net>
Subject: Re: bug#5654: Even slightest scrollbar move warping point
Date: Sun, 28 Feb 2010 15:39:35 +0100
Chong Yidong skrev:
> Jan Djärv <jan.h.d <at> swipnet.se> writes:
> 
>> Adding a save-excursion in scroll-bar-drag-1 also fixes it:
> 
> I think this is the right fix.  Please check in, thanks.

Done.

	Jan D.






Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#5654; Package emacs. (Sun, 28 Feb 2010 20:34:02 GMT) Full text and rfc822 format available.

Message #19 received at 5654 <at> debbugs.gnu.org (full text, mbox):

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Jan Djärv <jan.h.d <at> swipnet.se>
Cc: 5654 <at> debbugs.gnu.org, David De La Harpe Golden <david <at> harpegolden.net>
Subject: Re: bug#5654: Even slightest scrollbar move warping point
Date: Sun, 28 Feb 2010 15:33:52 -0500
> Adding a save-excursion in scroll-bar-drag-1 also fixes it:

Thanks, that's indeed the right fix,


        Stefan




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 29 Mar 2010 11:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 15 years and 88 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.