GNU bug report logs - #51794
29.0.50; invalid input events generated from a mouse click for the tab bar

Previous Next

Package: emacs;

Reported by: Mark Kennedy <mark.t.kennedy <at> gmail.com>

Date: Fri, 12 Nov 2021 21:04:01 UTC

Severity: normal

Found in version 29.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 51794 in the body.
You can then email your comments to 51794 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Fri, 12 Nov 2021 21:04:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Mark Kennedy <mark.t.kennedy <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 12 Nov 2021 21:04:01 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.50; invalid input events generated from a mouse click for the
 tab bar
Date: Fri, 12 Nov 2021 15:49:45 -0500
CAVEAT: this has not been reproduced under an "emacs -Q"

1) launch an emacs with two windows
2) one window has a number of tabs with text files in each
3) the other window has at least one tab with a scala source file,
in scala mode, using LSP
4) the emacs instance is configured to use lsp-metals
5) clicking on the tabs in the text file window works as expected
(e.g. selection, closing)
6) clicking on a tab in the window with the scala source file triggers
the message "<nil> <mouse-1> is undefined".
7) switching from scala mode to fundamental mode restores the correct
tab behavior.
8) switching back to scala mode from fundamental mode restores the
failing behavior

as you can see from the generated environment info below, the
environment is *compilicated*.  bisecting this is out of the question.
i'm hoping that someone could focus on the presence of the "<nil>" in
the generated input sequence since it implies that the lisp symbol nil
was somehow passed into the input event queue.





In GNU Emacs 29.0.50 (build 6, x86_64-pc-linux-gnu, GTK+ Version
3.24.30, cairo version 1.17.4)
 of 2021-11-12 built on new.mofjwutu.com
Repository revision: 12d554e5c54487d753a133c048e262f3d54019bd
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Fedora Linux 35 (Workstation Edition)

Configured features:
CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NOTIFY INOTIFY PDUMPER PNG SECCOMP
SOUND THREADS TIFF TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB

Important settings:
  value of $LANG: en_US.UTF-8
  value of $XMODIFIERS: @im=none
  locale-coding-system: utf-8-unix

Major mode: Scala

Minor modes in effect:
  lsp-headerline-breadcrumb-mode: t
  lsp-diagnostics-mode: t
  lsp-modeline-workspace-status-mode: t
  lsp-modeline-diagnostics-mode: t
  lsp-modeline-code-actions-mode: t
  lsp-completion-mode: t
  indent-guide-mode: t
  subword-mode: t
  save-place-mode: t
  desktop-save-mode: t
  global-display-line-numbers-mode: t
  display-line-numbers-mode: t
  beacon-mode: t
  pyvenv-mode: t
  shell-dirtrack-mode: t
  pcre-mode: t
  dynamic-completion-mode: t
  msb-mode: t
  winner-mode: t
  savehist-mode: t
  which-function-mode: t
  global-page-break-lines-mode: t
  global-hi-lock-mode: t
  hi-lock-mode: t
  icomplete-mode: t
  dap-tooltip-mode: t
  dap-ui-many-windows-mode: t
  dap-ui-controls-mode: t
  dap-ui-mode: t
  which-key-mode: t
  lsp-ui-mode: t
  lsp-ui-doc-mode: t
  lsp-ui-sideline-mode: t
  company-mode: t
  treemacs-filewatch-mode: t
  treemacs-follow-mode: t
  treemacs-git-mode: t
  treemacs-fringe-indicator-mode: t
  lsp-lens-mode: t
  dap-auto-configure-mode: t
  dap-mode: t
  lsp-managed-mode: t
  lsp-mode: t
  yas-minor-mode: t
  flycheck-mode: t
  override-global-mode: t
  hl-todo-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  eldoc-mode: t
  show-paren-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  tab-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
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Load-path shadows:
/home/mtk/.emacs.d/elpa/teco-20200707.2309/teco hides
/usr/local/share/emacs/site-lisp/teco
/home/mtk/.emacs.d/elpa/transient-20211105.100/transient hides
/usr/local/share/emacs/29.0.50/lisp/transient

Features:
(shadow sort mail-extr emacsbug sendmail names edebug autoload tar-mode
arc-mode archive-mode cl-print debug backtrace teco magit-utils crm
jka-compr apropos cus-start eieio-opt speedbar ezimage dframe shortdoc
misearch multi-isearch add-log mm-archive message yank-media dired
dired-loaddefs rfc822 mml mml-sec epa derived gnus-util rmail
rmail-loaddefs mailabbrev gmm-utils mm-decode mm-bodies mm-encode
lsp-headerline lsp-icons url-http url-gw url-cache url-auth mule-util
lsp-diagnostics lsp-modeline company-oddmuse company-keywords
company-etags company-gtags company-dabbrev-code company-dabbrev
company-files company-clang company-cmake company-semantic
company-template company-bbdb vc-git vc-dispatcher lsp-zig lsp-steep
lsp-svelte lsp-sqls lsp-yaml lsp-xml lsp-vimscript lsp-vhdl lsp-vetur
lsp-html lsp-verilog lsp-vala lsp-v lsp-toml lsp-terraform lsp-tex
lsp-sorbet lsp-solargraph lsp-rust lsp-rf lsp-r lsp-purescript lsp-pylsp
lsp-pyls lsp-pwsh lsp-php lsp-perl lsp-ocaml lsp-nix lsp-nim
lsp-markdown lsp-lua lsp-kotlin lsp-json lsp-javascript lsp-haxe
lsp-groovy lsp-hack lsp-graphql lsp-go lsp-completion lsp-gdscript
lsp-fsharp lsp-fortran lsp-eslint lsp-erlang lsp-elixir lsp-elm
lsp-dockerfile lsp-dhall lsp-d lsp-css lsp-csharp gnutls lsp-crystal
lsp-cmake lsp-clojure lsp-semantic-tokens lsp-clangd dom lsp-beancount
lsp-bash lsp-angular lsp-ada lsp-actionscript ccls ccls-member-hierarchy
ccls-inheritance-hierarchy ccls-call-hierarchy ccls-tree ccls-code-lens
ccls-semantic-highlight ccls-common scala-mode
scala-mode-prettify-symbols scala-mode-imenu scala-mode-map
scala-mode-fontlock scala-mode-indent scala-mode-paragraph
scala-mode-syntax scala-mode-lib disp-table indent-guide hlinum linum
cap-words superword subword saveplace desktop frameset
display-line-numbers beacon highlight-indentation flymake-proc flymake
warnings company-capf help-fns radix-tree elpy elpy-rpc pyvenv eshell
esh-cmd esh-ext esh-opt esh-proc esh-io esh-arg esh-module esh-groups
esh-util elpy-shell elpy-profile elpy-django elpy-refactor diff-mode
python tramp-sh tramp tramp-loaddefs trampver tramp-integration
tramp-compat shell pcomplete parse-time iso8601 time-date ls-lisp
format-spec ido files-x etags fileloop generator pcre2el rxt re-builder
completion msb winner savehist which-func page-break-lines hi-lock avoid
icomplete server use-package-delight lsp-pyright dap-mouse dap-ui gdb-mi
gud bui bui-list bui-info bui-entry bui-core bui-history bui-button
bui-utils cus-edit pp cus-load dap-java lsp-java request mailheader
autorevert mail-utils cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs which-key lsp-ui
lsp-ui-flycheck lsp-ui-doc goto-addr lsp-ui-imenu lsp-ui-peek
lsp-ui-sideline lsp-ui-util face-remap company hydra flycheck-package
package-lint let-alist finder finder-inf projectile lisp-mnt mail-parse
rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr grep ibuf-ext
ibuffer ibuffer-loaddefs lsp-metals view lsp-metals-treeview
lsp-treemacs lsp-treemacs-themes treemacs treemacs-header-line
treemacs-compatibility treemacs-mode treemacs-interface
treemacs-extensions treemacs-mouse-interface treemacs-tags
treemacs-persistence treemacs-filewatch-mode treemacs-follow-mode
treemacs-rendering treemacs-async treemacs-workspaces treemacs-dom
treemacs-visuals treemacs-fringe-indicator treemacs-scope pulse
treemacs-faces treemacs-icons treemacs-themes treemacs-core-utils
pfuture hl-line treemacs-logging treemacs-customization treemacs-macros
lsp-metals-protocol lsp-lens dap-mode dap-launch posframe dap-overlays
lsp-mode lsp-protocol aws-snippets go-snippets yasnippet-snippets
yasnippet xref project tree-widget wid-edit spinner pcase network-stream
puny nsm rmc markdown-mode color thingatpt noutline outline lv inline
imenu ht filenotify ewoc epg rfc6068 epg-config compile
text-property-search comint ring flycheck-eldev flycheck ansi-color
find-func use-package-bind-key bind-key easy-mmode importmagic f dash s
epc ctable edmacro kmacro concurrent deferred hl-todo use-package-ensure
ialign align cl-extra use-package-core tab-line trim page-menu
cperl-mode facemenu help-mode rx cl advice info package browse-url url
url-proxy url-privacy url-expand url-methods url-history url-cookie
url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq
eieio eieio-core cl-macs eieio-loaddefs password-cache json map url-vars
seq gv subr-x byte-opt bytecomp byte-compile cconv cl-loaddefs cl-lib
iso-transl tooltip 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 cl-generic
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 simple abbrev obarray
cl-preloaded nadvice button loaddefs faces cus-face macroexp files
window text-properties overlay sha1 md5 base64 format env code-pages
mule custom widget hashtable-print-readable backquote threads dbusbind
inotify dynamic-setting system-font-setting font-render-setting cairo
move-toolbar gtk x-toolkit x multi-tty make-network-process emacs)

Memory information:
((conses 16 2036788 1830354)
 (symbols 48 68716 737)
 (strings 32 376913 356206)
 (string-bytes 1 16103230)
 (vectors 16 171799)
 (vector-slots 8 2498201 708904)
 (floats 8 877 5477)
 (intervals 56 205896 121072)
 (buffers 992 50))




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 13 Nov 2021 07:19:01 GMT) Full text and rfc822 format available.

Message #8 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mark Kennedy <mark.t.kennedy <at> gmail.com>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50;
 invalid input events generated from a mouse click for the tab bar
Date: Sat, 13 Nov 2021 09:18:21 +0200
> From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> Date: Fri, 12 Nov 2021 15:49:45 -0500
> 
> 1) launch an emacs with two windows
> 2) one window has a number of tabs with text files in each
> 3) the other window has at least one tab with a scala source file,
> in scala mode, using LSP
> 4) the emacs instance is configured to use lsp-metals
> 5) clicking on the tabs in the text file window works as expected
> (e.g. selection, closing)
> 6) clicking on a tab in the window with the scala source file triggers
> the message "<nil> <mouse-1> is undefined".
> 7) switching from scala mode to fundamental mode restores the correct
> tab behavior.
> 8) switching back to scala mode from fundamental mode restores the
> failing behavior

Does scala mode rebind mouse clicks to some of its commands?  If so,
please show those rebindings.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 13 Nov 2021 13:44:01 GMT) Full text and rfc822 format available.

Message #11 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mark Kennedy <mark.t.kennedy <at> gmail.com>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 13 Nov 2021 15:43:09 +0200
[Please use Reply All to reply, so that the bug tracker is CC'ed.]

> From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> Date: Sat, 13 Nov 2021 08:37:37 -0500
> 
> it doesn't rebind anything significant.  but i'm not sure that theory
> could explain the key sequence '<nil> <mouse-1>' unless it had
> mistakenly bound it to a keyboard macro?  what do you think the
> presence of the '<nil>' as a keyboard event means?  from where could
> that originate?

That nil means Emacs didn't recognize the part of the window/frame
where you clicked.

Is it possible to provide a complete recipe for reproducing the
problem, starting from "emacs -Q" and loading the minimum number of
additional features required for seeing the problem?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 13 Nov 2021 14:42:02 GMT) Full text and rfc822 format available.

Message #14 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mark Kennedy <mark.t.kennedy <at> gmail.com>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 13 Nov 2021 16:40:58 +0200
[PLEASE USE REPLY ALL TO REPLY, SO THAT THE BUG TRACKER IS CC'ED.]

> From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> Date: Sat, 13 Nov 2021 08:50:08 -0500
> 
> reproducing from -Q is a nightmare.  your comment that it did not
> recognize the part of the window frame is what i want to focus on.
> the window containing the scala mode buffer contains tab-bar tabs.  i
> am clicking in either a tab (on the close icon) or to the right of the
> tab list on the "open new empty tab" icon (still within the tab bar).
> how could that generate the <nil> input event?

I don't know.  That's why I asked for a recipe: to try debugging it
myself.  If it isn't practical to provide a recipe, you will have to
debug it on your system.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 13 Nov 2021 14:53:01 GMT) Full text and rfc822 format available.

Message #17 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 13 Nov 2021 09:52:21 -0500
i'm willing to attempt to debug it myself but not via the -Q route.  i
prefer to focus on where the bad input event stream is being created.
any suggestions about where to put an elisp or C breakpoint to go
after this?
/mark

On Sat, Nov 13, 2021 at 9:41 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
>
> [PLEASE USE REPLY ALL TO REPLY, SO THAT THE BUG TRACKER IS CC'ED.]
>
> > From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> > Date: Sat, 13 Nov 2021 08:50:08 -0500
> >
> > reproducing from -Q is a nightmare.  your comment that it did not
> > recognize the part of the window frame is what i want to focus on.
> > the window containing the scala mode buffer contains tab-bar tabs.  i
> > am clicking in either a tab (on the close icon) or to the right of the
> > tab list on the "open new empty tab" icon (still within the tab bar).
> > how could that generate the <nil> input event?
>
> I don't know.  That's why I asked for a recipe: to try debugging it
> myself.  If it isn't practical to provide a recipe, you will have to
> debug it on your system.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 13 Nov 2021 15:31:01 GMT) Full text and rfc822 format available.

Message #20 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mark Kennedy <mark.t.kennedy <at> gmail.com>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 13 Nov 2021 17:29:44 +0200
> From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> Date: Sat, 13 Nov 2021 09:52:21 -0500
> Cc: 51794 <at> debbugs.gnu.org
> 
> i'm willing to attempt to debug it myself but not via the -Q route.  i
> prefer to focus on where the bad input event stream is being created.
> any suggestions about where to put an elisp or C breakpoint to go
> after this?

In keyboard.c, under "case MOUSE_CLICK_EVENT:", step through the
code until you get to this line:

	    position = make_lispy_position (f, event->x, event->y,
					    event->timestamp);

then step into make_lispy_position, and see what it produces.

(I hope I got the code right; apologies if not.)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 13 Nov 2021 15:45:01 GMT) Full text and rfc822 format available.

Message #23 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 13 Nov 2021 10:43:39 -0500
[Message part 1 (text/plain, inline)]
Thanks, I'll check it out.

On Sat, Nov 13, 2021, 10:30 AM Eli Zaretskii <eliz <at> gnu.org> wrote:

> > From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> > Date: Sat, 13 Nov 2021 09:52:21 -0500
> > Cc: 51794 <at> debbugs.gnu.org
> >
> > i'm willing to attempt to debug it myself but not via the -Q route.  i
> > prefer to focus on where the bad input event stream is being created.
> > any suggestions about where to put an elisp or C breakpoint to go
> > after this?
>
> In keyboard.c, under "case MOUSE_CLICK_EVENT:", step through the
> code until you get to this line:
>
>             position = make_lispy_position (f, event->x, event->y,
>                                             event->timestamp);
>
> then step into make_lispy_position, and see what it produces.
>
> (I hope I got the code right; apologies if not.)
>
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Thu, 18 Nov 2021 23:40:02 GMT) Full text and rfc822 format available.

Message #26 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Thu, 18 Nov 2021 18:39:23 -0500
bug fix #50993 is the bug.  it made make_lispy_position skip setting
posn to the tab_bar if track_mouse is non-nil.  why track_mouse is nil
for some frames and not for others i didn't look into.
thoughts/comments?

/mark

On Sat, Nov 13, 2021 at 10:43 AM Mark Kennedy <mark.t.kennedy <at> gmail.com> wrote:
>
> Thanks, I'll check it out.
>
> On Sat, Nov 13, 2021, 10:30 AM Eli Zaretskii <eliz <at> gnu.org> wrote:
>>
>> > From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
>> > Date: Sat, 13 Nov 2021 09:52:21 -0500
>> > Cc: 51794 <at> debbugs.gnu.org
>> >
>> > i'm willing to attempt to debug it myself but not via the -Q route.  i
>> > prefer to focus on where the bad input event stream is being created.
>> > any suggestions about where to put an elisp or C breakpoint to go
>> > after this?
>>
>> In keyboard.c, under "case MOUSE_CLICK_EVENT:", step through the
>> code until you get to this line:
>>
>>             position = make_lispy_position (f, event->x, event->y,
>>                                             event->timestamp);
>>
>> then step into make_lispy_position, and see what it produces.
>>
>> (I hope I got the code right; apologies if not.)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Fri, 19 Nov 2021 07:02:01 GMT) Full text and rfc822 format available.

Message #29 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mark Kennedy <mark.t.kennedy <at> gmail.com>, martin rudalics <rudalics <at> gmx.at>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Fri, 19 Nov 2021 09:01:16 +0200
> From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> Date: Thu, 18 Nov 2021 18:39:23 -0500
> Cc: 51794 <at> debbugs.gnu.org
> 
> bug fix #50993 is the bug.  it made make_lispy_position skip setting
> posn to the tab_bar if track_mouse is non-nil.  why track_mouse is nil
> for some frames and not for others i didn't look into.
> thoughts/comments?

Please do look into that last part, because we need to understand the
situations in which this happens well enough to devise a solution.  We
don't want to revert that fix because it will re-introduce a larger
problem.  Specifically, why does this happen to you only under those
customizations and not in "emacs -Q"?

Martin, any suggestions?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Fri, 19 Nov 2021 07:55:02 GMT) Full text and rfc822 format available.

Message #32 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: mark.t.kennedy <at> gmail.com
Cc: rudalics <at> gmx.at, 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50;
 invalid input events generated from a mouse click for the tab bar
Date: Fri, 19 Nov 2021 09:54:16 +0200
> Date: Fri, 19 Nov 2021 09:01:16 +0200
> From: Eli Zaretskii <eliz <at> gnu.org>
> Cc: 51794 <at> debbugs.gnu.org
> 
> Specifically, why does this happen to you only under those
> customizations and not in "emacs -Q"?

Could it be that some package you load enables mouse-tracking?  if so,
which one, and for what purpose?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Fri, 19 Nov 2021 09:28:02 GMT) Full text and rfc822 format available.

Message #35 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Eli Zaretskii <eliz <at> gnu.org>, Mark Kennedy <mark.t.kennedy <at> gmail.com>
Cc: 51794 <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Fri, 19 Nov 2021 10:26:52 +0100
[Message part 1 (text/plain, inline)]
>> bug fix #50993 is the bug.  it made make_lispy_position skip setting
>> posn to the tab_bar if track_mouse is non-nil.  why track_mouse is nil
>> for some frames and not for others i didn't look into.
>> thoughts/comments?
>
> Please do look into that last part, because we need to understand the
> situations in which this happens well enough to devise a solution.  We
> don't want to revert that fix because it will re-introduce a larger
> problem.  Specifically, why does this happen to you only under those
> customizations and not in "emacs -Q"?
>
> Martin, any suggestions?

Maybe the attached patch helps.

martin
[track-mouse.diff (text/x-patch, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Fri, 19 Nov 2021 13:19:01 GMT) Full text and rfc822 format available.

Message #38 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 51794 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Fri, 19 Nov 2021 08:18:19 -0500
that patch fixed the problem i observed.  thanks to both of you!
/mark

On Fri, Nov 19, 2021 at 4:26 AM martin rudalics <rudalics <at> gmx.at> wrote:
>
>  >> bug fix #50993 is the bug.  it made make_lispy_position skip setting
>  >> posn to the tab_bar if track_mouse is non-nil.  why track_mouse is nil
>  >> for some frames and not for others i didn't look into.
>  >> thoughts/comments?
>  >
>  > Please do look into that last part, because we need to understand the
>  > situations in which this happens well enough to devise a solution.  We
>  > don't want to revert that fix because it will re-introduce a larger
>  > problem.  Specifically, why does this happen to you only under those
>  > customizations and not in "emacs -Q"?
>  >
>  > Martin, any suggestions?
>
> Maybe the attached patch helps.
>
> martin




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 20 Nov 2021 08:04:01 GMT) Full text and rfc822 format available.

Message #41 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 51794 <at> debbugs.gnu.org, mark.t.kennedy <at> gmail.com
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 20 Nov 2021 10:03:02 +0200
> Cc: 51794 <at> debbugs.gnu.org
> From: martin rudalics <rudalics <at> gmx.at>
> Date: Fri, 19 Nov 2021 10:26:52 +0100
> 
>  >> bug fix #50993 is the bug.  it made make_lispy_position skip setting
>  >> posn to the tab_bar if track_mouse is non-nil.  why track_mouse is nil
>  >> for some frames and not for others i didn't look into.
>  >> thoughts/comments?
>  >
>  > Please do look into that last part, because we need to understand the
>  > situations in which this happens well enough to devise a solution.  We
>  > don't want to revert that fix because it will re-introduce a larger
>  > problem.  Specifically, why does this happen to you only under those
>  > customizations and not in "emacs -Q"?
>  >
>  > Martin, any suggestions?
> 
> Maybe the attached patch helps.

Thanks.  Please install this on the emacs-28 branch, but please add
comments explaining why we need this special symbol.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 20 Nov 2021 08:50:01 GMT) Full text and rfc822 format available.

Message #44 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51794 <at> debbugs.gnu.org, mark.t.kennedy <at> gmail.com
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 20 Nov 2021 09:48:55 +0100
> Thanks.  Please install this on the emacs-28 branch,

I'll try to do that.

> but please add
> comments explaining why we need this special symbol.

We don't need a "special" symbol, anything non-nil but 't' will do.
I'll add a comment in that sense.

martin




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 20 Nov 2021 09:08:01 GMT) Full text and rfc822 format available.

Message #47 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 51794 <at> debbugs.gnu.org, mark.t.kennedy <at> gmail.com
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 20 Nov 2021 11:07:32 +0200
> Cc: mark.t.kennedy <at> gmail.com, 51794 <at> debbugs.gnu.org
> From: martin rudalics <rudalics <at> gmx.at>
> Date: Sat, 20 Nov 2021 09:48:55 +0100
> 
>  > Thanks.  Please install this on the emacs-28 branch,
> 
> I'll try to do that.

If you have problems, please post the patch and I will install it.

Thanks.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sat, 20 Nov 2021 09:57:02 GMT) Full text and rfc822 format available.

Message #50 received at 51794 <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51794 <at> debbugs.gnu.org, mark.t.kennedy <at> gmail.com
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 20 Nov 2021 10:56:13 +0100
[Message part 1 (text/plain, inline)]
> If you have problems, please post the patch and I will install it.

Attached.  ChangeLog would go as:


Report mouse events on tab or tool bar when 'track-mouse' is t (Bug#51794)

* lisp/mouse.el (mouse-drag-track)
* lisp/mouse-drag.el (mouse-drag-drag): Set 'track-mouse' to some
value neither t nor nil (Bug#51794).
* src/keyboard.c (make_lispy_position): If track_mouse is Qt,
report event on tool or tab bar (Bug#51794).


Please fix everything as you see fit.

Thanks, martin

[track-mouse.diff (text/x-patch, attachment)]

Reply sent to Eli Zaretskii <eliz <at> gnu.org>:
You have taken responsibility. (Sat, 20 Nov 2021 10:09:02 GMT) Full text and rfc822 format available.

Notification sent to Mark Kennedy <mark.t.kennedy <at> gmail.com>:
bug acknowledged by developer. (Sat, 20 Nov 2021 10:09:02 GMT) Full text and rfc822 format available.

Message #55 received at 51794-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: martin rudalics <rudalics <at> gmx.at>
Cc: 51794-done <at> debbugs.gnu.org, mark.t.kennedy <at> gmail.com
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sat, 20 Nov 2021 12:08:54 +0200
> Cc: mark.t.kennedy <at> gmail.com, 51794 <at> debbugs.gnu.org
> From: martin rudalics <rudalics <at> gmx.at>
> Date: Sat, 20 Nov 2021 10:56:13 +0100
> 
> > If you have problems, please post the patch and I will install it.
> 
> Attached.  ChangeLog would go as:
> 
> 
> Report mouse events on tab or tool bar when 'track-mouse' is t (Bug#51794)
> 
> * lisp/mouse.el (mouse-drag-track)
> * lisp/mouse-drag.el (mouse-drag-drag): Set 'track-mouse' to some
> value neither t nor nil (Bug#51794).
> * src/keyboard.c (make_lispy_position): If track_mouse is Qt,
> report event on tool or tab bar (Bug#51794).
> 
> 
> Please fix everything as you see fit.
> 
> Thanks, martin

Thanks, installed, and closing the bug.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sun, 21 Nov 2021 09:13:02 GMT) Full text and rfc822 format available.

Message #58 received at 51794-done <at> debbugs.gnu.org (full text, mbox):

From: martin rudalics <rudalics <at> gmx.at>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 51794-done <at> debbugs.gnu.org, mark.t.kennedy <at> gmail.com
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sun, 21 Nov 2021 10:12:35 +0100
> Thanks, installed, and closing the bug.

Thanks for helping.

martin






Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sun, 21 Nov 2021 14:58:02 GMT) Full text and rfc822 format available.

Message #61 received at 51794-done <at> debbugs.gnu.org (full text, mbox):

From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
To: martin rudalics <rudalics <at> gmx.at>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 51794-done <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sun, 21 Nov 2021 09:56:47 -0500
quick question only indirectly related to the fix.  why would it go
into the emacs-28 branch and not the HEAD branch?  if you're busy,
don't worry about answering.  or both branches?

/mark

On Sun, Nov 21, 2021 at 4:12 AM martin rudalics <rudalics <at> gmx.at> wrote:
>
> > Thanks, installed, and closing the bug.
>
> Thanks for helping.
>
> martin
>
>




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sun, 21 Nov 2021 15:01:02 GMT) Full text and rfc822 format available.

Message #64 received at 51794-done <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Mark Kennedy <mark.t.kennedy <at> gmail.com>
Cc: rudalics <at> gmx.at, 51794-done <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sun, 21 Nov 2021 17:00:07 +0200
> From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> Date: Sun, 21 Nov 2021 09:56:47 -0500
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 51794-done <at> debbugs.gnu.org
> 
> quick question only indirectly related to the fix.  why would it go
> into the emacs-28 branch and not the HEAD branch?  if you're busy,
> don't worry about answering.  or both branches?

The release branch gets merged to master quite regularly, so this is
not a problem, and the bonus is that the same commit exists on master
as well.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51794; Package emacs. (Sun, 21 Nov 2021 15:21:01 GMT) Full text and rfc822 format available.

Message #67 received at 51794-done <at> debbugs.gnu.org (full text, mbox):

From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: martin rudalics <rudalics <at> gmx.at>, 51794-done <at> debbugs.gnu.org
Subject: Re: bug#51794: 29.0.50; invalid input events generated from a mouse
 click for the tab bar
Date: Sun, 21 Nov 2021 10:20:09 -0500
[Message part 1 (text/plain, inline)]
Got it. Thanks!

On Sun, Nov 21, 2021, 10:00 AM Eli Zaretskii <eliz <at> gnu.org> wrote:

> > From: Mark Kennedy <mark.t.kennedy <at> gmail.com>
> > Date: Sun, 21 Nov 2021 09:56:47 -0500
> > Cc: Eli Zaretskii <eliz <at> gnu.org>, 51794-done <at> debbugs.gnu.org
> >
> > quick question only indirectly related to the fix.  why would it go
> > into the emacs-28 branch and not the HEAD branch?  if you're busy,
> > don't worry about answering.  or both branches?
>
> The release branch gets merged to master quite regularly, so this is
> not a problem, and the bonus is that the same commit exists on master
> as well.
>
[Message part 2 (text/html, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 20 Dec 2021 12:24:13 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 89 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.