summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkit <kitbdev@gmail.com>2023-10-03 15:36:53 -0400
committerkit <kitbdev@gmail.com>2023-10-03 15:36:53 -0400
commit349da99476618555ef5a4121838b203fe7610f90 (patch)
tree4ebd763e37fc26329cb7da25c482c9c162c8cfec
parentf5696c311cdb09e0a34fa4ba7ef5d2524c515b89 (diff)
downloadredot-engine-349da99476618555ef5a4121838b203fe7610f90.tar.gz
fix load floating dock layout
-rw-r--r--editor/editor_node.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index e69dcb2278..d97aeb1b30 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -4663,6 +4663,7 @@ void EditorNode::_dock_make_float(Control *p_dock, int p_slot_index, bool p_show
wrapper->set_meta("dock_slot", p_slot_index);
wrapper->set_meta("dock_index", dock_index);
wrapper->set_meta("dock_name", p_dock->get_name().operator String());
+ p_dock->show();
wrapper->connect("window_close_requested", callable_mp(this, &EditorNode::_dock_floating_close_request).bind(wrapper));
@@ -5166,14 +5167,16 @@ void EditorNode::_load_docks_from_config(Ref<ConfigFile> p_layout, const String
if (wrapper->get_meta("dock_name") == name) {
if (restore_window_on_load && floating_docks_dump.has(name)) {
_restore_floating_dock(floating_docks_dump[name], wrapper, i);
- return;
} else {
- _dock_floating_close_request(wrapper);
- atidx = wrapper->get_meta("dock_index");
+ atidx = wrapper->get_meta("dock_slot");
+ node = wrapper->get_wrapped_control();
+ wrapper->set_window_enabled(false);
}
+ break;
}
}
-
+ }
+ if (!node) {
// Well, it's not anywhere.
continue;
}
@@ -5196,7 +5199,7 @@ void EditorNode::_load_docks_from_config(Ref<ConfigFile> p_layout, const String
if (restore_window_on_load && floating_docks_dump.has(name)) {
_restore_floating_dock(floating_docks_dump[name], node, i);
} else if (wrapper) {
- _dock_floating_close_request(wrapper);
+ wrapper->set_window_enabled(false);
}
}