The synaptics touchpad driver has mostly been superseeded by libinput.
For libinput we have a completely different UI.
The KCM currently still supports both, making the code massively complex and
causing a huge maintanance burden.
Given the long-term focus is on Wayland and libinput drop the synaptic integration.
This doesn't prevent anyone from using Plasma X11 with Synaptics, but there will
not be a first-party config UI for it any more
See https://invent.kde.org/plasma/plasma-desktop/-/issues/79
KDE prefers explicit CMake options over a conditional build that
depends on which headers are installed on the user's system.
Two new options are introduced to turn the build for the X11
and KWin+Wayland backends on or off separately.
The touchpad KCM will now build both backends by default, as before,
but won't silently exclude kcm_touchpad from the build if any of its
required X11_XCB/X11_Xi/XORGSERVER dependencies are missing.
Instead, it will loudly fail CMake configuration with an error
and a hint about the existence of the CMake option.
Plus, don't leak in TouchpadBackend::implementation().
If the X11 implementation keeps a backend singleton and returns that,
the KWin+Wayland implementation shouldn't keep creating new backends
that are never deleted.
Because those bits were only relevant to kcmshell (which we rarely use nowadays),
it is far less effort to just set an appropriate size manually.
The touchpad QML code was also fixed, because it did not show any.
The ToolTip component depended on a non-existent module in Qt6 and was ported.
That looks rather out of place there and does actually disable the apply button
when resizing the window. I don't understand what it's supposed to be doing
there, but if it has an actual purpose it needs to be addressed differently.
CCBUG: 449843
Currently the KCM is loaded from the kded plugin. This makes the
implementation quite messy.
Instead split the two into their own plugins and extract common stuff
into a (static) lib.
Summary: There's no need for yet another directory in between. Also removes some redundant cmake code
Test Plan: builds
Reviewers: #plasma, ngraham
Reviewed By: ngraham
Subscribers: plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D28833
2020-04-15 12:48:14 +02:00
Renamed from kcms/touchpad/src/kcm/touchpadconfigcontainer.cpp (Browse further)