Norman Feske 7fc060438a window_layouter: handle drag/drop as actions
This patch moves the formerly hard-wired drag-and-drop handling
to the configuration level by introducing the actions "drag" and "drop".

To aid the robust handling of release events matching their
corresponding press events, the patch refines the policy-matching of the
current combination of keys against the hierarchy of <press> and
<release> nodes. If no policy for a concrete combination exists, a
release event also considers the policy of its matching <press> node.
This way, the regular drag-and-drop rules can be expressed as

  <press key="BTN_LEFT" action="drag">
     <release key="BTN_LEFT" action="drop"/>
  </press>

This also works when releasing BTN_LEFT while pressing additional keys,
for which no policy exists.

With this change, the layouter supports the matching of multiple key
sequences instead of only one, thereby supporting multiple actions at
once and allowing for decoupling different user interactions in the
configuration.

Issue #5403
2025-02-24 16:39:19 +01:00
..
2024-06-20 12:54:30 +02:00
2024-04-19 08:54:21 +02:00
2024-02-26 08:31:04 +01:00
2024-06-20 12:54:30 +02:00
2024-06-20 12:54:30 +02:00
2024-10-07 14:44:30 +02:00
2023-02-27 08:20:45 +01:00
2023-02-27 08:20:45 +01:00
2023-02-27 08:20:45 +01:00
2023-02-27 08:20:45 +01:00
2023-02-27 08:20:45 +01:00
2024-06-20 12:54:30 +02:00
2024-06-20 12:54:30 +02:00
2024-06-20 12:54:30 +02:00
2024-06-20 12:54:30 +02:00
2024-06-20 12:54:30 +02:00
2024-06-20 12:54:30 +02:00
2024-06-20 12:54:30 +02:00
2024-08-27 15:33:31 +02:00
2024-08-27 15:33:31 +02:00
2024-08-27 15:33:31 +02:00
2025-01-30 16:30:13 +01:00
2025-01-30 16:30:13 +01:00
2024-08-27 15:33:31 +02:00
2024-08-27 15:33:31 +02:00
2024-08-27 15:33:31 +02:00
2024-08-27 15:33:31 +02:00
2024-08-27 15:33:31 +02:00
2024-08-27 15:33:31 +02:00
2024-06-20 12:54:30 +02:00