Эх сурвалжийг харах

Deprecate setAccount logic and remove accounWasSet flag

Signed-off-by: Chris Narkiewicz <hello@ezaquarii.com>
Chris Narkiewicz 5 жил өмнө
parent
commit
c90626aaf5

+ 7 - 15
src/main/java/com/owncloud/android/ui/activity/BaseActivity.java

@@ -37,11 +37,6 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab
      */
     private OCCapability mCapabilities;
 
-    /**
-     * Flag to signal when the value of mAccount was set.
-     */
-    protected boolean mAccountWasSet;
-
     /**
      * Flag to signal when the value of mAccount was restored from a saved state.
      */
@@ -90,20 +85,18 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab
      *
      * If not valid, tries to swap it for other valid and existing ownCloud {@link Account}.
      *
-     * POSTCONDITION: updates {@link #mAccountWasSet} and {@link #mAccountWasRestored}.
+     * POSTCONDITION: updates {@link #mAccountWasRestored}.
      *
      * @param account      New {@link Account} to set.
      * @param savedAccount When 'true', account was retrieved from a saved instance state.
      */
+    @Deprecated
     protected void setAccount(Account account, boolean savedAccount) {
         Account oldAccount = mCurrentAccount;
-        boolean validAccount =
-                account != null && accountManager.setCurrentOwnCloudAccount(account.name);
+        boolean validAccount = account != null && accountManager.setCurrentOwnCloudAccount(account.name);
         if (validAccount) {
             mCurrentAccount = account;
-            mAccountWasSet = true;
             mAccountWasRestored = savedAccount || mCurrentAccount.equals(oldAccount);
-
         } else {
             swapToDefaultAccount();
         }
@@ -115,7 +108,7 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab
      * If no valid ownCloud {@link Account} exists, then the user is requested
      * to create a new ownCloud {@link Account}.
      *
-     * POSTCONDITION: updates {@link #mAccountWasSet} and {@link #mAccountWasRestored}.
+     * POSTCONDITION: updates {@link #mAccountWasRestored}.
      */
     protected void swapToDefaultAccount() {
         // default to the most recently used account
@@ -123,11 +116,8 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab
         if (newAccount == null) {
             /// no account available: force account creation
             createAccount(true);
-            mAccountWasSet = false;
             mAccountWasRestored = false;
-
         } else {
-            mAccountWasSet = true;
             mAccountWasRestored = newAccount.equals(mCurrentAccount);
             mCurrentAccount = newAccount;
         }
@@ -155,6 +145,7 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab
      *
      * Child classes must grant that state depending on the {@link Account} is updated.
      */
+    @Deprecated
     protected void onAccountSet(boolean stateWasRecovered) {
         if (getAccount() != null) {
             mStorageManager = new FileDataStorageManager(getAccount(), getContentResolver());
@@ -164,6 +155,7 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab
         }
     }
 
+    @Deprecated
     protected void setAccount(Account account) {
         mCurrentAccount = account;
     }
@@ -193,7 +185,7 @@ public abstract class BaseActivity extends AppCompatActivity implements Injectab
     protected void onStart() {
         super.onStart();
 
-        if (mAccountWasSet) {
+        if(mCurrentAccount != null) {
             onAccountSet(mAccountWasRestored);
         }
     }

+ 4 - 5
src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java

@@ -424,7 +424,8 @@ public class FileDisplayActivity extends FileActivity
     @Override
     protected void onAccountSet(boolean stateWasRecovered) {
         super.onAccountSet(stateWasRecovered);
-        if (getAccount() != null) {
+        final Account account = getAccount();
+        if (account != null) {
             /// Check whether the 'main' OCFile handled by the Activity is contained in the
             // current Account
             OCFile file = getFile();
@@ -450,10 +451,8 @@ public class FileDisplayActivity extends FileActivity
             }
             setFile(file);
 
-            if (mAccountWasSet) {
-                setAccountInDrawer(getAccount());
-                setupDrawer();
-            }
+            setAccountInDrawer(account);
+            setupDrawer();
 
             if (!stateWasRecovered) {
                 Log_OC.d(TAG, "Initializing Fragments in onAccountChanged..");

+ 10 - 14
src/main/java/com/owncloud/android/ui/activity/UploadListActivity.java

@@ -226,6 +226,16 @@ public class UploadListActivity extends FileActivity {
         swipeListRefreshLayout.setRefreshing(false);
     }
 
+    @Override
+    protected void onStart() {
+        super.onStart();
+        ThemeUtils.setColoredTitle(getSupportActionBar(), R.string.uploads_view_title, this);
+        final Account account = getAccount();
+        if (account != null) {
+            setAccountInDrawer(account);
+        }
+    }
+
     @Override
     protected void onResume() {
         Log_OC.v(TAG, "onResume() start");
@@ -382,20 +392,6 @@ public class UploadListActivity extends FileActivity {
         }
     }
 
-    /**
-     * Called when the ownCloud {@link Account} associated to the Activity was just updated.
-     */
-    @Override
-    protected void onAccountSet(boolean stateWasRecovered) {
-        super.onAccountSet(stateWasRecovered);
-
-        ThemeUtils.setColoredTitle(getSupportActionBar(), R.string.uploads_view_title, this);
-
-        if (mAccountWasSet) {
-            setAccountInDrawer(getAccount());
-        }
-    }
-
     public void onDestroy() {
         super.onDestroy();
         unbinder.unbind();