- 17 Sep, 2012 9 commits
-
-
Joel Martin authored
After a read completes it's possible more data is pending so issue an immediate read again to pick this up quickly.
-
Joel Martin authored
Instead of using document.write to load scripts, use createElement to create and append script tags. document.write is problematic in a lot of situation and in particular is not allowed in a Chrome extension/packaged app. Also, in webutil.js, instead of calling init_logging during parsing of include/webutil.js, rely on the caller to do this. The problem is that calling init_logging on parse tries to call Util logging functions and the new model of dynamic load may not having Util loaded by the time webutil is parsed.
-
Joel Martin authored
Move all the inline Javascript event handlers from vnc.html to include/ui.js except the load handler which is moved to include/start.js). This is on the path towards a Chrome extension/packaged app since inline Javascript is prohibited in that situation.
-
Joel Martin authored
Switch from using cookies to store setting to using localStorage (or chrome.storage.sync if available in extension/app mode) for the settings. Also refactor to make the initializing of the setting and and loading of the UI to be more asynchronous.
-
Joel Martin authored
Add routines to store/read settings in either localStorage or in chrome.storage.sync (which is synchronized between browsers for extensions/apps). Before using chrome.storage.sync the initSettings routine must to called setup the intermediate cache which speeds up access and allows multiple setting changes to be coallesced to avoid hitting storage change frequency limits/quotas.
-
Joel Martin authored
-
Joel Martin authored
- enable sending and receiving of raw array buffers in addition to strings. - add a read poll interval and set it to 15ms by default to detect and handle quickly when a message is pending. - also, detect a disconnected state and add call registration for disconnect events.
-
Joel Martin authored
Import upstream code from Chrome extension telnet demo: https://raw.github.com/GoogleChrome/chrome-app-samples/0ce28768087863c08aa04a2b9b27bd50796a77ec/telnet/tcp-client.js
-
Joel Martin authored
This change pulls websockify 6d9deda9c5. Most note worthy changes: - Pulls in web-socket-js 7677e7a954 which updates to IETF 6455 (from Hixie) - Binary support detection and use in include/websock.js - Add ssl and unix target support - Add multiple target support via config file/dir. - Idle timeout exit
-
- 21 Aug, 2012 1 commit
-
-
Joel Martin authored
-
- 16 Aug, 2012 1 commit
-
-
Joel Martin authored
Use a simpler method of enabling binary transfer over WebSockets. This still presents the user of websock.js with a plain javascript array for the receive queue data. However, if binary support is supported and requested then the transfer will be raw frames instead of base64 encoded. Lots of room for optimization here but for now correct is better than fast. Pull from websockify 17175afd7311c55abd8d
-
- 15 Aug, 2012 3 commits
-
-
Joel Martin authored
This reverts commit 4dd1bb1e.
-
Joel Martin authored
This reverts commit 14717eb4.
-
Joel Martin authored
-
- 14 Aug, 2012 1 commit
-
-
Joel Martin authored
Pull in version 376872d99. Several changes including: - binary/typed array support in websock.js - unix socket support - multiple target support via config file(s) - prefer IPv6 option
-
- 28 Jun, 2012 1 commit
-
-
Joel Martin authored
With tight we can't ever use FBU.rects being 0 as an indication of a full frame having been drawn.
-
- 26 Jun, 2012 1 commit
-
-
Joel Martin authored
-
- 24 Jun, 2012 1 commit
-
-
Joel Martin authored
Clarify in LICENSE.txt that the noVNC core library is the part that is LGPLv3 licensed. The HTML, CSS, images and fonts are separate from the core library and can be modified and distributed with the noVNC core but under their own license conditions. HTML and CSS: 2-Clause BSD Fonts: SIL OFL 1.1 Images: CC BY SA 3.0 In other words, you can modify the layout and appearance of of noVNC to integrate with an existing or new web site or application without having to publish the source for those modifications under the LGPLv3. However, use of and modification of the noVNC core library (i.e. the core Javascript that makes up noVNC) must still be according to the LGPLv3. Chris Gordon was the other contributor to the HTML, CSS, and images included with noVNC and gave permission for this license clarification on June 23, 2012.
-
- 23 Jun, 2012 3 commits
-
-
William Lightning authored
-
William Lightning authored
- 08 Jun, 2012 1 commit
-
-
Joel Martin authored
-
- 07 Jun, 2012 1 commit
-
-
William Lightning authored
-
- 17 May, 2012 3 commits
-
-
Joel Martin authored
This will keep copyrect rendering actions in order with tight and tightPNG rendering actions (otherwise you can get visual image corruption when they are mixed together). Warning: RAW, RRE and HEXTILE still use immediate render commands so there is still the risk of out-of-order rendering if RAW, RRE, and HEXTILE are mixed with tight and tightPNG. Copyrect will work with either because the renderQ_push function will render copyrects immediately if they are the only thing being pushed on the queue.
-
Joel Martin authored
The imgQ code in RFB should be a generic rendering queue system in Display. The reason for the render queue in the first place is that images loaded from raw data URI strings aren't immediately ready to display so we have to wait for them to complete 'loading'. However, when data URI images are mixed with other types of rendering actions then things can get out of order. This is the reason for the rendering queue. Currently this only keeps display actions for tight and tightPNG related actions in order (because they use a mix of fills, raw pixel data and data URI images).
-
Joel Martin authored
-
- 16 May, 2012 1 commit
-
-
Joel Martin authored
This related to https://github.com/kanaka/noVNC/issues/145 The real fix is to QEMU so that this doesn't happen which was submitted as a patch to the mailinglist right before this.
-
- 10 May, 2012 2 commits
-
-
Joel Martin authored
Fixes https://github.com/kanaka/noVNC/issues/163 When using an encoding with raw images (tight, tightPNG) we need to draw those image relative to the viewport so that clipping works when the viewport isn't at 0, 0.
-
Todd Freese authored
-
- 26 Apr, 2012 2 commits
-
-
Joel Martin authored
Unfortunately the values for those duplicate keys are not the same and I'm not sure which ones are more correct. However, for now, I've commented out the second occurrence. This data is generated from /usr/include/X11/keysymdef.h using the utils/u2x11 script.
-
Joel Martin authored
The close event will also fire so trying to fail the connection twice is unhelpful and hiding status information.
-
- 13 Apr, 2012 1 commit
-
-
Joel Martin authored
-
- 03 Apr, 2012 1 commit
-
-
Joel Martin authored
-
- 23 Mar, 2012 1 commit
-
-
- 14 Mar, 2012 2 commits
-
-
Joel Martin authored
May window managers have a keyboard shortcut that switch away from the current desktop (e.g. desktop switcher). Unfortunately, when this happens, the meta/control keys that are used with the shortcut will send a down event to the browser, but the up event will never be sent because the browser no longer has focus at the point when the up event happens. This can cause weird stuck key issues for VNC clients (not just noVNC). To get around this, we try and detect when the browser loses focus and release any keys that are on the keyDownList. As an aside, if you run into this situation (in noVNC or another VNC client), you can unstick the state by pressing and releasing the Ctrl, Shift, Alt, etc. Addresses: https://github.com/kanaka/noVNC/pull/135
-
Joel Martin authored
-
- 12 Mar, 2012 1 commit
-
-
Joel Martin authored
Mostly duplicate code so merge it and wrap with closures that pass in the isTightPNG parameter. Still detect and error if copy/filter when tightPNG.
-
- 11 Mar, 2012 3 commits
-
-
Joel Martin authored
-
Joel Martin authored
With last_rect, the rects count can be high until a last_rect pseudo-encoding is received which messes with the timing stats. So count up the number of pixels rendered and show timing after the pixel count reaches the width*height of the screen.
-
Joel Martin authored
-