diff --git a/embedding/android/GeckoAppShell.java b/embedding/android/GeckoAppShell.java index 14af705c5604..be482e470528 100644 --- a/embedding/android/GeckoAppShell.java +++ b/embedding/android/GeckoAppShell.java @@ -62,8 +62,6 @@ import android.webkit.MimeTypeMap; import android.media.MediaScannerConnection; import android.media.MediaScannerConnection.MediaScannerConnectionClient; import android.provider.Settings; -import android.view.accessibility.AccessibilityManager; -import android.view.accessibility.AccessibilityEvent; import android.util.*; import android.net.Uri; @@ -1442,12 +1440,6 @@ public class GeckoAppShell } } - public static boolean getAccessibilityEnabled() { - AccessibilityManager accessibilityManager = - (AccessibilityManager) GeckoApp.mAppContext.getSystemService(Context.ACCESSIBILITY_SERVICE); - return accessibilityManager.isEnabled(); - } - public static void addPluginView(final View view, final double x, final double y, final double w, final double h) { diff --git a/mobile/android/base/GeckoAppShell.java b/mobile/android/base/GeckoAppShell.java index c8293fc2446e..1dab89500f0a 100644 --- a/mobile/android/base/GeckoAppShell.java +++ b/mobile/android/base/GeckoAppShell.java @@ -1456,12 +1456,6 @@ public class GeckoAppShell } } - public static boolean getAccessibilityEnabled() { - AccessibilityManager accessibilityManager = - (AccessibilityManager) GeckoApp.mAppContext.getSystemService(Context.ACCESSIBILITY_SERVICE); - return accessibilityManager.isEnabled(); - } - public static void addPluginView(View view, int x, int y, int w, int h, @@ -1739,7 +1733,17 @@ public class GeckoAppShell } return promptServiceResult; } - + + if (type.equals("Accessibility:IsEnabled")) { + JSONObject ret = new JSONObject(); + AccessibilityManager accessibilityManager = + (AccessibilityManager) GeckoApp.mAppContext.getSystemService(Context.ACCESSIBILITY_SERVICE); + try { + ret.put("enabled", accessibilityManager.isEnabled()); + } catch (Exception ex) { } + return ret.toString(); + } + if (mEventListeners == null) return ""; diff --git a/widget/android/AndroidBridge.cpp b/widget/android/AndroidBridge.cpp index 679372ba4e5b..3a1c1af67975 100644 --- a/widget/android/AndroidBridge.cpp +++ b/widget/android/AndroidBridge.cpp @@ -167,7 +167,6 @@ AndroidBridge::Init(JNIEnv *jEnv, jGetCurrentBatteryInformation = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "getCurrentBatteryInformation", "()[D"); jRemovePluginView = jEnv->GetStaticMethodID(jGeckoAppShellClass, "removePluginView", "(Landroid/view/View;)V"); - jGetAccessibilityEnabled = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "getAccessibilityEnabled", "()Z"); jHandleGeckoMessage = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "handleGeckoMessage", "(Ljava/lang/String;)Ljava/lang/String;"); jCheckUriVisited = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "checkUriVisited", "(Ljava/lang/String;)V"); jMarkUriVisited = (jmethodID) jEnv->GetStaticMethodID(jGeckoAppShellClass, "markUriVisited", "(Ljava/lang/String;)V"); @@ -816,18 +815,6 @@ AndroidBridge::HideProgressDialogOnce() } } -bool -AndroidBridge::GetAccessibilityEnabled() -{ - ALOG_BRIDGE("AndroidBridge::GetAccessibilityEnabled"); - - JNIEnv *env = GetJNIEnv(); - if (!env) - return false; - - return env->CallStaticBooleanMethod(mGeckoAppShellClass, jGetAccessibilityEnabled); -} - void AndroidBridge::PerformHapticFeedback(bool aIsLongPress) { diff --git a/widget/android/AndroidBridge.h b/widget/android/AndroidBridge.h index 9d3ff4a766d6..5665a55f4c4a 100644 --- a/widget/android/AndroidBridge.h +++ b/widget/android/AndroidBridge.h @@ -282,8 +282,6 @@ public: void FireAndWaitForTracerEvent(); - bool GetAccessibilityEnabled(); - class AutoLocalJNIFrame { public: AutoLocalJNIFrame(int nEntries = 128) @@ -521,7 +519,6 @@ protected: jmethodID jEnableBatteryNotifications; jmethodID jDisableBatteryNotifications; jmethodID jGetCurrentBatteryInformation; - jmethodID jGetAccessibilityEnabled; jmethodID jHandleGeckoMessage; jmethodID jCheckUriVisited; jmethodID jMarkUriVisited; diff --git a/widget/android/nsWindow.cpp b/widget/android/nsWindow.cpp index d9017ed58040..ad17d3e15cab 100644 --- a/widget/android/nsWindow.cpp +++ b/widget/android/nsWindow.cpp @@ -91,10 +91,6 @@ NS_IMPL_ISUPPORTS_INHERITED0(nsWindow, nsBaseWidget) static gfxIntSize gAndroidBounds = gfxIntSize(0, 0); static gfxIntSize gAndroidScreenBounds; -#ifdef ACCESSIBILITY -bool nsWindow::sAccessibilityEnabled = false; -#endif - #ifdef MOZ_JAVA_COMPOSITOR #include "mozilla/layers/CompositorChild.h" #include "mozilla/layers/CompositorParent.h" @@ -196,9 +192,6 @@ nsWindow::nsWindow() : mIsVisible(false), mParent(nsnull), mFocus(nsnull), -#ifdef ACCESSIBILITY - mRootAccessible(nsnull), -#endif mIMEComposing(false) { } @@ -209,10 +202,6 @@ nsWindow::~nsWindow() nsWindow *top = FindTopLevel(); if (top->mFocus == this) top->mFocus = nsnull; -#ifdef ACCESSIBILITY - if (mRootAccessible) - mRootAccessible = nsnull; -#endif ALOG("nsWindow %p destructor", (void*)this); #ifdef MOZ_JAVA_COMPOSITOR SetCompositor(NULL, NULL, NULL); @@ -416,17 +405,6 @@ nsWindow::Show(bool aState) RedrawAll(); } -#ifdef ACCESSIBILITY - static bool sAccessibilityChecked = false; - if (!sAccessibilityChecked) { - sAccessibilityChecked = true; - sAccessibilityEnabled = - AndroidBridge::Bridge()->GetAccessibilityEnabled(); - } - if (aState && sAccessibilityEnabled) - CreateRootAccessible(); -#endif - #ifdef DEBUG_ANDROID_WIDGET DumpWindows(); #endif @@ -434,32 +412,6 @@ nsWindow::Show(bool aState) return NS_OK; } -#ifdef ACCESSIBILITY -void -nsWindow::CreateRootAccessible() -{ - if (IsTopLevel() && !mRootAccessible) { - ALOG(("nsWindow:: Create Toplevel Accessibility\n")); - nsAccessible *acc = DispatchAccessibleEvent(); - - if (acc) { - mRootAccessible = acc; - } - } -} - -nsAccessible* -nsWindow::DispatchAccessibleEvent() -{ - nsAccessibleEvent event(true, NS_GETACCESSIBLE, this); - - nsEventStatus status; - DispatchEvent(&event, status); - - return event.mAccessible; -} -#endif - NS_IMETHODIMP nsWindow::SetModal(bool aState) { diff --git a/widget/android/nsWindow.h b/widget/android/nsWindow.h index 4884b920f8e8..0d5908c59db4 100644 --- a/widget/android/nsWindow.h +++ b/widget/android/nsWindow.h @@ -43,10 +43,6 @@ #include "nsTArray.h" -#ifdef ACCESSIBILITY -#include "nsAccessible.h" -#endif - #ifdef MOZ_JAVA_COMPOSITOR #include "AndroidJavaWrappers.h" #include "Layers.h" @@ -181,10 +177,6 @@ public: NS_IMETHOD ReparentNativeWidget(nsIWidget* aNewParent); -#ifdef ACCESSIBILITY - static bool sAccessibilityEnabled; -#endif - #ifdef MOZ_JAVA_COMPOSITOR virtual void DrawWindowUnderlay(LayerManager* aManager, nsIntRect aRect); virtual void DrawWindowOverlay(LayerManager* aManager, nsIntRect aRect); @@ -248,21 +240,6 @@ private: void HandleSpecialKey(mozilla::AndroidGeckoEvent *ae); void RedrawAll(); -#ifdef ACCESSIBILITY - nsRefPtr mRootAccessible; - - /** - * Request to create the accessible for this window if it is top level. - */ - void CreateRootAccessible(); - - /** - * Generate the NS_GETACCESSIBLE event to get accessible for this window - * and return it. - */ - nsAccessible *DispatchAccessibleEvent(); -#endif // ACCESSIBILITY - #ifdef MOZ_JAVA_COMPOSITOR mozilla::AndroidLayerRendererFrame mLayerRendererFrame;