mirror of
https://github.com/Genymobile/scrcpy
synced 2025-08-30 22:05:12 +00:00
Forward mouse hover events
Also add an option --no-mouse-hover to get the old behavior. Fixes #2743 <https://github.com/Genymobile/scrcpy/issues/2743> Fixes #3070 <https://github.com/Genymobile/scrcpy/issues/3070> PR #5039 <https://github.com/Genymobile/scrcpy/pull/5039>
This commit is contained in:
@@ -99,6 +99,7 @@ enum {
|
||||
OPT_HID_MOUSE_DEPRECATED,
|
||||
OPT_NO_WINDOW,
|
||||
OPT_MOUSE_BIND,
|
||||
OPT_NO_MOUSE_HOVER,
|
||||
};
|
||||
|
||||
struct sc_option {
|
||||
@@ -568,6 +569,12 @@ static const struct sc_option options[] = {
|
||||
"mipmaps are automatically generated to improve downscaling "
|
||||
"quality. This option disables the generation of mipmaps.",
|
||||
},
|
||||
{
|
||||
.longopt_id = OPT_NO_MOUSE_HOVER,
|
||||
.longopt = "no-mouse-hover",
|
||||
.text = "Do not forward mouse hover (mouse motion without any clicks) "
|
||||
"events.",
|
||||
},
|
||||
{
|
||||
.longopt_id = OPT_NO_POWER_ON,
|
||||
.longopt = "no-power-on",
|
||||
@@ -2198,6 +2205,9 @@ parse_args_with_getopt(struct scrcpy_cli_args *args, int argc, char *argv[],
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case OPT_NO_MOUSE_HOVER:
|
||||
opts->mouse_hover = false;
|
||||
break;
|
||||
case OPT_HID_MOUSE_DEPRECATED:
|
||||
LOGE("--hid-mouse has been removed, use --mouse=aoa or "
|
||||
"--mouse=uhid instead.");
|
||||
@@ -2758,6 +2768,12 @@ parse_args_with_getopt(struct scrcpy_cli_args *args, int argc, char *argv[],
|
||||
}
|
||||
}
|
||||
|
||||
if (opts->mouse_input_mode != SC_MOUSE_INPUT_MODE_SDK
|
||||
&& !opts->mouse_hover) {
|
||||
LOGE("--no-mouse-over is specific to --mouse=sdk");
|
||||
return false;
|
||||
}
|
||||
|
||||
if ((opts->tunnel_host || opts->tunnel_port) && !opts->force_adb_forward) {
|
||||
LOGI("Tunnel host/port is set, "
|
||||
"--force-adb-forward automatically enabled.");
|
||||
|
Reference in New Issue
Block a user