From 97f0a2c9daf415bf178a369f6af5908ecd5fd3bf Mon Sep 17 00:00:00 2001
From: Ron Lucke <lucke@elan-ev.de>
Date: Mon, 18 Sep 2023 14:36:54 +0000
Subject: [PATCH] fix #1918

Closes #1918

Merge request studip/studip!1840
---
 .../components/courseware/CoursewareAccordionContainer.vue    | 4 ++--
 .../vue/components/courseware/CoursewareListContainer.vue     | 4 ++--
 .../vue/components/courseware/CoursewareStructuralElement.vue | 4 ++--
 .../vue/components/courseware/CoursewareTabsContainer.vue     | 4 ++--
 resources/vue/components/courseware/CoursewareTreeItem.vue    | 3 ++-
 5 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/resources/vue/components/courseware/CoursewareAccordionContainer.vue b/resources/vue/components/courseware/CoursewareAccordionContainer.vue
index 0cb3b430021..f1ae440977d 100644
--- a/resources/vue/components/courseware/CoursewareAccordionContainer.vue
+++ b/resources/vue/components/courseware/CoursewareAccordionContainer.vue
@@ -54,7 +54,7 @@
                                     :class="{ 'cw-sortable-handle-dragging': isDragging }"
                                     class="cw-sortable-handle"
                                     tabindex="0"
-                                    role="option"
+                                    role="button"
                                     aria-describedby="operation"
                                     :ref="'sortableHandle' + block.id"
                                     @keydown="keyHandler($event, block.id, index)"
@@ -290,7 +290,7 @@ export default {
                 case 27: // esc
                     this.abortKeyboardSorting(blockId, sectionIndex);
                     break;
-                case 32: // space
+                case 13: // enter
                     e.preventDefault();
                     if (this.keyboardSelected) {
                         this.storeKeyboardSorting(blockId, sectionIndex);
diff --git a/resources/vue/components/courseware/CoursewareListContainer.vue b/resources/vue/components/courseware/CoursewareListContainer.vue
index 74c890ba4b0..7ac036a11f9 100644
--- a/resources/vue/components/courseware/CoursewareListContainer.vue
+++ b/resources/vue/components/courseware/CoursewareListContainer.vue
@@ -42,7 +42,7 @@
                                 :class="{ 'cw-sortable-handle-dragging': isDragging }"
                                 class="cw-sortable-handle"
                                 tabindex="0"
-                                role="option"
+                                role="button"
                                 aria-describedby="operation"
                                 :ref="'sortableHandle' + block.id"
                                 @keydown="keyHandler($event, block.id)"
@@ -186,7 +186,7 @@ export default {
                 case 27: // esc
                     this.abortKeyboardSorting(blockId);
                     break;
-                case 32: // space
+                case 13: // enter
                     e.preventDefault();
                     if (this.keyboardSelected) {
                         this.storeKeyboardSorting(blockId);
diff --git a/resources/vue/components/courseware/CoursewareStructuralElement.vue b/resources/vue/components/courseware/CoursewareStructuralElement.vue
index 17402549f7b..7286a47fbfe 100644
--- a/resources/vue/components/courseware/CoursewareStructuralElement.vue
+++ b/resources/vue/components/courseware/CoursewareStructuralElement.vue
@@ -172,7 +172,7 @@
                                         :class="{ 'cw-sortable-handle-dragging': isDragging }"
                                         class="cw-sortable-handle"
                                         tabindex="0"
-                                        role="option"
+                                        role="button"
                                         aria-describedby="operation"
                                         :ref="'sortableHandle' + container.id"
                                         @keydown="keyHandler($event, container.id)"
@@ -1643,7 +1643,7 @@ export default {
                 case 27: // esc
                     this.abortKeyboardSorting(containerId);
                     break;
-                case 32: // space
+                case 13: // enter
                     e.preventDefault();
                     if (this.keyboardSelected) {
                         this.storeKeyboardSorting(containerId);
diff --git a/resources/vue/components/courseware/CoursewareTabsContainer.vue b/resources/vue/components/courseware/CoursewareTabsContainer.vue
index 114d86cb42b..5cb4ee77912 100644
--- a/resources/vue/components/courseware/CoursewareTabsContainer.vue
+++ b/resources/vue/components/courseware/CoursewareTabsContainer.vue
@@ -55,7 +55,7 @@
                                         :class="{ 'cw-sortable-handle-dragging': isDragging }"
                                         class="cw-sortable-handle"
                                         tabindex="0"
-                                        role="option"
+                                        role="button"
                                         aria-describedby="operation"
                                         :ref="'sortableHandle' + block.id"
                                         @keydown="keyHandler($event, block.id, index)"
@@ -292,7 +292,7 @@ export default {
                 case 27: // esc
                     this.abortKeyboardSorting(blockId, sectionIndex);
                     break;
-                case 32: // space
+                case 13: // enter
                     e.preventDefault();
                     if (this.keyboardSelected) {
                         this.storeKeyboardSorting(blockId, sectionIndex);
diff --git a/resources/vue/components/courseware/CoursewareTreeItem.vue b/resources/vue/components/courseware/CoursewareTreeItem.vue
index 0a5ead52b4f..be60e49dbff 100644
--- a/resources/vue/components/courseware/CoursewareTreeItem.vue
+++ b/resources/vue/components/courseware/CoursewareTreeItem.vue
@@ -10,6 +10,7 @@
                 :tabindex="0"
                 aria-describedby="operation"
                 ref="sortableHandle"
+                role="button"
                 @keydown="handleKeyEvent"
             >
             </span>
@@ -306,7 +307,7 @@ export default {
         },
         handleKeyEvent(e) {
             switch (e.keyCode) {
-                case 32: // space
+                case 13: // enter
                     e.preventDefault();
                     if (this.keyboardSelected) {
                         this.storeKeyboardSorting();
-- 
GitLab