fix(cv): make template sample scrolling keyboard accessible
This commit is contained in:
@@ -52,3 +52,7 @@ Actual MariaDB source-boundary successor59/59 passed (`provider-final-03`), incl
|
||||
## Last-good preview scroll regression
|
||||
|
||||
The aggregate `final-04` run exposed a real regression in both original preview-presentation recovery cases: a held refresh changed scrollTop by7px against the unchanged1px tolerance. The new page selector unmounted while `previewReady` was false, shortening the toolbar and expanding the retained preview viewport. The narrow correction keeps the selector mounted when last-good multi-page HTML exists and disables it until ready. Both original EN/light and NB/dark scenarios now pass, including held/error/retry, retained iframe identity/content and scroll checks (`preview-scroll-successor-01.json`); focused editor50/50 and a fresh static build pass. Independent review found no material issue. No oracle tolerance or original assertion changed. Full frontend successor and fresh aggregate/PDF runs remain pending; failed/interrupted `final-04` is retained.
|
||||
|
||||
## Candidate sample keyboard scrolling
|
||||
|
||||
`final-05` exposed `scrollable-region-focusable` in the new candidate dialog's overflowing read-only content. A labelled region with tabIndex0 makes the existing DialogContent keyboard reachable while preserving Cancel autofocus, focus trapping and Apply gating. The original four EN/Bokmål/light/dark document-settings cases now pass with all axe rules unchanged (`template-focus-browser-01.json`); these also exercise settings, canonical source, history and eight actual PDF states. Candidate unit6/6 and static build pass; independent narrow review found no material risk. Full frontend successor and `final-06` aggregate qualification remain pending; the failed predecessor is retained.
|
||||
|
||||
@@ -24,4 +24,6 @@ Actual provider source-boundary suite59/59 passed with stable sources and positi
|
||||
|
||||
`final-04` found and retained a preview scroll regression. One-condition selector lifetime fix passed the unchanged two EN/NB recovery scenarios and50 focused editor tests; static build/review pass. Full frontend successor and `final-05` aggregate qualification remain pending.
|
||||
|
||||
`final-05` found and retained candidate-dialog keyboard-scroll accessibility failure. Focusable labelled DialogContent fix passed all four unchanged settings/source/history/native-output cases plus6 candidate unit tests/build/review. Fresh full frontend and `final-06` aggregate remain pending.
|
||||
|
||||
Historical evidence: Phase 9 conditional acceptance is inherited, not fresh CV-UX test execution. Hosted isolation/production/manual/provider/AI semantic limitations remain open. Research checksum verification: 83/83; screenshot pairs: 37/37; contact sheets inspected locally. Raw third-party imagery stays outside Git/product assets.
|
||||
|
||||
@@ -41,7 +41,7 @@ export default function CvTemplatePreviewDialog({ theme, onClose, onApply }: Pro
|
||||
|
||||
return <Dialog open onClose={onClose} fullWidth maxWidth="md" aria-labelledby={`${id}-title`} aria-describedby={`${id}-help`}>
|
||||
<DialogTitle id={`${id}-title`}>{t("cvEditorPreviewDesign")} · {labels.name}</DialogTitle>
|
||||
<DialogContent dividers>
|
||||
<DialogContent dividers role="region" tabIndex={0} aria-label={t("cvEditorTemplateSampleTitle")}>
|
||||
<Stack spacing={1.5}>
|
||||
<Typography id={`${id}-help`} variant="body2" color="text.secondary">{t("cvEditorTemplateSampleHelp")}</Typography>
|
||||
<Typography variant="body2">{labels.description}</Typography>
|
||||
|
||||
Reference in New Issue
Block a user