- 06 Aug, 2015 8 commits
-
-
Solly Ross authored
This commit converts the send queue to use typed arrays, and converts message creation functions in 'rfb.js' to create messages directly into the socket's send queue. This commit also removes the separate mouse array, which is no longer needed.
-
Solly Ross authored
Creating lots of small objects frequently can drastically decrease performance. This commit introduces three fixes which avoid this: - Use a preallocated palette and indexed-to-rgb destination Typed Array (the destination typed array is currently allocated at `4 * width * height`). - Inline `getTightCLength`, which returned a two-item array. - Pass RGBX data directly in a Typed Array to the Display, which avoids an extra loop, and only creates a new Typed Array View, instead of a whole new ArrayBuffer.
-
Solly Ross authored
**This commit removes Base64 (and Flash) support** This commit converts websock.js to used Typed Arrays for the receive queue (and tweaks rfb.js to ensure that it continues to function, since only Firefox implements `%TypedArray%.prototype.slice`). Base64 support was removed to simplify code paths, and pave the way for using Typed Arrays for the send queue as well. This provides two advantages: first, we allocate a buffer ahead of time, meaning the browser doesn't have to do any work dynamically increasing the receive queue size. Secondly, we are now able to pass around Typed Array Views (e.g. `Uint8Array`), which are lightweight, and don't involve copying. The downside is that we initially allocate more memory -- we currently start out with 4 MiB, and then automatically double when it looks like the amount unused is getting to small. The commit also explicitly adds a check to the compacting logic that avoids calling the copy functions if `_rQlen === _rQi`.
-
Solly Ross authored
This commit removes a nested loop in indexedToRGB, converting it into a plain loop without multiplication.
-
Solly Ross authored
This commit introduces an alternate implementation of the zlib decompressor based on Pako (https://github.com/nodeca/pako).
-
Solly Ross authored
This fixes a couple of JSHint errors in RFB.js caused by using `==` instead of `===`.
-
Solly Ross authored
This commit fixes vnc_playback.html and playback.js so that they work with the current version of noVNC.
-
Solly Ross authored
This commit switches the Travis tests over to Travis's new container-based infrastructure. It also tells Travis to cache the node_modules directory for faster setup.
-
- 01 Jul, 2015 1 commit
-
-
Samuel authored
Add option to toggle fullscreen mode
-
- 25 Jun, 2015 7 commits
-
-
samhed authored
keyboard input doesn't work in fullscreen. * Force clipping mode in Internet Explorer while in fullscreen since scrollbars doesn't work in fullscreen.
-
samhed authored
-
samhed authored
-
samhed authored
-
samhed authored
which kept track on if it was open or not (it automatically closes after 1.5 seconds anyway).
-
samhed authored
moved it to where the other clipping functions are.
-
samhed authored
-
- 24 Jun, 2015 1 commit
-
-
samhed authored
* Fixes #502 so that the viewport drag functionality can't get stuck
-
- 16 Jun, 2015 1 commit
-
-
samhed authored
"jumping around". Enable/disable the button instead of show/hide on these devices.
-
- 12 Jun, 2015 2 commits
- 19 May, 2015 2 commits
-
-
samhed authored
* This fixes backspace when using the on-screen keyboard on Android
- 05 May, 2015 1 commit
-
-
Samuel authored
Removed old no longer existing vnc.js and added playback.js
-
- 04 May, 2015 2 commits
-
-
Samuel authored
Make noVNC compatible with Content Security Policies
-
Fabian Zaremba authored
-
- 29 Apr, 2015 1 commit
-
-
samhed authored
* Disable local cursor when the browser doesn't support data uri
-
- 07 Apr, 2015 1 commit
-
-
Solly authored
slip in PATH for 'npm test' as not everyone has karma
-
- 27 Mar, 2015 2 commits
- 26 Mar, 2015 3 commits
-
-
Solly Ross authored
Previously, if an error was thrown from the Display constructor in the RFB constructor, we would attempt to use `RFB#updateState` to handle this. However, `RFB#updateState` attempts to close the WebSocket connection, which doesn't exist at this point. In the constructor, it's probably just better to raise an exception instead (making sure to clean up anything relevant). Fixes #460
-
Solly Ross authored
In e543525f, we switched to creating a new RFB object on disconnect. This caused issues, however, since any errors were only displayed briefly before the new "loaded" text was displayed instead. Now, we create the RFB object on connect. This essentially removes the usefulness of the "loaded" state, but prevents the aforementioned problem. To facilitate this, the code which does detection of cursor URI support was moved from this Display constructor (which now calls the new function) into its own function, `Util.browserSupportsCursorURIs()`. Fixes #467
-
Solly Ross authored
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.
-
- 11 Mar, 2015 1 commit
-
-
samhed authored
-
- 10 Mar, 2015 1 commit
-
-
Solly authored
Fix resize in Firefox on Android
-
- 09 Mar, 2015 1 commit
-
-
samhed authored
* Renamed and reworked fbuClip to clippingDisplay * Added tests for clippingDisplay * Use the a noVNC_container which covers the entire page to get the full size (Fixes #463) * Added maxWidth and maxHeight to the canvas which can limit the viewport size * Only show either the canvas or the logo, hide one when the other is shown * Always center the canvas (previously it was only centered when not clipping) * Removed iOS specific "position-fixed" fixes and start calling setBarPosition on every resize * Removed the noVNC_screen_pad
-
- 05 Mar, 2015 3 commits
-
-
samhed authored
* Added better error handling in ExtendedDesktopSize * Added helper function to share code with DesktopSize * Update test.rfb.js to only check for error handling if we were the ones requesting the resize
-
samhed authored
Make the touch-keyboard code more robust through verifying that global variables are set before use.
-
Samuel authored
Introduce Local Autoscaling
-
- 03 Mar, 2015 1 commit
-
-
Solly Ross authored
This commit adds two new addition scaling options. Both options do local scaling. The first "Local Scaling", does both upscaling and downscaling. The second option, "Local Downscaling", only downscales. This is based on work by @mightypenguin (with an additional bug reported by @glazik12).
-
- 27 Feb, 2015 1 commit
-
-
Solly Ross authored
This commit updates the UI to allow for different scaling modes. The "resize" option was changed to be a dropdown with the following options: "None" (nothing), "Remote Resizing" (SetDesktopSize).
-