diff --git a/modules/gui/qt/Makefile.am b/modules/gui/qt/Makefile.am
index 708b82f62a07e472ba19f1f222a727d15a5a2143..f6af67114ab89ba88d757cc41d77f3bc1179a772 100644
--- a/modules/gui/qt/Makefile.am
+++ b/modules/gui/qt/Makefile.am
@@ -46,7 +46,7 @@ endif
 
 libqt_plugin_la_SOURCES = \
 	gui/qt/qt.cpp gui/qt/qt.hpp \
-	gui/qt/menus.cpp gui/qt/menus.hpp \
+	gui/qt/menus/menus.cpp gui/qt/menus/menus.hpp \
 	gui/qt/main_interface.cpp gui/qt/main_interface.hpp \
 	gui/qt/dialogs/dialogs_provider.cpp gui/qt/dialogs/dialogs_provider.hpp \
 	gui/qt/managers/renderer_manager.cpp gui/qt/managers/renderer_manager.hpp \
@@ -117,8 +117,8 @@ libqt_plugin_la_SOURCES = \
 	gui/qt/components/voutwindow/qvoutwindow.hpp \
 	gui/qt/components/voutwindow/qvoutwindowdummy.cpp \
 	gui/qt/components/voutwindow/qvoutwindowdummy.hpp \
-	gui/qt/components/custom_menus.cpp \
-	gui/qt/components/custom_menus.hpp \
+	gui/qt/menus/custom_menus.cpp \
+	gui/qt/menus/custom_menus.hpp \
 	gui/qt/dialogs/epg/epg.cpp gui/qt/dialogs/epg/epg.hpp \
 	gui/qt/dialogs/epg/EPGChannels.cpp \
 	gui/qt/dialogs/epg/EPGChannels.hpp \
@@ -230,7 +230,7 @@ dialogs/dialogs_provider.moc.cpp dialogs/vlm/vlm.moc.cpp: $(top_builddir)/config
 
 nodist_libqt_plugin_la_SOURCES = \
 	gui/qt/main_interface.moc.cpp \
-	gui/qt/menus.moc.cpp \
+	gui/qt/menus/menus.moc.cpp \
 	gui/qt/dialogs/dialogs_provider.moc.cpp \
 	gui/qt/managers/renderer_manager.moc.cpp \
 	gui/qt/recents.moc.cpp \
@@ -272,7 +272,7 @@ nodist_libqt_plugin_la_SOURCES = \
 	gui/qt/components/navigation_history.moc.cpp \
 	gui/qt/components/controller.moc.cpp \
 	gui/qt/components/controller_widget.moc.cpp \
-	gui/qt/components/custom_menus.moc.cpp \
+	gui/qt/menus/custom_menus.moc.cpp \
 	gui/qt/components/recent_media_model.moc.cpp \
 	gui/qt/components/selectable_list_model.moc.cpp \
 	gui/qt/components/settings.moc.cpp \
@@ -616,18 +616,18 @@ libqt_plugin_la_QML = \
 	gui/qt/qml/utils/VideoProgressBar.qml \
         gui/qt/qml/utils/SearchBox.qml \
         gui/qt/qml/utils/SortControl.qml \
-	gui/qt/qml/menus/CheckableModelSubMenu.qml \
-	gui/qt/qml/menus/AudioMenu.qml \
-	gui/qt/qml/menus/HelpMenu.qml \
-	gui/qt/qml/menus/MainDropdownMenu.qml \
-	gui/qt/qml/menus/MainMenubar.qml \
-	gui/qt/qml/menus/MediaMenu.qml \
-	gui/qt/qml/menus/PlaybackMenu.qml \
-	gui/qt/qml/menus/PopupMenu.qml \
-	gui/qt/qml/menus/SubtitleMenu.qml \
-	gui/qt/qml/menus/ToolsMenu.qml \
-	gui/qt/qml/menus/ViewMenu.qml \
-	gui/qt/qml/menus/VideoMenu.qml \
+	gui/qt/menus/qml/CheckableModelSubMenu.qml \
+	gui/qt/menus/qml/AudioMenu.qml \
+	gui/qt/menus/qml/HelpMenu.qml \
+	gui/qt/menus/qml/MainDropdownMenu.qml \
+	gui/qt/menus/qml/MainMenubar.qml \
+	gui/qt/menus/qml/MediaMenu.qml \
+	gui/qt/menus/qml/PlaybackMenu.qml \
+	gui/qt/menus/qml/PopupMenu.qml \
+	gui/qt/menus/qml/SubtitleMenu.qml \
+	gui/qt/menus/qml/ToolsMenu.qml \
+	gui/qt/menus/qml/ViewMenu.qml \
+	gui/qt/menus/qml/VideoMenu.qml \
 	gui/qt/medialibrary/qml/ArtistTopBanner.qml \
 	gui/qt/medialibrary/qml/AudioGridItem.qml \
 	gui/qt/medialibrary/qml/MainDisplay.qml \
diff --git a/modules/gui/qt/dialogs/dialogs_provider.cpp b/modules/gui/qt/dialogs/dialogs_provider.cpp
index 2f24b3f33cb9cb695e9618981397139703d6c158..3eee46f404f1cad8b4d7d9d4cb7122b36f1d4d10 100644
--- a/modules/gui/qt/dialogs/dialogs_provider.cpp
+++ b/modules/gui/qt/dialogs/dialogs_provider.cpp
@@ -31,7 +31,7 @@
 #include "dialogs_provider.hpp"
 #include "player/player_controller.hpp" /* Load Subtitles */
 #include "playlist/playlist_controller.hpp"
-#include "menus.hpp"
+#include "menus/menus.hpp"
 #include "recents.hpp"
 #include "util/qt_dirs.hpp"
 #include "util/customwidgets.hpp" /* VLCKeyToString() */
diff --git a/modules/gui/qt/main_interface.cpp b/modules/gui/qt/main_interface.cpp
index 1f0a2582a9091ced3d26cbc7224888020cae0af1..26820051fc287e95760acd915f631dfd502f275c 100644
--- a/modules/gui/qt/main_interface.cpp
+++ b/modules/gui/qt/main_interface.cpp
@@ -69,7 +69,7 @@
 
 #include "util/qmleventfilter.hpp"
 
-#include "menus.hpp"                            // Menu creation
+#include "menus/menus.hpp"                            // Menu creation
 
 #include <QCloseEvent>
 #include <QKeyEvent>
diff --git a/modules/gui/qt/components/custom_menus.cpp b/modules/gui/qt/menus/custom_menus.cpp
similarity index 100%
rename from modules/gui/qt/components/custom_menus.cpp
rename to modules/gui/qt/menus/custom_menus.cpp
diff --git a/modules/gui/qt/components/custom_menus.hpp b/modules/gui/qt/menus/custom_menus.hpp
similarity index 100%
rename from modules/gui/qt/components/custom_menus.hpp
rename to modules/gui/qt/menus/custom_menus.hpp
diff --git a/modules/gui/qt/menus.cpp b/modules/gui/qt/menus/menus.cpp
similarity index 100%
rename from modules/gui/qt/menus.cpp
rename to modules/gui/qt/menus/menus.cpp
diff --git a/modules/gui/qt/menus.hpp b/modules/gui/qt/menus/menus.hpp
similarity index 99%
rename from modules/gui/qt/menus.hpp
rename to modules/gui/qt/menus/menus.hpp
index dd8a22a82224948e0832d019cc866eb90a46fb0c..eaf5bf129d390fadb8f26e357708373bfcc94680 100644
--- a/modules/gui/qt/menus.hpp
+++ b/modules/gui/qt/menus/menus.hpp
@@ -26,7 +26,7 @@
 
 #include "qt.hpp"
 
-#include "components/custom_menus.hpp"
+#include "custom_menus.hpp"
 
 #include <QObject>
 #include <QMenu>
diff --git a/modules/gui/qt/qml/menus/AudioMenu.qml b/modules/gui/qt/menus/qml/AudioMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/AudioMenu.qml
rename to modules/gui/qt/menus/qml/AudioMenu.qml
diff --git a/modules/gui/qt/qml/menus/CheckableModelSubMenu.qml b/modules/gui/qt/menus/qml/CheckableModelSubMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/CheckableModelSubMenu.qml
rename to modules/gui/qt/menus/qml/CheckableModelSubMenu.qml
diff --git a/modules/gui/qt/qml/menus/HelpMenu.qml b/modules/gui/qt/menus/qml/HelpMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/HelpMenu.qml
rename to modules/gui/qt/menus/qml/HelpMenu.qml
diff --git a/modules/gui/qt/qml/menus/MainDropdownMenu.qml b/modules/gui/qt/menus/qml/MainDropdownMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/MainDropdownMenu.qml
rename to modules/gui/qt/menus/qml/MainDropdownMenu.qml
diff --git a/modules/gui/qt/qml/menus/MainMenubar.qml b/modules/gui/qt/menus/qml/MainMenubar.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/MainMenubar.qml
rename to modules/gui/qt/menus/qml/MainMenubar.qml
diff --git a/modules/gui/qt/qml/menus/MediaMenu.qml b/modules/gui/qt/menus/qml/MediaMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/MediaMenu.qml
rename to modules/gui/qt/menus/qml/MediaMenu.qml
diff --git a/modules/gui/qt/qml/menus/PlaybackMenu.qml b/modules/gui/qt/menus/qml/PlaybackMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/PlaybackMenu.qml
rename to modules/gui/qt/menus/qml/PlaybackMenu.qml
diff --git a/modules/gui/qt/qml/menus/PopupMenu.qml b/modules/gui/qt/menus/qml/PopupMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/PopupMenu.qml
rename to modules/gui/qt/menus/qml/PopupMenu.qml
diff --git a/modules/gui/qt/qml/menus/SubtitleMenu.qml b/modules/gui/qt/menus/qml/SubtitleMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/SubtitleMenu.qml
rename to modules/gui/qt/menus/qml/SubtitleMenu.qml
diff --git a/modules/gui/qt/qml/menus/ToolsMenu.qml b/modules/gui/qt/menus/qml/ToolsMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/ToolsMenu.qml
rename to modules/gui/qt/menus/qml/ToolsMenu.qml
diff --git a/modules/gui/qt/qml/menus/VideoMenu.qml b/modules/gui/qt/menus/qml/VideoMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/VideoMenu.qml
rename to modules/gui/qt/menus/qml/VideoMenu.qml
diff --git a/modules/gui/qt/qml/menus/ViewMenu.qml b/modules/gui/qt/menus/qml/ViewMenu.qml
similarity index 100%
rename from modules/gui/qt/qml/menus/ViewMenu.qml
rename to modules/gui/qt/menus/qml/ViewMenu.qml
diff --git a/modules/gui/qt/recents.cpp b/modules/gui/qt/recents.cpp
index 284f1cef122c06fdc58b8dbb664539dbf744cc59..3ca98ffb440f7368bc7318e4cbb1afdab6e6c3a1 100644
--- a/modules/gui/qt/recents.cpp
+++ b/modules/gui/qt/recents.cpp
@@ -24,7 +24,7 @@
 #include "qt.hpp"
 #include "recents.hpp"
 #include "dialogs/dialogs_provider.hpp"
-#include "menus.hpp"
+#include "menus/menus.hpp"
 #include "util/qt_dirs.hpp"
 #include <vlc_cxx_helpers.hpp>
 #include "playlist/playlist_controller.hpp"
diff --git a/modules/gui/qt/vlc.qrc b/modules/gui/qt/vlc.qrc
index e714e1a30975774667b7780e103ba60105926430..778dc1f9bf16a539fe187f6004b7a02825401abe 100644
--- a/modules/gui/qt/vlc.qrc
+++ b/modules/gui/qt/vlc.qrc
@@ -249,18 +249,18 @@
         <file alias="PlaylistToolbar.qml">playlist/qml/PlaylistToolbar.qml</file>
     </qresource>
     <qresource prefix="/menus">
-        <file alias="AudioMenu.qml">qml/menus/AudioMenu.qml</file>
-        <file alias="HelpMenu.qml">qml/menus/HelpMenu.qml</file>
-        <file alias="MainDropdownMenu.qml">qml/menus/MainDropdownMenu.qml</file>
-        <file alias="MainMenubar.qml">qml/menus/MainMenubar.qml</file>
-        <file alias="MediaMenu.qml">qml/menus/MediaMenu.qml</file>
-        <file alias="PlaybackMenu.qml">qml/menus/PlaybackMenu.qml</file>
-        <file alias="SubtitleMenu.qml">qml/menus/SubtitleMenu.qml</file>
-        <file alias="ToolsMenu.qml">qml/menus/ToolsMenu.qml</file>
-        <file alias="VideoMenu.qml">qml/menus/VideoMenu.qml</file>
-        <file alias="CheckableModelSubMenu.qml">qml/menus/CheckableModelSubMenu.qml</file>
-        <file alias="ViewMenu.qml">qml/menus/ViewMenu.qml</file>
-        <file alias="PopupMenu.qml">qml/menus/PopupMenu.qml</file>
+        <file alias="AudioMenu.qml">menus/qml/AudioMenu.qml</file>
+        <file alias="HelpMenu.qml">menus/qml/HelpMenu.qml</file>
+        <file alias="MainDropdownMenu.qml">menus/qml/MainDropdownMenu.qml</file>
+        <file alias="MainMenubar.qml">menus/qml/MainMenubar.qml</file>
+        <file alias="MediaMenu.qml">menus/qml/MediaMenu.qml</file>
+        <file alias="PlaybackMenu.qml">menus/qml/PlaybackMenu.qml</file>
+        <file alias="SubtitleMenu.qml">menus/qml/SubtitleMenu.qml</file>
+        <file alias="ToolsMenu.qml">menus/qml/ToolsMenu.qml</file>
+        <file alias="VideoMenu.qml">menus/qml/VideoMenu.qml</file>
+        <file alias="CheckableModelSubMenu.qml">menus/qml/CheckableModelSubMenu.qml</file>
+        <file alias="ViewMenu.qml">menus/qml/ViewMenu.qml</file>
+        <file alias="PopupMenu.qml">menus/qml/PopupMenu.qml</file>
     </qresource>
     <qresource prefix="/player">
         <file alias="Player.qml">player/qml/Player.qml</file>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 8ee653d85b515f3e8823d7a7a3c55d5fba9629af..ad4eaa25813e9c406cc45e5b7fc1675de3e5c89c 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -678,8 +678,8 @@ modules/gui/qt/components/controller.cpp
 modules/gui/qt/components/controller.hpp
 modules/gui/qt/components/controller_widget.cpp
 modules/gui/qt/components/controller_widget.hpp
-modules/gui/qt/components/custom_menus.cpp
-modules/gui/qt/components/custom_menus.hpp
+modules/gui/qt/menus/custom_menus.cpp
+modules/gui/qt/menus/custom_menus.hpp
 modules/gui/qt/dialogs/epg/EPGChannels.cpp
 modules/gui/qt/dialogs/epg/EPGChannels.hpp
 modules/gui/qt/dialogs/epg/EPGItem.cpp
@@ -761,8 +761,8 @@ modules/gui/qt/main_interface_win32.cpp
 modules/gui/qt/main_interface_win32.hpp
 modules/gui/qt/dialogs/plugins/addons_manager.cpp
 modules/gui/qt/dialogs/plugins/addons_manager.hpp
-modules/gui/qt/menus.cpp
-modules/gui/qt/menus.hpp
+modules/gui/qt/menus/menus.cpp
+modules/gui/qt/menus/menus.hpp
 modules/gui/qt/qt.cpp
 modules/gui/qt/qt.hpp
 modules/gui/qt/recents.cpp