Blender V4.5
GWL_Seat Struct Reference

Classes

struct  [struct].wl
struct  [struct].wp
struct  [struct].xkb
struct  [struct].key_repeat

Public Attributes

struct  wl
struct  wp
struct  xkb
GHOST_SystemWaylandsystem = nullptr
std::string name
uint32_t cursor_source_serial = 0
GWL_SeatStatePointer pointer
GWL_SeatStatePointer_Events pointer_events
GWL_SeatStatePointerScroll pointer_scroll
GWL_SeatStatePointerGesture_Pinch pointer_gesture_pinch
bool use_pointer_scroll_smooth_as_discrete = false
GWL_SeatStatePointer tablet
GWL_SeatStateKeyboard keyboard
bool use_pointer_software_confine = false
wl_fixed_t grab_lock_xy [2] = {0, 0}
GWL_Cursor cursor
bool xkb_use_non_latin_workaround = false
GWL_KeyboardDepressedState key_depressed
xkb_mod_index_t xkb_keymap_mod_index [MOD_INDEX_NUM] = {XKB_MOD_INVALID}
xkb_mod_index_t xkb_keymap_mod_index_mod2 = XKB_MOD_INVALID
xkb_mod_index_t xkb_keymap_mod_index_numlock = XKB_MOD_INVALID
struct  key_repeat
GWL_DataOfferdata_offer_dnd = nullptr
std::mutex data_offer_dnd_mutex
GWL_DataOfferdata_offer_copy_paste = nullptr
std::mutex data_offer_copy_paste_mutex
std::optional< GHOST_TSuccessdata_offer_copy_paste_has_image = std::nullopt
GWL_DataSourcedata_source = nullptr
std::mutex data_source_mutex
GWL_PrimarySelection primary_selection
uint32_t data_source_serial = 0

Detailed Description

Definition at line 1053 of file GHOST_SystemWayland.cc.

Member Data Documentation

◆ cursor

◆ cursor_source_serial

uint32_t GWL_Seat::cursor_source_serial = 0

Use to check if the last cursor input was tablet or pointer.

Definition at line 1136 of file GHOST_SystemWayland.cc.

Referenced by gwl_seat_state_pointer_active(), pointer_handle_enter(), and tablet_tool_handle_proximity_in().

◆ data_offer_copy_paste

◆ data_offer_copy_paste_has_image

std::optional<GHOST_TSuccess> GWL_Seat::data_offer_copy_paste_has_image = std::nullopt

Cache the result of GHOST_SystemWayland::hasClipboardImage as checking the file header every time will be expensive, especially if this happens on redraw. Reset whenever the data offer changes.

Definition at line 1206 of file GHOST_SystemWayland.cc.

Referenced by data_device_handle_selection(), and GHOST_SystemWayland::hasClipboardImage().

◆ data_offer_copy_paste_mutex

std::mutex GWL_Seat::data_offer_copy_paste_mutex

◆ data_offer_dnd

◆ data_offer_dnd_mutex

◆ data_source

◆ data_source_mutex

std::mutex GWL_Seat::data_source_mutex

◆ data_source_serial

uint32_t GWL_Seat::data_source_serial = 0

Last input device that was active (pointer/tablet/keyboard).

Note
Multi-touch gestures don't set this value, if there is some use-case where this is needed - assignments can be added.

Definition at line 1219 of file GHOST_SystemWayland.cc.

Referenced by keyboard_handle_key(), keyboard_handle_modifiers(), pointer_handle_button(), GHOST_SystemWayland::putClipboardImage(), system_clipboard_put(), system_clipboard_put_primary_selection(), tablet_tool_handle_button(), tablet_tool_handle_down(), tablet_tool_handle_proximity_in(), and GHOST_SystemWayland::wl_seat_active_get_with_input_serial().

◆ grab_lock_xy

wl_fixed_t GWL_Seat::grab_lock_xy[2] = {0, 0}

The cursor location (in pixel-space) when hidden grab started (GHOST_kGrabHide).

Definition at line 1153 of file GHOST_SystemWayland.cc.

Referenced by GHOST_SystemWayland::window_cursor_grab_set().

◆ key_depressed

◆ key_repeat

◆ keyboard

◆ name

std::string GWL_Seat::name

Definition at line 1133 of file GHOST_SystemWayland.cc.

◆ pointer

◆ pointer_events

◆ pointer_gesture_pinch

◆ pointer_scroll

◆ primary_selection

◆ system

◆ tablet

◆ use_pointer_scroll_smooth_as_discrete

◆ use_pointer_software_confine

◆ wl

◆ wp

◆ xkb

◆ xkb_keymap_mod_index

xkb_mod_index_t GWL_Seat::xkb_keymap_mod_index[MOD_INDEX_NUM] = {XKB_MOD_INVALID}

Cache result of xkb_keymap_mod_get_index so every time a modifier is accessed a string lookup isn't required. Be sure to check for #XKB_MOD_INVALID before using.

Definition at line 1169 of file GHOST_SystemWayland.cc.

Referenced by GHOST_SystemWayland::getModifierKeys(), gwl_seat_key_layout_active_state_update_mask(), and keyboard_handle_keymap().

◆ xkb_keymap_mod_index_mod2

xkb_mod_index_t GWL_Seat::xkb_keymap_mod_index_mod2 = XKB_MOD_INVALID

Cache result of xkb_keymap_mod_get_index(keymap, XKB_MOD_NAME_NUM).

Definition at line 1175 of file GHOST_SystemWayland.cc.

Referenced by gwl_seat_key_layout_active_state_update_mask(), and keyboard_handle_keymap().

◆ xkb_keymap_mod_index_numlock

xkb_mod_index_t GWL_Seat::xkb_keymap_mod_index_numlock = XKB_MOD_INVALID

Cache result of xkb_keymap_mod_get_index(keymap, "NumLock").

Definition at line 1177 of file GHOST_SystemWayland.cc.

Referenced by gwl_seat_key_layout_active_state_update_mask(), and keyboard_handle_keymap().

◆ xkb_use_non_latin_workaround

bool GWL_Seat::xkb_use_non_latin_workaround = false

Definition at line 1158 of file GHOST_SystemWayland.cc.

Referenced by keyboard_handle_key(), and keyboard_handle_keymap().


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