Blender V4.5
GWL_Window Struct Reference

Public Attributes

struct { 
   wl_surface *   surface = nullptr 
wl
struct { 
   wp_viewport *   viewport = nullptr 
   wp_fractional_scale_v1 *   fractional_scale_handle = nullptr 
wp
struct { 
   xdg_activation_token_v1 *   activation_token = nullptr 
xdg
struct { 
backend
GHOST_WindowWaylandghost_window = nullptr
GHOST_SystemWaylandghost_system = nullptr
GHOST_TDrawingContextType ghost_context_type = GHOST_kDrawingContextTypeNone
std::vector< GWL_Output * > outputs
GWL_XDG_Decor_Windowxdg_decor = nullptr
GWL_WindowFrame frame
GWL_WindowFrame frame_pending
std::mutex frame_pending_mutex
GWL_WindowCursorCustomShape cursor_custom_shape
std::string title
bool is_dialog = false
bool is_init = false
bool is_valid_setup = false
GWL_WindowScaleParams scale_params
std::atomic< bool > pending_actions [PENDING_NUM] = {false}

Detailed Description

Definition at line 442 of file GHOST_WindowWayland.cc.

Member Data Documentation

◆ activation_token

xdg_activation_token_v1* GWL_Window::activation_token = nullptr

A temporary token used for the window to be notified of it's activation.

Definition at line 463 of file GHOST_WindowWayland.cc.

Referenced by gwl_window_activate(), and xdg_activation_handle_done().

◆ [struct]

struct { ... } GWL_Window::backend

◆ cursor_custom_shape

GWL_WindowCursorCustomShape GWL_Window::cursor_custom_shape

Definition at line 507 of file GHOST_WindowWayland.cc.

Referenced by gwl_window_pending_actions_handle().

◆ fractional_scale_handle

wp_fractional_scale_v1* GWL_Window::fractional_scale_handle = nullptr

When set, only respond to the #wp_fractional_scale_v1_listener::preferred_scale callback and ignore updated scale based on #wl_surface_listener::enter & exit events.

Definition at line 457 of file GHOST_WindowWayland.cc.

◆ frame

◆ frame_pending

◆ frame_pending_mutex

std::mutex GWL_Window::frame_pending_mutex

Needed so calls such as GHOST_Window::setClientSize doesn't conflict with WAYLAND callbacks that may run in a thread.

Definition at line 504 of file GHOST_WindowWayland.cc.

Referenced by gwl_window_frame_update_from_pending(), and xdg_toplevel_handle_configure().

◆ ghost_context_type

GHOST_TDrawingContextType GWL_Window::ghost_context_type = GHOST_kDrawingContextTypeNone

Definition at line 477 of file GHOST_WindowWayland.cc.

Referenced by gwl_window_resize_for_backend().

◆ ghost_system

◆ ghost_window

◆ is_dialog

bool GWL_Window::is_dialog = false

Definition at line 511 of file GHOST_WindowWayland.cc.

◆ is_init

bool GWL_Window::is_init = false

True once the window has been initialized.

Definition at line 514 of file GHOST_WindowWayland.cc.

◆ is_valid_setup

bool GWL_Window::is_valid_setup = false

True when the GPU context is valid.

Definition at line 517 of file GHOST_WindowWayland.cc.

◆ outputs

std::vector<GWL_Output *> GWL_Window::outputs

Outputs on which the window is currently shown on.

This is an ordered set (whoever adds to this is responsible for keeping members unique). In practice this is rarely manipulated and is limited by the number of physical displays.

Definition at line 485 of file GHOST_WindowWayland.cc.

◆ pending_actions

std::atomic<bool> GWL_Window::pending_actions[PENDING_NUM] = {false}

These pending actions can't be performed when WAYLAND handlers are running from a thread. Postpone their execution until the main thread can handle them.

Definition at line 527 of file GHOST_WindowWayland.cc.

Referenced by gwl_window_pending_actions_handle(), and gwl_window_pending_actions_tag().

◆ scale_params

GWL_WindowScaleParams GWL_Window::scale_params

Currently only initialized on access (avoids allocations & allows to keep private).

Definition at line 520 of file GHOST_WindowWayland.cc.

◆ surface

◆ title

std::string GWL_Window::title

Definition at line 509 of file GHOST_WindowWayland.cc.

Referenced by gwl_window_title_set().

◆ viewport

◆ [struct]

◆ [struct]

◆ [struct]

struct { ... } GWL_Window::xdg

XDG native types.

Referenced by gwl_window_activate(), and xdg_activation_handle_done().

◆ xdg_decor


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