emacs-devel
[Top][All Lists]
Advanced

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

Re: address@hidden: mouse-1-click-follows-link doesn'tgovern behavior in


From: Chong Yidong
Subject: Re: address@hidden: mouse-1-click-follows-link doesn'tgovern behavior in Customize]
Date: Sun, 05 Nov 2006 13:05:03 -0500
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.90 (gnu/linux)

Richard Stallman <address@hidden> writes:

>     OTOH, it is not straightforward to implement the
>     mouse-1-click-follows-link behavior for widgets, including link
>     widgets: in particular, the part where holding the button down for a
>     certain time causes point to move.
>
> C-h v read-quoted-char-radix RET generates a buffer with a link.
> It obeys mouse-1-click-follows-link.
>
> M-x customize-option RET read-quoted-char-radix RET creates a buffer
> with a widget that looks just the same.  But it doesn't act the same.
> This is very bad UI design.
>
> Could we change cus-edit.el to make a link instead of a widget?
> But changing widget-documentation-link-add, say?

At the Lisp level, the custom-group-link widgets behave rather
differently from ordinary links used in, e.g., the *Help* buffer.
There's a lot amount of code in cus-edit.el that specifies an :action
for the custom-group-link widget when the widget is defined.  The
minimum required change is to (i) make these callers specify some
other widget property, say :link-action; (ii) somehow modify the
custom-group-link so that it is inserted along with text properties
that specify a mouse-2 local binding plus a `follow-link' property,
which automagically calls the :link-action of the widget.  It's a
pretty big project.

Recall that the link widgets were changed to look like links during
the Emacs 22 release process; previously they looked like buttons.
The change was made because they are conceptually links rather than
buttons, and people don't expect links to look like buttons.

I think the amount of inconsistency involved is negligible enough that
we can postphone it for after the release.

One compromise is to change the :pressed-face widget property of
custom-group-link widgets.  That way, they will change color when the
user holds down the mouse button, which is a visual cue that they
behave differently from other Emacs links.




reply via email to

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