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

Commit d79959bd authored by Kate Montgomery's avatar Kate Montgomery Committed by Android (Google) Code Review
Browse files

Merge "Flag off stickiness of show/hide system setting." into tm-dev

parents c41e921e dc67fb32
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.content.Intent;
import android.icu.text.RelativeDateTimeFormatter;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.DeviceConfig;
import android.provider.Settings;

import androidx.annotation.VisibleForTesting;
@@ -27,6 +28,7 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceScreen;

import com.android.internal.config.sysui.SystemUiDeviceConfigFlags;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
@@ -82,8 +84,11 @@ public class RecentLocationAccessPreferenceController extends LocationBasePrefer
            RecentAppOpsAccess recentLocationApps) {
        super(context, key);
        mRecentLocationApps = recentLocationApps;
        mShowSystem = Settings.Secure.getInt(mContext.getContentResolver(),
                Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1;
        mShowSystem = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PRIVACY,
                SystemUiDeviceConfigFlags.PROPERTY_LOCATION_INDICATORS_SMALL_ENABLED, false)
                ? Settings.Secure.getInt(mContext.getContentResolver(),
                Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1
                : false;
    }

    @Override
+7 −2
Original line number Diff line number Diff line
@@ -17,11 +17,13 @@ package com.android.settings.location;

import android.content.Context;
import android.os.Bundle;
import android.provider.DeviceConfig;
import android.provider.Settings;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;

import com.android.internal.config.sysui.SystemUiDeviceConfigFlags;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.dashboard.DashboardFragment;
@@ -58,8 +60,11 @@ public class RecentLocationAccessSeeAllFragment extends DashboardFragment {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mShowSystem = Settings.Secure.getInt(getContentResolver(),
                Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1;
        mShowSystem = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PRIVACY,
            SystemUiDeviceConfigFlags.PROPERTY_LOCATION_INDICATORS_SMALL_ENABLED, false)
            ? Settings.Secure.getInt(getContentResolver(),
            Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1
            : false;
    }

    @Override
+8 −2
Original line number Diff line number Diff line
@@ -20,11 +20,13 @@ import static com.android.settings.location.RecentLocationAccessPreferenceContro

import android.content.Context;
import android.os.UserManager;
import android.provider.DeviceConfig;
import android.provider.Settings;

import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;

import com.android.internal.config.sysui.SystemUiDeviceConfigFlags;
import com.android.settings.R;
import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
import com.android.settings.overlay.FeatureFactory;
@@ -48,8 +50,12 @@ public class RecentLocationAccessSeeAllPreferenceController

    public RecentLocationAccessSeeAllPreferenceController(Context context, String key) {
        super(context, key);
        mShowSystem = Settings.Secure.getInt(mContext.getContentResolver(),
                Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1;
        mShowSystem = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PRIVACY,
            SystemUiDeviceConfigFlags.PROPERTY_LOCATION_INDICATORS_SMALL_ENABLED, false)
            ? Settings.Secure.getInt(mContext.getContentResolver(),
            Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1
            : false;

        mRecentLocationAccesses = RecentAppOpsAccess.createForLocation(context);
        mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
    }
+7 −2
Original line number Diff line number Diff line
@@ -17,6 +17,7 @@ import android.content.Context;
import android.os.Bundle;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.DeviceConfig;
import android.provider.Settings;

import androidx.annotation.VisibleForTesting;
@@ -24,6 +25,7 @@ import androidx.preference.Preference;
import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceScreen;

import com.android.internal.config.sysui.SystemUiDeviceConfigFlags;
import com.android.settings.R;
import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
import com.android.settings.core.SubSettingLauncher;
@@ -84,8 +86,11 @@ public class RecentLocationRequestPreferenceController extends LocationBasePrefe
        final Context prefContext = mCategoryRecentLocationRequests.getContext();
        final List<RecentLocationApps.Request> recentLocationRequests = new ArrayList<>();
        final UserManager userManager = UserManager.get(mContext);
        final boolean showSystem = Settings.Secure.getInt(mContext.getContentResolver(),
                Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1;
        final boolean showSystem = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_PRIVACY,
                SystemUiDeviceConfigFlags.PROPERTY_LOCATION_INDICATORS_SMALL_ENABLED, false)
                ? Settings.Secure.getInt(mContext.getContentResolver(),
                Settings.Secure.LOCATION_SHOW_SYSTEM_OPS, 0) == 1
                : false;

        for (RecentLocationApps.Request request : mRecentLocationApps.getAppListSorted(
                showSystem)) {
+14 −1
Original line number Diff line number Diff line
@@ -26,15 +26,19 @@ import static org.mockito.Mockito.when;
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.os.UserHandle;
import android.provider.DeviceConfig;
import android.provider.Settings;

import androidx.preference.PreferenceCategory;
import androidx.preference.PreferenceScreen;

import com.android.internal.config.sysui.SystemUiDeviceConfigFlags;
import com.android.settings.dashboard.profileselector.ProfileSelectFragment;
import com.android.settings.testutils.shadow.ShadowDeviceConfig;
import com.android.settings.testutils.shadow.ShadowUserManager;
import com.android.settingslib.location.RecentLocationApps;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -50,7 +54,7 @@ import java.util.List;
import java.util.Set;

@RunWith(RobolectricTestRunner.class)
@Config(shadows = {ShadowUserManager.class})
@Config(shadows = {ShadowDeviceConfig.class, ShadowUserManager.class})
public class RecentLocationRequestPreferenceControllerTest {
    @Mock
    private PreferenceScreen mScreen;
@@ -72,6 +76,11 @@ public class RecentLocationRequestPreferenceControllerTest {
        mController.mRecentLocationApps = spy(new RecentLocationApps(mContext));
    }

    @After
    public void tearDown() {
        ShadowDeviceConfig.reset();
    }

    @Test
    public void updateState_whenAppListMoreThanThree_shouldDisplayTopThreeApps() {
        final List<RecentLocationApps.Request> requests = createMockRequest(6);
@@ -84,6 +93,10 @@ public class RecentLocationRequestPreferenceControllerTest {

    @Test
    public void updateState_whenAppListMoreThanThree_showSystem() {
        DeviceConfig.setProperty(DeviceConfig.NAMESPACE_PRIVACY,
                SystemUiDeviceConfigFlags.PROPERTY_LOCATION_INDICATORS_SMALL_ENABLED,
                Boolean.toString(true),
                true);
        when(mController.mRecentLocationApps.getAppListSorted(false))
                .thenReturn(createMockRequest(2));
        when(mController.mRecentLocationApps.getAppListSorted(true))