Skip to content

Commit d3f4685

Browse files
committed
ARIA fixes and improvements
Missing form labels. Replaced tab index on canvas with a skip to 3D canvas link. AI use: Interactive session with Opus 4.8. Decision making, review and testing.
1 parent 3df0a8a commit d3f4685

14 files changed

Lines changed: 83 additions & 12 deletions

File tree

flock.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1457,6 +1457,9 @@ export const flock = {
14571457

14581458
flock.engine.disableUniformBuffers = true; // Meshes with alpha black on Samsung A14
14591459

1460+
// Set on the engine, not the element: Babylon reapplies its default on every pointer move.
1461+
flock.engine.canvasTabIndex = 0;
1462+
14601463
if (!flock._webglContextLostListenerAdded) {
14611464
flock._webglContextLostListenerAdded = true;
14621465
// Call preventDefault() on the raw event so the browser is willing to restore.

index.html

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -301,6 +301,9 @@
301301
</div>
302302

303303
<h1 class="sr-only">FlockXR</h1>
304+
<a id="skip-to-scene" class="skip-link" href="#renderCanvas" data-i18n="skip_to_scene"
305+
>Skip to 3D scene</a
306+
>
304307
<label for="importFile" class="sr-only" aria-hidden="true" data-i18n="import_project_file"
305308
>Import project file</label
306309
>
@@ -409,7 +412,7 @@ <h1 class="sr-only">FlockXR</h1>
409412
aria-labelledby="project-menu-item"
410413
hidden
411414
>
412-
<li>
415+
<li role="none">
413416
<a
414417
href="#"
415418
id="project-new"
@@ -419,7 +422,7 @@ <h1 class="sr-only">FlockXR</h1>
419422
>New</a
420423
>
421424
</li>
422-
<li>
425+
<li role="none">
423426
<a
424427
href="#"
425428
id="project-open"
@@ -429,7 +432,7 @@ <h1 class="sr-only">FlockXR</h1>
429432
>Open</a
430433
>
431434
</li>
432-
<li>
435+
<li role="none">
433436
<a
434437
href="#"
435438
id="project-save"
@@ -494,12 +497,12 @@ <h1 class="sr-only">FlockXR</h1>
494497
>Deutsch</a
495498
>
496499
</li-->
497-
<li>
500+
<li role="none">
498501
<a href="#" data-lang="en" role="menuitem" tabindex="-1"
499502
>English</a
500503
>
501504
</li>
502-
<li>
505+
<li role="none">
503506
<a href="#" data-lang="es" role="menuitem" tabindex="-1"
504507
>Español</a
505508
>
@@ -578,7 +581,7 @@ <h1 class="sr-only">FlockXR</h1>
578581
aria-labelledby="theme-menu-item"
579582
hidden
580583
>
581-
<li>
584+
<li role="none">
582585
<a
583586
href="#"
584587
data-theme-target="light"
@@ -589,7 +592,7 @@ <h1 class="sr-only">FlockXR</h1>
589592
>Light</a
590593
>
591594
</li>
592-
<li>
595+
<li role="none">
593596
<a
594597
href="#"
595598
data-theme-target="dark-contrast"
@@ -599,7 +602,7 @@ <h1 class="sr-only">FlockXR</h1>
599602
>Dark</a
600603
>
601604
</li>
602-
<li>
605+
<li role="none">
603606
<a
604607
href="#"
605608
data-theme-target="dark"
@@ -609,7 +612,7 @@ <h1 class="sr-only">FlockXR</h1>
609612
>Dark 2</a
610613
>
611614
</li>
612-
<li>
615+
<li role="none">
613616
<a
614617
href="#"
615618
data-theme-target="contrast"
@@ -619,7 +622,7 @@ <h1 class="sr-only">FlockXR</h1>
619622
>Contrast</a
620623
>
621624
</li>
622-
<li>
625+
<li role="none">
623626
<a
624627
href="#"
625628
data-theme-target="low-vision"
@@ -1354,6 +1357,9 @@ <h2 id="modal-title" data-i18n="about_heading">
13541357
aria-label="Drag to resize panels"
13551358
role="separator"
13561359
aria-orientation="vertical"
1360+
aria-valuemin="0"
1361+
aria-valuemax="100"
1362+
aria-valuenow="50"
13571363
tabindex="0"
13581364
></div>
13591365
<section id="codePanel" aria-label="Code editor panel">
@@ -1481,6 +1487,7 @@ <h2 id="modal-title" data-i18n="about_heading">
14811487
rel="noopener noreferrer"
14821488
id="bottombar-flocklink"
14831489
class="bottombar-flocklink"
1490+
data-i18n="info_panel_link"
14841491
aria-label="Visit Flock XR website (opens in new tab)"
14851492
title="Visit Flock XR website"
14861493
>

locale/de.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: 'Farbe vom Bildschirm auswählen',
5050
more_options: 'Weitere Optionen',
5151
hex_placeholder: 'ff0000 oder red',
52+
hex_color: 'Hex-Farbe', // ai
5253
skin_tone: 'Hautton',
5354
color_wheel_aria: 'Farbrad: Verwenden Sie die Pfeiltasten, um Farbton und Sättigung auszuwählen',
5455

@@ -1070,6 +1071,7 @@ export default {
10701071
camera_button_ui: "Kamera-Steuerung",
10711072
eye_button_ui: "Um ausgewähltes Objekt kreisen",
10721073
info_panel_link_ui: "Flock XR Webseite (neuer Tab)",
1074+
skip_to_scene_ui: "Zur 3D-Szene springen", // ai
10731075
project_name_ui: "Projektname",
10741076
keyboard_controls_ui: "Tastatursteuerung [Ctrl + /]",
10751077
keyboard_menu_ui: "Hauptmenü",

locale/en.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: 'Pick color from screen',
5050
more_options: 'More options',
5151
hex_placeholder: 'ff0000 or red',
52+
hex_color: 'Hex color',
5253
skin_tone: 'Skin tone',
5354
color_wheel_aria: 'Color wheel: use arrow keys to select hue and saturation',
5455

@@ -1126,6 +1127,7 @@ export default {
11261127
eye_button_ui: "Orbit around selected object",
11271128

11281129
info_panel_link_ui: "Visit Flock XR website (opens in new tab)",
1130+
skip_to_scene_ui: "Skip to 3D scene",
11291131

11301132
project_name_ui: "Project name",
11311133

locale/es.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: 'Seleccionar color de la pantalla', // human
5050
more_options: 'Más opciones', // human
5151
hex_placeholder: 'ff0000 o rojo', // human
52+
hex_color: 'Color hexadecimal', // ai
5253
skin_tone: 'Tono de piel', // human
5354
color_wheel_aria: 'Rueda de color: usa las teclas de flecha para seleccionar tono y saturación', // human
5455

@@ -1120,6 +1121,7 @@ export default {
11201121

11211122
info_panel_link_ui:
11221123
"Visitar pagina web de Flock XR (se abre en una pestaña nueva)", // human
1124+
skip_to_scene_ui: "Saltar a la escena 3D", // ai
11231125

11241126
project_name_ui: "Nombre del proyecto", // human
11251127

locale/fr.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: "Prélever la couleur de l'écran",
5050
more_options: "Plus d'options",
5151
hex_placeholder: 'ff0000 ou red',
52+
hex_color: 'Couleur hexadécimale', // ai
5253
skin_tone: 'Ton de peau',
5354
color_wheel_aria:
5455
'Roue chromatique: utilisez les touches fléchées pour sélectionner la teinte et la saturation',
@@ -1065,6 +1066,7 @@ export default {
10651066
eye_button_ui: "Orbiter autour de l'objet sélectionné",
10661067

10671068
info_panel_link_ui: 'Visiter le site web de Flock XR (ouvre dans un nouvel onglet)',
1069+
skip_to_scene_ui: 'Aller à la scène 3D', // ai
10681070

10691071
project_name_ui: 'Nom du projet',
10701072

locale/it.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: 'Prendi colore dallo schermo',
5050
more_options: 'Altre opzioni',
5151
hex_placeholder: 'ff0000 o red',
52+
hex_color: 'Colore esadecimale', // ai
5253
skin_tone: 'Tono della pelle',
5354
color_wheel_aria: 'Ruota dei colori: usa le frecce per scegliere tonalità e saturazione',
5455

@@ -1073,6 +1074,7 @@ export default {
10731074
eye_button_ui: "Orbita attorno all'oggetto selezionato",
10741075

10751076
info_panel_link_ui: 'Visita il sito Flock XR (apre in una nuova scheda)',
1077+
skip_to_scene_ui: 'Vai alla scena 3D', // ai
10761078

10771079
project_name_ui: 'Nome progetto',
10781080

locale/pl.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: 'Wybierz kolor z ekranu',
5050
more_options: 'Więcej opcji',
5151
hex_placeholder: 'ff0000 lub red',
52+
hex_color: 'Kolor szesnastkowy', // ai
5253
skin_tone: 'Odcień skóry',
5354
color_wheel_aria: 'Koło kolorów: użyj klawiszy strzałek, aby wybrać odcień i nasycenie',
5455

@@ -1062,6 +1063,7 @@ export default {
10621063
eye_button_ui: "Obracaj wokół wybranego obiektu",
10631064

10641065
info_panel_link_ui: "Odwiedź stronę Flock XR (otwiera się w nowej karcie)",
1066+
skip_to_scene_ui: "Przejdź do sceny 3D", // ai
10651067

10661068
project_name_ui: "Nazwa projektu",
10671069

locale/pt.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: 'Selecionar cor da tela',
5050
more_options: 'Mais opções',
5151
hex_placeholder: 'ff0000 ou red',
52+
hex_color: 'Cor hexadecimal', // ai
5253
skin_tone: 'Tom de pele',
5354
color_wheel_aria: 'Roda de cores: use as teclas de seta para selecionar matiz e saturação',
5455

@@ -1072,6 +1073,7 @@ export default {
10721073
eye_button_ui: "Orbitar ao redor do objeto selecionado",
10731074

10741075
info_panel_link_ui: "Visitar o site do Flock XR (abre num novo separador)",
1076+
skip_to_scene_ui: "Ir para a cena 3D", // ai
10751077

10761078
project_name_ui: "Nome do projeto",
10771079

locale/sv.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ export default {
4949
pick_color_from_screen: 'Välj färg från skärmen',
5050
more_options: 'Fler alternativ',
5151
hex_placeholder: 'ff0000 eller red',
52+
hex_color: 'Hexfärg', // ai
5253
skin_tone: 'Hudton',
5354
color_wheel_aria: 'Färghjul: använd piltangenterna för att välja nyans och mättnad',
5455

@@ -1051,6 +1052,7 @@ export default {
10511052
eye_button_ui: "Kretsa runt valt objekt",
10521053

10531054
info_panel_link_ui: "Besök Flock XR:s webbplats (öppnas i ny flik)",
1055+
skip_to_scene_ui: "Hoppa till 3D-scenen", // ai
10541056

10551057
project_name_ui: "Projektnamn",
10561058

0 commit comments

Comments
 (0)