diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp index 22746905691..d83b8086762 100644 --- a/editor/editor_node.cpp +++ b/editor/editor_node.cpp @@ -4392,8 +4392,14 @@ void EditorNode::_scene_tab_input(const Ref &p_input) { Ref mb = p_input; if (mb.is_valid()) { - if (mb->get_button_index() == BUTTON_MIDDLE && mb->is_pressed() && scene_tabs->get_hovered_tab() >= 0) { - _scene_tab_closed(scene_tabs->get_hovered_tab()); + if (scene_tabs->get_hovered_tab() >= 0) { + if (mb->get_button_index() == BUTTON_MIDDLE && mb->is_pressed()) { + _scene_tab_closed(scene_tabs->get_hovered_tab()); + } + } else { + if ((mb->get_button_index() == BUTTON_LEFT && mb->is_doubleclick()) || (mb->get_button_index() == BUTTON_MIDDLE && mb->is_pressed())) { + _menu_option_confirm(FILE_NEW_SCENE, true); + } } } }