Wayland++  0.2.6
C++ Bindings for Wayland
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 detail::bitfield< 3, 6 > none {0}
 no action More...
 
static const detail::bitfield< 3, 6 > copy {1}
 copy action More...
 
static const detail::bitfield< 3, 6 > move {2}
 move action More...
 
static const detail::bitfield< 3, 6 > ask {4}
 ask action More...
 

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 1390 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 1403 of file wayland-client-protocol.hpp.

◆ copy

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

copy action

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

◆ move

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

move action

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

◆ none

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

no action

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


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