unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [dane@mail.abcsinc.com: Scroll bars]
@ 2002-08-17  4:50 Richard Stallman
  2002-08-19 14:53 ` Stefan Monnier
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Stallman @ 2002-08-17  4:50 UTC (permalink / raw)
  Cc: emacs-devel

Yet another user is saying that the scroll bar works all wrong.  I
suspect that his Xaw3d copy was compiled with the wrong options.  (I
sent him mail to ask.)

You wrote:

    > Is there no way for Emacs to control this behavior independent of
    > how the library was compiled?

    No.  The appearance is different (with extra arrow-buttons at
    each end) already.

We are failing to communicate, because that difference in appearance
is not the issue.  The issue not whether there are arrows.  The issue
is what actions the mouse buttons do when clicked on, above, and below
the slider.  That is what I mean by behavior.

The presence or absence of arrows has no intrinsic relation to the
behavior of the mouse buttons in any given place (other than the
arrows, of course).

			You can influence the behavior via Xresources,
    so you can bring them closer to each other if you really want to,
    but it would still not be the same anyway.

It seems clear that many users are going to be extremely 
unhappy with the meanings of the buttons with the non-arrow version.
We need to develop code *in Emacs* to manipulate these Xresources
(or use some other method) so as to make the scroll bar work the way
users expect.

Can you help?

It would be even nicer to give Emacs the ability to select one
behavior or another, controlled by a Lisp variable.  That might not be
much extra difficulty once someone has implemented the mechanism for
Emacs to control this behavior.  However, simply making Xaw3d always
use a LessTif-style behavior would be a big step forward.

------- Start of forwarded message -------
From: Dane Meyer <dane@mail.abcsinc.com>
Organization: Advantage Software
X-Accept-Language: en-us, en
To: bug-gnu-emacs@gnu.org
Subject: Scroll bars
Sender: bug-gnu-emacs-admin@gnu.org
Date: Fri, 16 Aug 2002 11:51:50 -0500

I'm running GNU Emacs 21.2.1 (i386-redhat-linux-gnu, X Toolkit, Xaw3d 
scroll bars) of 2002-04-08 on porky.devel.redhat.com, on Linux 7.3

"Drag scrolling" doesn't work.  Clicking on the scroll bar and holding 
just results in a page down when releasing the click.  Also, left 
clicking below the scroll bar scrolls down a page normally, but left 
clicking above the scrool bar results in scrolling down a page.  Right 
clicking above the scroll bar wll scroll 1 line at a tme instead of a page.

And Besides all that,  I'd like the scroll bars to be positioned  to the 
right?

Is this configuration work or a bug?

Dane Meyer
Advantage Software
Big Sandy, Texas



_______________________________________________
Bug-gnu-emacs mailing list
Bug-gnu-emacs@gnu.org
http://mail.gnu.org/mailman/listinfo/bug-gnu-emacs
------- End of forwarded message -------

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dane@mail.abcsinc.com: Scroll bars]
  2002-08-17  4:50 [dane@mail.abcsinc.com: Scroll bars] Richard Stallman
@ 2002-08-19 14:53 ` Stefan Monnier
  2002-08-20 17:21   ` Richard Stallman
  0 siblings, 1 reply; 8+ messages in thread
From: Stefan Monnier @ 2002-08-19 14:53 UTC (permalink / raw)
  Cc: monnier+gnu/emacs, emacs-devel

> Yet another user is saying that the scroll bar works all wrong.

Some users expect the Motif-like behavior offered by Gtk/Lesstif/KDE/...
and Xaw3d-with-scroll-bar-arrows, while others expect the old non-toolkit
behavior which is also the standard behavior of Xaw
and Xaw3d-without-scrollbar-arrows.

> It seems clear that many users are going to be extremely 
> unhappy with the meanings of the buttons with the non-arrow version.
> We need to develop code *in Emacs* to manipulate these Xresources
> (or use some other method) so as to make the scroll bar work the way
> users expect.
> 
> Can you help?

Fiddling with the Xaw3d toolkit's mouse-bindings via Xresources is not
something I have the time and/or inclination to do right now, so I
can't really help.  Also this would only provide the customizability
for Xaw3d but not for Lesstif.  I don't know how to do such a customization
for Lesstif.


	Stefan

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dane@mail.abcsinc.com: Scroll bars]
  2002-08-19 14:53 ` Stefan Monnier
@ 2002-08-20 17:21   ` Richard Stallman
  2002-08-21  6:44     ` Eli Zaretskii
       [not found]     ` <m21y8rg350.fsf@primate.xs4all.nl>
  0 siblings, 2 replies; 8+ messages in thread
From: Richard Stallman @ 2002-08-20 17:21 UTC (permalink / raw)
  Cc: monnier+gnu/emacs, emacs-devel

    Some users expect the Motif-like behavior offered by Gtk/Lesstif/KDE/...
    and Xaw3d-with-scroll-bar-arrows, while others expect the old non-toolkit
    behavior which is also the standard behavior of Xaw
    and Xaw3d-without-scrollbar-arrows.

There may be both kinds, but the two cases are not parallel, and not
equally important.

Many computer users who are new to Emacs are accustomed to
more-or-less Motif-like scroll behavior.  They often get completely
confused by the current non-arrow Xaw3D behavior.  They think Emacs
scroll bars are simply broken.  Most of them don't send bug reports.

By contrast, the old X users who are used to the xterm scroll bar
commands will know how to cope if they get the Motif-like behavior.
Even if they can't change it, they will figure out how to use it.
They won't just give up and say "it's broken."

We need a way to make Xaw3D always deliver Motif-like behavior.

    Fiddling with the Xaw3d toolkit's mouse-bindings via Xresources is not
    something I have the time and/or inclination to do right now, so I
    can't really help.  Also this would only provide the customizability
    for Xaw3d but not for Lesstif.  I don't know how to do such a customization
    for Lesstif.

The urgent need is only for Xaw3d, and only to make it behave the way
LessTif scroll bars normally do.

It would be nice to have more general customization facilities, and to
be able to customize LessTif scrolling, but that is much more than
what we need.  Let's not give up on a small task just because it
suggests a larger possible task.

Can someone please offer to work now on the job that is needed now?

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dane@mail.abcsinc.com: Scroll bars]
  2002-08-20 17:21   ` Richard Stallman
@ 2002-08-21  6:44     ` Eli Zaretskii
       [not found]     ` <m21y8rg350.fsf@primate.xs4all.nl>
  1 sibling, 0 replies; 8+ messages in thread
From: Eli Zaretskii @ 2002-08-21  6:44 UTC (permalink / raw)
  Cc: emacs-devel

> From: Richard Stallman <rms@gnu.org>
> Date: Tue, 20 Aug 2002 11:21:23 -0600 (MDT)
> 
> Many computer users who are new to Emacs are accustomed to
> more-or-less Motif-like scroll behavior.  They often get completely
> confused by the current non-arrow Xaw3D behavior.  They think Emacs
> scroll bars are simply broken.  Most of them don't send bug reports.
> 
> By contrast, the old X users who are used to the xterm scroll bar
> commands will know how to cope if they get the Motif-like behavior.
> Even if they can't change it, they will figure out how to use it.
> They won't just give up and say "it's broken."
> 
> We need a way to make Xaw3D always deliver Motif-like behavior.

FWIW, I agree with this analysis and the conclusion.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dane@mail.abcsinc.com: Scroll bars]
       [not found]     ` <m21y8rg350.fsf@primate.xs4all.nl>
@ 2002-08-22  8:08       ` Andreas Schwab
  2002-08-24  2:32       ` Richard Stallman
  1 sibling, 0 replies; 8+ messages in thread
From: Andreas Schwab @ 2002-08-22  8:08 UTC (permalink / raw)


huug <huug.at.gmane@xs4all.nl> writes:

|> On 2002-08-20, Richard Stallman <rms@gnu.org> wrote:
|> > We need a way to make Xaw3D always deliver Motif-like behavior.
|> 
|> That's not possible. Xaw3D compiled without arrows just doesn't contain
|> the code. Maybe emacs can ignore the wrong type? Something like:
|> 
|> --- emacs/configure.in.orig	2002-07-24 21:43:02.000000000 +0200
|> +++ emacs/configure.in	2002-08-21 19:46:21.000000000 +0200
|> @@ -1843,7 +1843,8 @@
|>  if test "${HAVE_X11}" = "yes"; then
|>    if test "${USE_X_TOOLKIT}" != "none"; then
|>      AC_CHECK_HEADER(X11/Xaw3d/Scrollbar.h,
|> -	AC_CHECK_LIB(Xaw3d, XawScrollbarSetThumb, HAVE_XAW3D=yes))
|> +	AC_CHECK_LIB(Xaw3d, XawScrollbarSetThumb,
|> +	    AC_CHECK_LIB(Xaw3d, PaintArrows, HAVE_XAW3D=yes)))

This lacks pairs of quotes around the nested macro invocations:

+	[AC_CHECK_LIB(Xaw3d, XawScrollbarSetThumb,
+	    [AC_CHECK_LIB(Xaw3d, PaintArrows, HAVE_XAW3D=yes)])])

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dane@mail.abcsinc.com: Scroll bars]
       [not found]     ` <m21y8rg350.fsf@primate.xs4all.nl>
  2002-08-22  8:08       ` Andreas Schwab
@ 2002-08-24  2:32       ` Richard Stallman
       [not found]         ` <m2y9amslnp.fsf@primate.xs4all.nl>
  1 sibling, 1 reply; 8+ messages in thread
From: Richard Stallman @ 2002-08-24  2:32 UTC (permalink / raw)
  Cc: emacs-devel

    That's not possible. Xaw3D compiled without arrows just doesn't contain
    the code.

So you're saying that there is no way to customize the scrolling
commands so as to make Xaw3D give the LessTif-style behavior.  I am
surprised, because the differences seem to be a matter of which
command has which behavior--nothing deeper.  Does everyone else
agree that this is true?

	      Maybe emacs can ignore the wrong type? Something like:

This might be an acceptable approach (i.e. better than no change) if
it gives good user-level results.

Your patch seems to reject Xaw3D when it was compiled the wrong way.
I would expect Emacs uses Xaw instead; is that correct?  If so, what
user-level scroll behavior results from that?

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dane@mail.abcsinc.com: Scroll bars]
       [not found]         ` <m2y9amslnp.fsf@primate.xs4all.nl>
@ 2002-09-02  0:01           ` Richard Stallman
  2002-09-02 17:16             ` Stefan Monnier
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Stallman @ 2002-09-02  0:01 UTC (permalink / raw)
  Cc: emacs-devel

I will try convincing Red Hat to compile with -DARROW_SCROLLBAR.

^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [dane@mail.abcsinc.com: Scroll bars]
  2002-09-02  0:01           ` Richard Stallman
@ 2002-09-02 17:16             ` Stefan Monnier
  0 siblings, 0 replies; 8+ messages in thread
From: Stefan Monnier @ 2002-09-02 17:16 UTC (permalink / raw)
  Cc: huug.at.gmane, emacs-devel

> I will try convincing Red Hat to compile with -DARROW_SCROLLBAR.

If you could also convince them (and Debian) to apply the following
patch, it would make the scrolling *much* smoother.


	Stefan

Subject: annoying bug in Xaw3d
To: kaleb@x.org, bugs@redhat.com
From: "Stefan Monnier" <monnier@cs.yale.edu>
Date: Sat, 04 Dec 1999 21:54:50 -0500
Cc: "Stefan Monnier" <monnier@cs.yale.edu>, kojima@inf.ufrgs.br, bb@zip.com.au


Xaw3d (at least version 1.3) has the nasty habit of ignoring
XawScrollbarSetThumb requests while dragging the thumb.
It also has the annoying idea of preventing the application from
moving the thumb past `1.0 - scrollbar.shown' (i.e. prevent
it from shrinking at the end) which might be OK for several applications
but not for programs like Emacs where the shrinking at the end
is exactly what we want.

Working around those two restrictions is a severe pain in the ass
and I have no idea why this code was added in the first place.

In any case, I've been using the patch below for some time now without
observing any undesirable behavior.  I have the strong impression
that such behavior will not appear since the patch makes Xaw3d
behave more like Xaw (what programs expect).

Without this patch, Emacs' scrollbar (when using Xaw-style scrollbars)
behaves very poorly when reaching the end of the buffer although
I've already done my best to add kludges to Emacs to work around
the problem.

This problem probably appears in most Xaw3d derivatives.


	Stefan


Index: Scrollbar.c
===================================================================
RCS file: /home/monnier/cvsroot/XawM/Scrollbar.c,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 Scrollbar.c
--- Scrollbar.c	1999/12/05 01:54:00	1.1.1.1
+++ Scrollbar.c	1999/12/05 02:04:45
@@ -1323,9 +1323,6 @@
       sbw->scrollbar.top = loc - sbw->scrollbar.picked;
       if (sbw->scrollbar.top < 0.0) sbw->scrollbar.top = 0.0;
     }
-    /* don't allow scrollbar to shrink at end */
-    if (sbw->scrollbar.top + sbw->scrollbar.shown > 1.0)
-      sbw->scrollbar.top = 1.0 - sbw->scrollbar.shown + 0.001;
 #ifdef ARROW_SCROLLBAR
     sbw->scrollbar.scroll_mode = SMODE_TRACK; /* indicate continuous scroll */
 #endif
@@ -1406,22 +1403,11 @@
 	    w,top,shown);
 #endif
 
-#ifdef ARROW_SCROLLBAR
-    if (sbw->scrollbar.scroll_mode == (char) SMODE_TRACK) /* if still thumbing */
-    	return;
-#else
-    if (sbw->scrollbar.direction == 'c') return; /* if still thumbing */
-#endif
-
     sbw->scrollbar.top = (top > 1.0) ? 1.0 :
 				(top >= 0.0) ? top : sbw->scrollbar.top;
 
     sbw->scrollbar.shown = (shown > 1.0) ? 1.0 :
 				(shown >= 0.0) ? shown : sbw->scrollbar.shown;
-
-    /* don't allow scrollbar to shrink at end */
-    if (sbw->scrollbar.top + sbw->scrollbar.shown > 1.0)
-	sbw->scrollbar.top = 1.0 - sbw->scrollbar.shown + 0.001;
 
     PaintThumb (sbw, 0);
 }

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2002-09-02 17:16 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-08-17  4:50 [dane@mail.abcsinc.com: Scroll bars] Richard Stallman
2002-08-19 14:53 ` Stefan Monnier
2002-08-20 17:21   ` Richard Stallman
2002-08-21  6:44     ` Eli Zaretskii
     [not found]     ` <m21y8rg350.fsf@primate.xs4all.nl>
2002-08-22  8:08       ` Andreas Schwab
2002-08-24  2:32       ` Richard Stallman
     [not found]         ` <m2y9amslnp.fsf@primate.xs4all.nl>
2002-09-02  0:01           ` Richard Stallman
2002-09-02 17:16             ` Stefan Monnier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).