diff --git a/client/X11/xfreerdp.c b/client/X11/xfreerdp.c index dc7aba819..b869922f5 100644 --- a/client/X11/xfreerdp.c +++ b/client/X11/xfreerdp.c @@ -753,7 +753,7 @@ BOOL xf_pre_connect(freerdp* instance) xfi->decorations = settings->Decorations; xfi->fullscreen = settings->Fullscreen; xfi->grab_keyboard = settings->GrabKeyboard; - xfi->fullscreen_toggle = TRUE; + xfi->fullscreen_toggle = settings->ToggleFullscreen; xfi->sw_gdi = settings->SoftwareGdi; xfi->parent_window = (Window) settings->ParentWindowId; diff --git a/client/common/cmdline.c b/client/common/cmdline.c index 8233204fb..dc3eefe0b 100644 --- a/client/common/cmdline.c +++ b/client/common/cmdline.c @@ -112,6 +112,7 @@ COMMAND_LINE_ARGUMENT_A args[] = { "authentication", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "authentication (hack!)" }, { "encryption", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "encryption (hack!)" }, { "grab-keyboard", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "grab keyboard" }, + { "toggle-fullscreen", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "Alt+Ctrl+Enter toggles fullscreen" }, { "mouse-motion", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "mouse-motion" }, { "parent-window", COMMAND_LINE_VALUE_REQUIRED, "", NULL, NULL, -1, NULL, "Parent window id" }, { "bitmap-cache", COMMAND_LINE_VALUE_BOOL, NULL, BoolValueTrue, NULL, -1, NULL, "bitmap cache" }, @@ -1438,6 +1439,10 @@ int freerdp_client_parse_command_line_arguments(int argc, char** argv, rdpSettin { settings->GrabKeyboard = arg->Value ? TRUE : FALSE; } + CommandLineSwitchCase(arg, "toggle-fullscreen") + { + settings->ToggleFullscreen = arg->Value ? TRUE : FALSE; + } CommandLineSwitchCase(arg, "mouse-motion") { settings->MouseMotion = arg->Value ? TRUE : FALSE; diff --git a/include/freerdp/settings.h b/include/freerdp/settings.h index 39c9bcb5f..de4ac976f 100644 --- a/include/freerdp/settings.h +++ b/include/freerdp/settings.h @@ -681,7 +681,8 @@ struct rdp_settings ALIGN64 BOOL AsyncInput; /* 1544 */ ALIGN64 BOOL AsyncUpdate; /* 1545 */ ALIGN64 BOOL AsyncChannels; /* 1546 */ - UINT64 padding1600[1600 - 1547]; /* 1547 */ + ALIGN64 BOOL ToggleFullscreen; /* 1547 */ + UINT64 padding1600[1600 - 1548]; /* 1548 */ /* Miscellaneous */ ALIGN64 BOOL SoftwareGdi; /* 1601 */