for (ms = mshortcuts; ms < mshortcuts + LEN(mshortcuts); ms++) {
if (ms->release == release &&
ms->button == e->xbutton.button &&
- match(ms->mod, e->xbutton.state & ~forcemousemod)) {
+ (match(ms->mod, e->xbutton.state) || /* exact or forced */
+ match(ms->mod, e->xbutton.state & ~forcemousemod))) {
ms->func(&(ms->arg));
return 1;
}