|
Blender V4.5
|
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_WindowWayland * | ghost_window = nullptr | |
| GHOST_SystemWayland * | ghost_system = nullptr | |
| GHOST_TDrawingContextType | ghost_context_type = GHOST_kDrawingContextTypeNone | |
| std::vector< GWL_Output * > | outputs | |
| GWL_XDG_Decor_Window * | xdg_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} | |
Definition at line 442 of file GHOST_WindowWayland.cc.
| 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(), xdg_activation_handle_done(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| struct { ... } GWL_Window::backend |
| GWL_WindowCursorCustomShape GWL_Window::cursor_custom_shape |
| 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.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), GHOST_WindowWayland::outputs_changed_update_scale(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| GWL_WindowFrame GWL_Window::frame |
The current value of frame, copied from frame_pending when applying updates. This avoids the need for locking when reading from frame.
Definition at line 496 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::getClientBounds(), GHOST_WindowWayland::getDPIHint(), GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_frame_pending_fractional_scale_set(), gwl_window_frame_pending_fractional_scale_set_notest(), gwl_window_frame_pending_size_set(), gwl_window_frame_update_from_pending_no_lock(), gwl_window_state_get(), gwl_window_state_set(), gwl_window_viewport_set(), gwl_window_viewport_size_update(), gwl_window_viewport_unset(), GHOST_WindowWayland::outputs_changed_update_scale(), GHOST_WindowWayland::scale_get(), GHOST_WindowWayland::scale_params_get(), GHOST_WindowWayland::setClientHeight(), GHOST_WindowWayland::setClientWidth(), GHOST_WindowWayland::wl_fixed_from_window(), GHOST_WindowWayland::wl_fixed_to_window(), and xdg_toplevel_handle_configure().
| GWL_WindowFrame GWL_Window::frame_pending |
Definition at line 497 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_frame_pending_fractional_scale_set(), gwl_window_frame_pending_fractional_scale_set_notest(), gwl_window_frame_pending_size_set(), gwl_window_frame_update_from_pending_no_lock(), gwl_window_viewport_unset(), GHOST_WindowWayland::outputs_changed_update_scale(), GHOST_WindowWayland::setClientSize(), wp_fractional_scale_handle_preferred_scale(), and xdg_toplevel_handle_configure().
| 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(), GHOST_WindowWayland::outputs_changed_update_scale(), GHOST_WindowWayland::setClientSize(), and xdg_toplevel_handle_configure().
| GHOST_TDrawingContextType GWL_Window::ghost_context_type = GHOST_kDrawingContextTypeNone |
Definition at line 477 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_resize_for_backend(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| GHOST_SystemWayland* GWL_Window::ghost_system = nullptr |
Definition at line 476 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_activate(), gwl_window_frame_update_from_pending_no_lock(), gwl_window_pending_actions_handle(), gwl_window_pending_actions_tag(), gwl_window_viewport_set(), GHOST_WindowWayland::pending_actions_handle(), xdg_activation_handle_done(), and xdg_surface_handle_configure().
| GHOST_WindowWayland* GWL_Window::ghost_window = nullptr |
Definition at line 475 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_frame_pending_size_set(), gwl_window_frame_update_from_pending_no_lock(), gwl_window_pending_actions_handle(), wp_fractional_scale_handle_preferred_scale(), and xdg_toplevel_handle_close().
| bool GWL_Window::is_dialog = false |
Definition at line 511 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), and GHOST_WindowWayland::isDialog().
| bool GWL_Window::is_init = false |
True once the window has been initialized.
Definition at line 514 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::activate(), GHOST_WindowWayland::deactivate(), and GHOST_WindowWayland::GHOST_WindowWayland().
| bool GWL_Window::is_valid_setup = false |
True when the GPU context is valid.
Definition at line 517 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::getValid(), and GHOST_WindowWayland::GHOST_WindowWayland().
| 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.
Referenced by GHOST_WindowWayland::outputs_enter(), GHOST_WindowWayland::outputs_get(), and GHOST_WindowWayland::outputs_leave().
| 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().
| 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.
Referenced by GHOST_WindowWayland::scale_params_get().
| wl_surface* GWL_Window::surface = nullptr |
Definition at line 446 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_frame_pending_fractional_scale_set_notest(), gwl_window_frame_update_from_pending_no_lock(), gwl_window_pending_actions_handle(), gwl_window_viewport_set(), gwl_window_viewport_unset(), GHOST_WindowWayland::setWindowCursorGrab(), GHOST_WindowWayland::wl_surface_get(), xdg_activation_handle_done(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| std::string GWL_Window::title |
Definition at line 509 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::getTitle(), and gwl_window_title_set().
| wp_viewport* GWL_Window::viewport = nullptr |
Definition at line 451 of file GHOST_WindowWayland.cc.
Referenced by gwl_window_frame_pending_fractional_scale_set_notest(), gwl_window_viewport_set(), gwl_window_viewport_size_update(), gwl_window_viewport_unset(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| struct { ... } GWL_Window::wl |
Wayland core types.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_frame_pending_fractional_scale_set_notest(), gwl_window_frame_update_from_pending_no_lock(), gwl_window_pending_actions_handle(), gwl_window_viewport_set(), gwl_window_viewport_unset(), GHOST_WindowWayland::setWindowCursorGrab(), GHOST_WindowWayland::wl_surface_get(), xdg_activation_handle_done(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| struct { ... } GWL_Window::wp |
Wayland native types.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_frame_pending_fractional_scale_set_notest(), gwl_window_viewport_set(), gwl_window_viewport_size_update(), gwl_window_viewport_unset(), GHOST_WindowWayland::outputs_changed_update_scale(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| struct { ... } GWL_Window::xdg |
XDG native types.
Referenced by gwl_window_activate(), xdg_activation_handle_done(), and GHOST_WindowWayland::~GHOST_WindowWayland().
| GWL_XDG_Decor_Window* GWL_Window::xdg_decor = nullptr |
Definition at line 490 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::GHOST_WindowWayland(), gwl_window_frame_update_from_pending_no_lock(), gwl_window_state_set(), gwl_window_title_set(), xdg_surface_handle_configure(), xdg_toplevel_decoration_handle_configure(), xdg_toplevel_handle_configure_bounds(), and GHOST_WindowWayland::~GHOST_WindowWayland().