|
Blender V4.3
|
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 424 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 445 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 439 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 478 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::beginFullScreen(), GHOST_WindowWayland::endFullScreen(), 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 479 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 486 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 459 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 458 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 457 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 493 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 496 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 499 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 467 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 509 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 502 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::scale_params_get().
| wl_surface* GWL_Window::surface = nullptr |
Definition at line 428 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 491 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::getTitle(), and gwl_window_title_set().
| wp_viewport* GWL_Window::viewport = nullptr |
Definition at line 433 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 472 of file GHOST_WindowWayland.cc.
Referenced by GHOST_WindowWayland::beginFullScreen(), GHOST_WindowWayland::endFullScreen(), 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().