### Godot version

v4.2.dev.custom_build [0c2144da9]

### System information

Debian Linux X11 Xfce

### Issue description

Prerequisite: Be in Single Window Mode in the Editor
The Filesystem Dock is unusable when it is floating, which is not expected.
It appears garbled in the top-left corner:
![image](https://github.com/godotengine/godot/assets/6299227/109f7922-97de-44c3-814a-ca7f970e0602)

The following errors are shown:
```
  editor/window_wrapper.cpp:220 - Condition "!is_window_available()" is true.
  editor/window_wrapper.cpp:202 - Condition "!get_window_enabled()" is true. Returning: Rect2i()
  editor/window_wrapper.cpp:207 - Condition "!get_window_enabled()" is true. Returning: -1
  editor/window_wrapper.cpp:207 - Condition "!get_window_enabled()" is true. Returning: -1
```

bisecting lead to #62378
possibly related to #44439

### Steps to reproduce

1. Start a project in the Editor
2. Switch to Single Window Mode in the Editor and reload (if necessary)
3. Make the Filesystem Dock floating

### Minimal reproduction project

Editor issue
String source_scene = get_edited_scene()->get_scene_file_path();
			if (FileAccess::exists(source_scene + ".import")) {
				editable_info = TTR("This scene was imported, so changes to it won't be kept.\nInstantiating or inheriting it will allow you to make changes to it.\nPlease read the documentation relevant to importing scenes to better understand this workflow.");
				info_is_warning = true;
			}
		}
	} else {
		Node *selected_node = nullptr;
		if (current_obj->is_class("EditorDebuggerRemoteObject")) {
			disable_folding = true;
		} else if (current_obj->is_class("MultiNodeEdit")) {
			Node *scene = get_edited_scene();
			if (scene) {
				MultiNodeEdit *multi_node_edit = Object::cast_to<MultiNodeEdit>(current_obj);
				int node_count = multi_node_edit->get_node_count();
				if (node_count > 0) {
					List<Node *> multi_nodes;
					for (int node_index = 0; node_index < node_count; ++node_index) {
						Node *node = scene->get_node(multi_node_edit->get_node(node_index));
						if (node) {
							multi_nodes.push_back(node);
						}
					}
					if (!multi_nodes.is_empty()) {
						
						multi_nodes.sort_custom<Node::Comparator>();
						selected_node = multi_nodes.front()->get();
					}
				}
			}