Closed Bug 732908 Opened 9 years ago Closed 9 years ago

Expose 'Firefox' and 'Thunderbird' as the accessible app names -- even for pre-release versions

Categories

(Core :: Disability Access APIs, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla13

People

(Reporter: jdiggs, Assigned: surkov)

Details

Attachments

(1 file, 1 obsolete file)

At the moment, the accessible name of Firefox and Thunderbird are Firefox and Thunderbird for releases, but code names for pre-releases. As a result, screen readers like Orca are in danger of failing to recognize an app as, say, Thunderbird because it's name is, say, Earlybird.

When Orca does not recognize the app for what it functionally is (e.g. Thunderbird), certain Orca commands might not work as expected for the user. To address this problem, Orca has some special code to 'map' an app to what it really is. [1] Aside from the pathetic nature of this code, it is something we have to keep updating because the accessible names of Firefox and Thunderbird keep changing. I added 'Earlybird' just last night and now a user has some reported breakage for Orca + Thunderbird which might just be the result of this Thundbird being called 'Daily'. (Which, as an aside, is way too generic a name.) Please, please expose 'Firefox' and 'Thunderbird' as the accessible names of <the app that is about to become Firefox> and <the app that is about to become Thunderbird>.

In chatting with Alex Surkov in IRC about this, he asked if we ever need to differentiate whether this is, say, Minefield or not. Answer: No, we don't. Whether or not something is pre-release or not is not programmatically of interest. Major changes to toolkit accessibility (which are indeed of interest) are seen in version numbers for the toolkit. Alex then asked if we want to announce the different names to the user. Answer: Yes we do indeed, but we have never used the accessible app name for this purpose; instead we present the window/frame title. The only thing we use the accessible app (ATK_ROLE_APPLICATION) for is to be sure we load the right application script.

Thanks in advance for what is hopefully a small change on your end which will make a huge difference on our end. :)

[1] http://git.gnome.org/browse/orca/tree/src/orca/script_manager.py#n49
I full confirm with Joanie wrote.
Unfortunately I experienced this issue when I try sayall my entire composed letter with Orca in Thunderbird nightly version.

Attila
Attached patch patch (obsolete) — Splinter Review
I didn't tested but it seems it should work. Ginn, does it look good?
Assignee: nobody → surkov.alexander
Status: NEW → ASSIGNED
Attachment #602898 - Flags: review?(ginn.chen)
nsApplicationAccessible::GetName(nsAString& aName)

should be

nsApplicationAccessibleWrap::GetName(nsAString& aName)

I'm OK with patch.
It's good to have the same name as MSAA gives.

I guess orca still needs to deal with "Iceweasel" even with this patch.
(In reply to Ginn Chen from comment #4)
> should be
> nsApplicationAccessibleWrap::GetName(nsAString& aName)

yep, I fixed that.

> I'm OK with patch.
> It's good to have the same name as MSAA gives.

Then it would dupe the IA2::appName. I wouldn't change that.

> I guess orca still needs to deal with "Iceweasel" even with this patch.

what is Iceweasel?
> > I guess orca still needs to deal with "Iceweasel" even with this patch.
> 
> what is Iceweasel?

Iceweasel is the unbranded Firefox in Debian. Icedove also is the unbranded Thunderbird.
(In reply to Hub Figuiere [:hub] from comment #6)
> > > I guess orca still needs to deal with "Iceweasel" even with this patch.
> > 
> > what is Iceweasel?
> 
> Iceweasel is the unbranded Firefox in Debian. Icedove also is the unbranded
> Thunderbird.

ok, thanks.
Attached patch patch2Splinter Review
build issue + mochitest fix
Attachment #602898 - Attachment is obsolete: true
Attachment #603134 - Flags: review?(ginn.chen)
Attachment #602898 - Flags: review?(ginn.chen)
Comment on attachment 603134 [details] [diff] [review]
patch2

it will be great if you use LINUX || SOLARIS.

Is there any caller for base nsApplicationAccessible::GetName() now?
Attachment #603134 - Flags: review?(ginn.chen) → review+
(In reply to Ginn Chen from comment #9)
> Comment on attachment 603134 [details] [diff] [review]
> patch2
> 
> it will be great if you use LINUX || SOLARIS.

thanks!

> Is there any caller for base nsApplicationAccessible::GetName() now?

IA2 (and if you like XPCOM layer) but I don't have any data about AT consumers.
https://hg.mozilla.org/mozilla-central/rev/2c215049a637
Status: ASSIGNED → RESOLVED
Closed: 9 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla13
You need to log in before you can comment on or make changes to this bug.