Repository: godot
Issue: Clicking on a sub-resource closes the sub-inspector it is located in, instead of opening in a sub-inspector, if an EditorPlugin `handles` it
Labels: bug,topic:editor,topic:plugin

### Godot version

f2a61684143af02a8cbe7002645af817607f9bd6

### System information

Windows 10 64 bits GLES3 GeForce GTX 1060 6GB/PCIe/SSE2

### Issue description

I wanted to adjust some inspector UI in my module and got faced with a strange unexpected behavior.

I have the following properties in a custom node:

![image](https://user-images.githubusercontent.com/1311555/185804917-9fa6852f-6ae5-4695-897f-ff7276b51ca9.png)

`library` is a resource, which contains sub-resources. 
If I click on the sub-resource on the right of `Item 1`, it usually opens a nested sub-inspector. However, if I create an `EditorPlugin` which `handles` the class of that sub-resource, clicking that sub-resource instead *closes the parent sub-inspector*, leaving it in this state:

![image](https://user-images.githubusercontent.com/1311555/185804979-2a1bc610-186a-468f-8a59-beb6e84fe24b.png)

This happens even if the editor plugin does nothing, apart from returning `true` in `handles` for that class. There is no errors, so this is quite confusing.

There is a possible design issue that this highlights: if two sub-inspectors handled by the plugin are open, which one is "currently being edited"? If we only rely on the `edit` method, we could say the last opened one, but it could be confusing since multiple can be opened still. Or maybe considering the "currently edited" item is up to the plugin to decide how to handle, in which case relying on `edit` is the wrong approach.
If there are other reasons this cannot work, at least it could open as a full inspector instead.

Meanwhile, perhaps I can workaround this by *not* handling this object type, yet still registering an inspector plugin and somehow cache the passed `object` in `parse_begin`, so sub-inspectors can still work? Plugins are not "instanced" when one or more objects they handle are inspected, but custom controls added to their inspectors are.

### Steps to reproduce

Have `MyNode` with a `MyResource` property. `MyResource` in turn contains a `MySubResource` property. Then have two editor plugins, one handling `MyResource`, and another handling `MySubResource`. They don't need to do anything particular, just return `true` when matching their associated class in the `handles` method.



### Minimal reproduction project

The reproduction steps are quite specific so I wrote a reproduction module, which you can paste in the `modules` folder:
[subinspector_plugin_issue.zip](https://github.com/godotengine/godot/files/9389725/subinspector_plugin_issue.zip)

Create a `MyNode`, then in the inspector of that node, create a new `MyResource`. Then inside the `MyResource`, create a new `MySubResource`. Observe clicking on `MySubResource` closes the `MyResource` inspector instead of opening a `MySubResource` inspector.

-------

Note for more context, this is how the full inspector setup I'm making is (here using the workaround of not using `handles`):
![image](https://user-images.githubusercontent.com/1311555/185807139-fd692ed3-dd3b-4789-a04e-732dc401565d.png)