Convert EncryptionAndCredential into DashboardFragment

The logic still lives in fragment for now. They will be moved into
PrefControllers in follow-up changes.

Bug: 32953042
Test: RoboTests
Change-Id: I2b03d26b5f4e6bbb37b42f9dc83a9464eb169868
This commit is contained in:
Fan Zhang
2017-10-31 14:27:18 -07:00
parent f60c99af53
commit 9679dba668
5 changed files with 26 additions and 15 deletions

View File

@@ -64,7 +64,7 @@
android:key="encryption_and_credential" android:key="encryption_and_credential"
android:title="@string/encryption_and_credential_settings_title" android:title="@string/encryption_and_credential_settings_title"
android:summary="@string/encryption_and_credential_settings_summary" android:summary="@string/encryption_and_credential_settings_summary"
android:fragment="com.android.settings.EncryptionAndCredential"/> android:fragment="com.android.settings.security.EncryptionAndCredential"/>
<Preference android:key="manage_trust_agents" <Preference android:key="manage_trust_agents"
android:title="@string/manage_trust_agents" android:title="@string/manage_trust_agents"

View File

@@ -183,6 +183,9 @@ public abstract class DashboardFragment extends SettingsPreferenceFragment
} }
} }
@Override
protected abstract int getPreferenceScreenResId();
protected <T extends AbstractPreferenceController> T getPreferenceController(Class<T> clazz) { protected <T extends AbstractPreferenceController> T getPreferenceController(Class<T> clazz) {
AbstractPreferenceController controller = mPreferenceControllers.get(clazz); AbstractPreferenceController controller = mPreferenceControllers.get(clazz);
return (T) controller; return (T) controller;

View File

@@ -23,7 +23,6 @@ import android.support.annotation.XmlRes;
import com.android.settings.DateTimeSettings; import com.android.settings.DateTimeSettings;
import com.android.settings.DeviceInfoSettings; import com.android.settings.DeviceInfoSettings;
import com.android.settings.DisplaySettings; import com.android.settings.DisplaySettings;
import com.android.settings.EncryptionAndCredential;
import com.android.settings.LegalSettings; import com.android.settings.LegalSettings;
import com.android.settings.ScreenPinningSettings; import com.android.settings.ScreenPinningSettings;
import com.android.settings.SecuritySettings; import com.android.settings.SecuritySettings;
@@ -75,6 +74,7 @@ import com.android.settings.notification.ZenModeAutomationSettings;
import com.android.settings.notification.ZenModeBehaviorSettings; import com.android.settings.notification.ZenModeBehaviorSettings;
import com.android.settings.notification.ZenModeSettings; import com.android.settings.notification.ZenModeSettings;
import com.android.settings.print.PrintSettingsFragment; import com.android.settings.print.PrintSettingsFragment;
import com.android.settings.security.EncryptionAndCredential;
import com.android.settings.security.LockscreenDashboardFragment; import com.android.settings.security.LockscreenDashboardFragment;
import com.android.settings.sim.SimSettings; import com.android.settings.sim.SimSettings;
import com.android.settings.support.SupportDashboardActivity; import com.android.settings.support.SupportDashboardActivity;

View File

@@ -1,5 +1,5 @@
/* /*
* Copyright (C) 2007 The Android Open Source Project * Copyright (C) 2017 The Android Open Source Project
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@@ -14,13 +14,11 @@
* limitations under the License. * limitations under the License.
*/ */
package com.android.settings; package com.android.settings.security;
import android.app.Activity;
import android.app.admin.DevicePolicyManager; import android.app.admin.DevicePolicyManager;
import android.content.Context; import android.content.Context;
import android.content.Intent; import android.content.Intent;
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;
@@ -30,11 +28,12 @@ import android.support.v7.preference.PreferenceScreen;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.internal.widget.LockPatternUtils; import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
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.settings.search.Indexable;
import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedPreference; import com.android.settingslib.RestrictedPreference;
import com.android.settingslib.core.AbstractPreferenceController;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@@ -43,7 +42,7 @@ import java.util.List;
* Encryption and Credential settings. * Encryption and Credential settings.
* TODO: Extends this from {@link DashboardFragment} instead * TODO: Extends this from {@link DashboardFragment} instead
*/ */
public class EncryptionAndCredential extends SettingsPreferenceFragment implements Indexable { public class EncryptionAndCredential extends DashboardFragment {
private static final String TAG = "EncryptionAndCredential"; private static final String TAG = "EncryptionAndCredential";
@@ -69,12 +68,19 @@ public class EncryptionAndCredential extends SettingsPreferenceFragment implemen
} }
@Override @Override
public void onCreate(Bundle savedInstanceState) { protected String getLogTag() {
super.onCreate(savedInstanceState); return TAG;
}
final Activity activity = getActivity(); @Override
protected List<AbstractPreferenceController> getPreferenceControllers(Context context) {
mUm = (UserManager) context.getSystemService(Context.USER_SERVICE);
return null;
}
mUm = UserManager.get(activity); @Override
protected int getPreferenceScreenResId() {
return 0;
} }
/** /**

View File

@@ -11,14 +11,14 @@
* distributed under the License is distributed on an "AS IS" BASIS, * distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License * limitations under the License.
*/ */
package com.android.settings; package com.android.settings.security;
import static android.app.admin.DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE; import static android.app.admin.DevicePolicyManager.ENCRYPTION_STATUS_ACTIVE;
import static android.app.admin.DevicePolicyManager.ENCRYPTION_STATUS_INACTIVE; import static android.app.admin.DevicePolicyManager.ENCRYPTION_STATUS_INACTIVE;
import static com.android.settings.EncryptionAndCredential.SEARCH_INDEX_DATA_PROVIDER; import static com.android.settings.security.EncryptionAndCredential.SEARCH_INDEX_DATA_PROVIDER;
import static com.google.common.truth.Truth.assertThat; import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
@@ -28,6 +28,8 @@ import android.os.UserManager;
import android.provider.SearchIndexableResource; import android.provider.SearchIndexableResource;
import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
import com.android.settings.R;
import com.android.settings.TestConfig;
import com.android.settings.search.BaseSearchIndexProvider; import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.testutils.SettingsRobolectricTestRunner; import com.android.settings.testutils.SettingsRobolectricTestRunner;