Commit Graph

560 Commits

Author SHA1 Message Date
Robby Findler
b822efb9e5 add a check when switching between tabs to only do the required
work when the current tab isn't the one we're switching to
2012-11-11 08:53:13 -06:00
Robby Findler
0e655f8e79 only clear out the (offline) check syntax error message
panel when there is something definitely in the panel,
insert of doing on every insertion to the editor
2012-11-11 08:53:12 -06:00
Robby Findler
6704346db1 adjust the bluebox record-keeping code so that if there
is no bluebox information, then we can just bypass updating
it on insertions (especially important when loading a big
file into drracket, as there is a lot of insertion but no
blue boxes (yet))
2012-11-11 08:53:12 -06:00
Robby Findler
2626824aef detect when tracing:reset doesn't need to happen and skip it 2012-11-11 08:53:12 -06:00
Robby Findler
c5330194a9 improve drracket's response to an unhappy aspell program
Specifically, two things:

 - make drracket more careful to not crash when aspell
   doesn't behave, and

 - have a more careful test when clicking the menu item
   (it now does a trial run of aspell instead of just
    looking for the binary)

closes PR 13242 (I realize there is still a feature
request mentioned in the audit trail of that PR, but
since the main problem is fixed, I'll consider that
to just be something separate)
2012-11-10 13:00:09 -06:00
Robby Findler
4421e227ff when changing the error arrows, only invalidate the editor
when the arrows are actually different (just using eq? here)
2012-11-10 08:51:58 -06:00
Robby Findler
867f2d3a43 use the real rectangles-intersect? predicate, not a broken one 2012-11-10 08:51:58 -06:00
Robby Findler
d20f9a8866 should have been removed in an earlier commit, but I wrote
the wrong git commandline
2012-11-07 21:52:14 -06:00
Eli Barzilay
672910f27b Lots of bad TAB eliminations.
I started from tabs that are not on the beginning of lines, and in
several places I did further cleanings.

If you're worried about knowing who wrote some code, for example, if you
get to this commit in "git blame", then note that you can use the "-w"
flag in many git commands to ignore whitespaces.  For example, to see
per-line authors, use "git blame -w <file>".  Another example: to see
the (*much* smaller) non-whitespace changes in this (or any other)
commit, use "git log -p -w -1 <sha1>".
2012-11-07 11:22:20 -05:00
Eli Barzilay
26045a27fb #lang racket' -> #lang racket/base' conversions in drracket and in redex. 2012-11-07 08:03:44 -05:00
Robby Findler
c02797b121 improve the language dialog a little bit:
- make clicking on the example languages
  select the 'The Racket Language' radio button
- when the clicked example language matches
  the buffer, have a more friendly message
2012-11-06 20:31:12 -06:00
Robby Findler
66c1045b42 adjust the language dialog so that clicking on the example
the corresponding #lang line.
2012-11-06 19:15:53 -06:00
Eli Barzilay
14d8c8b5a5 Newlines at EOFs. 2012-11-06 14:07:15 -05:00
Robby Findler
95ff9637c0 make ellipsis clickable 2012-11-06 12:12:02 -06:00
Robby Findler
3bbf6035d1 adjust the language dialog based on feedback from dev@ 2012-11-06 09:46:18 -06:00
Robby Findler
f22aaec21d the 'audit the invalidate-bitmap-cache' commit (2 commits ago) avoided
running the 'redraw the definitions/interactions label' timer when the
language didn't ask for those labels; this commit also avoids running
the timer when the user has disabled the labels
2012-11-04 19:52:52 -06:00
Robby Findler
81dc3bae37 audit the calls to invalidate-bitmap-cache in the framework and in
drracket and try to make them happen less often (or, if there will be
multiple ones, try to guarantee that there is an edit sequence)
2012-11-04 19:02:55 -06:00
Robby Findler
ef3eb3154a adjust log following to make it work for the middle of a drracket
editing session
2012-11-04 14:39:55 -06:00
Robby Findler
e9e2557356 unbreak code that changes drracket's dock icon dynamically
(when transition to or from the weekend or valentines day)
2012-11-04 14:39:55 -06:00
Robby Findler
5768009e3b Revise the language dialog to emphasize the teaching
languages and the 'in the source' language at the expense
of all other dialog-based languages
2012-11-03 13:54:48 -05:00
Robby Findler
6f5e43b851 added a script that collects log messages for use in performance debugging drracket 2012-11-01 21:13:39 -05:00
Robby Findler
e2d74f2cf3 streamline the objects that are sent across the channel from
the expansion place to the main drracket place during
online check syntax
2012-10-31 16:52:44 -05:00
Robby Findler
93aea7036b hide the get-online-expansion-colors method 2012-10-29 06:45:13 -05:00
Matthew Flatt
fa743d7058 remove obsolete "based on" entry 2012-10-27 21:34:08 -06:00
Sam Tobin-Hochstadt
4124c9a41b Add more specific class types instead of Any.
Fixes Insert Large Letters dialog.  Merge to 5.3.1.
2012-10-27 17:44:52 -07:00
Robby Findler
117fde6857 adjust the online check syntax frame/tab leak test case
so that it waits until online check syntax actually
finishes (otherwise, there actually is a leak;
the link is broken when the message comes back from the
other place)
2012-10-27 16:45:44 -05:00
Robby Findler
c6caf11323 Adjust online check syntax's trace replay code so that it:
- lets other events be handled based on how long it has been
  replaying the current trace (instead of based on the number of
  pieces in the trace that have been seen)

- breaks up the syncheck:add-rename-menu pieces of the trace to
  be more granular (to make the previous point work better)

This should make DrRacket more responsive when the trace is being
replayed
2012-10-26 21:49:45 -05:00
Robby Findler
e89a121ae5 add some first-cut logging information to drracket
to track how long events take to be handled
2012-10-26 21:49:44 -05:00
Robby Findler
7e8ac872fe add logging to mred's event callback mechanism to record
how long event processing takes
2012-10-26 21:49:44 -05:00
Robby Findler
b61f1789c7 fix bug in detecting the name of the language
(encoding problems)

Also, Rackety
2012-10-22 11:49:14 -05:00
Robby Findler
7ffe9f2612 adjust logger to use a name instead of an environment variable 2012-10-15 13:25:17 -05:00
Robby Findler
0ec7f47339 adjust background compilation log messages so they only appear
when the PLTDRBACKGROUNDCOMPILELOG environment variable is set
(since things seem stable now)
2012-10-15 12:32:46 -05:00
Robby Findler
4787361d7f show a dialog box saying that aspell/ispell cannot be
found instead of just silently not checking the spelling

also, fix a bug in that case that used to cause drracket
to just crash
2012-10-15 07:41:42 -05:00
Robby Findler
72fa1d45a1 add capability to spell-check string constants
(calls out to ispell or aspell)
2012-10-14 17:40:56 -05:00
Matthew Flatt
2b902d0eda repair for picture-to-bitmap conversion 2012-10-13 17:45:07 -04:00
Matthew Flatt
5d65cada2e make DrRacket's picture values convertible to PNG and PDF 2012-10-12 22:37:48 -04:00
Robby Findler
197b8308d0 fix some part of the check syntax blinking arrows infrastructure
to better cope with tooltips when tabs change and when the frame
becomes in-active.

related to PR 13139
2012-10-10 10:44:01 -05:00
Robby Findler
daed2aaed0 minor Rackety and add a little more info into the log from when
DrRacket gets confused
2012-10-08 09:58:14 -05:00
Robby Findler
9ed7b44222 adjust the code that initializes the pre-"first Run" repl
construction so it has the right inspector

closes PR 13056
2012-10-08 09:58:14 -05:00
Robby Findler
ec05ecf558 change the dir field of the multi file search dialog
into a combo-field

Initial version of this commit from Kieron Hardy
2012-10-03 22:49:20 -05:00
Robby Findler
58c9905eff adjust tooltip windows so they go away whenever
they get a mouse event

related to PR 13139
2012-10-02 20:56:34 -05:00
Robby Findler
a4b79ccf66 adjust Check Syntax so that it tries to point to the
raw-module-path inside of a phaseless-spec (see
the #%require docs for the description of these).
Also, Rackety

in conjunction with commit 9047427 (and an earlier
commit in those files/dirs), this commit:
 closes PR 7815
 closes PR 10455
 closes PR 10788
2012-10-01 10:47:23 -05:00
Robby Findler
ce8d8eb763 fix the way check syntax traverses #%require expressions that it sees
(the way things currently stand, check syntax needs more information
 from the fully expanded form, but at least now it has a better chance
 to actually use that information, if it were there ...)

related to PR 7815
related to PR 10455
related to PR 10788
2012-09-29 22:09:02 -05:00
Robby Findler
60a035889f make tooltips go away if the drracket window isn't
the top-level window (and make them not appear in
that case, too)

closes PR 13139
2012-09-28 23:09:16 -05:00
Robby Findler
e958c33739 make a bunch of unmutated private fields bound to procedures into private methods
(the usual (define f ...) in a class confusion)
2012-09-28 22:44:27 -05:00
Robby Findler
d9a58e5a6d fix rectangle computation for shortcircuiting drawing
in the module browser

closes PR 13080
2012-09-27 11:16:35 -05:00
Robby Findler
28c1c16ed5 fix module browser's red coloring of boxes in the
case that a file is required as x.ss, but its name
is actually x.rkt (and similar situations)

related to PR 13080

Also, Rackety
2012-09-27 10:57:26 -05:00
Robby Findler
ec6408b343 Adjust the web download phase of the install .plt file
menu item in drracket so that it first checks to see if
the downloaded file matches a .plt archive and, if not,
try to put some friendlier message in front of the gzip error

closes PR 9425
closes PR 13129
2012-09-24 14:11:21 -05:00
Robby Findler
c3a454aebf Add a missing check for when arrow-records might be #f
closes PR 13133
2012-09-21 16:20:07 -05:00
Robby Findler
a6d74c8e3b avoid the default handler for call-with-continuation-prompt in
favor of one that behaves much like it, but never escapes

closes PR 13121
2012-09-20 18:46:40 -05:00
Robby Findler
21e0d9e031 make check syntax traverse (module* ...) expressions
closes PR 13095
2012-09-19 06:48:09 -05:00
Robby Findler
ae87169d7e eliminate some dead code (showuld have been removed in an earlier commit) 2012-09-19 06:08:03 -05:00
Robby Findler
51d41c6cfe adjust check syntax so that it doesn't take over the right-click
menu, but instead cooperates with the existing protocol
(using keymap:add-to-right-button-menu)
2012-09-19 05:19:03 -05:00
Robby Findler
c069fa67a9 adjust the find-in-files initial config dialog to
get the "global" framework keybindings

closes PR 13110
2012-09-13 00:31:17 -05:00
Robby Findler
8a4567f5aa adjust the tooltip position so it goes to the end of the line where the arrowhead sits 2012-08-27 20:13:49 -05:00
Robby Findler
9934f202c9 avoid allocating a bunch of boxes (instead use ones already lying around) 2012-08-27 20:13:49 -05:00
Robby Findler
0d92608367 rename contract-gui.rkt to blueboxes-gui.rkt 2012-08-23 21:42:07 -05:00
Robby Findler
d3b4db2ed1 fix the computation of the minimum width for the blue boxes
(you could see it going wrong with 'this' from racket/class)
2012-08-23 21:27:00 -05:00
Robby Findler
f95f2fac54 plug a leak in online compilation that could hold onto
definition text% objects (and thus tabs and frames)
2012-08-21 19:37:27 -05:00
Robby Findler
e41aa93e6e fix a bug in the event handling that would cause updates
to the blue box to get missed when it was open via the mouse
(as opposed to be tacked open)
2012-08-20 20:30:52 -05:00
Robby Findler
01e7edeff1 some performance improvements for the new drracket blueboxes
specifically, it doesn't trigger redrawing of the screen
as aggressively, which seems to make a little difference
under mac os x.

I'd have liked to be more sophisticated in the way redraws
are triggered, but I don't see how (see long comment in this
commit for details)
2012-08-16 19:16:57 -05:00
Robby Findler
25e4115f32 give the f2 keybinding a more useful name
(since it shows up in the keybindigns dialog box)
2012-08-16 19:16:57 -05:00
Robby Findler
afc2faf651 redirect compile-time io during online check syntax into the warning log
closes PR 13036
2012-08-16 19:16:57 -05:00
Robby Findler
a8da7e452f increase the font size and increase the sampling
frequency in the profiler that drracket starts up
via the PLDRPROFILE environment variable
2012-08-16 19:16:57 -05:00
Robby Findler
b22f88eee1 pass the currently specified directory to get-directory
in the multi-file search parameters dialog

related to PR 12978
2012-08-14 18:59:22 -05:00
Robby Findler
23aa31fc6f adjut check syntax so that it pays attention only
to syntax-original? identifiers

It used to pay attention to non-original identifiers if they
were in the disappeared-use or disappeared-binding
properties, but now that the 'syntax' macro is fixed
(commit f28e8a0) it can ignore all non-original identifiers
2012-08-14 17:49:52 -05:00
Robby Findler
d34490d990 show docs for syntax-quoted identifiers
(when there are docs to show)
2012-08-14 16:20:48 -05:00
Robby Findler
d96d920cf9 rename contract-blueboxes.rktd to blueboxes.rktd 2012-08-14 16:20:47 -05:00
Robby Findler
1b18499c69 make the blue box be cleared out less eagerly 2012-08-13 10:31:55 -05:00
Robby Findler
6588449aed enable online check syntax (change the default for
the preferences and use a new preferences symbol, so
everyone gets the new default)
2012-08-12 16:20:21 -05:00
Robby Findler
89b72f94b9 fix annotations-mixin for new syncheck interface 2012-08-12 15:50:56 -05:00
Robby Findler
9f1b54c6fa remove experimentation code (that I should have removed earlier) 2012-08-12 15:50:55 -05:00
Robby Findler
0c6734f782 Add the contents of the "blue boxes" in the docs to the upper-right
corner of the definitions window, based on the information that check
syntax computes

This commit contains two separate changes to make this work:

  - adding a new renderer, based on the text renderer, that
    pulls out the contents of the blue boxes and saves them
    in the doc/ directories (specifically in the files named
    contract-blueboxes.rktd)

  - extend check syntax to use and display the information
    build by the new renderer
2012-08-12 08:41:46 -05:00
Robby Findler
48bed65e17 pulled rectangle-intersect? out into its
own file so it can be reused (in some code
that I've not yet pushed)
2012-08-10 13:46:53 -05:00
Robby Findler
708228d959 fix double separator problem on windows 2012-08-07 14:20:54 -05:00
Robby Findler
2256ca39ea raise minimum memory limit in DrRacket to 8 megabytes 2012-08-07 12:12:56 -05:00
Robby Findler
3573d61636 fix test for when the "hide big labels" popup menu appears 2012-08-04 08:56:25 -05:00
Robby Findler
1a619bd047 add tooltips at the start and end of arrows indicating how many references
there are and how many definition sites there are (in check syntax)

also: Rackety
2012-07-30 21:46:22 -05:00
Robby Findler
ec41d86fef clean up the way original objects are being handled in check syntax
Specifically, move the syntax-original? checks to the point
where objects are inserted into the tables (it seemed to mostly
be happening there already, but now remove the checks on the
references)
2012-07-30 21:46:22 -05:00
Robby Findler
02dd0909cb adjust DrRacket's errortrace stack printer window so that it
removes adjacent entries that have the same stack location
and instead just says "skipped N duplicate frames" in the
window

closes PR 12682
2012-07-30 02:36:17 -05:00
Robby Findler
9815822255 adjust the big definitions / interactions labels so they
are sensitive to the #lang line and then enable them
for the teaching languages
2012-07-29 09:43:38 -05:00
Robby Findler
9356e8e949 try out Asumu's suggestion, namely if there is a keyboard event,
then hide the definitions/interactions labels for a while (2
seconds currently). also, when the 2 seconds expires, fade back
in instead of just appearing immediately
2012-07-26 18:58:42 -05:00
Robby Findler
af3d52f9b5 fix bug in the computation to determine if the big interactions/definitions
label and the region to be refreshed have some overlap
2012-07-26 18:40:12 -05:00
Robby Findler
203fbf7950 fix coordinate computation for the new, big definitions/interactions labels
closes PR 12944
2012-07-26 18:37:34 -05:00
Robby Findler
7b72ddb7bf add big "definitions" and "interactions" labels to the drracket
definitions and interactions windows
2012-07-25 08:58:43 -05:00
Eli Barzilay
18883681a2 Convert all uses of (integer-in 0 255) to `byte?'. 2012-07-22 13:00:05 -04:00
Robby Findler
c4a768af00 add a Copy menu to the error message from the online expansion stuff
closes PR 12923
2012-07-21 12:23:08 -05:00
Robby Findler
5b96803273 fix a bug introduced by commit 05b88930c0
the symptom of the bug is that the red
error highlighting never worked

Please merge to the release branch
2012-07-21 07:23:47 -05:00
Matthew Flatt
6b3e207ecd fix related to recent module-resolver change 2012-07-17 15:32:42 -06:00
Robby Findler
a66c735b82 removed the check syntax mode support 2012-07-17 13:07:41 -05:00
Robby Findler
3463f4233e adjust the contract obligation aspect of check syntax
so that it uses tooltips instead of the modes

(so hopefully now people will actually see it ...)
2012-07-17 13:07:41 -05:00
Robby Findler
160eef8366 added a tooltip for set!'d variables 2012-07-17 13:07:41 -05:00
Robby Findler
36aeda60a4 fix sizing bug in tooltip windows 2012-07-17 13:07:41 -05:00
Robby Findler
70fac182c6 Add support to the show menu item to make ordering the items
simpler.

Use that support to adjust the Show menu to have a better
ordering for the built-in DrRacket items.
2012-07-17 13:07:41 -05:00
Robby Findler
05b88930c0 improve how an after-insert callback behaves (specifically,
avoid redundant work when there are multiple inserts during
an edit sequence)

closes PR 12897
2012-07-13 10:50:13 -05:00
Neil Toronto
db57b78e18 Added lock-icon
Changed most *-icon and *-logo function arguments to keyword arguments

text-icon no longer uses font size

Small doc changes
2012-06-26 15:00:05 -06:00
Robby Findler
3250d97f71 log errors that read-language produces when DrRacket calls it 2012-06-22 10:31:00 -05:00
Robby Findler
88f4ddabcc Rackety 2012-06-18 11:26:27 -05:00
Robby Findler
397f10842a export signatures from module-browser.rkt; also Rackety 2012-06-10 11:53:54 -05:00
Robby Findler
b5258e0e2b In the multi-file search window, only re-load the file
in the bottom window when it really is a different file
(ie, using a same-file predicate that involves opening
the files and comparing the ports)

closes PR 12635 (hopefully -- if not, then we can reopen)
2012-06-03 17:07:12 -05:00