| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Add the `--record` flag to launch.js, for easy recording when testing.
|
|
|
|
| |
and any other function that is passed around and it's not a top level function
|
|
|
|
|
|
| |
Rather than trying to pick a utility, we should be able to just use bash to check if a port is available or not.
We can probably assume bash is available due to the shebang declaring it.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Several of the major browsers now natively support modules, so we
only need the converted modules to handle older browsers. Make sure
it's only used when necessary.
|
| |
|
| |
|
|
|
|
|
| |
We had some race conditions between the callbacks that could cause
failures. Order everything properly using promises.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A previous commit started (quasi-correctly) rewriting vendor import
paths on built files. The gist of it was correct, but it incorrectly
rewrote paths in vendor itself.
The babel plugin in use operated on canonical absolute paths. This mean
that it saw no difference between the import
`../vendor/pako/lib/utils/foo` and `../utils/foo`, where the later was
actually in the `vendor/pako/lib/bar` directory. This rewrote imports
in files in the vendor directory itself. However, since those files
were *already* in the correct relative location, the new import was
incorrect by a degree of `..`.
Now, we only rewrite vendor paths on things in the `core` directory.
|
|
|
|
|
|
|
| |
This adds an option to `utils/use_require.js` which cleans the lib
and build directories before regenerating them. This will enable us
to make sure we always have a fresh copy of the lib dir before
publishing.
|
|
|
|
|
| |
We move the files in core/ up one directory level so we need to adjust
the imports from vendor libraries.
|
|
|
|
|
| |
We prepared an options object for babel, but didn't include it properly
in the final call to babel.
|
|\ |
|
| |
| |
| |
| |
| | |
Some Unicode to Keysym mappings can be computed and can therefore
be left out of the huge lookup table.
|
| | |
|
| |
| |
| |
| |
| | |
They were incomplete and turned off in most cases so they served
little use besides adding complexity.
|
| |
| |
| |
| |
| | |
The generated keysymdef.js was recently converted to ES modules,
but the generating script was overlooked.
|
|/ |
|
|
|
|
|
|
| |
This commit introduces a polyfill to add support for Promises in IE11.
This means IE11 can be tested without first running
`utils/as_require.js`.
|
|
|
|
|
|
|
|
| |
This commit moves the global error handler into a separate file,
so that it can catch module loading errors.
This also adds support for properly displaying error messages with
newlines in them (since the module loader may throw those)
|
|
|
|
|
|
|
|
|
|
| |
This commit makes the ES6 module loader polyfill use Web Workers,
so that Babel doesn't block the browser from animating. It also
uses localStorage to cache the compiled results, only recompiling
on source changes, so it makes loading faster while developing noVNC.
This includes a vendored copy of the ES6 module loader, modified as
described above.
|
|
|
|
|
|
|
| |
This changes around `utils/use_require.js` to be able to generate any
of AMD (RequireJS), CommonJS, SystemJS, or UMD modules. The three
former also include support for translating `vnc.html`, producing a full
"app" version of noVNC.
|
|
|
|
|
|
| |
Not all Unicode codepoints have an equivalent named Keysym. But
there is a range in the Keysym namespace that can be used to map
any codepoint to.
|
|\
| |
| | |
Added option for --ssl-only noVNC session to launch.sh
|
| | |
|
| |
| |
| |
| | |
to Websockify, allowing a user to specify that only ssl-secured connections will be allowed.
|
| |
| |
| |
| |
| |
| | |
This commit moves all the input-related files from `core/`
to `core/input/`, and renames a couple as relevant
(input.js --> input/devices.js, keyboard.js --> input/util.js).
|
| |
| |
| |
| |
| |
| | |
This commit restructures noVNC, splitting it into the core directory
and the app directory, with the former containing core noVNC parts,
and the latter containing parts specific to the application.
|
| | |
|
| |
| |
| |
| | |
Just a correction of port in use test algoritm.
This way we will not have problems when using port X and having some other service using zyX or any *X port
|
|/
|
|
|
|
| |
Also, note in the top-level license file that the default noVNC
license for files that are not explicitly marked or mentioned in
the LICENSE.txt file are by default MPL-2.0 licensed.
|
|
|
|
|
|
|
|
|
| |
This commit updates vnc_perf.html so that it works with the current
version of noVNC. It also introduces a utility to convert noVNC session
recordings recorded in base64-mode to binary-mode recordings, since noVNC
no longer supports base64-mode.
Fixes #479.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we used a fixed chunkSize of 100KiB for Pako's output
buffer. Using a hardcoded size caused issues, since Pako would assume
we wanted to use multiple chunks, and we didn't deal with this. Now,
`Inflator#inflate()` takes a new `expected` argument, which indicates
the expected output size. If this is bigger than the current chunkSize,
Inflator allocates a new output buffer that's big enough to hold the
output.
Fixes #531
|
|
|
|
|
| |
This commit introduces an alternate implementation of the zlib
decompressor based on Pako (https://github.com/nodeca/pako).
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, in launch.sh, `$HERE` was the directory of `$0`.
However, if `$0` was actually a symlink, `$HERE` would be
wherever the symlink was, which could cause issues (for
example, the script wouldn't be able to local `$WEB` or
`$WEBSOCKIFY` properly).
Now, `$HERE` looks at whatever `$0` points at instead.
Closes #447.
|
|
|
|
|
|
|
|
|
| |
Issue #449 pointed out that there were some files that were
missed in 6f5148648bd0e0ffa7ad00474c230f5f1ff4e39f. This
fixes that.
Closes #449
Closes #450
|
|
|
|
|
|
|
| |
When `utils/launch.sh` clones websockify, it can be cloned
into the incorrect directory, depending on how `utils/launch.sh`
is run. This commit ensures that websockify is always cloned into
`utils/websockify`.
|
|
|
|
|
|
| |
Somehow, `utils/websockify` itself manage to sneak back in to
6f5148648bd0e0ffa7ad00474c230f5f1ff4e39f. This actually removes
it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit removes local copies of websockify.
Instead `utils/launch.sh` performs the following logic:
If `utils/websockify` exists, use `utils/websockify/run` (if the latter
does not exist, or is not executable, fail, since this is probably a
mistake).
Otherwise, check to see if websockify is installed somewhere (try
`which websockify`). If it is, use that. Otherwise, clone
websockify from github, and tell git to ignore that directory.
Packaged versions of noVNC should simply list websockify as a
requirement. The debian packaging has been updated to reflect
this.
Closes #433
|
|
|
|
| |
Pull 90b519edf0c1857d
|
|
|
|
|
|
|
|
|
| |
mappings table
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).
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pull in websockify 4725aa7.
- Update to c0855c6cae of web-socket-js
- Update both the submodule and the swf build. The submodule now
contains the unobfuscated source for swfobject.js which should make
websockify more DFSG compliant.
- Remove Hixie support. iOS 6 now includes HyBi support which means
there is no remaining platform that needs Hixie.
|
|
|
|
| |
Also, update nova-novncproxy to import websockify instead of wsproxy.
|
|
|
|
|
| |
Upstram OpenStack Nova package has moved the config engine into a
separate package. Mirror that change in the novnc script.
|
|
|
|
|
| |
currently CONF was attempted of being imported from nova config.py
rather than openstack/common/cfg.py. this commit fixes that.
|
|
|
|
|
|
|
|
|
| |
Pull c33f0b52e7 from websockify.
- Fix for python2.4 with URL parsing.
- Set binaryType earlier in Opera 12.10 to avoid receiving a blob.
- Re-order client and target processing so that pending client data
has an opportunity to be sent when the target closes.
|
|
|
|
|
| |
Nova recently removed parse_args from flags.py. This updates the
nova proxy to properly use CONF instead of FLAGS.
|