unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Nick Roberts <nickrob@snap.net.nz>
Cc: emacs-devel@gnu.org
Subject: Buffer menu fix
Date: Tue, 6 Sep 2005 11:58:55 +1200	[thread overview]
Message-ID: <17180.56255.712298.670071@farnswood.snap.net.nz> (raw)
In-Reply-To: <87slwkfxt9.fsf@stupidchicken.com>

Chong Yidong writes:
 > This is regarding this FOR-RELEASE item:
 > 
 >    ** The header-line buttons in the buffer list buffer should respond
 >       to Mouse-1.
 > 
 > The following patch fixes the bug and simplifies the code.  (The `if'
 > condition that checks `Buffer-menu-use-header-line' in the old code is
 > not necessary, because it does no harm to bind some extra keys.)
 > 
 > If there are no objections over the next few days, I will check it in.

 ...
 >   (defun list-buffers-noselect (&optional files-only buffer-list)
 > --- 645,663 ----
 >   			       "mouse-2: sort by visited order"
 >   			     "mouse-2, RET: sort by visited order"))
 >   	      'mouse-face 'highlight
 > ! 	      'keymap (let ((map (make-sparse-keymap))
 > ! 			    (fun `(lambda (e)
 > ! 				    (interactive "e")
 > ! 				    (if e (mouse-select-window e))
 > ! 				    (Buffer-menu-sort ,column))))
 > ! 			(define-key map [header-line mouse-1] fun)
 > ! 			(define-key map [header-line mouse-2] fun)
 > ! 			(define-key map [header-line down-mouse-1] 'ignore)
 > ! 			(define-key map [mouse-2] fun)
 > ! 			(define-key map [follow-link] 'mouse-face)
 > ! 			(define-key map "\C-m"
 > ! 			  `(lambda () (interactive)
 > ! 			     (Buffer-menu-sort ,column)))
 >   			map)))

With this patch header-line buttons in the buffer list buffer certainly
respond to Mouse-1 but unfortunately they do this even when
mouse-1-click-follows-link is nil.  This i because you have added the line

 > ! 			(define-key map [header-line mouse-1] fun)

I don't think

 > ! 			(define-key map [follow-link] 'mouse-face)

does anything in this case possibly because map here is a text property and
not associated with a mode.

It would be best to omit the line

 > ! 			(define-key map [header-line down-mouse-1] 'ignore)

because then the header line can then respond to mouse-1 clicks and still be
dragged (try it on the mode-line to see what I mean).

 > ! 			(define-key map "\C-m"
 > ! 			  `(lambda () (interactive)
 > ! 			     (Buffer-menu-sort ,column)))
 
I don't see the point of this as you can't place point on the header line.

In summary, I don't see how to solve the problem (neither did the original
author presumably), all I can do is pull your solution apart.

Sorry,

Nick

  parent reply	other threads:[~2005-09-05 23:58 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-09-04 19:16 Buffer menu fix Chong Yidong
2005-09-05  3:32 ` Eli Zaretskii
2005-09-05 12:31   ` Chong Yidong
2005-09-05 20:50     ` Eli Zaretskii
2005-09-05 22:18       ` Chong Yidong
2005-09-05 23:16         ` Chong Yidong
2005-09-06  4:39         ` Eli Zaretskii
2005-09-06  8:09           ` Thien-Thi Nguyen
2005-09-06 19:49           ` Chong Yidong
2005-09-06 23:01             ` Kim F. Storm
2005-09-07  0:08               ` Chong Yidong
2005-09-07 12:07               ` Stefan Monnier
2005-09-07 13:04                 ` Kim F. Storm
2005-09-08  6:02                   ` Chong Yidong
2005-09-07 23:55               ` Chong Yidong
2005-09-05  7:14 ` Richard M. Stallman
2005-09-05 23:58 ` Nick Roberts [this message]
2005-09-06  0:23   ` Chong Yidong
2005-09-06  1:16     ` Nick Roberts
2005-09-06  3:30       ` asdf
2005-09-06  4:15         ` Nick Roberts
2005-09-06 19:17           ` Chong Yidong
2005-09-06 11:22     ` Richard M. Stallman
2005-09-06 19:16       ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2005-09-06  9:55 Tomas Zerolo
2005-09-06 21:41 ` Kevin Rodgers

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=17180.56255.712298.670071@farnswood.snap.net.nz \
    --to=nickrob@snap.net.nz \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).