Subject: Re: bug#9618: 23.3; error: attempt to drag the rightmost scrollbar

From: martin rudalics <[email-masked]>
Date: Wed, 28 Sep 2011 10:52:17 +0200

>> \C-x 3
 >> try to drag the left border of the right window with the left mouse
 >> button:
 >> “Attempt to drag the rightmost scrollbar”
 >>
 >> When I try to resize the windows, I get that error. When I have 3
 >> windows, I can resize the left two windows, but not the right one.
 >>
 >
 > For me it seems to be a matter of where the drag starts.  If it starts
 > just some pixels in to the rightmost windows mode line I get that message.
 > If I start the drag a few pixels to the left, in the mode line of the
 > window next to the rightmost window, I can resize the rightmost window.

What happens is that `mouse-drag-vertical-line' is too naive when
guessing the edge that shall be dragged from the START-EVENT argument.
If the window returned via (car (car (cdr start-event))) is the
rightmost window it simply complains if scrollbars are on the right.

In addition a check like

      ((and (eq which-side 'right)
	   (>= (nth 2 (window-inside-edges start-event-window))
	       (frame-width start-event-frame)))
       (error "Attempt to drag rightmost scrollbar"))

doesn't make any sense because it compares `frame-width' with window
edges, two things which are not comparable.  Finally, the routine
`mouse-drag-vertical-line-rightward-window' hardly DTRT either so the
entire code would probably have to be rewritten from scratch.  All this
would be much simpler if we had vertical divider lines in addition to
scrollbars :-(

BTW this bug is likely the same as #5357 so the two should be merged
despite of the fact that #5357 is tagged "emacs.ns".

martin