Subject: bug#30699: 26.0.91; buffer contents flicker on macOS frames when frames are resized

From: Alan Third <[email-masked]>
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 <[email-masked]>
> > Cc: [email-masked], [email-masked]
> > 
> > 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