- 04 Apr, 2014 1 commit
-
-
samhed authored
-
- 28 Mar, 2014 1 commit
-
-
samhed authored
-
- 26 Mar, 2014 4 commits
- 17 Mar, 2014 1 commit
-
-
samhed authored
-
- 14 Mar, 2014 2 commits
- 12 Mar, 2014 3 commits
-
-
Samuel authored
Fix altgr firefox
-
Jesper Dam authored
Apparently Firefox on Linux changed the value of navigator.appVersion, causing our OS detection (used to determine how to interpret different modifier keys) to fail. Use navigator.platform instead, which should be more stable. http://stackoverflow.com/a/19883965/33213
-
Jesper Dam authored
Previously we identified keys in keyboard events by the 'key' property if it was set, and 'keyCode' otherwise. This turns out to be problematic as Firefox no longer leaves 'key' undefined (so we fall back to using 'keyCode'), but instead sets 'key' to 'MozPrintableKey' for all printable keys. This meant that when (printable) keys are released, we can't match it against the corresponding keydown event, and instead just send a keyup event for the last keydown received. Now, if both 'key' and 'keyCode' are set, use the concatenation of both. Otherwise prefer 'keyCode', as that is at least unique for every key. This should let us release the right keys on keyup events.
-
- 11 Mar, 2014 1 commit
-
-
Dominic Luechinger authored
A facke connection to 'wss://localhost:17523' (randomly chosen) to detect the WebSocket binary support is not the best solution. First of all, check of prototype has the property 'binaryType'. If not, perform a dummy connection to 'wss://.' instead of 'wss://localhost:17523'. This patch was inspired by the discussion and implementation of Modernizr: https://github.com/Modernizr/Modernizr/issues/370 https://github.com/Modernizr/Modernizr/blob/master/feature-detects/websockets/binary.js
-
- 19 Feb, 2014 2 commits
-
-
Solly authored
WebSocket protocols are now configurable
-
Julien Fontanet authored
-
- 17 Feb, 2014 4 commits
-
-
Solly authored
Use wss when creating localhost connection to detect binary support (closes #242)
-
Malcolm Scott authored
-
Malcolm Scott authored
-
Malcolm Scott authored
-
- 10 Feb, 2014 1 commit
-
-
Solly authored
Add support for connecting to TightVNC servers
-
- 07 Feb, 2014 1 commit
-
-
Samuel authored
Remove the connection timeouts
-
- 06 Feb, 2014 1 commit
-
-
samhed authored
-
- 31 Jan, 2014 1 commit
-
-
Brian Rak authored
-
- 13 Jan, 2014 1 commit
-
-
Solly authored
Fixes #326: correct handling of shift key
-
- 06 Jan, 2014 1 commit
-
-
Jesper Dam authored
When shortcut modifiers (modifier keys such as CTRL, which do not participate in composing character input) are pressed, we try to suppress the keypress event, as browsers do not reliably generate it. This means that subsequent key events are decoded only based on the keydown event. Due to a type error (comparing a string to a number), shift was mistakenly treated as a shortcut modifier, preventing text input which relied on shift, such as _ and %, from being generated.
-
- 17 Dec, 2013 3 commits
-
-
Solly Ross authored
If the files passed to the '-t' option are all '.js' files (or the 'run all tests' option is used) and the '-i' option is not passed, all tests will be search for the string 'require local modules: '. Only the first instance of this string will be used. Following the colon should be a list of either local modules (i.e. files in the '../include/' folder relative to the test runner's directory, without the '.js' extension) or paths to other Javascript files. The list of modules and/or files should be comma-separated. These files will then be included in the generated HTML file for the appropriate tests as if the '-i' option had been used.
-
Solly Ross authored
Now, if the '-t' option is passed but no tests are listed, all tests in the same directory as the launcher will be run. A file is considered a test if it matches the RegEx /^test\.(\w|\.|-)+\.js$/ (for those who cannot read PCRE, that's roughly 'test.*.js').
-
Solly Ross authored
The test runner now will not break when Mocha skips tests, and will properly report them. Additionally, several JSHint warnings were fixed, and a `--debug` option was added to see output from the provider.
-
- 05 Dec, 2013 8 commits
-
-
jalf authored
Keyboard Handling [8/8]: Introduce substituteCodepoint() to replace code points which don't have a keysym with ones that do For now, the only code points this is done for are {s, S, t, T} with comma below (used in Romanian), which are replaced by {s, S, t, T} Cedilla.
-
jalf authored
Regenerate the keysymdef table without -d. This eliminates keysym names, which are only used for debugging, and shaves ~40kb off the file size
-
jalf authored
-
jalf authored
This allows the keyboard handler to check modifier key state much more frequently Since some browsers never send keyup events for modifier keys, we have to synchronize modifier state whenever we get a mouse or keyboard event
-
jalf authored
Plug new keyboard handling into input.js (which breaks everything else), and update input.html to work with this
-
jalf authored
Relies on the libraries chai and mocha (available via npm from Node.JS). Add anything installed via npm to the .gitignore file.
-
jalf authored
Add keyboard.js, containing the actual keyboard event parsing code.
-
jalf authored
Add a node.js-based tool (utils/parse.js) to read keysymdef.h and produce a JavaScript file mapping Unicode code points to keysyms. Also add the generated table (include/keysymdef.js).
-
- 04 Dec, 2013 3 commits
-
-
Solly Ross authored
This commit introduces two flags, '-g' and '-o' to the `run_from_console.js`. Both flags do not run the tests. Instead, deal with the autogenerated HTML. The former outputs the paths to the autogenerated HTML temp files, and then pauses the program until Ctrl-C is pressed (or SIGINT is sent). The latter outputs the generated HTML for each files to STDIN with the names of the tests to which they belong.
-
Solly authored
Support Running Mocha Tests from the Console
-
Solly Ross authored
Previously, the only way to run the Mocha tests (in 'test.*.js') is to write a web page to wrap them (or use a provided one), and then load that file in a browser. This commit introduces a series of files to allow you to run the Mocha tests from the command line instead. Normally, Mocha tests can be run from the command line anyway. However, since this project was designed to work in web browsers and not node, the code doesn't contain the proper `require` calls, nor does it contain the proper `module.exports` declarations. Additionally, some of the code is dependent on having a browser environment. To overcome these issues, a headless browser environment is used. The command file introduced in the commit, `run_from_console.js`, can use one of two environments: ZombieJS, a pure-javascript headless browser simulator, or SpookyJS/CasperJS/PhantomJS, an actually WebKit-based environment. Because the environment-dependent code is separated out in to different files ('run_from_console.zombie.js' and 'run_from_console.casper.js'), the program can be safely used if only one of the supported environments is installed. Additionally, the command will automatically generate HTML and inject the required tests if there is no pre-existing HTML file (although you can still use pre-existing HTML files if you want to). The required NPM modules for the base program are: - commander - ansi - mocha (must be installed locally for the HTML files to use) - chai (must be installed locally for the HTML files to use) - temp For Zombie, you need: - zombie - q For Casper, you need: - casperjs (must be installed locally in order to work properly) - phantomjs - phantom - spooky The command itself can be invoked as $ node run_from_console.js -t html_files or $ node run_from_console.js -t js_test_files -i js_required_files In both cases, the 'files' options should be a comma-separated list of files. The first case runs pre-existing HTML files. The second case generates HTML files to run the specified Mocha tests, and injects the requirements specified as well. Additionally, there are extra arguments that apply to both forms: '-a' can be used to print all test results, not just the failures, '-c' may be used to force color to be enabled (when outputting to a pipe, such as when `less -R` is in use), and '-e' is used to set the environment. Use the '-h' or '--help' options to see a detailed description of all options, and their long-form versions.
-
- 29 Oct, 2013 1 commit
-
-
Joel Martin authored
-