### Godot version

4.1.1

### System information

linux

### Issue description

![image](https://github.com/godotengine/godot-proposals/assets/71937306/04dcf0e9-1c0d-4a7f-8ca9-827dd281253a)

![image](https://github.com/godotengine/godot-proposals/assets/71937306/aa70e31e-0486-455a-b8b4-7e589ec7b754)

notice how the first option in the list is never aligned with the button that spawned it.

### Steps to reproduce

right click in the FileSystem dock and hover over the `Create New →` option.

### Minimal reproduction project

editor
}
					PopupMenu *pm = Object::cast_to<PopupMenu>(n);
					if (!pm || !pm->is_visible()) {
						continue;
					}
					pm->hide();
				}
				set_process_internal(false);
			} else {
				if (!is_embedded()) {
					set_process_internal(true);
				}
				
				margin_container->add_theme_constant_override("margin_left", theme_cache.panel_style->get_margin(Side::SIDE_LEFT));
				margin_container->add_theme_constant_override("margin_top", theme_cache.panel_style->get_margin(Side::SIDE_TOP));
				margin_container->add_theme_constant_override("margin_right", theme_cache.panel_style->get_margin(Side::SIDE_RIGHT));
				margin_container->add_theme_constant_override("margin_bottom", theme_cache.panel_style->get_margin(Side::SIDE_BOTTOM));
			}
		} break;
	}
}
/* Methods to add items with or without icon, checkbox, shortcut.
 * Be sure to keep them in sync when adding new properties in the Item struct.
 */
#define ITEM_SETUP_WITH_ACCEL(p_label, p_id, p_accel) \
	item.text = p_label;                              \
	item.xl_text = atr(p_label);                      \
	item.id = p_id == -1 ? items.size() : p_id;       \
	item.accel = p_accel;
void PopupMenu::add_item(const String &p_label, int p_id, Key p_accel) {