How GNOME Obsoleted its Enable Accessibility Setting. Alejandro Piñeiro

Similar documents
GNOME 3.0 Accessibility: State of the Union. Alejandro Piñeiro

Flatpak and your distribution. Simon McVittie

GUI Programming with GTK+

Hildon 2.2: new GTK+ widgets for mobile devices

LibreOffice. Architecture, accessibility and QA g_object_class_install_property (gobject_class, F_DO_BARNACLE_PROP_CODE, Jacobo Aragunde Pérez

The Past, Present, and Future of SWT

Gobject Gobject 2.26.zip

Supporting accessibility in your distribution

Powering Your Website Content with Magento PageBuilder

BORDERLESS AND BARRIER FREE

Sun's Approach To Accessibility. Concertation Meeting 19 May 2003

Tutorial 4 Creating Forms and Reports

MYOB Enterprise Solutions software system requirements guidelines. Thursday, 6 May 2010 Version 2.0

Manual Update Java 7 25 Mac 32 Bit Offline

Effective Online Marketing 101.4: Fundamentals for effective online fundraising

Making Eclipse Accessible to People of all Abilities

Aim of this paper is to describe the motivation and the concept of the Decibel project and related technologies.

WebKit GTK on (electronic) paper. Marco Barisione linux.conf.au 2009, Hobart

ProData DBU/Server - RDi Plugin. Quick Start Guide

Oracle JET in Oracle APEX Marc Sewtz Senior Software Development Manager Oracle America, Inc. New York, NY

Miguel de Icaza A Genius Free Software Evangelist. Cristhian Figueroa PhD Student Ingegneria Informatica e dei Sistemi Politecnico di Torino 2013

Can t Believe It s Linux. a totally different and hypothetical linux distribution

How To Install And Manage Gnome Shell Themes In Ubuntu 12.04

Copyright

Designing RIA Accessibility: A Yahoo UI (YUI) Menu Case Study

Graduating to GUI. PyGObject for Beginners. Presented by Paul W. Frields Red Hat, Inc. / Fedora Project

UCRChatline - ios Mobile Application

How does software accessibility work?

Manual Update Java 7 25 Mac Windows Xp

GNOME Desktop. OSS-GUI Course Text Masayuki Ida August, 2005

Optimizing Field Operations. Jeff Shaner

Introducing Survey123 For ArcGIS

Moblin v2 SDK. Open Source Technology Center Presented by Bob Spencer

Agile Manifesto & XP. Topics. Rapid software development. Agile methods. Chapter ) What is Agile trying to do?

Desktop software in pkgsrc. Kamil Rytarowski

Google Calendar. View: Toggle the calendar view between day, week, month and more All day events: Events and tasks set for all day

Teamcenter Voluntary Product Accessibility Template. Summary Table Voluntary Product Accessibility Template

Note: This discussion is based on MacOS, (High Sierra). Some illustrations may differ when using other versions of macos or OS X.

Decision Making Information from Your Mobile Device with Today's Rockwell Software

Flatpak workshop. flatpak.org

Manual Internet Explorer 10 For Xp 32 Bits >>>CLICK HERE<<<

Collaborative Web Accessibility Improvement System: A Real-World Deployment

Realize Reader Chrome App Version Early Learning User Guide

UI, Graphics & EFL. Carsten Haitzler Principal Engineer Samsung Electronics Korea Founder/Leader Enlightenment / EFL

Withdrawal of Text Processing (Business Professional)

Guile-GNOME: Libgnome

AGL Requirements Specification V2.0

Getting Things GNOME! Documentation

The paper shows how to realize write-once-run-anywhere for such apps, and what are important lessons learned from our experience.

PACE Suite. Release Notes. Version 3.3.1

Manual Update Java 7 25 Mac Windows 32 Bit

Upstreaming Hardware Enablement

TREND: Would you describe the state of the nation's economy these days as excellent, good, not so good, or poor? (* High also 62%)

COURSE LISTING. Courses Listed. with SAP Hybris Marketing Cloud. 24 January 2018 (23:53 GMT) HY760 - SAP Hybris Marketing Cloud

This report is based on sampled data. Jun 1 Jul 6 Aug 10 Sep 14 Oct 19 Nov 23 Dec 28 Feb 1 Mar 8 Apr 12 May 17 Ju

The Cost of Going it Alone Dave Neary

Previous Intranet Initial intranet created in 2002 Created solely by Information Systems Very utilitarian i Created to permit people to access forms r

Standalone applications testing and automation

Introduction to creating 3D UI with BeagleBoard. ESC-341 Presented by Diego Dompe

Holiday Campaigns That Work 3 billion reasons, 5 proven tips

Emprex hd 3202 user manual

Equinox Project 3.6 Release Review

Designing accessible applications

Status of the Project

What is a Blog? How Can I Use One?

Dr. Jenkins, M.D., at Your Service: An overview of Jenkins at. #jenkinsconf. Cerner Corporation. Jenkins User Conference San Francisco

Storage and File System

At&t phone wont picture messages. At&t phone wont picture messages.zip

SF Current Cumulative PTF Package. I B M i P R E V E N T I V E S E R V I C E P L A N N I N G I N F O R M A T I O N

Putting the open in opensuse: Community-driven KDE Development. Will Stephenson

GMATScore Tutorial How to best use our elessons

Microsoft Remote Desktop Connection Client For Mac Os X

How to Create Fundraising Appeals that Work. Presented by: Mike Snusz Danielle Johnson-Vermenton

Oracle Project Management Introduction (Family Pack M)

Lenovo TAB A User Guide V1.0. Please read the safety precautions and important notes in the supplied manual before use.

Manual Internet Explorer 10 For Win Xp 32 Bit

Bozen, 26th November 2007 Patrizia Boccacci DISI-University of Genoa

DPDK Roadmap. Tim O Driscoll & Chris Wright Open Networking Summit 2017

Ms Visual Studio Express 2018 User Guide READ ONLINE

Upgrading and Deploying IBM Sametime July 19, IBM Corporation

You ve Got Mail! List Offer Creative. Timely insights & trends. Katie Parker Editorial Director. Zach Christensen Creative Director

eekboard a virtual keyboard for GNOME

Everything you ever wanted to know about Xubuntu

Frédéric Crozat SUSE Linux Enterprise Release Manager

Manual Of Virtualbox Additions Ubuntu Server 12.04

Comodo IceDragon Software Version 49.0

Google chrome theme background image

Blog Pro for Magento 2 User Guide

Windows 10 Tips and Tricks

A Guide to Understand, Install and Use Pie Register WordPress Registration Plugin

Office 365 Sharepoint 2015 Manual READ ONLINE

ABUSING TEXT EDITORS VIA THIRD-PARTY PLUGINS

COURSE LISTING. Courses Listed. with Governance, Risk and Compliance (GRC) SAP BusinessObjects. 19 February 2018 (15:13 GMT) GRC100 -

Replay available. Watch it now

MYOB Enterprise Solutions

Graphiti Release Review

OpenOffice.org & ODF Accessibility

Virtual Leverage: Server Consolidation in Open Source Environments. Margaret Lewis Commercial Software Strategist AMD

WebEx New user Orientation. Meeting Organizer Guide

Read Now In-Browser Reader Guide

Transcription:

How GNOME Obsoleted its Enable Accessibility Setting Alejandro Piñeiro (apinheiro@igalia.com)

Topics Accessibility vs. Accessibility Support Phase 1: Getting Started Phase 2: Rebuilding What We Had Phase 3: Achieving Always On Accessibility How Does This Affect Me?

Accessibility vs. Accessibility Support An extremely quick introduction

Accessibility: removing barriers Themes and fonts Keyboard shortcuts Visual bells Assistive Technologies

Accessibility support: enabling access via ATs Screen Reader Screen Magnifier Navigation by on-screen keyboard Navigation by voice

Phase 1: Getting Started Creating an Accessible, Free Desktop

Starting GNOME Accessibility Mar 1999: GNOME 1.0 release Oct 2000: GNOME Accessibility Summit Sun, IBM, and others How to make an accessible Free Desktop Focus on GNOME 2.0 Jun 2002: GNOME 2.0 released

Bolted on; not built in Allowed to evolve independently Implemented as gmodule plugins gail atk-bridge Loaded conditionally at run-time based on an Accessibility on/off user setting

Plugin pros Support won't interfere when it is not needed No additional memory/cpu overhead (i.e. Hide the problems rather than fix them)

Plugin cons Tied to the session Loaded only at application start time Users need accessibility enabled in order to enable accessibility

Enabled by default in GNOME 2? Nov 2005: Accessibility enabled by default for development releases: ACCEPTED Jul 2008: Accessibility enabled by default for stable releases: REJECTED

Still we have the problem that our current accessibility technology just sucks too much for being enabled by default. -- desktop-devel-list commenter

Wait a moment... Still sucks too much after eight years? Accessibility was seen as an optional add-on. The Accessibility Team was always small. And then...

Perfect storm Corporate accessibility development stops Corporate change of direction Layoffs followed by takeovers GNOME 3 development starts

Phase 2: Rebuilding What We Had And taking the opportunity to make it better

2010: Rework existing support Bonobo deprecation AT-SPI over DBUS (AT-SPI2) GObject Introspection GSettings vs GConf

2010: Implement new support New toolkits like Clutter New widgets in existing toolkits like Gtk+ 3 New desktops like GNOME Shell

2011: Make improvements Fix regressions in the new and reworked code Improve toolkit a11y support, e.g. GtkTreeView Improve performance and stability

2010-2011: Integrate modules Cally becomes part of Clutter Gail becomes part of GTK ATK implementations are now built-in But atk-bridge remained a plugin

Phase 3: Achieving Always On Accessibility It takes a community to obsolete a setting.

2012: Year of Accessibility Hackfest to plan further work, including accessibility enabled by default Developers to focus on significantly improving the accessibility stack Friends of GNOME Campaign to support additional development

What changed? Stability improvements Performance improvements Accessibility framework not sending/getting messages unless an AT is listening

Enabled by default in GNOME 3? Apr 2012: proposed again tl;dr: ACCEPTED

The conservative approach Proposed by the Accessibility Team Just change the default value of the setting Approved by the GNOME Community

The no-turning-back approach Proposed by Benjamin Otte & Bastien Nocera Make atk-bridge a library which toolkits link to Embraced by the community (who pitched in) Implemented as the solution

What's the difference? Not an add-on but an add-in For users: It JustWorks For developers: App accessibility is tested by everyone The atk-bridge is compiled by more developers

Is it working? Accessibility is always on as of GNOME 3.6. Distros are shipping it, users are using it. Developers have not suggested we undo it. We're finding and fixing bugs here and there. But...Yeah, it's working.

How Does This Affect Me? As a developer who wants to make my application or environment accessible

Are you using GTK? If you are using GTK >= 3.6: GTK depends on the new library Your app should be accessible out of the box If you are using GTK2: These changes were not backported The setting was kept in GNOME 3 for such apps

Any other toolkit/application? Assuming that you already have an ATK implementation for your widgets... You only need to use at-spi2-bridge library Add the dependency Call an init method GNOME Shell's patch: 16 insertions, 199 deletions

Questions?