input: Handle correctly failure to compile XKB keymaps

And ultimately, fail to start when there are no input devices on the
system. Patchs adds consistency to touch/pointer initialization to
return -1 in case same thing happens.

Further more, when the device is not created we can't assume to retrieve
a valid one from a libinput_device so guard against it. This takes care of
hot-plugging situations when we couldn't create the (keyboard) device,
or when removing it.

Fixes: #117, #402, #485

Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Suggested-by: Daniel Stone <daniel.stone@collabora.com>
5 jobs for fix-invalid-keyboard in 3 minutes and 13 seconds (queued for 1 second)
Status Job ID Name Coverage
  Container Prep
passed #8904756
container_prep

00:00:25

 
  Build
passed #8904758
kvm
build-docs

00:01:00

passed #8904757
kvm
build-native-meson-default-options

00:02:31

passed #8904759
kvm
build-native-meson-no-gl-renderer

00:01:06

 
  Pages
passed #8904760
docs-and-coverage

00:00:17