diff --git a/res/layout/screen_pinning_instructions.xml b/res/layout/screen_pinning_instructions.xml
deleted file mode 100644
index fea5ed8fe0a..00000000000
--- a/res/layout/screen_pinning_instructions.xml
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/res/values/dimens.xml b/res/values/dimens.xml
index f97da1f7d76..242b690bb9d 100755
--- a/res/values/dimens.xml
+++ b/res/values/dimens.xml
@@ -158,9 +158,6 @@
354dip
-
- 40dp
-
8dip
@@ -329,10 +326,6 @@
32dp
12dp
-
- 64dp
- 64dp
-
8dp
12dp
diff --git a/res/xml/screen_pinning_settings.xml b/res/xml/screen_pinning_settings.xml
index f27e4aa1431..7ff7f1de34b 100644
--- a/res/xml/screen_pinning_settings.xml
+++ b/res/xml/screen_pinning_settings.xml
@@ -16,6 +16,7 @@
@@ -23,4 +24,10 @@
android:key="use_screen_lock"
android:title="@string/screen_pinning_unlock_none" />
+
+
diff --git a/src/com/android/settings/security/ScreenPinningSettings.java b/src/com/android/settings/security/ScreenPinningSettings.java
index 849db406975..aa3e86201a3 100644
--- a/src/com/android/settings/security/ScreenPinningSettings.java
+++ b/src/com/android/settings/security/ScreenPinningSettings.java
@@ -23,9 +23,6 @@ import android.os.Bundle;
import android.os.UserHandle;
import android.provider.SearchIndexableResource;
import android.provider.Settings;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
import android.widget.Switch;
import androidx.preference.Preference;
@@ -41,6 +38,7 @@ import com.android.settings.password.ChooseLockGeneric;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.widget.SwitchBar;
import com.android.settingslib.search.SearchIndexable;
+import com.android.settingslib.widget.FooterPreference;
import java.util.Arrays;
import java.util.List;
@@ -52,11 +50,13 @@ import java.util.List;
public class ScreenPinningSettings extends SettingsPreferenceFragment
implements SwitchBar.OnSwitchChangeListener {
- private static final CharSequence KEY_USE_SCREEN_LOCK = "use_screen_lock";
+ private static final String KEY_USE_SCREEN_LOCK = "use_screen_lock";
+ private static final String KEY_FOOTER = "screen_pinning_settings_screen_footer";
private static final int CHANGE_LOCK_METHOD_REQUEST = 43;
private SwitchBar mSwitchBar;
private SwitchPreference mUseScreenLock;
+ private FooterPreference mFooterPreference;
private LockPatternUtils mLockPatternUtils;
@Override
@@ -77,6 +77,13 @@ public class ScreenPinningSettings extends SettingsPreferenceFragment
mSwitchBar.addOnSwitchChangeListener(this);
mSwitchBar.show();
mSwitchBar.setChecked(isLockToAppEnabled(getActivity()));
+
+ addPreferencesFromResource(R.xml.screen_pinning_settings);
+
+ final PreferenceScreen root = getPreferenceScreen();
+ mUseScreenLock = root.findPreference(KEY_USE_SCREEN_LOCK);
+ mFooterPreference = root.findPreference(KEY_FOOTER);
+ updateDisplay();
}
@Override
@@ -84,16 +91,6 @@ public class ScreenPinningSettings extends SettingsPreferenceFragment
return R.string.help_url_screen_pinning;
}
- @Override
- public void onViewCreated(View view, Bundle savedInstanceState) {
- super.onViewCreated(view, savedInstanceState);
- ViewGroup parent = (ViewGroup) view.findViewById(android.R.id.list_container);
- View emptyView = LayoutInflater.from(getContext())
- .inflate(R.layout.screen_pinning_instructions, parent, false);
- parent.addView(emptyView);
- setEmptyView(emptyView);
- }
-
@Override
public void onDestroyView() {
super.onDestroyView();
@@ -192,16 +189,10 @@ public class ScreenPinningSettings extends SettingsPreferenceFragment
updateDisplay();
}
- public void updateDisplay() {
- PreferenceScreen root = getPreferenceScreen();
- if (root != null) {
- root.removeAll();
- }
+ private void updateDisplay() {
if (isLockToAppEnabled(getActivity())) {
- addPreferencesFromResource(R.xml.screen_pinning_settings);
- root = getPreferenceScreen();
-
- mUseScreenLock = (SwitchPreference) root.findPreference(KEY_USE_SCREEN_LOCK);
+ mFooterPreference.setVisible(false);
+ mUseScreenLock.setVisible(true);
mUseScreenLock.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newValue) {
@@ -210,6 +201,9 @@ public class ScreenPinningSettings extends SettingsPreferenceFragment
});
mUseScreenLock.setChecked(isScreenLockUsed());
mUseScreenLock.setTitle(getCurrentSecurityTitle());
+ } else {
+ mFooterPreference.setVisible(true);
+ mUseScreenLock.setVisible(false);
}
}