Every IconButton has the accessible name "text"
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 20/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- javascript
- Área
- accessibility, frontend
Línea de trabajo
Start with contentcuration/contentcuration/frontend/shared/views/IconButton.vue, specifically the ariaLabel prop usage cited in the issue. Then find the component's unit tests and check how they verify its tooltip text. Done means the accessible name matches the text prop, the test covers it, and the Generate, Upload, and Crop buttons are announced by their labels.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
❌ This issue is not open for contribution. Visit Contributing guidelines to learn about the contributing process and how to find suitable issues.
Observed behavior
IconButton passes the literal string "text" to KIconButton (ariaLabel="text" with no : binding), so screen readers announce every icon button as "text":
https://github.com/learningequality/studio/blob/865e06b4fdef5bc8b0e7ec21782f6cbc5adbe88b/contentcuration/contentcuration/frontend/shared/views/IconButton.vue#L5-L7
The tooltip receives the translated label, so sighted users see the correct name on hover.
These 12 files use IconButton:
channelEdit/components/StudioTree/StudioTree.vuechannelEdit/components/ContentNodeEditListItem.vuechannelEdit/components/Clipboard/index.vuechannelEdit/pages/StagingTreePage/index.vuechannelEdit/views/TreeView/index.vuechannelEdit/views/CurrentTopicView.vuechannelEdit/views/ImportFromChannels/BrowsingCard.vuechannelEdit/views/files/EpubRenderer.vuechannelEdit/views/files/thumbnails/ContentNodeThumbnail.vueshared/views/channel/ChannelThumbnail.vueadministration/pages/Channels/ChannelTable.vueadministration/pages/Users/UserTable.vue
User-facing consequences
Screen reader users cannot tell icon buttons apart in the channel editor. For example, the thumbnail field's Generate, Upload, and Crop buttons are all announced as "text".
Steps to reproduce
- Open the details of any resource in a channel's edit modal.
- Scroll to Thumbnail.
- Inspect the icon buttons below the thumbnail: each has
aria-label="text".
Context
Studio unstable at 865e06b4f, Chromium.
Acceptance Criteria
- Each
IconButtonhas the same accessible name as its tooltip, i.e. itstextprop. - The thumbnail field's Generate, Upload, and Crop buttons are announced by their labels.
- A unit test covers the accessible name of
IconButton.
AI usage
Claude Code found this during manual QA of #6358, checked IconButton.vue on unstable, and drafted this issue.
- Lenguaje dominante
- Python
- Estrellas
- 211
- Forks
- 317
- Merge medio
- 4 d 2 h
- PR fusionados (30 d)
- 23
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de learningequality/studio
-
Set unpublishable: true on PublishedChange by construction to simplify handleMaxRevs predicateAbiertoDEV: frontend P3 - low
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
learningequality/studio#5868 ·
Los mantenedores suelen responder en 1 día
-
TAG: tech update / debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
learningequality/studio#2245 ·
Los mantenedores suelen responder en 1 día
-
dependencies javascript
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
learningequality/studio#6381 ·
Los mantenedores suelen responder en 1 día
-
dependencies DEV: backend python
Dificultad 4/5 1-2 días Aptitud para principiantes 25/100
learningequality/studio#6376 ·
Los mantenedores suelen responder en 1 día
-
Upgrade Babel to 8Abiertodependencies DEV: frontend
Dificultad 4/5 3-5 días Aptitud para principiantes 8/100
learningequality/studio#6375 ·
Los mantenedores suelen responder en 1 día
Todos los issues de learningequality/studio
Issues similares
-
bug severity:low
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 2 días
-
curriculum documentation quality
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
githubnext/gh-aw-workshop#5367 ·
Los mantenedores suelen responder en 3 días
-
OAuth documentation for GET /api/v2/users/me/ appears inconsistent with required global read scopeAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Create Noise Latents ignores randomize_seed and produces the same noise every runPosiblemente ocupada @griptapeops la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
griptape-ai/griptape-nodes-library-diffusers#127 ·
Los mantenedores suelen responder en 1 día
-
Jenkins capacity report: metrics history is lost when archiving a month failsPosiblemente ocupada @RaphaelFakhri la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
adoptium/infrastructure#4568 ·
Los mantenedores suelen responder en 1 día