### Godot version

4.1.1.stable

### System information

Godot v4.1.1.stable - Windows 10.0.19045 - Vulkan (Mobile) - dedicated NVIDIA GeForce RTX 2070 SUPER (NVIDIA; 30.0.15.1295) - Intel(R) Core(TM) i5-8400 CPU @ 2.80GHz (6 Threads)

### Issue description

When undocking the script editor so that it's floating, CollisionShape3D Shape Size handles stop working.

If they were visible on a Shape, they remain visible on that shape and still work for that shape; but they will not appear on any other collision object when selecting it.

If you launch the editor with the Script panel already in a floating state, no shape handles ever become visible.

If you dock the Script editor again, everything goes back to normal and works fine.

### Steps to reproduce

Create a 3D scene with some collision shapes.
Undock the Script editor

### Minimal reproduction project

N/A
Script *script = Object::cast_to<Script>(p_object);
	if (!script) {
		return false;
	}
	return script->get_language()->overrides_external_editor();
}
void EditorNode::_edit_current(bool p_skip_foreign) {
	ObjectID current_id = editor_history.get_current();
	Object *current_obj = current_id.is_valid() ? ObjectDB::get_instance(current_id) : nullptr;
	Ref<Resource> res = Object::cast_to<Resource>(current_obj);
	if (p_skip_foreign && res.is_valid()) {
		if (res->get_path().find("::") > -1 && res->get_path().get_slice("::", 0) != editor_data.get_scene_path(get_current_tab())) {
			
			current_obj = nullptr;
		}
	}
	bool inspector_only = editor_history.is_current_inspector_only();
	this->current = current_obj;
	if (!current_obj) {
		SceneTreeDock::get_singleton()->set_selected(nullptr);
		InspectorDock::get_inspector_singleton()->edit(nullptr);
		NodeDock::get_singleton()->set_node(nullptr);
		InspectorDock::get_singleton()->update(nullptr);
		hide_unused_editors();
		return;
	}
	Object *prev_inspected_object = InspectorDock::get_inspector_singleton()->get_edited_object();
	bool disable_folding = bool(EDITOR_GET("interface/inspector/disable_folding"));