Remove feature flag SETTINGS_GUEST_MODE_UX_CHANGES
Bug b/214031645 has all IC reviews approved and the feature has been merged and tested for more than 3 months. Hence removing the feature flag. Bug: 214031645 Test: SettingsTest, SystemUITests Change-Id: Iccec0a6b2325f9309c25522ad3f093c6bc1f45e6 Merged-In: Iccec0a6b2325f9309c25522ad3f093c6bc1f45e6
This commit is contained in:
@@ -24,7 +24,6 @@ import android.os.Bundle;
|
|||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.UserManager;
|
import android.os.UserManager;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.util.FeatureFlagUtils;
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.appcompat.app.AlertDialog;
|
import androidx.appcompat.app.AlertDialog;
|
||||||
@@ -87,9 +86,7 @@ public class RemoveGuestOnExitPreferenceController extends BasePreferenceControl
|
|||||||
|| !UserManager.isGuestUserAllowEphemeralStateChange()
|
|| !UserManager.isGuestUserAllowEphemeralStateChange()
|
||||||
|| !mUserCaps.isAdmin()
|
|| !mUserCaps.isAdmin()
|
||||||
|| mUserCaps.disallowAddUser()
|
|| mUserCaps.disallowAddUser()
|
||||||
|| mUserCaps.disallowAddUserSetByAdmin()
|
|| mUserCaps.disallowAddUserSetByAdmin()) {
|
||||||
|| !FeatureFlagUtils.isEnabled(mContext,
|
|
||||||
FeatureFlagUtils.SETTINGS_GUEST_MODE_UX_CHANGES)) {
|
|
||||||
return DISABLED_FOR_USER;
|
return DISABLED_FOR_USER;
|
||||||
} else {
|
} else {
|
||||||
return mUserCaps.mUserSwitcherEnabled ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
|
return mUserCaps.mUserSwitcherEnabled ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
|
||||||
|
@@ -49,7 +49,6 @@ import android.os.UserManager;
|
|||||||
import android.provider.ContactsContract;
|
import android.provider.ContactsContract;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.FeatureFlagUtils;
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.util.SparseArray;
|
import android.util.SparseArray;
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
@@ -470,11 +469,6 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
updateUserList();
|
updateUserList();
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isEnableGuestModeUxChanges() {
|
|
||||||
return FeatureFlagUtils.isEnabled(getContext(),
|
|
||||||
FeatureFlagUtils.SETTINGS_GUEST_MODE_UX_CHANGES);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loads profile information for the current user.
|
* Loads profile information for the current user.
|
||||||
*/
|
*/
|
||||||
@@ -1345,33 +1339,25 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
}
|
}
|
||||||
mGuestCategory.setVisible(true);
|
mGuestCategory.setVisible(true);
|
||||||
mGuestExitPreference.setVisible(true);
|
mGuestExitPreference.setVisible(true);
|
||||||
if (isEnableGuestModeUxChanges()) {
|
mGuestResetPreference.setVisible(true);
|
||||||
mGuestResetPreference.setVisible(true);
|
|
||||||
|
|
||||||
boolean isGuestFirstLogin = Settings.Secure.getIntForUser(
|
boolean isGuestFirstLogin = Settings.Secure.getIntForUser(
|
||||||
getContext().getContentResolver(),
|
getContext().getContentResolver(),
|
||||||
SETTING_GUEST_HAS_LOGGED_IN,
|
SETTING_GUEST_HAS_LOGGED_IN,
|
||||||
0,
|
0,
|
||||||
UserHandle.myUserId()) <= 1;
|
UserHandle.myUserId()) <= 1;
|
||||||
String guestExitSummary;
|
String guestExitSummary;
|
||||||
if (mUserCaps.mIsEphemeral) {
|
if (mUserCaps.mIsEphemeral) {
|
||||||
guestExitSummary = getContext().getString(
|
guestExitSummary = getContext().getString(
|
||||||
R.string.guest_notification_ephemeral);
|
R.string.guest_notification_ephemeral);
|
||||||
} else if (isGuestFirstLogin) {
|
} else if (isGuestFirstLogin) {
|
||||||
guestExitSummary = getContext().getString(
|
guestExitSummary = getContext().getString(
|
||||||
R.string.guest_notification_non_ephemeral);
|
R.string.guest_notification_non_ephemeral);
|
||||||
} else {
|
|
||||||
guestExitSummary = getContext().getString(
|
|
||||||
R.string.guest_notification_non_ephemeral_non_first_login);
|
|
||||||
}
|
|
||||||
mGuestExitPreference.setSummary(guestExitSummary);
|
|
||||||
} else {
|
} else {
|
||||||
mGuestExitPreference.setIcon(getEncircledDefaultIcon());
|
guestExitSummary = getContext().getString(
|
||||||
mGuestExitPreference.setTitle(
|
R.string.guest_notification_non_ephemeral_non_first_login);
|
||||||
mGuestUserAutoCreated
|
|
||||||
? com.android.settingslib.R.string.guest_reset_guest
|
|
||||||
: com.android.settingslib.R.string.guest_exit_guest);
|
|
||||||
}
|
}
|
||||||
|
mGuestExitPreference.setSummary(guestExitSummary);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateGuestCategory(Context context, List<UserInfo> users) {
|
private void updateGuestCategory(Context context, List<UserInfo> users) {
|
||||||
@@ -1400,16 +1386,12 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
pref.setOnPreferenceClickListener(this);
|
pref.setOnPreferenceClickListener(this);
|
||||||
pref.setEnabled(canOpenUserDetails);
|
pref.setEnabled(canOpenUserDetails);
|
||||||
pref.setSelectable(true);
|
pref.setSelectable(true);
|
||||||
if (isEnableGuestModeUxChanges()) {
|
Drawable icon = getContext().getDrawable(R.drawable.ic_account_circle_outline);
|
||||||
Drawable icon = getContext().getDrawable(R.drawable.ic_account_circle_outline);
|
icon.setTint(
|
||||||
icon.setTint(
|
getColorAttrDefaultColor(getContext(), android.R.attr.colorControlNormal));
|
||||||
getColorAttrDefaultColor(getContext(), android.R.attr.colorControlNormal));
|
pref.setIcon(encircleUserIcon(
|
||||||
pref.setIcon(encircleUserIcon(
|
UserIcons.convertToBitmapAtUserIconSize(
|
||||||
UserIcons.convertToBitmapAtUserIconSize(
|
getContext().getResources(), icon)));
|
||||||
getContext().getResources(), icon)));
|
|
||||||
} else {
|
|
||||||
pref.setIcon(getEncircledDefaultIcon());
|
|
||||||
}
|
|
||||||
pref.setKey(KEY_USER_GUEST);
|
pref.setKey(KEY_USER_GUEST);
|
||||||
pref.setOrder(Preference.DEFAULT_ORDER);
|
pref.setOrder(Preference.DEFAULT_ORDER);
|
||||||
if (mUserCaps.mDisallowSwitchUser) {
|
if (mUserCaps.mDisallowSwitchUser) {
|
||||||
@@ -1451,13 +1433,6 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
&& mUserCaps.mUserSwitcherEnabled) {
|
&& mUserCaps.mUserSwitcherEnabled) {
|
||||||
isVisible = true;
|
isVisible = true;
|
||||||
mAddGuest.setVisible(true);
|
mAddGuest.setVisible(true);
|
||||||
// when isEnableGuestModeUxChanges() is true, the icon is set via the layout xml
|
|
||||||
// In com.android.settings.users.UserSettingsTest
|
|
||||||
// we disable the check for setIcon being called
|
|
||||||
if (!isEnableGuestModeUxChanges()) {
|
|
||||||
Drawable icon = context.getDrawable(R.drawable.ic_account_circle);
|
|
||||||
mAddGuest.setIcon(centerAndTint(icon));
|
|
||||||
}
|
|
||||||
mAddGuest.setSelectable(true);
|
mAddGuest.setSelectable(true);
|
||||||
if (mGuestUserAutoCreated && mGuestCreationScheduled.get()) {
|
if (mGuestUserAutoCreated && mGuestCreationScheduled.get()) {
|
||||||
mAddGuest.setTitle(com.android.internal.R.string.guest_name);
|
mAddGuest.setTitle(com.android.internal.R.string.guest_name);
|
||||||
@@ -1475,21 +1450,11 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
|
|
||||||
private void updateAddUser(Context context) {
|
private void updateAddUser(Context context) {
|
||||||
updateAddUserCommon(context, mAddUser, mUserCaps.mCanAddRestrictedProfile);
|
updateAddUserCommon(context, mAddUser, mUserCaps.mCanAddRestrictedProfile);
|
||||||
// when isEnableGuestModeUxChanges() is true, the icon is set via the layout xml
|
|
||||||
if (!isEnableGuestModeUxChanges()) {
|
|
||||||
Drawable icon = context.getDrawable(R.drawable.ic_account_circle_filled);
|
|
||||||
mAddUser.setIcon(centerAndTint(icon));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateAddSupervisedUser(Context context) {
|
private void updateAddSupervisedUser(Context context) {
|
||||||
if (!TextUtils.isEmpty(mConfigSupervisedUserCreationPackage)) {
|
if (!TextUtils.isEmpty(mConfigSupervisedUserCreationPackage)) {
|
||||||
updateAddUserCommon(context, mAddSupervisedUser, false);
|
updateAddUserCommon(context, mAddSupervisedUser, false);
|
||||||
// when isEnableGuestModeUxChanges() is true, the icon is set via the layout xml
|
|
||||||
if (!isEnableGuestModeUxChanges()) {
|
|
||||||
Drawable icon = context.getDrawable(R.drawable.ic_add_supervised_user);
|
|
||||||
mAddSupervisedUser.setIcon(centerAndTint(icon));
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
mAddSupervisedUser.setVisible(false);
|
mAddSupervisedUser.setVisible(false);
|
||||||
}
|
}
|
||||||
@@ -1586,28 +1551,17 @@ public class UserSettings extends SettingsPreferenceFragment
|
|||||||
@Override
|
@Override
|
||||||
public boolean onPreferenceClick(Preference pref) {
|
public boolean onPreferenceClick(Preference pref) {
|
||||||
if (isCurrentUserGuest()) {
|
if (isCurrentUserGuest()) {
|
||||||
if (isEnableGuestModeUxChanges()) {
|
if (mGuestResetPreference != null && pref == mGuestResetPreference) {
|
||||||
if (mGuestResetPreference != null && pref == mGuestResetPreference) {
|
showDialog(DIALOG_CONFIRM_RESET_AND_RESTART_GUEST);
|
||||||
showDialog(DIALOG_CONFIRM_RESET_AND_RESTART_GUEST);
|
return true;
|
||||||
return true;
|
}
|
||||||
}
|
if (mGuestExitPreference != null && pref == mGuestExitPreference) {
|
||||||
if (mGuestExitPreference != null && pref == mGuestExitPreference) {
|
if (mUserCaps.mIsEphemeral) {
|
||||||
if (mUserCaps.mIsEphemeral) {
|
showDialog(DIALOG_CONFIRM_EXIT_GUEST_EPHEMERAL);
|
||||||
showDialog(DIALOG_CONFIRM_EXIT_GUEST_EPHEMERAL);
|
} else {
|
||||||
} else {
|
showDialog(DIALOG_CONFIRM_EXIT_GUEST_NON_EPHEMERAL);
|
||||||
showDialog(DIALOG_CONFIRM_EXIT_GUEST_NON_EPHEMERAL);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if (mGuestExitPreference != null && pref == mGuestExitPreference) {
|
|
||||||
if (mGuestUserAutoCreated) {
|
|
||||||
showDialog(DIALOG_CONFIRM_REMOVE_GUEST_WITH_AUTO_CREATE);
|
|
||||||
} else {
|
|
||||||
showDialog(DIALOG_CONFIRM_REMOVE_GUEST);
|
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (pref == mMePreference) {
|
if (pref == mMePreference) {
|
||||||
|
Reference in New Issue
Block a user