gui/gui-lib/mred/private/wx/cocoa
Matthew Flatt f91e549e59 Cocoa: no child-window workaround in 10.10 (to avoid different bug)
A GC-icon display is implemented with a child window on OS X. In some
OS X version prior to 10.10 (not sure which ones), screen
reconfigurations did not move child windows properly relative to
parent windows, so all child windows were reset after a screen change.
In 10.10, meanwhile, Mission Control can cause screen-change
notifications, and adding a child window to a Mission
Control-minimized fullscreened window will goes terribly wrong.
Fortunately, 10.10 seems to update child-window locations correctly on
screen reconfigurations, in which case the old workaround that hits
the new bug can be skipped.
2015-08-19 12:05:47 -06:00
..
button.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
canvas.rkt Cocoa: avoid showing GC blits when canvas is hidden 2015-08-19 12:05:24 -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: get file-dialog results atomically 2015-01-23 15:37:37 -07: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 Remove extra directories. 2014-12-02 02:33:07 -05:00
gauge.rkt Remove extra directories. 2014-12-02 02:33:07 -05:00
gc.rkt Remove extra directories. 2014-12-02 02:33:07 -05: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 Support and prefer GTK+ 3 on Unix/X 2015-08-16 20:55:35 -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 Remove extra directories. 2014-12-02 02:33:07 -05: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.