From 47bcc4dd4bc9f4c4d9e9e6f3198424105385994a Mon Sep 17 00:00:00 2001 From: Elvis Lee Date: Wed, 4 Nov 2020 17:34:05 +0900 Subject: Support customized device discovery with udev With derived class from QDeviceDiscoveryUDev, eglfs for a platform can create own input handlers. Task-number: QTBUG-85268 Change-Id: Ib8e99b365195eff9540e7c90e14c5d269d37ad86 Reviewed-by: Elvis Lee Reviewed-by: Laszlo Agocs --- src/platformsupport/devicediscovery/qdevicediscovery_udev_p.h | 4 +++- src/plugins/platforms/eglfs/api/qeglfsintegration_p.h | 6 ++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/platformsupport/devicediscovery/qdevicediscovery_udev_p.h b/src/platformsupport/devicediscovery/qdevicediscovery_udev_p.h index 82b475776d..8489cf5f34 100644 --- a/src/platformsupport/devicediscovery/qdevicediscovery_udev_p.h +++ b/src/platformsupport/devicediscovery/qdevicediscovery_udev_p.h @@ -68,13 +68,15 @@ public: private slots: void handleUDevNotification(); +protected: + struct udev *m_udev; + private: bool checkDeviceType(struct udev_device *dev); void startWatching(); void stopWatching(); - struct udev *m_udev; struct udev_monitor *m_udevMonitor; int m_udevMonitorFileDescriptor; QSocketNotifier *m_udevSocketNotifier; diff --git a/src/plugins/platforms/eglfs/api/qeglfsintegration_p.h b/src/plugins/platforms/eglfs/api/qeglfsintegration_p.h index 5ba24b107a..bba1f2843f 100644 --- a/src/plugins/platforms/eglfs/api/qeglfsintegration_p.h +++ b/src/plugins/platforms/eglfs/api/qeglfsintegration_p.h @@ -125,16 +125,18 @@ public: void switchLang() override; #endif +protected: + virtual void createInputHandlers(); + QEvdevKeyboardManager *m_kbdMgr; + private: EGLNativeDisplayType nativeDisplay() const; - void createInputHandlers(); EGLDisplay m_display; QPlatformInputContext *m_inputContext; QScopedPointer m_fontDb; QScopedPointer m_services; QScopedPointer m_vtHandler; - QEvdevKeyboardManager *m_kbdMgr; QPointer m_pointerWindow; bool m_disableInputHandlers; }; -- cgit v1.2.3