Skip to content
Commit ef72bae4 authored by Vlad Zahorodnii's avatar Vlad Zahorodnii
Browse files

Introduce base InputDevice class

The main motivation behind this change is to prepare input abstractions
for virtual input devices so the wl_seat can properly advertise caps or
the cursor getting properly mapped/unmapped when a fake pointer is
added/removed on a system without a hardware mouse connected.

With this, there are three abstractions - InputDevice, InputBackend, and
InputRedirection.

An InputDevice represents an input device such as a mouse, a keyboard, a
tablet, etc. The InputBackend class notifies the InputRedirection about
(dis-)connected devices. The InputRedirection manages the input devices.

Such design allows to unify the event flow for real and virtual input
devices.

There can be several input backends active. For example, the libinput
backend and an input backend that provides virtual input devices, e.g.
libeis or org_kde_kwin_fake_input.
parent 4206046f
  • Bhushan Shah 📱 @bshah

    mentioned in commit plasma-phone-components@b7b963822c19730a1674f97d8bc6db2da62f1ebb

    ·

    mentioned in commit plasma-phone-components@b7b963822c19730a1674f97d8bc6db2da62f1ebb

    Toggle commit list
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment