menu: add dock/clip/dock-position menus to findMenu lookup

findMenu() only checked root_menu, switch_menu, and window_menu.
Dock and clip menus were never found, so pointer motion over them
could not highlight entries or activate on release.

Add CHECK_MENU calls for scr->dock->menu, scr->clip_menu, and
scr->dock_pos_menu.
This commit is contained in:
Ollie 2026-05-23 16:44:00 +02:00
parent 5558a1edf0
commit 1c96a93ac8
1 changed files with 20 additions and 0 deletions

View File

@ -41,6 +41,7 @@
#include "dialog.h"
#include "rootmenu.h"
#include "switchmenu.h"
#include "dock.h"
#define MOD_MASK wPreferences.modifier_mask
@ -1155,6 +1156,25 @@ static WMenu *findMenu(WScreen * scr, int *x_ret, int *y_ret)
}
}
/* Check dock menu */
menu = scr->dock ? scr->dock->menu : NULL;
if (menu) {
CHECK_MENU(menu);
for (int i = 0; i < menu->cascade_no; i++)
CHECK_MENU(menu->cascades[i]);
}
/* Check clip menu */
menu = scr->clip_menu;
if (menu) {
CHECK_MENU(menu);
for (int i = 0; i < menu->cascade_no; i++)
CHECK_MENU(menu->cascades[i]);
}
/* Check dock position menu */
CHECK_MENU(scr->dock_pos_menu);
#undef CHECK_MENU
return NULL;
}