Commit c161437a authored by tedchoc's avatar tedchoc Committed by Commit bot

Migrate java callers to always use AccessibilityUtil#isAccessibilityEnabled

This removes the duplicate functionality in DeviceClassManager.

BUG=

Review-Url: https://codereview.chromium.org/2826203003
Cr-Commit-Position: refs/heads/master@{#465730}
parent 4cd4d67f
......@@ -130,6 +130,7 @@ import org.chromium.chrome.browser.tabmodel.TabWindowManager;
import org.chromium.chrome.browser.toolbar.Toolbar;
import org.chromium.chrome.browser.toolbar.ToolbarControlContainer;
import org.chromium.chrome.browser.toolbar.ToolbarManager;
import org.chromium.chrome.browser.util.AccessibilityUtil;
import org.chromium.chrome.browser.util.ChromeFileProvider;
import org.chromium.chrome.browser.util.ColorUtils;
import org.chromium.chrome.browser.util.FeatureUtilities;
......@@ -1361,7 +1362,7 @@ public abstract class ChromeActivity extends AsyncInitializationActivity
}
private void checkAccessibility() {
onAccessibilityModeChanged(DeviceClassManager.isAccessibilityModeEnabled(this));
onAccessibilityModeChanged(AccessibilityUtil.isAccessibilityEnabled());
}
/**
......
......@@ -358,7 +358,7 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
@Override
public void didAddTab(Tab tab, TabLaunchType type) {
if (type == TabLaunchType.FROM_LONGPRESS_BACKGROUND
&& !DeviceClassManager.enableAnimations(getApplicationContext())) {
&& !DeviceClassManager.enableAnimations()) {
Toast.makeText(ChromeTabbedActivity.this,
R.string.open_in_new_tab_toast,
Toast.LENGTH_SHORT).show();
......@@ -627,7 +627,7 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
} else {
mLayoutManager = new LayoutManagerChromePhone(compositorViewHolder);
}
mLayoutManager.setEnableAnimations(DeviceClassManager.enableAnimations(this));
mLayoutManager.setEnableAnimations(DeviceClassManager.enableAnimations());
mLayoutManager.addOverviewModeObserver(this);
// TODO(yusufo): get rid of findViewById(R.id.url_bar).
......@@ -904,8 +904,7 @@ public class ChromeTabbedActivity extends ChromeActivity implements OverviewMode
super.onAccessibilityModeChanged(enabled);
if (mLayoutManager != null) {
mLayoutManager.setEnableAnimations(
DeviceClassManager.enableAnimations(getApplicationContext()));
mLayoutManager.setEnableAnimations(DeviceClassManager.enableAnimations());
}
if (isTablet()) {
if (getCompositorViewHolder() != null) {
......
......@@ -35,6 +35,7 @@ import org.chromium.chrome.browser.tabmodel.TabModelSelector.CloseAllTabsDelegat
import org.chromium.chrome.browser.tabmodel.TabModelSelectorObserver;
import org.chromium.chrome.browser.tabmodel.TabModelSelectorTabObserver;
import org.chromium.chrome.browser.tabmodel.TabModelUtils;
import org.chromium.chrome.browser.util.AccessibilityUtil;
import org.chromium.chrome.browser.widget.OverviewListLayout;
import org.chromium.ui.base.LocalizationUtils;
import org.chromium.ui.resources.dynamics.DynamicResourceLoader;
......@@ -548,7 +549,7 @@ public class LayoutManagerChrome
* @return Whether or not to use the accessibility layout.
*/
protected boolean useAccessibilityLayout() {
return DeviceClassManager.isAccessibilityModeEnabled(mHost.getContext())
return AccessibilityUtil.isAccessibilityEnabled()
|| DeviceClassManager.enableAccessibilityLayout();
}
......@@ -656,8 +657,7 @@ public class LayoutManagerChrome
}
if (direction == ScrollDirection.DOWN) {
boolean isAccessibility =
DeviceClassManager.isAccessibilityModeEnabled(mHost.getContext());
boolean isAccessibility = AccessibilityUtil.isAccessibilityEnabled();
return mOverviewLayout != null && !isAccessibility;
}
......
......@@ -4,14 +4,11 @@
package org.chromium.chrome.browser.device;
import android.content.Context;
import android.view.accessibility.AccessibilityManager;
import org.chromium.base.CommandLine;
import org.chromium.base.ContextUtils;
import org.chromium.base.SysUtils;
import org.chromium.base.TraceEvent;
import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.util.AccessibilityUtil;
import org.chromium.ui.base.DeviceFormFactor;
/**
......@@ -109,11 +106,10 @@ public class DeviceClassManager {
}
/**
* @param context A {@link Context} instance.
* @return Whether or not we are showing animations.
* @return Whether or not we are showing animations.
*/
public static boolean enableAnimations(Context context) {
return getInstance().mEnableAnimations && !isAccessibilityModeEnabled(context);
public static boolean enableAnimations() {
return getInstance().mEnableAnimations && !AccessibilityUtil.isAccessibilityEnabled();
}
/**
......@@ -136,14 +132,4 @@ public class DeviceClassManager {
public static boolean disableDomainReliability() {
return getInstance().mDisableDomainReliability;
}
public static boolean isAccessibilityModeEnabled(Context context) {
TraceEvent.begin("DeviceClassManager::isAccessibilityModeEnabled");
AccessibilityManager manager = (AccessibilityManager)
context.getSystemService(Context.ACCESSIBILITY_SERVICE);
boolean enabled = manager != null && manager.isEnabled()
&& manager.isTouchExplorationEnabled();
TraceEvent.end("DeviceClassManager::isAccessibilityModeEnabled");
return enabled;
}
}
......@@ -17,7 +17,6 @@ import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.compositor.bottombar.OverlayPanel.PanelState;
import org.chromium.chrome.browser.compositor.bottombar.OverlayPanel.StateChangeReason;
import org.chromium.chrome.browser.compositor.bottombar.readermode.ReaderModePanel;
import org.chromium.chrome.browser.device.DeviceClassManager;
import org.chromium.chrome.browser.infobar.InfoBar;
import org.chromium.chrome.browser.infobar.InfoBarContainer;
import org.chromium.chrome.browser.infobar.InfoBarContainer.InfoBarContainerObserver;
......@@ -27,6 +26,7 @@ import org.chromium.chrome.browser.tabmodel.TabCreatorManager;
import org.chromium.chrome.browser.tabmodel.TabModel;
import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.chrome.browser.tabmodel.TabModelSelectorTabObserver;
import org.chromium.chrome.browser.util.AccessibilityUtil;
import org.chromium.chrome.browser.widget.findinpage.FindToolbarObserver;
import org.chromium.components.dom_distiller.content.DistillablePageUtils;
import org.chromium.components.dom_distiller.core.DomDistillerUrlUtils;
......@@ -534,7 +534,7 @@ public class ReaderModeManager extends TabModelSelectorTabObserver
|| mIsFindToolbarShowing
|| mIsFullscreenModeEntered
|| mIsKeyboardShowing
|| DeviceClassManager.isAccessibilityModeEnabled(mChromeActivity)) {
|| AccessibilityUtil.isAccessibilityEnabled()) {
return;
}
......
......@@ -15,13 +15,13 @@ import android.view.View;
import org.chromium.base.ContextUtils;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeFeatureList;
import org.chromium.chrome.browser.device.DeviceClassManager;
import org.chromium.chrome.browser.preferences.PreferencesLauncher;
import org.chromium.chrome.browser.preferences.SearchEnginePreference;
import org.chromium.chrome.browser.search_engines.TemplateUrlService;
import org.chromium.chrome.browser.snackbar.Snackbar;
import org.chromium.chrome.browser.snackbar.SnackbarManager;
import org.chromium.chrome.browser.snackbar.SnackbarManager.SnackbarController;
import org.chromium.chrome.browser.util.AccessibilityUtil;
import org.chromium.ui.UiUtils;
import org.chromium.ui.text.SpanApplier;
import org.chromium.ui.text.SpanApplier.SpanInfo;
......@@ -80,7 +80,7 @@ public class GeolocationSnackbarController implements SnackbarController {
SpannableString message = SpanApplier.applySpans(messageWithoutSpans,
new SpanInfo("<b>", "</b>", robotoMediumSpan));
String settings = context.getResources().getString(R.string.preferences);
int durationMs = DeviceClassManager.isAccessibilityModeEnabled(view.getContext())
int durationMs = AccessibilityUtil.isAccessibilityEnabled()
? ACCESSIBILITY_SNACKBAR_DURATION_MS : SNACKBAR_DURATION_MS;
final GeolocationSnackbarController controller = new GeolocationSnackbarController();
final Snackbar snackbar = Snackbar
......
......@@ -13,7 +13,7 @@ import android.view.ViewGroup;
import org.chromium.base.VisibleForTesting;
import org.chromium.base.metrics.RecordHistogram;
import org.chromium.chrome.browser.device.DeviceClassManager;
import org.chromium.chrome.browser.util.AccessibilityUtil;
/**
* Manager for the snackbar showing at the bottom of activity. There should be only one
......@@ -214,7 +214,7 @@ public class SnackbarManager implements OnClickListener {
private int getDuration(Snackbar snackbar) {
int durationMs = snackbar.getDuration();
if (durationMs == 0) {
durationMs = DeviceClassManager.isAccessibilityModeEnabled(mActivity)
durationMs = AccessibilityUtil.isAccessibilityEnabled()
? sAccessibilitySnackbarDurationMs : sSnackbarDurationMs;
}
return durationMs;
......
......@@ -16,6 +16,7 @@ import org.chromium.chrome.browser.tabmodel.EmptyTabModelObserver;
import org.chromium.chrome.browser.tabmodel.TabModel;
import org.chromium.chrome.browser.tabmodel.TabModelObserver;
import org.chromium.chrome.browser.tabmodel.TabModelSelector;
import org.chromium.chrome.browser.util.AccessibilityUtil;
import java.util.List;
import java.util.Locale;
......@@ -62,7 +63,7 @@ public class UndoBarController implements SnackbarManager.SnackbarController {
mContext = context;
mTabModelObserver = new EmptyTabModelObserver() {
private boolean disableUndo() {
return DeviceClassManager.isAccessibilityModeEnabled(mContext)
return AccessibilityUtil.isAccessibilityEnabled()
|| DeviceClassManager.enableAccessibilityLayout();
}
......
......@@ -142,8 +142,7 @@ public class TabStateBrowserControlsVisibilityDelegate
enableHidingBrowserControls &= (securityState != ConnectionSecurityLevel.DANGEROUS
&& securityState != ConnectionSecurityLevel.SECURITY_WARNING);
enableHidingBrowserControls &=
!AccessibilityUtil.isAccessibilityEnabled(mTab.getApplicationContext());
enableHidingBrowserControls &= !AccessibilityUtil.isAccessibilityEnabled();
ContentViewCore cvc = mTab.getContentViewCore();
enableHidingBrowserControls &= cvc == null || !cvc.isFocusedNodeEditable();
......
......@@ -18,13 +18,13 @@ import org.chromium.base.ApiCompatibilityUtils;
import org.chromium.base.metrics.RecordUserAction;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.NavigationPopup;
import org.chromium.chrome.browser.device.DeviceClassManager;
import org.chromium.chrome.browser.download.DownloadUtils;
import org.chromium.chrome.browser.ntp.NewTabPage;
import org.chromium.chrome.browser.omnibox.LocationBar;
import org.chromium.chrome.browser.omnibox.LocationBarTablet;
import org.chromium.chrome.browser.partnercustomizations.HomepageManager;
import org.chromium.chrome.browser.tab.Tab;
import org.chromium.chrome.browser.util.AccessibilityUtil;
import org.chromium.chrome.browser.widget.TintedImageButton;
import org.chromium.ui.base.DeviceFormFactor;
......@@ -94,7 +94,7 @@ public class ToolbarTablet extends ToolbarLayout implements OnClickListener {
mBackButton = (TintedImageButton) findViewById(R.id.back_button);
mForwardButton = (TintedImageButton) findViewById(R.id.forward_button);
mReloadButton = (TintedImageButton) findViewById(R.id.refresh_button);
mShowTabStack = DeviceClassManager.isAccessibilityModeEnabled(getContext());
mShowTabStack = AccessibilityUtil.isAccessibilityEnabled();
mTabSwitcherButtonDrawable =
TabSwitcherDrawable.createTabSwitcherDrawable(getResources(), false);
......
......@@ -12,7 +12,9 @@ import android.net.Uri;
import android.support.v7.app.AlertDialog;
import android.view.accessibility.AccessibilityManager;
import org.chromium.base.ContextUtils;
import org.chromium.base.PackageUtils;
import org.chromium.base.TraceEvent;
import org.chromium.chrome.R;
import java.util.List;
......@@ -40,13 +42,17 @@ public class AccessibilityUtil {
/**
* Checks to see that this device has accessibility and touch exploration enabled.
* @param context A {@link Context} instance.
* @return Whether or not accessibility and touch exploration are enabled.
*/
public static boolean isAccessibilityEnabled(Context context) {
AccessibilityManager manager = (AccessibilityManager)
context.getSystemService(Context.ACCESSIBILITY_SERVICE);
return manager != null && manager.isEnabled() && manager.isTouchExplorationEnabled();
public static boolean isAccessibilityEnabled() {
TraceEvent.begin("AccessibilityManager::isAccessibilityEnabled");
AccessibilityManager manager =
(AccessibilityManager) ContextUtils.getApplicationContext().getSystemService(
Context.ACCESSIBILITY_SERVICE);
boolean retVal =
manager != null && manager.isEnabled() && manager.isTouchExplorationEnabled();
TraceEvent.end("AccessibilityManager::isAccessibilityEnabled");
return retVal;
}
/**
......
......@@ -124,7 +124,7 @@ public class ChromeActivityTest extends ChromeTabbedActivityTestBase {
return getActivity().getLayoutManager().animationsEnabled();
}
});
assertEquals(animationsEnabled, DeviceClassManager.enableAnimations(getActivity()));
assertEquals(animationsEnabled, DeviceClassManager.enableAnimations());
}
@Override
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment