From: Eli Zaretskii <eliz@gnu.org>
To: Juri Linkov <juri@linkov.net>, Stephen Berman <stephen.berman@gmx.net>
Cc: luangruo@yahoo.com, 63271@debbugs.gnu.org
Subject: bug#63271: 29.0.90; broken mouse-face
Date: Tue, 09 May 2023 11:36:01 +0300 [thread overview]
Message-ID: <83fs85c366.fsf@gnu.org> (raw)
In-Reply-To: <86ednq11lv.fsf@mail.linkov.net> (message from Juri Linkov on Tue, 09 May 2023 09:45:16 +0300)
> From: Juri Linkov <juri@linkov.net>
> Cc: luangruo@yahoo.com, 63271@debbugs.gnu.org
> Date: Tue, 09 May 2023 09:45:16 +0300
>
> > And what exactly is the manifestation of the problem in the image you
> > posted? that wide black part that hides the letters "ODO"? or
> > something else?
>
> The letters turn into black boxes while moving the cursor over them
> when the mouse pointer is over the text.
Could you or Stephen please perform the following experiment, using
the latest emacs-29 branch, and report the results:
$ gdb ./emacs
...
(gdb) break xdisp.c:33519
(gdb) run -Q
The breakpoint is here:
if (end_hpos > start_hpos)
{
draw_row_with_mouse_face (w, start_x, row,
start_hpos, end_hpos, draw);
row->mouse_face_p <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
= draw == DRAW_MOUSE_FACE || draw == DRAW_IMAGE_RAISED;
}
Once inside Emacs after "run -Q", first turn off blink-cursor-mode and
global-eldoc-mode, then evaluate the recipe:
M-: (insert " " (propertize "TODO" 'face '(:inherit variable-pitch) 'mouse-face 'highlight)) RET
Then move the mouse pointer over the "TODO" text. The breakpoint will
break, and GDB will kick in. Then type:
(gdb) pgrow
(gdb) continue
The breakpoint will break again, and the display of Emacs you are
debugging will show the mouse highlight. Then type again:
(gdb) pgrow
And show everything that GDB displays as result of the two "pgrow"
commands.
Some notes:
. the breakpoint might break before you evaluate the recipe, if you
happen to move the mouse pointer above some mouse-sensitive
portion of the display, like the tool bar or the mode line -- in
that case just type "continue" at the GDB prompt until it no
longer shows the prompt (meaning Emacs is running again);
. the "pgrow" command is defined in src/.gdbinit file in the Emacs
tree, so you need to start Emacs from the src directory for GDB to
pick up that definition; alternatively, you could tell GDB to read
that file explicitly by typing "source /path/to/emacs/src/.gdbinit"
once inside GDB, before "run -Q";
. if your Emacs is built with optimizations, the breakpoint might
not break, or break not under the expected conditions; in that
case, rebuild with CFLAGS='-O0 -g3' and repeat the above
Thanks.
next prev parent reply other threads:[~2023-05-09 8:36 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-05-04 15:11 bug#63271: 29.0.90; broken mouse-face Juri Linkov
2023-05-04 16:01 ` Eli Zaretskii
2023-05-05 17:38 ` Juri Linkov
2023-05-05 18:31 ` Eli Zaretskii
2023-05-06 11:19 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-07 18:00 ` Juri Linkov
2023-05-07 18:35 ` Eli Zaretskii
2023-05-08 15:56 ` Juri Linkov
2023-05-08 16:14 ` Eli Zaretskii
2023-05-08 18:20 ` Stephen Berman
2023-05-08 18:27 ` Eli Zaretskii
2023-05-08 18:47 ` Stephen Berman
2023-05-08 19:09 ` Juri Linkov
2023-05-08 20:46 ` Stephen Berman
2023-05-09 6:47 ` Juri Linkov
2023-05-09 19:06 ` Juri Linkov
2023-05-09 19:21 ` Eli Zaretskii
2023-05-09 23:19 ` Gregory Heytings
2023-05-10 9:38 ` Stephen Berman
2023-05-10 10:53 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-10 11:01 ` Stephen Berman
2023-05-10 12:05 ` Eli Zaretskii
2023-05-10 11:00 ` Eli Zaretskii
2023-05-11 0:51 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-11 6:00 ` Eli Zaretskii
2023-05-11 6:23 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-12 3:19 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-12 10:43 ` Eli Zaretskii
2023-05-12 12:49 ` Gregory Heytings
2023-05-12 17:20 ` Juri Linkov
2023-05-12 19:21 ` Eli Zaretskii
2023-05-10 0:46 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-09 6:45 ` Juri Linkov
2023-05-09 8:36 ` Eli Zaretskii [this message]
2023-05-09 9:49 ` Stephen Berman
2023-05-09 10:07 ` Stephen Berman
2023-05-09 10:21 ` Eli Zaretskii
2023-05-09 10:35 ` Stephen Berman
2023-05-09 11:50 ` Eli Zaretskii
2023-05-09 12:43 ` Stephen Berman
2023-05-09 12:52 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-09 13:12 ` Stephen Berman
2023-05-09 13:35 ` Eli Zaretskii
2023-05-09 14:34 ` Stephen Berman
2023-05-10 0:34 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-10 9:39 ` Stephen Berman
2023-05-09 13:32 ` Eli Zaretskii
2023-05-09 14:34 ` Stephen Berman
2023-05-10 0:47 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-09 10:14 ` Eli Zaretskii
2023-05-09 1:08 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-05-09 6:43 ` Juri Linkov
2023-05-09 8:43 ` Eli Zaretskii
2023-05-09 11:44 ` Po Lu via Bug reports for GNU Emacs, the Swiss army knife of text editors
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83fs85c366.fsf@gnu.org \
--to=eliz@gnu.org \
--cc=63271@debbugs.gnu.org \
--cc=juri@linkov.net \
--cc=luangruo@yahoo.com \
--cc=stephen.berman@gmx.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).