Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

bug(aria/accordion): Enter/Space inside a panel toggles the accordion instead of activating the focused element

Abierto Apto para principiantes
#34,011 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@agarwalU001 ya está trabajando en esto.

Desde el 25/10/2026.

  • #34012 de @agarwalU001 — abierto

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
72/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
angular, typescript

Línea de trabajo

Empieza por el controlador keydown mencionado en el issue en src/aria/private/accordion/accordion.ts y compara el destino de sus eventos con el del controlador click. Reproduce el comportamiento con el StackBlitz enlazado, especialmente Enter y Space en los controles de los paneles y Home en el campo de entrada. El trabajo estará terminado cuando esas teclas funcionen en el contenido de los paneles y los controles de teclado del accordion sigan funcionando en los triggers.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

area: aria/accordion gemini-triaged needs triage
Is this a regression?
  • Yes, this behavior used to work in the previous version
The previous version in which this bug was not present was

No response

Description

Pressing Enter on a link (or Space on a button) inside an expanded ngAccordionPanel collapses the panel instead of activating the link/button.

ngAccordionGroup handles keydown for the whole group, including panel content, and calls preventDefault() on Enter/Space, so the focused element never gets activated. Arrow keys and Home/End are affected too, e.g. Home in an input inside a panel moves focus to the trigger.

The click handler only reacts to events coming from a trigger (_findTriggerPattern), the keydown handler doesn't check that:
https://github.com/angular/components/blob/952685f9370ba718f832d745512db7c9a04e1bcd/src/aria/private/accordion/accordion.ts#L73-L97

Reproduction

StackBlitz link: https://stackblitz.com/edit/z5sxyaq6?file=src%2Fmain.ts

Steps to reproduce:

  1. Expand "Section 1".
  2. Tab to "Link inside panel" or "Button inside panel" and press Enter / Space.
  3. Expand it again, click into the input and press Home.
Expected Behavior

The link/button is activated (shows up in the log) and the panel stays open. Home moves the caret in the input.

Actual Behavior

The panel collapses, nothing is activated. Home moves focus to the trigger.

Environment
  • Angular: 22.2.3
  • CDK/Material: @angular/aria 22.2.4 (also 22.1.6)
  • Browser(s): Chrome 155
  • Operating System (e.g. Windows, macOS, Ubuntu): Linux
Lenguaje dominante
TypeScript
Estrellas
25k
Forks
6.8k
Merge medio
3 d 7 h
PR fusionados (30 d)
59

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de angular/components

Todos los issues de angular/components

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.