Skip to content

Allow dropdown inputs to be manually enabled for DnD questions for accessibility #2159

Draft
sjd210 wants to merge 22 commits into
mainfrom
feature/non-dragging-input-setting
Draft

Allow dropdown inputs to be manually enabled for DnD questions for accessibility #2159
sjd210 wants to merge 22 commits into
mainfrom
feature/non-dragging-input-setting

Conversation

@sjd210
Copy link
Copy Markdown
Contributor

@sjd210 sjd210 commented May 15, 2026

Adds an accessibility setting to "Enable non-dragging alternative inputs". For now this only affects cloze/drag-and-drop questions, but is defined broadly enough that we can use the same setting for other inputs in the future (e.g. depending on how we implement reorder question accessibility).

Also adds a Dropdown/Drag and drop override toggle to all question pages containing these question types (in the same place as the context switcher on concept pages). The toggle is defaulted to Dropdown only for logged-in users who have the accessibility setting enabled or for mobile users (those at xs screen or <=md touchscreen), and to Drag and drop in all other cases. Toggling will affect all drag and drop questions on the page. If manually toggled, this state will persist between screensizes - otherwise it will be reactive as before.

Also requires https://github.com/isaacphysics/isaac-sops-config/pull/22 for new accessibility setting to work.

@codecov
Copy link
Copy Markdown

codecov Bot commented May 18, 2026

Codecov Report

❌ Patch coverage is 49.01961% with 26 lines in your changes missing coverage. Please review.
✅ Project coverage is 43.70%. Comparing base (3ebccb7) to head (95f5618).
⚠️ Report is 25 commits behind head on main.

Files with missing lines Patch % Lines
...pp/components/content/IsaacDragAndDropQuestion.tsx 0.00% 12 Missing ⚠️
src/app/components/content/IsaacClozeQuestion.tsx 0.00% 5 Missing ⚠️
src/app/components/elements/PageMetadata.tsx 82.35% 3 Missing ⚠️
...onents/elements/markup/portals/InlineDropZones.tsx 0.00% 2 Missing ⚠️
...ents/elements/panels/UserAccessibilitySettings.tsx 33.33% 2 Missing ⚠️
src/app/state/reducers/userState.ts 75.00% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2159      +/-   ##
==========================================
- Coverage   43.75%   43.70%   -0.05%     
==========================================
  Files         593      594       +1     
  Lines       25036    25084      +48     
  Branches     7427     7436       +9     
==========================================
+ Hits        10954    10963       +9     
- Misses      14032    14072      +40     
+ Partials       50       49       -1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants