mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-15 00:44:19 +09:00
[settings] add HasQoeEvent
This commit is contained in:
@@ -859,6 +859,7 @@ extern "C"
|
||||
#define FreeRDP_SuspendInput (2636)
|
||||
#define FreeRDP_KeyboardPipeName (2637)
|
||||
#define FreeRDP_HasRelativeMouseEvent (2638)
|
||||
#define FreeRDP_HasQoeEvent (2639)
|
||||
#define FreeRDP_BrushSupportLevel (2688)
|
||||
#define FreeRDP_GlyphSupportLevel (2752)
|
||||
#define FreeRDP_GlyphCache (2753)
|
||||
@@ -1490,7 +1491,8 @@ extern "C"
|
||||
ALIGN64 BOOL SuspendInput; /* 2636 */
|
||||
ALIGN64 char* KeyboardPipeName; /* 2637 */
|
||||
ALIGN64 BOOL HasRelativeMouseEvent; /* 2638 */
|
||||
UINT64 padding2688[2688 - 2639]; /* 2639 */
|
||||
ALIGN64 BOOL HasQoeEvent; /* 2639 */
|
||||
UINT64 padding2688[2688 - 2640]; /* 2640 */
|
||||
|
||||
/* Brush Capabilities */
|
||||
ALIGN64 UINT32 BrushSupportLevel; /* 2688 */
|
||||
|
||||
@@ -303,6 +303,9 @@ BOOL freerdp_settings_get_bool(const rdpSettings* settings, size_t id)
|
||||
case FreeRDP_HasMonitorAttributes:
|
||||
return settings->HasMonitorAttributes;
|
||||
|
||||
case FreeRDP_HasQoeEvent:
|
||||
return settings->HasQoeEvent;
|
||||
|
||||
case FreeRDP_HasRelativeMouseEvent:
|
||||
return settings->HasRelativeMouseEvent;
|
||||
|
||||
@@ -963,6 +966,10 @@ BOOL freerdp_settings_set_bool(rdpSettings* settings, size_t id, BOOL val)
|
||||
settings->HasMonitorAttributes = cnv.c;
|
||||
break;
|
||||
|
||||
case FreeRDP_HasQoeEvent:
|
||||
settings->HasQoeEvent = cnv.c;
|
||||
break;
|
||||
|
||||
case FreeRDP_HasRelativeMouseEvent:
|
||||
settings->HasRelativeMouseEvent = cnv.c;
|
||||
break;
|
||||
|
||||
@@ -129,6 +129,7 @@ static const struct settings_str_entry settings_map[] = {
|
||||
{ FreeRDP_HasExtendedMouseEvent, FREERDP_SETTINGS_TYPE_BOOL, "FreeRDP_HasExtendedMouseEvent" },
|
||||
{ FreeRDP_HasHorizontalWheel, FREERDP_SETTINGS_TYPE_BOOL, "FreeRDP_HasHorizontalWheel" },
|
||||
{ FreeRDP_HasMonitorAttributes, FREERDP_SETTINGS_TYPE_BOOL, "FreeRDP_HasMonitorAttributes" },
|
||||
{ FreeRDP_HasQoeEvent, FREERDP_SETTINGS_TYPE_BOOL, "FreeRDP_HasQoeEvent" },
|
||||
{ FreeRDP_HasRelativeMouseEvent, FREERDP_SETTINGS_TYPE_BOOL, "FreeRDP_HasRelativeMouseEvent" },
|
||||
{ FreeRDP_HiDefRemoteApp, FREERDP_SETTINGS_TYPE_BOOL, "FreeRDP_HiDefRemoteApp" },
|
||||
{ FreeRDP_IPv6Enabled, FREERDP_SETTINGS_TYPE_BOOL, "FreeRDP_IPv6Enabled" },
|
||||
|
||||
@@ -1351,6 +1351,10 @@ static BOOL rdp_apply_input_capability_set(rdpSettings* settings, const rdpSetti
|
||||
}
|
||||
if (settings->HasExtendedMouseEvent)
|
||||
settings->HasExtendedMouseEvent = src->HasExtendedMouseEvent;
|
||||
if (settings->HasRelativeMouseEvent)
|
||||
settings->HasRelativeMouseEvent = src->HasRelativeMouseEvent;
|
||||
if (freerdp_settings_get_bool(settings, FreeRDP_HasQoeEvent))
|
||||
settings->HasQoeEvent = freerdp_settings_get_bool(settings, FreeRDP_HasQoeEvent);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
@@ -1404,9 +1408,15 @@ static BOOL rdp_read_input_capability_set(wStream* s, rdpSettings* settings)
|
||||
if (!freerdp_settings_set_bool(settings, FreeRDP_UnicodeInput,
|
||||
(inputFlags & INPUT_FLAG_UNICODE) ? TRUE : FALSE))
|
||||
return FALSE;
|
||||
if (!freerdp_settings_set_bool(settings, FreeRDP_HasRelativeMouseEvent,
|
||||
(inputFlags & INPUT_FLAG_MOUSE_RELATIVE) ? TRUE : FALSE))
|
||||
return FALSE;
|
||||
if (!freerdp_settings_set_bool(settings, FreeRDP_HasExtendedMouseEvent,
|
||||
(inputFlags & INPUT_FLAG_MOUSEX) ? TRUE : FALSE))
|
||||
return FALSE;
|
||||
if (!freerdp_settings_set_bool(settings, FreeRDP_HasQoeEvent,
|
||||
(inputFlags & TS_INPUT_FLAG_QOE_TIMESTAMPS) ? TRUE : FALSE))
|
||||
return FALSE;
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
@@ -1431,12 +1441,18 @@ static BOOL rdp_write_input_capability_set(wStream* s, const rdpSettings* settin
|
||||
inputFlags |= INPUT_FLAG_FASTPATH_INPUT2;
|
||||
}
|
||||
|
||||
if (settings->HasHorizontalWheel)
|
||||
if (freerdp_settings_get_bool(settings, FreeRDP_HasRelativeMouseEvent))
|
||||
inputFlags |= INPUT_FLAG_MOUSE_RELATIVE;
|
||||
|
||||
if (freerdp_settings_get_bool(settings, FreeRDP_HasHorizontalWheel))
|
||||
inputFlags |= TS_INPUT_FLAG_MOUSE_HWHEEL;
|
||||
|
||||
if (freerdp_settings_get_bool(settings, FreeRDP_UnicodeInput))
|
||||
inputFlags |= INPUT_FLAG_UNICODE;
|
||||
|
||||
if (freerdp_settings_get_bool(settings, FreeRDP_HasQoeEvent))
|
||||
inputFlags |= TS_INPUT_FLAG_QOE_TIMESTAMPS;
|
||||
|
||||
if (settings->HasExtendedMouseEvent)
|
||||
inputFlags |= INPUT_FLAG_MOUSEX;
|
||||
|
||||
|
||||
@@ -366,6 +366,7 @@ rdpSettings* freerdp_settings_new(DWORD flags)
|
||||
if (!freerdp_settings_set_bool(settings, FreeRDP_UnicodeInput, TRUE) ||
|
||||
!freerdp_settings_set_bool(settings, FreeRDP_HasHorizontalWheel, TRUE) ||
|
||||
!freerdp_settings_set_bool(settings, FreeRDP_HasExtendedMouseEvent, TRUE) ||
|
||||
!freerdp_settings_set_bool(settings, FreeRDP_HasQoeEvent, TRUE) ||
|
||||
!freerdp_settings_set_bool(settings, FreeRDP_HasRelativeMouseEvent, TRUE) ||
|
||||
!freerdp_settings_set_bool(settings, FreeRDP_HiDefRemoteApp, TRUE) ||
|
||||
!freerdp_settings_set_uint32(
|
||||
|
||||
@@ -85,6 +85,7 @@ static const size_t bool_list_indices[] = {
|
||||
FreeRDP_HasExtendedMouseEvent,
|
||||
FreeRDP_HasHorizontalWheel,
|
||||
FreeRDP_HasMonitorAttributes,
|
||||
FreeRDP_HasQoeEvent,
|
||||
FreeRDP_HasRelativeMouseEvent,
|
||||
FreeRDP_HiDefRemoteApp,
|
||||
FreeRDP_IPv6Enabled,
|
||||
|
||||
Reference in New Issue
Block a user