Pierre Ossman
888f24e7af
Style all input types for consistent UI
...
At least all that the browsers will let us.
2021-03-29 12:14:14 +03:00
Niko Lehto
8be81165bd
Add extended clipboard Pseudo-Encoding
...
Add extended clipboard pseudo-encoding to allow the use of unicode
characters in the clipboard.
2021-03-29 12:13:59 +03:00
Niko Lehto
509b5795a0
Export constants in inflate.js for easier usage
2021-03-29 12:09:49 +03:00
Niko Lehto
581fe511ad
Fix bug where inflate would read too much data
2021-03-29 12:09:44 +03:00
Niko Lehto
9ca647667b
Split api of inflate
...
Added ability to read data chunk wise.
2021-03-29 12:09:40 +03:00
Niko Lehto
dbe2930758
Handle errors from zlib/pako
2021-03-29 12:09:36 +03:00
Niko Lehto
b690ae4c2d
Move error handling to Inflate class
...
Every call wants this check so this should be done inside the class.
2021-03-29 12:09:32 +03:00
Niko Lehto
5e4544d5fc
Add missing copyright header for Inflator.js
2021-03-29 12:09:27 +03:00
Niko Lehto
0b19961b06
Remove unused inflate argument
...
The value true was an invalid flush argument so it was in practice
unused.
2021-03-29 12:09:21 +03:00
Niko Lehto
286694869b
Add util for unsigned and signed int. conversion
...
Will be used in later commit in extended clipboard handling.
2021-03-29 12:09:10 +03:00
Niko Lehto
fdeefcfab4
Add deflator helper class for deflating data
...
Wraps pako's deflate for easier usage.
2021-03-29 12:09:05 +03:00
Niko Lehto
24cf1f0f9a
Make clipBoardPasteFrom() test more specific
...
Don't rely on clientCutText() to test clipboardPasteFrom().
2021-03-29 12:08:58 +03:00
Alvin Townsend
d01f6e6d27
Correcting path to package.json for running at a path other than root.
2021-03-29 12:08:52 +03:00
Samuel Mannehed
c1160d1468
Fix color channels for VMware alpha cursors
...
The red and blue channels were incorrectly swapped.
2021-03-29 12:08:36 +03:00
Juanjo Diaz
1c38b6f120
Remove generated HTML by Cursor when it detaches
2021-03-29 12:08:01 +03:00
Samuel Mannehed
70dd0058ac
Simplify encodeUTF8/decodeUTF8 unittests
2021-03-29 12:07:57 +03:00
Samuel Mannehed
a4c5c38b53
Add unit tests for encodeUTF8 and decodeUTF8
2021-03-29 12:07:52 +03:00
Samuel Mannehed
789308212b
Remove unused python scripts
2021-03-29 12:07:48 +03:00
Samuel Mannehed
ce5fe304cb
Fix chinese translation for "Disconnect"
...
Thanks for @wavezhang, @litongjava, and @bhzhu203 for helping out.
2021-03-29 12:07:41 +03:00
Samuel Mannehed
781075c841
Update chinese translation strings
...
Thanks to @QQ2017 and @wavezhang for helping out with correcting these.
2021-03-29 12:07:36 +03:00
Samuel Mannehed
2f43cead79
Add comment for browser and platform detection
2021-03-29 12:07:32 +03:00
Samuel Mannehed
e7a5aa271e
Add short description at the top of browser.js
2021-03-29 12:07:23 +03:00
Samuel Mannehed
ad206180d2
Properly detect scrollbar gutter
...
As a rule, instead of hard-coding a behavior on specific platforms we
should do dynamic detection.
This commit moves away from always hiding scrollbars on Android and iOS
and instead detects the rendered width of scrollbars in the browser.
2021-03-29 12:07:09 +03:00
Pierre Ossman
89dd199317
Allow cursor to be updated while connecting
...
We haven't got a server provided cursor at this point, but we might
have done something local, e.g. enabled the dot cursor.
2021-03-29 12:06:42 +03:00
Pierre Ossman
8be70e5ae0
Handle slow loading of images
...
Internet Explorer seems to flag images as loaded prematurely, which
can result in rendering bugs. We can detect this by looking at the
dimensions though.
2021-03-29 12:06:28 +03:00
Samuel Mannehed
ce94d92e18
Build in the behavior to ignore decodeUTF8 errors
...
Makes the code clearer and more explicit in intent.
2021-03-29 12:03:54 +03:00
Samuel Mannehed
c3ef9ff557
Peter is no longer part of the noVNC team
2021-03-29 12:02:16 +03:00
Chris \"Koying\" Browet
c0276776e9
Add support for Unix Tight auth
2021-03-29 12:02:05 +03:00
VanyM
10f4aa9e7b
Add try catch in every place that uses decodeUTF8
2021-03-29 12:02:00 +03:00
Samuel Mannehed
b2dc76ee18
Add encodeUTF8 function to core/util/strings.js
2021-03-29 12:01:15 +03:00
Pierre Ossman
12cdad066e
Make Cursor.detach() safe to call when not attached
...
Avoids having checks in higher layers.
2021-03-29 12:01:10 +03:00
Samuel Mannehed
a850be4afa
Fix chinese translation errors
...
Thanks to @QQ2017 for providing the translation strings
2021-03-29 12:01:07 +03:00
Samuel Mannehed
354d544843
Simplify logic for status hierarchy
...
Removes unnecessary variable
2021-03-29 12:01:02 +03:00
Samuel Mannehed
0bf9403a36
Ensure warning status timeouts are honored
...
When showing a new status popup we want to set a timer for how long to
show it. In cases where we show many statuses in a fast succession we
need to remove any running timeouts when showing a new one.
There are exceptions when new statuses won't be shown, and thats if a
more severe status is already showing, i.e and error or a warning.
Warnings can still have timeouts. There was a bug that occured when we
tried to show a normal status while a warning was showing. The bug
caused the warning status timeout to be removed even if the normal
status was never shown. We should only remove running timeouts if we're
actually going to show a new status.
2021-03-29 12:00:47 +03:00
Pierre Ossman
29db8997ec
Don't use arrow functions in legacy loader
...
The browsers that need the legacy code do not support such fancy
modern things.
2021-03-29 12:00:38 +03:00
Pierre Ossman
46f15667f7
Load support scripts first
...
E.g. SystemJS requires the Promise polyfill, so make sure all our
support files are loaded first.
2021-03-29 11:59:59 +03:00
Pierre Ossman
edb5fee88b
Upgrade to latest babel
...
There has been a lot of renaming and restructuring in babel, so we need
to modify our code to handle the latest version. We also need to adjust
the way we build our babel worker as babel itself no longer runs in older
browsers such as Internet Explorer.
2021-03-29 11:59:50 +03:00
Pierre Ossman
23871b42d1
Always include Promise polyfill for legacy browsers
...
It is now used by our general code and not just by the conversion
routines, so we need to make sure it is always included for the
old browsers.
2021-03-29 11:58:26 +03:00
Pierre Ossman
d6d875ef3b
Clean up handling of untransformed files
...
This control flow is difficult enough as it is to follow. Move the
handling of the untransformed files to a separate block to make it
slightly easier to understand.
2021-03-29 11:58:20 +03:00
Pierre Ossman
6c84631bbc
Remove redundant "no copy" check
...
We also check this list as a filter to walkDir(), so no need for the
extra check here.
2021-03-29 11:58:13 +03:00
wavezhang
6bb87ee2b2
Update zh_CN.po
...
fix spell errors, improve translations
2021-03-29 11:57:31 +03:00
Alex Tanskanen
15c74e7dc9
Fix missing caps lock events on iOS
...
Caps Lock on iOS only trigged key release or key press events.
When it's clicked it would only send keydown, and next time
it would only send keyup and so on. It should send both a key press
and a key release.
Also added the unit tests for macOS since those were missing.
Co-Authored-By: Alex Tanskanen <aleta@cendio.se>
2021-03-29 11:57:26 +03:00
Samuel Mannehed
f1be4be653
Add README to app/locale warning not to modify
2021-03-29 11:57:09 +03:00
Alex Tanskanen
b5f1a00282
Add "macOS shuffle" to iOS as well
...
Since iOS functions like macOS with regards to Alt behaving like AltGr,
we need the same workaround on iOS as well.
2021-03-29 11:57:05 +03:00
Pierre Ossman
740a8217ab
Handle missing Shift events on Windows
...
This is a bug in the OS that leaks through to the browsers. We need
to fake a Shift release here to avoid Shift getting stuck in the remote
session.
2021-03-29 11:57:00 +03:00
Pierre Ossman
796de9653f
Send NumLock on macOS, even though the key is Clear
...
There is no obvious choice what works best here, but this is what
TigerVNC has been doing for years without complaints. Let's follow
them until we get reports that this doesn't work well.
2021-03-29 11:56:55 +03:00
Pierre Ossman
6916c83b48
Fix typo for MailSend key
2021-03-29 11:56:49 +03:00
Pierre Ossman
d10d7167f6
Update to latest UI Events key specification
2021-03-29 11:56:45 +03:00
Pierre Ossman
a8dc933701
Fix AltGr for a few more keys in IE and Edge
...
Some keys apparently send 'Unidentified' rather than an unshifted value.
Make sure those are also handled. Examples are \ and | on a Swedish
keyboard.
2021-03-29 11:56:40 +03:00
Samuel Mannehed
d61bf69c33
Keep the virtual keyboard after using extra keys
...
If using the extra keys always gives focus to the screen then an
on-screen keyboard would be closed. When using on-screen keyboards we
instead want to give focus to our virtual keyboard input element.
2021-03-29 11:56:34 +03:00