Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f461d8dc authored by Evan Severson's avatar Evan Severson Committed by Android (Google) Code Review
Browse files

Merge "Remove Permissions Hub. DO NOT MERGE" into qt-r1-dev

parents c477507f 69d98998
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -130,11 +130,6 @@ public final class Utils extends com.android.settingslib.Utils {
    public static final String PROPERTY_DEVICE_IDENTIFIER_ACCESS_RESTRICTIONS_DISABLED =
            "device_identifier_access_restrictions_disabled";

    /**
     * Whether to show the Permissions Hub.
     */
    public static final String PROPERTY_PERMISSIONS_HUB_ENABLED = "permissions_hub_enabled";

    /**
     * Finds a matching activity for a preference's intent. If a matching
     * activity is not found, it will remove the preference.
+1 −3
Original line number Diff line number Diff line
@@ -64,9 +64,7 @@ public class RecentLocationAccessPreferenceController extends AbstractPreference

    @Override
    public boolean isAvailable() {
        return Boolean.parseBoolean(
                DeviceConfig.getProperty(DeviceConfig.NAMESPACE_PRIVACY,
                        Utils.PROPERTY_PERMISSIONS_HUB_ENABLED));
        return false;
    }

    @Override
+1 −4
Original line number Diff line number Diff line
@@ -89,10 +89,7 @@ public class PermissionBarChartPreferenceController extends BasePreferenceContro

    @Override
    public int getAvailabilityStatus() {
        return Boolean.parseBoolean(
                DeviceConfig.getProperty(DeviceConfig.NAMESPACE_PRIVACY,
                        com.android.settings.Utils.PROPERTY_PERMISSIONS_HUB_ENABLED)) ?
                AVAILABLE_UNSEARCHABLE : UNSUPPORTED_ON_DEVICE;
        return UNSUPPORTED_ON_DEVICE;
    }

    @Override
+0 −71
Original line number Diff line number Diff line
@@ -92,75 +92,4 @@ public class RecentLocationAccessPreferenceControllerTest {
        // We have not yet set the property to show the Permissions Hub.
        assertThat(mController.isAvailable()).isEqualTo(false);
    }

    @Test
    public void isAvailable_permissionHubEnabled_shouldReturnTrue() {
        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_PRIVACY,
                Utils.PROPERTY_PERMISSIONS_HUB_ENABLED, "true", true);

        assertThat(mController.isAvailable()).isEqualTo(true);
    }

    /** Verifies the title text, details text are correct, and the click listener is set. */
    @Test
    @Ignore
    public void updateState_whenAppListIsEmpty_shouldDisplayTitleTextAndDetailsText() {
        doReturn(new ArrayList<>()).when(mRecentLocationApps).getAppListSorted();
        mController.displayPreference(mScreen);
        mController.updateState(mLayoutPreference);

        final TextView title = mAppEntitiesHeaderView.findViewById(R.id.header_title);
        assertThat(title.getText()).isEqualTo(
                mContext.getText(R.string.location_category_recent_location_access));
        final TextView details = mAppEntitiesHeaderView.findViewById(R.id.header_details);
        assertThat(details.getText()).isEqualTo(
                mContext.getText(R.string.location_recent_location_access_view_details));
        assertThat(details.hasOnClickListeners()).isTrue();
    }

    @Test
    public void updateState_whenAppListMoreThanThree_shouldDisplayTopThreeApps() {
        final List<RecentLocationAccesses.Access> accesses = createMockAccesses(6);
        doReturn(accesses).when(mRecentLocationApps).getAppListSorted();
        mController.displayPreference(mScreen);
        mController.updateState(mLayoutPreference);

        // The widget can display the top 3 apps from the list when there're more than 3.
        final View app1View = mAppEntitiesHeaderView.findViewById(R.id.app1_view);
        final ImageView appIconView1 = app1View.findViewById(R.id.app_icon);
        final TextView appTitle1 = app1View.findViewById(R.id.app_title);

        assertThat(app1View.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(appIconView1.getDrawable()).isNotNull();
        assertThat(appTitle1.getText()).isEqualTo("appTitle0");

        final View app2View = mAppEntitiesHeaderView.findViewById(R.id.app2_view);
        final ImageView appIconView2 = app2View.findViewById(R.id.app_icon);
        final TextView appTitle2 = app2View.findViewById(R.id.app_title);

        assertThat(app2View.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(appIconView2.getDrawable()).isNotNull();
        assertThat(appTitle2.getText()).isEqualTo("appTitle1");

        final View app3View = mAppEntitiesHeaderView.findViewById(R.id.app3_view);
        final ImageView appIconView3 = app3View.findViewById(R.id.app_icon);
        final TextView appTitle3 = app3View.findViewById(R.id.app_title);

        assertThat(app3View.getVisibility()).isEqualTo(View.VISIBLE);
        assertThat(appIconView3.getDrawable()).isNotNull();
        assertThat(appTitle3.getText()).isEqualTo("appTitle2");
    }

    private List<RecentLocationAccesses.Access> createMockAccesses(int count) {
        final List<RecentLocationAccesses.Access> accesses = new ArrayList<>();
        for (int i = 0; i < count; i++) {
            final Drawable icon = mock(Drawable.class);
            // Add mock accesses
            final RecentLocationAccesses.Access access = new RecentLocationAccesses.Access(
                    "packageName", android.os.Process.myUserHandle(), icon,
                    "appTitle" + i, "appSummary" + i, 1000 - i);
            accesses.add(access);
        }
        return accesses;
    }
}
+0 −4
Original line number Diff line number Diff line
@@ -65,8 +65,6 @@ public class AccessibilityUsagePreferenceControllerTest {

    @Test
    public void getAvailabilityStatus_noEnabledServices_shouldReturnUnsupported() {
        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_PRIVACY,
                Utils.PROPERTY_PERMISSIONS_HUB_ENABLED, "true", true);
        mAccessibilityManager.setEnabledAccessibilityServiceList(new ArrayList<>());
        AccessibilityUsagePreferenceController controller =
                new AccessibilityUsagePreferenceController(mContext, "test_key");
@@ -76,8 +74,6 @@ public class AccessibilityUsagePreferenceControllerTest {

    @Test
    public void getAvailabilityStatus_enabledServices_shouldReturnAvailable() {
        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_PRIVACY,
                Utils.PROPERTY_PERMISSIONS_HUB_ENABLED, "false", true);
        mAccessibilityManager.setEnabledAccessibilityServiceList(
                new ArrayList<>(Arrays.asList(new AccessibilityServiceInfo())));
        AccessibilityUsagePreferenceController controller =
Loading