Enable HWND emulation for ZoomText 2021
Categories
(Core :: Disability Access APIs, enhancement)
Tracking
()
Tracking | Status | |
---|---|---|
firefox83 | --- | fixed |
People
(Reporter: Jamie, Assigned: Jamie)
Details
Attachments
(3 files)
JAWS requires Firefox to enable HWND emulation. Previously, ZoomText didn't. However, Vispero are moving some of the code that interacts with Firefox to a common module shared between both products. Unfortunately, eliminating their reliance on HWND emulation isn't currently feasible for them. So, we need to enable HWND emulation for this new dll so that ZoomText 2021 can work with Firefox.
The dll is called AccEventCache.dll. Because a11y client dll detection currently happens in Compatibility::InitConsumers, we'll need to add a new consumer flag. We still want to be able to differentiate between JAWS and ZoomText, so I think we should call this one VISPEROSHARED or similar and it will be set in combination with one of the other two (JAWS or ZOOMTEXT).
Assignee | ||
Comment 1•4 years ago
|
||
This check is a remnant of the first version of e10s a11y, where there was no sandbox and content processes could expose their own HWNDs.
We return early if IPCAccessibilityActive(), which is now always true when running in a content process, so this check will never be hit.
If it were hit, this would cause serious breakage now, so having this in the code only serves to confuse things at best.
Updated•4 years ago
|
Assignee | ||
Comment 2•4 years ago
|
||
Assignee | ||
Comment 3•4 years ago
|
||
Assignee | ||
Comment 4•4 years ago
|
||
Comment 6•4 years ago
|
||
Verified that with Fusion running, the instanciators are JAWS|UIAUTOMATION|VISPEROSHARED in the try build.
Pushed by mzehe@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/e073c1a0b710 part 1: Remove pointless check for content process in nsWinUtils::MaybeStartWindowEmulation. r=MarcoZ https://hg.mozilla.org/integration/autoland/rev/bad0f557afb4 part 2: Detect dll shared by JAWS, ZoomText and ZoomText Fusion 2021 and later. r=MarcoZ https://hg.mozilla.org/integration/autoland/rev/be117f64b441 part 3: Enable window emulation for ZoomText and ZoomText Fusion 2021 and later. r=MarcoZ
Assignee | ||
Comment 8•4 years ago
|
||
We already gather telemetry for the consumers bitmask:
https://searchfox.org/mozilla-central/rev/3d53187b90605ccef321c9cadbba762ad06a6381/accessible/windows/msaa/Compatibility.cpp#190
Unfortunately, that's an enumerated histogram and it has n_values set to 11:
https://searchfox.org/mozilla-central/rev/3d53187b90605ccef321c9cadbba762ad06a6381/toolkit/components/telemetry/Histograms.json#17
Now we've added a 12th value. This documentation suggests that changing an existing histogram can cause problems, so we'd have to rename it.
IMO, that's probably more churn than it's worth, especially because we can still track JAWS vs ZoomText anyway, so all we gain here is knowing whether it's v2021 or later.
Comment 9•4 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/e073c1a0b710
https://hg.mozilla.org/mozilla-central/rev/bad0f557afb4
https://hg.mozilla.org/mozilla-central/rev/be117f64b441
Comment 10•4 years ago
|
||
Verified fixed in Nightly 83.0a1 20200929213959.
Description
•