Hi, I have this MWE code: (defun mwe-function-1 ()   "MWE function 1"   (interactive)   (unwind-protect       (query-replace "foo" "bar" nil (point-min) (point-max))     ;; UNWINDFORMS     (read-string "function 1 executed"))) (defun mwe-function-2 ()   "MWE function 2"   (interactive)   (unwind-protect       (query-replace "foo" "bar" nil (point-min) (point-max))     ;; UNWINDFORMS     (read-string "function 2 executed"))) (defun mwe-function-3 ()   "MWE function 3"   (interactive)   (unwind-protect       (query-replace "foo" "bar" nil (point-min) (point-max))     ;; UNWINDFORMS     (read-string "function 3 executed"))) (define-minor-mode mwe-mode   "MWE mode"   :init-value nil   :lighter (:eval (propertize " MWE "                               'face '(:foreground "RoyalBlue" :background "DarkGoldenrod1")))   :keymap   `(     (,(kbd "") . mwe-function)     )   (if mwe-mode       (easy-menu-define mwe-menu mwe-mode-map         "MWE"         '("MWE mode"           ;; I want the menu on mode-line only:           :visible (not (eq (framep (selected-frame)) 'x))           ["mwe-function-1" mwe-function-1            :help "mwe-function 1"]           ["mwe-function-2" mwe-function-2            :help "mwe-function 2"]           ["mwe-function-3" mwe-function-3            :help "mwe-function 3"]))     t)) that builds a minor mode where I have the mwe-menu on the mode line. It happens, very randomly but quite often, that I am experiencing an issue in Emacs where clicking on a function name in a menu displayed on the mode line not only triggers the desired function but also has an unintended effect on the window or buffer below, interfering with the intended functionality. When I click on the function mwe-function-* in the menu, it doesn't get executed because the mouse event interrupts `query-replace'. The issue doesn't occur consistently and is quite random. I opened an issue on StackExchange: https://emacs.stackexchange.com/q/80153/15606 Here you will find a GIF that shows the problem I described. This is big problem for me because I write code for a team that use Emacs to edit LaTeX documents and I'm trying to create a user-friendly environment. But many functions doesn't work when called from this kind of menus. Best regards, Gabriele Nicolardi In GNU Emacs 29.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.20,  cairo version 1.16.0) of 2023-12-10 built on lcy02-amd64-098 Repository revision: 28fb02492c2444c5976eb53fd6f9badfe54f4ea1 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12013000 System Description: Ubuntu 20.04.6 LTS Configured using:  'configure --prefix=/snap/emacs/current/usr --with-x-toolkit=gtk3  --without-xaw3d --with-modules --with-cairo  --with-native-compilation=aot --with-xinput2 --with-tree-sitter  --with-json  'CFLAGS=-isystem/build/emacs/parts/emacs/install/usr/include  -isystem/build/emacs/parts/emacs/install/usr/include/x86_64-linux-gnu  -isystem/build/emacs/stage/usr/include -O2'  'CPPFLAGS=-isystem/build/emacs/parts/emacs/install/usr/include  -isystem/build/emacs/parts/emacs/install/usr/include/x86_64-linux-gnu  -isystem/build/emacs/stage/usr/include'  'LDFLAGS=-L/build/emacs/parts/emacs/install/lib  -L/build/emacs/parts/emacs/install/usr/lib  -L/build/emacs/parts/emacs/install/lib/x86_64-linux-gnu  -L/build/emacs/parts/emacs/install/usr/lib/x86_64-linux-gnu  -L/build/emacs/stage/usr/lib'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings:   value of $LANG: it_IT.UTF-8   locale-coding-system: utf-8-unix Major mode: LaTeX Minor modes in effect:   shell-dirtrack-mode: t   mwe-mode: t   tooltip-mode: t   global-eldoc-mode: t   show-paren-mode: t   electric-indent-mode: t   mouse-wheel-mode: t   tool-bar-mode: t   menu-bar-mode: t   file-name-shadow-mode: t   global-font-lock-mode: t   font-lock-mode: t   blink-cursor-mode: t   line-number-mode: t   transient-mark-mode: t   auto-composition-mode: t   auto-encryption-mode: t   auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils byte-opt time-date cl-loaddefs comp comp-cstr warnings icons rx cl-seq cl-macs gv cl-extra help-mode bytecomp byte-compile cl-lib tex-mode compile text-property-search shell subr-x pcomplete comint ansi-osc ansi-color ring display-line-numbers easy-mmode rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 102650 4917)  (symbols 48 8309 0)  (strings 32 24629 2279)  (string-bytes 1 807125)  (vectors 16 18896)  (vector-slots 8 370470 13534)  (floats 8 42 323)  (intervals 56 899 453)  (buffers 984 15)) I have this MWE code: (defun mwe-function-1 () "MWE function 1" (interactive) (unwind-protect (query-replace "foo" "bar" nil (point-min) (point-max)) ;; UNWINDFORMS (read-string "function 1 executed"))) (defun mwe-function-2 () "MWE function 2" (interactive) (unwind-protect (query-replace "foo" "bar" nil (point-min) (point-max)) ;; UNWINDFORMS (read-string "function 2 executed"))) (defun mwe-function-3 () "MWE function 3" (interactive) (unwind-protect (query-replace "foo" "bar" nil (point-min) (point-max)) ;; UNWINDFORMS (read-string "function 3 executed"))) (define-minor-mode mwe-mode "MWE mode" :init-value nil :lighter (:eval (propertize " MWE " 'face '(:foreground "RoyalBlue" :background "DarkGoldenrod1"))) :keymap `( (,(kbd "") . mwe-function) ) (if mwe-mode (easy-menu-define mwe-menu mwe-mode-map "MWE" '("MWE mode" ;; I want the menu on mode-line only: :visible (not (eq (framep (selected-frame)) 'x)) ["mwe-function-1" mwe-function-1 :help "mwe-function 1"] ["mwe-function-2" mwe-function-2 :help "mwe-function 2"] ["mwe-function-3" mwe-function-3 :help "mwe-function 3"])) t)) that builds a minor mode where I have the mwe-menu on the mode line. It happens, very randomly, that I am experiencing an issue in Emacs where clicking on a function name in a menu displayed on the mode line not only triggers the desired function but also has an unintended effect on the window or buffer below, interfering with the intended functionality. In GNU Emacs 29.1 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.24.20, cairo version 1.16.0) of 2023-12-10 built on lcy02-amd64-098 Repository revision: 28fb02492c2444c5976eb53fd6f9badfe54f4ea1 Repository branch: master Windowing system distributor 'The X.Org Foundation', version 11.0.12013000 System Description: Ubuntu 20.04.6 LTS Configured using: 'configure --prefix=/snap/emacs/current/usr --with-x-toolkit=gtk3 --without-xaw3d --with-modules --with-cairo --with-native-compilation=aot --with-xinput2 --with-tree-sitter --with-json 'CFLAGS=-isystem/build/emacs/parts/emacs/install/usr/include -isystem/build/emacs/parts/emacs/install/usr/include/x86_64-linux-gnu -isystem/build/emacs/stage/usr/include -O2' 'CPPFLAGS=-isystem/build/emacs/parts/emacs/install/usr/include -isystem/build/emacs/parts/emacs/install/usr/include/x86_64-linux-gnu -isystem/build/emacs/stage/usr/include' 'LDFLAGS=-L/build/emacs/parts/emacs/install/lib -L/build/emacs/parts/emacs/install/usr/lib -L/build/emacs/parts/emacs/install/lib/x86_64-linux-gnu -L/build/emacs/parts/emacs/install/usr/lib/x86_64-linux-gnu -L/build/emacs/stage/usr/lib'' Configured features: ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS TREE_SITTER X11 XDBE XIM XINPUT2 XPM GTK3 ZLIB Important settings: value of $LANG: it_IT.UTF-8 locale-coding-system: utf-8-unix Major mode: LaTeX Minor modes in effect: shell-dirtrack-mode: t mwe-mode: t tooltip-mode: t global-eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message mailcap yank-media puny dired dired-loaddefs rfc822 mml mml-sec password-cache epa derived epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils byte-opt time-date cl-loaddefs comp comp-cstr warnings icons rx cl-seq cl-macs gv cl-extra help-mode bytecomp byte-compile cl-lib tex-mode compile text-property-search shell subr-x pcomplete comint ansi-osc ansi-color ring display-line-numbers easy-mmode rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting cairo move-toolbar gtk x-toolkit xinput2 x multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 102650 4917) (symbols 48 8309 0) (strings 32 24629 2279) (string-bytes 1 807125) (vectors 16 18896) (vector-slots 8 370470 13534) (floats 8 42 323) (intervals 56 899 453) (buffers 984 15))