Merge "Show "Backup service isn't active" if backup isnt active for work profile"
This commit is contained in:
@@ -639,10 +639,14 @@ public class SettingsActivity extends SettingsBaseActivity
|
|||||||
showDev, isAdmin)
|
showDev, isAdmin)
|
||||||
|| somethingChanged;
|
|| somethingChanged;
|
||||||
|
|
||||||
// Enable/disable backup settings depending on whether backup is activated for the user.
|
// For profiles, we want them to be included in the profile select dialog even if
|
||||||
boolean isBackupActive = new BackupSettingsHelper(this).isBackupServiceActive();
|
// backup is not activated.
|
||||||
|
// For other users, enable/disable backup settings depending on whether backup is activated
|
||||||
|
// for the user.
|
||||||
|
boolean enableBackupTile = um.isManagedProfile()
|
||||||
|
|| new BackupSettingsHelper(this).isBackupServiceActive();
|
||||||
somethingChanged = setTileEnabled(changedList, new ComponentName(packageName,
|
somethingChanged = setTileEnabled(changedList, new ComponentName(packageName,
|
||||||
UserBackupSettingsActivity.class.getName()), isBackupActive, isAdmin)
|
UserBackupSettingsActivity.class.getName()), enableBackupTile, isAdmin)
|
||||||
|| somethingChanged;
|
|| somethingChanged;
|
||||||
|
|
||||||
somethingChanged = setTileEnabled(changedList, new ComponentName(packageName,
|
somethingChanged = setTileEnabled(changedList, new ComponentName(packageName,
|
||||||
|
@@ -28,9 +28,6 @@ public class BackupInactivePreferenceController extends BasePreferenceController
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getAvailabilityStatus() {
|
public int getAvailabilityStatus() {
|
||||||
if (!PrivacySettingsUtils.isAdminUser(mContext)) {
|
|
||||||
return DISABLED_FOR_USER;
|
|
||||||
}
|
|
||||||
if (PrivacySettingsUtils.isInvisibleKey(mContext, PrivacySettingsUtils.BACKUP_INACTIVE)) {
|
if (PrivacySettingsUtils.isInvisibleKey(mContext, PrivacySettingsUtils.BACKUP_INACTIVE)) {
|
||||||
return UNSUPPORTED_ON_DEVICE;
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
@@ -20,8 +20,6 @@ import static com.google.common.truth.Truth.assertThat;
|
|||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
|
||||||
import androidx.preference.Preference;
|
|
||||||
|
|
||||||
import com.android.settings.core.BasePreferenceController;
|
import com.android.settings.core.BasePreferenceController;
|
||||||
|
|
||||||
import org.junit.After;
|
import org.junit.After;
|
||||||
@@ -38,7 +36,6 @@ import org.robolectric.annotation.Config;
|
|||||||
public class BackupInactivePreferenceControllerTest {
|
public class BackupInactivePreferenceControllerTest {
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
private BackupInactivePreferenceController mController;
|
private BackupInactivePreferenceController mController;
|
||||||
private Preference mPreference;
|
|
||||||
|
|
||||||
@Before
|
@Before
|
||||||
public void setUp() {
|
public void setUp() {
|
||||||
@@ -54,23 +51,14 @@ public class BackupInactivePreferenceControllerTest {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getAvailabilityStatus_isAdmiUser_isnotInvisibleKey_shouldBeAvailable() {
|
public void getAvailabilityStatus_isnotInvisibleKey_shouldBeAvailable() {
|
||||||
ShadowPrivacySettingsUtils.setIsAdminUser(true);
|
|
||||||
ShadowPrivacySettingsUtils.setIsInvisibleKey(false);
|
ShadowPrivacySettingsUtils.setIsInvisibleKey(false);
|
||||||
assertThat(mController.getAvailabilityStatus())
|
assertThat(mController.getAvailabilityStatus())
|
||||||
.isEqualTo(BasePreferenceController.AVAILABLE);
|
.isEqualTo(BasePreferenceController.AVAILABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void getAvailabilityStatus_isnotAdmiUser_shouldBeDisabledForUser() {
|
public void getAvailabilityStatus_isInvisibleKey_shouldBeDisabledUnsupported() {
|
||||||
ShadowPrivacySettingsUtils.setIsAdminUser(false);
|
|
||||||
assertThat(mController.getAvailabilityStatus())
|
|
||||||
.isEqualTo(BasePreferenceController.DISABLED_FOR_USER);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Test
|
|
||||||
public void getAvailabilityStatus_isAdmiUser_isInvisibleKey_shouldBeDisabledUnsupported() {
|
|
||||||
ShadowPrivacySettingsUtils.setIsAdminUser(true);
|
|
||||||
ShadowPrivacySettingsUtils.setIsInvisibleKey(true);
|
ShadowPrivacySettingsUtils.setIsInvisibleKey(true);
|
||||||
assertThat(mController.getAvailabilityStatus())
|
assertThat(mController.getAvailabilityStatus())
|
||||||
.isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE);
|
.isEqualTo(BasePreferenceController.UNSUPPORTED_ON_DEVICE);
|
||||||
|
Reference in New Issue
Block a user