Skip to content

Commit

Permalink
steamclient: Fake Shift + Tab key release on overlay activation.
Browse files Browse the repository at this point in the history
  • Loading branch information
rbernon authored and aeikum committed Jan 14, 2021
1 parent d72f1ef commit 42e1584
Showing 1 changed file with 8 additions and 1 deletion.
9 changes: 8 additions & 1 deletion lsteamclient/steamclient_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
#include "windef.h"
#include "winbase.h"
#include "winnls.h"
#include "winuser.h"
#include "wine/debug.h"
#include "wine/library.h"
#include "wine/list.h"
Expand Down Expand Up @@ -564,7 +565,13 @@ bool CDECL Steam_BGetCallback(HSteamPipe pipe, struct winCallbackMsg_t *win_msg,
{
uint8 activated = *(uint8 *)lin_msg.m_pubParam;
TRACE("steam overlay %sactivated, %sabling all X11 events.\n", activated ? "" : "de", activated ? "dis" : "en");
if (activated) SetEvent(steam_overlay_event);
if (activated)
{
SetEvent(steam_overlay_event);
keybd_event(VK_LSHIFT, 0x2a /* lshift scancode */, KEYEVENTF_KEYUP, 0);
keybd_event(VK_RSHIFT, 0x36 /* rshift scancode */, KEYEVENTF_KEYUP, 0);
keybd_event(VK_TAB, 0x0f /* tab scancode */, KEYEVENTF_KEYUP, 0);
}
else ResetEvent(steam_overlay_event);
}

Expand Down

0 comments on commit 42e1584

Please sign in to comment.