Add explicit deferred flags
This commit is contained in:
parent
958254ec3e
commit
459228cdb3
|
@ -239,7 +239,7 @@ void CanvasItem::_enter_canvas() {
|
|||
get_viewport()->gui_reset_canvas_sort_index();
|
||||
}
|
||||
|
||||
get_tree()->call_group_flags(SceneTree::GROUP_CALL_UNIQUE, group, SNAME("_top_level_raise_self"));
|
||||
get_tree()->call_group_flags(SceneTree::GROUP_CALL_UNIQUE | SceneTree::GROUP_CALL_DEFERRED, group, SNAME("_top_level_raise_self"));
|
||||
|
||||
} else {
|
||||
CanvasItem *parent = get_parent_item();
|
||||
|
@ -320,7 +320,7 @@ void CanvasItem::_notification(int p_what) {
|
|||
}
|
||||
|
||||
if (group != StringName()) {
|
||||
get_tree()->call_group_flags(SceneTree::GROUP_CALL_UNIQUE, group, "_top_level_raise_self");
|
||||
get_tree()->call_group_flags(SceneTree::GROUP_CALL_UNIQUE | SceneTree::GROUP_CALL_DEFERRED, group, "_top_level_raise_self");
|
||||
} else {
|
||||
CanvasItem *p = get_parent_item();
|
||||
ERR_FAIL_COND(!p);
|
||||
|
|
|
@ -386,7 +386,7 @@ void SceneTree::set_group_flags(uint32_t p_call_flags, const StringName &p_group
|
|||
}
|
||||
|
||||
void SceneTree::notify_group(const StringName &p_group, int p_notification) {
|
||||
notify_group_flags(0, p_group, p_notification);
|
||||
notify_group_flags(GROUP_CALL_DEFAULT, p_group, p_notification);
|
||||
}
|
||||
|
||||
void SceneTree::set_group(const StringName &p_group, const String &p_name, const Variant &p_value) {
|
||||
|
|
|
@ -1142,7 +1142,7 @@ void Window::popup(const Rect2i &p_screen_rect) {
|
|||
// Send a focus-out notification when opening a Window Manager Popup.
|
||||
SceneTree *scene_tree = get_tree();
|
||||
if (scene_tree) {
|
||||
scene_tree->notify_group("_viewports", NOTIFICATION_WM_WINDOW_FOCUS_OUT);
|
||||
scene_tree->notify_group_flags(SceneTree::GROUP_CALL_DEFERRED, "_viewports", NOTIFICATION_WM_WINDOW_FOCUS_OUT);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue