Bug 1385991 - Add Services.appinfo.shouldBlockIncompatJaws detection support to Firefox 56. r=jimm, a=lizzard
authorJulien Cristau <jcristau@mozilla.com>
Mon, 25 Sep 2017 15:55:48 +0200
changeset 424169 8c340d0042b510bf984437ca3e5bbbe06daf95d4
parent 424168 f8e1f3cada56908735f98bbdbb319a04dd71cebb
child 424170 58e45fc51d63903b92708bbceb5276567a297f71
push id1541
push userryanvm@gmail.com
push dateMon, 25 Sep 2017 18:16:05 +0000
treeherdermozilla-release@8c340d0042b5 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjimm, lizzard
bugs1385991
milestone56.0
Bug 1385991 - Add Services.appinfo.shouldBlockIncompatJaws detection support to Firefox 56. r=jimm, a=lizzard Bug 1385991 added this in 57 along with some other work. For 56, just add this one method so the updater can detect jaws.
toolkit/xre/nsAppRunner.cpp
xpcom/system/nsIXULRuntime.idl
--- a/toolkit/xre/nsAppRunner.cpp
+++ b/toolkit/xre/nsAppRunner.cpp
@@ -974,16 +974,26 @@ nsXULAppInfo::GetAccessibleHandlerUsed(b
     a11y::IsHandlerRegistered();
 #else
   *aResult = false;
 #endif
   return NS_OK;
 }
 
 NS_IMETHODIMP
+nsXULAppInfo::GetShouldBlockIncompatJaws(bool* aResult)
+{
+  *aResult = false;
+#if defined(ACCESSIBILITY) && defined(XP_WIN)
+  *aResult = mozilla::a11y::Compatibility::IsOldJAWS();
+#endif
+  return NS_OK;
+}
+
+NS_IMETHODIMP
 nsXULAppInfo::GetIs64Bit(bool* aResult)
 {
 #ifdef HAVE_64BIT_BUILD
   *aResult = true;
 #else
   *aResult = false;
 #endif
   return NS_OK;
--- a/xpcom/system/nsIXULRuntime.idl
+++ b/xpcom/system/nsIXULRuntime.idl
@@ -132,16 +132,22 @@ interface nsIXULRuntime : nsISupports
   readonly attribute boolean accessibilityEnabled;
 
   /**
    * If true, the AccessibleHandler dll is used.
    */
   readonly attribute boolean accessibleHandlerUsed;
 
   /**
+   * Temporary, do not use. Indicates if an incompat version of JAWS
+   * screen reader software is loaded in our process space.
+   */
+  readonly attribute boolean shouldBlockIncompatJaws;
+
+  /**
    * Indicates whether the current Firefox build is 64-bit.
    */
   readonly attribute boolean is64Bit;
 
   /**
    * Signal the apprunner to invalidate caches on the next restart.
    * This will cause components to be autoregistered and all
    * fastload data to be re-created.