diff --git a/doc/classes/EditorSettings.xml b/doc/classes/EditorSettings.xml
index 068dc9bcac0..432f8b2b4c7 100644
--- a/doc/classes/EditorSettings.xml
+++ b/doc/classes/EditorSettings.xml
@@ -1239,7 +1239,7 @@
[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices.
- If [code]true[/code], increases the scrollbar touch area and enables a larger dragger for split containers to improve usability on touchscreen devices
+ If [code]true[/code], increases the scrollbar touch area, enables a larger dragger for split containers, and increases PopupMenu vertical separation to improve usability on touchscreen devices.
[b]Note:[/b] Defaults to [code]true[/code] on touchscreen devices.
diff --git a/editor/editor_node.cpp b/editor/editor_node.cpp
index 8f6fc6460fd..715d781b5a6 100644
--- a/editor/editor_node.cpp
+++ b/editor/editor_node.cpp
@@ -7764,7 +7764,6 @@ void EditorNode::_update_main_menu_type() {
#ifdef ANDROID_ENABLED
// Align main menu icon visually with TouchActionsPanel buttons.
- main_menu_button->get_popup()->add_theme_constant_override("v_separation", 16 * EDSCALE);
menu_btn_spacer = memnew(Control);
menu_btn_spacer->set_custom_minimum_size(Vector2(8, 0) * EDSCALE);
title_bar->add_child(menu_btn_spacer);
diff --git a/editor/themes/theme_classic.cpp b/editor/themes/theme_classic.cpp
index 5cb6cb85b9c..e570bfc5a6c 100644
--- a/editor/themes/theme_classic.cpp
+++ b/editor/themes/theme_classic.cpp
@@ -1107,7 +1107,8 @@ void ThemeClassic::populate_standard_styles(const Ref &p_theme, Edi
p_theme->set_icon("submenu", "PopupMenu", p_theme->get_icon(SNAME("ArrowRight"), EditorStringName(EditorIcons)));
p_theme->set_icon("submenu_mirrored", "PopupMenu", p_theme->get_icon(SNAME("ArrowLeft"), EditorStringName(EditorIcons)));
- p_theme->set_constant("v_separation", "PopupMenu", p_config.forced_even_separation * EDSCALE);
+ int v_sep = (p_config.enable_touch_optimizations ? 12 : p_config.forced_even_separation) * EDSCALE;
+ p_theme->set_constant("v_separation", "PopupMenu", v_sep);
p_theme->set_constant("outline_size", "PopupMenu", 0);
p_theme->set_constant("item_start_padding", "PopupMenu", p_config.separation_margin);
p_theme->set_constant("item_end_padding", "PopupMenu", p_config.separation_margin);
diff --git a/editor/themes/theme_modern.cpp b/editor/themes/theme_modern.cpp
index 2613828200d..9a64725fee9 100644
--- a/editor/themes/theme_modern.cpp
+++ b/editor/themes/theme_modern.cpp
@@ -1046,7 +1046,8 @@ void ThemeModern::populate_standard_styles(const Ref &p_theme, Edit
p_theme->set_icon("submenu_mirrored", "PopupMenu", p_theme->get_icon(SNAME("ArrowLeft"), EditorStringName(EditorIcons)));
p_theme->set_constant("h_separation", "PopupMenu", p_config.base_margin * 1.75 * EDSCALE);
- p_theme->set_constant("v_separation", "PopupMenu", p_config.base_margin * 1.75 * EDSCALE);
+ int v_sep = (p_config.enable_touch_optimizations ? 12 : p_config.base_margin * 1.75) * EDSCALE;
+ p_theme->set_constant("v_separation", "PopupMenu", v_sep);
p_theme->set_constant("outline_size", "PopupMenu", 0);
p_theme->set_constant("item_start_padding", "PopupMenu", p_config.popup_margin);
p_theme->set_constant("item_end_padding", "PopupMenu", p_config.popup_margin);