X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Factivity%2FMainActivity.java;h=d20e63f05ea8a886264598fe52e7e103158447ec;hp=5a8e198f778400ef00ef9aac6cbe1fd8336056dd;hb=0e1ae0f10b4dd5bb6b268f6d448c8cae94f14a33;hpb=88e1dbc1a1427beb57611c24af255186c32c825e diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java index 5a8e198f..d20e63f0 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java @@ -90,8 +90,6 @@ public class MainActivity extends ProfileThemedActivity { private View profileListHeadMore, profileListHeadCancel, profileListHeadAddProfile; private FragmentManager fragmentManager; private View bTransactionListCancelDownload; - private ProgressBar progressBar; - private LinearLayout progressLayout; private SectionsPagerAdapter mSectionsPagerAdapter; private ViewPager mViewPager; private FloatingActionButton fab; @@ -108,7 +106,9 @@ public class MainActivity extends ProfileThemedActivity { protected void onStart() { super.onStart(); - debug("flow", "MainActivity.onStart()"); + debug("flow", String.format(Locale.ENGLISH, + "MainActivity.onStart(), currentPage is %d, accountFilter is %s", mCurrentPage, + (mAccountFilter == null) ? "" : mAccountFilter)); mViewPager.setCurrentItem(mCurrentPage, false); if (mAccountFilter != null) showTransactionsFragment(mAccountFilter); else Data.accountFilter.setValue(null); @@ -143,6 +143,11 @@ public class MainActivity extends ProfileThemedActivity { storeThemeIdInPrefs(profileColor); } @Override + protected void onResume() { + super.onResume(); + fabShouldShow(); + } + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); debug("flow", "MainActivity.onCreate()"); @@ -156,8 +161,6 @@ public class MainActivity extends ProfileThemedActivity { profileListHeadAddProfile = findViewById(R.id.nav_new_profile_button); drawer = findViewById(R.id.drawer_layout); bTransactionListCancelDownload = findViewById(R.id.transaction_list_cancel_download); - progressBar = findViewById(R.id.transaction_list_progress_bar); - progressLayout = findViewById(R.id.transaction_progress_layout); fragmentManager = getSupportFragmentManager(); mSectionsPagerAdapter = new SectionsPagerAdapter(fragmentManager); mViewPager = findViewById(R.id.root_frame); @@ -191,11 +194,6 @@ public class MainActivity extends ProfileThemedActivity { e.printStackTrace(); } - if (progressBar == null) - throw new RuntimeException("Can't get hold on the transaction value progress bar"); - if (progressLayout == null) throw new RuntimeException( - "Can't get hold on the transaction value progress bar layout"); - markDrawerItemCurrent(R.id.nav_account_summary); mViewPager.setAdapter(mSectionsPagerAdapter); @@ -204,6 +202,7 @@ public class MainActivity extends ProfileThemedActivity { pageChangeListener = new ViewPager.SimpleOnPageChangeListener() { @Override public void onPageSelected(int position) { + mCurrentPage = position; switch (position) { case 0: markDrawerItemCurrent(R.id.nav_account_summary); @@ -249,37 +248,36 @@ public class MainActivity extends ProfileThemedActivity { if (mProfileListAdapter == null) mProfileListAdapter = new ProfilesRecyclerViewAdapter(); root.setAdapter(mProfileListAdapter); - mProfileListAdapter.editingProfiles - .observe(this, newValue -> { - if (newValue) { - profileListHeadMore.setVisibility(View.GONE); - profileListHeadCancel.setVisibility(View.VISIBLE); - profileListHeadAddProfile.setVisibility(View.VISIBLE); - if (drawer.isDrawerOpen(GravityCompat.START)) { - profileListHeadMore.startAnimation(AnimationUtils - .loadAnimation(MainActivity.this, R.anim.fade_out)); - profileListHeadCancel.startAnimation(AnimationUtils - .loadAnimation(MainActivity.this, R.anim.fade_in)); - profileListHeadAddProfile.startAnimation(AnimationUtils - .loadAnimation(MainActivity.this, R.anim.fade_in)); - } - } - else { - profileListHeadCancel.setVisibility(View.GONE); - profileListHeadMore.setVisibility(View.VISIBLE); - profileListHeadAddProfile.setVisibility(View.GONE); - if (drawer.isDrawerOpen(GravityCompat.START)) { - profileListHeadCancel.startAnimation(AnimationUtils - .loadAnimation(MainActivity.this, R.anim.fade_out)); - profileListHeadMore.startAnimation(AnimationUtils - .loadAnimation(MainActivity.this, R.anim.fade_in)); - profileListHeadAddProfile.startAnimation(AnimationUtils - .loadAnimation(MainActivity.this, R.anim.fade_out)); - } - } + mProfileListAdapter.editingProfiles.observe(this, newValue -> { + if (newValue) { + profileListHeadMore.setVisibility(View.GONE); + profileListHeadCancel.setVisibility(View.VISIBLE); + profileListHeadAddProfile.setVisibility(View.VISIBLE); + if (drawer.isDrawerOpen(GravityCompat.START)) { + profileListHeadMore.startAnimation( + AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_out)); + profileListHeadCancel.startAnimation( + AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_in)); + profileListHeadAddProfile.startAnimation( + AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_in)); + } + } + else { + profileListHeadCancel.setVisibility(View.GONE); + profileListHeadMore.setVisibility(View.VISIBLE); + profileListHeadAddProfile.setVisibility(View.GONE); + if (drawer.isDrawerOpen(GravityCompat.START)) { + profileListHeadCancel.startAnimation( + AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_out)); + profileListHeadMore.startAnimation( + AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_in)); + profileListHeadAddProfile.startAnimation( + AnimationUtils.loadAnimation(MainActivity.this, R.anim.fade_out)); + } + } - mProfileListAdapter.notifyDataSetChanged(); - }); + mProfileListAdapter.notifyDataSetChanged(); + }); LinearLayoutManager llm = new LinearLayoutManager(this); @@ -568,7 +566,7 @@ public class MainActivity extends ProfileThemedActivity { } public void onRetrieveDone(String error) { Data.transactionRetrievalDone(); - progressLayout.setVisibility(View.GONE); + findViewById(R.id.transaction_progress_layout).setVisibility(View.GONE); if (error == null) { updateLastUpdateTextFromDB(); @@ -579,15 +577,17 @@ public class MainActivity extends ProfileThemedActivity { else Toast.makeText(this, error, Toast.LENGTH_LONG).show(); } public void onRetrieveStart() { + ProgressBar progressBar = findViewById(R.id.transaction_list_progress_bar); bTransactionListCancelDownload.setEnabled(true); progressBar.setIndeterminateTintList(ColorStateList.valueOf(Colors.primary)); progressBar.setProgressTintList(ColorStateList.valueOf(Colors.primary)); progressBar.setIndeterminate(true); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) progressBar.setProgress(0, false); else progressBar.setProgress(0); - progressLayout.setVisibility(View.VISIBLE); + findViewById(R.id.transaction_progress_layout).setVisibility(View.VISIBLE); } public void onRetrieveProgress(RetrieveTransactionsTask.Progress progress) { + ProgressBar progressBar = findViewById(R.id.transaction_list_progress_bar); if ((progress.getTotal() == RetrieveTransactionsTask.Progress.INDETERMINATE) || (progress.getTotal() == 0)) {