Loading res/xml/location_settings.xml +14 −7 Original line number Diff line number Diff line Loading @@ -37,6 +37,13 @@ settings:searchable="false"/> </com.android.settingslib.widget.UntitledPreferenceCategory> <com.android.settingslib.widget.SectionButtonPreference android:key="recent_location_access_see_all_button_expressive" android:title="@string/location_recent_location_access_see_all" android:icon="@drawable/ic_bluetooth_more_vert" android:fragment="com.android.settings.location.RecentLocationAccessSeeAllFragment" settings:controller="com.android.settings.location.RecentLocationAccessSeeAllExpressiveButtonPreferenceController" /> <com.android.settingslib.widget.UntitledPreferenceCategory android:key="location_advanced_settings"> Loading src/com/android/settings/location/LocationSettings.java +1 −0 Original line number Diff line number Diff line Loading @@ -119,6 +119,7 @@ public class LocationSettings extends DashboardFragment implements mController = use(RecentLocationAccessPreferenceController.class); mController.init(this); use(RecentLocationAccessSeeAllButtonPreferenceController.class).init(this); use(RecentLocationAccessSeeAllExpressiveButtonPreferenceController.class).init(this); use(LocationForWorkPreferenceController.class).init(this); use(LocationSettingsFooterPreferenceController.class).init(this); use(LocationForPrivateProfilePreferenceController.class).init(this); Loading src/com/android/settings/location/RecentLocationAccessSeeAllButtonPreferenceController.java +4 −2 Original line number Diff line number Diff line Loading @@ -20,6 +20,8 @@ import android.content.Context; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settingslib.widget.SettingsThemeHelper; /** * Preference controller that handles the "See All" button for recent location access. */ Loading @@ -45,6 +47,6 @@ public class RecentLocationAccessSeeAllButtonPreferenceController extends @Override public void onLocationModeChanged(int mode, boolean restricted) { boolean enabled = mLocationEnabler.isEnabled(mode); mPreference.setVisible(enabled); mPreference.setVisible(enabled && !SettingsThemeHelper.isExpressiveTheme(mContext)); } } No newline at end of file src/com/android/settings/location/RecentLocationAccessSeeAllExpressiveButtonPreferenceController.java 0 → 100644 +69 −0 Original line number Diff line number Diff line /* * 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.PreferenceScreen; import com.android.settings.core.SubSettingLauncher; import com.android.settingslib.widget.SectionButtonPreference; import com.android.settingslib.widget.SettingsThemeHelper; import kotlin.Unit; import org.jetbrains.annotations.Nullable; /** * Preference controller that handles the "See All" button for recent location access. */ public class RecentLocationAccessSeeAllExpressiveButtonPreferenceController extends LocationBasePreferenceController { private @Nullable SectionButtonPreference mPreference; /** * Constructor of {@link RecentLocationAccessSeeAllExpressiveButtonPreferenceController}. */ public RecentLocationAccessSeeAllExpressiveButtonPreferenceController( Context context, String key) { super(context, key); } @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); mPreference = (SectionButtonPreference) screen.findPreference(getPreferenceKey()); if (mPreference != null) { mPreference.setOnClickListener(v -> { SubSettingLauncher launcher = new SubSettingLauncher(mFragment.getContext()) .setDestination(RecentLocationAccessSeeAllFragment.class.getName()) .setSourceMetricsCategory(mFragment.getMetricsCategory()); launcher.launch(); return Unit.INSTANCE; }); } mLocationEnabler.refreshLocationMode(); } @Override public void onLocationModeChanged(int mode, boolean restricted) { boolean enabled = mLocationEnabler.isEnabled(mode); if (mPreference != null) { mPreference.setVisible(enabled && SettingsThemeHelper.isExpressiveTheme(mContext)); } } } Loading
res/xml/location_settings.xml +14 −7 Original line number Diff line number Diff line Loading @@ -37,6 +37,13 @@ settings:searchable="false"/> </com.android.settingslib.widget.UntitledPreferenceCategory> <com.android.settingslib.widget.SectionButtonPreference android:key="recent_location_access_see_all_button_expressive" android:title="@string/location_recent_location_access_see_all" android:icon="@drawable/ic_bluetooth_more_vert" android:fragment="com.android.settings.location.RecentLocationAccessSeeAllFragment" settings:controller="com.android.settings.location.RecentLocationAccessSeeAllExpressiveButtonPreferenceController" /> <com.android.settingslib.widget.UntitledPreferenceCategory android:key="location_advanced_settings"> Loading
src/com/android/settings/location/LocationSettings.java +1 −0 Original line number Diff line number Diff line Loading @@ -119,6 +119,7 @@ public class LocationSettings extends DashboardFragment implements mController = use(RecentLocationAccessPreferenceController.class); mController.init(this); use(RecentLocationAccessSeeAllButtonPreferenceController.class).init(this); use(RecentLocationAccessSeeAllExpressiveButtonPreferenceController.class).init(this); use(LocationForWorkPreferenceController.class).init(this); use(LocationSettingsFooterPreferenceController.class).init(this); use(LocationForPrivateProfilePreferenceController.class).init(this); Loading
src/com/android/settings/location/RecentLocationAccessSeeAllButtonPreferenceController.java +4 −2 Original line number Diff line number Diff line Loading @@ -20,6 +20,8 @@ import android.content.Context; import androidx.preference.Preference; import androidx.preference.PreferenceScreen; import com.android.settingslib.widget.SettingsThemeHelper; /** * Preference controller that handles the "See All" button for recent location access. */ Loading @@ -45,6 +47,6 @@ public class RecentLocationAccessSeeAllButtonPreferenceController extends @Override public void onLocationModeChanged(int mode, boolean restricted) { boolean enabled = mLocationEnabler.isEnabled(mode); mPreference.setVisible(enabled); mPreference.setVisible(enabled && !SettingsThemeHelper.isExpressiveTheme(mContext)); } } No newline at end of file
src/com/android/settings/location/RecentLocationAccessSeeAllExpressiveButtonPreferenceController.java 0 → 100644 +69 −0 Original line number Diff line number Diff line /* * 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.PreferenceScreen; import com.android.settings.core.SubSettingLauncher; import com.android.settingslib.widget.SectionButtonPreference; import com.android.settingslib.widget.SettingsThemeHelper; import kotlin.Unit; import org.jetbrains.annotations.Nullable; /** * Preference controller that handles the "See All" button for recent location access. */ public class RecentLocationAccessSeeAllExpressiveButtonPreferenceController extends LocationBasePreferenceController { private @Nullable SectionButtonPreference mPreference; /** * Constructor of {@link RecentLocationAccessSeeAllExpressiveButtonPreferenceController}. */ public RecentLocationAccessSeeAllExpressiveButtonPreferenceController( Context context, String key) { super(context, key); } @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); mPreference = (SectionButtonPreference) screen.findPreference(getPreferenceKey()); if (mPreference != null) { mPreference.setOnClickListener(v -> { SubSettingLauncher launcher = new SubSettingLauncher(mFragment.getContext()) .setDestination(RecentLocationAccessSeeAllFragment.class.getName()) .setSourceMetricsCategory(mFragment.getMetricsCategory()); launcher.launch(); return Unit.INSTANCE; }); } mLocationEnabler.refreshLocationMode(); } @Override public void onLocationModeChanged(int mode, boolean restricted) { boolean enabled = mLocationEnabler.isEnabled(mode); if (mPreference != null) { mPreference.setVisible(enabled && SettingsThemeHelper.isExpressiveTheme(mContext)); } } }