[Mouse KCM] Avoid changes to touchpads in libinput backend

Authored by romangg on Sep 3 2018, 10:15 PM.

Description

[Mouse KCM] Avoid changes to touchpads in libinput backend

Summary:
Similar to evdev backend we need to ignore touchpad devices explicitly in the
libinput backend because these are also pointer devices.

XInput2 can do this in theory via input classes, but my touchpad did not set
the class correctly. So just switch to using XInput like in the evdev backend
to query all pointer devices and then use the XI_TOUCHPAD atom to filter out
touchpads.

BUG: 395401
BUG: 395722
BUG: 396269

Test Plan: Manually

Reviewers: Plasma, hein

Reviewed By: Plasma, hein

Subscribers: acrouthamel, ngraham, plasma-devel

Tags: Plasma

Differential Revision: https://phabricator.kde.org/D15256