Commit graph

214 commits

Author SHA1 Message Date
Evan Czaplicki
b3cc261f96 Make show nicer for signals and unknown objects. 2013-07-30 09:10:06 -07:00
Evan Czaplicki
ae6a3b36b5 Fix runtime code for comparing things 2013-07-30 08:44:23 -07:00
Evan Czaplicki
3e4773ca2e Fix libraries to match new JS generation rules 2013-07-29 23:23:04 +02:00
Evan Czaplicki
7968fa5bff Make Basics compile 2013-07-25 23:52:39 +02:00
Evan Czaplicki
c4880ca5de Rename Prelude to Basics to get rid of circular dependencies 2013-07-25 23:24:33 +02:00
Evan Czaplicki
067773d601 Update the List library to use the number, comparable, and appendable type variables 2013-07-25 16:40:39 +02:00
Andrew Miller
1f3ba5ca35 Fix a typo bug in the onblur handler for Touch. 2013-07-15 14:11:02 +12:00
Evan Czaplicki
1fcb01f743 Finish switching over to '_Tuple' format for tuples. 2013-07-15 01:05:14 +02:00
Evan Czaplicki
340c2e7efa Switch to using px to set text height instead of em. 2013-06-23 04:48:32 -07:00
evancz
9a40249e05 Fix the confusion with "Cons" and "Nil" in issue #176.
Also add the ExplicitList expression.
2013-06-20 21:25:10 -07:00
evancz
13dacfd8f9 Stop a bunch of keyboard signals from firing too many events. 2013-06-16 14:20:15 -07:00
evancz
afacd1b858 Add hoverable and hoverables 2013-06-15 00:49:22 -07:00
evancz
0bee2057d9 Merge branch 'dev' of https://github.com/evancz/Elm into dev 2013-06-13 12:53:15 -07:00
Mads Flensted-Urech
f8c6a93ad3 fromRecord (toJS): convert recursively and string handling 2013-06-09 22:55:38 +02:00
evancz
3e45d8e9ce Fix bug in setting headers. 2013-06-09 11:13:03 -07:00
evancz
b30482a38f Get timers to detach themselves when a swap occurs. 2013-06-03 00:19:48 -07:00
evancz
90cf4218a8 Switch to a custom way of attaching event listeners that makes it easier to detach them if necessary. 2013-06-02 23:46:02 -07:00
evancz
6ddb826332 First draft addition of hot-swapping. Clean up Init.js a bit as well. 2013-05-30 18:41:43 -07:00
evancz
ab5ded36a6 Report success for all 2xx response statuses. 2013-05-23 19:06:14 +02:00
evancz
ebed9f62c9 Fix typo in variable name. 2013-05-23 14:56:45 +02:00
evancz
2da0a59e35 Add basic drop down menus. 2013-05-23 12:44:57 +02:00
evancz
5714764aba Make sure that empty requests are not sent. 2013-05-23 11:11:24 +02:00
evancz
582a4c5ee2 Fix Float32Array bug in IE. Fix input selection bug in IE. 2013-05-22 14:05:53 +02:00
evancz
d9d6ce51ca Fix bug with text resizing in FF and IE. Both report clientWidth and clientHeight as an integer that has been rounded DOWN from the actual float value. This means they can be too small. Switched to using getComputedStyle. 2013-05-22 10:50:51 +02:00
evancz
de4e9ac19f Fix mistake in Graphics/Input.js library. 2013-05-22 03:05:44 +02:00
evancz
7ece842af5 Make closure compiler happy. 2013-05-22 01:06:12 +02:00
evancz
970277f7f2 Minor documentation fix for JavaScript/Experimental.elm
Remove logging in Native/List.js
2013-05-21 18:27:22 +02:00
evancz
96e719401d Change the Json API and change the name of WebSocket.open to not clash with open as a keyword. 2013-05-21 11:04:38 +02:00
evancz
d31acc5c9d Minor bug fixes in RTS and libraries. 2013-05-21 10:03:51 +02:00
evancz
7f314846ad Fix a cyclical dependency in the runtime, fix a use of ms which is now undefined. 2013-05-20 15:36:21 +02:00
evancz
94bb5e5a31 Change the type of FieldState slightly. Now uses selectionStart and selectionEnd instead of the more ambiguous start and end.
Also add tons of documentation to `Graphics.Input`.

Also add the `emptyFieldState` value.
2013-05-20 15:35:44 +02:00
evancz
706d706e3f Simplify the Input API for basic widgets. 2013-05-17 23:00:25 +02:00
evancz
8823b012d1 Merge branch 'dev' of https://github.com/evancz/Elm into dev 2013-05-17 22:46:55 +02:00
evancz
c92dd2f921 Add lots of documentation and do some minor API clean up. 2013-05-17 22:46:08 +02:00
evancz
5044724cda Improve documentation a bit and get split working properly. 2013-05-17 12:49:31 +02:00
Evan Czaplicki
df73a090e4 Merge pull request #152 from perplexes/fix_http_json
Fix HTTP/JSON
2013-05-17 02:53:32 -07:00
evancz
a9400dbc63 Clean up some documentation and make some minor API tweaks. 2013-05-16 22:10:50 +02:00
evancz
6e1a3f5c0f fix minor mistake in adjustOffset 2013-05-15 07:53:01 +02:00
evancz
73fd3f345d Fix undefined variable usage in JS. 2013-05-15 07:48:45 +02:00
Colin Curtin
acd2b61e00 Merge remote-tracking branch 'evan/dev' into lint
Conflicts:
	runtime/Init.js
	runtime/Render/Collage.js
2013-05-14 09:18:38 -07:00
evancz
7ce550901c Move to initializing with three different functions: fullscreen, node, and worker.
Add code to ensure that mouse and touch positions are reported relative to the embedded Elm node.

Remove the elm_ prefix from the events for logging, redirects, and title changes. Should be silo'd by the `elm` and not escape into the global event namespace.
2013-05-14 16:29:06 +02:00
Colin Curtin
0685425ace "float" is a reserved word in JS 2013-05-11 17:38:07 -07:00
Colin Curtin
dccb6257fb Prefer typeof over try/catch for feature detection. 2013-05-11 17:23:34 -07:00
Colin Curtin
98c0269edc Moar whitespace. 2013-05-11 17:15:45 -07:00
Colin Curtin
2b90d0eb9e Whitespace, semicolons, lint etc. No functional changes. 2013-05-11 13:42:45 -07:00
Colin Curtin
8db9ccf57e Fix HTTP/JSON
* Elm Http: Signal (lift) was not imported
* Native Http: "Waiting" was not a string.
* Elm Json: find* weren't using the Json Object type (which find was expecting)
* Native Json: Utils was not imported (to use Tuple2)
2013-05-11 13:35:20 -07:00
evancz
b7e4f9b73b Get rid of logging 2013-05-11 12:34:12 -07:00
evancz
d8067fd8c4 Fix foldp 2013-05-06 02:41:22 -07:00
evancz
a8df7eb28a Minor bug fixes 2013-05-06 02:30:50 -07:00
evancz
3f8ce38f81 Rename some stuff in Graphics.Input 2013-05-06 02:30:11 -07:00
evancz
80b47ed0f5 Separate mouse drags. 2013-05-05 19:17:29 -07:00
evancz
04d320efac Fix Window.height in the first frame. 2013-05-05 17:52:00 -07:00
evancz
9f2964992a Add mouse support in the Touch library 2013-05-05 17:51:30 -07:00
evancz
82d753a685 Properly attach mouse events to document 2013-05-05 17:51:04 -07:00
evancz
934f37f882 Settle on name for lastKey and set the type as Signal KeyCode. 2013-05-05 17:49:28 -07:00
evancz
2f2898d8d8 Show escaped chars and function names. 2013-05-05 17:48:50 -07:00
evancz
7afe464ea8 Give curry and uncurry the correct implementations. They were swapped. 2013-05-05 17:48:20 -07:00
evancz
d114746957 Rename some of the Graphics libraries 2013-04-28 05:21:46 -07:00
evancz
d2846a2534 Fix the default size of text blocks. 2013-04-14 18:07:26 -07:00
evancz
986010fb6a Add plainText back. Fix some types. Fix a bug in mergeEither. 2013-04-10 00:52:53 -07:00
evancz
82b7929ccf Get the core libraries compiling again. Fix type signatures that have super-types, and fix bugs in a couple files. 2013-04-09 22:15:06 -07:00
evancz
22890292b8 Correct resizing problems with static elements. Previously, no property updates occurred. 2013-04-07 17:57:57 -07:00
evancz
d47614cdd1 Fix indentation 2013-04-07 08:40:27 -07:00
evancz
60e403ba82 Fix show for ADTs and get parens in the right places.
Make `Elm.init(Elm.MyModule)` work nicer when it takes over the whole `document` and needs to resize with the window.
2013-04-06 16:48:20 -07:00
evancz
613d9f5bc9 Fix bug in height and color 2013-04-05 09:52:18 -07:00
evancz
58640c553b Make sure that List only gets instantiated once. Requires that the list library is pure (never touches the elm variable) 2013-04-01 00:36:30 -07:00
evancz
475bc10876 Add implementation for checkboxes, passwords, and emails.
Ensure that direction of text selection is properly captured.
2013-04-01 00:35:18 -07:00
ngunn
aa7a67fc85 List.js change: Nil checks all use .ctor
added comment on Nil handling
direct Nil comparison with ctor equiv.  see comments here: https://github.com/evancz/Elm/pull/130#issuecomment-15471337
2013-03-27 21:02:27 +00:00
ngunn
864761b56e List.js: fix long-standing bug in append (2 chr$ change)
Present since initial version: 389a6f5309
2013-03-26 14:21:57 +00:00
evancz
9a40392e00 Fix bugs in container and an empty flow 2013-03-26 00:12:31 -07:00
evancz
dd10e820de Merge branch 'dev' of https://github.com/evancz/Elm into dev 2013-03-25 19:09:07 -07:00
ngunn
93afe4cea8 List.js minor bugfixes (followup)
put foldl back as was + add type sig. to indicate why
replace use of xs.ctor with direct comparison against Nil.  This means the ctor field is no longer required (which is nice).

move .ctor in stor to the actual variable (doh)
2013-03-25 20:25:29 +00:00
ngunn
441e90770b List.js minor bugfixes
freeze Nil (one-time overhead for marginal safety)
don't do this for Cons (huge performance overhead)

use Nil throughout instead of making our own (if we're having a singleton, we should be consistently using it)

missing A2, A3 in places.

foldl function applied args in wrong order, foldl :: (a -> b -> a) -> a -> [b] -> a
sort: missing .ctor selector
2013-03-25 17:36:30 +00:00
evancz
93428aa21d Fix bug in export of List.member 2013-03-25 03:00:05 -07:00
evancz
545be51678 Fix behavior of customButton to avoid flicker. 2013-03-24 22:23:30 -07:00
evancz
24c90b3673 Fix rendering bug with standard input buttons. 2013-03-24 19:48:27 -07:00
evancz
9962ded3e2 Remove logging. 2013-03-24 19:20:52 -07:00
evancz
b930ac2984 Add implementation for buttons, customButtons, and textFields.
Also fix updating bug in `flow`.
2013-03-24 19:19:30 -07:00
evancz
87a275abeb Fix bugs:
* types rendered "::" instead of ":"
* `Signal.count` was broken
* Prelude didn't have `show`
2013-03-24 19:17:21 -07:00
evancz
893e4691e6 Add groupTransform function.
Add public Matrix library. Clean up and debug matrix implementation.
2013-03-23 23:54:00 -07:00
evancz
0fbc244bbb Change names back to be longer but better. 2013-03-23 18:22:25 -07:00
evancz
79093ff4da Change the name of Keyboard to Keys. Change some function names and change type of charPressed to be the latest char pressed (default is '\0') 2013-03-23 16:52:58 -07:00
evancz
e80f19b423 Fix move to have y-axis properly oriented.
Fix rotations (`degrees` and `turns` functions were broken because I used `Math.pi` instead of `Math.PI`...)
2013-03-23 13:20:30 -07:00
evancz
86a0a904d8 Fix oval and ngon. (It's PI, not pi!) 2013-03-22 18:27:03 -07:00
evancz
4b8c9796a5 Add some files 2013-03-21 02:35:36 -07:00
evancz
131a2b6818 Get sprites working in collage. temporary fix for docs.json issue. Looks like git thinks we're in the past, so a bunch of changes that have already happened as well. 2013-03-21 02:29:23 -07:00
evancz
7dbb052b22 Load json representation of types with Template Haskell, so library files are the base truth of type information.
Make minor fixes in libraries, such as adding the Char labrary and fixing the types in the Dict library.
2013-03-16 22:24:18 -07:00
evancz
1822ebc160 Move the compiler down a directory, mostly. 2013-03-16 12:04:05 -07:00
evancz
3746c3217a Fill in some of Prelude.js 2013-03-16 02:02:16 -07:00
evancz
0050bfa845 Add a matrix library and switch collage over to use it. 2013-03-16 01:11:15 -07:00
evancz
152ef51a98 Fix croppedImage, show for tuples, and init for resizing initial dom node. 2013-03-13 00:52:14 -07:00
evancz
1552651eaf Make sure Mouse, Random, Window, and Time import their native implementation. 2013-03-13 00:00:02 -07:00
evancz
3540449119 Fix behavior of width and height to maintain the dimensions of images when resizing. Move htmlHeight into Utils so it can be used by both Element and Text. 2013-03-12 22:59:15 -07:00
evancz
609dc36596 Add height check and get rid of utils which was in the wrong place (i think) 2013-03-12 21:25:47 -07:00
evancz
a1b890adc3 Lots of tiny fixes to get the RTS working! 2013-03-12 00:48:11 -07:00
evancz
15c35c824b Clean out Input file! 2013-03-11 10:59:30 -07:00
evancz
34294a5f42 Strip out the unrelated things from Misc.js and rename it to Show.js, which is all it does now anyway! 2013-03-11 10:46:16 -07:00
evancz
db44b154b4 Combine Keyboard and Keyboard.Raw modules. 2013-03-11 10:38:52 -07:00
evancz
f903ff3fd8 Tweaks to the last of the library code. 2013-03-10 01:40:31 -08:00
evancz
b343564795 Finish tweaking the second half of .elm library files. 2013-03-10 01:07:17 -08:00
evancz
8a700e84d5 Update first half of .elm libraries 2013-03-10 00:54:37 -08:00
evancz
944a056122 Decide on convention that corresponding Native modules get exported automatically, no need to copy everything through in the Elm file.
Also extend `sort` to work on any comparable values.
2013-03-10 00:12:10 -08:00
evancz
851d2ff221 Create the Utils module which contains any utilities that can be created before all other modules. Switch to using Utils in existing modules.
Add the Error module for reporting the rare runtime errors that are possible.
2013-03-09 19:02:07 -08:00
evancz
6551ef14b2 Convert the Keyboard.Raw module and do minor fixes. 2013-03-09 00:39:58 -08:00
evancz
76e83e0e1b Convert Color and Text modules to new format. 2013-03-09 00:22:42 -08:00
evancz
0fe301aaba Convert the List and Misc modules. 2013-03-08 23:31:19 -08:00
evancz
8e6dbf8000 Convert the Date, JS, and Json modules. 2013-03-08 23:22:15 -08:00
evancz
86d02e22d5 convert WebSocket.js and Window.js to the new module format 2013-03-08 23:12:40 -08:00
evancz
ccf9917f2e Convert the random and touch modules to the new format. 2013-03-08 22:57:13 -08:00
evancz
f70fdaa300 Solidify format for modules. Convert the Time module. 2013-03-08 22:50:46 -08:00
evancz
9084db2b59 Switch module structure to permit on-demand initialization and multiple runtimes working simultaneously. 2013-03-08 20:17:01 -08:00
evancz
f589cf3899 Move all js files relevant to signals into the Native/Signal/ directory 2013-03-08 18:39:39 -08:00
evancz
24d508b8d2 Add the beginnings of a button module and mess with the definition of equality. 2013-03-07 23:17:34 -08:00
evancz
79a747cfc6 Rename core/ to libraries/ to make it more clear what is going on with the directory structure. 2013-03-06 09:28:53 -08:00