diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index d200da3f..6a15965d 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -48,6 +48,7 @@
+
0
true
+
diff --git a/src/com/cyanogenmod/setupwizard/setup/CyanogenSettingsPage.java b/src/com/cyanogenmod/setupwizard/setup/CyanogenSettingsPage.java
index 8ebe33f6..bdff3def 100644
--- a/src/com/cyanogenmod/setupwizard/setup/CyanogenSettingsPage.java
+++ b/src/com/cyanogenmod/setupwizard/setup/CyanogenSettingsPage.java
@@ -36,6 +36,7 @@ import android.text.Spannable;
import android.text.SpannableString;
import android.text.SpannableStringBuilder;
import android.text.Spanned;
+import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.text.style.ClickableSpan;
import android.util.Log;
@@ -46,6 +47,8 @@ import android.widget.CheckBox;
import android.widget.ImageView;
import android.widget.TextView;
+import com.android.internal.widget.LockPatternUtils;
+
import com.cyanogenmod.setupwizard.R;
import com.cyanogenmod.setupwizard.SetupWizardApp;
import com.cyanogenmod.setupwizard.cmstats.SetupStats;
@@ -145,6 +148,7 @@ public class CyanogenSettingsPage extends SetupPage {
});
handleEnableMetrics();
handleDefaultThemeSetup();
+ handleDefaultLockscreenSetup();
}
private void handleEnableMetrics() {
@@ -173,6 +177,24 @@ public class CyanogenSettingsPage extends SetupPage {
}
}
+ private void handleDefaultLockscreenSetup() {
+ String defaultLockscreenComponent = mContext.getResources().getString(
+ R.string.default_custom_lockscreen_component);
+ if (!TextUtils.isEmpty(defaultLockscreenComponent)) {
+ ComponentName cn =
+ ComponentName.unflattenFromString(defaultLockscreenComponent);
+ if (cn != null) {
+ try {
+ Log.i(TAG, "Applying default lockscreen");
+ LockPatternUtils util = new LockPatternUtils(mContext);
+ util.setThirdPartyKeyguard(cn);
+ } catch (PackageManager.NameNotFoundException | SecurityException e) {
+ Log.w(TAG, "Error setting default lockscreen: " + cn, e);
+ }
+ }
+ }
+ }
+
private static boolean hideKeyDisabler(Context ctx) {
final CMHardwareManager hardware = CMHardwareManager.getInstance(ctx);
return !hardware.isSupported(CMHardwareManager.FEATURE_KEY_DISABLE);