]> source.dussan.org Git - tigervnc.git/commitdiff
Remove InputHandler interface
authorPierre Ossman <ossman@cendio.se>
Mon, 30 Jan 2023 06:51:51 +0000 (07:51 +0100)
committerPierre Ossman <ossman@cendio.se>
Mon, 12 Aug 2024 14:32:53 +0000 (16:32 +0200)
The different uses of this interface are not that closely related and
there is no need for them to have a common interface class.

common/rfb/InputHandler.h [deleted file]
common/rfb/SDesktop.h
common/rfb/SMsgHandler.cxx
common/rfb/SMsgHandler.h
unix/x0vncserver/XDesktop.cxx
unix/x0vncserver/XDesktop.h

diff --git a/common/rfb/InputHandler.h b/common/rfb/InputHandler.h
deleted file mode 100644 (file)
index ad6c4be..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Copyright (C) 2002-2005 RealVNC Ltd.  All Rights Reserved.
- * 
- * This is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- * 
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with this software; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
- * USA.
- */
-//
-// InputHandler - abstract interface for accepting keyboard &
-// pointer input and clipboard data.
-//
-
-#ifndef __RFB_INPUTHANDLER_H__
-#define __RFB_INPUTHANDLER_H__
-
-#include <stdint.h>
-
-#include <rfb/Rect.h>
-
-namespace rfb {
-
-  class InputHandler {
-  public:
-    virtual ~InputHandler() {}
-    virtual void keyEvent(uint32_t /*keysym*/, uint32_t /*keycode*/,
-                          bool /*down*/) { }
-    virtual void pointerEvent(const Point& /*pos*/,
-                              int /*buttonMask*/) { }
-    virtual void clientCutText(const char* /*str*/) { }
-  };
-
-}
-#endif
index 94fcaa28e57cdacb3400f04a035322bb528a9984..bcdee93c935001a372b897e24643adac2cacf272 100644 (file)
 
 #include <rfb/PixelBuffer.h>
 #include <rfb/VNCServer.h>
-#include <rfb/InputHandler.h>
 #include <rfb/screenTypes.h>
 
 namespace network { class Socket; }
 
 namespace rfb {
 
-  class SDesktop : public InputHandler {
+  class SDesktop {
   public:
     // init() is called immediately when the VNCServer gets a reference
     // to the SDesktop, so that a reverse reference can be set up.
@@ -91,10 +90,15 @@ namespace rfb {
     // signalling that a good time to render new data
     virtual void frameTick(uint64_t msc) { (void)msc; }
 
-    // InputHandler interface
-    // pointerEvent(), keyEvent() and clientCutText() are called in response to
-    // the relevant RFB protocol messages from clients.
-    // See InputHandler for method signatures.
+    // keyEvent() is called whenever a client sends an event that a
+    // key was pressed or released.
+    virtual void keyEvent(uint32_t /*keysym*/, uint32_t /*keycode*/,
+                          bool /*down*/) {};
+
+    // pointerEvent() is called whenever a client sends an event that
+    // the pointer moved, or a button was pressed or released.
+    virtual void pointerEvent(const Point& /*pos*/,
+                              int /*buttonMask*/) {};
 
     // handleClipboardRequest() is called whenever a client requests
     // the server to send over its clipboard data. It will only be
index 4ecfc2b2fc1539323d0081709373b57faf68c709..a5f1b7cff51bca7a1dea9f27c43ef34152ddb801 100644 (file)
@@ -74,6 +74,20 @@ void SMsgHandler::setEncodings(int nEncodings, const int32_t* encodings)
     supportsQEMUKeyEvent();
 }
 
+void SMsgHandler::keyEvent(uint32_t /*keysym*/, uint32_t /*keycode*/,
+                           bool /*down*/)
+{
+}
+
+void SMsgHandler::pointerEvent(const Point& /*pos*/,
+                               int /*buttonMask*/)
+{
+}
+
+void SMsgHandler::clientCutText(const char* /*str*/)
+{
+}
+
 void SMsgHandler::handleClipboardCaps(uint32_t flags, const uint32_t* lengths)
 {
   int i;
index 20dc066f28cdea4763b32cc4393b369ccab57861..de14d626325edf438aa3325e6c1c0fe97aae4fe2 100644 (file)
 
 #include <rfb/PixelFormat.h>
 #include <rfb/ClientParams.h>
-#include <rfb/InputHandler.h>
 #include <rfb/ScreenSet.h>
 
 namespace rdr { class InStream; }
 
 namespace rfb {
 
-  class SMsgHandler : public InputHandler {
+  class SMsgHandler {
   public:
     SMsgHandler();
     virtual ~SMsgHandler();
@@ -55,6 +54,13 @@ namespace rfb {
     virtual void enableContinuousUpdates(bool enable,
                                          int x, int y, int w, int h) = 0;
 
+    virtual void keyEvent(uint32_t keysym, uint32_t keycode,
+                          bool down);
+    virtual void pointerEvent(const Point& pos,
+                              int buttonMask);
+
+    virtual void clientCutText(const char* str);
+
     virtual void handleClipboardCaps(uint32_t flags,
                                      const uint32_t* lengths);
     virtual void handleClipboardRequest(uint32_t flags);
@@ -64,9 +70,6 @@ namespace rfb {
                                         const size_t* lengths,
                                         const uint8_t* const* data);
 
-    // InputHandler interface
-    // The InputHandler methods will be called for the corresponding messages.
-
     // supportsLocalCursor() is called whenever the status of
     // cp.supportsLocalCursor has changed.  At the moment this happens on a
     // setEncodings message, but in the future this may be due to a message
index a00f2bc245d6dfdd9208c2664fa81b40464f2f9c..24cba0dfdea08bbec4495ebe7f7b09fa24937228 100644 (file)
@@ -600,9 +600,6 @@ void XDesktop::keyEvent(uint32_t keysym, uint32_t xtcode, bool down) {
 #endif
 }
 
-void XDesktop::clientCutText(const char* /*str*/) {
-}
-
 ScreenSet XDesktop::computeScreenLayout()
 {
   ScreenSet layout;
index 4d922bf0c8fd21679bdff071f1a61d352a8593de..e952fba960aa8fdbfe4ceaac66aad683a684d39e 100644 (file)
@@ -62,7 +62,6 @@ public:
                        const char* userName) override;
   void pointerEvent(const rfb::Point& pos, int buttonMask) override;
   void keyEvent(uint32_t keysym, uint32_t xtcode, bool down) override;
-  void clientCutText(const char* str) override;
   unsigned int setScreenLayout(int fb_width, int fb_height,
                                const rfb::ScreenSet& layout) override;