@novnc/novnc 1.3.0-gf0c3af3 → 1.3.0-gf59be05
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/core/input/keyboard.js +10 -0
- package/lib/base64.js +2 -1
- package/lib/decoders/copyrect.js +2 -1
- package/lib/decoders/jpeg.js +2 -1
- package/lib/decoders/raw.js +2 -1
- package/lib/decoders/rre.js +2 -1
- package/lib/input/keyboard.js +9 -0
- package/lib/input/keysym.js +2 -1
- package/lib/input/xtscancodes.js +2 -1
- package/lib/util/eventtarget.js +2 -1
- package/package.json +1 -1
package/core/input/keyboard.js
CHANGED
|
@@ -153,6 +153,16 @@ export default class Keyboard {
|
|
|
153
153
|
keysym = this._keyDownList[code];
|
|
154
154
|
}
|
|
155
155
|
|
|
156
|
+
// macOS doesn't send proper key releases if a key is pressed
|
|
157
|
+
// while meta is held down
|
|
158
|
+
if ((browser.isMac() || browser.isIOS()) &&
|
|
159
|
+
(e.metaKey && code !== 'MetaLeft' && code !== 'MetaRight')) {
|
|
160
|
+
this._sendKeyEvent(keysym, code, true);
|
|
161
|
+
this._sendKeyEvent(keysym, code, false);
|
|
162
|
+
stopEvent(e);
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
|
|
156
166
|
// macOS doesn't send proper key events for modifiers, only
|
|
157
167
|
// state change events. That gets extra confusing for CapsLock
|
|
158
168
|
// which toggles on each press, but not on release. So pretend
|
package/lib/base64.js
CHANGED
package/lib/decoders/copyrect.js
CHANGED
|
@@ -14,7 +14,8 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
14
14
|
*
|
|
15
15
|
* See README.md for usage and integration instructions.
|
|
16
16
|
*
|
|
17
|
-
*/
|
|
17
|
+
*/
|
|
18
|
+
var CopyRectDecoder = /*#__PURE__*/function () {
|
|
18
19
|
function CopyRectDecoder() {
|
|
19
20
|
_classCallCheck(this, CopyRectDecoder);
|
|
20
21
|
}
|
package/lib/decoders/jpeg.js
CHANGED
|
@@ -14,7 +14,8 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
14
14
|
*
|
|
15
15
|
* See README.md for usage and integration instructions.
|
|
16
16
|
*
|
|
17
|
-
*/
|
|
17
|
+
*/
|
|
18
|
+
var JPEGDecoder = /*#__PURE__*/function () {
|
|
18
19
|
function JPEGDecoder() {
|
|
19
20
|
_classCallCheck(this, JPEGDecoder);
|
|
20
21
|
// RealVNC will reuse the quantization tables
|
package/lib/decoders/raw.js
CHANGED
|
@@ -14,7 +14,8 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
14
14
|
*
|
|
15
15
|
* See README.md for usage and integration instructions.
|
|
16
16
|
*
|
|
17
|
-
*/
|
|
17
|
+
*/
|
|
18
|
+
var RawDecoder = /*#__PURE__*/function () {
|
|
18
19
|
function RawDecoder() {
|
|
19
20
|
_classCallCheck(this, RawDecoder);
|
|
20
21
|
this._lines = 0;
|
package/lib/decoders/rre.js
CHANGED
|
@@ -14,7 +14,8 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
14
14
|
*
|
|
15
15
|
* See README.md for usage and integration instructions.
|
|
16
16
|
*
|
|
17
|
-
*/
|
|
17
|
+
*/
|
|
18
|
+
var RREDecoder = /*#__PURE__*/function () {
|
|
18
19
|
function RREDecoder() {
|
|
19
20
|
_classCallCheck(this, RREDecoder);
|
|
20
21
|
this._subrects = 0;
|
package/lib/input/keyboard.js
CHANGED
|
@@ -153,6 +153,15 @@ var Keyboard = /*#__PURE__*/function () {
|
|
|
153
153
|
keysym = this._keyDownList[code];
|
|
154
154
|
}
|
|
155
155
|
|
|
156
|
+
// macOS doesn't send proper key releases if a key is pressed
|
|
157
|
+
// while meta is held down
|
|
158
|
+
if ((browser.isMac() || browser.isIOS()) && e.metaKey && code !== 'MetaLeft' && code !== 'MetaRight') {
|
|
159
|
+
this._sendKeyEvent(keysym, code, true);
|
|
160
|
+
this._sendKeyEvent(keysym, code, false);
|
|
161
|
+
(0, _events.stopEvent)(e);
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
|
|
156
165
|
// macOS doesn't send proper key events for modifiers, only
|
|
157
166
|
// state change events. That gets extra confusing for CapsLock
|
|
158
167
|
// which toggles on each press, but not on release. So pretend
|
package/lib/input/keysym.js
CHANGED
package/lib/input/xtscancodes.js
CHANGED
|
@@ -9,7 +9,8 @@ exports["default"] = void 0;
|
|
|
9
9
|
* Database checksum sha256(76d68c10e97d37fe2ea459e210125ae41796253fb217e900bf2983ade13a7920)
|
|
10
10
|
* To re-generate, run:
|
|
11
11
|
* keymap-gen code-map --lang=js keymaps.csv html atset1
|
|
12
|
-
*/
|
|
12
|
+
*/
|
|
13
|
+
var _default = {
|
|
13
14
|
"Again": 0xe005,
|
|
14
15
|
/* html:Again (Again) -> linux:129 (KEY_AGAIN) -> atset1:57349 */
|
|
15
16
|
"AltLeft": 0x38,
|
package/lib/util/eventtarget.js
CHANGED
|
@@ -13,7 +13,8 @@ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _d
|
|
|
13
13
|
* Licensed under MPL 2.0 (see LICENSE.txt)
|
|
14
14
|
*
|
|
15
15
|
* See README.md for usage and integration instructions.
|
|
16
|
-
*/
|
|
16
|
+
*/
|
|
17
|
+
var EventTargetMixin = /*#__PURE__*/function () {
|
|
17
18
|
function EventTargetMixin() {
|
|
18
19
|
_classCallCheck(this, EventTargetMixin);
|
|
19
20
|
this._listeners = new Map();
|