Currently, touchpad X11 supports 3 different backends: evdev, synaptics, libinput. However touchpad Wayland only need libinput. Currently, they all mixed and this makes the KCM complex.
At the end of this patch, Touchpad KCM will be splitted into 2 different KCMs; kcm_touchpad (Wayland), kcm_touchpadx (X11)
This patch aims to followings;
1- The future is Wayland + Libinput so having a seperated KCM for it makes the development easier and gives the flexibility to the developer. This leads to more stability.
2- KCMs should be converted to KConfigModule and at the end of the patch, KDE'll have a simple Wayland + Libinput KCM in KConfigModule.
3- touchpadX will be simpler too
The need to this patch is occured when I'm trying to bring the touchpad libinput KCM support to X. Current complexity makes the development really confusing and that means bug. So after this patch, the work for touchpad libinput KCM support will be done.
The current patch strategy is as following:
Stage 1- Removing all wayland related things in the KCM. So that reviewers can see the difference easily. Expected test result: In Wayland, there will not be a Touchpad KCM support since everything is removed about Wayland. In X11, there will be a fully-functional Touchpad KCM.
Stage 2- All the codes in Stage 1 will be moved to new directory, touchpadX and this will be a brand-new KCM. Expected test result: In X11, you'll see a new, fully-functional KCM in the "System Settings" > "Input Devices". Most probobly you'll see 2 Touchpad KCM in the "Input Devices" Please ignore it for now. In Wayland, still no support.
Stage 3- Wayland Touchpad KCM will be written in KConfigModule from scratch, which will be kcm_touchpad. Expected test result: In X11 and Wayland, everything should be working fine.
Stage 4- kcm_touchpadx will be cleaned and reorganized. This stage may be big. In this case, there will be created a new patch for it.
Future Patch- Libinput KCM support to X11!