### Godot version

v4.0.beta17.official [c40020513]

### System information

macOS 13.0.1

### Issue description

When a `Control` node is over a `SubViewportContainer` (with a `SubViewport` as a child), both in Full Rect anchors, asking for the get_viewport().get_mouse_position() from a scene inside the `SubViewport` returns (0, 0) as the position of the mouse.

This wasn't happening in at least Beta 15. I was getting the mouse position without any problems before Beta 17. I didn't try Beta 16.

### Steps to reproduce

1. Create a `Control` node
2. Add two children: A `SubViewportContainer` and a `Control` node
3. Put both in Full Rect anchors so the `Control` node (child) is covering the `SubViewportContainer`
4. Ask for the get_viewport().get_mouse_position() from inside a scene of the `SubViewport`

As you can see in this screenshot: asking for the mouse position from inside the `Node2D` script always returns (0, 0).

<img width="1533" alt="SubViewportContainerIssue" src="https://user-images.githubusercontent.com/91340577/217051768-d9c2e8ad-40ca-4c6d-bb98-f6a7c9c6081f.png">

Only If the `Control` (child) mouse filtering is set to _Ignore_ you can get the mouse position. But with that you are losing the mouse inputs from that `Control` node.

You can find the setup of these nodes in the MRP.


### Minimal reproduction project

Run the main scene (control.tscn) and move the mouse around the screen. Look for the print in the Output tab.

[SubViewportMousePositionIssue.zip](https://github.com/godotengine/godot/files/10667894/SubViewportMousePositionIssue.zip)
int index = _sub_window_find(p_window);
	ERR_FAIL_COND(index == -1);
	const SubWindow &sw = gui.sub_windows[index];
	Transform2D pos;
	pos.set_origin(p_window->get_position());
	RS::get_singleton()->canvas_item_clear(sw.canvas_item);
	Rect2i r = Rect2i(p_window->get_position(), sw.window->get_size());
	if (!p_window->get_flag(Window::FLAG_BORDERLESS)) {
		Ref<StyleBox> panel = p_window->get_theme_stylebox(SNAME("embedded_border"));
		panel->draw(sw.canvas_item, r);
		
		Ref<Font> title_font = p_window->get_theme_font(SNAME("title_font"));
		int font_size = p_window->get_theme_font_size(SNAME("title_font_size"));
		Color title_color = p_window->get_theme_color(SNAME("title_color"));
		int title_height = p_window->get_theme_constant(SNAME("title_height"));
		int close_h_ofs = p_window->get_theme_constant(SNAME("close_h_offset"));
		int close_v_ofs = p_window->get_theme_constant(SNAME("close_v_offset"));
		TextLine title_text = TextLine(p_window->atr(p_window->get_title()), title_font, font_size);
		title_text.set_width(r.size.width - panel->get_minimum_size().x - close_h_ofs);
		title_text.set_direction(p_window->is_layout_rtl() ? TextServer::DIRECTION_RTL : TextServer::DIRECTION_LTR);
		int x = (r.size.width - title_text.get_size().x) / 2;
		int y = (-title_height - title_text.get_size().y) / 2;
		Color font_outline_color = p_window->get_theme_color(SNAME("title_outline_modulate"));
		int outline_size = p_window->get_theme_constant(SNAME("title_outline_size"));
		if (outline_size > 0 && font_outline_color.a > 0) {
			title_text.draw_outline(sw.canvas_item, r.position + Point2(x, y), outline_size, font_outline_color);
		}