Commit Graph

5121 Commits

Author SHA1 Message Date
Matthew Flatt
4491fd3362 rackunit/docs-complete: move to the "racket-index" package
Modules are not supposed to move to different packages, anymore, so
I'm breaking a rule. The problem is that having `rackunit/docs-complete`
in "scribble-lib" made "scribble-lib" depend on "racket-index", and
that's an undesirable dependency. (Installing Scribble shouldn't
force you to have Racket documentation.) I should have noticed
the problem when I moved `setup/xref` to "racket-index", but I missed
it.

As far as I can tell, there's only one package on pkgs.racket-lang.org
that isn't in the main repository and uses `rackunit/docs-index`. The
package doesn't correctly declare its dependencies, anyway.

original commit: d33c2252e10dbeb22e49c85f03707345e2756ce5
2014-06-02 12:34:12 +01:00
Robby Findler
6b2a12a9ad make c:x;c:f keybinding use file-menu:open-callback (when it can)
original commit: 8ff984a934fa1d8159e936e2d2bcf989f5ed3b45
2014-05-26 14:53:55 -05:00
Robby Findler
bedb06c837 tweak save-file docs based on my own earlier confusion
original commit: c0dfc135c0e1ff32bf7232f12a715b3047c90171
2014-05-22 14:28:14 -05:00
Robby Findler
c448ae87cd fix timeout computation in the REPL io
In the case that the flush queue was empty, the first byte that
comes it would appear to have come from a long time ago and
thus get flushed immediately.

Instead, when the first byte comes in, we restart the timer at that
point, intead of holding the old value

original commit: 4db7477b0da5aa6ceca593b53de57caaf4793dd2
2014-05-20 17:20:31 -05:00
Robby Findler
99762f704e use Menlo as the default font, when it is available
original commit: 251eb235d900b2522d1643368375b44a5a2fbd4a
2014-05-19 21:43:22 -05:00
Robby Findler
779275c204 fix a problem that leads to spurious 'file has changed on disk' messages
Before this commit, autosave files would (incorrectly) contribute to
the file's last modification time in a way that meant that after an autosave,
the warning would start triggering when the file is saved normally

original commit: 5751ebe530c9278aa5cad83e9b27205bc7bc0186
2014-05-19 10:05:17 -05:00
Robby Findler
29971bb642 fix a performance bug in drracket's REPL IO.
This one of those classic n^2-loop-that-should-be-linear bug. The fix
speeds up this program (when run in DrRacket) by about 1.75x:

  (for ([x (in-range 10000)])
    (display "abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz\n"))

The bug is fairly old too: I introduced this bug on March 6th,
2004. (Thanks, Sam, for making that old history accessible!)

original commit: 95cdd6e6198ea08d0ad7546bb8c19d12b4e5a83f
2014-05-10 20:02:03 -05:00
Matthew Flatt
50b592404a racket/gui: adapt text-editor-load-handler to missing-module exception
Raise `exn:fail:{filesystem,syntax}:missing-module` instead of
`exn:fail:filesystem` when a module file does not exist.

original commit: b420967b02f767c50bbae688cad67f2f9cca91e4
2014-05-03 20:06:03 -06:00
Matthew Flatt
e1aed6f3ea racket/gui: fix for Mac OS X 10.6
Closes PR 14482

original commit: afe06ed070577fad6eb74bf27717ce5337ff2b48
2014-05-02 15:14:50 -06:00
Lei Wang
59e634dbdb New indentation rules implemented and fixed typo and bug
1) Indentation rules to to count paren(indentation):
Return number of parenthesis till the outmost “@“ annotation,
if the there is "[", we check if it has "@" right after if and at the
same line, if so, we add the number of characters between "[" and
the beginning of the line it appears
2) line push back rules:
we do not push back lines begin with “@“ that
a) has keyworld "codeblock" or "verbatim" after
b) contains “[” and multiple lines before the closing “]”

original commit: 08718a4e2f3653a329e5f57068849117ab37c623
2014-05-02 14:32:58 -05:00
Matthew Flatt
43c8233308 racket/gui Win32: fix use-before-definition problem for choice%
Closes PR 14475

original commit: 9cb652dd0e211c531d9d3febda7a45a8e2d29bfb
2014-04-27 20:51:35 -06:00
Matthew Flatt
7e42de33ec racket/draw: fix problem with rotated text, font substition, and kerning
Closes PR 14469

original commit: 520f7f839dc718b71519313dcadbc4f09e912917
2014-04-27 16:51:23 -06:00
Vincent St-Amour
7fa382030d Proper indentation for syntax-parse in DrRacket.
original commit: 09d294abe15d77fd970a443a3c2967e6056346a3
2014-04-25 14:17:31 -04:00
Matthew Flatt
ff20e067cf racket/gui Gtk: choice% and combo% repair for some Gtk variants
Finishes repair started in 8cbcba8ed so that mouse events can be
intercepted for `combo%` and `choice%` objects. DrRacket's
font preference choice relies on intercepting mouse events
to populate the menu, for example.

Reference counting doesn't seem to work, probably because the
relevant widgets are supposed to be private.

original commit: 310df9e9cf4607260a64308182088cf40533a0e4
2014-04-24 16:46:05 -06:00
Matthew Flatt
d37f30bb6e racket/gui Cocoa: fix menu bar after non-GUI startup on 10.9
When a GUI program is run through `racket` instead of `gracket`, an
extra dance is needed on recent Mac OS X version (10.9, maybe also 10.8)
to make the Racket-based application take over the menu bar.

original commit: fa23a373accff9b698cff6e7d8cd2b17f4515c41
2014-04-24 10:21:52 -06:00
Matthew Flatt
2a00f4a466 racket/gui Windows: repair for use-before-initialization
Closes PR 14454

original commit: 7cb9628449db3ea1685c4b9ff5c4099d15d77001
2014-04-19 14:35:30 -06:00
Robby Findler
9ab5e6b618 fix a non-buggy set!-before-initialization in syntax-browser
What appears to be happening is that the fields path and next-push
are state variables on this class that are initialized and then used
only during the dynamic-extent of syntax-object->datum/record-paths
and of the pretty-printing code.

So, before the check was in place, they were initialized and used
before the 'path' field was initialized, but by the time the path
field was initialized, the value was junk (not going to be used again)
but it still raised an error

original commit: 34abe306e34e038bb3e6504f6203db3f85a913a2
2014-04-18 06:57:45 -05:00
Matthew Flatt
4317645cb4 fix for Gtk back-end
original commit: 1c0c24cb8f3940aca0e48c26361c7a690f237205
2014-04-15 15:06:41 -06:00
Matthew Flatt
9d8f3de27d fix some uses of not-yet-defined fields
original commit: 113a2eea2146bfd5d111554f4bada93f3a65704c
2014-04-15 15:03:11 -06:00
Robby Findler
a32e1ac4c1 point to the contract profiler
original commit: 7b26260d998f24fa330447660fa68609eef553ac
2014-04-14 16:50:16 -05:00
Robby Findler
96370d6252 move dot graph support from redex into mrlib's graph library and document it
original commit: f1a3c08ffd23f402f4962bc77fa7330a6805ef77
2014-04-13 19:28:48 -05:00
Matthew Flatt
fa41ed01c5 upgrade pre-built libraries for Windows and Mac OS X
Mostly upgrades the drawing stack to the latest Cairo, Pango, Glib,
etc., but also upgrades the OpenSSL library on Windows to 1.0.1g.

The new "racket/src/native-libs" directory provides scripts to
rebuild the libraries from source. Those script are fragile, because
library sources and configuration scripts are fragile. The
scripts at least archive some expertise/advice in a mostly executable
form.

original commit: 23cf3ba11e6ea3ac5aa0b3919651f38e037fa2c9
2014-04-09 07:35:37 -06:00
Robby Findler
c3f913fdef Improve DrRacket .plt installation functionality so that it prints
out the file it tried to unpack when it fails

original commit: 980e957407e8e3072e7cf241c5cb55fb7ec175bf
2014-04-06 17:49:22 -05:00
Robby Findler
6f0acc4b43 fix 2htdp/image for text-only mode and add a test case that
covers improvements from 8fb8f56

original commit: e08ffde1b530975bd88c511bbf4f95ee4b829284
2014-04-06 08:38:26 -05:00
Matthew Flatt
79cbc62ea0 racket/gui cocoa: toolbar-button is for 10.6 and earlier, only
In particular, 'toobar-button (before 10.7) and 'fullscreen-button
(10.7 and later) do not get along, so use only one of them.

original commit: 5193e37f0bb3904c70e0a48d51b5528859bd19c9
2014-04-05 16:26:31 -06:00
Matthew Flatt
990bb9c938 racket/gui: add Mac OS X fullscreen options to frame%
original commit: 887a906bd2dffce800da84aa4788268db96b1b3b
2014-04-05 07:13:27 -06:00
Robby Findler
e621a273f3 add missing for-label require
original commit: b23f7fe95fbb64ad24bfac29ebb89c8d98d1fa77
2014-04-04 16:45:33 -05:00
Robby Findler
f2907d0782 adjust 2htdp/image so that they work properly as wxme-mode snips
Before, they would create a crippled version in that mode, but
that is no longer necessary (it may never have been necessary,
but it certainly hasn't been necessary in a while)

original commit: 8fb8f561c48ad7660b049a318511a929c39e4c06
2014-04-04 16:45:32 -05:00
Matthew Flatt
3f4b21959d fix problem with @2x bitmaps on Mac OS X 10.5
original commit: 1273d0fbb3afecf00027280b60587261f8d0785d
2014-04-01 16:38:03 -06:00
Matthew Flatt
384eb0ff1e racket/gui mac os x: fix compatible-bitmap scale on slow path
original commit: 0a8b4f573b02777b7605498b9071f63ac23e477f
2014-04-01 16:38:03 -06:00
Matthew Flatt
b4decca6da racket/gui gtk: fix -singleInstance for paths that don't work as strings
Just in case a relative path turned into an absolute path doesn't
work as a string, add support for a bytes encoding.

original commit: d722fa42df16e9a74da109582e915c63f59a7a29
2014-03-29 15:17:56 -06:00
Matthew Flatt
2e198d4e22 racket/gui gtk: fix -singleInstance mode and relative paths
original commit: facaba679443d6bf7232cd47a6fce51814144b62
2014-03-29 10:43:58 -06:00
Lei Wang
f30e0bbb5a Modified Scribble Indentation functions to support "line push back"(combine concurrent short lines)
original commit: 424cef93973131f260be32bdc97a86da5ccb204d
2014-03-21 01:08:16 -04:00
Robby Findler
c061e83ac8 add Michał Pałka's l
original commit: 2598704dde79677b28aa0bfd5df2924bba405a99
2014-03-18 14:52:45 -05:00
Matthew Flatt
cd1c5bfa99 racket/gui gtk: fix reference count on widget extracted in choice%
Incorrect referencing causes crashes on Kubuntu, for example.

original commit: 8cbcba8ed2bb6a50826fa5e760702e4e2dd15ba4
2014-03-13 06:42:38 -06:00
Matthew Flatt
76cf6ffe1f support older Cairo and GDK versions
original commit: b971f9f4ebe0cdad9b3e4e9d5bf5d4547a8c14a4
2014-02-28 09:47:28 -07:00
Robby Findler
0bc6e6d6d2 Adjust DrRacket to better support #lang-line specific
keybindings and then use that to add in an esc;q keybinding
for scribble

original commit: 58e7d033f79b20f0d9e55d9e8a843f64b8957c5f
2014-02-28 09:27:39 -06:00
Lei Wang
ac41a7046f Indentation implementation for Scribble
original commit: e7434e19973de93012c862cfebe3f34a65ffd7e5
2014-02-28 09:26:44 -06:00
Matthew Flatt
b373a82edc LGPL by reference
original commit: 981701d2378179d4ada54b7fd2608df3b89748fd
2014-02-27 15:56:11 -07:00
Matthew Flatt
94158d7fbe racket/gui: avoid editor refresh for no-op scroll wheel
original commit: eb2a74aabad1cae9d1197a6e658406cfa9e7d27e
2014-02-25 13:48:36 -07:00
Robby Findler
147be7813a docs bug
original commit: 96e6d8338e7c61da08e3d069a3432dc9ab11461f
2014-02-25 10:55:57 -06:00
Matthew Flatt
0bd8d6f5a4 racket/gui: small speed-ups in editor drawing path
Mostly, replace some method calls with field selectors (where the
path is important enough that it seems worthwhile).

original commit: 78321aa4e6ba0a1a3cc32ae41d2d85c16756305a
2014-02-25 06:31:10 -07:00
Robby Findler
bb18987512 fix careless error (apologies future git bisecters)
original commit: dc3d6280a0069075c8ea6cf6315e55ab4ef50e11
2014-02-22 07:49:04 -06:00
Robby Findler
d65c691b4a always show the memory use and the () status indicators in drracket's status line
original commit: 51adb339d5b7d59a29c46e2444e9879811dd7ce7
2014-02-22 07:44:55 -06:00
Robby Findler
6df4504d47 add a test case to make sure 'Insert Large Letters' doesn't crash
original commit: a2b03a083a8c5238e05e0eac0501653bf593b443
2014-02-21 17:29:32 -06:00
Matthew Flatt
746f7ec3d0 racket/draw: fix serializaiton of bitmap drawing in record-dc%
Closes PR 14349

original commit: 47d913b451d12e5e52a4ecaaac830b59deea5945
2014-02-13 15:23:09 -07:00
Matthew Flatt
7d725504cd racket/gui: change some eq? to object=?
Some places in the editor API accept an object as an argument
where the object's identity is relevant. In that case, `object=?`
must be used instead of `eq?` to work right with contracts.

original commit: dc0653383f1eb54b05afc0c6f09106536950d0ca
2014-02-10 06:25:32 -07:00
Matthew Flatt
5003d33be9 racket/gui: change pasteboard to put location info in snips
Use the field in a `snip%` that is otherwise used by a `text%` owner
to store line information. Reusing the field avoids the need for
an `eq?`-based hash table of snips.

original commit: 2bd8c2d8edcb54abf21ddd6ff942b656d78d502a
2014-02-10 06:25:32 -07:00
Matthew Flatt
01b6810a4c racket/snip and racket/gui: remove leftover ~ methods
The `~` methods on snip and editor-related classes are not documented
or called from anywhere. They corresponded to destructor methods back
when the classes were ported from C++.

original commit: 70d91b5516a24bb0640cbb0818e6d31f529db539
2014-02-10 06:25:32 -07:00
Asumu Takikawa
8b554da1bb Fix doc contract for list-box%
original commit: 8133559442bac9e923e8c74ae4f40bdd37e6c4d5
2014-02-06 17:24:47 -05:00