mirror of
https://github.com/moonlight-stream/moonlight-common-c.git
synced 2026-06-17 14:21:30 +00:00
Add MODIFIER_META constant
This commit is contained in:
@@ -500,6 +500,16 @@ int LiSendKeyboardEvent(short keyCode, char keyAction, char modifiers) {
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Any keyboard event with the META modifier flag is dropped by all known GFE versions.
|
||||||
|
// This prevents us from sending shortcuts involving the meta key (Win+X, Win+Tab, etc).
|
||||||
|
// The catch is that the meta key event itself would actually work if it didn't set its
|
||||||
|
// own modifier flag, so we'll clear that here. This should be safe even if a new GFE
|
||||||
|
// release comes out that stops dropping events with MODIFIER_META flag.
|
||||||
|
if ((keyCode & 0x00FF) == 0x5B || // VK_LWIN
|
||||||
|
(keyCode & 0x00FF) == 0x5C) { // VK_RWIN
|
||||||
|
modifiers &= ~MODIFIER_META;
|
||||||
|
}
|
||||||
|
|
||||||
holder->packetLength = sizeof(NV_KEYBOARD_PACKET);
|
holder->packetLength = sizeof(NV_KEYBOARD_PACKET);
|
||||||
holder->packet.keyboard.header.packetType = htonl(PACKET_TYPE_KEYBOARD);
|
holder->packet.keyboard.header.packetType = htonl(PACKET_TYPE_KEYBOARD);
|
||||||
holder->packet.keyboard.keyAction = keyAction;
|
holder->packet.keyboard.keyAction = keyAction;
|
||||||
|
|||||||
@@ -418,6 +418,7 @@ int LiSendMouseButtonEvent(char action, int button);
|
|||||||
#define MODIFIER_SHIFT 0x01
|
#define MODIFIER_SHIFT 0x01
|
||||||
#define MODIFIER_CTRL 0x02
|
#define MODIFIER_CTRL 0x02
|
||||||
#define MODIFIER_ALT 0x04
|
#define MODIFIER_ALT 0x04
|
||||||
|
#define MODIFIER_META 0x08
|
||||||
int LiSendKeyboardEvent(short keyCode, char keyAction, char modifiers);
|
int LiSendKeyboardEvent(short keyCode, char keyAction, char modifiers);
|
||||||
|
|
||||||
// Button flags
|
// Button flags
|
||||||
|
|||||||
Reference in New Issue
Block a user