gui/gui-lib/mred/private/wx/cocoa
Matthew Flatt ac2d39e0e1 fix GC blit for Mac OS X 10.11
The old strategy of switching a transparent window to solid and back
doesn't work on 10.11; it appears that queued messages must be handled
for the window to become visible, but that's not allowed during a GC.
The strategy for 10.11 and up create an OpenGL canvas, which acts as a
direct-to-screen drawing area that a GC callback can affect without
Racket-level allocation.
2015-10-01 22:02:37 -06:00
..
button.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
canvas.rkt fix GC blit for Mac OS X 10.11 2015-10-01 22:02:37 -06:00
cg.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
cgl.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
check-box.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
choice.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
clipboard.rkt Cocoa: avoid atomic-mode problems in clipboard 2015-02-05 10:33:47 +01:00
colordialog.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
const.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
cursor.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
dc.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
dialog.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
filedialog.rkt cocoa: fix placement of the file dialog as a sheet 2015-09-04 07:54:34 -06:00
finfo.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
font.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
frame.rkt fix GC blit for Mac OS X 10.11 2015-10-01 22:02:37 -06:00
gauge.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
gc.rkt fix GC blit for Mac OS X 10.11 2015-10-01 22:02:37 -06:00
group-panel.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
image.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
init.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
item.rkt cocoa: fix focus method 2015-01-11 11:05:36 -07:00
key-translate.rkt narrow dependencies on Carbon 2015-01-09 08:37:38 -07:00
keycode.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
list-box.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
menu-bar.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
menu-item.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
menu.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
message.rkt cocoa: fix focus method 2015-01-11 11:05:36 -07:00
panel.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
platform.rkt Support and prefer GTK+ 3 on Unix/X 2015-08-16 20:55:35 -06:00
pool.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
printer-dc.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
procs.rkt fix GC blit for Mac OS X 10.11 2015-10-01 22:02:37 -06:00
queue.rkt Cocoa: no child-window workaround in 10.10 (to avoid different bug) 2015-08-19 12:05:47 -06:00
radio-box.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
README.txt Remove extra directories. 2014-12-02 02:33:07 -05:00
slider.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
sound.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
tab-panel.rkt cocoa: fix focus method 2015-01-11 11:05:36 -07:00
types.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
utils.rkt fix GC blit for Mac OS X 10.11 2015-10-01 22:02:37 -06:00
window.rkt cocoa: adjust key events for empty Ctl- combos and special Option 2015-01-14 14:08:28 -07:00

Allocation rules:

 * Use `as-objc-allocation' when creating a Cocoa object. When the
   resulting reference becomes unreachable, the Cocoa object will be
   released.

 * Use `with-autorelease' in atomic mode around calls that autorelease
   and where the release should take effect immediate. Do not create
   an autorelease pool except in atomic mode.

 * Other autoreleased objects may end up in the root pool installed by
   "pool.rkt". The root pool is periodically destroyed and replaced;
   call `queue-autorelease-flush' if you need to encurage replacement
   of the pool. If you need to use an object that might be autoflushed,
   be sure that you're in atomic mode.