kcms/touchpad: Explicit build options for Wayland and X11 backends
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.
Please register or sign in to comment