mirror of https://github.com/docusealco/docuseal
- 8-A: Keyboard alternative for drag-and-drop field placement
- Default field items: tabindex/role=button + Enter/Space to emit add-default-field
- Field type grid buttons: keyboard click (event.detail===0) adds field directly (skips draw mode)
- builder.vue: addDefaultField() handles keyboard-triggered field insertion + announces via aria-live
- 8-B: Context menu keyboard trigger on placed field areas
- area.vue: tabindex=0 + areaLabel computed + onAreaKeydown handler
- ContextMenu key / Shift+F10 synthesizes MouseEvent('contextmenu') at element center
- 8-C: Field settings dropdown focus trap
- label @focus renders dropdown for keyboard users
- @keydown.escape.stop closes dropdown
- 8-D: Live region announcements for field add/remove
- announcePolite() called in addField(), addDefaultField() (builder.vue), and removeField() (fields.vue)
- i18n: field_type_added + field_removed keys added in all 7 languages (en/es/it/pt/fr/de/nl)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
pull/599/head
parent
1aeea07910
commit
995da6ab0e
Loading…
Reference in new issue