commit f5f845f5fe14b5085f919ba46ec092b14c7fcb11 Author: Richard Pospesel richard@torproject.org Date: Tue Apr 2 17:33:09 2019 -0700
Bug 27503: Disabling accessibility on Windows breaks screen readers
This patch is merely an application of the current accessibility fixes in Mozilla 1520177 ( https://bugzilla.mozilla.org/show_bug.cgi?id=1520177 ). It replaces the RT_MANIFEST symbol (defined in windows headers we don't include) with the integer constant 24 to avoid includes confusion, updates the IA2Marshall.rc file to explicitly include the dll manifest and it adds some additional include directories previously excluded when building with the mingw toolchain.
With this patch applied, the NVDA screen reader can now read webpage contents, though navigation is still broken. --- accessible/interfaces/ia2/IA2Marshal.rc | 1 + toolkit/library/moz.build | 2 +- toolkit/library/xulrunner.rc | 4 ++-- 3 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/accessible/interfaces/ia2/IA2Marshal.rc b/accessible/interfaces/ia2/IA2Marshal.rc index b120abce744c..4fd86ddd2ab5 100644 --- a/accessible/interfaces/ia2/IA2Marshal.rc +++ b/accessible/interfaces/ia2/IA2Marshal.rc @@ -3,3 +3,4 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
1 typelib IA2Typelib.tlb +2 24 IA2Marshal.dll.manifest diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build old mode 100644 new mode 100755 index b0df6b98b91f..aeb850bdefba --- a/toolkit/library/moz.build +++ b/toolkit/library/moz.build @@ -45,7 +45,7 @@ def Libxul(name): if CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['ACCESSIBILITY']: LOCAL_INCLUDES += ['!/accessible/interfaces/gecko/']
- if CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['CC_TYPE'] not in ('clang', 'gcc'): + if CONFIG['OS_ARCH'] == 'WINNT': LOCAL_INCLUDES += [ '/widget/windows', '/xpcom/base', diff --git a/toolkit/library/xulrunner.rc b/toolkit/library/xulrunner.rc index e2adca6e2f1f..29a20c3afc11 100755 --- a/toolkit/library/xulrunner.rc +++ b/toolkit/library/xulrunner.rc @@ -6,8 +6,8 @@ #include "widget.rc" #ifdef ACCESSIBILITY 1 typelib IGeckoCustom.tlb -64 RT_MANIFEST IAccessible64.manifest +64 24 IAccessible64.manifest #ifndef HAVE_64BIT_BUILD -32 RT_MANIFEST IAccessible32.manifest +32 24 IAccessible32.manifest #endif #endif