Skip to content

Commit dc92cf4

Browse files
OskarKrugerOskar krugeriOvergaard
authored
Add accessibility label for splitview divider (#20380)
* added hovering and focus border to RTE * fix main to OG * fix to main again * I'm going to cry * Added label for splitviewdivider * Added localization to divider label and updated common lang files * Removes unused import --------- Co-authored-by: Oskar kruger <[email protected]> Co-authored-by: Jacob Overgaard <[email protected]>
1 parent edf95e6 commit dc92cf4

File tree

7 files changed

+19
-7
lines changed

7 files changed

+19
-7
lines changed

src/Umbraco.Web.UI.Client/src/assets/lang/da.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -848,6 +848,7 @@ export default {
848848
details: 'Detaljer',
849849
dictionary: 'Ordbog',
850850
dimensions: 'Dimensioner',
851+
dividerPosition: (value: string | number) => `Skillevæg ved ${value}%`,
851852
discard: 'Kassér',
852853
down: 'Ned',
853854
download: 'Hent',

src/Umbraco.Web.UI.Client/src/assets/lang/de.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -770,6 +770,7 @@ export default {
770770
design: 'Design',
771771
dictionary: 'Wörterbuch',
772772
dimensions: 'Abmessungen',
773+
dividerPosition: (value: string | number) => `Trenner bei ${value}%`,
773774
discard: 'Verwerfen',
774775
down: 'nach unten',
775776
download: 'Herunterladen',

src/Umbraco.Web.UI.Client/src/assets/lang/en.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -850,6 +850,7 @@ export default {
850850
details: 'Details',
851851
dictionary: 'Dictionary',
852852
dimensions: 'Dimensions',
853+
dividerPosition: (value: string | number) => `Divider at ${value}%`,
853854
discard: 'Discard',
854855
document: 'Document',
855856
down: 'Down',

src/Umbraco.Web.UI.Client/src/assets/lang/es.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -481,6 +481,7 @@ export default {
481481
design: 'Diseño',
482482
dictionary: 'Diccionario',
483483
dimensions: 'Dimensiones',
484+
dividerPosition: (value: string | number) => `Divisor en ${value}%`,
484485
down: 'Abajo',
485486
download: 'Descargar',
486487
edit: 'Editar',

src/Umbraco.Web.UI.Client/src/assets/lang/fr.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -673,6 +673,7 @@ export default {
673673
design: 'Design',
674674
dictionary: 'Dictionnaire',
675675
dimensions: 'Dimensions',
676+
dividerPosition: (value: string | number) => `Séparateur à ${value}%`,
676677
down: 'Bas',
677678
download: 'Télécharger',
678679
edit: 'Editer',

src/Umbraco.Web.UI.Client/src/assets/lang/nl.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -688,6 +688,7 @@ export default {
688688
design: 'Ontwerp',
689689
dictionary: 'Woordenboek',
690690
dimensions: 'Afmetingen',
691+
dividerPosition: (value: string | number) => `Verdeler op ${value}%`,
691692
discard: 'Gooi weg',
692693
down: 'Omlaag',
693694
download: 'Download',

src/Umbraco.Web.UI.Client/src/packages/core/components/split-panel/split-panel.element.ts

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1+
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
12
import {
23
type PropertyValueMap,
3-
LitElement,
44
css,
55
customElement,
66
html,
@@ -23,7 +23,7 @@ import { clamp } from '@umbraco-cms/backoffice/utils';
2323
* @cssprop --umb-split-panel-divider-color - Color of the divider.
2424
*/
2525
@customElement('umb-split-panel')
26-
export class UmbSplitPanelElement extends LitElement {
26+
export class UmbSplitPanelElement extends UmbLitElement {
2727
@query('#main') mainElement!: HTMLElement;
2828
@query('#divider-touch-area') dividerTouchAreaElement!: HTMLElement;
2929
@query('#divider') dividerElement!: HTMLElement;
@@ -91,11 +91,17 @@ export class UmbSplitPanelElement extends LitElement {
9191
}
9292

9393
#setPosition(pos: number) {
94-
const { width } = this.mainElement.getBoundingClientRect();
95-
const localPos = clamp(pos, 0, width);
96-
const percentagePos = (localPos / width) * 100;
97-
this.position = percentagePos + '%';
98-
}
94+
const { width } = this.mainElement.getBoundingClientRect();
95+
const localPos = clamp(pos, 0, width);
96+
const percentagePos = (localPos / width) * 100;
97+
this.position = percentagePos + '%';
98+
99+
// Update ARIA value for divider
100+
const formatted = percentagePos.toFixed(0);
101+
const ariaText = this.localize?.term('general_dividerPosition', [formatted]) ?? `Divider at ${formatted}%`;
102+
103+
this.dividerTouchAreaElement.setAttribute('aria-valuetext', ariaText);
104+
}
99105

100106
#updateSplit() {
101107
// If lock is none

0 commit comments

Comments
 (0)