@epicgames-ps/lib-pixelstreamingfrontend-ue5.5 0.4.5 → 0.4.7
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/.eslintignore +1 -1
- package/.eslintrc.js +1 -0
- package/dist/commonjs/Inputs/GamepadController.js +2 -2
- package/dist/commonjs/Inputs/GamepadController.js.map +1 -1
- package/dist/esm/AFK/AFKController.js +16 -20
- package/dist/esm/AFK/AFKController.js.map +1 -1
- package/dist/esm/Config/Config.js +69 -81
- package/dist/esm/Config/Config.js.map +1 -1
- package/dist/esm/Config/SettingBase.js +1 -5
- package/dist/esm/Config/SettingBase.js.map +1 -1
- package/dist/esm/Config/SettingFlag.js +2 -6
- package/dist/esm/Config/SettingFlag.js.map +1 -1
- package/dist/esm/Config/SettingNumber.js +2 -6
- package/dist/esm/Config/SettingNumber.js.map +1 -1
- package/dist/esm/Config/SettingOption.js +4 -8
- package/dist/esm/Config/SettingOption.js.map +1 -1
- package/dist/esm/Config/SettingText.js +2 -6
- package/dist/esm/Config/SettingText.js.map +1 -1
- package/dist/esm/DataChannel/DataChannelController.js +6 -10
- package/dist/esm/DataChannel/DataChannelController.js.map +1 -1
- package/dist/esm/DataChannel/DataChannelLatencyTestController.js +5 -9
- package/dist/esm/DataChannel/DataChannelLatencyTestController.js.map +1 -1
- package/dist/esm/DataChannel/DataChannelLatencyTestResults.js +1 -5
- package/dist/esm/DataChannel/DataChannelLatencyTestResults.js.map +1 -1
- package/dist/esm/DataChannel/DataChannelSender.js +4 -8
- package/dist/esm/DataChannel/DataChannelSender.js.map +1 -1
- package/dist/esm/DataChannel/InitialSettings.js +4 -11
- package/dist/esm/DataChannel/InitialSettings.js.map +1 -1
- package/dist/esm/DataChannel/LatencyTestResults.js +4 -8
- package/dist/esm/DataChannel/LatencyTestResults.js.map +1 -1
- package/dist/esm/FreezeFrame/FreezeFrame.js +1 -5
- package/dist/esm/FreezeFrame/FreezeFrame.js.map +1 -1
- package/dist/esm/FreezeFrame/FreezeFrameController.js +7 -11
- package/dist/esm/FreezeFrame/FreezeFrameController.js.map +1 -1
- package/dist/esm/Inputs/GamepadController.js +9 -13
- package/dist/esm/Inputs/GamepadController.js.map +1 -1
- package/dist/esm/Inputs/GamepadTypes.js +1 -4
- package/dist/esm/Inputs/GamepadTypes.js.map +1 -1
- package/dist/esm/Inputs/IInputController.js +1 -2
- package/dist/esm/Inputs/InputClassesFactory.js +21 -26
- package/dist/esm/Inputs/InputClassesFactory.js.map +1 -1
- package/dist/esm/Inputs/KeyCodes.js +1 -4
- package/dist/esm/Inputs/KeyCodes.js.map +1 -1
- package/dist/esm/Inputs/KeyboardController.js +18 -22
- package/dist/esm/Inputs/KeyboardController.js.map +1 -1
- package/dist/esm/Inputs/MouseButtons.js +2 -7
- package/dist/esm/Inputs/MouseButtons.js.map +1 -1
- package/dist/esm/Inputs/MouseController.js +22 -26
- package/dist/esm/Inputs/MouseController.js.map +1 -1
- package/dist/esm/Inputs/MouseControllerHovering.js +2 -6
- package/dist/esm/Inputs/MouseControllerHovering.js.map +1 -1
- package/dist/esm/Inputs/MouseControllerLocked.js +5 -9
- package/dist/esm/Inputs/MouseControllerLocked.js.map +1 -1
- package/dist/esm/Inputs/SpecialKeyCodes.js +1 -5
- package/dist/esm/Inputs/SpecialKeyCodes.js.map +1 -1
- package/dist/esm/Inputs/TouchController.js +4 -8
- package/dist/esm/Inputs/TouchController.js.map +1 -1
- package/dist/esm/Inputs/TouchControllerFake.js +4 -8
- package/dist/esm/Inputs/TouchControllerFake.js.map +1 -1
- package/dist/esm/Inputs/XRGamepadController.js +4 -8
- package/dist/esm/Inputs/XRGamepadController.js.map +1 -1
- package/dist/esm/PeerConnectionController/AggregatedStats.js +19 -23
- package/dist/esm/PeerConnectionController/AggregatedStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/CandidatePairStats.js +1 -5
- package/dist/esm/PeerConnectionController/CandidatePairStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/CandidateStat.js +1 -5
- package/dist/esm/PeerConnectionController/CandidateStat.js.map +1 -1
- package/dist/esm/PeerConnectionController/CodecStats.js +1 -5
- package/dist/esm/PeerConnectionController/CodecStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/DataChannelStats.js +1 -5
- package/dist/esm/PeerConnectionController/DataChannelStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/InboundRTPStats.js +3 -9
- package/dist/esm/PeerConnectionController/InboundRTPStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/InboundTrackStats.js +1 -5
- package/dist/esm/PeerConnectionController/InboundTrackStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/OutBoundRTPStats.js +2 -7
- package/dist/esm/PeerConnectionController/OutBoundRTPStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/PeerConnectionController.js +37 -41
- package/dist/esm/PeerConnectionController/PeerConnectionController.js.map +1 -1
- package/dist/esm/PeerConnectionController/SessionStats.js +1 -5
- package/dist/esm/PeerConnectionController/SessionStats.js.map +1 -1
- package/dist/esm/PeerConnectionController/StreamStats.js +1 -5
- package/dist/esm/PeerConnectionController/StreamStats.js.map +1 -1
- package/dist/esm/PixelStreaming/PixelStreaming.js +115 -119
- package/dist/esm/PixelStreaming/PixelStreaming.js.map +1 -1
- package/dist/esm/UI/OnScreenKeyboard.js +1 -5
- package/dist/esm/UI/OnScreenKeyboard.js.map +1 -1
- package/dist/esm/UeInstanceMessage/ResponseController.js +4 -8
- package/dist/esm/UeInstanceMessage/ResponseController.js.map +1 -1
- package/dist/esm/UeInstanceMessage/SendMessageController.js +5 -9
- package/dist/esm/UeInstanceMessage/SendMessageController.js.map +1 -1
- package/dist/esm/UeInstanceMessage/StreamMessageController.js +6 -11
- package/dist/esm/UeInstanceMessage/StreamMessageController.js.map +1 -1
- package/dist/esm/UeInstanceMessage/ToStreamerMessagesController.js +1 -5
- package/dist/esm/UeInstanceMessage/ToStreamerMessagesController.js.map +1 -1
- package/dist/esm/Util/EventEmitter.js +38 -79
- package/dist/esm/Util/EventEmitter.js.map +1 -1
- package/dist/esm/Util/FileUtil.js +11 -16
- package/dist/esm/Util/FileUtil.js.map +1 -1
- package/dist/esm/Util/IURLSearchParams.js +1 -5
- package/dist/esm/Util/IURLSearchParams.js.map +1 -1
- package/dist/esm/Util/InputCoordTranslator.js +1 -5
- package/dist/esm/Util/InputCoordTranslator.js.map +1 -1
- package/dist/esm/Util/RTCUtils.js +1 -5
- package/dist/esm/Util/RTCUtils.js.map +1 -1
- package/dist/esm/VideoPlayer/StreamController.js +6 -10
- package/dist/esm/VideoPlayer/StreamController.js.map +1 -1
- package/dist/esm/VideoPlayer/VideoPlayer.js +7 -11
- package/dist/esm/VideoPlayer/VideoPlayer.js.map +1 -1
- package/dist/esm/WebRtcPlayer/WebRtcPlayerController.js +225 -229
- package/dist/esm/WebRtcPlayer/WebRtcPlayerController.js.map +1 -1
- package/dist/esm/WebXR/WebXRController.js +12 -16
- package/dist/esm/WebXR/WebXRController.js.map +1 -1
- package/dist/esm/pixelstreamingfrontend.js +23 -58
- package/dist/esm/pixelstreamingfrontend.js.map +1 -1
- package/dist/types/Util/EventEmitter.d.ts +1 -1
- package/package.json +2 -2
- package/src/Inputs/GamepadController.ts +2 -2
- package/src/Util/EventEmitter.ts +1 -1
- package/tsconfig.esm.json +2 -2
- package/tsconfig.json +1 -1
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const lib_pixelstreamingcommon_ue5_5_1 = require("@epicgames-ps/lib-pixelstreamingcommon-ue5.5");
|
|
6
|
-
const FreezeFrame_1 = require("./FreezeFrame");
|
|
2
|
+
import { Logger } from '@epicgames-ps/lib-pixelstreamingcommon-ue5.5';
|
|
3
|
+
import { FreezeFrame } from './FreezeFrame';
|
|
7
4
|
/**
|
|
8
5
|
* A class for controlling freeze frame functionality
|
|
9
6
|
*/
|
|
10
|
-
class FreezeFrameController {
|
|
7
|
+
export class FreezeFrameController {
|
|
11
8
|
/**
|
|
12
9
|
* Construct a freeze frame controller
|
|
13
10
|
* @param rootDiv - the div that a freeze frame element will be injected into
|
|
@@ -18,7 +15,7 @@ class FreezeFrameController {
|
|
|
18
15
|
this.jpeg = undefined;
|
|
19
16
|
this.valid = false;
|
|
20
17
|
this.freezeFrameDelay = 50;
|
|
21
|
-
this.freezeFrame = new
|
|
18
|
+
this.freezeFrame = new FreezeFrame(rootDiv);
|
|
22
19
|
}
|
|
23
20
|
/**
|
|
24
21
|
* Show the freeze frame if it is valid
|
|
@@ -75,22 +72,21 @@ class FreezeFrameController {
|
|
|
75
72
|
else {
|
|
76
73
|
this.jpeg = jpegBytes;
|
|
77
74
|
this.receiving = true;
|
|
78
|
-
|
|
75
|
+
Logger.Info(`received first chunk of freeze frame: ${this.jpeg.length}/${this.size}`);
|
|
79
76
|
}
|
|
80
77
|
// Finished receiving freeze frame, we can show it now
|
|
81
78
|
if (this.jpeg.length === this.size) {
|
|
82
79
|
this.receiving = false;
|
|
83
80
|
this.valid = true;
|
|
84
|
-
|
|
81
|
+
Logger.Info(`received complete freeze frame ${this.size}`);
|
|
85
82
|
this.updateFreezeFrameAndShow(this.jpeg, onLoadCallBack);
|
|
86
83
|
}
|
|
87
84
|
// We received more data than the freeze frame payload message indicate (this is an error)
|
|
88
85
|
else if (this.jpeg.length > this.size) {
|
|
89
|
-
|
|
86
|
+
Logger.Error(`received bigger freeze frame than advertised: ${this.jpeg.length}/${this.size}`);
|
|
90
87
|
this.jpeg = undefined;
|
|
91
88
|
this.receiving = false;
|
|
92
89
|
}
|
|
93
90
|
}
|
|
94
91
|
}
|
|
95
|
-
exports.FreezeFrameController = FreezeFrameController;
|
|
96
92
|
//# sourceMappingURL=FreezeFrameController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FreezeFrameController.js","sourceRoot":"","sources":["../../../src/FreezeFrame/FreezeFrameController.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FreezeFrameController.js","sourceRoot":"","sources":["../../../src/FreezeFrame/FreezeFrameController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
3
|
-
|
|
4
|
-
exports.GamepadController = exports.GamepadLayout = void 0;
|
|
5
|
-
const GamepadTypes_1 = require("./GamepadTypes");
|
|
2
|
+
import { deepCopyGamepad } from './GamepadTypes';
|
|
6
3
|
/**
|
|
7
4
|
* Gamepad layout codes enum
|
|
8
5
|
*/
|
|
9
6
|
/* eslint-disable @typescript-eslint/no-duplicate-enum-values */
|
|
10
|
-
var GamepadLayout;
|
|
7
|
+
export var GamepadLayout;
|
|
11
8
|
(function (GamepadLayout) {
|
|
12
9
|
GamepadLayout[GamepadLayout["RightClusterBottomButton"] = 0] = "RightClusterBottomButton";
|
|
13
10
|
GamepadLayout[GamepadLayout["RightClusterRightButton"] = 1] = "RightClusterRightButton";
|
|
@@ -31,12 +28,12 @@ var GamepadLayout;
|
|
|
31
28
|
GamepadLayout[GamepadLayout["LeftStickVertical"] = 1] = "LeftStickVertical";
|
|
32
29
|
GamepadLayout[GamepadLayout["RightStickHorizontal"] = 2] = "RightStickHorizontal";
|
|
33
30
|
GamepadLayout[GamepadLayout["RightStickVertical"] = 3] = "RightStickVertical";
|
|
34
|
-
})(GamepadLayout || (
|
|
31
|
+
})(GamepadLayout || (GamepadLayout = {}));
|
|
35
32
|
/* eslint-enable @typescript-eslint/no-duplicate-enum-values */
|
|
36
33
|
/**
|
|
37
34
|
* Handles gamepad events from the document to send to the streamer.
|
|
38
35
|
*/
|
|
39
|
-
class GamepadController {
|
|
36
|
+
export class GamepadController {
|
|
40
37
|
constructor(streamMessageController) {
|
|
41
38
|
this.streamMessageController = streamMessageController;
|
|
42
39
|
this.onGamepadConnectedListener = this.onGamepadConnected.bind(this);
|
|
@@ -89,8 +86,8 @@ class GamepadController {
|
|
|
89
86
|
onGamepadConnected(event) {
|
|
90
87
|
const gamepad = event.gamepad;
|
|
91
88
|
const newController = {
|
|
92
|
-
currentState:
|
|
93
|
-
prevState:
|
|
89
|
+
currentState: deepCopyGamepad(gamepad),
|
|
90
|
+
prevState: deepCopyGamepad(gamepad),
|
|
94
91
|
id: undefined
|
|
95
92
|
};
|
|
96
93
|
this.controllers[gamepad.index] = newController;
|
|
@@ -102,7 +99,7 @@ class GamepadController {
|
|
|
102
99
|
const deletedController = this.controllers[gamepad.index];
|
|
103
100
|
delete this.controllers[gamepad.index];
|
|
104
101
|
this.controllers = this.controllers.filter((controller) => controller !== undefined);
|
|
105
|
-
if (deletedController.id) {
|
|
102
|
+
if (deletedController.id !== undefined) {
|
|
106
103
|
this.streamMessageController.toStreamerHandlers.get('GamepadDisconnected')([
|
|
107
104
|
deletedController.id
|
|
108
105
|
]);
|
|
@@ -179,7 +176,7 @@ class GamepadController {
|
|
|
179
176
|
toStreamerHandlers.get('GamepadAnalog')([controllerId, i + 2, y]); // Vertical axes, offset by two (1 to match UEs axes convention and then another 1 for the vertical axes)
|
|
180
177
|
}
|
|
181
178
|
const controllerIndex = this.controllers.indexOf(controller);
|
|
182
|
-
this.controllers[controllerIndex].prevState =
|
|
179
|
+
this.controllers[controllerIndex].prevState = deepCopyGamepad(currentState);
|
|
183
180
|
}
|
|
184
181
|
if (this.controllers.length > 0) {
|
|
185
182
|
this.requestAnimationFrame(() => this.updateStatus());
|
|
@@ -189,12 +186,11 @@ class GamepadController {
|
|
|
189
186
|
// When a user navigates away from the page, we need to inform UE of all the disconnecting
|
|
190
187
|
// controllers
|
|
191
188
|
for (const controller of this.controllers) {
|
|
192
|
-
if (!controller ||
|
|
189
|
+
if (!controller || controller.id === undefined) {
|
|
193
190
|
continue;
|
|
194
191
|
}
|
|
195
192
|
this.streamMessageController.toStreamerHandlers.get('GamepadDisconnected')([controller.id]);
|
|
196
193
|
}
|
|
197
194
|
}
|
|
198
195
|
}
|
|
199
|
-
exports.GamepadController = GamepadController;
|
|
200
196
|
//# sourceMappingURL=GamepadController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GamepadController.js","sourceRoot":"","sources":["../../../src/Inputs/GamepadController.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GamepadController.js","sourceRoot":"","sources":["../../../src/Inputs/GamepadController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.deepCopyGamepad = deepCopyGamepad;
|
|
5
2
|
/**
|
|
6
3
|
* Deep copies the values from a gamepad by first converting it to a JSON object and then back to a gamepad
|
|
7
4
|
*
|
|
8
5
|
* @param gamepad the original gamepad
|
|
9
6
|
* @returns a new gamepad object, populated with the original gamepads values
|
|
10
7
|
*/
|
|
11
|
-
function deepCopyGamepad(gamepad) {
|
|
8
|
+
export function deepCopyGamepad(gamepad) {
|
|
12
9
|
return JSON.parse(JSON.stringify({
|
|
13
10
|
buttons: gamepad.buttons.map((b) => JSON.parse(JSON.stringify({
|
|
14
11
|
pressed: b.pressed,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GamepadTypes.js","sourceRoot":"","sources":["../../../src/Inputs/GamepadTypes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"GamepadTypes.js","sourceRoot":"","sources":["../../../src/Inputs/GamepadTypes.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAWlD;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC5C,OAAO,IAAI,CAAC,KAAK,CACb,IAAI,CAAC,SAAS,CAAC;QACX,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/B,IAAI,CAAC,KAAK,CACN,IAAI,CAAC,SAAS,CAAC;YACX,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,KAAK,EAAE,CAAC,CAAC,KAAK;SACjB,CAAC,CACL,CACJ;QACD,IAAI,EAAE,OAAO,CAAC,IAAI;KACrB,CAAC,CACL,CAAC;AACN,CAAC"}
|
|
@@ -1,19 +1,16 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const Config_1 = require("../Config/Config");
|
|
12
|
-
const lib_pixelstreamingcommon_ue5_5_1 = require("@epicgames-ps/lib-pixelstreamingcommon-ue5.5");
|
|
2
|
+
import { KeyboardController } from './KeyboardController';
|
|
3
|
+
import { MouseControllerLocked } from './MouseControllerLocked';
|
|
4
|
+
import { MouseControllerHovering } from './MouseControllerHovering';
|
|
5
|
+
import { TouchController } from './TouchController';
|
|
6
|
+
import { TouchControllerFake } from './TouchControllerFake';
|
|
7
|
+
import { GamepadController } from './GamepadController';
|
|
8
|
+
import { ControlSchemeType } from '../Config/Config';
|
|
9
|
+
import { Logger } from '@epicgames-ps/lib-pixelstreamingcommon-ue5.5';
|
|
13
10
|
/**
|
|
14
11
|
* Class for making and setting up input class types
|
|
15
12
|
*/
|
|
16
|
-
class InputClassesFactory {
|
|
13
|
+
export class InputClassesFactory {
|
|
17
14
|
/**
|
|
18
15
|
* @param toStreamerMessagesProvider - Stream message instance
|
|
19
16
|
* @param videoElementProvider - Video Player instance
|
|
@@ -29,8 +26,8 @@ class InputClassesFactory {
|
|
|
29
26
|
* Registers browser key events.
|
|
30
27
|
*/
|
|
31
28
|
registerKeyBoard(config) {
|
|
32
|
-
|
|
33
|
-
const keyboardController = new
|
|
29
|
+
Logger.Info('Register Keyboard Events');
|
|
30
|
+
const keyboardController = new KeyboardController(this.toStreamerMessagesProvider, config, this.activeKeys);
|
|
34
31
|
keyboardController.register();
|
|
35
32
|
return keyboardController;
|
|
36
33
|
}
|
|
@@ -39,13 +36,13 @@ class InputClassesFactory {
|
|
|
39
36
|
* @param controlScheme - if the mouse is either hovering or locked
|
|
40
37
|
*/
|
|
41
38
|
registerMouse(controlScheme) {
|
|
42
|
-
|
|
39
|
+
Logger.Info('Register Mouse Events');
|
|
43
40
|
let mouseController;
|
|
44
|
-
if (controlScheme ==
|
|
45
|
-
mouseController = new
|
|
41
|
+
if (controlScheme == ControlSchemeType.HoveringMouse) {
|
|
42
|
+
mouseController = new MouseControllerHovering(this.toStreamerMessagesProvider, this.videoElementProvider, this.coordinateConverter, this.activeKeys);
|
|
46
43
|
}
|
|
47
44
|
else {
|
|
48
|
-
mouseController = new
|
|
45
|
+
mouseController = new MouseControllerLocked(this.toStreamerMessagesProvider, this.videoElementProvider, this.coordinateConverter, this.activeKeys);
|
|
49
46
|
}
|
|
50
47
|
mouseController.register();
|
|
51
48
|
return mouseController;
|
|
@@ -55,13 +52,13 @@ class InputClassesFactory {
|
|
|
55
52
|
* @param fakeMouseTouch - the faked mouse touch event
|
|
56
53
|
*/
|
|
57
54
|
registerTouch(fakeMouseTouch) {
|
|
58
|
-
|
|
55
|
+
Logger.Info('Registering Touch');
|
|
59
56
|
let touchController;
|
|
60
57
|
if (fakeMouseTouch) {
|
|
61
|
-
touchController = new
|
|
58
|
+
touchController = new TouchControllerFake(this.toStreamerMessagesProvider, this.videoElementProvider, this.coordinateConverter);
|
|
62
59
|
}
|
|
63
60
|
else {
|
|
64
|
-
touchController = new
|
|
61
|
+
touchController = new TouchController(this.toStreamerMessagesProvider, this.videoElementProvider, this.coordinateConverter);
|
|
65
62
|
}
|
|
66
63
|
touchController.register();
|
|
67
64
|
return touchController;
|
|
@@ -70,17 +67,16 @@ class InputClassesFactory {
|
|
|
70
67
|
* registers a gamepad
|
|
71
68
|
*/
|
|
72
69
|
registerGamePad() {
|
|
73
|
-
|
|
74
|
-
const gamepadController = new
|
|
70
|
+
Logger.Info('Register Game Pad');
|
|
71
|
+
const gamepadController = new GamepadController(this.toStreamerMessagesProvider);
|
|
75
72
|
gamepadController.register();
|
|
76
73
|
return gamepadController;
|
|
77
74
|
}
|
|
78
75
|
}
|
|
79
|
-
exports.InputClassesFactory = InputClassesFactory;
|
|
80
76
|
/**
|
|
81
77
|
* A class that keeps track of current active keys
|
|
82
78
|
*/
|
|
83
|
-
class ActiveKeys {
|
|
79
|
+
export class ActiveKeys {
|
|
84
80
|
constructor() {
|
|
85
81
|
this.activeKeys = [];
|
|
86
82
|
this.activeKeys = [];
|
|
@@ -93,5 +89,4 @@ class ActiveKeys {
|
|
|
93
89
|
return this.activeKeys;
|
|
94
90
|
}
|
|
95
91
|
}
|
|
96
|
-
exports.ActiveKeys = ActiveKeys;
|
|
97
92
|
//# sourceMappingURL=InputClassesFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputClassesFactory.js","sourceRoot":"","sources":["../../../src/Inputs/InputClassesFactory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"InputClassesFactory.js","sourceRoot":"","sources":["../../../src/Inputs/InputClassesFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,11 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.CodeToKeyCode = void 0;
|
|
5
2
|
/*
|
|
6
3
|
* New browser APIs have moved away from KeyboardEvent.keyCode to KeyboardEvent.Code.
|
|
7
4
|
* For details see: https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/keyCode#constants_for_keycode_value
|
|
8
5
|
* We still use old KeyboardEvent.keyCode integers in the UE C++ side, so we need a way to map the new
|
|
9
6
|
* string-based KeyboardEvent.Code to the old integers.
|
|
10
7
|
*/
|
|
11
|
-
|
|
8
|
+
export const CodeToKeyCode = Object.freeze({
|
|
12
9
|
Escape: 27,
|
|
13
10
|
Digit0: 48,
|
|
14
11
|
Digit1: 49,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyCodes.js","sourceRoot":"","sources":["../../../src/Inputs/KeyCodes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"KeyCodes.js","sourceRoot":"","sources":["../../../src/Inputs/KeyCodes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,12 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const Config_1 = require("../Config/Config");
|
|
8
|
-
const KeyCodes_1 = require("./KeyCodes");
|
|
2
|
+
import { SpecialKeyCodes } from './SpecialKeyCodes';
|
|
3
|
+
import { Logger } from '@epicgames-ps/lib-pixelstreamingcommon-ue5.5';
|
|
4
|
+
import { Flags } from '../Config/Config';
|
|
5
|
+
import { CodeToKeyCode } from './KeyCodes';
|
|
9
6
|
/**
|
|
10
7
|
* Handles the Keyboard Inputs for the document
|
|
11
8
|
*/
|
|
12
|
-
class KeyboardController {
|
|
9
|
+
export class KeyboardController {
|
|
13
10
|
constructor(streamMessageController, config, activeKeys) {
|
|
14
11
|
this.streamMessageController = streamMessageController;
|
|
15
12
|
this.config = config;
|
|
@@ -43,12 +40,12 @@ class KeyboardController {
|
|
|
43
40
|
activeKeys.push(keyCode);
|
|
44
41
|
// Backspace is not considered a keypress in JavaScript but we need it
|
|
45
42
|
// to be so characters may be deleted in a UE text entry field.
|
|
46
|
-
if (keyCode ===
|
|
43
|
+
if (keyCode === SpecialKeyCodes.backSpace) {
|
|
47
44
|
document.dispatchEvent(new KeyboardEvent('keypress', {
|
|
48
|
-
charCode:
|
|
45
|
+
charCode: SpecialKeyCodes.backSpace
|
|
49
46
|
}));
|
|
50
47
|
}
|
|
51
|
-
if (this.config.isFlagEnabled(
|
|
48
|
+
if (this.config.isFlagEnabled(Flags.SuppressBrowserKeys) && this.isKeyCodeBrowserKey(keyCode)) {
|
|
52
49
|
keyboardEvent.preventDefault();
|
|
53
50
|
}
|
|
54
51
|
}
|
|
@@ -59,7 +56,7 @@ class KeyboardController {
|
|
|
59
56
|
}
|
|
60
57
|
const toStreamerHandlers = this.streamMessageController.toStreamerHandlers;
|
|
61
58
|
toStreamerHandlers.get('KeyUp')([keyCode]);
|
|
62
|
-
if (this.config.isFlagEnabled(
|
|
59
|
+
if (this.config.isFlagEnabled(Flags.SuppressBrowserKeys) && this.isKeyCodeBrowserKey(keyCode)) {
|
|
63
60
|
keyboardEvent.preventDefault();
|
|
64
61
|
}
|
|
65
62
|
}
|
|
@@ -102,24 +99,24 @@ class KeyboardController {
|
|
|
102
99
|
if (!('keyCode' in keyboardEvent)) {
|
|
103
100
|
// Convert KeyboardEvent.code string into integer-based key code for backwards compatibility reasons.
|
|
104
101
|
const event = keyboardEvent;
|
|
105
|
-
if (event.code in
|
|
106
|
-
return
|
|
102
|
+
if (event.code in CodeToKeyCode) {
|
|
103
|
+
return CodeToKeyCode[event.code];
|
|
107
104
|
}
|
|
108
105
|
else {
|
|
109
|
-
|
|
106
|
+
Logger.Warning(`Keyboard code of ${event.code} is not supported in our mapping, ignoring this key.`);
|
|
110
107
|
return null;
|
|
111
108
|
}
|
|
112
109
|
}
|
|
113
110
|
// If we made it here KeyboardEvent.keyCode is still supported so we can safely use it.
|
|
114
|
-
if (keyboardEvent.keyCode ===
|
|
115
|
-
return
|
|
111
|
+
if (keyboardEvent.keyCode === SpecialKeyCodes.shift && keyboardEvent.code === 'ShiftRight') {
|
|
112
|
+
return SpecialKeyCodes.rightShift;
|
|
116
113
|
}
|
|
117
|
-
else if (keyboardEvent.keyCode ===
|
|
114
|
+
else if (keyboardEvent.keyCode === SpecialKeyCodes.control &&
|
|
118
115
|
keyboardEvent.code === 'ControlRight') {
|
|
119
|
-
return
|
|
116
|
+
return SpecialKeyCodes.rightControl;
|
|
120
117
|
}
|
|
121
|
-
else if (keyboardEvent.keyCode ===
|
|
122
|
-
return
|
|
118
|
+
else if (keyboardEvent.keyCode === SpecialKeyCodes.alt && keyboardEvent.code === 'AltRight') {
|
|
119
|
+
return SpecialKeyCodes.rightAlt;
|
|
123
120
|
}
|
|
124
121
|
else {
|
|
125
122
|
return keyboardEvent.keyCode;
|
|
@@ -134,5 +131,4 @@ class KeyboardController {
|
|
|
134
131
|
return (keyCode >= 112 && keyCode <= 123) || keyCode === 9;
|
|
135
132
|
}
|
|
136
133
|
}
|
|
137
|
-
exports.KeyboardController = KeyboardController;
|
|
138
134
|
//# sourceMappingURL=KeyboardController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"KeyboardController.js","sourceRoot":"","sources":["../../../src/Inputs/KeyboardController.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"KeyboardController.js","sourceRoot":"","sources":["../../../src/Inputs/KeyboardController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,10 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.MouseButtonsMask = exports.MouseButton = void 0;
|
|
5
2
|
/**
|
|
6
3
|
* Mouse Button Data
|
|
7
4
|
* {@link https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/button}
|
|
8
5
|
*/
|
|
9
|
-
class MouseButton {
|
|
6
|
+
export class MouseButton {
|
|
10
7
|
}
|
|
11
|
-
exports.MouseButton = MouseButton;
|
|
12
8
|
MouseButton.mainButton = 0; // Left button.
|
|
13
9
|
MouseButton.auxiliaryButton = 1; // Wheel button.
|
|
14
10
|
MouseButton.secondaryButton = 2; // Right button.
|
|
@@ -18,9 +14,8 @@ MouseButton.fifthButton = 4; // Browser Forward button.
|
|
|
18
14
|
* Mouse Button Mask Data
|
|
19
15
|
* {@link https://developer.mozilla.org/en-US/docs/Web/API/MouseEvent/buttons}
|
|
20
16
|
*/
|
|
21
|
-
class MouseButtonsMask {
|
|
17
|
+
export class MouseButtonsMask {
|
|
22
18
|
}
|
|
23
|
-
exports.MouseButtonsMask = MouseButtonsMask;
|
|
24
19
|
MouseButtonsMask.primaryButton = 1; // Left button.
|
|
25
20
|
MouseButtonsMask.secondaryButton = 2; // Right button.
|
|
26
21
|
MouseButtonsMask.auxiliaryButton = 4; // Wheel button.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MouseButtons.js","sourceRoot":"","sources":["../../../src/Inputs/MouseButtons.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MouseButtons.js","sourceRoot":"","sources":["../../../src/Inputs/MouseButtons.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAElD;;;GAGG;AACH,MAAM,OAAO,WAAW;;AACb,sBAAU,GAAG,CAAC,CAAC,CAAC,eAAe;AAC/B,2BAAe,GAAG,CAAC,CAAC,CAAC,gBAAgB;AACrC,2BAAe,GAAG,CAAC,CAAC,CAAC,gBAAgB;AACrC,wBAAY,GAAG,CAAC,CAAC,CAAC,uBAAuB;AACzC,uBAAW,GAAG,CAAC,CAAC,CAAC,0BAA0B;AAGtD;;;GAGG;AACH,MAAM,OAAO,gBAAgB;;AAClB,8BAAa,GAAG,CAAC,CAAC,CAAC,eAAe;AAClC,gCAAe,GAAG,CAAC,CAAC,CAAC,gBAAgB;AACrC,gCAAe,GAAG,CAAC,CAAC,CAAC,gBAAgB;AACrC,6BAAY,GAAG,CAAC,CAAC,CAAC,uBAAuB;AACzC,4BAAW,GAAG,EAAE,CAAC,CAAC,0BAA0B"}
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MouseController = void 0;
|
|
4
|
-
const MouseButtons_1 = require("./MouseButtons");
|
|
1
|
+
import { MouseButtonsMask, MouseButton } from './MouseButtons';
|
|
5
2
|
/**
|
|
6
3
|
* The base class for mouse controllers. Since there is a bunch of shared behaviour between locked and
|
|
7
4
|
* hover mouse controllers this is where that shared behaviour lives.
|
|
8
5
|
*/
|
|
9
|
-
class MouseController {
|
|
6
|
+
export class MouseController {
|
|
10
7
|
constructor(streamMessageController, videoPlayer, coordinateConverter, activeKeys) {
|
|
11
8
|
this.streamMessageController = streamMessageController;
|
|
12
9
|
this.coordinateConverter = coordinateConverter;
|
|
@@ -47,20 +44,20 @@ class MouseController {
|
|
|
47
44
|
}
|
|
48
45
|
releaseMouseButtons(buttons, X, Y) {
|
|
49
46
|
const coord = this.coordinateConverter.translateUnsigned(X, Y);
|
|
50
|
-
if (buttons &
|
|
51
|
-
this.sendMouseUp(
|
|
47
|
+
if (buttons & MouseButtonsMask.primaryButton) {
|
|
48
|
+
this.sendMouseUp(MouseButton.mainButton, coord.x, coord.y);
|
|
52
49
|
}
|
|
53
|
-
if (buttons &
|
|
54
|
-
this.sendMouseUp(
|
|
50
|
+
if (buttons & MouseButtonsMask.secondaryButton) {
|
|
51
|
+
this.sendMouseUp(MouseButton.secondaryButton, coord.x, coord.y);
|
|
55
52
|
}
|
|
56
|
-
if (buttons &
|
|
57
|
-
this.sendMouseUp(
|
|
53
|
+
if (buttons & MouseButtonsMask.auxiliaryButton) {
|
|
54
|
+
this.sendMouseUp(MouseButton.auxiliaryButton, coord.x, coord.y);
|
|
58
55
|
}
|
|
59
|
-
if (buttons &
|
|
60
|
-
this.sendMouseUp(
|
|
56
|
+
if (buttons & MouseButtonsMask.fourthButton) {
|
|
57
|
+
this.sendMouseUp(MouseButton.fourthButton, coord.x, coord.y);
|
|
61
58
|
}
|
|
62
|
-
if (buttons &
|
|
63
|
-
this.sendMouseUp(
|
|
59
|
+
if (buttons & MouseButtonsMask.fifthButton) {
|
|
60
|
+
this.sendMouseUp(MouseButton.fifthButton, coord.x, coord.y);
|
|
64
61
|
}
|
|
65
62
|
}
|
|
66
63
|
pressMouseButtons(buttons, X, Y) {
|
|
@@ -68,20 +65,20 @@ class MouseController {
|
|
|
68
65
|
return;
|
|
69
66
|
}
|
|
70
67
|
const coord = this.coordinateConverter.translateUnsigned(X, Y);
|
|
71
|
-
if (buttons &
|
|
72
|
-
this.sendMouseDown(
|
|
68
|
+
if (buttons & MouseButtonsMask.primaryButton) {
|
|
69
|
+
this.sendMouseDown(MouseButton.mainButton, coord.x, coord.y);
|
|
73
70
|
}
|
|
74
|
-
if (buttons &
|
|
75
|
-
this.sendMouseDown(
|
|
71
|
+
if (buttons & MouseButtonsMask.secondaryButton) {
|
|
72
|
+
this.sendMouseDown(MouseButton.secondaryButton, coord.x, coord.y);
|
|
76
73
|
}
|
|
77
|
-
if (buttons &
|
|
78
|
-
this.sendMouseDown(
|
|
74
|
+
if (buttons & MouseButtonsMask.auxiliaryButton) {
|
|
75
|
+
this.sendMouseDown(MouseButton.auxiliaryButton, coord.x, coord.y);
|
|
79
76
|
}
|
|
80
|
-
if (buttons &
|
|
81
|
-
this.sendMouseDown(
|
|
77
|
+
if (buttons & MouseButtonsMask.fourthButton) {
|
|
78
|
+
this.sendMouseDown(MouseButton.fourthButton, coord.x, coord.y);
|
|
82
79
|
}
|
|
83
|
-
if (buttons &
|
|
84
|
-
this.sendMouseDown(
|
|
80
|
+
if (buttons & MouseButtonsMask.fifthButton) {
|
|
81
|
+
this.sendMouseDown(MouseButton.fifthButton, coord.x, coord.y);
|
|
85
82
|
}
|
|
86
83
|
}
|
|
87
84
|
sendMouseDown(button, X, Y) {
|
|
@@ -94,5 +91,4 @@ class MouseController {
|
|
|
94
91
|
(_a = this.streamMessageController.toStreamerHandlers.get('MouseUp')) === null || _a === void 0 ? void 0 : _a([button, coord.x, coord.y]);
|
|
95
92
|
}
|
|
96
93
|
}
|
|
97
|
-
exports.MouseController = MouseController;
|
|
98
94
|
//# sourceMappingURL=MouseController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MouseController.js","sourceRoot":"","sources":["../../../src/Inputs/MouseController.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MouseController.js","sourceRoot":"","sources":["../../../src/Inputs/MouseController.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MouseControllerHovering = void 0;
|
|
4
|
-
const MouseController_1 = require("./MouseController");
|
|
1
|
+
import { MouseController } from './MouseController';
|
|
5
2
|
/**
|
|
6
3
|
* A mouse controller that allows the mouse to freely float over the video document.
|
|
7
4
|
*/
|
|
8
|
-
class MouseControllerHovering extends
|
|
5
|
+
export class MouseControllerHovering extends MouseController {
|
|
9
6
|
constructor(streamMessageController, videoPlayer, coordinateConverter, activeKeys) {
|
|
10
7
|
super(streamMessageController, videoPlayer, coordinateConverter, activeKeys);
|
|
11
8
|
this.videoElementParent = videoPlayer.getVideoParentElement();
|
|
@@ -90,5 +87,4 @@ class MouseControllerHovering extends MouseController_1.MouseController {
|
|
|
90
87
|
this.streamMessageController.toStreamerHandlers.get('MouseDouble')([event.button, coord.x, coord.y]);
|
|
91
88
|
}
|
|
92
89
|
}
|
|
93
|
-
exports.MouseControllerHovering = MouseControllerHovering;
|
|
94
90
|
//# sourceMappingURL=MouseControllerHovering.js.map
|