[Differential] [Commented On] D3479: [libinput] Add more support for touchpads in preparation for the new touchpad KCM
davidedmundson (David Edmundson)
noreply at phabricator.kde.org
Wed Nov 30 16:53:03 UTC 2016
davidedmundson added a comment.
To expand on the DBus problem:
The connection object resides in a thread; but emits stuff from the main thread.
DBus is generally thread safe, but QDBusAbstractAdaptor uses sender() in relaying so isn't.
add in a bouncer, things work nicely:
connect(this, &Connection::deviceRemoved, this, [this](Device* device) {
emit deviceRemovedSysName(device->sysName());
});
this gets implicitly queuedconnection as this is emitted in another thread and it all works. Huzzah
However, we still get a tonne of warnings because we're emitting a bunch of other signals, and internally in QDBusAbstractAdaptor we have the warning about checking for threads*before* we see if actually relays the signal.
The only solution I can see is to make an explicit adaptor.
(or we change the KCM side to use org.freedesktop.DBus.ObjectManager and forget putting anything in here)
REPOSITORY
R108 KWin
REVISION DETAIL
https://phabricator.kde.org/D3479
EMAIL PREFERENCES
https://phabricator.kde.org/settings/panel/emailpreferences/
To: subdiff, #kwin, #plasma, davidedmundson
Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20161130/04a9a074/attachment.html>
More information about the Plasma-devel
mailing list