<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>mindtrove &#187; at-spi</title>
	<atom:link href="http://mindtrove.info/tag/at-spi/feed/" rel="self" type="application/rss+xml" />
	<link>http://mindtrove.info</link>
	<description>Collecting ideas since 1980</description>
	<lastBuildDate>Thu, 01 Jul 2010 01:58:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Validate your accessibility</title>
		<link>http://mindtrove.info/validate-your-accessibility/</link>
		<comments>http://mindtrove.info/validate-your-accessibility/#comments</comments>
		<pubDate>Thu, 17 Jan 2008 00:46:00 +0000</pubDate>
		<dc:creator>Peter Parente</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[accerciser]]></category>
		<category><![CDATA[at-spi]]></category>
		<category><![CDATA[validation]]></category>

		<guid isPermaLink="false">http://pithy.tumblr.com/post/23941873</guid>
		<description><![CDATA[Eitan committed a new plug-in for Accerciser that makes it dirt simple to find basic accessibility problems. You know, the ones that cause grief for apps like Orca, GOK, On-Board, etc. To use it, run Accerciser, point it at part of a GUI, click validate, and wait for the report. The rules in the plug-in [...]]]></description>
			<content:encoded><![CDATA[<p>Eitan <a href="http://monotonous.org/?p=48">committed a new plug-in</a> for Accerciser that makes it dirt simple to find basic accessibility problems. You know, the ones that cause grief for apps like Orca, GOK, On-Board, etc. To use it, run Accerciser, point it at part of a GUI, click validate, and wait for the report.</p>
<p>The rules in the plug-in aren’t the greatest right now. But the plug-in is extensible with new rule sets called <em>schemas</em>. For instance, you could have a “Desktop” schema to check basic GUI problems, a “Web” schema to test document accessibility, and an “Orca” schema to check a program’s fitness for Orca scripting. The sky’s the limit, and I’m sure Eitan, Will, and company will come up with quite a few useful tests.</p>
<p>To ward off any fear brought on by the word “schema,” I should note that they’re really just Python modules with simple, three-method classes in them. For example:</p>

<div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
</pre></td><td class="code"><pre class="python" style="font-family:monospace;"><span style="color: #ff7700;font-weight:bold;">class</span> CheckFocusable<span style="color: black;">&#40;</span>Validator<span style="color: black;">&#41;</span>:
  <span style="color: #ff7700;font-weight:bold;">def</span> condition<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, acc<span style="color: black;">&#41;</span>:
    <span style="color: #808080; font-style: italic;"># only test accessibles that have the action interface</span>
    <span style="color: #ff7700;font-weight:bold;">return</span> acc.<span style="color: black;">queryAction</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>      
  <span style="color: #ff7700;font-weight:bold;">def</span> after<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, acc, state, view<span style="color: black;">&#41;</span>:
    <span style="color: #808080; font-style: italic;"># check an accessible after checking its descendants</span>
    <span style="color: #808080; font-style: italic;"># acc is the accessible</span>
    <span style="color: #808080; font-style: italic;"># state is a dictionary of whatever you need to store across tests</span>
    <span style="color: #808080; font-style: italic;"># view logs errors, warnings, etc.</span>
    <span style="color: #ff7700;font-weight:bold;">pass</span>
  <span style="color: #ff7700;font-weight:bold;">def</span> before<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, acc, state, view<span style="color: black;">&#41;</span>:
    <span style="color: #808080; font-style: italic;"># check an accessible before checking its descendants</span>
    s = acc.<span style="color: black;">getState</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #ff7700;font-weight:bold;">not</span> s.<span style="color: black;">contains</span><span style="color: black;">&#40;</span>STATE_FOCUSABLE<span style="color: black;">&#41;</span>:
      view.<span style="color: black;">error</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'actionable widget is not focusable'</span><span style="color: black;">&#41;</span></pre></td></tr></table></div>

<p>No more excuses for inaccessible apps now, right? <img src='http://mindtrove.info/wp/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://mindtrove.info/validate-your-accessibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MS User Interface Automation coming to Linux</title>
		<link>http://mindtrove.info/ms-user-interface-automation-coming-to-linux/</link>
		<comments>http://mindtrove.info/ms-user-interface-automation-coming-to-linux/#comments</comments>
		<pubDate>Thu, 08 Nov 2007 18:13:00 +0000</pubDate>
		<dc:creator>Peter Parente</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[at-spi]]></category>
		<category><![CDATA[atk]]></category>
		<category><![CDATA[uia]]></category>

		<guid isPermaLink="false">http://pithy.tumblr.com/post/18804342</guid>
		<description><![CDATA[MS User Interface Automation coming to Linux: “… Novell will develop and deliver an adapter that allows the UIA framework to work well with existing Linux accessibility projects and complement the investments made by IBM Corp. and others. Novell’s work will be open source and will make the UIA framework cross-platform while enabling UIA to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.novell.com/news/press/microsoft-and-novell-celebrate-year-of-interoperability-expand-collaboration-agreement/">MS User Interface Automation coming to Linux</a>:
<p>“… Novell will develop and deliver an adapter that allows the UIA framework to work well with existing Linux accessibility projects and complement the investments made by IBM Corp. and others. Novell’s work will be open source and will make the UIA framework cross-platform while enabling UIA to interoperate with the Linux Accessibility Toolkit (ATK), which ships with SUSE Linux Enterprise, Red Hat Enterprise Linux and Ubuntu Linux. The UIA solution will ensure interoperability of nonvisual access to the next generation of software applications.”</p>
<p>If I’m reading the article right, there will be a bridge from ATK to UIA, but there is no mention of an adapter between UIA and AT-SPI. That means ATs on the Linux platform will have to deal with two disparate accessibility APIs, AT-SPI and UIA, depending on what an application implements.</p>
<p><b>Update</b></p>
<p>Steve Lee points out that the article can be taken to mean that the bridge will really be from UIA to ATK/AT-SPI, not the other way around. That’s much more logical. I admit confusion since UIA is the name of both the client and server-side API. </p>
]]></content:encoded>
			<wfw:commentRss>http://mindtrove.info/ms-user-interface-automation-coming-to-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
