libfreerdp-core: added more fine-tuned performance flag options
This commit is contained in:
parent
120ab2f681
commit
338359eb36
@ -275,6 +275,10 @@ struct rdp_settings
|
||||
uint8 received_caps[32];
|
||||
uint8 order_support[32];
|
||||
boolean surface_commands;
|
||||
boolean disable_wallpaper;
|
||||
boolean disable_full_window_drag;
|
||||
boolean disable_menu_animations;
|
||||
boolean disable_theming;
|
||||
uint32 multifrag_max_request_size;
|
||||
|
||||
/* Certificate */
|
||||
|
@ -663,7 +663,7 @@ void gcc_write_client_core_data(STREAM* s, rdpSettings *settings)
|
||||
connectionType = 0;
|
||||
earlyCapabilityFlags = RNS_UD_CS_SUPPORT_ERRINFO_PDU;
|
||||
|
||||
if ((settings->performance_flags & ~PERF_FLAGS_LAN) == PERF_FLAG_NONE)
|
||||
if (settings->rfx_codec)
|
||||
{
|
||||
earlyCapabilityFlags |= RNS_UD_CS_VALID_CONNECTION_TYPE;
|
||||
connectionType = CONNECTION_TYPE_LAN;
|
||||
|
@ -78,8 +78,6 @@
|
||||
#define PERF_ENABLE_FONT_SMOOTHING 0x00000080
|
||||
#define PERF_ENABLE_DESKTOP_COMPOSITION 0x00000100
|
||||
|
||||
#define PERF_FLAGS_LAN (PERF_ENABLE_FONT_SMOOTHING | PERF_ENABLE_DESKTOP_COMPOSITION)
|
||||
|
||||
/* Connection Types */
|
||||
#define CONNECTION_TYPE_MODEM 0x01
|
||||
#define CONNECTION_TYPE_BROADBAND_LOW 0x02
|
||||
|
@ -97,6 +97,10 @@ rdpSettings* settings_new(void* instance)
|
||||
settings->large_pointer = true;
|
||||
settings->pointer_cache_size = 32;
|
||||
settings->sound_beeps = true;
|
||||
settings->disable_wallpaper = false;
|
||||
settings->disable_full_window_drag = false;
|
||||
settings->disable_menu_animations = false;
|
||||
settings->disable_theming = false;
|
||||
|
||||
settings->draw_gdi_plus = false;
|
||||
|
||||
|
@ -89,7 +89,11 @@ int freerdp_parse_args(rdpSettings* settings, int argc, char** argv,
|
||||
" --rfx: enable RemoteFX\n"
|
||||
" --rfx-mode: RemoteFX operational flags (v[ideo], i[mage]), default is video\n"
|
||||
" --nsc: enable NSCodec (experimental)\n"
|
||||
" --disable-wallpaper: disables wallpaper\n"
|
||||
" --composition: enable desktop composition\n"
|
||||
" --disable-full-window-drag: disables full window drag\n"
|
||||
" --disable-menu-animations: disables menu animations\n"
|
||||
" --disable-theming: disables theming\n"
|
||||
" --no-rdp: disable Standard RDP encryption\n"
|
||||
" --no-tls: disable TLS encryption\n"
|
||||
" --no-nla: disable network level authentication\n"
|
||||
@ -388,6 +392,22 @@ int freerdp_parse_args(rdpSettings* settings, int argc, char** argv,
|
||||
{
|
||||
settings->smooth_fonts = true;
|
||||
}
|
||||
else if (strcmp("--disable-wallpaper", argv[index]) == 0)
|
||||
{
|
||||
settings->disable_wallpaper = true;
|
||||
}
|
||||
else if (strcmp("--disable-full-window-drag", argv[index]) == 0)
|
||||
{
|
||||
settings->disable_full_window_drag = true;
|
||||
}
|
||||
else if (strcmp("--disable-menu-animations", argv[index]) == 0)
|
||||
{
|
||||
settings->disable_menu_animations = true;
|
||||
}
|
||||
else if (strcmp("--disable-theming", argv[index]) == 0)
|
||||
{
|
||||
settings->disable_theming = true;
|
||||
}
|
||||
else if (strcmp("--composition", argv[index]) == 0)
|
||||
{
|
||||
settings->desktop_composition = true;
|
||||
@ -614,6 +634,18 @@ int freerdp_parse_args(rdpSettings* settings, int argc, char** argv,
|
||||
if (settings->desktop_composition)
|
||||
settings->performance_flags |= PERF_ENABLE_DESKTOP_COMPOSITION;
|
||||
|
||||
if (settings->disable_wallpaper)
|
||||
settings->performance_flags |= PERF_DISABLE_WALLPAPER;
|
||||
|
||||
if (settings->disable_full_window_drag)
|
||||
settings->performance_flags |= PERF_DISABLE_FULLWINDOWDRAG;
|
||||
|
||||
if (settings->disable_menu_animations)
|
||||
settings->performance_flags |= PERF_DISABLE_MENUANIMATIONS;
|
||||
|
||||
if (settings->disable_theming)
|
||||
settings->performance_flags |= PERF_DISABLE_THEMING;
|
||||
|
||||
return index;
|
||||
}
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user