Subject: 29.0.50; spurious <tab-bar> <mouse-movement> events generated by mouse motion in tab-bar

From: Mark Kennedy <[email-masked]>
Date: Tue, 18 Jan 2022 20:02:52 -0500

This bug occurs in LSP clients (observed for both scala and python) with
many minor modes in effect.  Not feasible to reproduce from -Q.  Mouse motion in
the tab bar (over both a tab name or the white space between them)
generates unwanted "<tab-bar> <mouse-motion>" input events (which are
unbound).  Eli, if this isn't sufficient info, feel free to point me at
where to start looking again.  Thanks.

In GNU Emacs 29.0.50 (build 43, x86_64-pc-linux-gnu, GTK+ Version 3.24.31, cairo version 1.17.4)
 of 2022-01-17 built on x1.mofjwutu.com
Repository revision: 2dad332a1439b59a62cd5ed0d8e3626d9e91e3e5
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12014000
System Description: Fedora Linux 35 (Workstation Edition)

Configured using:
 'configure --with-native-compilation'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GSETTINGS HARFBUZZ JPEG JSON
LIBSELINUX LIBSYSTEMD LIBXML2 MODULES NATIVE_COMP NOTIFY INOTIFY PDUMPER
PNG SECCOMP SOUND SQLITE3 THREADS TIFF TOOLKIT_SCROLL_BARS WEBP 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:
  shell-dirtrack-mode: t
  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
  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
  auto-revert-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/transient-20220117.1122/transient hides /usr/local/share/emacs/29.0.50/lisp/transient

Features:
(shadow emacsbug names edebug autoload rfc2104 magit-utils crm jka-compr
novice mailalias sort mail-extr smtpmail sendmail cus-start python
tramp-sh tramp tramp-loaddefs trampver tramp-integration files-x
tramp-compat shell pcomplete parse-time iso8601 ls-lisp format-spec teco
cl-print debug backtrace shortdoc help-fns radix-tree bs hippie-exp
misearch multi-isearch add-log mm-archive message yank-media rfc822 mml
mml-sec epa derived gnus-util mailabbrev gmm-utils mm-decode mm-bodies
mm-encode lsp-headerline lsp-icons vc bug-reference dired-aux dired
dired-loaddefs url-http url-gw url-cache url-auth mule-util time-date
lsp-diagnostics lsp-modeline vc-git diff-mode vc-dispatcher
company-oddmuse company-keywords company-etags etags fileloop generator
company-gtags company-dabbrev-code company-dabbrev company-files
company-clang company-capf company-cmake company-semantic
company-template company-bbdb 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-nginx 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 pcre2el rxt re-builder completion msb winner
savehist which-func page-break-lines hi-lock avoid icomplete server
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
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
which-key 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 use-package-core tab-line comp
comp-cstr cl-extra help-mode trim page-menu cperl-mode facemenu warnings
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 keymap 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
native-compile emacs)

Memory information:
((conses 16 2213757 1808274)
 (symbols 48 70393 1138)
 (strings 32 431706 277233)
 (string-bytes 1 17004484)
 (vectors 16 240645)
 (vector-slots 8 4030196 877167)
 (floats 8 934 7751)
 (intervals 56 216050 127208)
 (buffers 992 61))