Commit Graph

546 Commits

Author SHA1 Message Date
Matthew Flatt
7a9c8e5d40 racket/gui win32: fix East Asian font problem
When the theme-specified default font has a localized name,
using it as a Pango faily name doesn't work, with the result that
text on controls could be truncated. Get a Pango-friendly
name by converting a LOGFONT to a Pango font description and
getting the name from the font description.
2012-06-06 13:25:14 +08:00
Matthew Flatt
58db5f8b46 racket/gui: implement set-clipboard-bitmap' in clipboard<%>'
Closes PR 12689

Cocoa implementation provided by Jens Axel Søgaard
2012-05-26 19:42:48 -06:00
Matthew Flatt
5b80fd37c7 racket/gui win32: fix screen info to not assume main is first
Thanks to Kieron Hardy for tracking down the problem.
2012-05-26 07:38:24 -06:00
Matthew Flatt
3a9f8eea4f racket/gui cocoa: fix internal ObjC class names
"My" -> "Racket". The "My" prefix was from initial experiments,
of course, and I just never got around to changing it before.
I think these names go into a global namespace, though, at the
ObjC level, so they need to have a distinct and Racket-specific
prefix.
2012-05-16 09:43:23 -06:00
Matthew Flatt
b0409dd232 racket/gui cocoa: fix floating-window event handling
Closes PR 12754
2012-05-16 08:00:50 -06:00
Matthew Flatt
d5b17210e3 racket/gui cocoa: fix 'no-sheet style for `dialog%' 2012-05-16 07:34:44 -06:00
Matthew Flatt
985eecbed7 racket/gui cocoa: fix initial eventspace hook 2012-05-16 07:21:55 -06:00
Matthew Flatt
68e005fb2c racket/draw: make-immutable-{color,brush,pen} => make-{color,brush,pen}
Also, use keywords for `make-pen' and `make-brush'.

Adding `make-pen' and `make-color' creates many conflicts among
teaching libraries, such as `2htdp/image'. These are easy to fix
up in the tree, but adding such obvious names to `racket/draw'
may create other compatibility problems, so we might have to reconsider
the names.

In consultation with Asumu.
2012-05-01 21:04:40 -06:00
Asumu Takikawa
8db45eb557 Add immutable constructors for color%, brush%, pen%
- Make set-immutable a local method and document
    is-immutable? as a public method
  - Add some racket/draw tests
2012-05-01 21:20:52 -04:00
Matthew Flatt
9c025210aa racket/gui win32: font fallback for labels
When the requested font isn't available, fall back to
the default font at the requested size and style
2012-04-25 19:17:16 -06:00
Matthew Flatt
418a3cd83b racket/draw cocoa: adjust default 'script font
Also, adjust the way a font is converted for control labels to
strp away Pango descriptions.
2012-04-25 19:17:16 -06:00
Eli Barzilay
2b76d9e5b0 A bunch of scheme' -> racket' conversions.
I think that there are no user-visible changes from these changes.
2012-04-19 16:02:03 -04:00
Matthew Flatt
9d563c786a racket/gui, win32: fix problem with modal dialogs
Although most events in other frames were blocked, it was
possible to bring other frames to the front and to select
menu items in other frames.
2012-04-05 06:58:53 -06:00
Asumu Takikawa
d7fefc848b Fix requires to avoid circular dependencies. 2012-03-30 23:34:34 -04:00
Matthew Flatt
97a64b1166 no callback for `tab-panel%' tab additions and deletions 2012-03-10 10:07:37 -07:00
Matthew Flatt
d74793a5f9 fix race condition on GetLastError() call 2012-03-09 10:34:56 -07:00
Eli Barzilay
f7c67b49a4 Big newline at EOF scan. 2012-02-29 00:28:11 -05:00
Robby Findler
d476d3f21a fix a bug I thought I'd fixed a while back...? 2012-02-22 16:51:48 -06:00
Robby Findler
1945ff2709 add make-platform-bitmap
also: use it in pict's rendering and
remove redex's platform-specific font choice
(going back to using 'modern on all platforms)

closes PR 12554
2012-02-21 16:19:45 -06:00
Matthew Flatt
967372c23d make an eventspace thread survive a break exception
When an eventspace is created, its thread implicitly calls
`yield'. It now effectively loops with `yield' and while
catching continuation aborts.

Closes PR 12566
2012-02-13 16:28:10 -07:00
Matthew Flatt
af62391c8c win32: fix canvas% control border drawing
Use the system-supplied region to intersect with the
window region, so that drawng the border doesn't replace
the window content.

See also Kieron Hardy's post on the users' list, 2/7/12.
2012-02-11 08:45:32 -07:00
Matthew Flatt
01dce00271 racket/gui: correct some casts in GUI bindings 2012-01-23 11:20:21 -07:00
Matthew Flatt
484803a896 gtk: fix problem wth window freeze & thaw
Closes PR 12496

Merge to 5.2.1
2012-01-19 16:20:45 -07:00
Matthew Flatt
f93c94f6ff add 'shift, 'control, 'rshift, and 'rcontrol events 2011-12-08 15:05:41 -07:00
Robby Findler
b40cc23f60 change file-creator-and-type so that it raises exn:fail:filesystem?
exceptions instead of exn:fail exceptions for errors having to do
with the actual attempt to change/retrieve the creator and type
(but leaving alone the type errors)

closes PR 12400
2011-11-28 15:35:42 -06:00
Matthew Flatt
bc0c2075fd cocoa: make sure app wakes up on file event 2011-11-25 13:19:42 -07:00
Matthew Flatt
63f3a51ae6 win32: get default frame icon from application
Also, clean up icon- and cursor-loading code
2011-11-16 14:45:32 -07:00
Matthew Flatt
7ad81e7560 win32: enable live resize of frames 2011-11-15 12:44:26 -07:00
Matthew Flatt
2d70017091 win32: avoid line-wrap in `meesage%' display
Also, adjust text measuring to ensure that it is as close
as possible to measurements for a control.
2011-11-08 06:55:40 -07:00
Matthew Flatt
4bbb2d41aa cocoa: fix some GL problems 2011-11-03 09:12:13 -06:00
Matthew Flatt
29c7c28ba5 gtk: fix problems with on-focus' and on-activate' 2011-10-18 06:35:50 -06:00
Matthew Flatt
718229387c fix cocoa `get-clipboard-string' to never return #f; fix docs
Merge to 5.2
2011-10-18 06:35:38 -06:00
Matthew Flatt
a09543772a gtk: no freeze/thaw before/after unmap
Merge to 5.2
2011-10-17 15:53:07 -06:00
Matthew Flatt
dc912ee6de third attempt to fix 64-bit Lion hidden-window problem
After all the previous attempts, the problem seems almost trivial:
although Apple documents `NSAnyEventMask' as the constant #xFFFFFFFF,
it's actually NSUIntegerMax (and the difference matters in 64-bit
mode).

Merge to 5.2.
2011-10-10 15:48:30 -06:00
Matthew Flatt
9fd11ac92c Revert "another attempt to fix the 64-bit Lion hidden-window problem"
This reverts commit f6e5468dbb.

Merge to 5.2
2011-10-10 15:38:42 -06:00
Matthew Flatt
bf3f09a3c1 cocoa: fix `show #f' on already unshown frame shows it briefly
Merge to 5.2
2011-10-08 16:47:19 -06:00
Matthew Flatt
f6e5468dbb another attempt to fix the 64-bit Lion hidden-window problem
This fix uses the same`run'-vs-`finishLaunch' technique as before,
but patches up the modal-dialog problem by calling `run' again
with a callback to start a modal loop.

Merge to 5.2.
2011-10-08 06:12:17 -06:00
Matthew Flatt
9aa93ab5ae Revert "cocoa: change the way the app is initialied"
This reverts commit 60101618db.

While this changes fixes a 64-bit Lion problem, it creates a
worse problem of breaking file and print dialogs.
2011-10-07 15:25:31 -06:00
Matthew Flatt
60101618db cocoa: change the way the app is initialied
Calling NSApplication's `run' works better than calling `finishLaunching'
directly, particularly in 64-bit Lion for some reason.

Relevant to PR 12102
Relevant to PR 12257
2011-10-07 08:05:15 -06:00
Matthew Flatt
3941a5d04f cocoa: make grow-box-spacer zero-width for 10.7 2011-10-04 12:59:18 -06:00
Matthew Flatt
4535f5d8cc fix keyboard navigation (all platforms)
Also, fix `set-selection' in `list-box%' to not invoke the
tab panel's callback function (cocoa & gtk).
2011-09-30 13:44:24 -06:00
Matthew Flatt
b24c8eb4dd cocoa: fix control-refresh bug 2011-09-28 12:38:39 -06:00
Matthew Flatt
f9dabb8994 add -J/--wm-class argument to set the WM_CLASS class on Unix 2011-09-26 18:07:18 -06:00
Matthew Flatt
2bd461de50 win32: fix `get-file-list' with a single file result 2011-09-10 14:56:53 -06:00
Matthew Flatt
2ecd32b86e racket/gui: fix excessive on-size' and on-move' callbacks
Especially for gtk, where a client-resize notification was
getting mixed up with a frame-configure notification. On all
platforms, `on-size' and `on-move' for a frame% were queued
at too high a priority.
2011-09-10 14:37:13 -06:00
Matthew Flatt
ec25a74b97 cocoa, gtk: enable auto list-box% horizontal scrollbars
Closes PR 12149

Also adjust id on NSTableColumn to be a string, because a Cocoa
warning on Lion told me to.
2011-09-10 11:14:52 -06:00
Matthew Flatt
9d4fcd8e84 better fix for TransformProcessType issue
GRacket registers witht a global table to indicate that
no transform is needed. (This change was intended to address
a 64-bit problem on Lion. It didn't help, but this seems
better than ignoring an error.)
2011-09-10 10:53:42 -06:00
Matthew Flatt
9c5b78e998 suppress an error message (related to Mac 10.7)
We could try to figure out the current state of the process,
instead, but it seems like too much work.
2011-09-09 19:22:42 -06:00
Matthew Flatt
735ca7f3c3 racket/gui: add `application-start-empty-handler' 2011-09-09 17:03:18 -06:00
Matthew Flatt
ce4705cedc get-diplay-size' and get-display-left-top-inset' use #f for failure
Since the number of monitors can change at any time, reliable
use of these functions requires handling failure in some way.
Handling #f results is easier (and less likely to mask other
problems) than catching exceptions.
2011-09-09 17:03:17 -06:00