]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java
use member field already available
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / activity / MainActivity.java
index 958c0e919745f6dd96dc6820db772c6be6bc2081..47dc798cbd5a796b4308ab402ef4d87b1d049364 100644 (file)
@@ -21,6 +21,7 @@ import android.content.Intent;
 import android.content.pm.PackageInfo;
 import android.content.res.ColorStateList;
 import android.graphics.Color;
+import android.os.AsyncTask;
 import android.os.Build;
 import android.os.Bundle;
 import android.util.Log;
@@ -51,6 +52,8 @@ import net.ktnx.mobileledger.utils.MLDB;
 import java.lang.ref.WeakReference;
 import java.text.DateFormat;
 import java.util.Date;
+import java.util.Observable;
+import java.util.Observer;
 
 import androidx.appcompat.app.ActionBarDrawerToggle;
 import androidx.appcompat.widget.Toolbar;
@@ -235,6 +238,26 @@ public class MainActivity extends CrashReportingActivity {
         mProfileListAdapter = new ProfilesRecyclerViewAdapter();
         root.setAdapter(mProfileListAdapter);
 
+        mProfileListAdapter.addEditingProfilesObserver(new Observer() {
+            @Override
+            public void update(Observable o, Object arg) {
+                if (mProfileListAdapter.isEditingProfiles()) {
+                    profileListHeadArrow.clearAnimation();
+                    profileListHeadArrow.setVisibility(View.GONE);
+//                    findViewById(R.id.nav_profiles_arrow).setAlpha(0f);
+                    findViewById(R.id.nav_profiles_cancel_edit).setVisibility(View.VISIBLE);
+                }
+                else {
+                    profileListHeadArrow.setVisibility(View.VISIBLE);
+//                    findViewById(R.id.nav_profiles_arrow).setAlpha(1f);
+                    findViewById(R.id.nav_profiles_cancel_edit).setVisibility(View.GONE);
+                }
+            }
+        });
+
+        findViewById(R.id.nav_profiles_cancel_edit).setOnClickListener((v) -> {
+            mProfileListAdapter.stopEditingProfiles();
+        });
         LinearLayoutManager llm = new LinearLayoutManager(this);
 
         llm.setOrientation(RecyclerView.VERTICAL);
@@ -389,7 +412,6 @@ public class MainActivity extends CrashReportingActivity {
         retrieveTransactionsTask = new RetrieveTransactionsTask(new WeakReference<>(this));
 
         retrieveTransactionsTask.execute();
-        bTransactionListCancelDownload.setEnabled(true);
     }
     public void onStopTransactionRefreshClick(View view) {
         Log.d("interactive", "Cancelling transactions refresh");
@@ -402,11 +424,12 @@ public class MainActivity extends CrashReportingActivity {
         if (error == null) {
             updateLastUpdateTextFromDB();
 
-            new RefreshDescriptionsTask().execute();
+            new RefreshDescriptionsTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
         }
         else Toast.makeText(this, error, Toast.LENGTH_LONG).show();
     }
     public void onRetrieveStart() {
+        bTransactionListCancelDownload.setEnabled(true);
         progressBar.setIndeterminateTintList(ColorStateList.valueOf(Colors.primary));
         progressBar.setProgressTintList(ColorStateList.valueOf(Colors.primary));
         progressBar.setIndeterminate(true);