@@ -110,6 +110,8 @@ UbuntuShape {
110110 } else {
111111 hoveredItem = null;
112112 }
113+
114+ submenuHoverTimer.stop();
113115 }
114116
115117 onSelect: {
@@ -235,7 +237,7 @@ UbuntuShape {
235237 return;
236238 d.currentItem = d.hoveredItem;
237239
238− if (!d.currentItem.__isSeparator && d.currentItem.item.hasSubmenu) {
240+ if (!d.currentItem.__isSeparator && d.currentItem.item.hasSubmenu && d.currentItem.item.enabled) {
239241 submenuHoverTimer.start();
240242 }
241243 }
@@ -301,6 +303,8 @@ UbuntuShape {
301303 width: MathUtils.clamp(implicitWidth, d.__minimumWidth, d.__maximumWidth)
302304
303305 action.onTriggered: {
306+ submenuHoverTimer.stop();
307+
304308 d.currentItem = loader;
305309
306310 if (hasSubmenu) {