fix(plex): the player's ⋯ and tracks lists are real menus, and every close returns the focus
They were hand-built divs: no menu roles, no arrow keys, and Escape left the focus on <body>. Both run on the popover engine now (media-tone rows), and the tuning panel is a labelled dialog that takes the focus and hands it back to ⋯.
This commit is contained in:
@@ -46,8 +46,13 @@ describe("the Plex player's layers", () => {
|
||||
const popovers = classes(
|
||||
/\bbottom-full\b.*\bbg-media-chrome\b|\bbg-media-chrome\b.*\bbottom-full\b/,
|
||||
);
|
||||
expect(popovers).toHaveLength(3); // tracks, the ⋯ menu (C5), the settings panel
|
||||
expect(popovers).toHaveLength(1); // the settings panel, which renders inside the player
|
||||
for (const c of popovers) expect(c).toMatch(/\bz-menu\b/);
|
||||
// The tracks list and the ⋯ menu are on the popover engine (E28 review D3), which lifts them to
|
||||
// z-popover — above the player's own z-overlay — and into the fullscreen element.
|
||||
expect([...src.matchAll(/<PopoverSurface\b[^>]*?className=\{`\$\{PLAYER_MENU\}/g)]).toHaveLength(
|
||||
2,
|
||||
);
|
||||
});
|
||||
|
||||
it("keeps the notices a level below", () => {
|
||||
|
||||
Reference in New Issue
Block a user