Merge changes from topic "slice-highlight" into sc-v2-dev
* changes: Add highlight menu keys for all toggle pref controllers and custom slices Support slice deep links highlighting menu entries
This commit is contained in:
@@ -23,6 +23,7 @@ import android.content.Context;
|
|||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -57,4 +58,9 @@ public class AccessibilityShortcutPreferenceController extends TogglePreferenceC
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -26,6 +26,7 @@ import android.content.Context;
|
|||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.view.accessibility.AccessibilityManager;
|
import android.view.accessibility.AccessibilityManager;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settingslib.accessibility.AccessibilityUtils;
|
import com.android.settingslib.accessibility.AccessibilityUtils;
|
||||||
|
|
||||||
@@ -98,6 +99,11 @@ public class AccessibilitySlicePreferenceController extends TogglePreferenceCont
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
|
|
||||||
private AccessibilityServiceInfo getAccessibilityServiceInfo() {
|
private AccessibilityServiceInfo getAccessibilityServiceInfo() {
|
||||||
final AccessibilityManager accessibilityManager = mContext.getSystemService(
|
final AccessibilityManager accessibilityManager = mContext.getSystemService(
|
||||||
AccessibilityManager.class);
|
AccessibilityManager.class);
|
||||||
|
@@ -22,6 +22,7 @@ import android.text.TextUtils;
|
|||||||
|
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
public class DisableAnimationsPreferenceController extends TogglePreferenceController {
|
public class DisableAnimationsPreferenceController extends TogglePreferenceController {
|
||||||
@@ -71,4 +72,9 @@ public class DisableAnimationsPreferenceController extends TogglePreferenceContr
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
|||||||
import android.graphics.fonts.FontStyle;
|
import android.graphics.fonts.FontStyle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/** PreferenceController for displaying all text in bold. */
|
/** PreferenceController for displaying all text in bold. */
|
||||||
@@ -47,4 +48,9 @@ public class FontWeightAdjustmentPreferenceController extends TogglePreferenceCo
|
|||||||
return Settings.Secure.putInt(mContext.getContentResolver(),
|
return Settings.Secure.putInt(mContext.getContentResolver(),
|
||||||
Settings.Secure.FONT_WEIGHT_ADJUSTMENT, (isChecked ? BOLD_TEXT_ADJUSTMENT : 0));
|
Settings.Secure.FONT_WEIGHT_ADJUSTMENT, (isChecked ? BOLD_TEXT_ADJUSTMENT : 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.accessibility;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
public class HighTextContrastPreferenceController extends TogglePreferenceController {
|
public class HighTextContrastPreferenceController extends TogglePreferenceController {
|
||||||
@@ -43,4 +44,9 @@ public class HighTextContrastPreferenceController extends TogglePreferenceContro
|
|||||||
return Settings.Secure.putInt(mContext.getContentResolver(),
|
return Settings.Secure.putInt(mContext.getContentResolver(),
|
||||||
Settings.Secure.ACCESSIBILITY_HIGH_TEXT_CONTRAST_ENABLED, (isChecked ? 1 : 0));
|
Settings.Secure.ACCESSIBILITY_HIGH_TEXT_CONTRAST_ENABLED, (isChecked ? 1 : 0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -21,6 +21,7 @@ import android.provider.Settings;
|
|||||||
|
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
public class LargePointerIconPreferenceController extends TogglePreferenceController {
|
public class LargePointerIconPreferenceController extends TogglePreferenceController {
|
||||||
@@ -50,4 +51,9 @@ public class LargePointerIconPreferenceController extends TogglePreferenceContro
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -23,6 +23,7 @@ import androidx.preference.PreferenceScreen;
|
|||||||
|
|
||||||
import com.android.internal.view.RotationPolicy;
|
import com.android.internal.view.RotationPolicy;
|
||||||
import com.android.internal.view.RotationPolicy.RotationPolicyListener;
|
import com.android.internal.view.RotationPolicy.RotationPolicyListener;
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||||
@@ -61,6 +62,11 @@ public class LockScreenRotationPreferenceController extends TogglePreferenceCont
|
|||||||
return RotationPolicy.isRotationSupported(mContext) ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
return RotationPolicy.isRotationSupported(mContext) ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStop() {
|
public void onStop() {
|
||||||
if (mRotationPolicyListener != null) {
|
if (mRotationPolicyListener != null) {
|
||||||
|
@@ -76,6 +76,11 @@ public class MagnificationGesturesPreferenceController extends TogglePreferenceC
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CharSequence getSummary() {
|
public CharSequence getSummary() {
|
||||||
int resId = 0;
|
int resId = 0;
|
||||||
|
@@ -82,6 +82,11 @@ public class MagnificationNavbarPreferenceController extends TogglePreferenceCon
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public CharSequence getSummary() {
|
public CharSequence getSummary() {
|
||||||
int resId = 0;
|
int resId = 0;
|
||||||
|
@@ -21,6 +21,7 @@ import android.provider.Settings;
|
|||||||
import android.view.KeyCharacterMap;
|
import android.view.KeyCharacterMap;
|
||||||
import android.view.KeyEvent;
|
import android.view.KeyEvent;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
@@ -51,4 +52,9 @@ public class PowerButtonEndsCallPreferenceController extends TogglePreferenceCon
|
|||||||
return !KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_POWER)
|
return !KeyCharacterMap.deviceHasKey(KeyEvent.KEYCODE_POWER)
|
||||||
|| !Utils.isVoiceCapable(mContext) ? UNSUPPORTED_ON_DEVICE : AVAILABLE;
|
|| !Utils.isVoiceCapable(mContext) ? UNSUPPORTED_ON_DEVICE : AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
|||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -47,4 +48,9 @@ public class PrimaryMonoPreferenceController extends TogglePreferenceController
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -22,6 +22,7 @@ import android.provider.Settings;
|
|||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/** PreferenceController for persisting feature activation state after a restart. */
|
/** PreferenceController for persisting feature activation state after a restart. */
|
||||||
@@ -62,4 +63,9 @@ public class ReduceBrightColorsPersistencePreferenceController extends TogglePre
|
|||||||
super.updateState(preference);
|
super.updateState(preference);
|
||||||
preference.setEnabled(mColorDisplayManager.isReduceBrightColorsActivated());
|
preference.setEnabled(mColorDisplayManager.isReduceBrightColorsActivated());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -94,6 +94,11 @@ public class ReduceBrightColorsPreferenceController extends TogglePreferenceCont
|
|||||||
mPreference = screen.findPreference(getPreferenceKey());
|
mPreference = screen.findPreference(getPreferenceKey());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accessibility;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStart() {
|
public void onStart() {
|
||||||
mContext.getContentResolver().registerContentObserver(Settings.Secure.getUriFor(
|
mContext.getContentResolver().registerContentObserver(Settings.Secure.getUriFor(
|
||||||
|
@@ -22,6 +22,7 @@ import android.os.UserHandle;
|
|||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
@@ -71,6 +72,11 @@ public class CrossProfileCalendarPreferenceController extends TogglePreferenceCo
|
|||||||
CROSS_PROFILE_CALENDAR_ENABLED, value, mManagedUser.getIdentifier());
|
CROSS_PROFILE_CALENDAR_ENABLED, value, mManagedUser.getIdentifier());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_accounts;
|
||||||
|
}
|
||||||
|
|
||||||
static boolean isCrossProfileCalendarDisallowedByAdmin(Context context, int userId) {
|
static boolean isCrossProfileCalendarDisallowedByAdmin(Context context, int userId) {
|
||||||
final Context managedProfileContext = createPackageContextAsUser(context, userId);
|
final Context managedProfileContext = createPackageContextAsUser(context, userId);
|
||||||
final DevicePolicyManager dpm = managedProfileContext.getSystemService(
|
final DevicePolicyManager dpm = managedProfileContext.getSystemService(
|
||||||
|
@@ -16,33 +16,25 @@
|
|||||||
|
|
||||||
package com.android.settings.accounts;
|
package com.android.settings.accounts;
|
||||||
|
|
||||||
import android.app.admin.DevicePolicyManager;
|
|
||||||
import android.app.settings.SettingsEnums;
|
import android.app.settings.SettingsEnums;
|
||||||
import android.content.BroadcastReceiver;
|
import android.content.BroadcastReceiver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.IntentFilter;
|
import android.content.IntentFilter;
|
||||||
import android.content.pm.PackageManager;
|
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
import android.provider.SearchIndexableResource;
|
import android.provider.SearchIndexableResource;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
|
||||||
import androidx.preference.PreferenceGroup;
|
|
||||||
import androidx.preference.PreferenceManager;
|
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.dashboard.DashboardFragment;
|
import com.android.settings.dashboard.DashboardFragment;
|
||||||
import com.android.settings.search.BaseSearchIndexProvider;
|
import com.android.settings.search.BaseSearchIndexProvider;
|
||||||
import com.android.settingslib.search.Indexable;
|
|
||||||
import com.android.settingslib.search.SearchIndexable;
|
import com.android.settingslib.search.SearchIndexable;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Setting page for managed profile.
|
* Setting page for managed profile.
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.applications.managedomainurls;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
public class InstantAppWebActionPreferenceController extends TogglePreferenceController {
|
public class InstantAppWebActionPreferenceController extends TogglePreferenceController {
|
||||||
@@ -43,4 +44,9 @@ public class InstantAppWebActionPreferenceController extends TogglePreferenceCon
|
|||||||
return Settings.Secure.putInt(mContext.getContentResolver(),
|
return Settings.Secure.putInt(mContext.getContentResolver(),
|
||||||
Settings.Secure.INSTANT_APPS_ENABLED, isChecked ? 1 : 0);
|
Settings.Secure.INSTANT_APPS_ENABLED, isChecked ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_apps;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -27,6 +27,7 @@ import android.util.Log;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
public class AutoRestorePreferenceController extends TogglePreferenceController {
|
public class AutoRestorePreferenceController extends TogglePreferenceController {
|
||||||
@@ -84,4 +85,9 @@ public class AutoRestorePreferenceController extends TogglePreferenceController
|
|||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
@@ -91,4 +91,10 @@ public class BiometricSettingsAppPreferenceController extends TogglePreferenceCo
|
|||||||
public final boolean isSliceable() {
|
public final boolean isSliceable() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// not needed since it's not sliceable
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -73,4 +73,10 @@ public class BiometricSettingsKeyguardPreferenceController extends TogglePrefere
|
|||||||
public final boolean isSliceable() {
|
public final boolean isSliceable() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// not needed since it's not sliceable
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -51,4 +51,10 @@ public abstract class FaceSettingsPreferenceController extends TogglePreferenceC
|
|||||||
public final boolean isSliceable() {
|
public final boolean isSliceable() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// not needed since it's not sliceable
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -98,7 +98,8 @@ public class BluetoothSliceBuilder {
|
|||||||
SettingsSlicesContract.KEY_BLUETOOTH).build();
|
SettingsSlicesContract.KEY_BLUETOOTH).build();
|
||||||
return SliceBuilderUtils.buildSearchResultPageIntent(context,
|
return SliceBuilderUtils.buildSearchResultPageIntent(context,
|
||||||
BluetoothDashboardFragment.class.getName(), null /* key */, screenTitle,
|
BluetoothDashboardFragment.class.getName(), null /* key */, screenTitle,
|
||||||
SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY)
|
SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY,
|
||||||
|
R.string.menu_key_connected_devices)
|
||||||
.setClassName(context.getPackageName(), SubSettings.class.getName())
|
.setClassName(context.getPackageName(), SubSettings.class.getName())
|
||||||
.setData(contentUri);
|
.setData(contentUri);
|
||||||
}
|
}
|
||||||
|
@@ -89,4 +89,7 @@ public abstract class TogglePreferenceController extends BasePreferenceControlle
|
|||||||
public boolean isPublicSlice() {
|
public boolean isPublicSlice() {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public abstract int getSliceHighlightMenuRes();
|
||||||
}
|
}
|
@@ -117,6 +117,12 @@ public class LocationTimeZoneDetectionPreferenceController
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// not needed since it's not sliceable
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
TimeZoneCapabilities timeZoneCapabilities =
|
TimeZoneCapabilities timeZoneCapabilities =
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.development.transcode;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -48,4 +49,9 @@ public class TranscodeDefaultOptionPreferenceController extends TogglePreference
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
|||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
|
|
||||||
import com.android.internal.annotations.VisibleForTesting;
|
import com.android.internal.annotations.VisibleForTesting;
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -50,4 +51,9 @@ public class TranscodeDisableCachePreferenceController extends TogglePreferenceC
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.development.transcode;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -49,4 +50,9 @@ public class TranscodeGlobalTogglePreferenceController extends TogglePreferenceC
|
|||||||
SystemProperties.set(TRANSCODE_ENABLED_PROP_KEY, String.valueOf(isChecked));
|
SystemProperties.set(TRANSCODE_ENABLED_PROP_KEY, String.valueOf(isChecked));
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
|||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
|
|
||||||
import com.android.internal.annotations.VisibleForTesting;
|
import com.android.internal.annotations.VisibleForTesting;
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -50,4 +51,9 @@ public class TranscodeNotificationPreferenceController extends TogglePreferenceC
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.development.transcode;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.os.SystemProperties;
|
import android.os.SystemProperties;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -48,4 +49,9 @@ public class TranscodeUserControlPreferenceController extends TogglePreferenceCo
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -106,4 +106,9 @@ public class AlwaysOnDisplaySlice implements CustomSliceable {
|
|||||||
public Intent getIntent() {
|
public Intent getIntent() {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -67,6 +67,11 @@ public class AmbientDisplayAlwaysOnPreferenceController extends TogglePreference
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isChecked() {
|
public boolean isChecked() {
|
||||||
return getConfig().alwaysOnEnabled(MY_USER);
|
return getConfig().alwaysOnEnabled(MY_USER);
|
||||||
|
@@ -25,6 +25,7 @@ import android.text.TextUtils;
|
|||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||||
@@ -100,4 +101,9 @@ public class AmbientDisplayNotificationsPreferenceController extends
|
|||||||
|
|
||||||
return mConfig;
|
return mConfig;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -61,4 +61,9 @@ public class AutoBrightnessPreferenceController extends TogglePreferenceControll
|
|||||||
? R.string.auto_brightness_summary_on
|
? R.string.auto_brightness_summary_on
|
||||||
: R.string.auto_brightness_summary_off);
|
: R.string.auto_brightness_summary_off);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -20,6 +20,7 @@ import android.text.TextUtils;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
|
||||||
import com.android.internal.view.RotationPolicy;
|
import com.android.internal.view.RotationPolicy;
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
@@ -86,6 +87,11 @@ public class AutoRotatePreferenceController extends TogglePreferenceController i
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isChecked() {
|
public boolean isChecked() {
|
||||||
return !RotationPolicy.isRotationLocked(mContext);
|
return !RotationPolicy.isRotationLocked(mContext);
|
||||||
|
@@ -70,6 +70,11 @@ public class ControlsPrivacyPreferenceController extends TogglePreferenceControl
|
|||||||
refreshSummary(preference);
|
refreshSummary(preference);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
private boolean isEnabled() {
|
private boolean isEnabled() {
|
||||||
return isControlsAvailable();
|
return isControlsAvailable();
|
||||||
}
|
}
|
||||||
|
@@ -95,6 +95,11 @@ public class DarkUIPreferenceController extends TogglePreferenceController imple
|
|||||||
return mUiModeManager.setNightModeActivated(isChecked);
|
return mUiModeManager.setNightModeActivated(isChecked);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
private void showDarkModeDialog() {
|
private void showDarkModeDialog() {
|
||||||
final DarkUIInfoDialogFragment frag = new DarkUIInfoDialogFragment();
|
final DarkUIInfoDialogFragment frag = new DarkUIInfoDialogFragment();
|
||||||
if (mFragment != null && mFragment.getFragmentManager() != null) {
|
if (mFragment != null && mFragment.getFragmentManager() != null) {
|
||||||
|
@@ -21,19 +21,19 @@ import android.hardware.display.ColorDisplayManager;
|
|||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.Looper;
|
import android.os.Looper;
|
||||||
import android.os.UserHandle;
|
|
||||||
import android.provider.Settings.Secure;
|
import android.provider.Settings.Secure;
|
||||||
import android.provider.Settings.System;
|
import android.provider.Settings.System;
|
||||||
|
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnStop;
|
import com.android.settingslib.core.lifecycle.events.OnStop;
|
||||||
|
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
|
||||||
|
|
||||||
public class DisplayWhiteBalancePreferenceController extends TogglePreferenceController
|
public class DisplayWhiteBalancePreferenceController extends TogglePreferenceController
|
||||||
implements LifecycleObserver, OnStart, OnStop {
|
implements LifecycleObserver, OnStart, OnStop {
|
||||||
|
|
||||||
@@ -62,6 +62,11 @@ public class DisplayWhiteBalancePreferenceController extends TogglePreferenceCon
|
|||||||
return getColorDisplayManager().setDisplayWhiteBalanceEnabled(isChecked);
|
return getColorDisplayManager().setDisplayWhiteBalanceEnabled(isChecked);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStart() {
|
public void onStart() {
|
||||||
if (!isAvailable()) {
|
if (!isAvailable()) {
|
||||||
|
@@ -24,6 +24,7 @@ import android.widget.Switch;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||||
@@ -65,6 +66,11 @@ public class NightDisplayActivationPreferenceController extends
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void displayPreference(PreferenceScreen screen) {
|
public void displayPreference(PreferenceScreen screen) {
|
||||||
super.displayPreference(screen);
|
super.displayPreference(screen);
|
||||||
|
@@ -23,6 +23,7 @@ import android.text.TextUtils;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.SliderPreferenceController;
|
import com.android.settings.core.SliderPreferenceController;
|
||||||
import com.android.settings.widget.SeekBarPreference;
|
import com.android.settings.widget.SeekBarPreference;
|
||||||
|
|
||||||
@@ -55,6 +56,11 @@ public class NightDisplayIntensityPreferenceController extends SliderPreferenceC
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void displayPreference(PreferenceScreen screen) {
|
public void displayPreference(PreferenceScreen screen) {
|
||||||
super.displayPreference(screen);
|
super.displayPreference(screen);
|
||||||
|
@@ -95,6 +95,11 @@ public class NightDisplayPreferenceController extends TogglePreferenceController
|
|||||||
preference.setSummary(mTimeFormatter.getAutoModeSummary(mContext, mColorDisplayManager));
|
preference.setSummary(mTimeFormatter.getAutoModeSummary(mContext, mColorDisplayManager));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onActivated(boolean activated) {
|
public void onActivated(boolean activated) {
|
||||||
updateState(mPreference);
|
updateState(mPreference);
|
||||||
|
@@ -119,6 +119,11 @@ public class PeakRefreshRatePreferenceController extends TogglePreferenceControl
|
|||||||
mContext.getContentResolver(), Settings.System.PEAK_REFRESH_RATE, peakRefreshRate);
|
mContext.getContentResolver(), Settings.System.PEAK_REFRESH_RATE, peakRefreshRate);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStart() {
|
public void onStart() {
|
||||||
mDeviceConfigDisplaySettings.startListening();
|
mDeviceConfigDisplaySettings.startListening();
|
||||||
|
@@ -43,6 +43,7 @@ import androidx.preference.PreferenceScreen;
|
|||||||
|
|
||||||
import com.android.internal.annotations.VisibleForTesting;
|
import com.android.internal.annotations.VisibleForTesting;
|
||||||
import com.android.internal.view.RotationPolicy;
|
import com.android.internal.view.RotationPolicy;
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||||
@@ -157,6 +158,11 @@ public class SmartAutoRotateController extends TogglePreferenceController implem
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
static boolean isRotationResolverServiceAvailable(Context context) {
|
static boolean isRotationResolverServiceAvailable(Context context) {
|
||||||
final PackageManager packageManager = context.getPackageManager();
|
final PackageManager packageManager = context.getPackageManager();
|
||||||
final String resolvePackage = packageManager.getRotationResolverPackageName();
|
final String resolvePackage = packageManager.getRotationResolverPackageName();
|
||||||
|
@@ -22,7 +22,6 @@ import static android.provider.Settings.Secure.CAMERA_AUTOROTATE;
|
|||||||
import static com.android.settings.display.SmartAutoRotateController.hasSufficientPermission;
|
import static com.android.settings.display.SmartAutoRotateController.hasSufficientPermission;
|
||||||
import static com.android.settings.display.SmartAutoRotateController.isRotationResolverServiceAvailable;
|
import static com.android.settings.display.SmartAutoRotateController.isRotationResolverServiceAvailable;
|
||||||
|
|
||||||
import android.text.TextUtils;
|
|
||||||
import android.app.settings.SettingsEnums;
|
import android.app.settings.SettingsEnums;
|
||||||
import android.content.BroadcastReceiver;
|
import android.content.BroadcastReceiver;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
@@ -32,6 +31,7 @@ import android.hardware.SensorPrivacyManager;
|
|||||||
import android.os.PowerManager;
|
import android.os.PowerManager;
|
||||||
import android.os.UserHandle;
|
import android.os.UserHandle;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
import android.text.TextUtils;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
@@ -90,6 +90,11 @@ public class SmartAutoRotatePreferenceController extends TogglePreferenceControl
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void displayPreference(PreferenceScreen screen) {
|
public void displayPreference(PreferenceScreen screen) {
|
||||||
super.displayPreference(screen);
|
super.displayPreference(screen);
|
||||||
|
@@ -72,6 +72,11 @@ public class WalletPrivacyPreferenceController extends TogglePreferenceControlle
|
|||||||
refreshSummary(preference);
|
refreshSummary(preference);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
private boolean isEnabled() {
|
private boolean isEnabled() {
|
||||||
return mClient.isWalletServiceAvailable();
|
return mClient.isWalletServiceAvailable();
|
||||||
}
|
}
|
||||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
|||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.dashboard.DashboardFragment;
|
import com.android.settings.dashboard.DashboardFragment;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settings.widget.SettingsMainSwitchPreferenceController;
|
import com.android.settings.widget.SettingsMainSwitchPreferenceController;
|
||||||
@@ -67,4 +68,9 @@ public class StartNowPreferenceController extends SettingsMainSwitchPreferenceCo
|
|||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -52,6 +52,12 @@ public class EmergencyGestureSoundPreferenceController extends TogglePreferenceC
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// not needed since it's not sliceable
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isChecked() {
|
public boolean isChecked() {
|
||||||
return mEmergencyNumberUtils.getEmergencyGestureSoundEnabled();
|
return mEmergencyNumberUtils.getEmergencyGestureSoundEnabled();
|
||||||
|
@@ -117,6 +117,12 @@ public class FlashlightSlice implements CustomSliceable {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// no landing page in Settings
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
private static String getCameraId(Context context) throws CameraAccessException {
|
private static String getCameraId(Context context) throws CameraAccessException {
|
||||||
final CameraManager cameraManager = context.getSystemService(CameraManager.class);
|
final CameraManager cameraManager = context.getSystemService(CameraManager.class);
|
||||||
final String[] ids = cameraManager.getCameraIdList();
|
final String[] ids = cameraManager.getCameraIdList();
|
||||||
|
@@ -24,6 +24,7 @@ import android.text.TextUtils;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.BasePreferenceController;
|
import com.android.settings.core.BasePreferenceController;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
|
|
||||||
@@ -61,6 +62,11 @@ public class SmartBatteryPreferenceController extends BasePreferenceController i
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_battery;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updateState(Preference preference) {
|
public void updateState(Preference preference) {
|
||||||
super.updateState(preference);
|
super.updateState(preference);
|
||||||
|
@@ -118,6 +118,11 @@ public class BatterySaverButtonPreferenceController extends
|
|||||||
false /* needFirstTimeWarning */);
|
false /* needFirstTimeWarning */);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_battery;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onPowerSaveModeChanged() {
|
public void onPowerSaveModeChanged() {
|
||||||
mHandler.postDelayed(() -> onPowerSaveModeChangedInternal(),
|
mHandler.postDelayed(() -> onPowerSaveModeChangedInternal(),
|
||||||
|
@@ -8,6 +8,7 @@ import android.text.TextUtils;
|
|||||||
|
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
|
|
||||||
import com.android.settings.R;
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
@@ -59,4 +60,9 @@ public class BatterySaverStickyPreferenceController extends TogglePreferenceCont
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_battery;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.gestures;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -50,4 +51,9 @@ public class GestureNavigationSettingsAssistController extends TogglePreferenceC
|
|||||||
return SystemNavigationPreferenceController.isGestureAvailable(mContext) ? AVAILABLE
|
return SystemNavigationPreferenceController.isGestureAvailable(mContext) ? AVAILABLE
|
||||||
: UNSUPPORTED_ON_DEVICE;
|
: UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -78,6 +78,11 @@ public abstract class GesturePreferenceController extends TogglePreferenceContro
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
|
|
||||||
protected abstract String getVideoPrefKey();
|
protected abstract String getVideoPrefKey();
|
||||||
|
|
||||||
protected boolean canHandleClicks() {
|
protected boolean canHandleClicks() {
|
||||||
|
@@ -25,10 +25,13 @@ import com.android.settings.dashboard.DashboardFragment;
|
|||||||
import com.android.settings.search.BaseSearchIndexProvider;
|
import com.android.settings.search.BaseSearchIndexProvider;
|
||||||
import com.android.settingslib.search.SearchIndexable;
|
import com.android.settingslib.search.SearchIndexable;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@SearchIndexable
|
@SearchIndexable
|
||||||
public class GestureSettings extends DashboardFragment {
|
public class GestureSettings extends DashboardFragment {
|
||||||
|
|
||||||
private static final String TAG = "GestureSettings";
|
private static final String TAG = "GestureSettings";
|
||||||
|
private static final String PREF_KEY_PREVENT_RINGING = "gesture_prevent_ringing_summary";
|
||||||
|
|
||||||
private AmbientDisplayConfiguration mAmbientDisplayConfig;
|
private AmbientDisplayConfiguration mAmbientDisplayConfig;
|
||||||
|
|
||||||
@@ -63,5 +66,13 @@ public class GestureSettings extends DashboardFragment {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||||
new BaseSearchIndexProvider(R.xml.gestures);
|
new BaseSearchIndexProvider(R.xml.gestures) {
|
||||||
|
@Override
|
||||||
|
public List<String> getNonIndexableKeys(Context context) {
|
||||||
|
final List<String> keys = super.getNonIndexableKeys(context);
|
||||||
|
// de-duplicated due to another same entry in Sound page
|
||||||
|
keys.add(PREF_KEY_PREVENT_RINGING);
|
||||||
|
return keys;
|
||||||
|
}
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@@ -120,6 +120,11 @@ public class LongPressPowerButtonPreferenceController extends TogglePreferenceCo
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
|
|
||||||
private void refreshStateDisplay() {
|
private void refreshStateDisplay() {
|
||||||
if (mAssistSwitch != null) {
|
if (mAssistSwitch != null) {
|
||||||
mAssistSwitch.setSummary(getSummary());
|
mAssistSwitch.setSummary(getSummary());
|
||||||
|
@@ -21,6 +21,7 @@ import android.net.Uri;
|
|||||||
|
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.widget.SettingsMainSwitchPreferenceController;
|
import com.android.settings.widget.SettingsMainSwitchPreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnStart;
|
import com.android.settingslib.core.lifecycle.events.OnStart;
|
||||||
@@ -92,4 +93,9 @@ public class OneHandedMainSwitchPreferenceController extends
|
|||||||
mPreference.setChecked(isChecked());
|
mPreference.setChecked(isChecked());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -137,6 +137,11 @@ public class PreventRingingParentPreferenceController extends TogglePreferenceCo
|
|||||||
return UNSUPPORTED_ON_DEVICE;
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_sound;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStart() {
|
public void onStart() {
|
||||||
if (mSettingObserver != null) {
|
if (mSettingObserver != null) {
|
||||||
|
@@ -147,11 +147,17 @@ public class BatteryFixSlice implements CustomSliceable {
|
|||||||
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
PowerUsageSummary.class.getName(), BatteryTipPreferenceController.PREF_NAME,
|
PowerUsageSummary.class.getName(), BatteryTipPreferenceController.PREF_NAME,
|
||||||
screenTitle,
|
screenTitle,
|
||||||
SettingsEnums.SLICE)
|
SettingsEnums.SLICE,
|
||||||
|
this)
|
||||||
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
||||||
.setData(contentUri);
|
.setData(contentUri);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_battery;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onNotifyChange(Intent intent) {
|
public void onNotifyChange(Intent intent) {
|
||||||
}
|
}
|
||||||
|
@@ -130,11 +130,17 @@ public class BluetoothDevicesSlice implements CustomSliceable {
|
|||||||
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
ConnectedDeviceDashboardFragment.class.getName(), "" /* key */,
|
ConnectedDeviceDashboardFragment.class.getName(), "" /* key */,
|
||||||
screenTitle,
|
screenTitle,
|
||||||
SettingsEnums.SLICE)
|
SettingsEnums.SLICE,
|
||||||
|
this)
|
||||||
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
||||||
.setData(getUri());
|
.setData(getUri());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_connected_devices;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onNotifyChange(Intent intent) {
|
public void onNotifyChange(Intent intent) {
|
||||||
final boolean enableBluetooth = intent.getBooleanExtra(EXTRA_ENABLE_BLUETOOTH, false);
|
final boolean enableBluetooth = intent.getBooleanExtra(EXTRA_ENABLE_BLUETOOTH, false);
|
||||||
|
@@ -117,8 +117,14 @@ public class ContextualAdaptiveSleepSlice implements CustomSliceable {
|
|||||||
final Uri contentUri = new Uri.Builder().appendPath(PREF_NAME).build();
|
final Uri contentUri = new Uri.Builder().appendPath(PREF_NAME).build();
|
||||||
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
ScreenTimeoutSettings.class.getName(), PREF_NAME, screenTitle.toString(),
|
ScreenTimeoutSettings.class.getName(), PREF_NAME, screenTitle.toString(),
|
||||||
SettingsEnums.SLICE).setClassName(mContext.getPackageName(),
|
SettingsEnums.SLICE, this)
|
||||||
SubSettings.class.getName()).setData(contentUri);
|
.setClassName(mContext.getPackageName(),
|
||||||
|
SubSettings.class.getName()).setData(contentUri);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
}
|
}
|
||||||
|
|
||||||
private PendingIntent getPrimaryAction() {
|
private PendingIntent getPrimaryAction() {
|
||||||
|
@@ -148,6 +148,11 @@ public class DarkThemeSlice implements CustomSliceable {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_display;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Class getBackgroundWorkerClass() {
|
public Class getBackgroundWorkerClass() {
|
||||||
return DarkThemeWorker.class;
|
return DarkThemeWorker.class;
|
||||||
|
@@ -133,13 +133,18 @@ public class FaceSetupSlice implements CustomSliceable {
|
|||||||
SecuritySettings.class.getName(),
|
SecuritySettings.class.getName(),
|
||||||
FaceStatusPreferenceController.KEY_FACE_SETTINGS,
|
FaceStatusPreferenceController.KEY_FACE_SETTINGS,
|
||||||
mContext.getText(R.string.security_settings_face_settings_enroll).toString(),
|
mContext.getText(R.string.security_settings_face_settings_enroll).toString(),
|
||||||
SettingsEnums.SLICE)
|
SettingsEnums.SLICE, this)
|
||||||
.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
||||||
} else {
|
} else {
|
||||||
return new Intent(mContext, FaceReEnrollDialog.class);
|
return new Intent(mContext, FaceReEnrollDialog.class);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_security;
|
||||||
|
}
|
||||||
|
|
||||||
private static RowBuilder buildRowBuilder(CharSequence title, CharSequence subTitle,
|
private static RowBuilder buildRowBuilder(CharSequence title, CharSequence subTitle,
|
||||||
IconCompat icon, Context context, Intent intent) {
|
IconCompat icon, Context context, Intent intent) {
|
||||||
final SliceAction primarySliceAction = SliceAction.createDeeplink(
|
final SliceAction primarySliceAction = SliceAction.createDeeplink(
|
||||||
|
@@ -109,11 +109,17 @@ public class LowStorageSlice implements CustomSliceable {
|
|||||||
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
StorageDashboardFragment.class.getName(), "" /* key */,
|
StorageDashboardFragment.class.getName(), "" /* key */,
|
||||||
screenTitle,
|
screenTitle,
|
||||||
SettingsEnums.SLICE)
|
SettingsEnums.SLICE,
|
||||||
|
this)
|
||||||
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
||||||
.setData(CustomSliceRegistry.LOW_STORAGE_SLICE_URI);
|
.setData(CustomSliceRegistry.LOW_STORAGE_SLICE_URI);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_storage;
|
||||||
|
}
|
||||||
|
|
||||||
private RowBuilder buildRowBuilder(CharSequence title, String summary, IconCompat icon) {
|
private RowBuilder buildRowBuilder(CharSequence title, String summary, IconCompat icon) {
|
||||||
final SliceAction primarySliceAction = SliceAction.createDeeplink(
|
final SliceAction primarySliceAction = SliceAction.createDeeplink(
|
||||||
PendingIntent.getActivity(mContext, 0, getIntent(), PendingIntent.FLAG_IMMUTABLE),
|
PendingIntent.getActivity(mContext, 0, getIntent(), PendingIntent.FLAG_IMMUTABLE),
|
||||||
|
@@ -100,6 +100,11 @@ public class GameControllerPreferenceController extends TogglePreferenceControll
|
|||||||
Settings.System.VIBRATE_INPUT_DEVICES, isChecked ? 1 : 0);
|
Settings.System.VIBRATE_INPUT_DEVICES, isChecked ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_system;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onInputDeviceAdded(int deviceId) {
|
public void onInputDeviceAdded(int deviceId) {
|
||||||
updateState(mPreference);
|
updateState(mPreference);
|
||||||
|
@@ -1,5 +1,6 @@
|
|||||||
# Bug component: 34867
|
# Bug component: 34867
|
||||||
include platform/frameworks/base:/services/core/java/com/android/server/inputmethod/OWNERS
|
include platform/frameworks/base:/services/core/java/com/android/server/inputmethod/OWNERS
|
||||||
|
include /OWNERS
|
||||||
|
|
||||||
# Settings for physical keyboard and game pad are better to be reviewed by the input team
|
# Settings for physical keyboard and game pad are better to be reviewed by the input team
|
||||||
per-file GameControllerPreferenceController.java = file: platform/frameworks/base:/services/core/java/com/android/server/input/OWNERS
|
per-file GameControllerPreferenceController.java = file: platform/frameworks/base:/services/core/java/com/android/server/input/OWNERS
|
||||||
|
@@ -67,6 +67,11 @@ public class BluetoothScanningMainSwitchPreferenceController extends TogglePrefe
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_location;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
||||||
if (isChecked != isChecked()) {
|
if (isChecked != isChecked()) {
|
||||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
|||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.provider.DeviceConfig;
|
import android.provider.DeviceConfig;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
@@ -54,4 +55,9 @@ public class LocationIndicatorsPreferenceController extends TogglePreferenceCont
|
|||||||
return mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_LOCATION)
|
return mContext.getPackageManager().hasSystemFeature(PackageManager.FEATURE_LOCATION)
|
||||||
? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_location;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -88,11 +88,16 @@ public class LocationSlice implements CustomSliceable {
|
|||||||
final Uri contentUri = new Uri.Builder().appendPath(KEY_LOCATION).build();
|
final Uri contentUri = new Uri.Builder().appendPath(KEY_LOCATION).build();
|
||||||
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
LocationSettings.class.getName(), KEY_LOCATION, screenTitle,
|
LocationSettings.class.getName(), KEY_LOCATION, screenTitle,
|
||||||
SettingsEnums.LOCATION)
|
SettingsEnums.LOCATION, this)
|
||||||
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
||||||
.setData(contentUri);
|
.setData(contentUri);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_location;
|
||||||
|
}
|
||||||
|
|
||||||
private PendingIntent getPrimaryAction() {
|
private PendingIntent getPrimaryAction() {
|
||||||
final Intent intent = getIntent();
|
final Intent intent = getIntent();
|
||||||
return PendingIntent.getActivity(mContext, 0 /* requestCode */,
|
return PendingIntent.getActivity(mContext, 0 /* requestCode */,
|
||||||
|
@@ -68,6 +68,11 @@ public class WifiScanningMainSwitchPreferenceController extends TogglePreference
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_location;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
public void onSwitchChanged(Switch switchView, boolean isChecked) {
|
||||||
if (isChecked != isChecked()) {
|
if (isChecked != isChecked()) {
|
||||||
|
@@ -92,6 +92,11 @@ public class MediaOutputIndicatorSlice implements CustomSliceable {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_connected_devices;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Class getBackgroundWorkerClass() {
|
public Class getBackgroundWorkerClass() {
|
||||||
return MediaOutputIndicatorWorker.class;
|
return MediaOutputIndicatorWorker.class;
|
||||||
|
@@ -181,7 +181,9 @@ public class RemoteMediaSlice implements CustomSliceable {
|
|||||||
final Intent intent = SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
final Intent intent = SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
SoundSettings.class.getName(),
|
SoundSettings.class.getName(),
|
||||||
id,
|
id,
|
||||||
mContext.getText(R.string.sound_settings).toString(), 0);
|
mContext.getText(R.string.sound_settings).toString(),
|
||||||
|
0 /* sourceMetricsCategory */,
|
||||||
|
R.string.menu_key_sound);
|
||||||
intent.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
intent.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
||||||
intent.setData(contentUri);
|
intent.setData(contentUri);
|
||||||
final PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent,
|
final PendingIntent pendingIntent = PendingIntent.getActivity(mContext, 0, intent,
|
||||||
@@ -221,6 +223,11 @@ public class RemoteMediaSlice implements CustomSliceable {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_connected_devices;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Class getBackgroundWorkerClass() {
|
public Class getBackgroundWorkerClass() {
|
||||||
return MediaDeviceUpdateWorker.class;
|
return MediaDeviceUpdateWorker.class;
|
||||||
|
@@ -22,6 +22,7 @@ import android.provider.Settings;
|
|||||||
|
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.widget.SettingsMainSwitchPreferenceController;
|
import com.android.settings.widget.SettingsMainSwitchPreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -62,4 +63,9 @@ public class AdaptiveConnectivityTogglePreferenceController extends
|
|||||||
mWifiManager.setWifiScoringEnabled(isChecked);
|
mWifiManager.setWifiScoringEnabled(isChecked);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_network;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -120,6 +120,11 @@ public class AirplaneModePreferenceController extends TogglePreferenceController
|
|||||||
return isAvailable(mContext) ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
return isAvailable(mContext) ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_network;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStart() {
|
public void onStart() {
|
||||||
if (isAvailable()) {
|
if (isAvailable()) {
|
||||||
|
@@ -22,6 +22,7 @@ import androidx.lifecycle.Lifecycle;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.wifi.WifiPickerTrackerHelper;
|
import com.android.settings.wifi.WifiPickerTrackerHelper;
|
||||||
@@ -88,6 +89,11 @@ public class CarrierWifiTogglePreferenceController extends TogglePreferenceContr
|
|||||||
updateCarrierNetworkPreference();
|
updateCarrierNetworkPreference();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_network;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onWifiStateChanged() {
|
public void onWifiStateChanged() {
|
||||||
updateCarrierNetworkPreference();
|
updateCarrierNetworkPreference();
|
||||||
|
@@ -290,7 +290,7 @@ public class ProviderModelSlice extends WifiSlice {
|
|||||||
final String screenTitle = mContext.getText(R.string.provider_internet_settings).toString();
|
final String screenTitle = mContext.getText(R.string.provider_internet_settings).toString();
|
||||||
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
return SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
NetworkProviderSettings.class.getName(), "" /* key */, screenTitle,
|
NetworkProviderSettings.class.getName(), "" /* key */, screenTitle,
|
||||||
SettingsEnums.SLICE)
|
SettingsEnums.SLICE, this)
|
||||||
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
.setClassName(mContext.getPackageName(), SubSettings.class.getName())
|
||||||
.setData(getUri());
|
.setData(getUri());
|
||||||
}
|
}
|
||||||
|
@@ -25,6 +25,7 @@ import androidx.lifecycle.OnLifecycleEvent;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.datausage.DataSaverBackend;
|
import com.android.settings.datausage.DataSaverBackend;
|
||||||
|
|
||||||
@@ -117,6 +118,11 @@ public abstract class TetherBasePreferenceController extends TogglePreferenceCon
|
|||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_network;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onTetherStateUpdated(@TetherEnabler.TetheringState int state) {
|
public void onTetherStateUpdated(@TetherEnabler.TetheringState int state) {
|
||||||
mTetheringState = state;
|
mTetheringState = state;
|
||||||
|
@@ -145,6 +145,11 @@ public class MobileDataSlice implements CustomSliceable {
|
|||||||
return new Intent(mContext, MobileNetworkActivity.class);
|
return new Intent(mContext, MobileNetworkActivity.class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_network;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Class<? extends SliceBackgroundWorker> getBackgroundWorkerClass() {
|
public Class<? extends SliceBackgroundWorker> getBackgroundWorkerClass() {
|
||||||
return MobileDataWorker.class;
|
return MobileDataWorker.class;
|
||||||
|
@@ -65,6 +65,12 @@ public abstract class TelephonyTogglePreferenceController extends TogglePreferen
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// not needed since it's not sliceable
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get carrier config based on specific subscription id.
|
* Get carrier config based on specific subscription id.
|
||||||
*
|
*
|
||||||
|
@@ -27,6 +27,7 @@ import android.widget.Switch;
|
|||||||
|
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.slices.SliceBackgroundWorker;
|
import com.android.settings.slices.SliceBackgroundWorker;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
@@ -58,7 +59,7 @@ public class NfcPreferenceController extends TogglePreferenceController
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
mPreference = (MainSwitchPreference) screen.findPreference(getPreferenceKey());
|
mPreference = screen.findPreference(getPreferenceKey());
|
||||||
mPreference.addOnSwitchChangeListener(this);
|
mPreference.addOnSwitchChangeListener(this);
|
||||||
mNfcEnabler = new NfcEnabler(mContext, mPreference);
|
mNfcEnabler = new NfcEnabler(mContext, mPreference);
|
||||||
}
|
}
|
||||||
@@ -103,6 +104,11 @@ public class NfcPreferenceController extends TogglePreferenceController
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_connected_devices;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Class<? extends SliceBackgroundWorker> getBackgroundWorkerClass() {
|
public Class<? extends SliceBackgroundWorker> getBackgroundWorkerClass() {
|
||||||
return NfcSliceWorker.class;
|
return NfcSliceWorker.class;
|
||||||
|
@@ -21,6 +21,7 @@ import android.nfc.NfcAdapter;
|
|||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
import androidx.preference.SwitchPreference;
|
import androidx.preference.SwitchPreference;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnPause;
|
import com.android.settingslib.core.lifecycle.events.OnPause;
|
||||||
@@ -81,6 +82,11 @@ public class SecureNfcPreferenceController extends TogglePreferenceController
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_connected_devices;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onResume() {
|
public void onResume() {
|
||||||
if (mSecureNfcEnabler != null) {
|
if (mSecureNfcEnabler != null) {
|
||||||
|
@@ -30,6 +30,7 @@ import androidx.annotation.VisibleForTesting;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.PreferenceControllerMixin;
|
import com.android.settings.core.PreferenceControllerMixin;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
@@ -87,6 +88,11 @@ public class BadgingNotificationPreferenceController extends TogglePreferenceCon
|
|||||||
return TextUtils.equals(getPreferenceKey(), "notification_badging");
|
return TextUtils.equals(getPreferenceKey(), "notification_badging");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_notifications;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isChecked() {
|
public boolean isChecked() {
|
||||||
return Settings.Secure.getInt(mContext.getContentResolver(),
|
return Settings.Secure.getInt(mContext.getContentResolver(),
|
||||||
|
@@ -88,6 +88,12 @@ public class BubbleNotificationPreferenceController extends
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
// not needed since it's not sliceable
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isChecked() {
|
public boolean isChecked() {
|
||||||
return Settings.Global.getInt(mContext.getContentResolver(),
|
return Settings.Global.getInt(mContext.getContentResolver(),
|
||||||
|
@@ -24,6 +24,7 @@ import android.provider.Settings;
|
|||||||
|
|
||||||
import androidx.fragment.app.Fragment;
|
import androidx.fragment.app.Fragment;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
import com.google.common.annotations.VisibleForTesting;
|
import com.google.common.annotations.VisibleForTesting;
|
||||||
@@ -73,6 +74,11 @@ public class NotificationAssistantPreferenceController extends TogglePreferenceC
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_notifications;
|
||||||
|
}
|
||||||
|
|
||||||
protected void setNotificationAssistantGranted(ComponentName cn) {
|
protected void setNotificationAssistantGranted(ComponentName cn) {
|
||||||
if (Settings.Secure.getIntForUser(mContext.getContentResolver(),
|
if (Settings.Secure.getIntForUser(mContext.getContentResolver(),
|
||||||
Settings.Secure.NAS_SETTINGS_UPDATED, 0, mUserId) == 0) {
|
Settings.Secure.NAS_SETTINGS_UPDATED, 0, mUserId) == 0) {
|
||||||
|
@@ -28,6 +28,7 @@ import android.provider.Settings;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||||
import com.android.settingslib.core.lifecycle.events.OnPause;
|
import com.android.settingslib.core.lifecycle.events.OnPause;
|
||||||
@@ -86,6 +87,11 @@ public class PulseNotificationPreferenceController extends TogglePreferenceContr
|
|||||||
isChecked ? ON : OFF);
|
isChecked ? ON : OFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_notifications;
|
||||||
|
}
|
||||||
|
|
||||||
class SettingObserver extends ContentObserver {
|
class SettingObserver extends ContentObserver {
|
||||||
|
|
||||||
private final Uri NOTIFICATION_LIGHT_PULSE_URI =
|
private final Uri NOTIFICATION_LIGHT_PULSE_URI =
|
||||||
|
@@ -32,6 +32,7 @@ import android.provider.Settings;
|
|||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
import com.android.internal.widget.LockPatternUtils;
|
import com.android.internal.widget.LockPatternUtils;
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
import com.android.settingslib.RestrictedLockUtils;
|
import com.android.settingslib.RestrictedLockUtils;
|
||||||
@@ -146,6 +147,11 @@ public class RedactNotificationPreferenceController extends TogglePreferenceCont
|
|||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_notifications;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onStart() {
|
public void onStart() {
|
||||||
mContext.getContentResolver().registerContentObserver(
|
mContext.getContentResolver().registerContentObserver(
|
||||||
|
@@ -18,6 +18,7 @@ package com.android.settings.notification;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
import com.google.common.annotations.VisibleForTesting;
|
import com.google.common.annotations.VisibleForTesting;
|
||||||
@@ -52,4 +53,9 @@ public class SilentStatusBarPreferenceController extends TogglePreferenceControl
|
|||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
return AVAILABLE;
|
return AVAILABLE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_notifications;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -21,10 +21,11 @@ import static android.provider.Settings.Secure.SHOW_NOTIFICATION_SNOOZE;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
|
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
|
||||||
|
|
||||||
import androidx.annotation.VisibleForTesting;
|
import androidx.annotation.VisibleForTesting;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
public class SnoozeNotificationPreferenceController extends TogglePreferenceController {
|
public class SnoozeNotificationPreferenceController extends TogglePreferenceController {
|
||||||
|
|
||||||
private static final String TAG = "SnoozeNotifPrefContr";
|
private static final String TAG = "SnoozeNotifPrefContr";
|
||||||
@@ -53,4 +54,9 @@ public class SnoozeNotificationPreferenceController extends TogglePreferenceCont
|
|||||||
return Settings.Secure.putInt(mContext.getContentResolver(),
|
return Settings.Secure.putInt(mContext.getContentResolver(),
|
||||||
SHOW_NOTIFICATION_SNOOZE, isChecked ? ON : OFF);
|
SHOW_NOTIFICATION_SNOOZE, isChecked ? ON : OFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_notifications;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -20,6 +20,7 @@ import android.content.Context;
|
|||||||
import android.media.AudioManager;
|
import android.media.AudioManager;
|
||||||
import android.media.Spatializer;
|
import android.media.Spatializer;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -53,4 +54,9 @@ public class SpatialAudioPreferenceController extends TogglePreferenceController
|
|||||||
mSpatializer.setEnabled(isChecked);
|
mSpatializer.setEnabled(isChecked);
|
||||||
return isChecked == isChecked();
|
return isChecked == isChecked();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_notifications;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -23,6 +23,7 @@ import androidx.lifecycle.LifecycleObserver;
|
|||||||
import androidx.lifecycle.OnLifecycleEvent;
|
import androidx.lifecycle.OnLifecycleEvent;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.notification.VolumeSeekBarPreference.Callback;
|
import com.android.settings.notification.VolumeSeekBarPreference.Callback;
|
||||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||||
|
|
||||||
@@ -75,6 +76,11 @@ public abstract class VolumeSeekBarPreferenceController extends
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_sound;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getSliderPosition() {
|
public int getSliderPosition() {
|
||||||
if (mPreference != null) {
|
if (mPreference != null) {
|
||||||
|
@@ -120,7 +120,7 @@ public class ZenModeSliceBuilder {
|
|||||||
final String screenTitle = context.getText(R.string.zen_mode_settings_title).toString();
|
final String screenTitle = context.getText(R.string.zen_mode_settings_title).toString();
|
||||||
return SliceBuilderUtils.buildSearchResultPageIntent(context,
|
return SliceBuilderUtils.buildSearchResultPageIntent(context,
|
||||||
ZenModeSettings.class.getName(), ZEN_MODE_SLICE_KEY, screenTitle,
|
ZenModeSettings.class.getName(), ZEN_MODE_SLICE_KEY, screenTitle,
|
||||||
SettingsEnums.NOTIFICATION_ZEN_MODE)
|
SettingsEnums.NOTIFICATION_ZEN_MODE, R.string.menu_key_notifications)
|
||||||
.setClassName(context.getPackageName(), SubSettings.class.getName())
|
.setClassName(context.getPackageName(), SubSettings.class.getName())
|
||||||
.setData(contentUri);
|
.setData(contentUri);
|
||||||
}
|
}
|
||||||
|
@@ -62,7 +62,8 @@ public class NfcPanel implements PanelContent {
|
|||||||
AdvancedConnectedDeviceDashboardFragment.class.getName(),
|
AdvancedConnectedDeviceDashboardFragment.class.getName(),
|
||||||
null /* key */,
|
null /* key */,
|
||||||
screenTitle,
|
screenTitle,
|
||||||
SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY);
|
SettingsEnums.SETTINGS_CONNECTED_DEVICE_CATEGORY,
|
||||||
|
R.string.menu_key_connected_devices);
|
||||||
intent.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
intent.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||||
return intent;
|
return intent;
|
||||||
|
@@ -62,10 +62,11 @@ public class WifiPanel implements PanelContent {
|
|||||||
final String screenTitle =
|
final String screenTitle =
|
||||||
mContext.getText(R.string.wifi_settings).toString();
|
mContext.getText(R.string.wifi_settings).toString();
|
||||||
final Intent intent = SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
final Intent intent = SliceBuilderUtils.buildSearchResultPageIntent(mContext,
|
||||||
WifiSettings.class.getName(),
|
WifiSettings.class.getName(),
|
||||||
null /* key */,
|
null /* key */,
|
||||||
screenTitle,
|
screenTitle,
|
||||||
SettingsEnums.WIFI);
|
SettingsEnums.WIFI,
|
||||||
|
R.string.menu_key_network);
|
||||||
intent.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
intent.setClassName(mContext.getPackageName(), SubSettings.class.getName());
|
||||||
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||||
return intent;
|
return intent;
|
||||||
|
@@ -18,8 +18,8 @@ package com.android.settings.privacy;
|
|||||||
|
|
||||||
import android.annotation.NonNull;
|
import android.annotation.NonNull;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.provider.Settings;
|
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.utils.ContentCaptureUtils;
|
import com.android.settings.utils.ContentCaptureUtils;
|
||||||
|
|
||||||
@@ -46,4 +46,9 @@ public final class EnableContentCapturePreferenceController extends TogglePrefer
|
|||||||
&& ContentCaptureUtils.getServiceSettingsComponentName() == null;
|
&& ContentCaptureUtils.getServiceSettingsComponentName() == null;
|
||||||
return available ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
return available ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_privacy;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -28,8 +28,8 @@ import android.util.Log;
|
|||||||
|
|
||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.dashboard.profileselector.UserAdapter;
|
import com.android.settings.dashboard.profileselector.UserAdapter;
|
||||||
import com.android.settings.utils.ContentCaptureUtils;
|
import com.android.settings.utils.ContentCaptureUtils;
|
||||||
@@ -88,6 +88,11 @@ public final class EnableContentCaptureWithServiceSettingsPreferenceController
|
|||||||
return available ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
return available ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_privacy;
|
||||||
|
}
|
||||||
|
|
||||||
private static final class ProfileSelectDialog {
|
private static final class ProfileSelectDialog {
|
||||||
public static void show(Context context, Preference pref) {
|
public static void show(Context context, Preference pref) {
|
||||||
final UserManager userManager = UserManager.get(context);
|
final UserManager userManager = UserManager.get(context);
|
||||||
|
@@ -22,6 +22,7 @@ import android.content.Context;
|
|||||||
|
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.utils.SensorPrivacyManagerHelper;
|
import com.android.settings.utils.SensorPrivacyManagerHelper;
|
||||||
import com.android.settingslib.RestrictedLockUtilsInternal;
|
import com.android.settingslib.RestrictedLockUtilsInternal;
|
||||||
@@ -80,4 +81,9 @@ public abstract class SensorToggleController extends TogglePreferenceController
|
|||||||
(sensor, blocked) -> updateState(screen.findPreference(mPreferenceKey)),
|
(sensor, blocked) -> updateState(screen.findPreference(mPreferenceKey)),
|
||||||
mCallbackExecutor);
|
mCallbackExecutor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_privacy;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -27,6 +27,7 @@ import androidx.lifecycle.OnLifecycleEvent;
|
|||||||
import androidx.preference.Preference;
|
import androidx.preference.Preference;
|
||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -72,6 +73,11 @@ public class ShowClipAccessNotificationPreferenceController
|
|||||||
mPreference = screen.findPreference(getPreferenceKey());
|
mPreference = screen.findPreference(getPreferenceKey());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_privacy;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Registers a DeviceConfig listener on start.
|
* Registers a DeviceConfig listener on start.
|
||||||
*/
|
*/
|
||||||
|
@@ -58,5 +58,9 @@ public class ShowPasswordPreferenceController extends TogglePreferenceController
|
|||||||
? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_security;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -28,6 +28,7 @@ import androidx.preference.Preference;
|
|||||||
import androidx.preference.PreferenceScreen;
|
import androidx.preference.PreferenceScreen;
|
||||||
|
|
||||||
import com.android.internal.widget.LockPatternUtils;
|
import com.android.internal.widget.LockPatternUtils;
|
||||||
|
import com.android.settings.R;
|
||||||
import com.android.settings.Utils;
|
import com.android.settings.Utils;
|
||||||
import com.android.settings.core.TogglePreferenceController;
|
import com.android.settings.core.TogglePreferenceController;
|
||||||
import com.android.settings.overlay.FeatureFactory;
|
import com.android.settings.overlay.FeatureFactory;
|
||||||
@@ -118,6 +119,11 @@ public class VisiblePatternProfilePreferenceController extends TogglePreferenceC
|
|||||||
mPreference = screen.findPreference(getPreferenceKey());
|
mPreference = screen.findPreference(getPreferenceKey());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getSliceHighlightMenuRes() {
|
||||||
|
return R.string.menu_key_security;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onResume() {
|
public void onResume() {
|
||||||
mPreference.setVisible(isAvailable());
|
mPreference.setVisible(isAvailable());
|
||||||
|
@@ -103,6 +103,9 @@ public interface CustomSliceable extends Sliceable {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
int getSliceHighlightMenuRes();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Build an instance of a {@link CustomSliceable} which has a {@link Context}-only constructor.
|
* Build an instance of a {@link CustomSliceable} which has a {@link Context}-only constructor.
|
||||||
*/
|
*/
|
||||||
|
@@ -16,6 +16,8 @@
|
|||||||
|
|
||||||
package com.android.settings.slices;
|
package com.android.settings.slices;
|
||||||
|
|
||||||
|
import static android.provider.Settings.EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY;
|
||||||
|
|
||||||
import static com.android.settings.SettingsActivity.EXTRA_IS_FROM_SLICE;
|
import static com.android.settings.SettingsActivity.EXTRA_IS_FROM_SLICE;
|
||||||
import static com.android.settings.core.BasePreferenceController.DISABLED_DEPENDENT_SETTING;
|
import static com.android.settings.core.BasePreferenceController.DISABLED_DEPENDENT_SETTING;
|
||||||
import static com.android.settings.slices.SettingsSliceProvider.EXTRA_SLICE_KEY;
|
import static com.android.settings.slices.SettingsSliceProvider.EXTRA_SLICE_KEY;
|
||||||
@@ -203,8 +205,15 @@ public class SliceBuilderUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static Intent buildSearchResultPageIntent(Context context, String className, String key,
|
public static Intent buildSearchResultPageIntent(Context context, String className, String key,
|
||||||
String screenTitle, int sourceMetricsCategory) {
|
String screenTitle, int sourceMetricsCategory, int highlightMenuRes) {
|
||||||
final Bundle args = new Bundle();
|
final Bundle args = new Bundle();
|
||||||
|
String highlightMenuKey = null;
|
||||||
|
if (highlightMenuRes != 0) {
|
||||||
|
highlightMenuKey = context.getString(highlightMenuRes);
|
||||||
|
if (TextUtils.isEmpty(highlightMenuKey)) {
|
||||||
|
Log.w(TAG, "Invalid menu key res from: " + screenTitle);
|
||||||
|
}
|
||||||
|
}
|
||||||
args.putString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY, key);
|
args.putString(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY, key);
|
||||||
final Intent searchDestination = new SubSettingLauncher(context)
|
final Intent searchDestination = new SubSettingLauncher(context)
|
||||||
.setDestination(className)
|
.setDestination(className)
|
||||||
@@ -215,6 +224,7 @@ public class SliceBuilderUtils {
|
|||||||
searchDestination
|
searchDestination
|
||||||
.putExtra(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY, key)
|
.putExtra(SettingsActivity.EXTRA_FRAGMENT_ARG_KEY, key)
|
||||||
.putExtra(EXTRA_IS_FROM_SLICE, true)
|
.putExtra(EXTRA_IS_FROM_SLICE, true)
|
||||||
|
.putExtra(EXTRA_SETTINGS_EMBEDDED_DEEP_LINK_HIGHLIGHT_MENU_KEY, highlightMenuKey)
|
||||||
.setAction("com.android.settings.SEARCH_RESULT_TRAMPOLINE")
|
.setAction("com.android.settings.SEARCH_RESULT_TRAMPOLINE")
|
||||||
.setComponent(null);
|
.setComponent(null);
|
||||||
searchDestination.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
|
searchDestination.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK);
|
||||||
@@ -222,13 +232,22 @@ public class SliceBuilderUtils {
|
|||||||
return searchDestination;
|
return searchDestination;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Build a search result page intent for {@link CustomSliceable}
|
||||||
|
*/
|
||||||
|
public static Intent buildSearchResultPageIntent(Context context, String className, String key,
|
||||||
|
String screenTitle, int sourceMetricsCategory, CustomSliceable sliceable) {
|
||||||
|
return buildSearchResultPageIntent(context, className, key, screenTitle,
|
||||||
|
sourceMetricsCategory, sliceable.getSliceHighlightMenuRes());
|
||||||
|
}
|
||||||
|
|
||||||
public static Intent getContentIntent(Context context, SliceData sliceData) {
|
public static Intent getContentIntent(Context context, SliceData sliceData) {
|
||||||
final Uri contentUri = new Uri.Builder().appendPath(sliceData.getKey()).build();
|
final Uri contentUri = new Uri.Builder().appendPath(sliceData.getKey()).build();
|
||||||
final String screenTitle = TextUtils.isEmpty(sliceData.getScreenTitle()) ? null
|
final String screenTitle = TextUtils.isEmpty(sliceData.getScreenTitle()) ? null
|
||||||
: sliceData.getScreenTitle().toString();
|
: sliceData.getScreenTitle().toString();
|
||||||
final Intent intent = buildSearchResultPageIntent(context,
|
final Intent intent = buildSearchResultPageIntent(context,
|
||||||
sliceData.getFragmentClassName(), sliceData.getKey(),
|
sliceData.getFragmentClassName(), sliceData.getKey(),
|
||||||
screenTitle, 0 /* TODO */);
|
screenTitle, 0 /* TODO */, sliceData.getHighlightMenuRes());
|
||||||
intent.setClassName(context.getPackageName(), SubSettings.class.getName());
|
intent.setClassName(context.getPackageName(), SubSettings.class.getName());
|
||||||
intent.setData(contentUri);
|
intent.setData(contentUri);
|
||||||
return intent;
|
return intent;
|
||||||
|
@@ -19,6 +19,7 @@ package com.android.settings.slices;
|
|||||||
import android.annotation.IntDef;
|
import android.annotation.IntDef;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
|
import android.util.Log;
|
||||||
|
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
@@ -50,6 +51,8 @@ public class SliceData {
|
|||||||
int SLIDER = 2;
|
int SLIDER = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static final String TAG = "SliceData";
|
||||||
|
|
||||||
private final String mKey;
|
private final String mKey;
|
||||||
|
|
||||||
private final String mTitle;
|
private final String mTitle;
|
||||||
@@ -68,6 +71,8 @@ public class SliceData {
|
|||||||
|
|
||||||
private final String mPreferenceController;
|
private final String mPreferenceController;
|
||||||
|
|
||||||
|
private final int mHighlightMenuRes;
|
||||||
|
|
||||||
@SliceType
|
@SliceType
|
||||||
private final int mSliceType;
|
private final int mSliceType;
|
||||||
|
|
||||||
@@ -119,6 +124,10 @@ public class SliceData {
|
|||||||
return mUnavailableSliceSubtitle;
|
return mUnavailableSliceSubtitle;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getHighlightMenuRes() {
|
||||||
|
return mHighlightMenuRes;
|
||||||
|
}
|
||||||
|
|
||||||
public boolean isPublicSlice() {
|
public boolean isPublicSlice() {
|
||||||
return mIsPublicSlice;
|
return mIsPublicSlice;
|
||||||
}
|
}
|
||||||
@@ -136,6 +145,7 @@ public class SliceData {
|
|||||||
mSliceType = builder.mSliceType;
|
mSliceType = builder.mSliceType;
|
||||||
mUnavailableSliceSubtitle = builder.mUnavailableSliceSubtitle;
|
mUnavailableSliceSubtitle = builder.mUnavailableSliceSubtitle;
|
||||||
mIsPublicSlice = builder.mIsPublicSlice;
|
mIsPublicSlice = builder.mIsPublicSlice;
|
||||||
|
mHighlightMenuRes = builder.mHighlightMenuRes;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -175,6 +185,8 @@ public class SliceData {
|
|||||||
|
|
||||||
private String mUnavailableSliceSubtitle;
|
private String mUnavailableSliceSubtitle;
|
||||||
|
|
||||||
|
private int mHighlightMenuRes;
|
||||||
|
|
||||||
private boolean mIsPublicSlice;
|
private boolean mIsPublicSlice;
|
||||||
|
|
||||||
public Builder setKey(String key) {
|
public Builder setKey(String key) {
|
||||||
@@ -233,6 +245,11 @@ public class SliceData {
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Builder setHighlightMenuRes(int highlightMenuRes) {
|
||||||
|
mHighlightMenuRes = highlightMenuRes;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
public Builder setIsPublicSlice(boolean isPublicSlice) {
|
public Builder setIsPublicSlice(boolean isPublicSlice) {
|
||||||
mIsPublicSlice = isPublicSlice;
|
mIsPublicSlice = isPublicSlice;
|
||||||
return this;
|
return this;
|
||||||
@@ -255,6 +272,10 @@ public class SliceData {
|
|||||||
throw new InvalidSliceDataException("Preference Controller cannot be empty");
|
throw new InvalidSliceDataException("Preference Controller cannot be empty");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (mHighlightMenuRes == 0) {
|
||||||
|
Log.w(TAG, "Highlight menu key res is empty: " + mPrefControllerClassName);
|
||||||
|
}
|
||||||
|
|
||||||
return new SliceData(this);
|
return new SliceData(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -213,6 +213,7 @@ class SliceDataConverter {
|
|||||||
final String unavailableSliceSubtitle = bundle.getString(
|
final String unavailableSliceSubtitle = bundle.getString(
|
||||||
METADATA_UNAVAILABLE_SLICE_SUBTITLE);
|
METADATA_UNAVAILABLE_SLICE_SUBTITLE);
|
||||||
final boolean isPublicSlice = controller.isPublicSlice();
|
final boolean isPublicSlice = controller.isPublicSlice();
|
||||||
|
final int highlightMenuRes = controller.getSliceHighlightMenuRes();
|
||||||
|
|
||||||
final SliceData xmlSlice = new SliceData.Builder()
|
final SliceData xmlSlice = new SliceData.Builder()
|
||||||
.setKey(key)
|
.setKey(key)
|
||||||
@@ -226,6 +227,7 @@ class SliceDataConverter {
|
|||||||
.setSliceType(sliceType)
|
.setSliceType(sliceType)
|
||||||
.setUnavailableSliceSubtitle(unavailableSliceSubtitle)
|
.setUnavailableSliceSubtitle(unavailableSliceSubtitle)
|
||||||
.setIsPublicSlice(isPublicSlice)
|
.setIsPublicSlice(isPublicSlice)
|
||||||
|
.setHighlightMenuRes(highlightMenuRes)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
xmlSliceData.add(xmlSlice);
|
xmlSliceData.add(xmlSlice);
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user