GNU bug report logs -
#447
last-nonmenu-event and sub-menus
Previous Next
Reported by: Glenn Morris <rgm <at> gnu.org>
Date: Wed, 18 Jun 2008 23:15:03 UTC
Severity: normal
Done: martin rudalics <rudalics <at> gmx.at>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
last-nonmenu-event returns a bad value when submenus are involved.
This applies to 22.2 and the current CVS. As an example:
emacs -Q
;; Evaluate this code:
(defun bar ()
(interactive)
(message "%s :: %s" last-nonmenu-event
(posn-window (event-start last-nonmenu-event)))
(sit-for 5))
(global-set-key
[down-mouse-2]
'(menu-item "foo"
(keymap "foo"
(bar menu-item "bar" bar)
(submenu menu-item "submenu"
(keymap "submenu" (bar menu-item "bar" bar))))))
C-x 2
Put "scratch" in one window, "messages" in the other.
Select "messages" window.
Move mouse over "scratch", but do not select it.
Press mouse-2, and select the "bar" menu-item.
When called from the top-level menu, `bar' correctly returns:
(down-mouse-2 (#<window 3 on *scratch*> 534 (251 . 101) 2649593899 nil
534 (27 . 6) nil (8 . 11) (9 . 15))) :: #<window 3 on *scratch*>
When called from the submenu, `bar' returns a bad result:
bar :: #<window 7 on *Messages*>
The window is wrong, etc.
This bug report was last modified 16 years and 133 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.