GNU bug report logs -
#66192
30.0.50; lisp/buttons.el (push-button) fails to handle the <return> action on gui emacs
Previous Next
Reported by: Madhu <enometh <at> meer.net>
Date: Mon, 25 Sep 2023 15:12:02 UTC
Severity: normal
Found in version 30.0.50
Done: Stefan Kangas <stefankangas <at> gmail.com>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#66192: 30.0.50; lisp/buttons.el (push-button) fails to handle the <return> action on gui emacs
which was filed against the emacs package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 66192 <at> debbugs.gnu.org.
--
66192: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=66192
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
Madhu <enometh <at> meer.net> writes:
> Yes it's fixed, please close.
Done.
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
* commit a496509cedb17109d0e6297a74e2ff8ed526333c
|Commit: Po Lu <luangruo <at> yahoo.com>
|CommitDate: Thu Jan 19 22:19:06 2023 +0800
Introduced a change to lisp/button.el:(push-button) which causes the
following recipe to fail. Consider a buffer with the following
contents:
```
;;text-button
(defvar-keymap my-button-map :parent button-map "<return>" 'push-button)
(setq $but (make-text-button 1 10
'action #'(lambda(b) (message "push-button %S" b))
'keymap my-button-map))
```
evaluating the buffer sets up a text button in the first line. In a gui
emacs Hitting RET on the button fails with an error:
"push-button: Wrong type argument: listp, return".
The following patch fixes it for me but maybe there is some other issue?
[0001-lisp-button.el-push-button-handle-kbd-return.patch (text/x-patch, inline)]
From e69be9cf0af72c5fcda8cda05b50a556741009b2 Mon Sep 17 00:00:00 2001
From: Madhu <enometh <at> net.meer>
Date: Mon, 25 Sep 2023 20:20:05 +0530
Subject: [PATCH] lisp/button.el: (push-button): handle kbd <return>
---
lisp/button.el | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lisp/button.el b/lisp/button.el
index b01595943fc..0e98ec722d9 100644
--- a/lisp/button.el
+++ b/lisp/button.el
@@ -492,7 +492,7 @@ push-button
(if str-button
;; mode-line, header-line, or display string event.
(button-activate str t)
- (if (eq (car pos) 'touchscreen-down)
+ (if (and (listp pos) (eq (car pos) 'touchscreen-down))
;; If touch-screen-track tap returns nil, then the
;; tap was cancelled.
(when (touch-screen-track-tap pos)
--
2.39.2.101.g768bb238c4
This bug report was last modified 1 year and 241 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.