GNU bug report logs - #72230
29.4; Cursor Disappears with Hebrew Text

Previous Next

Package: emacs;

Reported by: hermann sorgel <hermannsorgel <at> gmail.com>

Date: Sun, 21 Jul 2024 15:30:02 UTC

Severity: normal

Found in version 29.4

Fixed in version 30.1

Done: Gerd Möllmann <gerd.moellmann <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


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

From: Stefan Kangas <stefankangas <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>, hermann sorgel <hermannsorgel <at> gmail.com>
Cc: Po Lu <luangruo <at> yahoo.com>, 72230 <at> debbugs.gnu.org
Subject: Re: bug#72230: 29.4; Cursor Disappears with Hebrew Text
Date: Sun, 21 Jul 2024 11:05:57 -0700
Eli Zaretskii <eliz <at> gnu.org> writes:

> So maybe the problem is elsewhere.  One thing is almost certain: it's
> a problem specific to the macOS build of Emacs.  People who can debug
> on that platform are encouraged to suggest insights and changes.

This seems to have something to with the clipping path, and is fixed
here by the below patch. I don't think it's suitable for installing
though.

Po Lu, since you added the below NSRectClip call, do you have any
thoughts here?

diff --git a/src/nsterm.m b/src/nsterm.m
index 794630de1c1..54b15bc851d 100644
--- a/src/nsterm.m
+++ b/src/nsterm.m
@@ -3102,7 +3102,7 @@ Note that CURSOR_WIDTH is meaningful only for
(h)bar cursors.
 #ifdef NS_IMPL_GNUSTEP
   GSRectClipList (ctx, &r, 1);
 #else
-  NSRectClip (r);
+  // NSRectClip (r);
 #endif

   [FRAME_CURSOR_COLOR (f) set];
@@ -3135,7 +3135,7 @@ Note that CURSOR_WIDTH is meaningful only for
(h)bar cursors.
          on the right of its glyph, rather than on the left.  */
       cursor_glyph = get_phys_cursor_glyph (w);
       if ((cursor_glyph->resolved_level & 1) != 0)
-        s.origin.x += cursor_glyph->pixel_width - s.size.width;
+        s.origin.x += cursor_glyph->pixel_width - cursor_width;

       NSRectFill (s);
       [ctx restoreGraphicsState];




This bug report was last modified 1 year and 31 days ago.

Previous Next


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