Commit Graph

19 Commits

Author SHA1 Message Date
Matthew Flatt
a948c8a2f0 avoid showing GC icon for a frame that is not shown
Commit ac2d39e0e1 has the side effect of showing the window when its
parent is still hidden.
2015-10-03 13:20:59 -06:00
Matthew Flatt
5f63b8c95b fix get-color-from-user on Mac OS X
Closes PR 15121

A better solution would be to implement the dialog, but given
how long it's been broken, maybe no one cares enough for that
to be worthwhile.
2015-10-02 15:56:42 -06:00
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
Matthew Flatt
580e49f520 cocoa: fix placement of the file dialog as a sheet 2015-09-04 07:54:34 -06:00
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
Matthew Flatt
999c603ba0 Cocoa: avoid showing GC blits when canvas is hidden 2015-08-19 12:05:24 -06:00
Matthew Flatt
d1736765b6 add get-gl-client-size to canvas%
GL scaling in a canvas depends on a combination of the `gl-config%`
setting and the platform, so `get-gl-client-size` takes into account
both.
2015-08-18 15:10:02 -06:00
Matthew Flatt
f42356da3f Support and prefer GTK+ 3 on Unix/X
The main advantage of GTK+ 3 is better support for HiDPI
displays. If GTK+ 3 libraries are not available or if the
`PLT_GTK2` environment variable is defined, GTK+ 2 is used
as before.
2015-08-16 20:55:35 -06:00
Jay McCarthy
6fa420d947 add get-scaled-client-size 2015-05-20 12:59:51 -04:00
Jay McCarthy
be6bd0160c supporting opengl hires mode 2015-05-03 08:13:22 -04:00
Matthew Flatt
ff6b409f28 Cocoa: avoid atomic-mode problems in clipboard
Get data from a clipboard client before going into atomic mode. This
correction can avoid an "about to suspend in atomic mode" failure,
particularly if a snip fails to copy correctly.
2015-02-05 10:33:47 +01:00
Matthew Flatt
99a04d5f52 cocoa: get file-dialog results atomically
Otherwise, the NSURL object that is returned from the dialog can
be relased before we get the result.
2015-01-23 15:37:37 -07:00
Matthew Flatt
1185faa590 cocoa: adjust key events for empty Ctl- combos and special Option
In particular, restore key handling that makes Ctl-Space produce an
event with a Space character. Also, restore `special-option-key`
support, while correcting the documentation to say what
`special-option-key` and `special-control-key` actually do.

Closes PR 14934
2015-01-14 14:08:28 -07:00
Matthew Flatt
60611bc081 cocoa: fix focus method
Don't confuse "should the Tab key advance the focus to this window?"
with "can this window have the focus?".
2015-01-11 11:05:36 -07:00
Matthew Flatt
31231a6a8d narrow dependencies on Carbon
(reduced Carbon footprint?)
2015-01-09 08:37:38 -07:00
Jens Axel Søgaard
4dc47ef413 Compute other-key-codes
Use UCKeyTranslate to compute and store other-key-codes in the key-event.
2015-01-09 08:11:02 -07:00
Jens Axel Søgaard
fb0356d2fb Bindings for UCKeyTranslate
Bindings for UCKeyTranslate.
UCKeyTranslate converts a combination of a key-code, a modifier key state, keyboard layout and dead key state to a unicode string.
2015-01-09 08:11:01 -07:00
Matthew Flatt
de783c8378 avoid crashing via GCed racket/gui instance 2015-01-06 19:54:52 -07:00
Sam Tobin-Hochstadt
135e357a37 Remove extra directories. 2014-12-02 02:33:07 -05:00