Commit Graph

1667 Commits

Author SHA1 Message Date
Solly Ross
cccf3b008a Fix perf/playback tool
Somewhere along the way, the refactors broke playback.js.  This fixes
the actual functionality, and makes its JS loading match that in
vnc.html.
2018-07-29 19:14:56 -04:00
Pierre Ossman
f9b6d7665d Use newer macOS test machine for Travis 2018-07-16 13:46:48 +02:00
Pierre Ossman
7bcdbbc65b Stop transpiling karma tests
This runs our code in the same manner as it would be used if loaded
directly in the browser. Includes the same kind of fallback for older
browsers.
2018-07-16 13:32:35 +02:00
Pierre Ossman
800abf1277 Fix proper triggering of module fallback
We might be in the "interactive" readyState, which means that
DOMContentLoaded has already fired and we'll hang.
2018-07-13 15:57:24 +02:00
Pierre Ossman
9eaea86234 Don't stub out ES module imports
It is not allowed and only happens to work because babel doesn't
strictly follow the specification. It doesn't seem necessary for the
tests to run, so just remove it.
2018-07-13 15:57:24 +02:00
Pierre Ossman
d131633471 Better currentScript fallback
The previous heuristic didn't work under all circumstances, so try
something more robust.
2018-07-13 15:57:24 +02:00
Pierre Ossman
ae2e1ff7bd Move sinon to karma framework
This frees us from manual imports, and makes things less magical
as those aren't ES modules even if the code suggest that the are.
2018-07-13 15:57:24 +02:00
Juanjo Diaz
885363a373 Use the classic function foo() { ... } for top level functions or functions that depend on the scope 2018-07-12 19:06:57 +02:00
Juanjo Diaz
651c23ece3 Use fat arrow functions const foo = () => { ... }; for callbacks
and any other function that is passed around and it's not a top level function
2018-07-12 19:06:57 +02:00
Juanjo Diaz
0e4808bf6f Use ES6 classes
Always use the shorthand notation if the function is a method of an object or class `{ foo() { ... } }` or `class bar { foo() { ... } }`
unless it's a callback in which case you a fat arrow function should be used `{ cb: () => { ... } }`
2018-07-12 19:06:57 +02:00
Pierre Ossman
67fefcf184 Merge branch 'cursor' of https://github.com/CendioOssman/noVNC 2018-07-11 13:39:37 +02:00
Pierre Ossman
baa4f23ee5 Provide fallback cursor method
Some browsers don't support custom cursors, and there are cases
where the browsers refuse to show the cursor. Handle both of these
cases by letting the browser render the cursor via a floating
canvas.

This allows us to support a local cursor at all times.
2018-07-06 16:37:27 +02:00
Pierre Ossman
1073b60155 Sort vkeys table 2018-07-04 15:53:41 +02:00
Pierre Ossman
8acadd9e97 Merge branch 'fix/ie11-numpad5-compatibility' of https://github.com/vlastoun/noVNC 2018-07-04 15:53:30 +02:00
Henry Vindin
9700e3592b Fixes #1075
Rather than trying to pick a utility, we should be able to just use bash to check if a port is available or not.

We can probably assume bash is available due to the shebang declaring it.
2018-07-01 15:37:34 +10:00
Samuel Mannehed
f90c2a6d4b Avoid TypedArray.slice() because of IE11 2018-06-15 12:00:43 +02:00
Samuel Mannehed
d9814c06bf Use string assignment operator instead of concat()
The assignment operator is a lot faster.
2018-06-15 11:59:28 +02:00
Samuel Mannehed
4318c8cafd Use the correct slicing for rQshiftStr
This didn't result in any error however since slice() handles such
mistakes gracefully.
2018-06-15 11:56:56 +02:00
Samuel Mannehed
178b92d380 Add rQshiftStr unit test for large strings 2018-06-15 11:53:51 +02:00
Samuel Mannehed
db9daa98a5 Avoid big strings on the stack
Previous code resulted in RangeErrors by potentially creating big
strings.

Fixes issue #1065
2018-06-14 16:59:52 +02:00
Samuel Mannehed
362bd5e3a2 Call rQshiftBytes to avoid code duplication 2018-06-14 16:51:29 +02:00
Samuel Mannehed
e87b645b56 Remove typedArrayToString
We don't use PhantomJS anymore
2018-06-14 16:43:48 +02:00
Pierre Ossman
aaa2ecbd95 Merge branch 'issue_templates' of https://github.com/novnc/noVNC 2018-06-07 16:07:54 +02:00
Samuel Mannehed
11715f2092 Properly force clipping on touch
It shouldn't depend on what's saved in webstorage nor save the forced
value to webstorage.

Includes a revert of 0342e4f489
2018-06-07 15:58:31 +02:00
Pierre Ossman
8f47bd296c Work around Siemens touch panel authentication bug
Siemens' touch panels support Tight authentication as well as NOTUNNEL,
but they fail to advertise the latter. Work around this issue by detecting
a Siemens device (through their custom tunnel types) and assume NOTUNNEL
support even if not advertised.
2018-06-07 15:03:34 +02:00
Pierre Ossman
e6bad200e4 Add debug logging for Tight authentication
Makes it easier to diagnose user issues when we can see what the
server and noVNC are trying to negotiate.
2018-06-07 14:57:17 +02:00
Pierre Ossman
13364d70dd Merge branch 'travis-lint' of https://github.com/CendioOssman/noVNC 2018-06-07 14:53:02 +02:00
Samuel Mannehed
0342e4f489 Clipping should be enabled on touch
This was always the intention and the main use case of 'clipping'. It
seems like it got lost somewhere along the way.
2018-06-04 21:41:45 +02:00
Pierre Ossman
127b63b79f Stop combining test platforms
Sauce is very unstable, so spread things out so we can more easily
throttle things to more sane levels.
2018-06-01 15:26:52 +02:00
Pierre Ossman
81207ffebd Run eslint in travis
Makes sure we get early feedback for lint violations.
2018-06-01 14:37:00 +02:00
Samuel Mannehed
fe70a1d51f Merge pull request #1013 from juanjoDiaz/es6_refactor_2
Add eslint and update noVNC to ES6
2018-05-25 10:22:36 +02:00
Juanjo Diaz
2b5f94fa6a Prefer const/let over var 2018-05-24 00:27:09 +03:00
Juanjo Diaz
cdb860ad84 Add transpilation for IE11 and skip linux tests 2018-05-24 00:26:34 +03:00
Juanjo Diaz
8727f598c2 Add eslint and fix reported issues 2018-05-24 00:25:44 +03:00
Pierre Ossman (Work account)
5dad77b9d5 Add issue templates
We often have to ask for the same information for every new issue. Try to avoid this by using github's templates for issues.
2018-05-21 09:37:37 +02:00
Vlastimil Sadilek
5858f472e3 Fix: IE11 Numpad5 compatibility when numlock off
This fix Numpad5 in Internet Explorer 11 if numlock state of host differs with numlock state of
VNC console.
2018-05-16 13:52:56 +02:00
Samuel Mannehed
cfe1e44ed7 Merge pull request #1074 from samhed/largeclipboard
Handle sending large clipboards
2018-05-07 13:25:46 +02:00
Samuel Mannehed
2bb8b28d78 Handle sending large clipboards
Pasting clipboard texts that were larger than 10240 bytes didnt work and
caused a crash in noVNC. This commit fixes the crash and adds handling
for sending large clipboard texts. Fixes issue #1065.
2018-05-07 13:02:51 +02:00
Vlastimil Sadilek
f3e2fc58ec Fix: undefined err, undefined Exception 2018-05-04 14:23:02 +02:00
Samuel Mannehed
43bbaa8d6e Merge pull request #1066 from colin-zhou/master
Update the internationalization module
2018-04-29 20:18:52 +02:00
Pierre Ossman
9dc580db27 Update browser test list
We want to also test Microsoft Edge, and Internet Explorer on Windows 10
is really a reskinned Edge so we also need to test on Windows 7.
2018-04-27 16:19:40 +02:00
Zhou Chaolin
024aca48e5 Update the noVNC translation part
fix the specification in zh_CN.po
2018-04-24 02:29:51 +08:00
Samuel Mannehed
24231f1ae3 Merge pull request #1048 from ghostplant/master
Add translation in zh_CN
2018-04-09 09:26:52 +02:00
CUI Wei
dcee7c5e91 Add translation in zh_CN
Signed-off-by: CUI Wei <ghostplant@qq.com>
2018-04-07 06:16:00 -04:00
Pierre Ossman
3328675b44 Clarify which Chinese translation we have
Chinese has several writing systems so we need to be clear which one
our translation covers. The one we currently have is for Traditional
Chinese so make sure it uses the matching language tag.
2018-04-03 14:51:12 +02:00
Pierre Ossman
7d60e97cc9 Only show error stack if it is not empty
Parsing errors will not have a stack, and we don't want an empty
box in those cases.
2018-03-21 15:33:14 +01:00
Pierre Ossman
b475eed5fa Separate out cursor handling
Make cursor handling more generic in preparation for generic handling
of corner cases.
2018-03-15 17:22:21 +01:00
Samuel Mannehed
3f9ca4f5dc Move VERSION to top-level 2018-03-15 14:33:09 +01:00
Samuel Mannehed
25cbf00e13 Remove docs/release.txt
Instructions has been moved to the wiki:

https://github.com/novnc/noVNC/wiki/Development:-Making-a-release
2018-03-15 14:28:08 +01:00
Samuel Mannehed
a07d4abe1f Fix docs/VERSION 2018-03-15 09:28:18 +01:00