3,146
edits
Changes
→Accessibility support
* Gtk label
''A [httphttps://developer.gnome.org/gtkgtk3/2.24stable/GtkLabel.html GtkLabel]'' automaticaly generates '''with mnemonic support''' will automatically generate accessibility keys on next linked ''[httphttps://developer.gnome.org/gtkgtk3/2.24stable/GtkEntry.html GtkEntry]]'' and ''UndoableEntry'' fields.Remember that Gramps also uses custom widgets like ''StyledTextEditor'' and ''ValidatableMaskedEntry'', which do not always provide have relation with a ''GtkLabel''.
* Toggle buttons and Icons on toolbar
Gramps often uses ''[httphttps://developer.gnome.org/gtkgtk3/2.24stable/GtkToggleButton.html GtkToggleButtons]'' and alone ''[httphttps://developer.gnome.org/gtkgtk3/2.24stable/GtkPixmapGtkImage.html GtkPixmapGtkImage]'' (image without label), this excludes blind people and generates a poor interface for accessibility.
====Rules (draft)for images and buttons====
# set Set a name (eg, same as tooltip) for a button with image.# set Set a description for all images and icons.
<object class="GtkButton" id="date_edit">
<child internal-child="accessible">
<object class="AtkObject" id="date_edit-atkobject">
<property name="AtkObject::accessible-name" translatable="yes">Date edition</property>
</object>
</child>
<child internal-child="accessible">
<object class="AtkObject" id="image2264-atkobject">
<property name="AtkObject::accessible-description" translatable="yes">Date edition</property>
</object>
</child>
</object>
====Rules for labels and buttons====
* A label for others widgets should use mnemonic_widget() or a relation.
====Focus and tooltip==== * Think on accessibility support focus for widgets without Gtk label or alone image on a toggle button, by adding:. <object class="GtkToggleButton" id="togglebutton1"> <property name="AtkObject::accessible-visible">True</property> <property name="can_focus" translatable>True</property> <property name="yeshas_focus" comments>True</property> <property name="is_focus">Name accessTrue</property> ... <property name="receives_default">True</property> <property name="active">True<accessibility/property> <relation typeproperty name="labelled-bydraw_indicator" target>True</property> </object> * Think on tooltip. <property name="label209has_tooltip">True</property> <property name="tooltip_text" translatable="yes">Display a tooltip</accessibilityproperty>
===Into python===
====SampleATK object====
# mark the root of this window with its PID so we can easily identify it
label_acc.add_relationship(atk.RelationType.LABEL_FOR, entry_acc)
entry_acc.add_relationship(atk.RelationType.LABELLED_BY, label_acc)
====Focus====
Sample for setting the [http://developer.gnome.org/gtk/2.24/GtkWidget.html#gtk-widget-grab-focus focus] on the date field if that date field is empty:
def _post_init(self):
date = self.top.get_object('eer_date_entry')
if not date.get_text_length():
date.grab_focus();
====Validate====
[http://live.gnome.org/Accerciser/ Accerciser] provides a an [http://live.gnome.org/Accerciser/Validate AT-SPI Validator Plugin] #{{bug|5313}}. ==Visual impairment== It is helpful to use large fonts, high DPI displays, high-contrast themes and icons supplemented with auditory feedback and screen magnifying software. About 8% of men and about 0.4% of women have some form of color-blindness. ==Links== * [https://wiki.gnome.org/Accessibility GNOME Accessibility] provides some guidances:** https://help.gnome.org/users/gnome-help/stable/a11y.html** http://library.gnome.org/users/gnome-access-guide/stable/ (link 404 gone)** https://developer.gnome.org/accessibility-devel-guide/stable/ * [http://accessibility.kde.org/ KDE accessibility team] is a small on-line community of developers and other volunteers dedicated to ensure that our favorite desktop is accessible to all users, including those of us with physical handicaps.** http://accessibility.kde.org/developer/atk.php** http://accessibility.kde.org/developer/comparision.php** http://accessibility.kde.org/developer/bridge.php * [http://www.aegis-project.eu/ AEGIS] acronym stands for ''Open Accessibility Everywhere: Groundwork, Infrastructure, Standards''. * [http://www.projectpossibility.org/ Possibility] project is a nonprofit organization dedicated to creating groundbreaking open source software for persons with disabilities.
==Bugs and feature requests==
* #{{bug|2519}}: Pressing 'Enter' should normally activate OK
* #{{bug|3069}}: GtkTreeView is very slow / crashes with Assistive Technologies / ATK / a11y enabled
* #{{bug|5301}}: ATK support
* #{{bug|5308}}: Review focus on Editors with toggle buttons
* #{{bug|5309}}: Review ValidatableMaskedEntry for a better Accessibility support
* #{{bug|5310}}: Missing Date field on MediaRef Editor
* #{{bug|5312}}: Make tooltip on date edition toggle button consistent
* #{{bug|5313}}: AT-SPI issues
* #{{bug|5314}}: Missing Tags environment on MediaRef Editor
* #{{bug|5320}}: Privacy icon/button is not consistent
* #{{bug|5349}}: Filter and "Quick Filter" are not applied when you press [Enter]
* #{{bug|5350}}: Focus on the "Quick Filter" field is lost after clicking on "Find"
* #{{bug|5351}}: Focus on event window should be set to "Event type" by default
= Related pages =
* [[Usability]]
* [[OptimizeMenuNames]]
[[Category:Developers/General]]
[[Category:Developers/Design]]