Revert "Remove "See all" button"

This reverts commit 1170a08d43.

Reason for revert: design decision changed.

Change-Id: I954f8899f33a4c0e8945744e9bfcdbb48d9d705b
This commit is contained in:
Yu-Han Yang
2021-04-27 18:36:18 +00:00
parent 1170a08d43
commit cf41f951ff
7 changed files with 77 additions and 0 deletions

View File

@@ -27,6 +27,14 @@
settings:controller=
"com.android.settings.location.RecentLocationAccessPreferenceController"/>
<Preference
android:key="recent_location_access_see_all_button"
android:title="@string/location_recent_location_access_see_all"
android:icon="@drawable/ic_chevron_right_24dp"
android:fragment="com.android.settings.location.RecentLocationAccessSeeAllFragment"
settings:controller="com.android.settings.location.RecentLocationAccessSeeAllButtonPreferenceController"
settings:searchable="false"/>
<PreferenceCategory
android:key="location_advanced_settings"
android:layout="@layout/preference_category_no_label"

View File

@@ -28,6 +28,14 @@
settings:controller=
"com.android.settings.location.RecentLocationAccessPreferenceController"/>
<Preference
android:key="recent_location_access_see_all_button"
android:title="@string/location_recent_location_access_see_all"
android:icon="@drawable/ic_chevron_right_24dp"
android:fragment="com.android.settings.location.RecentLocationAccessSeeAllFragment"
settings:controller="com.android.settings.location.RecentLocationAccessSeeAllButtonPreferenceController"
settings:searchable="false"/>
<!-- This preference category gets removed if new_recent_location_ui is disabled -->
<Preference
android:key="app_level_permissions"

View File

@@ -28,6 +28,15 @@
settings:controller=
"com.android.settings.location.RecentLocationAccessPreferenceController"/>
<Preference
android:key="recent_location_access_see_all_button"
android:title="@string/location_recent_location_access_see_all"
android:icon="@drawable/ic_chevron_right_24dp"
android:fragment="com.android.settings.location.RecentLocationAccessSeeAllFragment"
settings:controller="com.android.settings.location.RecentLocationAccessSeeAllButtonPreferenceController"
settings:forWork="true"
settings:searchable="false"/>
<com.android.settingslib.RestrictedSwitchPreference
android:key="managed_profile_location_switch"
android:title="@string/managed_profile_location_switch_title"

View File

@@ -51,6 +51,7 @@ public class LocationPersonalSettings extends DashboardFragment {
use(AppLocationPermissionPreferenceController.class).init(this);
use(LocationSettingsFooterPreferenceController.class).init(this);
use(RecentLocationAccessSeeAllButtonPreferenceController.class).init(this);
final int profileType = getArguments().getInt(ProfileSelectFragment.EXTRA_PROFILE);
final RecentLocationAccessPreferenceController controller = use(

View File

@@ -83,6 +83,7 @@ public class LocationSettings extends DashboardFragment {
use(AppLocationPermissionPreferenceController.class).init(this);
use(RecentLocationAccessPreferenceController.class).init(this);
use(RecentLocationAccessSeeAllButtonPreferenceController.class).init(this);
use(LocationForWorkPreferenceController.class).init(this);
use(LocationSettingsFooterPreferenceController.class).init(this);
}

View File

@@ -51,6 +51,7 @@ public class LocationWorkProfileSettings extends DashboardFragment {
use(AppLocationPermissionPreferenceController.class).init(this);
use(LocationForWorkPreferenceController.class).init(this);
use(RecentLocationAccessSeeAllButtonPreferenceController.class).init(this);
use(LocationSettingsFooterPreferenceController.class).init(this);
final int profileType = getArguments().getInt(ProfileSelectFragment.EXTRA_PROFILE);

View File

@@ -0,0 +1,49 @@
/*
* Copyright 2021 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.
*/
package com.android.settings.location;
import android.content.Context;
import androidx.preference.Preference;
import androidx.preference.PreferenceScreen;
/**
* Preference controller that handles the "See All" button for recent location access.
*/
public class RecentLocationAccessSeeAllButtonPreferenceController extends
LocationBasePreferenceController {
private Preference mPreference;
/**
* Constructor of {@link RecentLocationAccessSeeAllButtonPreferenceController}.
*/
public RecentLocationAccessSeeAllButtonPreferenceController(Context context, String key) {
super(context, key);
}
@Override
public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen);
mPreference = screen.findPreference(getPreferenceKey());
}
@Override
public void onLocationModeChanged(int mode, boolean restricted) {
boolean enabled = mLocationEnabler.isEnabled(mode);
mPreference.setVisible(enabled);
}
}