| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
So that UI can reflect if it is currently possible to drag the viewport
or not.
|
|
|
|
| |
So it is easier to find things as the API grows.
|
| |
|
| |
|
|
|
|
|
| |
The new RSA AES security types have a mechanism for authenticating the
server that needs to be properly specified.
|
|
|
|
|
|
|
|
| |
Chrome scrolls the view to show as much as possible of the canvas when
we call focus(), which is likely not the desired behaviour.
This also exposes the ability to pass on future options when focusing
the RFB object manually.
|
|
|
|
| |
Co-Authored-By: Adam Young <ayoung@redhat.com>
|
|
|
|
|
|
| |
This reverts commit ef27628c6dff6120b0ed0d4728cc6e8a32b7be53. By
bypassing setTimeout() it creates other race conditions so this is not
the proper fix for the issue.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is an error that presents itself with RTCDataChannel's, I suspect this could not
happen with a pre-existing WebSocket.
If the remote connection creates a data channel then the local (VNC) side gets a channel
created callback. It may also be the case that in that very same tick the socket is also
opened and buffered data received. This meant that (in my tests) about 1/3 of the time
noVNC would fail to respond to the initial message from the server because it was received
and subsequently not handled during that initial tick.
Also made the documentation reflect this new behaviour and document the existing behaviour.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This work is originally by Ryan Castner <castner.rr@gmail.com> and
submitted as a PR here https://github.com/novnc/noVNC/pull/1362
Architecturally it is much the same except it doesn't rename a lot
of variables to make this more reviewable. It also avoids unrelated
changes such as replacing .onclose with an event listener, which
caused numerous test failures.
It also adds in ppoffice's fix to initialise the buffers.
Like the original author I don't have enough time available to
refactor this project to the new style event listeners.
Review cleanup for RTCDataChannel support (see below)
* More descriptive error when url or channel not set.
* Moved websocket property check to WebSock.
This had unintended consequences in the tests that required some
fixup. Mostly due to some tests not always passing FakeWebsocket.
FakeWebsocket also needs to set the listeners to null to be compatible
with what is in thw browser and expected by the property check code.
The property check code now also takes into account class prototypes
for test compatibility.
* Removed unreachable code.
* Reverted comment.
* Cleanup raw channel reference in rfb on websock close.
* Use readyState to check whether a socket is open rather than assuming.
* Updated RFB constructor documentation
Removed an unused boolean passed to attach
|
|
|
|
|
| |
We now only support conversion to CommonJS, in order to support Node.js
older than version 15.
|
|
|
|
|
| |
This is no longer possible as we now require browser support for
modules.
|
|\ |
|
| |
| |
| |
| |
| | |
Keep everything simpler by always blitting in the same pixel format.
It's up to the decoders to convert if they need to.
|
| |
| |
| |
| |
| | |
It is only used there so no need for it to be in the general
Display class.
|
| |
| |
| |
| |
| | |
We now support full Unicode, provided the server also supports the
proper extension.
|
| |
| |
| |
| |
| | |
Move the last remaining bits to the RFB class to keep things simple, as
the Mouse class no longer provides any real value.
|
|/
|
|
|
|
|
|
| |
Add several single and multitouch gestures to simulate various mouse
actions that would otherwise be impossible to perform.
This replaces the old system where you could select which mouse button
a single touch would generate.
|
|
|
|
| |
Fixes github issue #1382.
|
| |
|
| |
|
|
|
|
| |
encoding on the fly
|
|
|
|
|
| |
They are expected to be a certain size, so verify this so no server
tries to do something broken.
|
|
|
|
|
| |
It served no meaningful purpose and it had bugs. So let's remove it
rather than try to fix it.
|
| |
|
|
|
|
|
|
| |
It is not relevant for the connection stage so it should not have
been a constructor argument to begin with. Ship with a warning for
a release before we remove it.
|
|
|
|
| |
This is not only a property, it's also a parameter to the constructor.
|
|
|
|
| |
Using the 'binary' protocol by default is very non-standard.
|
|\
| |
| | |
Add support in websocket sub-protocols
|
| | |
|
|/ |
|
| |
|
|
|
|
| |
Disabled by default.
|
| |
|
|\ |
|
| |
| |
| |
| |
| | |
Make cursor handling more generic in preparation for generic handling
of corner cases.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Instructions has been moved to the wiki:
https://github.com/novnc/noVNC/wiki/Development:-Making-a-release
|
|/ |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| | |
The first page now points to the more complete licensing document,
and some no longer used licenses have been removed.
|
|/
|
|
|
| |
Makes the API simpler and makes it easier for other frontends to
get this functionality.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The API allowed strings to be passed from the RFB module to the
application using the disconnect reason. This caused problems since
the application didn't have control over translations for these
strings.
Most of the information being passed using this string was very
technical and not helpful to the end user. One exception to this was
the security result information regarding for example authentication
failures. The protocol allows the VNC server to pass a string
directly to the user in the security result.
So the disconnect reason is replaced by a boolean saying if the
disconnection was clean or not. And for the security result information
from the server, a new event has been added.
|
|
|
|
|
|
|
| |
Instead of exposing all the internal connection states, the RFB module
will now only send events on connect and on disconnect. This makes it
simpler for the application and gets rid of the double events that were
being sent on disconnect (previously updatestate and disconnect).
|
|
|
|
|
| |
This interface was a band aid for poor design. The two cases where it
was used was replaced by logging.
|
|\ |
|
| | |
|
| | |
|