+9
-1
packages/core-extensions/src/nativeFixes/host.ts
+9
-1
packages/core-extensions/src/nativeFixes/host.ts
···
29
app.commandLine.appendSwitch("disable-background-timer-throttling");
30
}
31
32
if (process.platform === "linux") {
33
if (moonlightHost.getConfigOption<boolean>("nativeFixes", "linuxAutoscroll") ?? false) {
34
app.commandLine.appendSwitch("enable-blink-features", "MiddleClickAutoscroll");
···
43
// hardware acceleration is disabled
44
const noAccel = app.commandLine.hasSwitch("disable-gpu-compositing");
45
if ((moonlightHost.getConfigOption<boolean>("nativeFixes", "vaapi") ?? true) && !noAccel) {
46
-
if (process.platform === "linux")
47
// These will eventually be renamed https://source.chromium.org/chromium/chromium/src/+/5482210941a94d70406b8da962426e4faca7fce4
48
enabledFeatures.push("VaapiVideoEncoder", "VaapiVideoDecoder", "VaapiVideoDecodeLinuxGL");
49
}
50
51
app.commandLine.appendSwitch("enable-features", [...new Set(enabledFeatures)].join(","));
···
29
app.commandLine.appendSwitch("disable-background-timer-throttling");
30
}
31
32
+
if (moonlightHost.getConfigOption<boolean>("nativeFixes", "vulkan") ?? false) {
33
+
enabledFeatures.push("Vulkan", "DefaultANGLEVulkan", "VulkanFromANGLE");
34
+
}
35
+
36
if (process.platform === "linux") {
37
if (moonlightHost.getConfigOption<boolean>("nativeFixes", "linuxAutoscroll") ?? false) {
38
app.commandLine.appendSwitch("enable-blink-features", "MiddleClickAutoscroll");
···
47
// hardware acceleration is disabled
48
const noAccel = app.commandLine.hasSwitch("disable-gpu-compositing");
49
if ((moonlightHost.getConfigOption<boolean>("nativeFixes", "vaapi") ?? true) && !noAccel) {
50
+
if (process.platform === "linux") {
51
// These will eventually be renamed https://source.chromium.org/chromium/chromium/src/+/5482210941a94d70406b8da962426e4faca7fce4
52
enabledFeatures.push("VaapiVideoEncoder", "VaapiVideoDecoder", "VaapiVideoDecodeLinuxGL");
53
+
54
+
if (moonlightHost.getConfigOption<boolean>("nativeFixes", "vaapiIgnoreDriverChecks") ?? false)
55
+
enabledFeatures.push("VaapiIgnoreDriverChecks");
56
+
}
57
}
58
59
app.commandLine.appendSwitch("enable-features", [...new Set(enabledFeatures)].join(","));
+14
packages/core-extensions/src/nativeFixes/manifest.json
+14
packages/core-extensions/src/nativeFixes/manifest.json
···
23
"type": "boolean",
24
"default": true
25
},
26
"linuxAutoscroll": {
27
"advice": "restart",
28
"displayName": "Enable middle click autoscroll on Linux",
···
43
"description": "Provides hardware accelerated video encode and decode. Has no effect on other operating systems",
44
"type": "boolean",
45
"default": true
46
},
47
"linuxUpdater": {
48
"advice": "restart",
···
23
"type": "boolean",
24
"default": true
25
},
26
+
"vulkan": {
27
+
"advice": "restart",
28
+
"displayName": "Enable Vulkan renderer",
29
+
"description": "Uses the Vulkan backend for rendering",
30
+
"type": "boolean",
31
+
"default": false
32
+
},
33
"linuxAutoscroll": {
34
"advice": "restart",
35
"displayName": "Enable middle click autoscroll on Linux",
···
50
"description": "Provides hardware accelerated video encode and decode. Has no effect on other operating systems",
51
"type": "boolean",
52
"default": true
53
+
},
54
+
"vaapiIgnoreDriverChecks": {
55
+
"advice": "restart",
56
+
"displayName": "Ignore VAAPI driver checks on Linux",
57
+
"description": "Forces hardware video acceleration on some graphics drivers at the cost of stability. Has no effect on other operating systems",
58
+
"type": "boolean",
59
+
"default": false
60
},
61
"linuxUpdater": {
62
"advice": "restart",