Merge "Remove code that check for dashboard feature."
diff --git a/res/layout/installed_app_details.xml b/res/layout/installed_app_details.xml
deleted file mode 100644
index c84936a..0000000
--- a/res/layout/installed_app_details.xml
+++ /dev/null
@@ -1,76 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2008, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
--->
-
-<LinearLayout
-    xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/all_details"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:paddingStart="?android:attr/listPreferredItemPaddingStart"
-    android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
-    android:orientation="vertical">
-
-    <!-- App snippet with buttons -->
-    <LinearLayout
-        android:layout_width="match_parent"
-        android:layout_height="wrap_content"
-        android:layout_gravity="center_vertical"
-        android:paddingTop="5dip"
-        android:paddingBottom="10dip"
-        android:orientation="vertical">
-
-        <LinearLayout
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content">
-
-            <FrameLayout
-                android:layout_width="0dp"
-                android:layout_height="wrap_content"
-                android:layout_weight="1">
-                <!-- Application snippet label, version and icon -->
-                <include
-                    layout="@layout/app_item"
-                    android:id="@+id/app_snippet" />
-            </FrameLayout>
-
-            <ImageView
-                android:id="@+id/gear"
-                android:layout_width="48dp"
-                android:layout_height="48dp"
-                android:layout_gravity="center_vertical"
-                android:padding="12dp"
-                android:src="@drawable/ic_settings_24dp"
-                android:tint="?android:attr/colorAccent"
-                android:clickable="true"
-                android:background="?android:attr/selectableItemBackground" />
-
-        </LinearLayout>
-
-        <Space
-            android:layout_width="match_parent"
-            android:layout_height="5dp" />
-
-        <!-- Force stop and uninstall buttons -->
-        <include
-            layout="@layout/two_buttons_panel"
-            android:id="@+id/control_buttons_panel"/>
-
-    </LinearLayout>
-</LinearLayout>
-
diff --git a/res/xml/installed_app_details.xml b/res/xml/installed_app_details.xml
deleted file mode 100644
index 7ebdaf7..0000000
--- a/res/xml/installed_app_details.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2015 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
-                  android:title="@string/application_info_label">
-    <com.android.settings.applications.LayoutPreference
-        android:key="header_view"
-        android:layout="@layout/installed_app_details"
-        android:selectable="false" />
-
-    <Preference
-        android:key="storage_settings"
-        android:title="@string/storage_settings"
-        android:selectable="true" />
-
-    <Preference
-        android:key="data_settings"
-        android:title="@string/data_usage_summary_title"
-        android:selectable="true" />
-
-    <Preference
-        android:key="permission_settings"
-        android:title="@string/permissions_label"
-        android:selectable="true" />
-
-    <Preference
-        android:key="notification_settings"
-        android:title="@string/notifications_label"
-        android:selectable="true" />
-
-    <Preference
-        android:key="preferred_settings"
-        android:title="@string/launch_by_default"
-        android:selectable="true" />
-
-    <Preference
-        android:key="battery"
-        android:title="@string/power_usage_summary_title"
-        android:selectable="true" />
-
-    <Preference
-        android:key="memory"
-        android:title="@string/memory_settings_title"
-        android:enabled="false"
-        android:selectable="true" />
-
-</PreferenceScreen>
diff --git a/src/com/android/settings/AppHeader.java b/src/com/android/settings/AppHeader.java
index f5700b5..45902d8 100644
--- a/src/com/android/settings/AppHeader.java
+++ b/src/com/android/settings/AppHeader.java
@@ -16,21 +16,9 @@
 
 package com.android.settings;
 
-import android.app.Activity;
 import android.app.Fragment;
 import android.content.Intent;
-import android.content.res.ColorStateList;
-import android.graphics.drawable.Drawable;
 import android.os.Bundle;
-import android.view.View;
-import android.view.View.OnClickListener;
-import android.view.ViewGroup;
-import android.widget.ImageView;
-import android.widget.TextView;
-
-import com.android.internal.logging.nano.MetricsProto;
-import com.android.settings.applications.AppInfoBase;
-import com.android.settings.applications.InstalledAppDetails;
 
 public class AppHeader {
 
@@ -38,77 +26,6 @@
     // constant value that can be used to check return code from sub activity.
     private static final int INSTALLED_APP_DETAILS = 1;
 
-    public static void createAppHeader(SettingsPreferenceFragment fragment, Drawable icon,
-            CharSequence label, String pkgName, int uid) {
-        createAppHeader(fragment, icon, label, pkgName, uid, 0, null);
-    }
-
-    public static void createAppHeader(SettingsPreferenceFragment fragment, Drawable icon,
-            CharSequence label, String pkgName, int uid, Intent externalSettings) {
-        createAppHeader(fragment, icon, label, pkgName, uid, 0, externalSettings);
-    }
-
-    public static void createAppHeader(Activity activity, Drawable icon, CharSequence label,
-            String pkgName, int uid, ViewGroup pinnedHeader) {
-        final View bar = activity.getLayoutInflater().inflate(R.layout.app_header,
-                pinnedHeader, false);
-        setupHeaderView(activity, icon, label, pkgName, uid, false, 0, bar, null);
-        pinnedHeader.addView(bar);
-    }
-
-    public static void createAppHeader(SettingsPreferenceFragment fragment, Drawable icon,
-            CharSequence label, String pkgName, int uid, int tintColorRes) {
-        createAppHeader(fragment, icon, label, pkgName, uid, tintColorRes, null);
-    }
-
-    public static void createAppHeader(SettingsPreferenceFragment fragment, Drawable icon,
-            CharSequence label, String pkgName, int uid, int tintColorRes,
-            Intent externalSettings) {
-        View bar = fragment.setPinnedHeaderView(R.layout.app_header);
-        setupHeaderView(fragment.getActivity(), icon, label, pkgName, uid, includeAppInfo(fragment),
-                tintColorRes, bar, externalSettings);
-    }
-
-    public static View setupHeaderView(final Activity activity, Drawable icon, CharSequence label,
-            final String pkgName, final int uid, final boolean includeAppInfo, int tintColorRes,
-            View bar, final Intent externalSettings) {
-        final ImageView appIcon = (ImageView) bar.findViewById(R.id.app_icon);
-        appIcon.setImageDrawable(icon);
-        if (tintColorRes != 0) {
-            appIcon.setImageTintList(ColorStateList.valueOf(activity.getColor(tintColorRes)));
-        }
-
-        final TextView appName = (TextView) bar.findViewById(R.id.app_name);
-        appName.setText(label);
-
-        if (pkgName != null && !pkgName.equals(Utils.OS_PKG)) {
-            bar.setClickable(true);
-            bar.setOnClickListener(new OnClickListener() {
-                @Override
-                public void onClick(View v) {
-                    if (includeAppInfo) {
-                        AppInfoBase.startAppInfoFragment(InstalledAppDetails.class,
-                                R.string.application_info_label, pkgName, uid, activity,
-                                INSTALLED_APP_DETAILS, MetricsProto.MetricsEvent.VIEW_UNKNOWN);
-                    } else {
-                        activity.finish();
-                    }
-                }
-            });
-            if (externalSettings != null) {
-                final View appSettings = bar.findViewById(R.id.app_settings);
-                appSettings.setVisibility(View.VISIBLE);
-                appSettings.setOnClickListener(new OnClickListener() {
-                    @Override
-                    public void onClick(View v) {
-                        activity.startActivity(externalSettings);
-                    }
-                });
-            }
-        }
-        return bar;
-    }
-
     public static boolean includeAppInfo(final Fragment fragment) {
         Bundle args = fragment.getArguments();
         boolean showInfo = true;
diff --git a/src/com/android/settings/SecuritySettings.java b/src/com/android/settings/SecuritySettings.java
index 7417516..1bd7416 100644
--- a/src/com/android/settings/SecuritySettings.java
+++ b/src/com/android/settings/SecuritySettings.java
@@ -359,37 +359,33 @@
 
         PreferenceGroup securityStatusPreferenceGroup =
                 (PreferenceGroup) root.findPreference(KEY_SECURITY_STATUS);
-        if (mDashboardFeatureProvider.isEnabled()) {
-            final List<Preference> tilePrefs = mDashboardFeatureProvider.getPreferencesForCategory(
-                    getActivity(), getPrefContext(), getMetricsCategory(),
-                    CategoryKey.CATEGORY_SECURITY);
-            int numSecurityStatusPrefs = 0;
-            if (tilePrefs != null && !tilePrefs.isEmpty()) {
-                for (Preference preference : tilePrefs) {
-                    if (!TextUtils.isEmpty(preference.getKey())
-                            && preference.getKey().startsWith(SECURITY_STATUS_KEY_PREFIX)) {
-                        // Injected security status settings are placed under the Security status
-                        // category.
-                        securityStatusPreferenceGroup.addPreference(preference);
-                        numSecurityStatusPrefs++;
-                    } else {
-                        // Other injected settings are placed under the Security preference screen.
-                        root.addPreference(preference);
-                    }
+        final List<Preference> tilePrefs = mDashboardFeatureProvider.getPreferencesForCategory(
+            getActivity(), getPrefContext(), getMetricsCategory(),
+            CategoryKey.CATEGORY_SECURITY);
+        int numSecurityStatusPrefs = 0;
+        if (tilePrefs != null && !tilePrefs.isEmpty()) {
+            for (Preference preference : tilePrefs) {
+                if (!TextUtils.isEmpty(preference.getKey())
+                    && preference.getKey().startsWith(SECURITY_STATUS_KEY_PREFIX)) {
+                    // Injected security status settings are placed under the Security status
+                    // category.
+                    securityStatusPreferenceGroup.addPreference(preference);
+                    numSecurityStatusPrefs++;
+                } else {
+                    // Other injected settings are placed under the Security preference screen.
+                    root.addPreference(preference);
                 }
             }
+        }
 
-            if (numSecurityStatusPrefs == 0) {
-                root.removePreference(securityStatusPreferenceGroup);
-            } else if (numSecurityStatusPrefs > 0) {
-                // Update preference data with tile data. Security feature provider only updates the
-                // data if it actually needs to be changed.
-                mSecurityFeatureProvider.updatePreferences(getActivity(), root,
-                        mDashboardFeatureProvider.getTilesForCategory(
-                                CategoryKey.CATEGORY_SECURITY));
-            }
-        } else {
-            root.removePreference(root.findPreference(KEY_SECURITY_STATUS));
+        if (numSecurityStatusPrefs == 0) {
+            root.removePreference(securityStatusPreferenceGroup);
+        } else if (numSecurityStatusPrefs > 0) {
+            // Update preference data with tile data. Security feature provider only updates the
+            // data if it actually needs to be changed.
+            mSecurityFeatureProvider.updatePreferences(getActivity(), root,
+                mDashboardFeatureProvider.getTilesForCategory(
+                    CategoryKey.CATEGORY_SECURITY));
         }
 
         for (int i = 0; i < SWITCH_PREFERENCE_KEYS.length; i++) {
@@ -1202,8 +1198,7 @@
                     Settings.Secure.PACKAGE_VERIFIER_STATE, 0);
             DashboardFeatureProvider dashboardFeatureProvider =
                     FeatureFactory.getFactory(mContext).getDashboardFeatureProvider(mContext);
-            if (dashboardFeatureProvider.isEnabled()
-                    && (packageVerifierState == PACKAGE_VERIFIER_STATE_ENABLED)) {
+            if (packageVerifierState == PACKAGE_VERIFIER_STATE_ENABLED) {
                 // Calling the feature provider could potentially be slow, so do this on a separate
                 // thread so as to not block the loading of Settings.
                 Executors.newSingleThreadExecutor().execute(new Runnable() {
diff --git a/src/com/android/settings/accounts/AccountPreferenceController.java b/src/com/android/settings/accounts/AccountPreferenceController.java
index c54a2d1..85e09d1 100644
--- a/src/com/android/settings/accounts/AccountPreferenceController.java
+++ b/src/com/android/settings/accounts/AccountPreferenceController.java
@@ -49,9 +49,7 @@
 import com.android.settings.core.lifecycle.LifecycleObserver;
 import com.android.settings.core.lifecycle.events.OnPause;
 import com.android.settings.core.lifecycle.events.OnResume;
-import com.android.settings.dashboard.DashboardFeatureProvider;
 import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.search.Index;
 import com.android.settings.search.SearchIndexableRaw;
 import com.android.settings.search2.SearchFeatureProviderImpl;
 import com.android.settingslib.RestrictedPreference;
@@ -89,7 +87,6 @@
     private SettingsPreferenceFragment mParent;
     private int mAccountProfileOrder = ORDER_ACCOUNT_PROFILES;
     private AccountRestrictionHelper mHelper;
-    private DashboardFeatureProvider mDashboardFeatureProvider;
     private MetricsFeatureProvider mMetricsFeatureProvider;
 
     /**
@@ -138,7 +135,6 @@
             mAuthoritiesCount = mAuthorities.length;
         }
         final FeatureFactory featureFactory = FeatureFactory.getFactory(mContext);
-        mDashboardFeatureProvider = featureFactory.getDashboardFeatureProvider(mContext);
         mMetricsFeatureProvider = featureFactory.getMetricsFeatureProvider();
         mHelper = helper;
     }
diff --git a/src/com/android/settings/accounts/UserAndAccountDashboardFragment.java b/src/com/android/settings/accounts/UserAndAccountDashboardFragment.java
index 66fd85a..1b0282f 100644
--- a/src/com/android/settings/accounts/UserAndAccountDashboardFragment.java
+++ b/src/com/android/settings/accounts/UserAndAccountDashboardFragment.java
@@ -28,7 +28,6 @@
 import com.android.settings.core.PreferenceController;
 import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settingslib.drawer.Tile;
 
@@ -121,10 +120,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.user_and_accounts_settings;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java b/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java
index 5dda9c1..bdf6cc4 100644
--- a/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java
+++ b/src/com/android/settings/applications/AppAndNotificationDashboardFragment.java
@@ -23,7 +23,6 @@
 import com.android.settings.R;
 import com.android.settings.core.PreferenceController;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.Arrays;
@@ -58,10 +57,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.app_and_notification;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/applications/AppInfoWithHeader.java b/src/com/android/settings/applications/AppInfoWithHeader.java
index 4f3e8fa..768a726 100644
--- a/src/com/android/settings/applications/AppInfoWithHeader.java
+++ b/src/com/android/settings/applications/AppInfoWithHeader.java
@@ -21,7 +21,6 @@
 import android.support.v7.preference.Preference;
 import android.util.Log;
 
-import com.android.settings.AppHeader;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.applications.AppUtils;
 
@@ -41,24 +40,17 @@
         mCreated = true;
         if (mPackageInfo == null) return;
         final Activity activity = getActivity();
-        if (!FeatureFactory.getFactory(activity)
-                .getDashboardFeatureProvider(activity).isEnabled()) {
-            AppHeader.createAppHeader(this, mPackageInfo.applicationInfo.loadIcon(mPm),
-                    mPackageInfo.applicationInfo.loadLabel(mPm), mPackageName,
-                    mPackageInfo.applicationInfo.uid, 0);
-        } else {
-            final Preference pref = FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this, null /* appHeader */)
-                    .setIcon(mPackageInfo.applicationInfo.loadIcon(mPm))
-                    .setLabel(mPackageInfo.applicationInfo.loadLabel(mPm))
-                    .setSummary(mPackageInfo)
-                    .setIsInstantApp(AppUtils.isInstant(mPackageInfo.applicationInfo))
-                    .setPackageName(mPackageName)
-                    .setUid(mPackageInfo.applicationInfo.uid)
-                    .setButtonActions(ActionType.ACTION_APP_INFO, ActionType.ACTION_NONE)
-                    .done(getPrefContext());
-            getPreferenceScreen().addPreference(pref);
-        }
+        final Preference pref = FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this, null /* appHeader */)
+            .setIcon(mPackageInfo.applicationInfo.loadIcon(mPm))
+            .setLabel(mPackageInfo.applicationInfo.loadLabel(mPm))
+            .setSummary(mPackageInfo)
+            .setIsInstantApp(AppUtils.isInstant(mPackageInfo.applicationInfo))
+            .setPackageName(mPackageName)
+            .setUid(mPackageInfo.applicationInfo.uid)
+            .setButtonActions(ActionType.ACTION_APP_INFO, ActionType.ACTION_NONE)
+            .done(getPrefContext());
+        getPreferenceScreen().addPreference(pref);
     }
 }
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index 5a32531..c443e73 100755
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -89,7 +89,6 @@
 import com.android.settings.applications.defaultapps.DefaultHomePreferenceController;
 import com.android.settings.applications.defaultapps.DefaultPhonePreferenceController;
 import com.android.settings.applications.defaultapps.DefaultSmsPreferenceController;
-import com.android.settings.dashboard.DashboardFeatureProvider;
 import com.android.settings.datausage.AppDataUsage;
 import com.android.settings.datausage.DataUsageList;
 import com.android.settings.datausage.DataUsageSummary;
@@ -163,8 +162,6 @@
 
     private final HashSet<String> mHomePackages = new HashSet<>();
 
-    private DashboardFeatureProvider mDashboardFeatureProvider;
-
     private boolean mInitialized;
     private boolean mShowUninstalled;
     private LayoutPreference mHeader;
@@ -327,20 +324,14 @@
     public void onCreate(Bundle icicle) {
         super.onCreate(icicle);
         final Activity activity = getActivity();
-        mDashboardFeatureProvider =
-                FeatureFactory.getFactory(activity).getDashboardFeatureProvider(activity);
 
         setHasOptionsMenu(true);
-        addPreferencesFromResource(mDashboardFeatureProvider.isEnabled()
-                ? R.xml.installed_app_details_ia
-                : R.xml.installed_app_details);
+        addPreferencesFromResource(R.xml.installed_app_details_ia);
         addDynamicPrefs();
-        if (mDashboardFeatureProvider.isEnabled()) {
-            mFooter = new LayoutPreference(getPrefContext(), R.layout.app_action_buttons);
-            mFooter.setOrder(-9999);
-            mFooter.setKey(KEY_FOOTER);
-            getPreferenceScreen().addPreference(mFooter);
-        }
+        mFooter = new LayoutPreference(getPrefContext(), R.layout.app_action_buttons);
+        mFooter.setOrder(-9999);
+        mFooter.setKey(KEY_FOOTER);
+        getPreferenceScreen().addPreference(mFooter);
         if (Utils.isBandwidthControlEnabled()) {
             INetworkStatsService statsService = INetworkStatsService.Stub.asInterface(
                     ServiceManager.getService(Context.NETWORK_STATS_SERVICE));
@@ -397,20 +388,16 @@
         if (mFinishing) {
             return;
         }
-        if (!mDashboardFeatureProvider.isEnabled()) {
-            handleHeader();
-        } else {
-            final Activity activity = getActivity();
-            mHeader = (LayoutPreference) findPreference(KEY_HEADER);
-            FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this, mHeader.findViewById(R.id.app_snippet))
-                    .setPackageName(mPackageName)
-                    .setButtonActions(AppHeaderController.ActionType.ACTION_STORE_DEEP_LINK,
-                            AppHeaderController.ActionType.ACTION_APP_PREFERENCE)
-                    .bindAppHeaderButtons();
-            prepareUninstallAndStop();
-        }
+        final Activity activity = getActivity();
+        mHeader = (LayoutPreference) findPreference(KEY_HEADER);
+        FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this, mHeader.findViewById(R.id.app_snippet))
+            .setPackageName(mPackageName)
+            .setButtonActions(AppHeaderController.ActionType.ACTION_STORE_DEEP_LINK,
+                AppHeaderController.ActionType.ACTION_APP_PREFERENCE)
+            .bindAppHeaderButtons();
+        prepareUninstallAndStop();
 
         mNotificationPreference = findPreference(KEY_NOTIFICATION);
         mNotificationPreference.setOnPreferenceClickListener(this);
@@ -447,32 +434,6 @@
         refreshUi();
     }
 
-    private void handleHeader() {
-        mHeader = (LayoutPreference) findPreference(KEY_HEADER);
-        // Get Control button panel
-        View btnPanel = mHeader.findViewById(R.id.control_buttons_panel);
-        mForceStopButton = (Button) btnPanel.findViewById(R.id.right_button);
-        mForceStopButton.setText(R.string.force_stop);
-        mUninstallButton = (Button) btnPanel.findViewById(R.id.left_button);
-        mForceStopButton.setEnabled(false);
-
-        View gear = mHeader.findViewById(R.id.gear);
-        Intent i = new Intent(Intent.ACTION_APPLICATION_PREFERENCES);
-        i.setPackage(mPackageName);
-        final Intent intent = resolveIntent(i);
-        if (intent != null) {
-            gear.setVisibility(View.VISIBLE);
-            gear.setOnClickListener(new OnClickListener() {
-                @Override
-                public void onClick(View v) {
-                    startActivity(intent);
-                }
-            });
-        } else {
-            gear.setVisibility(View.GONE);
-        }
-    }
-
     private void prepareUninstallAndStop() {
         mForceStopButton = (Button) mFooter.findViewById(R.id.right_button);
         mForceStopButton.setText(R.string.force_stop);
@@ -565,21 +526,16 @@
     private void setAppLabelAndIcon(PackageInfo pkgInfo) {
         final View appSnippet = mHeader.findViewById(R.id.app_snippet);
         mState.ensureIcon(mAppEntry);
-        if (mDashboardFeatureProvider.isEnabled()) {
-            final Activity activity = getActivity();
-            FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this, appSnippet)
-                    .setLabel(mAppEntry)
-                    .setIcon(mAppEntry)
-                    .setSummary(getString(getInstallationStatus(mAppEntry.info)))
-                    .setIsInstantApp(AppUtils.isInstant(mPackageInfo.applicationInfo))
-                    .done(false /* rebindActions */);
-            mVersionPreference.setSummary(getString(R.string.version_text, pkgInfo.versionName));
-        } else {
-            setupAppSnippet(appSnippet, mAppEntry.label, mAppEntry.icon,
-                    pkgInfo != null ? pkgInfo.versionName : null);
-        }
+        final Activity activity = getActivity();
+        FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this, appSnippet)
+            .setLabel(mAppEntry)
+            .setIcon(mAppEntry)
+            .setSummary(getString(getInstallationStatus(mAppEntry.info)))
+            .setIsInstantApp(AppUtils.isInstant(mPackageInfo.applicationInfo))
+            .done(false /* rebindActions */);
+        mVersionPreference.setSummary(getString(R.string.version_text, pkgInfo.versionName));
     }
 
     @VisibleForTesting
@@ -1191,6 +1147,9 @@
         }
     }
 
+    /**
+     * @deprecated app info pages should use {@link AppHeaderController} to show the app header.
+     */
     public static void setupAppSnippet(View appSnippet, CharSequence label, Drawable icon,
             CharSequence versionName) {
         LayoutInflater.from(appSnippet.getContext()).inflate(R.layout.widget_text_views,
diff --git a/src/com/android/settings/applications/ManageApplications.java b/src/com/android/settings/applications/ManageApplications.java
index ab99c9b..826e5db 100644
--- a/src/com/android/settings/applications/ManageApplications.java
+++ b/src/com/android/settings/applications/ManageApplications.java
@@ -56,7 +56,6 @@
 
 import android.widget.TextView;
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.AppHeader;
 import com.android.settings.R;
 import com.android.settings.Settings.AllApplicationsActivity;
 import com.android.settings.Settings.GamesStorageActivity;
@@ -80,7 +79,6 @@
 import com.android.settings.notification.ConfigureNotificationSettings;
 import com.android.settings.notification.NotificationBackend;
 import com.android.settings.notification.NotificationBackend.AppRow;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.HelpUtils;
 import com.android.settingslib.applications.ApplicationsState;
 import com.android.settingslib.applications.ApplicationsState.AppEntry;
@@ -265,7 +263,6 @@
     private NotificationBackend mNotifBackend;
     private ResetAppsHelper mResetAppsHelper;
     private String mVolumeUuid;
-    private String mVolumeName;
     private int mStorageType;
 
     @Override
@@ -289,7 +286,6 @@
         } else if (className.equals(StorageUseActivity.class.getName())) {
             if (args != null && args.containsKey(EXTRA_VOLUME_UUID)) {
                 mVolumeUuid = args.getString(EXTRA_VOLUME_UUID);
-                mVolumeName = args.getString(EXTRA_VOLUME_NAME);
                 mStorageType = args.getInt(EXTRA_STORAGE_TYPE, STORAGE_TYPE_DEFAULT);
                 mListType = LIST_TYPE_STORAGE;
             } else {
@@ -423,22 +419,6 @@
         }
     }
 
-    @Override
-    public void onViewCreated(View view, Bundle savedInstanceState) {
-        super.onViewCreated(view, savedInstanceState);
-
-        if (mListType == LIST_TYPE_STORAGE) {
-            final Activity activity = getActivity();
-            final boolean isNewIAEnabled = FeatureFactory.getFactory(activity)
-                    .getDashboardFeatureProvider(activity)
-                    .isEnabled();
-            if (!isNewIAEnabled) {
-                FrameLayout pinnedHeader = (FrameLayout) mRootView.findViewById(R.id.pinned_header);
-                AppHeader.createAppHeader(getActivity(), null, mVolumeName, null, -1, pinnedHeader);
-            }
-        }
-    }
-
     private int getDefaultFilter() {
         switch (mListType) {
             case LIST_TYPE_USAGE_ACCESS:
@@ -627,12 +607,7 @@
             return;
         }
         final Context context = getActivity();
-        if (FeatureFactory.getFactory(context).getDashboardFeatureProvider(context).isEnabled()) {
-            mOptionsMenu.findItem(R.id.advanced).setVisible(false);
-        } else {
-            mOptionsMenu.findItem(R.id.advanced).setVisible(
-                    mListType == LIST_TYPE_MAIN || mListType == LIST_TYPE_NOTIFICATION);
-        }
+        mOptionsMenu.findItem(R.id.advanced).setVisible(false);
 
         mOptionsMenu.findItem(R.id.sort_order_alpha).setVisible(mListType == LIST_TYPE_STORAGE
                 && mSortOrder != R.id.sort_order_alpha);
diff --git a/src/com/android/settings/applications/ProcessStatsDetail.java b/src/com/android/settings/applications/ProcessStatsDetail.java
index 89c6ade..9b6f41e 100644
--- a/src/com/android/settings/applications/ProcessStatsDetail.java
+++ b/src/com/android/settings/applications/ProcessStatsDetail.java
@@ -44,7 +44,6 @@
 import android.view.View;
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.AppHeader;
 import com.android.settings.CancellablePreference;
 import com.android.settings.CancellablePreference.OnCancelListener;
 import com.android.settings.R;
@@ -126,28 +125,20 @@
             return;
         }
         final Activity activity = getActivity();
-        if (!FeatureFactory.getFactory(activity)
-                .getDashboardFeatureProvider(activity).isEnabled()) {
-            AppHeader.createAppHeader(this, mApp.mUiTargetApp != null
-                            ? mApp.mUiTargetApp.loadIcon(mPm)
-                            : new ColorDrawable(0),
-                    mApp.mUiLabel, mApp.mPackage, mApp.mUiTargetApp.uid);
-        } else {
-            final Preference pref = FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this, null /* appHeader */)
-                    .setIcon(mApp.mUiTargetApp != null
-                            ? mApp.mUiTargetApp.loadIcon(mPm)
-                            : new ColorDrawable(0))
-                    .setLabel(mApp.mUiLabel)
-                    .setPackageName(mApp.mPackage)
-                    .setUid(mApp.mUiTargetApp != null
-                            ? mApp.mUiTargetApp.uid
-                            : UserHandle.USER_NULL)
-                    .setButtonActions(ActionType.ACTION_APP_INFO, ActionType.ACTION_NONE)
-                    .done(getPrefContext());
-            getPreferenceScreen().addPreference(pref);
-        }
+        final Preference pref = FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this, null /* appHeader */)
+            .setIcon(mApp.mUiTargetApp != null
+                ? mApp.mUiTargetApp.loadIcon(mPm)
+                : new ColorDrawable(0))
+            .setLabel(mApp.mUiLabel)
+            .setPackageName(mApp.mPackage)
+            .setUid(mApp.mUiTargetApp != null
+                ? mApp.mUiTargetApp.uid
+                : UserHandle.USER_NULL)
+            .setButtonActions(ActionType.ACTION_APP_INFO, ActionType.ACTION_NONE)
+            .done(getPrefContext());
+        getPreferenceScreen().addPreference(pref);
     }
 
     @Override
diff --git a/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java b/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java
index 786b9d3..b12e849 100644
--- a/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java
+++ b/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragment.java
@@ -27,7 +27,6 @@
 import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.deviceinfo.UsbBackend;
 import com.android.settings.nfc.NfcPreferenceController;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Indexable;
 
@@ -82,10 +81,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.connected_devices;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/dashboard/DashboardAdapter.java b/src/com/android/settings/dashboard/DashboardAdapter.java
index d9cef65..07d4806 100644
--- a/src/com/android/settings/dashboard/DashboardAdapter.java
+++ b/src/com/android/settings/dashboard/DashboardAdapter.java
@@ -146,8 +146,7 @@
             List<Tile> suggestions) {
         // TODO: Better place for tinting?
         final TypedArray a = mContext.obtainStyledAttributes(new int[]{
-                mDashboardFeatureProvider.isEnabled()
-                        ? android.R.attr.colorControlNormal : android.R.attr.colorAccent});
+                android.R.attr.colorControlNormal});
         int tintColor = a.getColor(0, mContext.getColor(android.R.color.white));
         a.recycle();
         for (int i = 0; i < categories.size(); i++) {
diff --git a/src/com/android/settings/dashboard/DashboardFeatureProvider.java b/src/com/android/settings/dashboard/DashboardFeatureProvider.java
index 7845829..20bcd3d 100644
--- a/src/com/android/settings/dashboard/DashboardFeatureProvider.java
+++ b/src/com/android/settings/dashboard/DashboardFeatureProvider.java
@@ -31,11 +31,6 @@
 public interface DashboardFeatureProvider {
 
     /**
-     * Whether or not this feature is enabled.
-     */
-    boolean isEnabled();
-
-    /**
      * Get tiles (wrapped in {@link DashboardCategory}) for key defined in CategoryKey.
      */
     DashboardCategory getTilesForCategory(String key);
diff --git a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
index 1184e89..9c21720 100644
--- a/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
+++ b/src/com/android/settings/dashboard/DashboardFeatureProviderImpl.java
@@ -69,11 +69,6 @@
     }
 
     @Override
-    public boolean isEnabled() {
-        return true;
-    }
-
-    @Override
     public DashboardCategory getTilesForCategory(String key) {
         return mCategoryManager.getTilesByCategory(mContext, key);
     }
@@ -81,9 +76,6 @@
     @Override
     public List<Preference> getPreferencesForCategory(Activity activity, Context context,
             int sourceMetricsCategory, String key) {
-        if (!isEnabled()) {
-            return null;
-        }
         final DashboardCategory category = getTilesForCategory(key);
         if (category == null) {
             Log.d(TAG, "NO dashboard tiles for " + TAG);
@@ -177,7 +169,7 @@
     @Override
     public ProgressiveDisclosureMixin getProgressiveDisclosureMixin(Context context,
             DashboardFragment fragment) {
-        return new ProgressiveDisclosureMixin(context, this, mMetricsFeatureProvider, fragment);
+        return new ProgressiveDisclosureMixin(context, mMetricsFeatureProvider, fragment);
     }
 
     @Override
diff --git a/src/com/android/settings/dashboard/DashboardFragment.java b/src/com/android/settings/dashboard/DashboardFragment.java
index 29cee5e..e3845cd 100644
--- a/src/com/android/settings/dashboard/DashboardFragment.java
+++ b/src/com/android/settings/dashboard/DashboardFragment.java
@@ -309,8 +309,7 @@
         mSummaryLoader = new SummaryLoader(getActivity(), getCategoryKey());
         mSummaryLoader.setSummaryConsumer(this);
         final TypedArray a = context.obtainStyledAttributes(new int[]{
-                mDashboardFeatureProvider.isEnabled() ? android.R.attr.colorControlNormal
-                        : android.R.attr.colorAccent});
+                android.R.attr.colorControlNormal});
         final int tintColor = a.getColor(0, context.getColor(android.R.color.white));
         a.recycle();
         final String pkgName = context.getPackageName();
diff --git a/src/com/android/settings/dashboard/DashboardSummary.java b/src/com/android/settings/dashboard/DashboardSummary.java
index 5206336..6482672 100644
--- a/src/com/android/settings/dashboard/DashboardSummary.java
+++ b/src/com/android/settings/dashboard/DashboardSummary.java
@@ -30,7 +30,6 @@
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.settings.R;
-import com.android.settings.SettingsActivity;
 import com.android.settings.core.InstrumentedFragment;
 import com.android.settings.dashboard.conditional.Condition;
 import com.android.settings.dashboard.conditional.ConditionAdapterUtils;
@@ -87,12 +86,7 @@
         mSuggestionFeatureProvider = FeatureFactory.getFactory(activity)
                 .getSuggestionFeatureProvider(activity);
 
-        if (mDashboardFeatureProvider.isEnabled()) {
-            mSummaryLoader = new SummaryLoader(activity, CategoryKey.CATEGORY_HOMEPAGE);
-        } else {
-            mSummaryLoader = new SummaryLoader(activity,
-                    ((SettingsActivity) getActivity()).getDashboardCategories());
-        }
+        mSummaryLoader = new SummaryLoader(activity, CategoryKey.CATEGORY_HOMEPAGE);
 
         mConditionManager = ConditionManager.get(activity, false);
         mSuggestionParser = new SuggestionParser(activity,
@@ -279,20 +273,15 @@
             return;
         }
 
-        if (mDashboardFeatureProvider.isEnabled()) {
-            // Temporary hack to wrap homepage category into a list. Soon we will create adapter
-            // API that takes a single category.
-            List<DashboardCategory> categories = new ArrayList<>();
-            categories.add(mDashboardFeatureProvider.getTilesForCategory(
-                    CategoryKey.CATEGORY_HOMEPAGE));
-            if (suggestions != null) {
-                mAdapter.setCategoriesAndSuggestions(categories, suggestions);
-            } else {
-                mAdapter.setCategory(categories);
-            }
+        // Temporary hack to wrap homepage category into a list. Soon we will create adapter
+        // API that takes a single category.
+        List<DashboardCategory> categories = new ArrayList<>();
+        categories.add(mDashboardFeatureProvider.getTilesForCategory(
+            CategoryKey.CATEGORY_HOMEPAGE));
+        if (suggestions != null) {
+            mAdapter.setCategoriesAndSuggestions(categories, suggestions);
         } else {
-            mAdapter.setCategoriesAndSuggestions(
-                    ((SettingsActivity) activity).getDashboardCategories(), suggestions);
+            mAdapter.setCategory(categories);
         }
     }
 }
diff --git a/src/com/android/settings/dashboard/ProgressiveDisclosureMixin.java b/src/com/android/settings/dashboard/ProgressiveDisclosureMixin.java
index 90c3d25..be5e21b 100644
--- a/src/com/android/settings/dashboard/ProgressiveDisclosureMixin.java
+++ b/src/com/android/settings/dashboard/ProgressiveDisclosureMixin.java
@@ -46,7 +46,6 @@
     private static final int DEFAULT_TILE_LIMIT = 300;
 
     private final Context mContext;
-    private final DashboardFeatureProvider mDashboardFeatureProvider;
     // Collapsed preference sorted by order.
     private final List<Preference> mCollapsedPrefs = new ArrayList<>();
     private final MetricsFeatureProvider mMetricsFeatureProvider;
@@ -57,14 +56,12 @@
     private boolean mUserExpanded;
 
     public ProgressiveDisclosureMixin(Context context,
-            DashboardFeatureProvider dashboardFeatureProvider,
             MetricsFeatureProvider metricsFeatureProvider,
             PreferenceFragment fragment) {
         mContext = context;
         mFragment = fragment;
         mExpandButton = new ExpandPreference(context);
         mExpandButton.setOnPreferenceClickListener(this);
-        mDashboardFeatureProvider = dashboardFeatureProvider;
         mMetricsFeatureProvider = metricsFeatureProvider;
     }
 
@@ -122,8 +119,7 @@
      * Whether the screen should be collapsed.
      */
     public boolean shouldCollapse(PreferenceScreen screen) {
-        return mDashboardFeatureProvider.isEnabled() && screen.getPreferenceCount() >= mTileLimit
-                && !mUserExpanded;
+        return screen.getPreferenceCount() >= mTileLimit && !mUserExpanded;
     }
 
     /**
diff --git a/src/com/android/settings/dashboard/SummaryLoader.java b/src/com/android/settings/dashboard/SummaryLoader.java
index 2f0d8b6..df21168 100644
--- a/src/com/android/settings/dashboard/SummaryLoader.java
+++ b/src/com/android/settings/dashboard/SummaryLoader.java
@@ -116,23 +116,8 @@
             @Override
             public void run() {
 
-                final Tile tile;
-                if (mDashboardFeatureProvider.isEnabled()) {
-                    tile = getTileFromCategory(
-                            mDashboardFeatureProvider.getTilesForCategory(mCategoryKey), component);
-                } else {
-                    // Since tiles are not always cached (like on locale change for instance),
-                    // we need to always get the latest one.
-                    if (!(mActivity instanceof SettingsDrawerActivity)) {
-                        if (DEBUG) {
-                            Log.d(TAG, "Can't get category list.");
-                        }
-                        return;
-                    }
-                    tile = getTileFromCategory(
-                            ((SettingsDrawerActivity) mActivity).getDashboardCategories(),
-                            component);
-                }
+                final Tile tile = getTileFromCategory(
+                    mDashboardFeatureProvider.getTilesForCategory(mCategoryKey), component);
 
                 if (tile == null) {
                     if (DEBUG) {
diff --git a/src/com/android/settings/datausage/AppDataUsage.java b/src/com/android/settings/datausage/AppDataUsage.java
index 29bd509..0431ce5 100644
--- a/src/com/android/settings/datausage/AppDataUsage.java
+++ b/src/com/android/settings/datausage/AppDataUsage.java
@@ -42,7 +42,6 @@
 import android.widget.AdapterView;
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
-import com.android.settings.AppHeader;
 import com.android.settings.R;
 import com.android.settings.applications.AppHeaderController;
 import com.android.settings.applications.AppInfoBase;
@@ -354,24 +353,17 @@
         }
 
         final Activity activity = getActivity();
-        if (!FeatureFactory.getFactory(activity)
-                .getDashboardFeatureProvider(activity).isEnabled()) {
-            View header = setPinnedHeaderView(R.layout.app_header);
-            AppHeader.setupHeaderView(getActivity(), mIcon, mLabel,
-                    pkg, uid, AppHeader.includeAppInfo(this), 0, header, null);
-        } else {
-            final Preference pref = FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this, null /* appHeader */)
-                    .setIcon(mIcon)
-                    .setLabel(mLabel)
-                    .setPackageName(pkg)
-                    .setUid(uid)
-                    .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
-                            AppHeaderController.ActionType.ACTION_NONE)
-                    .done(getPrefContext());
-            getPreferenceScreen().addPreference(pref);
-        }
+        final Preference pref = FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this, null /* appHeader */)
+            .setIcon(mIcon)
+            .setLabel(mLabel)
+            .setPackageName(pkg)
+            .setUid(uid)
+            .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
+                AppHeaderController.ActionType.ACTION_NONE)
+            .done(getPrefContext());
+        getPreferenceScreen().addPreference(pref);
     }
 
     @Override
diff --git a/src/com/android/settings/deviceinfo/StorageDashboardFragment.java b/src/com/android/settings/deviceinfo/StorageDashboardFragment.java
index 298a7ad..92703e3 100644
--- a/src/com/android/settings/deviceinfo/StorageDashboardFragment.java
+++ b/src/com/android/settings/deviceinfo/StorageDashboardFragment.java
@@ -39,7 +39,6 @@
 import com.android.settings.deviceinfo.storage.StorageAsyncLoader;
 import com.android.settings.deviceinfo.storage.StorageItemPreferenceController;
 import com.android.settings.deviceinfo.storage.StorageSummaryDonutPreferenceController;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Indexable;
 import com.android.settingslib.applications.StorageStatsSource;
@@ -174,10 +173,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.storage_dashboard_fragment;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
index f18ae65..96ac042 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
@@ -16,7 +16,6 @@
 import android.content.Context;
 import android.content.pm.PackageManager;
 import android.os.Bundle;
-import android.os.Process;
 import android.provider.SearchIndexableResource;
 import android.support.annotation.ColorInt;
 import android.support.annotation.IntDef;
@@ -40,10 +39,8 @@
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashMap;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
-import java.util.Set;
 
 public class PowerUsageAdvanced extends PowerUsageBase {
     private static final String TAG = "AdvancedBatteryUsage";
@@ -274,10 +271,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.power_usage_advanced;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/fuelgauge/PowerUsageDetail.java b/src/com/android/settings/fuelgauge/PowerUsageDetail.java
index 1598011..94fc3b5 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageDetail.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageDetail.java
@@ -62,7 +62,6 @@
 import com.android.settings.location.LocationSettings;
 import com.android.settings.network.NetworkDashboardFragment;
 import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.wifi.WifiSettings;
 
 import java.io.PrintWriter;
@@ -327,13 +326,11 @@
 
     private PackageManager mPm;
     private DevicePolicyManager mDpm;
-    private int mUsageSince;
     private int[] mTypes;
     private int mUid;
     private double[] mValues;
     private Button mForceStopButton;
     private Button mReportButton;
-    private long mStartTime;
     private BatterySipper.DrainType mDrainType;
     private double mNoCoverage; // Percentage of time that there was no coverage
     private PowerUsageFeatureProvider mPowerUsageFeatureProvider;
@@ -379,7 +376,6 @@
     @Override
     public void onResume() {
         super.onResume();
-        mStartTime = android.os.Process.getElapsedCpuTime();
         checkForceStop();
         if (mHighPower != null) {
             mHighPower.setSummary(HighPowerDetail.getSummary(getActivity(), mApp.packageName));
@@ -414,7 +410,6 @@
     private void createDetails() {
         final Bundle args = getArguments();
         Context context = getActivity();
-        mUsageSince = args.getInt(EXTRA_USAGE_SINCE, USAGE_SINCE_UNPLUGGED);
         mUid = args.getInt(EXTRA_UID, 0);
         mPackages = context.getPackageManager().getPackagesForUid(mUid);
         mDrainType = (BatterySipper.DrainType) args.getSerializable(EXTRA_DRAIN_TYPE);
@@ -514,29 +509,23 @@
         if (pkg == null && mPackages != null) {
             pkg = mPackages[0];
         }
-        if (!FeatureFactory.getFactory(activity)
-                .getDashboardFeatureProvider(activity).isEnabled()) {
-            AppHeader.createAppHeader(this, appIcon, title, pkg, uid,
-                    mDrainType != DrainType.APP ? android.R.color.white : 0);
-        } else {
-            final PreferenceScreen screen = getPreferenceScreen();
-            final Preference appHeaderPref =
-                    findPreference(AppHeaderController.PREF_KEY_APP_HEADER);
-            if (appHeaderPref != null) {
-                return;
-            }
-            final Preference pref = FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this, null /* appHeader */)
-                    .setIcon(appIcon)
-                    .setLabel(title)
-                    .setPackageName(pkg)
-                    .setUid(uid)
-                    .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
-                            AppHeaderController.ActionType.ACTION_NONE)
-                    .done(getPrefContext());
-            screen.addPreference(pref);
+        final PreferenceScreen screen = getPreferenceScreen();
+        final Preference appHeaderPref =
+            findPreference(AppHeaderController.PREF_KEY_APP_HEADER);
+        if (appHeaderPref != null) {
+            return;
         }
+        final Preference pref = FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this, null /* appHeader */)
+            .setIcon(appIcon)
+            .setLabel(title)
+            .setPackageName(pkg)
+            .setUid(uid)
+            .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
+                AppHeaderController.ActionType.ACTION_NONE)
+            .done(getPrefContext());
+        screen.addPreference(pref);
     }
 
     @Override
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index 55fcaf8..44f61c1 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -733,10 +733,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.power_usage_summary;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/gestures/AssistGestureSettings.java b/src/com/android/settings/gestures/AssistGestureSettings.java
index 1d82720..7778720 100644
--- a/src/com/android/settings/gestures/AssistGestureSettings.java
+++ b/src/com/android/settings/gestures/AssistGestureSettings.java
@@ -24,7 +24,6 @@
 import com.android.settings.core.PreferenceController;
 import com.android.settings.core.lifecycle.Lifecycle;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.ArrayList;
@@ -67,10 +66,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.assist_gesture_settings;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/gestures/DoubleTapPowerSettings.java b/src/com/android/settings/gestures/DoubleTapPowerSettings.java
index b17341a..467cec8 100644
--- a/src/com/android/settings/gestures/DoubleTapPowerSettings.java
+++ b/src/com/android/settings/gestures/DoubleTapPowerSettings.java
@@ -24,7 +24,6 @@
 import com.android.settings.core.PreferenceController;
 import com.android.settings.core.lifecycle.Lifecycle;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.ArrayList;
@@ -67,10 +66,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.double_tap_power_settings;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/gestures/DoubleTapScreenSettings.java b/src/com/android/settings/gestures/DoubleTapScreenSettings.java
index a215dae..887ac80 100644
--- a/src/com/android/settings/gestures/DoubleTapScreenSettings.java
+++ b/src/com/android/settings/gestures/DoubleTapScreenSettings.java
@@ -26,7 +26,6 @@
 import com.android.settings.core.PreferenceController;
 import com.android.settings.core.lifecycle.Lifecycle;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.ArrayList;
@@ -70,10 +69,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.double_tap_screen_settings;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/gestures/DoubleTwistGestureSettings.java b/src/com/android/settings/gestures/DoubleTwistGestureSettings.java
index bee9474..46a8cbb 100644
--- a/src/com/android/settings/gestures/DoubleTwistGestureSettings.java
+++ b/src/com/android/settings/gestures/DoubleTwistGestureSettings.java
@@ -24,7 +24,6 @@
 import com.android.settings.core.PreferenceController;
 import com.android.settings.core.lifecycle.Lifecycle;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.ArrayList;
@@ -67,10 +66,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.double_twist_gesture_settings;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/gestures/PickupGestureSettings.java b/src/com/android/settings/gestures/PickupGestureSettings.java
index e4d12f2..0fe6097 100644
--- a/src/com/android/settings/gestures/PickupGestureSettings.java
+++ b/src/com/android/settings/gestures/PickupGestureSettings.java
@@ -26,7 +26,6 @@
 import com.android.settings.core.PreferenceController;
 import com.android.settings.core.lifecycle.Lifecycle;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.ArrayList;
@@ -70,10 +69,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.pick_up_gesture_settings;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/gestures/SwipeToNotificationSettings.java b/src/com/android/settings/gestures/SwipeToNotificationSettings.java
index d948e55..6c136c2 100644
--- a/src/com/android/settings/gestures/SwipeToNotificationSettings.java
+++ b/src/com/android/settings/gestures/SwipeToNotificationSettings.java
@@ -24,7 +24,6 @@
 import com.android.settings.core.PreferenceController;
 import com.android.settings.core.lifecycle.Lifecycle;
 import com.android.settings.dashboard.DashboardFragment;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.ArrayList;
@@ -67,10 +66,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.swipe_to_notification_settings;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/language/LanguageAndInputSettings.java b/src/com/android/settings/language/LanguageAndInputSettings.java
index 3987252..ef9f84b 100644
--- a/src/com/android/settings/language/LanguageAndInputSettings.java
+++ b/src/com/android/settings/language/LanguageAndInputSettings.java
@@ -36,7 +36,6 @@
 import com.android.settings.inputmethod.GameControllerPreferenceController;
 import com.android.settings.inputmethod.SpellCheckerPreferenceController;
 import com.android.settings.gestures.SwipeToNotificationPreferenceController;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 
 import java.util.ArrayList;
@@ -110,10 +109,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.language_and_input;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/network/NetworkDashboardFragment.java b/src/com/android/settings/network/NetworkDashboardFragment.java
index 6add786..a0ccf20 100644
--- a/src/com/android/settings/network/NetworkDashboardFragment.java
+++ b/src/com/android/settings/network/NetworkDashboardFragment.java
@@ -138,10 +138,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.network_and_internet;
                     return Arrays.asList(sir);
diff --git a/src/com/android/settings/nfc/NfcPreferenceController.java b/src/com/android/settings/nfc/NfcPreferenceController.java
index a5e5c3e..11e3e09 100644
--- a/src/com/android/settings/nfc/NfcPreferenceController.java
+++ b/src/com/android/settings/nfc/NfcPreferenceController.java
@@ -68,17 +68,10 @@
         mNfcEnabler = new NfcEnabler(mContext, mNfcPreference, mBeamPreference);
         String toggleable = Settings.Global.getString(mContext.getContentResolver(),
                 Settings.Global.AIRPLANE_MODE_TOGGLEABLE_RADIOS);
-        final boolean useNewIA = FeatureFactory.getFactory(mContext)
-                .getDashboardFeatureProvider(mContext).isEnabled();
         // Manually set dependencies for NFC when not toggleable.
         if (toggleable == null || !toggleable.contains(Settings.Global.RADIO_NFC)) {
-            if (useNewIA) {
-                mAirplaneModeObserver = new AirplaneModeObserver();
-                updateNfcPreference();
-            } else {
-                mNfcPreference.setDependency(AirplaneModePreferenceController.KEY_TOGGLE_AIRPLANE);
-                mBeamPreference.setDependency(AirplaneModePreferenceController.KEY_TOGGLE_AIRPLANE);
-            }
+            mAirplaneModeObserver = new AirplaneModeObserver();
+            updateNfcPreference();
         }
     }
 
diff --git a/src/com/android/settings/notification/AppNotificationSettings.java b/src/com/android/settings/notification/AppNotificationSettings.java
index 34745a7..a451786 100644
--- a/src/com/android/settings/notification/AppNotificationSettings.java
+++ b/src/com/android/settings/notification/AppNotificationSettings.java
@@ -20,13 +20,9 @@
 import static android.app.NotificationManager.IMPORTANCE_NONE;
 
 import android.app.Activity;
-import android.app.Notification;
 import android.app.NotificationChannel;
 import android.app.NotificationChannelGroup;
 import android.content.Intent;
-import android.content.pm.ActivityInfo;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.ResolveInfo;
 import android.os.AsyncTask;
 import android.os.Bundle;
 import android.provider.Settings;
@@ -42,11 +38,9 @@
 import com.android.settings.Utils;
 import com.android.settings.applications.AppHeaderController;
 import com.android.settings.applications.AppInfoBase;
-import com.android.settings.dashboard.DashboardFeatureProvider;
 import com.android.settings.notification.NotificationBackend.AppRow;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.widget.MasterSwitchPreference;
-import com.android.settingslib.RestrictedPreference;
 import com.android.settingslib.RestrictedSwitchPreference;
 
 import java.text.Collator;
@@ -63,21 +57,10 @@
 
     private static final String KEY_BLOCK = "block";
 
-    private DashboardFeatureProvider mDashboardFeatureProvider;
     private List<NotificationChannelGroup> mChannelGroupList;
     private List<PreferenceCategory> mChannelGroups = new ArrayList();
 
     @Override
-    public void onActivityCreated(Bundle savedInstanceState) {
-        super.onActivityCreated(savedInstanceState);
-        if (mAppRow == null) return;
-        if (!mDashboardFeatureProvider.isEnabled()) {
-            AppHeader.createAppHeader(this, mAppRow.icon, mAppRow.label, mAppRow.pkg, mAppRow.uid,
-                    mAppRow.settingsIntent);
-        }
-    }
-
-    @Override
     public int getMetricsCategory() {
         return MetricsEvent.NOTIFICATION_APP_NOTIFICATION;
     }
@@ -91,8 +74,6 @@
             return;
         }
         final Activity activity = getActivity();
-        mDashboardFeatureProvider =
-                FeatureFactory.getFactory(activity).getDashboardFeatureProvider(activity);
 
         addPreferencesFromResource(R.xml.app_notification_settings);
         getPreferenceScreen().setOrderingAsAdded(true);
@@ -121,20 +102,18 @@
                 }
             }.execute();
         }
-        if (mDashboardFeatureProvider.isEnabled()) {
-            final Preference pref = FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this /* fragment */, null /* appHeader */)
-                    .setIcon(mAppRow.icon)
-                    .setLabel(mAppRow.label)
-                    .setPackageName(mAppRow.pkg)
-                    .setUid(mAppRow.uid)
-                    .setAppNotifPrefIntent(mAppRow.settingsIntent)
-                    .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
-                            AppHeaderController.ActionType.ACTION_NOTIF_PREFERENCE)
-                    .done(getPrefContext());
-            getPreferenceScreen().addPreference(pref);
-        }
+        final Preference pref = FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this /* fragment */, null /* appHeader */)
+            .setIcon(mAppRow.icon)
+            .setLabel(mAppRow.label)
+            .setPackageName(mAppRow.pkg)
+            .setUid(mAppRow.uid)
+            .setAppNotifPrefIntent(mAppRow.settingsIntent)
+            .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
+                AppHeaderController.ActionType.ACTION_NOTIF_PREFERENCE)
+            .done(getPrefContext());
+        getPreferenceScreen().addPreference(pref);
     }
 
     @Override
diff --git a/src/com/android/settings/notification/ChannelNotificationSettings.java b/src/com/android/settings/notification/ChannelNotificationSettings.java
index 7be98c1..1cb2154 100644
--- a/src/com/android/settings/notification/ChannelNotificationSettings.java
+++ b/src/com/android/settings/notification/ChannelNotificationSettings.java
@@ -40,11 +40,9 @@
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.internal.widget.LockPatternUtils;
-import com.android.settings.AppHeader;
 import com.android.settings.R;
 import com.android.settings.RingtonePreference;
 import com.android.settings.applications.AppHeaderController;
-import com.android.settings.dashboard.DashboardFeatureProvider;
 import com.android.settings.overlay.FeatureFactory;
 import com.android.settingslib.RestrictedLockUtils;
 import com.android.settingslib.RestrictedSwitchPreference;
@@ -69,18 +67,6 @@
     protected RestrictedSwitchPreference mPriority;
     protected RestrictedDropDownPreference mVisibilityOverride;
 
-    private DashboardFeatureProvider mDashboardFeatureProvider;
-
-    @Override
-    public void onActivityCreated(Bundle savedInstanceState) {
-        super.onActivityCreated(savedInstanceState);
-        if (mAppRow == null || mChannel == null) return;
-        if (!mDashboardFeatureProvider.isEnabled()) {
-            AppHeader.createAppHeader(
-                    this, mAppRow.icon, mChannel.getName(), mAppRow.pkg, mAppRow.uid);
-        }
-    }
-
     @Override
     public int getMetricsCategory() {
         return MetricsEvent.NOTIFICATION_TOPIC_NOTIFICATION;
@@ -95,8 +81,6 @@
             return;
         }
         final Activity activity = getActivity();
-        mDashboardFeatureProvider =
-                FeatureFactory.getFactory(activity).getDashboardFeatureProvider(activity);
         addPreferencesFromResource(R.xml.channel_notification_settings);
 
         // load settings intent
@@ -125,21 +109,19 @@
             setupBlockAndImportance();
             updateDependents();
         }
-        if (mDashboardFeatureProvider.isEnabled()) {
-            final Preference pref = FeatureFactory.getFactory(activity)
-                    .getApplicationFeatureProvider(activity)
-                    .newAppHeaderController(this /* fragment */, null /* appHeader */)
-                    .setIcon(mAppRow.icon)
-                    .setLabel(getNotificationChannelLabel(mChannel))
-                    .setSummary(mAppRow.label)
-                    .setPackageName(mAppRow.pkg)
-                    .setUid(mAppRow.uid)
-                    .setAppNotifPrefIntent(mAppRow.settingsIntent)
-                    .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
-                            AppHeaderController.ActionType.ACTION_NOTIF_PREFERENCE)
-                    .done(getPrefContext());
-            getPreferenceScreen().addPreference(pref);
-        }
+        final Preference pref = FeatureFactory.getFactory(activity)
+            .getApplicationFeatureProvider(activity)
+            .newAppHeaderController(this /* fragment */, null /* appHeader */)
+            .setIcon(mAppRow.icon)
+            .setLabel(getNotificationChannelLabel(mChannel))
+            .setSummary(mAppRow.label)
+            .setPackageName(mAppRow.pkg)
+            .setUid(mAppRow.uid)
+            .setAppNotifPrefIntent(mAppRow.settingsIntent)
+            .setButtonActions(AppHeaderController.ActionType.ACTION_APP_INFO,
+                AppHeaderController.ActionType.ACTION_NOTIF_PREFERENCE)
+            .done(getPrefContext());
+        getPreferenceScreen().addPreference(pref);
     }
 
     @Override
diff --git a/src/com/android/settings/notification/ConfigureNotificationSettings.java b/src/com/android/settings/notification/ConfigureNotificationSettings.java
index 2a737d4..aee9dc2 100644
--- a/src/com/android/settings/notification/ConfigureNotificationSettings.java
+++ b/src/com/android/settings/notification/ConfigureNotificationSettings.java
@@ -17,14 +17,12 @@
 package com.android.settings.notification;
 
 import android.content.Context;
-import android.os.Bundle;
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.settings.R;
 import com.android.settings.core.PreferenceController;
 import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.gestures.SwipeToNotificationPreferenceController;
-import com.android.settings.overlay.FeatureFactory;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -62,16 +60,4 @@
         controllers.add(mLockScreenNotificationController);
         return controllers;
     }
-
-    @Override
-    public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
-        super.onCreatePreferences(savedInstanceState, rootKey);
-        final Context context = getContext();
-        if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context).isEnabled()) {
-            final String prefKey = getPreferenceController(
-                    SwipeToNotificationPreferenceController.class)
-                    .getPreferenceKey();
-            removePreference(prefKey);
-        }
-    }
 }
diff --git a/src/com/android/settings/system/SystemDashboardFragment.java b/src/com/android/settings/system/SystemDashboardFragment.java
index c4bf0da..76ac4a6 100644
--- a/src/com/android/settings/system/SystemDashboardFragment.java
+++ b/src/com/android/settings/system/SystemDashboardFragment.java
@@ -25,7 +25,6 @@
 import com.android.settings.dashboard.DashboardFragment;
 import com.android.settings.deviceinfo.AdditionalSystemUpdatePreferenceController;
 import com.android.settings.deviceinfo.SystemUpdatePreferenceController;
-import com.android.settings.overlay.FeatureFactory;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settings.search.Indexable;
 
@@ -33,7 +32,6 @@
 import java.util.Arrays;
 import java.util.List;
 
-
 public class SystemDashboardFragment extends DashboardFragment {
 
     private static final String TAG = "SystemDashboardFrag";
@@ -73,10 +71,6 @@
                 @Override
                 public List<SearchIndexableResource> getXmlResourcesToIndex(
                         Context context, boolean enabled) {
-                    if (!FeatureFactory.getFactory(context).getDashboardFeatureProvider(context)
-                            .isEnabled()) {
-                        return null;
-                    }
                     final SearchIndexableResource sir = new SearchIndexableResource(context);
                     sir.xmlResId = R.xml.system_dashboard_fragment;
                     return Arrays.asList(sir);
diff --git a/tests/robotests/src/com/android/settings/SettingsActivityTest.java b/tests/robotests/src/com/android/settings/SettingsActivityTest.java
index 6a5b935..68ca890 100644
--- a/tests/robotests/src/com/android/settings/SettingsActivityTest.java
+++ b/tests/robotests/src/com/android/settings/SettingsActivityTest.java
@@ -19,14 +19,11 @@
 import android.app.ActivityManager;
 import android.app.FragmentManager;
 import android.app.FragmentTransaction;
-import android.content.Context;
 import android.content.Intent;
 import android.graphics.Bitmap;
-import com.android.settings.testutils.FakeFeatureFactory;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RuntimeEnvironment;
@@ -45,8 +42,6 @@
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class SettingsActivityTest {
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
     @Mock
     private FragmentManager mFragmentManager;
     @Mock
@@ -58,10 +53,6 @@
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
 
         mActivity = spy(new SettingsActivity());
         doReturn(mBitmap).when(mActivity).getBitmapFromXmlResource(anyInt());
diff --git a/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
index 2b861e2..d2ded86 100644
--- a/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/AccountPreferenceControllerTest.java
@@ -33,7 +33,6 @@
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 import com.android.settings.search.SearchIndexableRaw;
-import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settings.testutils.shadow.ShadowAccountManager;
 import com.android.settings.testutils.shadow.ShadowContentResolver;
 
@@ -55,7 +54,6 @@
 import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.never;
-import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.times;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
@@ -76,7 +74,6 @@
     @Mock(answer = RETURNS_DEEP_STUBS)
     private AccountRestrictionHelper mAccountHelper;
 
-    private FakeFeatureFactory mFactory;
     private Context mContext;
     private AccountPreferenceController mController;
 
@@ -86,11 +83,8 @@
         ShadowApplication shadowContext = ShadowApplication.getInstance();
         shadowContext.setSystemService(Context.USER_SERVICE, mUserManager);
         shadowContext.setSystemService(Context.ACCOUNT_SERVICE, mAccountManager);
-        mContext = spy(shadowContext.getApplicationContext());
-        FakeFeatureFactory.setupForTest(mContext);
-        mFactory = (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
+        mContext = shadowContext.getApplicationContext();
 
-        when(mFactory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         when(mFragment.getPreferenceScreen()).thenReturn(mScreen);
         when(mFragment.getPreferenceManager().getContext()).thenReturn(mContext);
         when(mAccountManager.getAuthenticatorTypesAsUser(anyInt())).thenReturn(
diff --git a/tests/robotests/src/com/android/settings/accounts/UserAndAccountDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/accounts/UserAndAccountDashboardFragmentTest.java
index e1c2abf..39ffcf8 100644
--- a/tests/robotests/src/com/android/settings/accounts/UserAndAccountDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/accounts/UserAndAccountDashboardFragmentTest.java
@@ -16,7 +16,6 @@
 package com.android.settings.accounts;
 
 import android.app.Activity;
-import android.content.Context;
 import android.content.pm.UserInfo;
 import android.os.Bundle;
 import android.os.UserManager;
@@ -25,14 +24,12 @@
 import com.android.settings.R;
 import com.android.settings.TestConfig;
 import com.android.settings.dashboard.SummaryLoader;
-import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settingslib.drawer.CategoryKey;
 import com.android.settingslib.drawer.Tile;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.RobolectricTestRunner;
@@ -54,8 +51,6 @@
     private static final String METADATA_CATEGORY = "com.android.settings.category";
     private static final String METADATA_ACCOUNT_TYPE = "com.android.settings.ia.account";
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
     @Mock
     private UserManager mUserManager;
     private UserAndAccountDashboardFragment mFragment;
@@ -63,10 +58,6 @@
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mFragment = new UserAndAccountDashboardFragment();
     }
 
diff --git a/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java b/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java
index 56d4a83..a717306 100644
--- a/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java
+++ b/tests/robotests/src/com/android/settings/applications/AppInfoWithHeaderTest.java
@@ -72,7 +72,6 @@
                 ShadowApplication.getInstance().getApplicationContext(),
                 mAppInfoWithHeader,
                 null);
-        when(mFactory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         when(mFactory.applicationFeatureProvider.newAppHeaderController(mAppInfoWithHeader, null))
                 .thenReturn(appHeaderController);
         mAppInfoWithHeader.onActivityCreated(null);
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentTest.java
index 83bae50..fc4b75f 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/ConnectedDeviceDashboardFragmentTest.java
@@ -15,44 +15,30 @@
  */
 package com.android.settings.connecteddevice;
 
-import android.content.Context;
 import android.provider.SearchIndexableResource;
 
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settingslib.drawer.CategoryKey;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
 import java.util.List;
 
 import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Mockito.when;
 
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class ConnectedDeviceDashboardFragmentTest {
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
-
     private ConnectedDeviceDashboardFragment mFragment;
 
     @Before
     public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mFragment = new ConnectedDeviceDashboardFragment();
     }
 
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java
index 5902ec0..4eea05e 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardFeatureProviderImplTest.java
@@ -57,7 +57,6 @@
 import static org.mockito.Matchers.anyInt;
 import static org.mockito.Matchers.eq;
 import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
 import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 import static org.robolectric.Shadows.shadowOf;
@@ -268,24 +267,12 @@
     }
 
     @Test
-    public void getPreferences_notEnabled_shouldReturnNull() {
-        final DashboardFeatureProviderImpl mSpy = spy(mImpl);
-        when(mSpy.isEnabled()).thenReturn(false);
-
-        assertThat(mSpy.getPreferencesForCategory(null, null,
-                MetricsProto.MetricsEvent.SETTINGS_GESTURES, CategoryKey.CATEGORY_HOMEPAGE))
-                .isNull();
-    }
-
-    @Test
     public void getPreferences_noCategory_shouldReturnNull() {
         mImpl = new DashboardFeatureProviderImpl(mActivity, mCategoryManager);
-        final DashboardFeatureProviderImpl mSpy = spy(mImpl);
-        when(mSpy.isEnabled()).thenReturn(true);
         when(mCategoryManager.getTilesByCategory(mActivity, CategoryKey.CATEGORY_HOMEPAGE))
                 .thenReturn(null);
 
-        assertThat(mSpy.getPreferencesForCategory(null, null,
+        assertThat(mImpl.getPreferencesForCategory(null, null,
                 MetricsProto.MetricsEvent.SETTINGS_GESTURES, CategoryKey.CATEGORY_HOMEPAGE))
                 .isNull();
     }
@@ -293,12 +280,10 @@
     @Test
     public void getPreferences_noTileForCategory_shouldReturnNull() {
         mImpl = new DashboardFeatureProviderImpl(mActivity, mCategoryManager);
-        final DashboardFeatureProviderImpl mSpy = spy(mImpl);
-        when(mSpy.isEnabled()).thenReturn(true);
         when(mCategoryManager.getTilesByCategory(mActivity, CategoryKey.CATEGORY_HOMEPAGE))
                 .thenReturn(new DashboardCategory());
 
-        assertThat(mSpy.getPreferencesForCategory(null, null,
+        assertThat(mImpl.getPreferencesForCategory(null, null,
                 MetricsProto.MetricsEvent.SETTINGS_GESTURES, CategoryKey.CATEGORY_HOMEPAGE))
                 .isNull();
     }
@@ -306,15 +291,13 @@
     @Test
     public void getPreferences_hasTileForCategory_shouldReturnPrefList() {
         mImpl = new DashboardFeatureProviderImpl(mActivity, mCategoryManager);
-        final DashboardFeatureProviderImpl mSpy = spy(mImpl);
-        when(mSpy.isEnabled()).thenReturn(true);
         final DashboardCategory category = new DashboardCategory();
         category.tiles.add(new Tile());
         when(mCategoryManager
                 .getTilesByCategory(any(Context.class), eq(CategoryKey.CATEGORY_HOMEPAGE)))
                 .thenReturn(category);
 
-        assertThat(mSpy.getPreferencesForCategory(mActivity,
+        assertThat(mImpl.getPreferencesForCategory(mActivity,
                 ShadowApplication.getInstance().getApplicationContext(),
                 MetricsProto.MetricsEvent.SETTINGS_GESTURES,
                 CategoryKey.CATEGORY_HOMEPAGE).isEmpty())
diff --git a/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java b/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java
index b3f9fe0..a8e294c 100644
--- a/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/DashboardSummaryTest.java
@@ -75,7 +75,6 @@
     @Test
     public void updateCategoryAndSuggestion_shouldGetCategoryFromFeatureProvider() {
         doReturn(mock(Activity.class)).when(mSummary).getActivity();
-        when(mDashboardFeatureProvider.isEnabled()).thenReturn(true);
         mSummary.updateCategoryAndSuggestion(null);
         verify(mDashboardFeatureProvider).getTilesForCategory(CategoryKey.CATEGORY_HOMEPAGE);
     }
diff --git a/tests/robotests/src/com/android/settings/dashboard/ProgressiveDisclosureTest.java b/tests/robotests/src/com/android/settings/dashboard/ProgressiveDisclosureTest.java
index e7f97c3..e872a09 100644
--- a/tests/robotests/src/com/android/settings/dashboard/ProgressiveDisclosureTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/ProgressiveDisclosureTest.java
@@ -77,13 +77,11 @@
         mAppContext = ShadowApplication.getInstance().getApplicationContext();
         mFakeFeatureFactory = (FakeFeatureFactory) FeatureFactory.getFactory(mContext);
         mMixin = new ProgressiveDisclosureMixin(mAppContext,
-                mFakeFeatureFactory.dashboardFeatureProvider,
                 mFakeFeatureFactory.metricsFeatureProvider,
                 mPreferenceFragment);
         ReflectionHelpers.setField(mMixin, "mExpandButton", mExpandButton);
         mPreference = new Preference(mAppContext);
         mPreference.setKey("test");
-        when(mFakeFeatureFactory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
     }
 
     @Test
@@ -97,7 +95,6 @@
 
     @Test
     public void shouldCollapse_morePreferenceThanLimit() {
-        when(mFakeFeatureFactory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         when(mScreen.getPreferenceCount()).thenReturn(5);
         mMixin.setTileLimit(3);
 
diff --git a/tests/robotests/src/com/android/settings/deviceinfo/StorageDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/deviceinfo/StorageDashboardFragmentTest.java
index e2a46de..9baeda3 100644
--- a/tests/robotests/src/com/android/settings/deviceinfo/StorageDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/deviceinfo/StorageDashboardFragmentTest.java
@@ -15,7 +15,6 @@
  */
 package com.android.settings.deviceinfo;
 
-import android.content.Context;
 import android.os.Bundle;
 import android.os.storage.DiskInfo;
 import android.os.storage.StorageManager;
@@ -24,7 +23,6 @@
 
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settingslib.drawer.CategoryKey;
 
 import org.junit.Before;
@@ -46,8 +44,6 @@
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class StorageDashboardFragmentTest {
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
 
     @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private StorageManager mStorageManager;
@@ -57,10 +53,6 @@
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mFragment = new StorageDashboardFragment();
     }
 
diff --git a/tests/robotests/src/com/android/settings/gestures/AssistGestureSettingsTest.java b/tests/robotests/src/com/android/settings/gestures/AssistGestureSettingsTest.java
index 285a393..4efc822 100644
--- a/tests/robotests/src/com/android/settings/gestures/AssistGestureSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/AssistGestureSettingsTest.java
@@ -23,12 +23,10 @@
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 import com.android.settings.core.PreferenceController;
-import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
@@ -42,17 +40,13 @@
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class AssistGestureSettingsTest {
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+    @Mock
     private Context mContext;
     private AssistGestureSettings mSettings;
 
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mSettings = new AssistGestureSettings();
     }
 
diff --git a/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerSettingsTest.java b/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerSettingsTest.java
index b5fdfea..f8c3367 100644
--- a/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/DoubleTapPowerSettingsTest.java
@@ -16,43 +16,29 @@
 
 package com.android.settings.gestures;
 
-import android.content.Context;
 import android.provider.SearchIndexableResource;
 
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
 import java.util.List;
 
 import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Mockito.when;
 
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class DoubleTapPowerSettingsTest {
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
-
     private DoubleTapPowerSettings mSettings;
 
     @Before
     public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mSettings = new DoubleTapPowerSettings();
     }
 
diff --git a/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenSettingsTest.java b/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenSettingsTest.java
index c0aac43..433ba46 100644
--- a/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/DoubleTapScreenSettingsTest.java
@@ -16,43 +16,29 @@
 
 package com.android.settings.gestures;
 
-import android.content.Context;
 import android.provider.SearchIndexableResource;
 
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
 import java.util.List;
 
 import static com.google.common.truth.Truth.assertThat;
-import static org.mockito.Mockito.when;
 
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class DoubleTapScreenSettingsTest {
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
-
     private DoubleTapScreenSettings mSettings;
 
     @Before
     public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mSettings = new DoubleTapScreenSettings();
     }
 
diff --git a/tests/robotests/src/com/android/settings/gestures/DoubleTwistGestureSettingsTest.java b/tests/robotests/src/com/android/settings/gestures/DoubleTwistGestureSettingsTest.java
index f2a56d7..35c48ec 100644
--- a/tests/robotests/src/com/android/settings/gestures/DoubleTwistGestureSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/DoubleTwistGestureSettingsTest.java
@@ -16,19 +16,14 @@
 
 package com.android.settings.gestures;
 
-import android.content.Context;
 import android.provider.SearchIndexableResource;
 
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
@@ -40,18 +35,11 @@
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class DoubleTwistGestureSettingsTest {
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
 
     private DoubleTwistGestureSettings mSettings;
 
     @Before
     public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mSettings = new DoubleTwistGestureSettings();
     }
 
diff --git a/tests/robotests/src/com/android/settings/gestures/PickupGestureSettingsTest.java b/tests/robotests/src/com/android/settings/gestures/PickupGestureSettingsTest.java
index cf08836..921a1be 100644
--- a/tests/robotests/src/com/android/settings/gestures/PickupGestureSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/PickupGestureSettingsTest.java
@@ -16,19 +16,14 @@
 
 package com.android.settings.gestures;
 
-import android.content.Context;
 import android.provider.SearchIndexableResource;
 
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 
@@ -41,18 +36,10 @@
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class PickupGestureSettingsTest {
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
-
     private PickupGestureSettings mSettings;
 
     @Before
     public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mSettings = new PickupGestureSettings();
     }
 
diff --git a/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationSettingsTest.java b/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationSettingsTest.java
index b9f3bac..78dc27ac 100644
--- a/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationSettingsTest.java
+++ b/tests/robotests/src/com/android/settings/gestures/SwipeToNotificationSettingsTest.java
@@ -23,12 +23,10 @@
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
 import com.android.settings.core.PreferenceController;
-import com.android.settings.testutils.FakeFeatureFactory;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
@@ -43,17 +41,13 @@
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class SwipeToNotificationSettingsTest {
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
+    @Mock
     private Context mContext;
     private SwipeToNotificationSettings mFragment;
 
     @Before
     public void setUp() {
         MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mFragment = new SwipeToNotificationSettings();
     }
 
diff --git a/tests/robotests/src/com/android/settings/network/NetworkDashboardFragmentTest.java b/tests/robotests/src/com/android/settings/network/NetworkDashboardFragmentTest.java
index 7626ec4..2201c68 100644
--- a/tests/robotests/src/com/android/settings/network/NetworkDashboardFragmentTest.java
+++ b/tests/robotests/src/com/android/settings/network/NetworkDashboardFragmentTest.java
@@ -15,21 +15,16 @@
  */
 package com.android.settings.network;
 
-import android.content.Context;
 import android.provider.SearchIndexableResource;
 import android.view.Menu;
 
 import com.android.settings.SettingsRobolectricTestRunner;
 import com.android.settings.TestConfig;
-import com.android.settings.testutils.FakeFeatureFactory;
 import com.android.settingslib.drawer.CategoryKey;
 
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Answers;
-import org.mockito.Mock;
-import org.mockito.MockitoAnnotations;
 import org.robolectric.annotation.Config;
 import org.robolectric.shadows.ShadowApplication;
 import org.robolectric.util.ReflectionHelpers;
@@ -40,24 +35,15 @@
 import static org.mockito.Matchers.any;
 import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.verify;
-import static org.mockito.Mockito.when;
 
 @RunWith(SettingsRobolectricTestRunner.class)
 @Config(manifest = TestConfig.MANIFEST_PATH, sdk = TestConfig.SDK_VERSION)
 public class NetworkDashboardFragmentTest {
 
-    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
-    private Context mContext;
-
     private NetworkDashboardFragment mFragment;
 
     @Before
     public void setUp() {
-        MockitoAnnotations.initMocks(this);
-        FakeFeatureFactory.setupForTest(mContext);
-        final FakeFeatureFactory factory =
-                (FakeFeatureFactory) FakeFeatureFactory.getFactory(mContext);
-        when(factory.dashboardFeatureProvider.isEnabled()).thenReturn(true);
         mFragment = new NetworkDashboardFragment();
     }