def handleKeyEvent(self, event: QKeyEvent, released: bool): # After some testing, it seems like scan codes on Linux are 8 higher than their Windows version. if platform.system() == "Linux": offset = -8 else: offset = 0 scanCode = keyboard.findScanCodeForEvent( event) or event.nativeScanCode() + offset pdu = PlayerKeyboardPDU(self.layer.getCurrentTimeStamp(), scanCode, released, event.key() in keyboard.EXTENDED_KEYS) self.layer.sendPDU(pdu)
def isRightControl(event: QKeyEvent) -> bool: return event.key() == Qt.Key.Key_Control and event.nativeScanCode() > 50
def keyReleaseEvent(self, event: QKeyEvent): print(event.modifiers(), event.key(), event.nativeScanCode(), event.nativeVirtualKey(), event.text()) self.renderer.sendEvent(event)