52 lines
2.3 KiB
Diff
52 lines
2.3 KiB
Diff
|
diff --git a/src/main.cpp b/src/main.cpp
|
||
|
index 119e043..6c46d97 100644
|
||
|
--- a/src/main.cpp
|
||
|
+++ b/src/main.cpp
|
||
|
@@ -148,6 +148,8 @@ const struct option *gamescope_options = (struct option[]){
|
||
|
{ "reshade-effect", required_argument, nullptr, 0 },
|
||
|
{ "reshade-technique-idx", required_argument, nullptr, 0 },
|
||
|
|
||
|
+ { "disable-touch-click", no_argument, nullptr, 0 },
|
||
|
+
|
||
|
// Steam Deck options
|
||
|
{ "mura-map", required_argument, nullptr, 0 },
|
||
|
|
||
|
@@ -193,6 +195,7 @@ const char usage[] =
|
||
|
" -e, --steam enable Steam integration\n"
|
||
|
" --bypass-steam-resolution bypass Steam's default 720p/800p default resolution\n"
|
||
|
" --touch-gestures enable touch gestures for Steam menus\n"
|
||
|
+ " --disable-touch-click disable touchscreen tap acting as a click\n"
|
||
|
" --xwayland-count create N xwayland servers\n"
|
||
|
" --prefer-vk-device prefer Vulkan device for compositing (ex: 1002:7300)\n"
|
||
|
" --force-orientation rotate the internal display (left, right, normal, upsidedown)\n"
|
||
|
diff --git a/src/steamcompmgr.cpp b/src/steamcompmgr.cpp
|
||
|
index 92bf617..d7498e5 100644
|
||
|
--- a/src/steamcompmgr.cpp
|
||
|
+++ b/src/steamcompmgr.cpp
|
||
|
@@ -347,6 +347,7 @@ bool g_bHDRItmEnable = false;
|
||
|
int g_nCurrentRefreshRate_CachedValue = 0;
|
||
|
gamescope::ConVar<bool> cv_bypass_steam_resolution{ "bypass_steam_resolution", false, "Workaround the 720p/800p limits Steam uses for games" };
|
||
|
|
||
|
+gamescope::ConVar<bool> cv_disable_touch_click{ "disable_touch_click", false, "Prevents touchscreen taps acting as clicks" };
|
||
|
|
||
|
static void
|
||
|
update_color_mgmt()
|
||
|
@@ -5128,7 +5129,7 @@ handle_property_notify(xwayland_ctx_t *ctx, XPropertyEvent *ev)
|
||
|
MakeFocusDirty();
|
||
|
}
|
||
|
}
|
||
|
- if (ev->atom == ctx->atoms.steamTouchClickModeAtom )
|
||
|
+ if (ev->atom == ctx->atoms.steamTouchClickModeAtom && !cv_disable_touch_click)
|
||
|
{
|
||
|
gamescope::cv_touch_click_mode = (gamescope::TouchClickMode) get_prop(ctx, ctx->root, ctx->atoms.steamTouchClickModeAtom, 0u );
|
||
|
}
|
||
|
@@ -7301,6 +7302,8 @@ steamcompmgr_main(int argc, char **argv)
|
||
|
g_reshade_technique_idx = atoi(optarg);
|
||
|
} else if (strcmp(opt_name, "mura-map") == 0) {
|
||
|
set_mura_overlay(optarg);
|
||
|
+ } else if (strcmp(opt_name, "disable-touch-click") == 0) {
|
||
|
+ cv_disable_touch_click = true;
|
||
|
}
|
||
|
break;
|
||
|
case '?':
|