From: Jane Sandberg <sandbej@linnbenton.edu> Date: Fri, 12 Apr 2019 20:03:46 +0000 (-0700) Subject: LP1796936: Add aria-labels to the checkboxes in web client grids X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=839971e4470bb40758e9a18464979016a5abb80d;p=evergreen%2Fequinox.git LP1796936: Add aria-labels to the checkboxes in web client grids To test: 1) Go to an AngularJs grid interface. Make sure that the "Select all" checkbox has an aria-label attribute of "All rows" 2) In the same interface, make sure that each checkbox in the non-header rows has an aria-label like "Row 15", "Row 23", etc. 3) Repeat steps 1-2 for an Angular grid interface. Signed-off-by: Jane Sandberg <sandbej@linnbenton.edu> Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org> --- diff --git a/Open-ILS/src/eg2/src/app/share/grid/grid-body.component.html b/Open-ILS/src/eg2/src/app/share/grid/grid-body.component.html index 9ab26cd32e..273b61b9db 100644 --- a/Open-ILS/src/eg2/src/app/share/grid/grid-body.component.html +++ b/Open-ILS/src/eg2/src/app/share/grid/grid-body.component.html @@ -15,6 +15,7 @@ <ng-container *ngIf="!context.disableSelect"> <div class="eg-grid-cell eg-grid-checkbox-cell eg-grid-cell-skinny"> <input type='checkbox' [(ngModel)]="context.rowSelector.indexes[context.getRowIndex(row)]" + i18n-aria-label="e.g. Row 13" attr.aria-label="Row {{context.pager.rowNumber(idx)}}" #rowContextMenu="ngbPopover" popoverTitle="Actions for Selected Rows" i18n-popoverTitle (contextmenu)="onRowContextClick($event, row, rowContextMenu)" diff --git a/Open-ILS/src/eg2/src/app/share/grid/grid-header.component.html b/Open-ILS/src/eg2/src/app/share/grid/grid-header.component.html index 571d0740ea..a68076514c 100644 --- a/Open-ILS/src/eg2/src/app/share/grid/grid-header.component.html +++ b/Open-ILS/src/eg2/src/app/share/grid/grid-header.component.html @@ -4,6 +4,7 @@ <div role="columnheader" class="eg-grid-cell eg-grid-header-cell eg-grid-checkbox-cell eg-grid-cell-skinny"> <input type='checkbox' (click)="handleBatchSelect($event)" + i18n-aria-label aria-label="All rows" [(ngModel)]="batchRowCheckbox"> </div> </ng-container> diff --git a/Open-ILS/src/templates/staff/share/t_autogrid.tt2 b/Open-ILS/src/templates/staff/share/t_autogrid.tt2 index 73850e028c..c872c76ffa 100644 --- a/Open-ILS/src/templates/staff/share/t_autogrid.tt2 +++ b/Open-ILS/src/templates/staff/share/t_autogrid.tt2 @@ -228,7 +228,7 @@ </div> <div class="eg-grid-cell eg-grid-cell-stock" ng-show="canMultiSelect"> <div> - <input title="[% l('Row Selector Column') %]" + <input aria-label="[% l('All rows') %]" focus-me="gridControls.focusRowSelector" type='checkbox' ng-model="selectAll"/> </div> @@ -310,7 +310,7 @@ <!-- ng-click=handleRowClick here has unintended consequences and is unnecessary, avoid it --> <div> - <input type='checkbox' title="[% l('Select Row') %]" + <input type='checkbox' aria-label="[% l('Row [_1]','{{$index + offset() + 1}}') %]" ng-change="updateSelected()" ng-model="selected[indexValue(item)]"/> </div>