Skip to Main content Skip to Navigation

gla11y: checking accessibility labelling of glade-based application user interfaces

Abstract : When users employ a screen reader to navigate within an application user interface, they need to perceive the context of the currently-focused widget. For entries notably, they need to be sure what information should be typed in which entry. Ideally, the very programmatic structure of the user interface would be conveying this information, and be exposed as such to screen readers. In practice however, the programmatic structure expresses the layout of the visual rendering, which does not necessarily match the semantic that should be perceived by the user. In such a situation, explicit labelling is needed to provide the screen reader with the correct context information to be presented to users. The label would typically already be present in the user interface (for sighted people to understand the context) but the relation between the label and the focused widget is often only conveyed through visual proximity only, and programmers are often unaware that an explicit relation needs to be written for screen readers to express the relation for users employing a screen reader. Such missing relations can however be detected relatively accurately, by tracking widgets which do not have context information, and labels which have no relation with widgets. Simple detection heuristics applied on the LibreOffice interface emit around 8 000 lines of warnings over around 1 000 glade .ui files. Refining these heuristics reduces this down to 2 000 lines of warnings, with very few false positives and false negatives. This was assembled into the gla11y tool, now integrated in the LibreOffice build infrastructure, thus allowing LibreOffice programmers to automatically get compilation-time warnings about missing relations and guarantee a level of accessibility of the LibreOffice user interface. This document describes the principles of the heuristics and can thus be used as a guide for implementing the same kind of labelling checks over other user interface frameworks.
Document type :
Complete list of metadatas
Contributor : Samuel Thibault <>
Submitted on : Monday, October 19, 2020 - 12:09:24 PM
Last modification on : Monday, October 19, 2020 - 12:28:50 PM


Files produced by the author(s)


  • HAL Id : hal-02957129, version 1



Samuel Thibault. gla11y: checking accessibility labelling of glade-based application user interfaces. [Research Report] Hypra. 2020. ⟨hal-02957129⟩



Record views


Files downloads