Merge "Read default confirm credentials title from policy"
diff --git a/src/com/android/settings/ConfirmDeviceCredentialActivity.java b/src/com/android/settings/ConfirmDeviceCredentialActivity.java
index 28c0515..fe22f87 100644
--- a/src/com/android/settings/ConfirmDeviceCredentialActivity.java
+++ b/src/com/android/settings/ConfirmDeviceCredentialActivity.java
@@ -19,6 +19,8 @@
 
 import android.app.Activity;
 import android.app.KeyguardManager;
+import android.app.admin.DevicePolicyManager;
+import android.content.Context;
 import android.content.Intent;
 import android.os.Binder;
 import android.os.Bundle;
@@ -72,6 +74,10 @@
                 Log.e(TAG, "Invalid intent extra", se);
             }
         }
+        // if the client app did not hand in a title, we check whether there is a policy setting it
+        if (title == null) {
+            title = getTitleFromOrganizationName(userId);
+        }
         ChooseLockSettingsHelper helper = new ChooseLockSettingsHelper(this);
         if (!helper.launchConfirmationActivity(0 /* request code */, null /* title */, title,
                 details, false /* returnCredentials */, true /* isExternal */, userId)) {
@@ -84,4 +90,10 @@
     private boolean isInternalActivity() {
         return this instanceof ConfirmDeviceCredentialActivity.InternalActivity;
     }
+
+    private String getTitleFromOrganizationName(int userId) {
+        DevicePolicyManager dpm = (DevicePolicyManager) getSystemService(
+                Context.DEVICE_POLICY_SERVICE);
+        return (dpm != null) ? dpm.getOrganizationNameForUser(userId) : null;
+    }
 }