### Godot version

4.0.dev(dc3175e4cdb4e54e1c6200b6c4d07646eea95284)

### System information

Any

### Issue description

EditorPlugins that depend on the resources that Node has will not be visible when SubInspector is focused.

https://user-images.githubusercontent.com/61938263/210553656-86669f57-e41f-427e-a650-30630c27d850.mp4

This is caused by two problems:

The first is caused by implicit editor deletion in Node3D. This is fixed by #70907.

The other is due to a change in inspector update timing, which is regression by #68498. Revert PR #70909 will fix this issue, but if not, we will need to update SubInspectorEditor in the correct way.

### Steps to reproduce

Select Path3D or CollisionPolygon3D and open a SubInspector such as Script.

### Minimal reproduction project

[plugintest.zip](https://github.com/godotengine/godot/files/10343962/plugintest.zip)

}
	warning = memnew(Button);
	warning->set_text(TTR("Temporary Euler may be changed implicitly!"));
	warning->set_clip_text(true);
	warning->connect("pressed", callable_mp(this, &EditorPropertyQuaternion::_warning_pressed));
	warning_dialog = memnew(AcceptDialog);
	add_child(warning_dialog);
	warning_dialog->set_text(TTR("Temporary Euler will not be stored in the object with the original value. Instead, it will be stored as Quaternion with irreversible conversion.\nThis is due to the fact that the result of Euler->Quaternion can be determined uniquely, but the result of Quaternion->Euler can be multi-existent."));
	euler_label = memnew(Label);
	euler_label->set_text("Temporary Euler");
	edit_custom_bc->add_child(warning);
	edit_custom_bc->add_child(edit_custom_layout);
	edit_custom_layout->add_child(euler_label);
	for (int i = 0; i < 3; i++) {
		euler[i] = memnew(EditorSpinSlider);
		euler[i]->set_flat(true);
		euler[i]->set_label(desc[i]);
		edit_custom_layout->add_child(euler[i]);
		add_focusable(euler[i]);
		euler[i]->connect("value_changed", callable_mp(this, &EditorPropertyQuaternion::_custom_value_changed));
		if (horizontal) {
			euler[i]->set_h_size_flags(SIZE_EXPAND_FILL);
		}
	}
	edit_button = memnew(Button);
	edit_button->set_flat(true);
	edit_button->set_toggle_mode(true);
	default_layout->add_child(edit_button);
	edit_button->connect("pressed", callable_mp(this, &EditorPropertyQuaternion::_edit_custom_value));
	add_focusable(edit_button);