Introduce dedicated actions for touch screen swipe gestures

Authored by graesslin on Mar 30 2017, 5:13 AM.



The new touch gestures activated for the same actions as configured for
mouse pointer actions. This has disadvantages as the only configured
default screen edge action cannot be triggered (corner) on touch. On the
other hand setting a default touch gesture would be rather annoying with
pointer as a default.

So overall it makes sense to split the actions and have dedicated pointer
and dedicated touch actions.

This change introduces the first part of it and splits the handling in
general. We now have:

Activates for pointer and touch:

  • client (auto-hiding panels)

Activates for pointer only:

  • the configured action
  • virtual desktop switching
  • callbacks

Activates for touch only:

  • the new touch action

The touch actions are implemented similar to the pointer actions which
slight improvements in the code which will be backported to the pointer

Introducing callbacks will be the next step. I plan to do it a little bit
different by using QActions as that's what KWin internally uses for
everything except screen edges.

Test Plan

Manual testing and improved auto tests

Diff Detail

R108 KWin
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.
graesslin created this revision.Mar 30 2017, 5:13 AM
Restricted Application added a project: KWin. · View Herald TranscriptMar 30 2017, 5:13 AM
Restricted Application added subscribers: kwin, plasma-devel. · View Herald Transcript

ping! As I have dependencies already accepted it would be nice to be able to push the complete set ;-)

mart accepted this revision.Apr 7 2017, 2:09 PM
This revision is now accepted and ready to land.Apr 7 2017, 2:09 PM
This revision was automatically updated to reflect the committed changes.