From 4f31aee7258400eb220ef4ede2a98522acb026bd Mon Sep 17 00:00:00 2001 From: Fabian Kosmale Date: Fri, 4 Dec 2020 12:52:06 +0100 Subject: [PATCH] QInputDevice: Parent default keyboard to core app singleton With this we can avoid leaking the QInputDevice which is created when the platform plugin does not provide any. The onwership is solved in a similar way as in the plugins, except that here we have no parent which really fits, so we use QCoreApplication::instance instead. Change-Id: I77a212fb592ba3d5a42b2ecd486763e3b4d3410e Reviewed-by: Shawn Rutledge (cherry picked from commit bc093cd294cbf48eb93b776fc0b927f0a43fa603) Reviewed-by: Qt Cherry-pick Bot --- src/gui/kernel/qinputdevice.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/kernel/qinputdevice.cpp b/src/gui/kernel/qinputdevice.cpp index eb3259347ae..9dcf288d00f 100644 --- a/src/gui/kernel/qinputdevice.cpp +++ b/src/gui/kernel/qinputdevice.cpp @@ -297,7 +297,7 @@ const QInputDevice *QInputDevice::primaryKeyboard(const QString& seatName) qCDebug(lcQpaInputDevices) << "no keyboards registered for seat" << seatName << "The platform plugin should have provided one via " "QWindowSystemInterface::registerInputDevice(). Creating a default one for now."; - ret = new QInputDevice(QLatin1String("core keyboard"), 0, DeviceType::Keyboard, seatName); + ret = new QInputDevice(QLatin1String("core keyboard"), 0, DeviceType::Keyboard, seatName, QCoreApplication::instance()); QInputDevicePrivate::registerDevice(ret); return ret; }