daggerheart/module/applications/ux/contextMenu.mjs
WBHarry 152e364225 .
2026-04-21 17:03:19 +02:00

25 lines
859 B
JavaScript

export default class DHContextMenu extends foundry.applications.ux.ContextMenu {
/**
* Trigger a context menu event in response to a normal click on a additional options button.
* @param {PointerEvent} event
*/
static triggerContextMenu(event, altSelector) {
event.preventDefault();
event.stopPropagation();
const selector = altSelector ?? '[data-item-uuid]';
if (ui.context?.selector === selector) return;
const { clientX, clientY } = event;
const target = event.target.closest(selector) ?? event.currentTarget.closest(selector);
target?.dispatchEvent(
new PointerEvent('contextmenu', {
view: window,
bubbles: true,
cancelable: true,
clientX,
clientY
})
);
}
}