Merge "Transferring display name logic to GAL provider" into honeycomb
diff --git a/src/com/android/exchange/provider/ExchangeDirectoryProvider.java b/src/com/android/exchange/provider/ExchangeDirectoryProvider.java
index b267da9..f3616cc 100644
--- a/src/com/android/exchange/provider/ExchangeDirectoryProvider.java
+++ b/src/com/android/exchange/provider/ExchangeDirectoryProvider.java
@@ -224,7 +224,17 @@
                                     row[i] = R.string.exchange_name;
                                 }
                             } else if (column.equals(Directory.DISPLAY_NAME)) {
-                                row[i] = account.name;
+                                // If the account name is an email address, extract
+                                // the domain name and use it as the directory display name
+                                final String accountName = account.name;
+                                int atIndex = accountName.indexOf('@');
+                                if (atIndex != -1 && atIndex < accountName.length() - 2) {
+                                    final char firstLetter = Character.toUpperCase(
+                                            accountName.charAt(atIndex + 1));
+                                    row[i] = firstLetter + accountName.substring(atIndex + 2);
+                                } else {
+                                    row[i] = account.name;
+                                }
                             } else if (column.equals(Directory.EXPORT_SUPPORT)) {
                                 row[i] = Directory.EXPORT_SUPPORT_SAME_ACCOUNT_ONLY;
                             } else if (column.equals(Directory.SHORTCUT_SUPPORT)) {