| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|\
| |
| | |
Loads keysym.js
|
|/
|
| |
Without it, `XK_ISO_Level3_Shift` (at least) is undefined.
|
|
|
|
|
|
|
| |
Bonus 3 bug fixes:
* Meta is 0xFFE7 not 0xFE07
* Super_L is 0xFFEB not 0xFFEC
* Super_R is 0xFFEC not 0xFFED
|
| |
|
|
|
|
|
|
|
| |
The HEXTILE test which tested for a background tile followed
by an empty tile was only wide enough to actually test for one
tile, thus not actually testing the functionality. It now actually
uses two tiles, thus actually testing the functionality.
|
|\
| |
| | |
Fix for typo from a recent pull
|
|/
|
|
| |
There is a minor typo in the recent pull Simple fix.
|
|\
| |
| |
| | |
Closes #412
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Previously, if a HEXTILE tiles was received with a subencoding
of 0x00, it would draw a rectangle using data from the render
queue, which would result in random colored blocks when using
the HEXTILE encoding. This is the result of a miscopy during
the refactoring. It now has the correct functionality according
to the RFB protocol specification, which is to draw a rectangle
with the last set background color.
Closes #411
|
|
|
|
|
|
|
|
|
|
| |
Previously, we were using the karma-sinon-chai package to
provide sinon-chai to karma. This used an older version of
sinon-chai, and looks to be no longer maintained (it's been
a month since sinon-chai was updated). A new package,
karma-sinon-chai-latest, is now used. This package uses the
latest version of sinon-chai and sinon, just like karma-chai
uses the latest version of chai.
|
|
|
|
|
|
| |
Commit 795fca23dc6cf124b2e6969ee42bd8e7c836d605 changed the default
size from 640 to 240. This broke a couple tests which depended on
the default size being 640. Those tests have now been fixed.
|
| |
|
| |
|
|\
| |
| | |
Added in guidelines for contributing to noVNC
|
|/
|
|
|
|
|
| |
In CONTRIBUTING.md, you can now find a set of guidelines for
contributing to the noVNC project. They detail coding style
information, requirements for pull requests, and how to run
the unit tests.
|
|
|
|
|
|
|
| |
This fixes an issue where, when using true color, the changeCursor
function would not actually write the cursor to the target array.
Fixes #407
|
|\
| |
| | |
Fix subprotocols
|
|/
|
| |
Broken by b1dee9478815b22bf5fee3ee9e44321d4bb46c91
|
|
|
|
|
|
|
|
|
|
|
|
| |
The latest version of Node.js has a bug that
affects the Karma test runner. A patch has been
merged to Karma, but has not landed in a version
yet. Until a new version of Karma is released,
we should keep node at 0.11.13.
See karma-runner/karma#1182
(cherry picked from commit 9af2346a0cead634f3af5f390770ea65929c1f4a)
|
|\
| |
| | |
Make Utils.js use Object.define to modify Array
|
|/
|
|
|
|
|
|
|
| |
Previously, we were modifying Array's prototype using
simple assignment. This can mess with enumeration/iteration.
Thus, we now use Object.defineProperty with enumerable set to
false.
See #366
|
|
|
|
|
|
| |
The readme was using the URL for the 'refactor/cleanup'
branch, which doesn't exist anymore. It now uses
the badge for the master branch as it should.
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds support for using relative paths
with the '-r' or '--relative' methods. This can
be useful if you want to output HTML (with the
'--output-html' option) and use it in a webpage.
Additionally, the '-o' was removed from the documentation
of '--output-html', since it hasn't worked for that in a
while ('-o' means open in browser instead).
|
|
|
|
|
|
|
|
|
|
|
| |
There was a race condition in Display#clear on IE10
because we resize and then clear that causes the canvas
to not actually end up cleared. Clearing the current
viewport first solves the issue. It doesn't appear to
affect other platforms, so it's inside a engine check
(`Util.Engine.trident === 6`). Once we stop supporting
IE10, we should just remove this, because it's not the best
to have Engine-specific code.
|
|
|
|
|
|
|
| |
Because we use the XOR (`^`) operator, the button mask must be
set before a MouseUp event happens, otherwise we'll send a pointer
event like it was a MouseDown event. The button mask was not set
in one of the tests, so the test was failing.
|
|
|
|
|
|
|
|
| |
There was a bug in cursor URI support detection due to the way
set_defaults now works -- the code was checking for `null`, whereas
when not set, options default to `undefined` unless otherwise
specified. The code now checks for either `null` or `undefined`.
Tests have been added to ensure that this works properly.
|
|
|
|
|
|
|
|
| |
Previously, Utils.set_defaults was using `if(conf[keys[i]])`
to check for the presence of a configuration key. This would
fail if `conf[keys[i]]` happened to be false. Instead, we now
use `if(keys[i] in conf)`, which simply checks for the presence
of the key in the conf object.
|
|
|
|
|
|
|
|
|
|
| |
There was a typo in one of the instances of the _buttonMask field
(it was written as _buttonMaks), causing MouseUp to never be sent.
This has been rectified, and the unit tests for the mouse handler
have been changed to check for explicitly sending mouseup and
mousedown.
Fixes #393
|
|
|
|
|
|
| |
Travis is failing because Sauce can't find the appropriate tunnelid.
This should fix that but setting the tunnel id to be the Travis
job number.
|
|\
| |
| | |
Fix invalid updateState property on RFB preventing noVNC to load
|
| |
| |
| |
| |
| | |
It was changed to `onUpdateState` in
b1dee9478815b22bf5fee3ee9e44321d4bb46c91.
|
| |
| |
| |
| |
| | |
Util.set_defaults should accommodate with missing properties to prevent
'Uncaught TypeError: Cannot read property 'call' of undefined' error.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When run via karma, all the tests are loaded into the same page.
This was causing a collision in the 'displayed' assertion dealing
with using viewportLoc.
The assertions are now in their own file, pulled in by tests that
need them. Additionally, several tests which only set fb_width
and fb_height were correct to set viewportLoc as well.
Closes #392
Also-Authored-By: Martin André (github: mandre)
|
|/
|
|
|
|
| |
This will enable Travis CI to run tests on Sauce Labs
(thanks to OpenSauce, their free program for Open
Source Software)
|
|\
| |
| | |
Cleanup and test all the things (plus ditching Crockford)!
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This adds support for Travis CI and SauceLabs
testing. Testing on SauceLabs in done via
the Karma test runner. Note that encrypted
Sauce username and access key values need
to be inserted into .travis.yml as global
environment variables. Additionally, the
local test runner (which is still useful
for debugging tests and code) was updated
to reflect that the 'node_modules' folder
now gets placed in the root directory.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: ui.js
Tests Added: False
Changes:
- Fix JSHint errors
- add some curly braces to improve clarity
- move variable declarations to relevant locations instead of at the top
of methods
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: rfb.js (also websock.js)
Tests Added: True
Changes:
- De-Crockford-ified rfb.js
- Added methods to websock.js to skip bytes in the receive queue
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: display.js
Tests Added: True (preliminary)
Changes:
- De-crockford-ified the file
NOTE: the tests included for display.js cover basic functionality, but
are by no means nearly as comprehensive as the ones presented for
rfb.js.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: websock.js
Tests Added: True
Changes:
- Cleaned up JSHint errors
- Converted to normal JS constructor pattern with "private" fields and
methods now simply being prepended by underscores
- Added a "bind" polyfill for use in PhantomJS 1.x in util.js
- Added FakeWebSocket to fill in for actual WebSocket objects when
testing
- Made exception handler actually log exception name and message,
to console, in addition to stack trace
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: webutil.js
Tests Added: False
Changes:
- Fixed JSHint Errors (global "use strict", spaces)
- added some newline characters when appropriate for readability
- moved variable declarations to the places they were actually used
for readability
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: keyboard.js
Tests Added: False (already present)
Changes:
- Fixed JSHint Errors
- Moved functions outside loops
- Added proper include directives to tests
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: input.js
Tests Added: False (already present partially -- see below)
Changes:
- Fixed JSHint Errors
- Converted to normal non-Crockford constructors
NOTE: while there are tests for the actual key-detecting functionality,
the tests do not cover the actual Keyboard and Mouse objects
themselves.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
File: util.js
Tests Added: True (partial -- for logging and array push methods)
Changes:
- Fixed JSHint Errors (indentation, semicolons, global "use strict")
- Made browser detection methods more readable
- added some newline characters when appropriate for readability
- throw Errors not strings!
- Removed conf_defaults, and added make_properties and set_defaults
instead (see below)
The removal of conf_defaults and switch to make_properties and
set_defaults is to facilitate the switch over to normal Javascript
constructors instead of Crockford-style constructors. Now, methods
are added to the objects prototype (and thus make properties is called
outside the constructor).
|
| |
| |
| |
| |
| |
| |
| |
| | |
File: des.js
Tests Added: False
Changes:
- Fixed JSHint Errors
- Improved whitespace around operators
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is the first commit in a series of commits
which improve the readability of some of the code
and add tests.
File: base64.js
Tests Added: True
Changes:
- Improved indentation
- Fixed JSHint errors
- Moved loop variables to be declared in the loop for better readability
(N.B. Javascript does not have block scoping, so the variables are
still technically available outside the loop -- it just makes the code
clearer to place them inside the loop, since they are only used there)
|
|/
|
|
|
| |
Previously, tight auth was supported without any support for tunnels,
even the no-op tunnel. No, the no-op tunnel type is supported.
|
|
|
|
|
|
|
| |
Previously, if you did not specify a tests file,
you had to be in the 'tests' directory for the
"run all tests" functionality to work. Now it
will work in any directory.
|
| |
|