GNU bug report logs - #30699
26.0.91; buffer contents flicker on macOS frames when frames are resized

Previous Next

Package: emacs;

Reported by: Aaron Jensen <aaronjensen <at> gmail.com>

Date: Sun, 4 Mar 2018 17:39:01 UTC

Severity: normal

Tags: fixed

Found in version 26.0.91

Fixed in version 27.1

Done: Alan Third <alan <at> idiocy.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Alan Third <alan <at> idiocy.org>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 30699 <at> debbugs.gnu.org, aaronjensen <at> gmail.com
Subject: bug#30699: 26.0.91; buffer contents flicker on macOS frames when frames are resized
Date: Mon, 12 Mar 2018 23:42:39 +0000
On Mon, Mar 12, 2018 at 06:39:59PM +0200, Eli Zaretskii wrote:
> > Date: Mon, 12 Mar 2018 00:46:38 +0000
> > From: Alan Third <alan <at> idiocy.org>
> > Cc: 30699 <at> debbugs.gnu.org, aaronjensen <at> gmail.com
> > 
> > That is, does calling [redisplay] ever result in a longjmp?
> 
> I think it never longjmps, even on TTYs, where C-g generates SIGINT.
> But I may be wrong here.

So would it be acceptable to just call redisplay after the resize?

modified   src/nsterm.m
@@ -7007,6 +7007,7 @@ - (void) updateFrameSize: (BOOL) delay
          to be a noop.  (bug#28872) */
       wr = NSMakeRect (0, 0, neww, newh);
       [view setFrame: wr];
+      redisplay ();
 
       // to do: consider using [NSNotificationCenter postNotificationName:].
       [self windowDidMove: // Update top/left.

This seems far too easy, so I’m sure there must be some reason it
can’t work correctly.

This code can only run on the main thread, if that’s a concern.
-- 
Alan Third




This bug report was last modified 7 years and 114 days ago.

Previous Next


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