Bug 508611

Summary: Accessibility broken
Product: [openSUSE] openSUSE 11.2 Reporter: Halim Sahin <halim.sahin>
Component: FirefoxAssignee: Wolfgang Rosenauer <wolfgang>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: bryeny, chmiel, gnome-bugs, halim.sahin, nagappan, vuntz, wolfgang
Version: Factory   
Target Milestone: ---   
Hardware: All   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Halim Sahin 2009-06-01 07:27:26 UTC
User-Agent:       Lynx/2.8.7dev.9 libwww-FM/2.14 SSL-MM/1.4.1

Firefox's accessibility is broken in opensuse 11.2 milestone 1 and 2.
The screenreader orca can't read anything after firefox start.
It report firefox inaccessible. i don't know what's wrong in the firefox package under opensuse.
Using an daily snapshot of firefox works as expected.
Afaik the problem exists in opensuse 11.1 too.


Reproducible: Always

Steps to Reproduce:
1. Boot from gnome live cd and press f9 in the bootmenu to enable accessibility
2. this should start orca after gnome start
3. Start firefox and try to read anything

Actual Results:  
Orca can't read anything of the  firefox content.
Comment 1 Wolfgang Rosenauer 2009-06-01 08:07:57 UTC
I probably need some advice from people knowing how accessibility stuff works.
I know of no obvious reasons why it shouldn't work for our builds.
Comment 2 Wolfgang Rosenauer 2009-06-01 20:00:25 UTC
Reporter, sorry that I'm not up to date with a11y stuff.
Could you please describe how you compare upstream Firefox with openSUSE's?
Do you run both in the live system or have you also checked an installed system?

I can't find a real reason why the openSUSE build would fail while upstream doesn't.

@Gnome-people, what does Gnome do when someone enables a11y? I find some references in Firefox where they check for some stuff and enable their accessibility module.
One of the main things seems to be that $GNOME_ACCESSIBILITY must be set in the environment.
Comment 3 Peng Wu 2009-06-02 04:49:19 UTC
Hi Wolfgang,
  The following information is from my accessibility colleague:
  https://bugzilla.mozilla.org/show_bug.cgi?id=460926,
  A11y hierarchy is broken on Ubuntu 8.10 (GNOME 2.24).
Comment 4 Halim Sahin 2009-06-03 07:56:20 UTC
I have checked live and the installed system of opensuse 11.2.
The opensuse firefox is inaccessible in the live cd and in the installed system.

I have downloaded firefox 3.5 beta4 from mozilla.org and started it from /opt/firefox.
this works as expected.

I have no idea what causes this Problem. It seems that no aditional config is needed to enable acessibility but I am not sure on this.
Comment 5 Halim Sahin 2009-07-22 10:20:34 UTC
Any news for this bug?
I am not an expert for packaging stuff but can you please check if atk and gtk2 support is enabled in xulrunner/firefox? this could fix the problem.
BTW. please try to fix this anoying bug if you want that an accessible firefox should be shipped with Opensuse 11.2. It's was allready broken in opensuse 11.1.
Thanks.
Comment 6 Wolfgang Rosenauer 2009-07-22 10:57:43 UTC
Nobody could give me a hint what would cause the issue.

xulrunner/firefox is built using:
checking MOZ_GTK2_LIBS... -lgtk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lfreetype -lz -lfontconfig -lgdk-x11-2.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 

I can't do anything as I have no clue
- how to set up a11y
- how to test a11y
- how a11y is supposed to work

As that is a dead end from my side, I'm moving this to Gnome in case someone can help from there.
Comment 7 Vincent Untz 2009-08-06 12:06:00 UTC
Stephen, Bryen: can you take a look?
Comment 8 Nagappan A 2009-08-25 02:59:21 UTC
On openSUSE / SLED version of FF, GAIL library path was not included. Its not in default path. If you setup the environment, it should work.

Give a try like this:

in /etc/ld.so.conf add the path to /usr/lib/gtk-2.0/modules/ and run sudo /sbin/ldconfig, then start FF and see.

Thanks
Comment 9 Halim Sahin 2009-08-27 03:07:08 UTC
This didn't solve the problem.
Adding the gail path in ld.so.conf had no effect under opensuse.
More ideas????
Comment 10 Stephen Shaw 2009-08-27 19:02:56 UTC
I just downloaded firefox 3.5.2 from mozilla.com and untarred it into /opt/mozilla.  I ran ./firefox from inside of /opt/mozilla/firefox and it shows up in accerciser.
Comment 11 Wolfgang Rosenauer 2009-08-27 20:33:44 UTC
That's nothing new that the upstream build works apparently.
But I absolutely miss any idea why that would be the case.
Comment 12 Halim Sahin 2009-08-27 20:47:11 UTC
Maybe it has to do with the firefox suse branding?
Comment 13 Wolfgang Rosenauer 2009-08-28 23:08:09 UTC
With Stephen's help we found it's caused by our gconf-backend patch.
Comment 14 Brian Merrell 2009-08-28 23:10:30 UTC
Nice work!  Assigning to myself.
Comment 15 Halim Sahin 2009-09-10 08:13:41 UTC
Yes, nice work but it wasn't included in opensuse 11.2 m7.
The firefox shipped with gnome livecd 11.2m7 isn't accessible.
Comment 16 Brian Merrell 2009-09-10 14:26:16 UTC
(In reply to comment #15)
> Yes, nice work but it wasn't included in opensuse 11.2 m7.
> The firefox shipped with gnome livecd 11.2m7 isn't accessible.

Is issue has not been fixed yet.  Stephen and Wolfgang have narrowed the problem down to a big gconf-backend patch, which need to be gone through to find the bug.  At this point, we simply know that accessibility works when that patch is not applied.
Comment 17 Vincent Untz 2009-09-11 10:23:29 UTC
(moving to firefox component)
Comment 18 Wolfgang Rosenauer 2009-10-11 19:39:19 UTC
I'll take this as I'm just rebasing the lockdown patches for 1.9.1.4 and found the reason (most likely).
Comment 19 Brian Merrell 2009-10-11 21:01:13 UTC
Thanks Wolfgang.  I had a little time to investigate this between some recent work on security updates.  I will tell you what I discovered, in case it is useful to you:

The problem exists in the mozilla191 package (which I believe you and Stephen already disovered).  If either gconf-backend.patch.bz2 or gecko-lockdown.patch is applied, then Firefox is no longer accessible.  toolkit-ui-lockdown.patch can be applied without making Firefox inaccessible.

Additionally, if the patches to xpinstall/src/nsXPInstallManager.cpp and widget/src/gtk2/nsWindow.cpp are removed from the gecko-lockdown.patch, the gecko-lockdown.patch can be applied without making Firefox inaccessible.  However, if gconf-backend.patch.bz2 is also applied, Firefox will remain inaccessible.

Again, I'm not sure how useful this information is to you, but I wanted to let you know what I had seen thus far.  Please let me know if I can help with anything.  The easiest way to tell if Firefox is accessible is to to the following:

1.  Enable assistive technologies from the GNOME control panel (under the assistive technologies icon).  You have to log out and log back in for the change to take affect.
2.  Run Accerciser and make sure that Firefox appears in the left pane (the TreeView of applications).  You should be able to expand Firefox in that pane and see several children under the Firefox application.
Comment 20 Wolfgang Rosenauer 2009-10-12 07:31:47 UTC
Thanks for your notes. These are correct. The underlying full reason for a11y being not enabled is that gconf-backend.patch is not "complete". The original backend offers an interface to read from gconf regardless of config.use_system_prefs being used. That is done for the accessibility setting by default. The new interface introduced by gconf-backend doesn't offer that direct interface. Therefore the accessibility setting is only used from gconf if config.use_system_prefs is set what is not useful as it will enable all other things as well.
This special case is not handled in the lockdown patches. As I don't have the time right now to extend the new gconf backend with a compatible interface I'll back out the lockdown stuff from openSUSE 11.2.
Hopefully I'll find the time to fix up the stack at some point.
Comment 21 Wolfgang Rosenauer 2009-10-12 12:35:43 UTC
I'll close this one and open another bug to look into reintegrating lockdown stuff again.
Comment 22 Brian Merrell 2009-11-16 18:42:38 UTC
*** Bug 457728 has been marked as a duplicate of this bug. ***
Comment 23 Nagappan A 2010-03-03 06:30:36 UTC
Wolfgang, Could you please add the lockdown bug here ?

Thanks
Comment 24 Wolfgang Rosenauer 2010-03-03 07:08:27 UTC
bug 546158
Comment 25 Bernhard Wiedemann 2016-04-15 09:39:54 UTC
This is an autogenerated message for OBS integration:
This bug (508611) was mentioned in
https://build.opensuse.org/request/show/22252 Factory / mozilla-xulrunner191