Skip to content

Commit f7818c1

Browse files
committed
fix: position context menu at pointer
1 parent 3f24ac5 commit f7818c1

File tree

2 files changed

+8
-3
lines changed

2 files changed

+8
-3
lines changed

src/tests/views/TonalBuilderHomeView.spec.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,12 +95,17 @@ describe('TonalBuilderHomeView', () => {
9595

9696
const targetSwatch = swatches[1];
9797

98-
await targetSwatch.trigger('contextmenu');
98+
const coords = { clientX: 150, clientY: 200 };
99+
100+
await targetSwatch.trigger('contextmenu', coords);
99101
await nextTick();
100102

101-
const contextMenu = document.querySelector('[data-cy="context-menu"]');
103+
const contextMenu = document.querySelector('[data-cy="context-menu"]') as HTMLElement | null;
102104
expect(contextMenu).not.toBeNull();
103105

106+
expect(contextMenu?.style.left).toBe(`${coords.clientX}px`);
107+
expect(contextMenu?.style.top).toBe(`${coords.clientY}px`);
108+
104109
const menuItems = contextMenu?.querySelectorAll('[role="menuitem"]') ?? [];
105110
expect(menuItems.length).toBeGreaterThan(0);
106111

src/views/tonal-builder/TonalBuilderHomeView.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@
234234
}) => {
235235
const origin = (() => {
236236
if (event instanceof MouseEvent) {
237-
return { x: event.clientX + window.scrollX, y: event.clientY + window.scrollY };
237+
return { x: event.clientX, y: event.clientY };
238238
}
239239
240240
const rect = target?.getBoundingClientRect();

0 commit comments

Comments
 (0)