# HG changeset patch # User Mads Kiilerich <m...@kiilerich.com> # Date 1300226301 -3600 # Node ID 838054c342230c59aba51518ec6a6b46872d0341 # Parent 2760f5e8d4b601f360ac76ac2e74be058be27873 wfreerdp: fullscreen toggling with Ctrl+Alt+Enter/Break
diff --git a/win/wfreerdp/wf_event.cpp b/win/wfreerdp/wf_event.cpp --- a/win/wfreerdp/wf_event.cpp +++ b/win/wfreerdp/wf_event.cpp @@ -21,6 +21,7 @@ #include <freerdp/freerdp.h> #include "wf_types.h" #include "wf_event.h" +#include "wf_win.h" extern HCURSOR g_default_cursor; extern HWND g_hWnd; @@ -50,6 +51,18 @@ DEBUG_KBD("wParam %04X scanCode %04X flags %02X vkCode %02X\n", wParam, scanCode, flags, p->vkCode); + if (wfi->fs_toggle && + ((p->vkCode == VK_RETURN) || (p->vkCode == VK_CANCEL)) && + (GetAsyncKeyState(VK_CONTROL) & 0x8000) && + (GetAsyncKeyState(VK_MENU) & 0x8000)) + { + if (wParam == WM_KEYDOWN) + { + wf_toggle_fullscreen(wfi); + } + return 1; + } + if ((scanCode == 0x36) && (flags & 1)) { DEBUG_KBD("hack: sending extended right shift (x36) as plain left shift (0x2a)\n"); diff --git a/win/wfreerdp/wf_win.cpp b/win/wfreerdp/wf_win.cpp --- a/win/wfreerdp/wf_win.cpp +++ b/win/wfreerdp/wf_win.cpp @@ -1197,6 +1197,15 @@ return 0; } +void +wf_toggle_fullscreen(wfInfo * wfi) +{ + ShowWindow(wfi->hwnd, SW_HIDE); + wfi->fullscreen = !wfi->fullscreen; + wf_post_connect(wfi); + SetForegroundWindow(wfi->hwnd); +} + int wf_update_window(wfInfo * wfi) { diff --git a/win/wfreerdp/wf_win.h b/win/wfreerdp/wf_win.h --- a/win/wfreerdp/wf_win.h +++ b/win/wfreerdp/wf_win.h @@ -29,6 +29,8 @@ int wf_update_window(wfInfo * wfi); void +wf_toggle_fullscreen(wfInfo * wfi); +void wf_uninit(wfInfo * wfi); #endif ------------------------------------------------------------------------------ Colocation vs. Managed Hosting A question and answer guide to determining the best fit for your organization - today and in the future. http://p.sf.net/sfu/internap-sfd2d _______________________________________________ Freerdp-devel mailing list Freerdp-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freerdp-devel