Wayland++ 1.0.0
C++ Bindings for Wayland
Loading...
Searching...
No Matches
wayland::data_device_manager_dnd_action Struct Reference

drag and drop actions More...

#include <wayland-client-protocol.hpp>

Inherits wayland::detail::bitfield< size, id >.

Static Public Attributes

static const wayland::detail::bitfield< 3, 6 > none {0}
 no action
 
static const wayland::detail::bitfield< 3, 6 > copy {1}
 copy action
 
static const wayland::detail::bitfield< 3, 6 > move {2}
 move action
 
static const wayland::detail::bitfield< 3, 6 > ask {4}
 ask action
 

Detailed Description

drag and drop actions

This is a bitmask of the available/preferred actions in a drag-and-drop operation.

In the compositor, the selected action is a result of matching the actions offered by the source and destination sides. "action" events with a "none" action will be sent to both source and destination if there is no match. All further checks will effectively happen on (source actions ∩ destination actions).

In addition, compositors may also pick different actions in reaction to key modifiers being pressed. One common design that is used in major toolkits (and the behavior recommended for compositors) is:

  • If no modifiers are pressed, the first match (in bit order) will be used.
  • Pressing Shift selects "move", if enabled in the mask.
  • Pressing Control selects "copy", if enabled in the mask.

Behavior beyond that is considered implementation-dependent. Compositors may for example bind other modifiers (like Alt/Meta) or drags initiated with other buttons than BTN_LEFT to specific actions (e.g. "ask").

Definition at line 1496 of file wayland-client-protocol.hpp.

Member Data Documentation

◆ ask

const bitfield< 3, 6 > data_device_manager_dnd_action::ask {4}
static

ask action

Definition at line 1509 of file wayland-client-protocol.hpp.

◆ copy

const bitfield< 3, 6 > data_device_manager_dnd_action::copy {1}
static

copy action

Definition at line 1505 of file wayland-client-protocol.hpp.

◆ move

const bitfield< 3, 6 > data_device_manager_dnd_action::move {2}
static

move action

Definition at line 1507 of file wayland-client-protocol.hpp.

◆ none

const bitfield< 3, 6 > data_device_manager_dnd_action::none {0}
static

no action

Definition at line 1503 of file wayland-client-protocol.hpp.


The documentation for this struct was generated from the following files: