Jelajahi Sumber

Show display name in navigation drawer

David A. Velasco 9 tahun lalu
induk
melakukan
95152a36e8
1 mengubah file dengan 11 tambahan dan 2 penghapusan
  1. 11 2
      src/com/owncloud/android/ui/activity/FileActivity.java

+ 11 - 2
src/com/owncloud/android/ui/activity/FileActivity.java

@@ -456,8 +456,17 @@ public class FileActivity extends AppCompatActivity
     protected void setUsernameInDrawer(View navigationDrawerLayout, Account account) {
     protected void setUsernameInDrawer(View navigationDrawerLayout, Account account) {
         if (navigationDrawerLayout != null && account != null) {
         if (navigationDrawerLayout != null && account != null) {
             TextView username = (TextView) navigationDrawerLayout.findViewById(R.id.drawer_username);
             TextView username = (TextView) navigationDrawerLayout.findViewById(R.id.drawer_username);
-            int lastAtPos = account.name.lastIndexOf("@");
-            username.setText(account.name.substring(0, lastAtPos));
+
+            try {
+                OwnCloudAccount oca = new OwnCloudAccount(account, this);
+                username.setText(oca.getDisplayName());
+
+            } catch (com.owncloud.android.lib.common.accounts.AccountUtils.AccountNotFoundException e) {
+                Log_OC.w(TAG, "Couldn't read display name of account; using account name instead");
+
+                int lastAtPos = account.name.lastIndexOf("@");
+                username.setText(account.name.substring(0, lastAtPos));
+            }
         }
         }
     }
     }