Merge branch 'blender-v4.0-release'

This commit is contained in:
Campbell Barton 2023-10-06 17:15:13 +11:00
commit 9ddb3143c0
2 changed files with 25 additions and 4 deletions

@ -801,12 +801,20 @@ static void gwl_window_frame_update_from_pending_no_lock(GWL_Window *win)
system->getMilliSeconds(), GHOST_kEventWindowDPIHintChanged, win->ghost_window)); system->getMilliSeconds(), GHOST_kEventWindowDPIHintChanged, win->ghost_window));
} }
if (win->frame.is_active != win->frame_pending.is_active) {
if (win->frame_pending.is_active) { if (win->frame_pending.is_active) {
win->ghost_window->activate(); win->ghost_window->activate();
} }
else { else {
win->ghost_window->deactivate(); win->ghost_window->deactivate();
} }
}
else {
GHOST_ASSERT(
win->frame.is_active ==
(win->ghost_system->getWindowManager()->getActiveWindow() == win->ghost_window),
"GHOST internal active state does not match WAYLAND!");
}
win->frame_pending.size[0] = win->frame.size[0]; win->frame_pending.size[0] = win->frame.size[0];
win->frame_pending.size[1] = win->frame.size[1]; win->frame_pending.size[1] = win->frame.size[1];

@ -152,9 +152,22 @@ class GHOST_WindowWayland : public GHOST_Window {
/* WAYLAND window-level functions. */ /* WAYLAND window-level functions. */
GHOST_TSuccess close(); /**
* Set the window as active and send an #GHOST_kEventWindowActivate event.
*
* \note The current active state is *not* checked, the caller is responsible for
* not activating windows which are already active.
*/
GHOST_TSuccess activate(); GHOST_TSuccess activate();
/**
* De-activate the window and send a #GHOST_kEventWindowDeactivate event.
*
* \note The current active state is *not* checked, the caller is responsible for
* not de-activating windows that aren't active.
*/
GHOST_TSuccess deactivate(); GHOST_TSuccess deactivate();
GHOST_TSuccess close();
GHOST_TSuccess notify_size(); GHOST_TSuccess notify_size();
GHOST_TSuccess notify_decor_redraw(); GHOST_TSuccess notify_decor_redraw();