### Godot version

4.0 stable

### System information

Manjaro Linux using i3, Foward+

### Issue description

Whenever the tileset property of any tilemap node is like open in the editor like this:
![image](https://user-images.githubusercontent.com/13070158/223416376-be0d7bca-1af8-43ad-9f19-a22de0a5a3c6.png)

If I select any other node and then select the TileMap node again it will print this error:
![image](https://user-images.githubusercontent.com/13070158/223416512-abbf4d45-e6c8-4c5f-894a-9b5810bf0cc2.png)
` editor/editor_node.cpp:8152 - Condition "plugins_list.has(p_plugin)" is true.`

This seems to be actually true to any plugin or `EditorInspectorPlugin` that edits node. In my project I have a InspectorPlugin that adds some buttons in `_parse_begin` for a specific kind of node, and that node also has an exported custom resource, and whenever I select any of that Node and their resource is open for edit in the Inspector I get the same error.

### Steps to reproduce

- Create a TileMap node on any scene
- Create a new TileSet resource on the TileMap node
- click on the TileSet resource to edit it in place in the TileMap node
- Select any other node
- Select the TileMap node again.


### Minimal reproduction project

[plugin_error_resource_edit.zip](https://github.com/godotengine/godot/files/10909135/plugin_error_resource_edit.zip)

- Open main scene
- Select the TileMap node
- Click the tileset resource in the inspector
- Select the root node
- Select TileMap node again
p_overlay->draw_set_transform_matrix(xform);
							p_overlay->draw_texture_rect_region(atlas_source->get_texture(), dest_rect, source_rect, modulate * Color(1.0, 1.0, 1.0, 0.5), transpose, tile_set->is_uv_clipping());
							p_overlay->draw_set_transform_matrix(Transform2D());
						} else {
							tile_set->draw_tile_shape(p_overlay, xform * tile_xform, Color(1.0, 1.0, 1.0, 0.5), true);
						}
					} else {
						tile_set->draw_tile_shape(p_overlay, xform * tile_xform, Color(0.0, 0.0, 0.0, 0.5), true);
					}
				}
			}
		}
		Ref<Font> font = p_overlay->get_theme_font(SNAME("font"), SNAME("Label"));
		int font_size = p_overlay->get_theme_font_size(SNAME("font_size"), SNAME("Label"));
		Point2 msgpos = Point2(20 * EDSCALE, p_overlay->get_size().y - 20 * EDSCALE);
		String text = tile_map->local_to_map(tile_map->get_local_mouse_position());
		if (drag_type == DRAG_TYPE_RECT) {
			Vector2i size = tile_map->local_to_map(tile_map->get_local_mouse_position()) - tile_map->local_to_map(drag_start_mouse_pos);
			text += vformat(" %s (%dx%d)", TTR("Drawing Rect:"), ABS(size.x) + 1, ABS(size.y) + 1);
		}
		p_overlay->draw_string(font, msgpos + Point2(1, 1), text, HORIZONTAL_ALIGNMENT_LEFT, -1, font_size, Color(0, 0, 0, 0.8));
		p_overlay->draw_string(font, msgpos + Point2(-1, -1), text, HORIZONTAL_ALIGNMENT_LEFT, -1, font_size, Color(0, 0, 0, 0.8));
		p_overlay->draw_string(font, msgpos, text, HORIZONTAL_ALIGNMENT_LEFT, -1, font_size, Color(1, 1, 1, 1));
	}
}
void TileMapEditorTilesPlugin::_mouse_exited_viewport() {
	has_mouse = false;
	CanvasItemEditor::get_singleton()->update_viewport();
}
TileMapCell TileMapEditorTilesPlugin::_pick_random_tile(Ref<TileMapPattern> p_pattern) {