From Fedora Project Wiki
(Created page with "= Change xorg input stack to use libinput = == Summary == Replace the current (low-level) input xorg drivers with libinput using the xorg-x11-drv-libinput wrapper. == Owner ...")
 
(minor rewording)
Line 15: Line 15:
  
 
== Detailed Description ==
 
== Detailed Description ==
Currently xorg uses a 1 driver per input device model, this makes it impossible to do things like middle button scrolling on the trackpoint on laptops where the trackpoint buttons are softbuttons on the touchpad. Besides this the xf86-input-synaptics driver was never really designed for multi-touch touchpads and this causes various issues.
+
Currently xorg uses different input drivers depending on the device type. This makes it impossible to do things like middle button scrolling on the trackpoint on laptops where the trackpoint buttons are software-emulated buttons on the touchpad. Besides this the xf86-input-synaptics driver was never really designed for multi-touch touchpads and this causes various issues.
  
 
For Wayland we've been working on a new improved input stack, which is to be shared by all compositors and lives inside libinput. We plan to replace the current (low-level) input xorg drivers with libinput using the xorg-x11-drv-libinput wrapper.
 
For Wayland we've been working on a new improved input stack, which is to be shared by all compositors and lives inside libinput. We plan to replace the current (low-level) input xorg drivers with libinput using the xorg-x11-drv-libinput wrapper.

Revision as of 00:35, 24 November 2014

Change xorg input stack to use libinput

Summary

Replace the current (low-level) input xorg drivers with libinput using the xorg-x11-drv-libinput wrapper.

Owner

  • Name: Hans de Goede
  • Email: hdegoede@redhat.com
  • Release notes owner:

Current status

  • Targeted release: Fedora 22
  • Last updated: November 21th 2014
  • Tracker bug:

Detailed Description

Currently xorg uses different input drivers depending on the device type. This makes it impossible to do things like middle button scrolling on the trackpoint on laptops where the trackpoint buttons are software-emulated buttons on the touchpad. Besides this the xf86-input-synaptics driver was never really designed for multi-touch touchpads and this causes various issues.

For Wayland we've been working on a new improved input stack, which is to be shared by all compositors and lives inside libinput. We plan to replace the current (low-level) input xorg drivers with libinput using the xorg-x11-drv-libinput wrapper.

Benefit to Fedora

Improved user experience wrt input devices. We esp. expect a noticable improvement in touchpad behavior.

Scope

Besides xorg changes, this will also require changes to the control panel applets for mouse / touchpad configuration in the various desktop environments, as those all are hardcoded to use the xorg-x11-drv-synaptics specific interfaces.

  • Proposal owners:

Package libinput and xorg-drv-input-libinput (done), make sure that xorg-drv-input-libinput has the necessary config interfaces for control panel mouse/touchpad config applets (wip). Write patches for gnome-control-center mouse/touchpad capplet. Coordinate with other desktop environments.

  • Other developers:

GNOME: merge the gnome-control-center patches. KDE: limits itself to standard X11 mouse config interfaces, no changes needed. Other Desktop Environments: adjust control-panel code to deal with xorg-x11-drv-libinput, merge these changes.

  • Release engineering: N/A
  • Policies and guidelines: N/A

Upgrade/compatibility impact

No upgrade impact, the /usr/share/X11/xorg.conf.d rules will automatically use the new driver for relevant devices.

How To Test

Fire up new Fedora version, use keyboard, mouse and touchpads. Also try special features like 2 finger scrolling, click and drag, tap and drag, etc.

User Experience

We expect users to see a noticable improvement in touchpad behavior.

Dependencies

None, but if desktop environments do not adapt, then their config panel mouse/touchpad settings may no longer work.

Contingency Plan

  • Contingency mechanism: We can switch back to the old drivers through some minor changes to the usr/share/X11/xorg.conf.d rules.
  • Contingency deadline: Beta freeze
  • Blocks release? No
  • Blocks product? N/A

Documentation

TODO

Release Notes

TODO