Pierre Ossman
d593483ecc
Make port optional in ui.js as well
...
It is optional in the RFB object since 1a50f68
, so we don't need it
at the UI layer either.
2017-10-06 10:07:47 +02:00
Pierre Ossman
0f897520a2
Update to new jsdom API
2017-10-06 10:05:29 +02:00
Solly Ross
75393e6a77
Merge pull request #910 from novnc/infra/publish
...
Set up for Publishing on NPM
2017-10-05 17:30:24 -04:00
Samuel Mannehed
4a818a7ddd
Merge pull request #893 from CendioOssman/amt
...
Basic support for Intel AMT
2017-10-05 16:59:53 +02:00
Solly Ross
458d4e6724
[release] v1.0.0-testing.2
...
v1.0.0-testing.2 is the "make sure all of our autopublishing works
properly" release. Assuming everything goes well, it should shortly be
followed by v1.0.0 proper.
2017-10-04 15:36:06 -04:00
Solly Ross
10ab92e1ff
[infra] Publish to NPM via Travis
...
This commit sets up Travis to publish to NPM on tags, to the
@novnc/novnc repository.
2017-10-04 15:36:05 -04:00
Solly Ross
f6dd102a14
[infra] updated packaging config
...
This updates the .npmignore file to ignore some new files that were
recently added, and to keep the `core` directory, so that noVNC can be
used as an ES6 module from NPM.
This also updates package.json to clean when generating lib files in the
`prepare` phase (which has replaced the `prepublish` phase).
2017-10-04 14:29:54 -04:00
Solly Ross
a80955ee7a
[infra] fix vendor import paths on built files
...
A previous commit started (quasi-correctly) rewriting vendor import
paths on built files. The gist of it was correct, but it incorrectly
rewrote paths in vendor itself.
The babel plugin in use operated on canonical absolute paths. This mean
that it saw no difference between the import
`../vendor/pako/lib/utils/foo` and `../utils/foo`, where the later was
actually in the `vendor/pako/lib/bar` directory. This rewrote imports
in files in the vendor directory itself. However, since those files
were *already* in the correct relative location, the new import was
incorrect by a degree of `..`.
Now, we only rewrite vendor paths on things in the `core` directory.
2017-10-03 19:30:20 -04:00
Solly Ross
c4e5a50e09
[infra] option to clean on use_require.js
...
This adds an option to `utils/use_require.js` which cleans the lib
and build directories before regenerating them. This will enable us
to make sure we always have a fresh copy of the lib dir before
publishing.
2017-10-03 18:21:36 -04:00
Solly Ross
b1e26cf4e7
Merge pull request #907 from DirectXMan12/tests/fix-travis
...
[infra] Fix Travis Sauce Auth
2017-10-03 16:27:38 -04:00
Solly Ross
1701d4b63e
[infra] Fix Travis Sauce Auth
...
Travis-Sauce authentication somehow broke along the way. This PR
fixes that by resetting the credentials.
2017-10-03 16:14:38 -04:00
Pierre Ossman
1cccf9b0e9
Merge branch 'fixes/polyfill' of https://github.com/qmfrederik/noVNC
2017-09-29 16:29:00 +02:00
Pierre Ossman
8290d3f271
Merge branch 'optional-port' of https://github.com/bkylerussell/noVNC
2017-09-29 16:26:02 +02:00
Frederik Carlier
14ecdc62b4
Only load ES6 module loader polyfill if needed
...
Safari and Chrome now have native support for modules, so we need to make sure we only load our polyfill when actually needed.
2017-09-29 14:09:25 +02:00
Samuel Mannehed
0242c03280
Restore logging properly after log tests
...
Our logging module keeps its own copy so we need to call init_logging in
the test cleanup to update things.
2017-09-28 14:11:44 +02:00
Samuel Mannehed
13d9108f91
Setup chai extensions centrally
...
They have global effects so make that clear by doing the setup in a
single place.
2017-09-28 14:10:19 +02:00
Samuel Mannehed
0aaf59c2f9
Upgrade and fix sinon.js
...
Converted version downloaded from sinonjs.org. Fixed version that
doesn't register itself on the global object. This forces all modules to
do a proper import.
2017-09-28 14:05:20 +02:00
Samuel Mannehed
05f032d1dd
Merge pull request #896 from novnc/combinemousewheel
...
Combine small mouse wheel events
2017-09-27 15:37:04 +02:00
Pierre Ossman
5a5f5ada58
Basic support for Intel AMT
...
This restores basic support for Intel AMT servers. They refuse clients
that request more than 16 bits per pixels, so implement a fallback
in just the "Raw" encoding.
2017-09-22 15:17:56 +02:00
Pierre Ossman
cd74793b44
Always hide local cursor initally
...
We don't know if the server will support a client side cursor, so
we have to assume a server side one to start with.
2017-09-22 15:17:56 +02:00
Pierre Ossman
c7c6cb196d
Remove rect arguments onFBUComplete callback
...
This callback is for an entire FBU, so it's not really relevant
to include info about just a single of the included rects.
2017-09-22 15:17:56 +02:00
Pierre Ossman
49a8183757
Clean up encoding handling
...
Allow things to be more explicit and dynamic. Makes it easier to read
and allows us to have more flexible selection of encodings in the future.
2017-09-22 15:17:56 +02:00
Samuel Mannehed
d92b701393
Remove unused imports
2017-09-17 18:23:57 +02:00
Samuel Mannehed
28b004fd70
Combine small mouse wheel events
...
The VNC protocol can't handle different deltas or speeds for a mouse
wheel event. When using a device that sends a lot of small mouse wheel
events, instead of fewer larger steps, the effect was that mouse wheel
scrolling was way to sensitive.
This patch looks at the delta of wheel events and doesn't send events
until the combined delta has passed a threshold. Single events that
doesn't pass the threshold get sent after a timeout in order to not
loose any events.
Fixes #577 .
2017-09-17 18:23:57 +02:00
Samuel Mannehed
c1e2785fb6
Split devices.js into keyboard.js and mouse.js
2017-09-17 18:23:57 +02:00
Samuel Mannehed
c509e6d9c8
Add tests for mouse module
2017-09-17 18:23:57 +02:00
Pierre Ossman
c338622719
Build encoding stats array dynamically
...
Avoids having to hard code which encodings we might see.
2017-09-07 17:18:25 +02:00
Pierre Ossman
f8ec2df2bb
Add helper for encoding enumeration and names
2017-09-07 17:18:25 +02:00
Pierre Ossman
3e8b26ab58
Remove unused encoding handlers
...
These should never be sent by a server, so we don't need handlers
for them.
2017-09-07 17:18:25 +02:00
Pierre Ossman
bc86b63c24
Remove unused helper for Tight encoding
...
It's already been inlined where used.
2017-09-07 17:18:25 +02:00
Pierre Ossman
910fd3afc9
Fix handling of ExtendedDesktopSize errors
2017-09-07 17:18:25 +02:00
Pierre Ossman
91d5c62589
Merge resize handling to single method
...
It also fits better in the core RFB object rather than as a helper
for the encoding handlers.
2017-09-07 17:18:25 +02:00
Pierre Ossman
1678bf860f
Stop hiding exceptions in WebSock class
...
Let them application decide how to deal with such things and do not
enforce this particular model, which easily hides bugs.
2017-09-07 17:18:25 +02:00
Samuel Mannehed
a49ade5fa0
Rename setting_clip to setting_view_clip
...
Clarifies the purpose of the setting in order to avoid mix ups with
clipboard related things.
2017-09-07 09:01:52 +02:00
Samuel Mannehed
409b7fb97e
Remove unused variable
...
The use of this variable was removed in b18ef8162e
2017-09-07 09:00:15 +02:00
Pierre Ossman
0ff97c1a24
Include optional log message on errors
2017-09-05 14:31:37 +02:00
Pierre Ossman
b05a7b1dcf
Handle new style recordings
...
Newer recordings are always binary and don't include the encoding
specifier.
2017-09-05 14:31:10 +02:00
Pierre Ossman
d1a1e0e529
Adjust scaling when session size changes
...
Session size changes can be initiated from the server, and not just
from the client. Make sure we update the scaling when this happens.
2017-08-16 11:00:04 +02:00
shaneharris
b5c982ea42
fix typscript error - the only one. ( #837 )
...
* fix typscript error TypeScript error: novnc/core/rfb.js(1012,17): Error TS7027: Unreachable code detected.
* Update rfb.js
2017-08-05 02:29:50 +02:00
Samuel Mannehed
74a29f3ff5
Make sure the control bar hint is centered
...
Fixed positioned flex boxes are not positioned correctly in Safari. Add
the normal top 50% translate -50% method.
Fixes issue #848 .
2017-07-26 17:06:27 +02:00
Pierre Ossman
edb7879927
IE compatibility fix for babel workers
...
IE doesn't support document.currentScript, so we need to have a fallback.
2017-07-21 15:03:52 +02:00
Pierre Ossman
be70fe0a3d
Only send QEMU Extended Key Event if we have a scan code
...
Servers will assume that a scan code is present if this message type
is used, so fall back to the standard key event message if we don't
know the scan code.
2017-07-07 15:06:13 +02:00
Pierre Ossman
4093c37f28
Ignore compositing key
...
keyCode 229 is commonly used with virtual keyboards when the
system cannot map things to a specific key. As such we should
treat it as 'Unidentified'.
2017-07-07 15:04:44 +02:00
Pierre Ossman
8f8c1803ff
Merge branch 'qemufix' of https://github.com/CendioOssman/noVNC
2017-07-06 13:07:19 +02:00
Pierre Ossman
2bf4cf5a20
try/catch guard for QEMU keyboard test
...
Safari on older iOS doesn't support creating KeyboardEvent objects,
so put a guard in to avoid crashes.
2017-07-06 13:00:00 +02:00
Pierre Ossman
7cac5c8e9f
Fallback for missing keypress events
...
IE and Edge have some corner cases (e.g. Ctrl+key) where we get
insufficient information in the keydown event, and we never get
a keypress event. Try to make a guess of the key in those cases.
2017-07-06 13:00:00 +02:00
Pierre Ossman
7e79dfe425
Track keys using keyIdentifier
...
This is necessary on older iOS where code isn't provided.
2017-07-06 13:00:00 +02:00
Pierre Ossman
1524df89ad
Adjust import of vendor/ modules in NPM package
...
We move the files in core/ up one directory level so we need to adjust
the imports from vendor libraries.
2017-07-04 10:10:36 +02:00
Pierre Ossman
d5c5b4aab7
Properly use babel opts
...
We prepared an options object for babel, but didn't include it properly
in the final call to babel.
2017-07-04 10:09:04 +02:00
Pierre Ossman
9e2f733f7d
Don't include unmodified vendor directory in NPM package
...
It contains ES6 modules, so it won't be useful as-is on NPM.
2017-07-04 10:08:21 +02:00