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: Aaron Jensen <aaronjensen <at> gmail.com>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 30699 <at> debbugs.gnu.org
Subject: bug#30699: 26.0.91; buffer contents flicker on macOS frames when frames are resized
Date: Mon, 19 Mar 2018 15:15:52 +0000
[Message part 1 (text/plain, inline)]
On Wed, Mar 14, 2018 at 03:08:58PM +0000, Alan Third wrote:
> On Tue, Mar 13, 2018 at 08:34:10AM -0700, Aaron Jensen wrote:
> > 
> > I haven't seen any glitches using this patch yet, fwiw.
> 
> I haven’t come across anything yet, but I’ve not been using this patch
> much.
> 
> Watch out for macOS re‐enabling screen updates after ~1 second. It
> does this automatically; I guess to stop buggy code from freezing the
> application completely.

It turns out that even with screen updates disabled some calls still
force the screen to update. I’m not sure which ones, but it does mean
we’re unlikely to completely lock up Emacs with this.

I’ve attached a new version of the patch.

Eli, I left the global variable as static since as far as I can tell
static global variables are still global to all threads, which is the
behaviour I believe we want. These functions should only be called
from the main thread anyway, Cocoa will kill the thread if GUI calls
are made from non‐main threads.

If it definitely shouldn’t be static, what should I do with it?

I moved the call to ns_enable_screen_updates in unwind_redisplay as
that’s where the double buffering code appears to unblock updates.
-- 
Alan Third
[v2-0001-Fix-frame-resize-flicker-on-macOS-bug-30699.patch (text/plain, attachment)]

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

Previous Next


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