summaryrefslogtreecommitdiffstats
path: root/win
diff options
context:
space:
mode:
authorPierre Ossman <ossman@cendio.se>2017-05-16 14:30:38 +0200
committerPierre Ossman <ossman@cendio.se>2017-08-28 13:54:30 +0200
commit5ae282135f982505fab655d4f597e7329fb8b0d1 (patch)
treefe4b2315735c1db49be288fee04dcb4674296364 /win
parentc719e4a0c9e1e3e5b7d22aa42cdaedda3cb06803 (diff)
downloadtigervnc-5ae282135f982505fab655d4f597e7329fb8b0d1.tar.gz
tigervnc-5ae282135f982505fab655d4f597e7329fb8b0d1.zip
Basic support for QEMU Extended Key Events
This adds the basic infrastructure and handshake for the QEMU Extended Key Events extension. No viewer or server makes use of the extra functionality yet though.
Diffstat (limited to 'win')
-rw-r--r--win/rfb_win32/SDisplay.cxx4
-rw-r--r--win/rfb_win32/SDisplay.h2
-rw-r--r--win/rfb_win32/SInput.cxx2
-rw-r--r--win/rfb_win32/SInput.h2
4 files changed, 5 insertions, 5 deletions
diff --git a/win/rfb_win32/SDisplay.cxx b/win/rfb_win32/SDisplay.cxx
index 2696f5dc..ad55d490 100644
--- a/win/rfb_win32/SDisplay.cxx
+++ b/win/rfb_win32/SDisplay.cxx
@@ -280,12 +280,12 @@ void SDisplay::pointerEvent(const Point& pos, int buttonmask) {
}
}
-void SDisplay::keyEvent(rdr::U32 key, bool down) {
+void SDisplay::keyEvent(rdr::U32 keysym, rdr::U32 keycode, bool down) {
// - Check that the SDesktop doesn't need restarting
if (isRestartRequired())
restartCore();
if (kbd)
- kbd->keyEvent(key, down);
+ kbd->keyEvent(keysym, keycode, down);
}
bool SDisplay::checkLedState() {
diff --git a/win/rfb_win32/SDisplay.h b/win/rfb_win32/SDisplay.h
index e43e3021..9892ed99 100644
--- a/win/rfb_win32/SDisplay.h
+++ b/win/rfb_win32/SDisplay.h
@@ -66,7 +66,7 @@ namespace rfb {
virtual void start(VNCServer* vs);
virtual void stop();
virtual void pointerEvent(const Point& pos, int buttonmask);
- virtual void keyEvent(rdr::U32 key, bool down);
+ virtual void keyEvent(rdr::U32 keysym, rdr::U32 keycode, bool down);
virtual void clientCutText(const char* str, int len);
virtual Point getFbSize();
diff --git a/win/rfb_win32/SInput.cxx b/win/rfb_win32/SInput.cxx
index 0923118a..15ef4b06 100644
--- a/win/rfb_win32/SInput.cxx
+++ b/win/rfb_win32/SInput.cxx
@@ -321,7 +321,7 @@ win32::SKeyboard::SKeyboard()
}
-void win32::SKeyboard::keyEvent(rdr::U32 keysym, bool down)
+void win32::SKeyboard::keyEvent(rdr::U32 keysym, rdr::U32 keycode, bool down)
{
for (unsigned int i = 0; i < sizeof(keysymToAscii) / sizeof(keysymToAscii_t); i++) {
if (keysymToAscii[i].keysym == keysym) {
diff --git a/win/rfb_win32/SInput.h b/win/rfb_win32/SInput.h
index 2a0b3e67..f7949ec4 100644
--- a/win/rfb_win32/SInput.h
+++ b/win/rfb_win32/SInput.h
@@ -53,7 +53,7 @@ namespace rfb {
class SKeyboard {
public:
SKeyboard();
- void keyEvent(rdr::U32 key, bool down);
+ void keyEvent(rdr::U32 keysym, rdr::U32 keycode, bool down);
static BoolParameter deadKeyAware;
private:
std::map<rdr::U32,rdr::U8> vkMap;