[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#21662: 25.0.50; visible-bell causes display artifacts on OS X 10.11
From: |
Mustafa Kocaturk |
Subject: |
bug#21662: 25.0.50; visible-bell causes display artifacts on OS X 10.11 |
Date: |
Tue, 13 Oct 2015 21:13:25 -0500 |
Hi,
The current implementation of the visual bell on NextStep is to cache and
redraw a rectangle on the current Emacs frame *from outside the NextStep run
loop*. It seems this was good enough so far but is no longer a particularly
supported one for the latest Mac OS X version.
Maintaining it might still be possible, only with sufficient effort and caution.
Alternative: Switch to an implementation that is particularly supported in this
release of OS X, as follows:
Create a temporary NSView object and attach it to the selected EmacsView object.
This new subview draws itself, starts an NSTimer, with a callback in the
current NS run loop.
When the timer expires the callback is entered, which updates, hides, and
finally removes the subview from its superview.
The view is garbage collected, all as part of the NS run loop.
The required change is small: Add a NSView-derived class in nsterm.m and
replace old cache/draw/restore code with new temporary local instance of this
new class.
Best regards,
Mustafa