The argument is `(curent-eventspace)' by default, which makes ports
work better with threads.
Closes PR 12749
original commit: b30374824a7d79b96443da6e0e4223dd72da597b
Changed `open-output-text-editor' to put its additions into
an edit sequence to better work with threads.
Fixed problems in editor-canvas refresh and resize events, where
the editor's refresh synchronization wasn't used properly.
Fixed race conditions in the the protocol that is used to separate
refreshes and edit sequences.
Related to PR 12749
original commit: 48f7ddafe4d3363635f775a0da0980065718d5a4
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.
original commit: 68e005fb2c14551be54beb5543928ac9b7b769ac
- Make set-immutable a local method and document
is-immutable? as a public method
- Add some racket/draw tests
original commit: 8db45eb55788d63383334c93694e8e26a2e1108c
When the requested font isn't available, fall back to
the default font at the requested size and style
original commit: 9c025210aa01989109e8ac2e8ed95c35a432387e
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.
original commit: 9d563c786a71b621fcd2909c917b49939e0d11b0
The `get-handle' method provides the underlying Cairo surface for
a bitmap, while the unsafe `make-handle-brush' function supports the
use of a Cairo surface as a `brush%'.
Also, add `racket/draw/unsafe/cairo-lib', which simplifies access
Cairo from external libraries. Documenting `racket/draw/unsafe/cairo'
might be better, but that's a lot more work.
original commit: 4f197f4ba944ee802e15fb3323f34a074e915db6
starts up on all of the days that have easter eggs (well, except 7/2,
since that one is hard to interpose on and hasn't changed in a long
time)
original commit: 617df05ef7d43c04cfaf6978c52619e1865a4812
pixel of space in between lines in DrRacket.
This change is based on Matthew's experience having a look
at the font setup on the three platforms.
He writes:
> * Mac OS X: the convention seems to be to add space between lines.
> TextEdit, for example, looks like DrRacket: the maze has spaces.
>
> (I can't find a font that makes the maze look right, actually, even
> if I adjust the line spacing.)
>
> * Windows: the convention seems to be that space is built into the
> font. DrRacket (and SirMail) draw lines more sparsely than Notepad.
>
> Perhaps consistent with the differing conventions, the height of
> "Courier New" at 11-pixel size is 14 on Windows, 13 on Mac OS X.
>
> * Unix: the convention seems to be to add space. DrRacket looks like
> the default Terminal and Text Editor programs on Ubuntu.
>
> The maze nevertheless looks right everywhere, because the glyphs
> extend an extra pixel above the declared bounding box!
original commit: 0d6b82537776ad4bd850e3b7c5cc1bdaa209b865
Before this commit, opening collects/drracket/private/unit.rkt required
about 17.5 megabytes of memory and after this commit, it is down to
about 15 megabytes.
The precise measurement I did was to create a frame and a scheme:text%
object in it, record the result of current-memory-use, open the file,
and record current-memory-use again.
For comparison, using a text:standard-style-list% object instead of
the scheme:text% requires only about 4.1 megabytes. One difference
being that there are about 3x more snips (10,204 vs 33,901 (after the
commit)), since we have one snip for each region that has a different
color in the scheme:text version, and the text:standard-style-list has
no colors and thus about two per line (there are 5006 lines in the
file).
original commit: a7cb8fdc84f3b592c812468e5e7486d4f7d5bbb6
Previously, sandbox creation used `gui?', which is the result of
`gui-available?' at the time that `racket/sandbox' is instanited.
This change makes sandbox behavior less sensitive tothe order in
which modules `require'd into a program are intiantiated.
The change depends on a new `sandbox-make-namespace' default
function for `sandbox-namespace-specs'. The new function uses
either `make-base-namespace' or `make-gui-namespace', depending
on whether the GUI library is available at that point.
A new `sandbox-gui-enabled' parameter can disable use of the
GUI library even if it is available.
The `gui?' binding is still exported for backward compatibility,
but it shouldn't be used anymore.
original commit: 5630a3a1cab8d7953bfbb290bd6ae63c84ead605
The set-replace-start and get-replace-search-hit methods were
missing in the text:searchable<%> interface. The latter was
also undocumented.
original commit: 04f7bdbb021d1dbcac959eed439050abc36ee1b7
Recorded clipping, transformations, and alpha didn't compose with
the target DC's existing clipping, transformations, and alpha.
original commit: f79e2b4ee0bbe6a7302f658e78155b11d9dd7db8
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
original commit: 1945ff270962679e13f66131c5b3eb91cc1edb2f
Treat a "face" as a font description only if it has a comma,
otherwise go back to treating it as a family name.
This change fixes the problem of parsing "Times New Roman"
as "Times New, Roman".
original commit: 530b35379830819f7de46c80dc9f9691a17fcc7b
When an eventspace is created, its thread implicitly calls
`yield'. It now effectively loops with `yield' and while
catching continuation aborts.
Closes PR 12566
original commit: 967372c23d9b68d011993435cc91e99e26616c20