Merge remote-tracking branch 'thesystemcoder168/block_rumble_functionality' into PR886

This commit is contained in:
Yukino Song
2025-07-14 01:28:28 +08:00
7 changed files with 23 additions and 0 deletions

View File

@@ -571,6 +571,7 @@ namespace config {
true, // high resolution scrolling
true, // native pen/touch support
false, // enable input only mode
true, // enable_rumble_messages_to_controllers
};
sunshine_t sunshine {
@@ -1286,6 +1287,7 @@ namespace config {
bool_f(vars, "envvar_compatibility_mode", sunshine.envvar_compatibility_mode);
bool_f(vars, "notify_pre_releases", sunshine.notify_pre_releases);
bool_f(vars, "legacy_ordering", sunshine.legacy_ordering);
bool_f(vars, "enable_rumble_messages_to_controllers", input.enable_rumble_messages_to_controllers);
int port = sunshine.port;
int_between_f(vars, "port"s, port, {1024 + nvhttp::PORT_HTTPS, 65535 - rtsp_stream::RTSP_SETUP_PORT});

View File

@@ -211,6 +211,7 @@ namespace config {
bool native_pen_touch;
bool enable_input_only_mode;
bool enable_rumble_messages_to_controllers;
};
namespace flag {

View File

@@ -327,6 +327,11 @@ namespace platf {
* @param smallMotor The small motor.
*/
void rumble(target_t::pointer target, std::uint8_t largeMotor, std::uint8_t smallMotor) {
// config::input.enable_rumble_messages_to_controllers - Default is true so ignore rumble messages when false
if( config::input.enable_rumble_messages_to_controllers == false ) {
// Do nothing; just return
return;
}
for (int x = 0; x < gamepads.size(); ++x) {
auto &gamepad = gamepads[x];

View File

@@ -6,6 +6,7 @@
#include <stddef.h> // workaround for type_t error in miniupnpc 2.3.3, see https://github.com/miniupnp/miniupnp/commit/e263ab6f56c382e10fed31347ec68095d691a0e8
// lib includes
#include <cstddef> // Needed to compile size_t in Windows
#include <miniupnpc/miniupnpc.h>
#include <miniupnpc/upnpcommands.h>

View File

@@ -176,6 +176,7 @@
"high_resolution_scrolling": "enabled",
"native_pen_touch": "enabled",
"enable_input_only_mode": "disabled",
"enable_rumble_messages_to_controllers": "enabled",
"keybindings": "[0x10,0xA0,0x11,0xA2,0x12,0xA4]", // todo: add this to UI
},
},

View File

@@ -177,6 +177,17 @@ const config = ref(props.config)
v-model="config.enable_input_only_mode"
default="false"
></Checkbox>
<!-- Enable Rumble Messages to Controllers -->
<hr>
<Checkbox v-if="platform === 'windows'"
class="mb-3"
id="enable_rumble_messages_to_controllers"
locale-prefix="config"
v-model="config.enable_rumble_messages_to_controllers"
default="true"
></Checkbox>
</div>
</template>

View File

@@ -255,6 +255,8 @@
"enable_discovery_desc": "When disabled, you'll need to manually enter host IP on the client to pair.",
"enable_input_only_mode": "Enable Input Only Mode",
"enable_input_only_mode_desc": "Add an Input Only app entry. When enabled, the app list will only show the current running app and the Input Only entry when streaming. The Input Only entry will not receive any image or audio. Useful for operating the desktop on TV or connecting peripherals which the TV doesn't support with a phone.",
"enable_rumble_messages_to_controllers": "Enable Rumble Messages to Controllers",
"enable_rumble_messages_to_controllers_desc": "Enable Rumble Messages to Controllers",
"enable_pairing": "Enable Pairing",
"enable_pairing_desc": "Enable pairing for the Moonlight client. This allows the client to authenticate with the host and establish a secure connection.",
"encoder": "Force a Specific Encoder",