Commit Graph

1082 Commits

Author SHA1 Message Date
zarmhast
4b20f2364c Fix for touchscreen devices that also have a mouse. 2016-10-20 00:44:25 +02:00
Samuel Mannehed
5826ab6f6a Merge pull request #650 from kanaka/touchdetect
New way of detecting touch
2016-10-20 00:18:32 +02:00
Samuel Mannehed
d6cb04aa6b Disable forced touch gestures on IE and Edge
Fixes issue discussed in #613
2016-10-20 00:13:29 +02:00
Samuel Mannehed
8473635a09 Fix typo that caused clipping by default on IE
Typo from commit a6357e8276
2016-10-19 15:33:06 +02:00
Samuel Mannehed
f75e4d3caa Add safety check in code for moving the handle
An element that has 'display: none' has a height of zero, and the logic
for the handle assumed that this was never the case. This could cause
the handle to end up at the wrong coordinates.
2016-10-18 13:32:00 +02:00
Samuel Mannehed
59cd99bc38 Move the handle properly when page is scrolled
The coordinates used to calculate the position for the toolbar handle
wrongly took page-offset into account. Util.getPosition was being used
for this. Thus, when page was scrolled, this caused the handle to be
offset when it was being moved. Use getBoundingClientRect instead.
2016-10-18 13:26:17 +02:00
samhed
bea2b3fdfc New way of detecting touch
Moves detection to Util and fixes so that touch is properly detected on
MS Surface and touch emulation in Chrome.
2016-10-14 02:41:06 +02:00
Samuel Mannehed
da346c3b21 Remove redeclaration of a variable 2016-10-13 14:57:37 +02:00
Samuel Mannehed
00df30999b Merge pull request #651 from kanaka/separatestates
Separate visual state from protocol state
2016-10-01 10:20:01 +02:00
Solly Ross
ca99791caa Merge pull request #665 from CendioOssman/bell
Support RFB bell
2016-09-30 19:37:09 -04:00
Samuel Mannehed
4102b71c33 Keep the connect panel when missing host or port 2016-10-01 01:34:31 +02:00
Samuel Mannehed
74a4a2b468 Do not timeout error messages 2016-10-01 01:34:31 +02:00
Samuel Mannehed
7520ba52d8 Don't close the control bar when disconnected
If you were very quick to disconnect, you could end up in a state
where the toolbar was hidden.
2016-10-01 01:34:31 +02:00
Samuel Mannehed
9310577bd8 Remove out-of-place comma 2016-10-01 01:34:31 +02:00
Samuel Mannehed
67453adebc Remove padding which isn't needed anymore 2016-10-01 01:34:30 +02:00
Samuel Mannehed
6c14514774 Split cleanup from closing the socket 2016-10-01 01:34:30 +02:00
Samuel Mannehed
3bb12056b1 Remove unnecessary substates of disconnected
The states 'loaded', 'failed' and 'fatal' were all variations of the
'disconnected' state. Removing these states allows us to get rid of
many ugly workarounds and special cases. Error messages to the UI can
now instead be delivered via a new onDisconnected callback.
2016-10-01 01:34:25 +02:00
Samuel Mannehed
c2a4d3ef86 Improve the connection state names
Names such as 'disconnect' and 'disconnected' are inconsistent in the
way that one describes an action and the other a state. The state that
was called 'normal' didn't fit in with the others because the other
names describe a connection state. The new names are: 'disconnecting',
'connecting' and 'connected'
2016-10-01 01:30:02 +02:00
Samuel Mannehed
52e9cc48b0 Clean up log output on state changes 2016-10-01 01:30:02 +02:00
Samuel Mannehed
c00ee156b9 Separate out init state from page state
This makes the state machine simpler as we don't have to confuse
protocol states with visual states.
2016-10-01 01:30:02 +02:00
Samuel Mannehed
159c50c009 Clean up special state handling for 'failed' 2016-10-01 01:30:02 +02:00
Samuel Mannehed
d5bbe50eb5 Properly filter list of auth schemes
We do _not_ support scheme 1 through 16, only 1, 2, and 16 (and 22).
2016-10-01 01:30:01 +02:00
Samuel Mannehed
a7127fee73 Don't abuse state change function for messages
This doesn't even work anymore since we fixed it to ignore changes
to the current state. Add a separate callback for notifications
instead.
2016-10-01 01:29:44 +02:00
Samuel Mannehed
4cfd49c8c3 Don't change state to same state
The comment already stated as much, but the code was broken.
2016-10-01 00:02:56 +02:00
Samuel Mannehed
7d714b15f5 Remove special password state
We already have a callback mechanism for this, so let's use that.
Adds an optional parameter 'msg' to the callback.
Fixes vnc_auto.html (#646) which was broken after
4e0c36dda7
2016-10-01 00:02:47 +02:00
Samuel Mannehed
1c1cc1d0e9 Use single line if's for simple return criteria 2016-09-30 21:55:49 +02:00
Samuel Mannehed
b199e3c60c Merge branch 'CendioOssman-toolbar' into master 2016-09-30 21:36:38 +02:00
Samuel Mannehed
667a83e65a Merge branch 'toolbar' of https://github.com/CendioOssman/noVNC 2016-09-30 21:36:00 +02:00
Samuel Mannehed
86c67404c9 Remove spaces from clipboard element 2016-09-27 16:06:16 +02:00
Samuel Mannehed
4b30f9ce09 Clean up virtual keyboard handling 2016-09-23 17:45:25 +02:00
Pierre Ossman
1a15cb5b32 Add hover hints to buttons
Disable it on touch devices though as it is mostly annoying there.
2016-09-23 14:39:22 +02:00
Pierre Ossman
5454c34511 Add headings to panels 2016-09-23 14:39:22 +02:00
Pierre Ossman
1fe9faee6c Clean up panel layouts
Make sure everything follows a consistent style and is properly
labeled.
2016-09-23 14:39:21 +02:00
Pierre Ossman
ca25d2ae26 Move Ctrl+Alt+Del to extra keys menu
The extra keys menu is now present for all devices, so avoid clutter
by moving the Ctrl+Alt+Del button there as well.
2016-09-23 14:39:21 +02:00
Pierre Ossman
cd5a035d90 Make sure all buttons have a tooltip 2016-09-23 14:39:21 +02:00
Samuel Mannehed
3f93a385a2 Auto-close the toolbar on connect after a delay 2016-09-23 14:39:21 +02:00
Samuel Mannehed
04b399e27d Allow moving the controlbar handle
This also adds emulation of Element.setCapture() as only Firefox
and Internet Explorer/Edge currently supports it.
2016-09-23 14:39:21 +02:00
Pierre Ossman
65e3d7d6a6 Make control bar handle easier to hit on mobile 2016-09-23 14:39:21 +02:00
Pierre Ossman
38323d4d92 Add handle to open and close the control bar 2016-09-23 14:39:21 +02:00
Pierre Ossman
728b5d9e1a Make control bar transparent when idle 2016-09-23 14:39:21 +02:00
Pierre Ossman
4d3aa0ef9d Add logo to control bar 2016-09-23 14:39:21 +02:00
Pierre Ossman
fb7c3b3be2 Change control bar to a smaller left-side toolbar 2016-09-23 14:39:21 +02:00
Pierre Ossman
6244e383e4 Let CSS update UI for touch and connected state
Avoid a lot of JavaScript code that can easily be handed using
style sheets instead, specifically items that should only be shown
when on a touch device, or items that depend on the connected state.
2016-09-23 14:39:21 +02:00
Pierre Ossman
8434cc81b3 Make status dialog independent of control bar 2016-09-23 14:39:21 +02:00
Pierre Ossman
f7c725cecf Improve active button visual response 2016-09-23 14:39:21 +02:00
Pierre Ossman
ebbec43a6b Enable extra keys for all devices
Manual special keys can be useful on all devices, so stop restricting
it to just touch devices.
2016-09-23 14:39:21 +02:00
Pierre Ossman
d616c9226c Merge control bar sections
There is no status information in the centre anymore, so merge
the left and right sections of the control bar.
2016-09-23 14:39:21 +02:00
Samuel Mannehed
8a7ec6ea19 Add a separate dialog for the password prompt
The user might be queried for the password during the connect stage
if no password was previously provided. Add a separate dialog for
this rather than abusing the connect dialog.
2016-09-23 14:39:21 +02:00
Samuel Mannehed
8d7708c82e Abstract status dialog CSS class handling 2016-09-23 14:39:21 +02:00
Pierre Ossman
c8d4402f58 Move touch text input out of control bar
It has nothing to do with the control bar, so hide it somewhere
more sensible.
2016-09-23 14:39:21 +02:00