feat(design): reorder without a drag everywhere a grip drags (WCAG 2.5.7, E28 S3e4a)
One rule, two forms: useOrderItems (Top / Up / Down / Bottom rows of a row menu) and OrderButtons (four buttons with the place, or a compact Up / Down pair). A move that would go nowhere is shown off. - YouTube playlist rows: the four moves now come from useOrderItems. - Plex playlist rows: a block among the blocks, an episode within its show, off while a write is in flight; drag and menu share moveBlock/moveEpisode. - Saved views editor: the selected view's four buttons (owner: A), and the grip's keyboard pick-up (its instructions promised one it did not have). - Side panel groups in edit mode: an Up / Down pair (owner: A); a group the stored order does not hold yet moves too; the name wraps there. - The grip's touch-action: none is now test-held.
This commit is contained in:
@@ -139,4 +139,9 @@ describe("DragHandle", () => {
|
||||
fireEvent.click(h);
|
||||
expect(onClick).not.toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it("takes a finger's drag instead of scrolling the page (touch-action: none, WCAG 2.5.7)", () => {
|
||||
render(<DragHandle label="Move Intro" />);
|
||||
expect(screen.getByRole("button", { name: "Move Intro" }).className).toContain("touch-none");
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user