GNU bug report logs -
#71763
[PATCH] Inconsistency in bitmap overlay drawing for macOS
Previous Next
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#71763: [PATCH] Inconsistency in bitmap overlay drawing for macOS
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 71763 <at> debbugs.gnu.org.
--
71763: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=71763
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
> From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 71763 <at> debbugs.gnu.org
> Date: Wed, 30 Oct 2024 08:11:17 +0100
>
> Daniel Pettersson <daniel <at> dpettersson.net> writes:
>
> > Gerd Möllmann <gerd.moellmann <at> gmail.com> writes:
> >
> >> If I read the diff correctly, this puts the clearing under the bitmap in
> >> an if-statement so that it is only done if we do not draw intentionally
> >> on top something drawn before.
> >
> >> Right, Daniel?
> >
> > Yup, w/o this we clear fringe on draw when I we should keep it intact
> > and draw over.
> >
> > The only example I found and the reason for this fix is that we clear
> > fringe of overlays before drawing overlay-arrow. Such that breakpoint
> > bitmap is removed when overlay-arrow is on the same line in gdb-mi.el.
>
> >From my POV, it could be installed. Eli will decide that.
OK, thanks. I installed this on the master branch, and I'm closing
this bug.
[Message part 3 (message/rfc822, inline)]
[Message part 4 (text/plain, inline)]
On macOS overlay-arrow is not draw on top of bitmaps already present
in the fringe, like its done on X Window System (src/xterm.c). This is
to the detriment of gdb-mi.el where the overlay-arrow hides the
breakpoint when they exist on the same row.
It can be reproduced with the following:
(require 'gdb-mi)
(defvar overlay-arrow (make-marker))
(add-to-list 'overlay-arrow-variable-list 'overlay-arrow)
(setq fringe-indicator-alist '((overlay-arrow . hollow-right-triangle)))
(overlay-put (make-overlay (pos-bol) (1+ (pos-bol))) 'before-string
(propertize " " 'display
`(left-fringe breakpoint warning)))
(move-marker overlay-arrow (pos-bol))
I expect that macOS is not using overlay_p param as intended as fixed by
attached patch. But I was having an hard time finding any documentation
proving my point other then the implementation of it's X Window System
sibling in src/xterm.c.
[0001-Fix-inconsistency-in-bitmap-overlay-drawing-for-macO.patch (text/x-patch, attachment)]
[Message part 6 (text/plain, inline)]
In GNU Emacs 30.0.50 (build 1, aarch64-apple-darwin23.1.0, NS
appkit-2487.20 Version 14.1.1 (Build 23B81)) of 2024-06-24 built on
Daniels-Air
Windowing system distributor 'Apple', version 10.3.2487
System Description: macOS 14.1.1
Configured using:
'configure --with-xwidgets'
Configured features:
ACL DBUS GLIB GNUTLS LCMS2 LIBXML2 MODULES NOTIFY KQUEUE NS PDUMPER PNG
RSVG SQLITE3 THREADS TOOLKIT_SCROLL_BARS TREE_SITTER WEBP XIM XWIDGETS
ZLIB
This bug report was last modified 262 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.