Commit Graph

575 Commits

Author SHA1 Message Date
Robby Findler
af61f1b98e change the default test coverage colors
After some consultation with my class this quarter,
it seems clear that the previous defaults and nearby
variations are completely hopeless for colorblind people
(there are at least 3 in this class). So go with the
defaults used in the HtDP languages, which have been
vetted by saidsame 3 people.
2013-02-03 09:25:24 -06:00
Robby Findler
25f92f8e9e fix a problem with the way that check syntax's interval map
tracks information about the program
2013-02-02 19:35:09 -06:00
Robby Findler
a90434b080 avoid a deadlock introduced in recent identifier highlighting commit 2013-02-01 19:17:51 -06:00
Robby Findler
9d10a33e43 make the online check syntax error message font
size match the user's preferred font size

(useful in a classroom / talk setting)
2013-01-31 11:23:21 -06:00
Robby Findler
74c97cfc90 Rackety 2013-01-31 11:23:20 -06:00
Robby Findler
a3cde5fb42 adjust check syntax so it highlights all identifiers with the same
binding site (with a green/yellow bubble) when the mouse moves over
any one of them

This change comes about because of the recent fixes to the
interactivity wrt to the rename menu. Basically, in order to fix the
bug (but still preserve the interactivity optimization), check syntax
changed from sending the information "here is a place to offer a
rename for these identifiers" to "here is a set of identifiers that
are all free-identifier=?" (the difference being that the latter does
not imply you got them all (which enables the optimization) and that
the information is slightly less rename-menu specific (which enables
the change in this commit))
2013-01-31 10:58:04 -06:00
Robby Findler
b4ec1de386 unbreak drr 2013-01-30 21:48:22 -06:00
Robby Findler
afb61944db bring back the syncheck:add-rename-menu method in a way
that preserves backwards compatibility for the
drracket/check-syntax library
2013-01-30 20:47:55 -06:00
Robby Findler
dc4a74ddf3 fix bug in commit 4c4161ce2b 2013-01-30 15:11:28 -06:00
Robby Findler
4c4161ce2b guard a call to invalidate-bitmap-cache in
check syntax so it only happens when something
would draw differently
2013-01-30 11:54:47 -06:00
Robby Findler
f0450d716b fixes the responsiveness optimization disabled in
c8bee5acf7
2013-01-29 19:02:32 -06:00
Michael Filonenko
17b8092641 extflonums
An extflonum is like a flonum, but with 80-bit precision and
not a number in the sense of `number?': only operations such as
`extfl+' work on extflonums, and only on platforms where extflonums
can be implemented by hardware without interefering with flonums
(i.e., on platforms where SSE instructions are used for
double-precision floats).

[Patch provided by Michael Filonenko and revised by Matthew.]

The compiler tracks information about bindings that are known to
hold extflonums, but the JIT does not yet exploit this information
to unbox them (except as intermediate results).
2013-01-28 18:17:06 -07:00
Robby Findler
c8bee5acf7 disable a broken responsiveness optimization 2013-01-28 10:30:46 -06:00
Robby Findler
3e5a9ca3cd unbreak check syntax
get-current-tab may not be the right tab to replay the trace,
now that online expansion runs other tabs when the current tab
is up to date.
2013-01-27 07:31:34 -06:00
Robby Findler
2d2b3bee2f fix a bug in executable creation
The code used eq? to check to see if a given language was in
an list of allowed-to-create-executables languages. But the
language object was passing thru TR and so eq? didn't hold and
thus the check was buggy.
2013-01-26 10:47:59 -06:00
Robby Findler
c8a1ec8c9c fix bug in online check syntax's save file notification
Before this commit, the files that are loaded during expansion
were discarded when an error during expansion occurs. This commit
saves them: unless the program is something like

  (begin-for-syntax (kill-thread (current-thread)))

the handling that deals with that kind of situation (as opposed
to just an exception being raised) doesn't try to save them

Do not merge to 5.3.2: this bug isn't serious and the new code
is not as well tested as the old
2013-01-15 09:07:42 -06:00
Robby Findler
3e3283aeba adjust drracket so check syntax can add its preferences itself
closes PR 13419
2013-01-08 01:01:40 -06:00
Robby Findler
4e95220d97 speed up tab switching
I belive this should only be noticeable at the human timescale level
when the tabs have been switched to already and, in that case, seems
to go from 3-400 msec to 50-60 msec on my machine

Essentially all of that time is in redrawing the buffer, so that 50-60
msec is proportional to the height of the DrRacket window, roughly.

(The commit just makes drracket do a single redraw instead of about 4
or so of them per switch ...)
2013-01-06 19:48:14 -06:00
Robby Findler
23fec98cbb move a literal string that should be translated into the string-constants library 2013-01-05 12:22:37 -06:00
Robby Findler
cce6f28d4d remove 'create executable' functionality from drracket for all
langauges except The Racket Language and the HtDP and DMdA languages
2013-01-05 12:19:26 -06:00
Robby Findler
12a288f135 add a checkbox to disable online expansion in the preferences dialog
(it controls the same state as clicking in the circle in
the bottom right corner of the drracket window)
2013-01-03 11:00:23 -06:00
Robby Findler
ad579d07d6 put the racket version number in the title bar for the splash screen 2013-01-02 10:19:38 -06:00
Robby Findler
0d0503bda7 adjust sync pattern to avoid cross-thread set! 2013-01-01 23:13:13 -06:00
Robby Findler
0f26aafd1f Adjust DrRacket to not use on-demand to populate the
teachpack menu.

Instead DrRacket explicitly changes the menu items when
the language changes or when a teachpack is added/removed

Also, Rackety.

Closes PR 13395
2013-01-01 23:13:00 -06:00
Robby Findler
974350472c whoops, fix a bug introduced in 0f9674e1dd 2013-01-01 13:12:34 -06:00
Robby Findler
0f9674e1dd adjust drracket window size and position preferences to use a different key
This will make switching back and forth between 5.1.3 and the latest
not lose the frame size and position preferences (since the format
of the data is different now that the current release remembers
the position on a per-monitor-configuration basis)
2013-01-01 11:26:05 -06:00
Robby Findler
353da62843 added make-module-language-tag and use it and make-section-tag
in a few places
2012-12-27 11:10:40 -06:00
Robby Findler
cbeb846043 logger GUI bug
when a tab is created, the logger gui controls may not
have been created, so in the case don't try to update them
2012-12-27 09:06:18 -06:00
Robby Findler
d2d1ac2f2c Improve the logger GUI in DrRacket
One drawback to the current situation (after this commit) is that all
log messages are sent into the user's logger, even messages that come
about as part of DrRacket's implementation. It isn't clear how to fix
this without enumerating all of the possible messages to share and
explicitly forwarding them (both of which are suboptimal things).

On the plus side, the GUI now uses the "debug@GC" notation in a text
field, and when the logger pane is not open, there is no extra work
going on. Plus other, minor GUI improvements.
2012-12-26 22:38:42 -06:00
Robby Findler
f6805ea0c2 remove fancy delay dance around load-collections-xref 2012-12-26 22:37:45 -06:00
Robby Findler
8a3f662d51 git rid of thread unsafe use of load-collections-xref
This was there, I believe, to avoid latency when clicking
on the [docs] links in the language dialog. But now that
we're using a database anyways, loading the xrefs is fast.
2012-12-26 21:20:46 -06:00
Robby Findler
0a6d8822b0 adjust DrRacket logging support following comments from Neil Van Dyke
- use the same font/size as the definitions/interactions window
- add a checkbox to control scrolling behavior and,
- when scrolling, scroll to the begining of the line, not the end
2012-12-26 09:03:43 -06:00
Robby Findler
7041ea1d80 adjust online expansion's internals to call set-dirty only at
the end of an edit sequence instead of on every edit inside
the edit sequence
2012-12-24 12:31:55 -06:00
Robby Findler
fc2f931755 fix language dialog tooltip positioning code for mac os x 2012-12-23 12:37:53 -06:00
Robby Findler
0fecdaddf7 avoid showing/re-hiding tooltip when it wouldn't move
More mouse events seem to come in under windows than
mac os x, leading to the bad flashing behavior described
in PR 13384

closes PR 13384
2012-12-23 09:52:57 -06:00
Robby Findler
3ab14bbafe initialize the delegate text for a new frame
related to PR 13379
2012-12-22 11:47:30 -06:00
Robby Findler
d7e6f35b97 guard against spurious status messages 2012-12-22 08:30:54 -06:00
Robby Findler
7cad346cf8 add a preference to disable the arrows in online check syntax (and regular check syntax too) 2012-12-21 22:08:51 -06:00
Robby Findler
f4f7833531 move some literal strings into the string constants
(they should have been there ages ago ...)
2012-12-21 21:35:09 -06:00
Robby Findler
200ec130a0 drracket's online compilation now tracks files loaded during expansion
use these files to determine if a file is dirty (and thus needs
to be recompiled) when another file is saved.

closes PR 13307
2012-12-21 21:20:23 -06:00
Robby Findler
2fced5d7d6 drracket tracks the frame position and size on a
per-monitor-configuration basis and (possibly) moves/resizes
the frame when it changes
2012-12-21 19:22:59 -06:00
Robby Findler
938959611e rework online compilation's internals
Things should now generally be set up to work better --
for example online check syntax is smarter now about
what happens when switching tabs/frames and this also
makes it easier to add new ways for a window to become
dirty (that is, for it to be known that it needs to
be recompiled)
2012-12-19 10:50:01 -06:00
Robby Findler
e19243329c adjust drracket to track an lru order on tabs and use it
when closing one to pick the next one to show

added the touched and get-last-touched methods to tab<%>
2012-12-19 10:50:01 -06:00
Philippe Mechai
00827a133a Fix language config dialog not showing when some languages are disabled 2012-12-05 18:45:04 -05:00
Robby Findler
5163d424c3 Adjust the limit memory dialog to give a warning about the
consequences of disabling the memory limit

closes PR 13337
2012-12-03 08:54:51 -06:00
Robby Findler
325600b0cf disable the aspell preference a little more agressively in case someone
has old state lying around with the preference turned on
2012-12-02 15:32:33 -06:00
Robby Findler
33ca14a603 fix the shortcut for "The Racket Language" in the language dialog
closes PR 13299
2012-12-01 16:08:06 -06:00
Robby Findler
993cd40208 Adjust DrRacket so the window can get narrower
For example, a new DrRacket window (with a file named tmp.rkt in the
and 356 afterwards.  This is under mac os x with, I believe, the
default system font sizes. (The file is important because different
languages can have different buttons in the toolbar and the filename's
length itself can affect the minimum size.)

Mostly this change is the addition of a new kind of panel that
lets its children have multiple fixed sizes (as opposed to
just a single minimum size and (optionally  arbitrarily large))
It also adjusts the various toolbar buttons to use this new code.

Also, there's a few tweaks to shrink other things that became the
limiting factor in shrinking the width of the DrRacket window.

Currently, at least for #lang racket programs, the toolbar buttons
along the top of the window are the limiting factor (including the
save button).  With a bogus language (ie, #lang rackeeet), the bottom
bar is the limiting factor, since that will have only the Save, Run,
and Stop buttons.

related to PR 13281
2012-11-29 09:43:05 -06:00
Robby Findler
97454b6e55 guard use of exn-message
closes PR 13316
2012-11-28 13:17:41 -06:00
Robby Findler
6c0baa0c1e make sure there is a dc before trying to size text 2012-11-25 13:19:47 -06:00