Blocks can't be moved with the keyboard in the page editor

Abierto Apto para principiantes
#235 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

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

Línea de trabajo

Empieza en packages/editor-ui/src/components/pageEditor/widgets/WidgetItem.jsx, cerca del bloque DndContext, y luego compara su configuración de sensores con WidgetList.jsx y SharedAreaSection.jsx. Reproduce el movimiento con el teclado siguiendo los pasos indicados y comprueba las pruebas pertinentes o añade una comprobación de regresión. La tarea está completada cuando ArrowUp o ArrowDown mueve un bloque tanto en el panel de estructura como en la vista previa, igual que el comportamiento del teclado de los widgets.

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

Descripción

bug page editor

In the page editor's structure panel, moving a block with the keyboard doesn't work: focus a block's drag handle, press Space (it's picked up), press ArrowUp/ArrowDown — nothing moves. Moving widgets with the keyboard works, and mouse-dragging blocks works.

Likely cause: the blocks' DndContext in packages/editor-ui/src/components/pageEditor/widgets/WidgetItem.jsx (around line 173) passes no sensors, so dnd-kit's default keyboard sensor is used without sortableKeyboardCoordinates. The widget list (WidgetList.jsx, useSensors(PointerSensor, KeyboardSensor { coordinateGetter: sortableKeyboardCoordinates })) and SharedAreaSection.jsx set it. Not yet confirmed by a fix.

Steps: open a page with a widget that has two or more blocks → select the widget → Tab to a block's drag handle → Space → ArrowUp.

Expected: the block moves up one place, in the structure and the preview, as widgets do.

Lenguaje dominante
JavaScript
Estrellas
162
Forks
6
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

  • Incluye un Dockerfile o un archivo de Docker Compose
  • Sin plantilla de pull request
  • Sin guía de contribución

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 tsiger/widgetizer

Todos los issues de tsiger/widgetizer

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.