summaryrefslogtreecommitdiffstats
path: root/editor/editor_node.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'editor/editor_node.cpp')
-rw-r--r--editor/editor_node.cpp10
1 files changed, 2 insertions, 8 deletions
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index 30872f0288..8e749f4def 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -4770,21 +4770,15 @@ void EditorNode::_dock_select_input(const Ref<InputEvent> &p_input) {
Ref<InputEventMouseButton> mb = me;
if (mb.is_valid() && mb->get_button_index() == MouseButton::LEFT && mb->is_pressed() && dock_popup_selected_idx != nrect) {
- Control *dock = dock_slot[dock_popup_selected_idx]->get_current_tab_control();
- if (dock) {
- dock_slot[dock_popup_selected_idx]->remove_child(dock);
- }
+ dock_slot[nrect]->move_tab_from_tab_container(dock_slot[dock_popup_selected_idx], dock_slot[dock_popup_selected_idx]->get_current_tab(), dock_slot[nrect]->get_tab_count());
+
if (dock_slot[dock_popup_selected_idx]->get_tab_count() == 0) {
dock_slot[dock_popup_selected_idx]->hide();
-
} else {
dock_slot[dock_popup_selected_idx]->set_current_tab(0);
}
- dock_slot[nrect]->add_child(dock);
dock_popup_selected_idx = nrect;
- dock_slot[nrect]->set_current_tab(dock_slot[nrect]->get_tab_count() - 1);
- dock_slot[nrect]->set_tab_title(dock_slot[nrect]->get_tab_count() - 1, TTRGET(dock->get_name()));
dock_slot[nrect]->show();
dock_select->queue_redraw();