diff --git a/src/renderer-queue.ts b/src/renderer-queue.ts index 7bc23b7..c167763 100644 --- a/src/renderer-queue.ts +++ b/src/renderer-queue.ts @@ -186,11 +186,14 @@ function showQueueContextMenu(x: number, y: number, item: QueueItem): void { const menu = document.createElement('div'); menu.className = 'context-menu'; + menu.setAttribute('role', 'menu'); const makeItem = (label: string, onClick: () => void, disabled = false): HTMLElement => { const el = document.createElement('div'); el.textContent = label; el.className = 'context-menu-item' + (disabled ? ' disabled' : ''); + el.setAttribute('role', 'menuitem'); + if (disabled) el.setAttribute('aria-disabled', 'true'); if (!disabled) { el.addEventListener('click', () => { try { onClick(); } finally { closeQueueContextMenu(); } @@ -202,6 +205,7 @@ function showQueueContextMenu(x: number, y: number, item: QueueItem): void { const makeSeparator = (): HTMLElement => { const sep = document.createElement('div'); sep.className = 'context-menu-separator'; + sep.setAttribute('role', 'separator'); return sep; }; diff --git a/src/renderer-streamers.ts b/src/renderer-streamers.ts index 1bcaa18..dcb0e99 100644 --- a/src/renderer-streamers.ts +++ b/src/renderer-streamers.ts @@ -925,6 +925,7 @@ function showVodContextMenu(x: number, y: number, ctx: VodCardContext): void { const menu = document.createElement('div'); menu.className = 'context-menu'; + menu.setAttribute('role', 'menu'); const downloadedIds = new Set( Array.isArray(config.downloaded_vod_ids) @@ -937,6 +938,7 @@ function showVodContextMenu(x: number, y: number, ctx: VodCardContext): void { const el = document.createElement('div'); el.textContent = label; el.className = 'context-menu-item'; + el.setAttribute('role', 'menuitem'); el.addEventListener('click', () => { try { onClick(); } finally { closeVodContextMenu(); } });