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

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

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

OpenOffice.org & ODF Accessibility

Designing accessible applications

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

mismatch between what is maybe possible today and what is going on in many of today's IDEs.

How does software accessibility work?

GUI Programming with GTK+

Maintaining accessibility through testing?

Supporting accessibility in your distribution

Flatpak and your distribution. Simon McVittie

Cross-platform software development in practice. Object-Oriented approach.

Blog post on updates yesterday and today:

Eclipse 4.0. Jochen Krause EclipseSource

Hello, and welcome to another episode of. Getting the Most Out of IBM U2. This is Kenny Brunel, and

How to git with proper etiquette

GNOME Embedded Initiative first meeting

TDF Infra Overview. from developers' perspective

Are you Really Helped by Upstream Kernel Code?

Sample Online Survey Report: Complex Software Application

Carlos Soriano Sanchez. Bastian Ilsø Hougaard. csoriano bastianilso

CaptainCasa Enterprise Client. Why, where, how JavaFX makes sense

Incoherent Rant about Code

My name is Elizabeth Simister and I am the current product accessibility manager at Blackboard. I got my start in accessibility in 2004 in what is

Quo pertentas, OSS? How Open Source can benefit from well-crafted Tests

Chapter 2. Operating-System Structures

Equinox Project Update

WebRTC: Possible? Don McGregor Research Associate MOVES Institute.


Cloud4all and GPII: Anywhere Accessibility through Cloud-Based Auto-Personalisation

The Past, Present, and Future of SWT

TDDC88 Lab 4 Software Configuration Management

Software Tools. Scott Klemmer Autumn 2009

IoT in 2016: a serious overview of IoT today and a technical preview of HoneyVNC. By Yonathan Klijnsma

Manual Java Update Windows 7 64 Bit Probleme

How To Install And Manage Gnome Shell Themes In Ubuntu 12.04

ARWINSS. The new Windows subsystem for ReactOS / Windows

The Challenges for Software Developers with Modern App Delivery

AGENDA. A New Look at Mainframe Hacking And Penetration Testing 01/11/2016. World Class z Specialists

Happy Birthday, Ajax4jsf! A Progress Report

Moving Forward with Oracle Forms

Manual Update Java 7 Version 11 Not Working In Chrome

James Turnbull

The Cost of Going it Alone Dave Neary

Flash Player Update Guide Windows 7 64 Bit Google Chrome

Guarantee Application Success Steven Feuerstein PL/SQL Evangelist, Quest Software

E-Guide WHAT WINDOWS 10 ADOPTION MEANS FOR IT

What Does Manually Manage Music And Videos Mean In Itunes

Case study on PhoneGap / Apache Cordova

Keeping Up With The Linux Kernel. Marc Dionne AFS and Kerberos Workshop Pittsburgh

Cords and gumballs. Mike Hearn.

tsmuse entered the room. 10:04 alispivak

Elementary IR: Scalable Boolean Text Search. (Compare with R & G )

Red Hat Cloud security: Frameworks & enforcement. Kurt Seifried Security Response team April 16, 2014 v1.0

Global Collaboration on Accelerator Operations and Experiments

The State of the Linux Desktop An OSDL Perspective. John Cherry OSDL Desktop Linux (DTL) September 23, 2006

Builder. Improving GNOME's Developer Story. Christian Hergert builder.pdf

XML: the document format of the future?

Up and Running Software The Development Process

Welcome to this IBM podcast, Realizing More. Value from Your IMS Compiler Upgrade. I'm Kimberly Gist

Creating accessible forms

Engineering Robust Server Software

FRONT USER GUIDE Getting Started with Front

With IBM BPM 8.5.5, the features needed to express both BPM solutions and case management oriented solutions comes together in one offering.

The Anatomy of A FOSS Project

Welcome to this IBM Rational Podcast. I'm. Angelique Matheny. Joining me for this podcast, Delivering

Taking GStreamer to the Next Level. Tim-Philipp Müller

social media icons on the bottom (will be replaced with logos) Features Download About Learn Get Involved Support FAQ

Huge market -- essentially all high performance databases work this way

Asterisk Project Update AstriCon 2009

DECENTRALIZED SOCIAL NETWORKING WITH WORDPRESS. November 7, 2018 WordPress Meetup Vienna Alex Kirk

OpenPrinting Plenary. 15 May 2017 Joint PWG/OpenPrinting Summit F2F Wild Palms Hotel in Sunnyvale, CA

17655: Discussion: The New z/os Interface for the Touch Generation

Evented I/O for V8 JavaScript, is it...

Manual Java 6 Update 45 For Windows 7 32 Bit

Speech 2 Part 2 Transcript: The role of DB2 in Web 2.0 and in the IOD World

Photoshop World 2018

============================================================================

Chapter 2: Operating-System Structures

Transcript for Episode 3: The Right Tool for the Job

Understanding and Exploiting Texting Technology. Mike Whaley & Kelly Van Hill PHFE WIC Program Local Agency California WIC Program

Lab Exercise Test First using JUnit

A few more things about Agile and SE. Could help in interviews, but don t try to bluff your way through

Kernel development: How things go wrong

Getting Help...71 Getting help with ScreenSteps...72

3 Continuous Integration 3. Automated system finding bugs is better than people

Updating the HPC Bill Punch, Director HPCC Nov 17, 2017

Choice, Choices, Choices: Fat versus Thin Clients

The failure of Operating Systems,

CS 153 Design of Operating Systems

Chapter 2: Operating-System Structures

Manual Update Java 7 25 Mac Windows 32 Bit

THOMAS LATOZA SWE 621 FALL 2018 DESIGN ECOSYSTEMS

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

Swinging from the Outside

Agreement and Consensus. SWE 622, Spring 2017 Distributed Software Engineering

Creating a Brochure in Publisher

Improving Perforce Performance At Research In Motion (RIM)

Computers for the whole world: An intro to GNOME and free software. Nuritzi Sanchez GNOME Foundation President, Board of Directors

Invest in the future, build for the web!

Transcription:

GNOME 3.0 Accessibility: State of the Union Alejandro Piñeiro (apinheiro@igalia.com)

Let's introduce it...

Accessibility? Means helping people with disabilities to participate in any life activity Like computer stuff. That involves programmatic access keyboard navigation themes

AT? AT == Assistive Technologie Screen readers On screen keyboards Magnifiers Ok

what needs an AT? Know which apps are running Know the active app Know the focus object Be able to interact with the app

AT-SPI? Assistive Technologie Service Provider Interface Daemon providing the functionality that requires those ATs out of the process Using CORBA/bonobo on the old times

And the apps? How they expose the data? Direct CORBA calls to AT-SPI? It would be doing stuff really similar But apps are heterogeneous...

ATK ATK = Accessibility ToolKit Common interface The atk-bridge uses ATK calls to know that to expose to AT-SPI Toolkits and apps implement ATK in process

How this stuff was implemented? Not in time for GNOME 2.X Isolated on runtime loadable modules At-spi provided at-bridge Gail provided an ATK implementation Isolated since the beginning Extension and access to private data nightmares

That old GNOME 2.0

Stories from the past Bill Haneman, March Mulhany, GUADEC 2004: Where we are today 8 critical bugs, ~50 serious bugs Assessment: 2.6 : Can be made to work, with some effort Need some HEAD components for better results 2.8 : Reasonable level of functionality out of the box : (still at risk) GOAL: disabled users can do all key tasks Depends on regression control and attention by packagers, community

GNOME 3.0 is coming! (First introduced at Istanbul 2008)

Changes, changes! CORBA is dead, long live DBUS AT-SPI (major piece) CORBA based Nokia fund initial move on 2008 Gsettings VS GConf Desktops: GNOME Shell, Unity Clutter, Gtk3 CSUN 2010 Accessibility Summit

Hey, why so serious? We worked to get the a11y pieces on GNOME 2.0 Why just keep sync with GNOME 3.0 is so a big problem? Lets talk about that later...

GNOME 3.0 is here! (April 2011)

GNOME 3.0.1 improved A11y community started to use a testing distro based on Frederic Crozat one Major functionality issues were solved GNOME classic is still the solution for a11y users

So, what we have here? Infrastructure: ATK, AT-SPI Toolkit implementations: GAIL, Cally, Java Apps: LibreOffice Ats: Orca, Caribou, GNOME Voice Control, VEDICS, Dasher, OpenGazer, MouseTrap A lot of things, right?

Really? At-spi just ported, no new features ATK still 1.0 after 10 years. Less than 5 commits in last two years for GVC, Dasher, MouseTrap, etc

What we really have? Infrastructure requires to be updated Some first citizens: Orca, Caribou, GNOME Shell built-in magnification Several Ats on their own Whats the difference? Orca has a real community behind

Some history good times 16 Oct 2000, GNOME Accessibility Summit Sun, IBM and others joined the party A11y had a really big push A lot of new stuff between 2000-2005: ATK, AT-SPI, GAIL, Gnopernicus, LSR,

Some history bad times 1 Jun 2007, IBM change strategies LSR dies, Orca survives 27 Jan 2010, Sun is acquired by Oracle Sun decreasing workforce is mostly removed Willie Walker stops to be a11y leader and Orca co-maintainer

First conclusion? If GNOME a11y wants to survive requires to maintain a healthy community But a11y applies to all GNOME. Why GNOME a11y?, why not GNOME? And talking about that.

That mail 2011-06-01 <snip> >From my perspective, the a11y team is far too happy to be inits own little corner, working on its 'testing distro' and its own little tools that need to work on every OS and thus end up working properly on none of them. Yet, when I try to run accerciser in a jhbuild tree on my system, it locks up solid after a few minutes every single Time... <snip>

A11y had opposite feeling Some IRC examples: Jan 22 21:31:37 <anonymous> API: aha...yeah. We need support for users who don't use the mouse at all. Jan 22 21:32:14 <anonymous> Seems as though that would just be a fundamental thing to build in Jan 22 21:35:08 <anonymous> As we all know, designing for a11y helps *everyone*, not just stupid disabled chumps that nobody cares about. Jan 22 21:38:35 <anonymous> API - heh - just joshing. I wasn't poking at you. I was poking at mainstream developers who haven't embraced accessible design yet. Jan 22 21:39:33 <API> yeah, I supposed that, but sometimes there are some strange situations Jan 22 21:40:06 <API> for example, at Boston, there are some presentations, and then the time of the "complainers from ally"

Communication breakdown A11y folks thing that the others prefer them to be isolated, and the others thinks that they are happy with that Other extract from that mail : I think that we have to be honest about the fact that a11y is not a first-class feature of GNOME until it is fully integrated.

Current work and future

ATK/AT-SPI2 Hackfest Analysis of current status and future A lot of things to do now on ATK2 A lot of things would require an API breakage

ATK/AT-SPI2 Hackfest (2) A lot of ATK implementors to be updated GTK Clutter LibreOffice Unity Etc. AT-SPI2 would also require some changes

GailEctomy Benjamin Otte and Matthias Clasen are merging GAIL and GTK First Benjamin conclusions about ATK were really more radical ;)

Performance and stability Target: being able to have a11y running by default without affecting performance and stability Mike Gorse working on that, made some changes Require to measure the changes

GNOME Shell Awesome built-in Magnifier by Joseph Scheuhammer On screen keyboard based on Caribou by Nohemi Fernandez GNOME 3.0 included some ATK patches Still not really usable with Orca Work in progress

A summary?

Current status

Current status An accessibility framework Bad: Not enough ATs or people Bus factor of one in several cases Good: GTK+ developers are taking care of GAIL What we need: improve the base, more ATs, more people

Questions?