Set first account checked as default when the current used account is removed and...
authorjabarros <jabarros@solidgear.es>
Thu, 7 Aug 2014 14:02:51 +0000 (16:02 +0200)
committerjabarros <jabarros@solidgear.es>
Thu, 7 Aug 2014 14:02:51 +0000 (16:02 +0200)
src/com/owncloud/android/ui/activity/Preferences.java

index 792bf58..2711368 100644 (file)
@@ -108,6 +108,7 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
                 ListView listView = (ListView) parent;
                 ListAdapter listAdapter = listView.getAdapter();
                 Object obj = listAdapter.getItem(position);
+
                 if (obj != null && obj instanceof LongClickableCheckBoxPreference) {
                     mShowContextMenu = true;
                     mAccountName = obj.toString();
@@ -121,6 +122,7 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
             }
         });
 
+        // Register context menu for list of preferences.
         registerForContextMenu(getListView());
 
         pCode = (CheckBoxPreference) findPreference("set_pincode");
@@ -302,6 +304,9 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
 
     @Override
     public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
+
+        // Filter for only showing contextual menu when long press on the
+        // accounts
         if (mShowContextMenu) {
             getMenuInflater().inflate(R.menu.account_picker_long_click, menu);
             mShowContextMenu = false;
@@ -323,6 +328,8 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
         for (Account a : accounts) {
             if (a.name.equals(mAccountName)) {
                 if (item.getItemId() == R.id.change_password) {
+
+                    // Change account password
                     Intent updateAccountCredentials = new Intent(this, AuthenticatorActivity.class);
                     updateAccountCredentials.putExtra(AuthenticatorActivity.EXTRA_ACCOUNT, a);
                     updateAccountCredentials.putExtra(AuthenticatorActivity.EXTRA_ACTION,
@@ -330,6 +337,8 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
                     startActivity(updateAccountCredentials);
 
                 } else if (item.getItemId() == R.id.delete_account) {
+
+                    // Remove account
                     am.removeAccount(a, this, mHandler);
                 }
             }
@@ -349,7 +358,7 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
                     accountName = accounts[0].name;
                 AccountUtils.setCurrentOwnCloudAccount(this, accountName);
             }
-            createAccountsCheckboxPreferences();
+            addAccountsCheckboxPreferences();
         }
     }
 
@@ -361,7 +370,7 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
         pCode.setChecked(state);
 
         // Populate the accounts category with the list of accounts
-        createAccountsCheckboxPreferences();
+        addAccountsCheckboxPreferences();
     }
 
     @Override
@@ -403,7 +412,7 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
      * Create the list of accounts that has been added into the app
      */
     @SuppressWarnings("deprecation")
-    private void createAccountsCheckboxPreferences() {
+    private void addAccountsCheckboxPreferences() {
 
         // Remove accounts in case list is refreshing for avoiding to have
         // duplicate items
@@ -427,6 +436,7 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
                 LongClickableCheckBoxPreference accountPreference = new LongClickableCheckBoxPreference(this);
                 accountPreference.setKey(a.name);
                 accountPreference.setTitle(a.name);
+                mAccountsPrefCategory.addPreference(accountPreference);
 
                 // Check the current account that is being used
                 if (a.name.equals(currentAccount.name)) {
@@ -454,7 +464,6 @@ public class Preferences extends SherlockPreferenceActivity implements AccountMa
                     }
                 });
 
-                mAccountsPrefCategory.addPreference(accountPreference);
             }
 
             // Add Create Account preference at the end of account list if