Björn Lindqvist
705e2b8d4b
ui.tools.listener: only recall if the lexer-error is aborted ( #375 )
2015-10-28 16:31:13 +01:00
Björn Lindqvist
7bc1009973
ui.*: make active? an integer 0-100
...
A UI backend can delay setting active? to 100 until the windows actually
is visible. That way, some redundant redraws that happen when the window
isn't visible is supressed. It makes the Windows and GTK UI startup a
little faster.
2015-10-27 19:00:28 +01:00
Björn Lindqvist
73893693d3
ui.backend.*: the offscreen buffer hooks appear unused - let's delete!
2015-10-27 16:58:01 +01:00
John Benediktsson
dac179bc33
unicode.normalize: cleanup usings.
2015-10-26 18:25:52 -07:00
Björn Lindqvist
8cd471eda6
images.loader.gdiplus: both BGRA and BGRX formats are supported
2015-10-25 21:57:41 +01:00
John Benediktsson
8a2cf5d67b
fonts: fix name of sans-serif font.
2015-10-25 13:32:02 -07:00
Björn Lindqvist
9ca00a3c75
help.stylesheet: make sizes calculated relative to the default-font-size
...
This makes Factors ui much easier to adapt to hidpi screens. You change
the default-font-size and elements should grow or shrink in proportion.
2015-10-24 14:44:30 +02:00
Björn Lindqvist
594eb3774d
fonts: turn hardcoded font names and sizes into constants
2015-10-24 14:29:12 +02:00
Björn Lindqvist
f2f7fd0b94
ui.tools.listener: recall the last command on parse errors
2015-10-23 17:59:04 +02:00
Björn Lindqvist
5f6ec2ba8b
ui.tools.listener.tests: fix tests, manifest needs to be set and vocab used
2015-10-22 23:33:46 +02:00
Björn Lindqvist
436cb76dd3
windows.uniscribe: add SSA_FALLBACK and SSA_TAB to the flags, should fix #860
2015-10-22 23:14:55 +02:00
Björn Lindqvist
ff118771ae
ui.tools.listener: call interactor-finish before try-parse #375
...
Also changes the parse error handling in try-parse. If a parse error
occurs it is wrapped in a small quotation to defer handling it until the
quotation is ran.
2015-10-22 18:02:35 +02:00
Björn Lindqvist
d15c5bced4
ui.tools.listener: tried to simplify stream-read-quot and handle-interactive
2015-10-22 18:02:35 +02:00
Björn Lindqvist
0795d21e46
ui.backend.gtk: on-key-press and on-key-release can be merged into one
...
on-key-press/release handler
2015-10-22 18:02:35 +02:00
Björn Lindqvist
9b5cb445ee
tools.ps.linux: recover from missing file in ps-cmdline, fixes #1120
2015-10-20 16:55:48 +02:00
Björn Lindqvist
8bb96cbfd1
ui.gadgets.incremental: fix so that the scrolled of gadgets are ungrafted
2015-10-18 17:35:26 +02:00
Björn Lindqvist
0f803aa84b
ui.gadgets.tests: clear the layout queue, so test dont interfere with
...
other tests
2015-10-17 15:58:59 +02:00
Björn Lindqvist
27f54fc123
ui.gadgets.tests: fix the test (layout-queue is a vector now)
2015-10-16 22:28:31 +02:00
Björn Lindqvist
d2181a9e71
ui.gadgets.incremental: trivial scrolling, maybe solves #1488 ?
2015-10-16 10:55:48 +02:00
Björn Lindqvist
4812cec634
ui.gadgets.buttons: memoize the roll button themes pens
...
It reduces memory usage by about 10% for the #1488 test on my machine
and doesnt seem to have any bad side-effects.
2015-10-16 09:20:29 +02:00
Björn Lindqvist
9af7be2ef9
ui: the layout-queue is more efficient as a vector than a dlist
...
Improves memory usage in the #1488 example from about 20,4% to 17,4% on
my machine.
2015-10-15 18:34:49 +02:00
Björn Lindqvist
1873eda1d2
ui.gadgets: ensure that layout-later yields if the queue gets to large
...
This improves memory utilization a lot for #1488 . Otherwise the queue
grows to two million entries before being processed.
2015-10-15 16:29:49 +02:00
Björn Lindqvist
302220c535
dlists: new word dlist-length for getting the length
2015-10-15 16:27:23 +02:00
Björn Lindqvist
c0d1d2f331
ui.*: a little more ui docs
2015-10-15 16:27:15 +02:00
Björn Lindqvist
420ca29795
ui.tools.listener: make it so up/down arrows can be used for history
...
cycling
It's how it works in most CLIs so it's nice if it works in Factor too.
2015-10-14 03:05:16 +02:00
Björn Lindqvist
f9e5d4f22c
ui.backend.gtk: tune the order of the setup tasks in (open-window)
...
The fix for #1307 made bug #776 come back. Apparently gtk is kind of
britle so the widget setup must be done in a very specific order.
2015-10-14 00:22:26 +02:00
Björn Lindqvist
575da3e478
VM: fix so that errno is set if MoveFileEx fails, should fix #1490
2015-10-12 12:19:21 +02:00
Björn Lindqvist
37cd54cfbb
io.files.windows.tests: windows test for the save-image not failing failure #1489
...
this one really should always throw permission denied or else something
is very spooky
2015-10-11 04:21:43 +02:00
Björn Lindqvist
e35087fb22
io.files.windows: fix incorrect parsing of file attribute bitfield in win32-file-attributes
2015-10-11 04:11:30 +02:00
Björn Lindqvist
e8841a4967
classes.struct: fix for struct equality and hashcode #1194
...
Instead of comparing the structs underlying byte arrays, get their slots
and compare that.
2015-10-10 23:58:04 +02:00
Björn Lindqvist
81ad3e21cb
tuple-arrays: initial-values can be reused here to create the tuple
...
array sequence
2015-10-10 23:58:04 +02:00
Doug Coleman
8e90bd3dec
kernel32: Fix a typo, fix a constant value, another typo, add three more
...
flags to the monitors api.
2015-10-09 20:38:30 -07:00
Doug Coleman
db793e06f6
io.files.windows: SetFilePointer takes a PLONG not a uint pointer.
2015-10-09 19:50:06 -07:00
Doug Coleman
78f9fe9053
io.monitors.windows: make a DWORD ref instead of a uint. probably
...
irrelevant but it's what the win32 api header uses.
2015-10-09 19:21:24 -07:00
Björn Lindqvist
77f0d0042e
unix.ffi,windows.winsock: add the rest of the AI_* flags
...
Currently unused, but they are useful if you are calling the getaddrinfo
function directly
2015-10-08 15:29:14 +02:00
Björn Lindqvist
75b8b4a408
io.servers: filter the list of addrspecs in listen-on so that only
...
usable ones remains
"localhost" resolve-host can return unusable ipv6 addresses on hosts not
supporting ipv6. So a filtering step is needed in listen-on.
2015-10-08 15:08:07 +02:00
Björn Lindqvist
2f4c8ee07a
listener: only call parser-quiet? off when listener starts
...
it probably shouldn't be called on every input loop because then if you
set parser-quiet? to t, the setting will be undone
2015-10-05 17:04:36 +02:00
Björn Lindqvist
cc4bb991b2
webapps.wiki.example: new vocab to show how the wiki webapp should be
...
run
it's a little tricky to figure out so a vocab demonstrating it is useful
2015-10-04 03:07:29 +02:00
Björn Lindqvist
28c179cf59
furnace.recaptcha: logic in recaptcha-url was wrong, fix and test case
2015-10-04 02:26:02 +02:00
Björn Lindqvist
0a3b4b4872
io.sockets.secure.debug: use <test-secure-config> in some places
...
the word can be reused in a few places when setting up ssl. it removes
some duplicated code
2015-10-04 01:25:11 +02:00
John Benediktsson
29f94f8a65
http.server.static: better fix for cgi-docs issue.
2015-10-02 11:32:20 -07:00
John Benediktsson
36c002f567
http.server.cgi: different fix maybe.
2015-10-02 11:25:36 -07:00
John Benediktsson
761f0d630e
Revert "http.server.cgi: fix for the dependency cycle http.server.cgi <=>"
...
This reverts commit 51c5484e24
.
2015-10-02 11:12:56 -07:00
Björn Lindqvist
51c5484e24
http.server.cgi: fix for the dependency cycle http.server.cgi <=>
...
http.server.static (#1311 )
2015-10-02 14:19:47 +02:00
Björn Lindqvist
6b940cb972
furnace.auth.login: name of the realm is already set in the <login-realm> constructor
2015-10-02 13:14:26 +02:00
John Benediktsson
30182a4d38
debugger: adding strerror of the errno to io-error.
2015-10-01 08:15:39 -07:00
Björn Lindqvist
dbcfc178ff
io.directories.unix,environment.unix: better to use
...
native-string-encoding over hardcoding utf8
2015-10-01 15:52:51 +02:00
Björn Lindqvist
ffc441ad63
VM: looks like ERROR_C_STRING is never thrown, so it can be removed
2015-09-29 23:12:56 +02:00
Alexander Iljin
13b4b76632
Fix a word in some old documentation on lazy lists.
2015-09-29 09:12:35 -07:00
Alexander Iljin
156a2d0b90
Minor documentation fixes.
2015-09-29 09:12:29 -07:00
John Benediktsson
2dea9bab74
ui.backend.gtk: small typo fix.
2015-09-28 14:48:20 -07:00
Björn Lindqvist
94f863f33e
ui.backend.gtk: make it so configure-im is called after realize ( #1307 )
...
gtk_im_context_set_client_window must be called with a realized window
otherwise IM won't work,
http://lists.maemo.org/pipermail//maemo-developers/2006-January/002337.html
2015-09-28 15:33:36 +02:00
Björn Lindqvist
be7fc6f7c9
logging: let's include the tb when logging errors, makes it way easier
...
to debug!
2015-09-24 11:43:48 +02:00
John Benediktsson
924fc60e30
io.ports: bring back file read performance, ignoring zeroes.
2015-09-23 20:07:53 -07:00
Doug Coleman
84e0034168
io.standard-paths.unix: iterm2 integration has some spew before every bash command if you have enabled shell integration. these commands end in ascii 7, so find the last one, strip it off, and then split on ":". Fixes the mac graphviz install problem.
2015-09-23 17:11:47 -07:00
John Benediktsson
b644afb019
stack-checker.inlining: fix help-lint.
2015-09-23 17:10:43 -07:00
Björn Lindqvist
4890239c3c
compiler.tree.propagation.tests: #1370 specific test
2015-09-22 09:03:16 +02:00
Björn Lindqvist
804348287c
Docs: fix a bunch of help-lint warnings
2015-09-22 08:52:59 +02:00
Björn Lindqvist
c5b92cedcb
compiler.*: even more compiler docs
2015-09-22 08:52:59 +02:00
Björn Lindqvist
4db173cadb
compiler.*: random doc and tests updates
2015-09-22 08:52:59 +02:00
Björn Lindqvist
3e485652fe
compiler.tree.propagation.slots: looks like you can do without the
...
constructor-output-class word
2015-09-22 08:52:59 +02:00
Björn Lindqvist
09ad5bd617
compiler.tree.propagation.slots: docs & tests for the vocab
2015-09-22 08:52:59 +02:00
Björn Lindqvist
4ee88bdc3d
compiler.tree.propagation.info: better logic for comparing value-infos
...
Now the slots of the value infos only matter if the class of the first
info is at least as large as the class of the second info
2015-09-22 08:52:37 +02:00
Björn Lindqvist
bc0cdff2c6
compiler.tree.propagation.info: fixed value-info<= so that it handles
...
slots correctly
if a slot is defined for a value-info, then it can't be <= a value-info
without that slot defined
2015-09-22 08:52:37 +02:00
Björn Lindqvist
86d35982ac
compiler.cfg.linear-scan.allocation.splitting: better def for split-uses
...
it seems to be just as fast as the wordier one
2015-09-22 08:52:37 +02:00
Björn Lindqvist
ea67379751
compiler.tree.*: new tests
2015-09-22 08:52:37 +02:00
Björn Lindqvist
b9ce4910af
compiler.tree.*: docs
2015-09-22 08:52:36 +02:00
Björn Lindqvist
aaef9af863
compiler.cfg.*: random doc updates
2015-09-22 08:51:46 +02:00
Björn Lindqvist
a1153e6de1
compiler.tree.propagation.info: more docs and tests for the vocab
2015-09-22 08:51:46 +02:00
Björn Lindqvist
bb8b77419f
compiler.tree.propagation.nodes: the loop-nesting variable appears unused
2015-09-22 08:51:05 +02:00
Björn Lindqvist
44092bf78d
compiler.tree.propagation.*: better to use 2array than the "cuter" /\ word
2015-09-22 08:51:05 +02:00
Björn Lindqvist
9369f8216f
compiler.tree.propagation.constraints: docs for this vocab
2015-09-22 08:51:04 +02:00
Björn Lindqvist
508ddc5c0b
compiler.cfg.linear-scan.ranges: merge adjacent ranges when adding them
...
this way, the number of live interval ranges you have to deal with is
much smaller
2015-09-22 08:51:04 +02:00
Björn Lindqvist
89e261f673
compiler.cfg.linear-scan.ranges: remove the live-range definition and
...
use integer pairs instead
so instead of ranges being a sequence of live-ranges it is now a
sequence of integer pairs instead. That makes the
compiler.cfg.linear-scan.ranges simpler and easier to generalize
2015-09-22 08:51:04 +02:00
Björn Lindqvist
2943e7f246
compiler.cfg.linear-scan.ranges: new word ranges-endpoints and remove relevant-ranges
2015-09-22 08:51:04 +02:00
Björn Lindqvist
8c781639ed
compiler.cfg.linear-scan.ranges: move more range-related features into
...
this vocab
2015-09-22 08:51:04 +02:00
Björn Lindqvist
fb45bc278f
compiler.cfg.linear-scan.live-intervals: the reg-class slot can be
...
removed
it's always the same as vreg>> rep-of reg-class-of so no need to store
that data twice
2015-09-22 08:51:04 +02:00
Björn Lindqvist
68c6654763
compiler.cfg.linear-scan.*: move words for splitting and intersecting ranges to the compiler.cfg.linear-scan.ranges vocab
2015-09-22 08:51:04 +02:00
Björn Lindqvist
b8d47ed845
compiler.cfg.linear-scan.ranges: new vocab to contain all the range
...
related stuff from live intervals
2015-09-22 08:51:03 +02:00
Björn Lindqvist
d0aae5cc20
compiler.cfg.linearization: number-blocks can set the number>> accessor
...
instead of using the numbers dynamic variable
2015-09-22 08:51:03 +02:00
John Benediktsson
d5c5a1389d
ui.gadgets.paragraphs: pref-dim of { 0 0 } if no children.
2015-09-20 09:45:05 -07:00
John Benediktsson
e0bcd7423b
wrap.words: make it work with empty input.
2015-09-20 09:44:17 -07:00
John Benediktsson
d6b545a10b
html.streams: fix tests.
2015-09-14 20:32:45 -07:00
John Benediktsson
ba3f342bf1
help.html: cleanup extra spaces.
2015-09-14 15:43:33 -07:00
John Benediktsson
74d8e43312
help.html: simplify html by saving styles as classes.
...
We store the CSS classes in the HTML <style> tag.
2015-09-14 13:32:38 -07:00
John Benediktsson
59caf874a3
syntax: removing #! as a comment character.
...
We don't need two types of comments and shebang (#!) is handled
natively by the lexer, so the original reason for #! is not valid.
2015-09-09 18:28:08 -07:00
John Benediktsson
e477f6996f
Fix comments to be ! not #!.
2015-09-08 16:15:10 -07:00
John Benediktsson
75e50ec5e0
images.loader: use accessors in tests.
2015-09-06 08:23:17 -07:00
Björn Lindqvist
5684fab484
images.loader.gdiplus: fix for the call to GdipBitmapLockBits
...
GdipBitmapLockBits might trigger gc so the GpRect struct must be copied
to stable stack memory so that the collector doesn't move it.
2015-09-06 15:15:01 +02:00
Björn Lindqvist
721048bbb9
bootstrap.image.tests: total 20 -> 18
2015-09-03 13:18:26 +02:00
John Benediktsson
2435307fb3
peg: some cleanup.
2015-09-02 13:14:01 -07:00
Björn Lindqvist
bc7f9ee669
VM: always use undecorated names when loading ffi functions
...
For win32, Factor tries four different function names when loading
stdcall and fastcall functions, in case decorated names are used in the
dll. It seems to not be necessary because a dll meant for 3rd party use
will always export undecorated
names (http://blogs.msdn.com/b/oldnewthing/archive/2004/01/12/57833.aspx ).
2015-09-02 21:54:41 +02:00
Björn Lindqvist
9725169ca7
compiler.cfg.intrinsics.misc: use the vm-special-object-offset word
2015-09-02 21:54:36 +02:00
Björn Lindqvist
de4917e6a1
VM: give the exception handling special object a real name
2015-09-02 21:54:33 +02:00
Björn Lindqvist
22887c5816
VM: get rid of the odd RT_EXCEPTION_HANDLER relocation
...
The address to the win32 relocation handler can be stored in a special
object and be accessed by jit-install-seh. Doing it that way is better
because you can remove a lot of special code related to that relocation
type.
2015-09-02 21:54:30 +02:00
Björn Lindqvist
85e45ae29e
compiler.constants: remove a bunch of constants that are unused
...
(or only used by the defunkt arm backend)
2015-09-02 21:54:24 +02:00
Björn Lindqvist
a89b0c2b30
Docs: reorg of the compiler.constants docs a little
2015-09-02 21:54:21 +02:00
Björn Lindqvist
cee0b19324
VM: the ffi-signal-handler and ffi-leaf-signal-handler primitives are unused
2015-09-02 21:54:15 +02:00
John Benediktsson
b28a24c7df
peg: fix some old docs that referred to "p1".
2015-09-02 10:34:59 -07:00
Jon Harper
6ee9fad443
formatting: fix docs for padding and use a better example
...
Make the padding number coherent between the example and the docs.
Also bump it from 3 to 10 because [[3.14 "%'#5f" printf]] is "3.140000"
because the default precision is 6.
2015-08-30 18:43:59 +02:00