From a43cf3944148f5e83215367d46c8b06b24e488d3 Mon Sep 17 00:00:00 2001 From: YellowNest <59575587+YellowNest@users.noreply.github.com> Date: Mon, 5 Oct 2026 16:56:35 +0200 Subject: [PATCH] Cancel pending hover timer before showing Win+X (#2554) Cancel hover timer before showing Win+X --- Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp index 3a6b187..583c5b7 100644 --- a/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp +++ b/Src/StartMenu/StartMenuDLL/StartMenuDLL.cpp @@ -4229,6 +4229,17 @@ if (!g_bTrimHooks) } else if (bShowWinX) { + // Win+X is shown asynchronously on Windows 11. Cancel any pending + // hover-open timer first, otherwise it can open the configured + // hover menu a moment later and dismiss Win+X again. + if (taskBar->bTimer) + { + taskBar->bTimer=false; + if (taskBar->startButton) + KillTimer(taskBar->startButton,'CLSM'); + if (taskBar->oldButton && taskBar->oldButton!=taskBar->startButton) + KillTimer(taskBar->oldButton,'CLSM'); + } ShowWinX(); } else if (bShowWin7)