From 912d1a7b9e784a9eec5f13a1940f28ef65951068 Mon Sep 17 00:00:00 2001 From: Nick Alexander Date: Wed, 30 Mar 2016 10:21:29 -0700 Subject: [PATCH] Bug 1258450 - Route setAccessibilityEnabled through GeckoInterface. r=snorp,jchen MozReview-Commit-ID: 9DXQ8mxtg2Q --HG-- extra : rebase_source : 2576493a4fc0155d575963436e37361ef79936b8 extra : source : 7a434b18855a9439a98480a2261509ab5596f315 --- .../java/org/mozilla/gecko/BaseGeckoInterface.java | 5 +++++ .../base/java/org/mozilla/gecko/BrowserApp.java | 1 + .../java/org/mozilla/gecko/GeckoAccessibility.java | 12 ++++-------- .../base/java/org/mozilla/gecko/GeckoAppShell.java | 2 ++ 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/mobile/android/base/java/org/mozilla/gecko/BaseGeckoInterface.java b/mobile/android/base/java/org/mozilla/gecko/BaseGeckoInterface.java index 3cc39a605689..bb7ccf43dedf 100644 --- a/mobile/android/base/java/org/mozilla/gecko/BaseGeckoInterface.java +++ b/mobile/android/base/java/org/mozilla/gecko/BaseGeckoInterface.java @@ -156,4 +156,9 @@ public class BaseGeckoInterface implements GeckoAppShell.GeckoInterface { public void setUriTitle(final String uri, final String title) { // By default, no titles are associated with URIs. } + + @Override + public void setAccessibilityEnabled(boolean enabled) { + // By default, take no action when accessibility is toggled on or off. + } } diff --git a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java index 4cfd327afc20..864c7c7dae16 100644 --- a/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java +++ b/mobile/android/base/java/org/mozilla/gecko/BrowserApp.java @@ -1375,6 +1375,7 @@ public class BrowserApp extends GeckoApp @Override public void setAccessibilityEnabled(boolean enabled) { + super.setAccessibilityEnabled(enabled); mDynamicToolbar.setAccessibilityEnabled(enabled); } diff --git a/mobile/android/base/java/org/mozilla/gecko/GeckoAccessibility.java b/mobile/android/base/java/org/mozilla/gecko/GeckoAccessibility.java index 250a1bfa73a0..f8dcd97f7c2d 100644 --- a/mobile/android/base/java/org/mozilla/gecko/GeckoAccessibility.java +++ b/mobile/android/base/java/org/mozilla/gecko/GeckoAccessibility.java @@ -91,15 +91,11 @@ public class GeckoAccessibility { @Override public void onPostExecute(Void args) { - boolean isGeckoApp = false; - try { - isGeckoApp = context instanceof GeckoApp; - } catch (NoClassDefFoundError ex) {} - if (isGeckoApp) { - // Disable the dynamic toolbar when enabling accessibility. - // These features tend not to interact well. - ((GeckoApp) context).setAccessibilityEnabled(sEnabled); + final GeckoAppShell.GeckoInterface geckoInterface = GeckoAppShell.getGeckoInterface(); + if (geckoInterface == null) { + return; } + geckoInterface.setAccessibilityEnabled(sEnabled); } }.execute(); } diff --git a/mobile/android/base/java/org/mozilla/gecko/GeckoAppShell.java b/mobile/android/base/java/org/mozilla/gecko/GeckoAppShell.java index ac998bfdec89..fa7770f04644 100644 --- a/mobile/android/base/java/org/mozilla/gecko/GeckoAppShell.java +++ b/mobile/android/base/java/org/mozilla/gecko/GeckoAppShell.java @@ -2128,6 +2128,8 @@ public class GeckoAppShell * @param title to associate with the given URI. */ public void setUriTitle(final String uri, final String title); + + public void setAccessibilityEnabled(boolean enabled); }; private static GeckoInterface sGeckoInterface;