Closed Bug 349898 Opened 18 years ago Closed 17 years ago

Dynamic ATK/AT-SPI library check

Categories

(Core :: Disability Access APIs, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: aaronlev, Assigned: ginnchen+exoracle)

References

Details

(Keywords: access)

We should not expose an accessible hierarchy for Firefox unless HyperLinkImpl is available.

This means we should dynamically check the library versions on the system for:
- ATK (1.12.1+)
- AT-SPI (which version is required for this?)

We can also set an accessible name for the application and/or top level windows which says something like 
"Accessibility in [appname] requires updated system components. Please update the ATK component to at least [atkversionrequired] and the AT-SPI component to at least [atspiversionrequired]. Check with your system vendor to get the
latest version of these components."
Assignee: aaronleventhal → nian.liu
we already make AtkHyperlinkImpl interface dynamiclly added to atk object, which makes it fine to work with low version atk.

do we still need fix this bug?
Status: NEW → ASSIGNED
(In reply to comment #1)
> we already make AtkHyperlinkImpl interface dynamiclly added to atk object,
> which makes it fine to work with low version atk.
> 
> do we still need fix this bug?
> 
Yes, we need.
Because a11y doesn't work well with low version atk. We should inform users.
We build with the right symbols, but do the libraries on the host machine have a late enough version to support AtkHyperlinkImpl?

Yes we need to fix this.
at-spi 1.7.11
atk 1.12.2
(In reply to comment #4)
> at-spi 1.7.11
> atk 1.12.2
> 

How can we know it at run-time?
We used to check atk_hyperlink_impl_get_type for >atk 1.12.1.
But what can we do for at-spi?
(In reply to comment #5)
> (In reply to comment #4)
> > at-spi 1.7.11
> > atk 1.12.2
> > 
> 
> How can we know it at run-time?
> We used to check atk_hyperlink_impl_get_type for >atk 1.12.1.
> But what can we do for at-spi?
> 
syscall for pkg-config --modversion, maybe?
(In reply to comment #6)
> syscall for pkg-config --modversion, maybe?
> 

We don't expect end-user have pkg-config installed.
Emit document events like "load_complete" will print a Glib-GObejct warning on system with atk low version.

Blocks: atk
No longer blocks: keya11y
if atk/at-spi can add handler to return version, that will solve the issue(sure need to backport to same version as which AtkHyperlinkImpl is added)

ginn and aaron, what's your opinion?
(In reply to comment #9)
> if atk/at-spi can add handler to return version, that will solve the issue

It won't happen before Gnome 2.20.

Maybe we can check some new added symbol to make sure atk version fits our requirement for now.
My opinion is that we should just forget about this for now. We have more important issues.

I expect that accesibility just won't work well in general unless users have updated systems. That's not just a problem for Mozilla.
except from Josselin's reply in gnome-developer
"There is no generic way to do this, but a number of libraries provide
interfaces to their version. With ATK, it is atk_get_toolkit_version,
and with at-spi it is AccessibleApplication_getVersion.

However you should be very careful with what you do with such string
versions, as they can't be expected to carry meaningful information
about the library's features.

For example, Eclipse has a workaround for a bug found in some GTK+
versions, and checks for the GTK+ version to know whether it should use
the workaround. When the GTK+ fix was backported, Eclipse started to
fail horribly."

(In reply to comment #12)
> With ATK, it is atk_get_toolkit_version,
> and with at-spi it is AccessibleApplication_getVersion.

atk_get_toolkit_version returns the TOOLKIT version, not atk version, toolkit means gail or Gecko.

const gchar* atk_get_toolkit_version        (void);
Gets version string for the GUI toolkit implementing ATK for this application.
Ginn, maybe we should resolve this one as WONTFIX. I don't see us doing it for Firefox 3, when it matters, do you?
Assignee: nian.liu → ginn.chen
Status: ASSIGNED → NEW
Few people use a11y feature with old GNOME. 
I think we can live with this issue.
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.