summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Sauermann <6299227+Sauermann@users.noreply.github.com>2022-03-27 01:26:49 +0100
committerMarkus Sauermann <6299227+Sauermann@users.noreply.github.com>2022-03-28 09:40:36 +0200
commitba208df6e6629727f8702b85a5c025875cb41adb (patch)
tree1a09a28e2e6b5376bd72e6e94f8233879281881b
parentc422dc5feb8cc4b16c096c1123f5df8ea96e32bc (diff)
Send a focus-out notification when opening a Window Manager Popup
-rw-r--r--scene/main/window.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/scene/main/window.cpp b/scene/main/window.cpp
index 6837fcae21..62e8e7fea7 100644
--- a/scene/main/window.cpp
+++ b/scene/main/window.cpp
@@ -1101,6 +1101,14 @@ void Window::popup_centered_ratio(float p_ratio) {
void Window::popup(const Rect2i &p_screen_rect) {
emit_signal(SNAME("about_to_popup"));
+ if (!_get_embedder() && get_flag(FLAG_POPUP)) {
+ // 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);
+ }
+ }
+
// Update window size to calculate the actual window size based on contents minimum size and minimum size.
_update_window_size();