Add metric logs for special cases in Display and Battery page
Bug: 137559984 Test: robotest Change-Id: I60f6237ac2c533306879f46ee4c25d54002cf0e9
This commit is contained in:
@@ -107,8 +107,7 @@ public class LockscreenDashboardFragment extends DashboardFragment
|
||||
KEY_LOCK_SCREEN_NOTIFICATON_WORK_PROFILE);
|
||||
lifecycle.addObserver(notificationController);
|
||||
controllers.add(notificationController);
|
||||
mOwnerInfoPreferenceController =
|
||||
new OwnerInfoPreferenceController(context, this, lifecycle);
|
||||
mOwnerInfoPreferenceController = new OwnerInfoPreferenceController(context, this);
|
||||
controllers.add(mOwnerInfoPreferenceController);
|
||||
|
||||
return controllers;
|
||||
@@ -137,7 +136,7 @@ public class LockscreenDashboardFragment extends DashboardFragment
|
||||
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
||||
controllers.add(new LockScreenNotificationPreferenceController(context));
|
||||
controllers.add(new OwnerInfoPreferenceController(
|
||||
context, null /* fragment */, null /* lifecycle */));
|
||||
context, null /* fragment */));
|
||||
return controllers;
|
||||
}
|
||||
|
||||
|
||||
@@ -17,11 +17,10 @@ package com.android.settings.security;
|
||||
|
||||
import android.content.Context;
|
||||
import android.os.UserHandle;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.Preference.OnPreferenceClickListener;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.internal.widget.LockPatternUtils;
|
||||
@@ -31,18 +30,19 @@ import com.android.settingslib.RestrictedLockUtils.EnforcedAdmin;
|
||||
import com.android.settingslib.RestrictedLockUtilsInternal;
|
||||
import com.android.settingslib.RestrictedPreference;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.core.lifecycle.LifecycleObserver;
|
||||
import com.android.settingslib.core.lifecycle.ObservablePreferenceFragment;
|
||||
import com.android.settingslib.core.lifecycle.events.OnResume;
|
||||
|
||||
public class OwnerInfoPreferenceController extends AbstractPreferenceController
|
||||
implements PreferenceControllerMixin, LifecycleObserver, OnResume {
|
||||
|
||||
private static final String KEY_OWNER_INFO = "owner_info_settings";
|
||||
@VisibleForTesting
|
||||
static final String KEY_OWNER_INFO = "owner_info_settings";
|
||||
private static final int MY_USER_ID = UserHandle.myUserId();
|
||||
|
||||
private final LockPatternUtils mLockPatternUtils;
|
||||
private final Fragment mParent;
|
||||
private final ObservablePreferenceFragment mParent;
|
||||
private RestrictedPreference mOwnerInfoPref;
|
||||
|
||||
// Container fragment should implement this in order to show the correct summary
|
||||
@@ -50,12 +50,12 @@ public class OwnerInfoPreferenceController extends AbstractPreferenceController
|
||||
void onOwnerInfoUpdated();
|
||||
}
|
||||
|
||||
public OwnerInfoPreferenceController(Context context, Fragment parent, Lifecycle lifecycle ) {
|
||||
public OwnerInfoPreferenceController(Context context, ObservablePreferenceFragment parent) {
|
||||
super(context);
|
||||
mParent = parent;
|
||||
mLockPatternUtils = new LockPatternUtils(context);
|
||||
if (lifecycle != null) {
|
||||
lifecycle.addObserver(this);
|
||||
if (parent != null) {
|
||||
parent.getSettingsLifecycle().addObserver(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -80,6 +80,15 @@ public class OwnerInfoPreferenceController extends AbstractPreferenceController
|
||||
return KEY_OWNER_INFO;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean handlePreferenceTreeClick(Preference preference) {
|
||||
if (TextUtils.equals(getPreferenceKey(), preference.getKey())) {
|
||||
OwnerInfoSettings.show(mParent);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public void updateEnableState() {
|
||||
if (mOwnerInfoPref == null) {
|
||||
return;
|
||||
@@ -90,16 +99,6 @@ public class OwnerInfoPreferenceController extends AbstractPreferenceController
|
||||
} else {
|
||||
mOwnerInfoPref.setDisabledByAdmin(null);
|
||||
mOwnerInfoPref.setEnabled(!mLockPatternUtils.isLockScreenDisabled(MY_USER_ID));
|
||||
if (mOwnerInfoPref.isEnabled()) {
|
||||
mOwnerInfoPref.setOnPreferenceClickListener(
|
||||
new OnPreferenceClickListener() {
|
||||
@Override
|
||||
public boolean onPreferenceClick(Preference preference) {
|
||||
OwnerInfoSettings.show(mParent);
|
||||
return true;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -20,15 +20,12 @@ import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
import android.os.UserHandle;
|
||||
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.android.internal.widget.LockPatternUtils;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.dashboard.DashboardFragment;
|
||||
import com.android.settings.search.BaseSearchIndexProvider;
|
||||
import com.android.settings.security.OwnerInfoPreferenceController;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
import com.android.settingslib.core.lifecycle.Lifecycle;
|
||||
import com.android.settingslib.search.SearchIndexable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -61,8 +58,7 @@ public class ScreenLockSettings extends DashboardFragment
|
||||
@Override
|
||||
protected List<AbstractPreferenceController> createPreferenceControllers(Context context) {
|
||||
mLockPatternUtils = new LockPatternUtils(context);
|
||||
return buildPreferenceControllers(context, this /* parent */, getSettingsLifecycle(),
|
||||
mLockPatternUtils);
|
||||
return buildPreferenceControllers(context, this /* parent */, mLockPatternUtils);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -71,7 +67,7 @@ public class ScreenLockSettings extends DashboardFragment
|
||||
}
|
||||
|
||||
private static List<AbstractPreferenceController> buildPreferenceControllers(Context context,
|
||||
Fragment parent, Lifecycle lifecycle, LockPatternUtils lockPatternUtils) {
|
||||
DashboardFragment parent, LockPatternUtils lockPatternUtils) {
|
||||
final List<AbstractPreferenceController> controllers = new ArrayList<>();
|
||||
controllers.add(new PatternVisiblePreferenceController(
|
||||
context, MY_USER_ID, lockPatternUtils));
|
||||
@@ -79,11 +75,10 @@ public class ScreenLockSettings extends DashboardFragment
|
||||
context, MY_USER_ID, lockPatternUtils));
|
||||
controllers.add(new LockAfterTimeoutPreferenceController(
|
||||
context, MY_USER_ID, lockPatternUtils));
|
||||
controllers.add(new OwnerInfoPreferenceController(context, parent, lifecycle));
|
||||
controllers.add(new OwnerInfoPreferenceController(context, parent));
|
||||
return controllers;
|
||||
}
|
||||
|
||||
|
||||
public static final BaseSearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||
new BaseSearchIndexProvider(R.xml.screen_lock_settings) {
|
||||
|
||||
@@ -91,7 +86,7 @@ public class ScreenLockSettings extends DashboardFragment
|
||||
public List<AbstractPreferenceController> createPreferenceControllers(
|
||||
Context context) {
|
||||
return buildPreferenceControllers(context, null /* parent */,
|
||||
null /* lifecycle */, new LockPatternUtils(context));
|
||||
new LockPatternUtils(context));
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user