X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Factivity%2FMainActivity.java;h=4202a84cc437d9f074ceaa2c42073038eb1ce483;hb=8b399301f8373f2e62712649af53d6c2b6c07182;hp=08bdf927d4e921e9b9a55caa0980d61dc99aed9f;hpb=8f55113a112873aa98652eae5c7f56a357e24957;p=mobile-ledger.git 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 08bdf927..4202a84c 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 @@ -46,6 +46,7 @@ import net.ktnx.mobileledger.ui.account_summary.AccountSummaryFragment; import net.ktnx.mobileledger.ui.profiles.ProfileDetailFragment; import net.ktnx.mobileledger.ui.profiles.ProfilesRecyclerViewAdapter; import net.ktnx.mobileledger.ui.transaction_list.TransactionListFragment; +import net.ktnx.mobileledger.ui.transaction_list.TransactionListViewModel; import net.ktnx.mobileledger.utils.Colors; import net.ktnx.mobileledger.utils.MLDB; @@ -90,7 +91,8 @@ public class MainActivity extends ProfileThemedActivity { protected void onStart() { super.onStart(); - Data.lastUpdateDate.set(null); + setupProfile(); + updateLastUpdateTextFromDB(); Date lastUpdate = Data.lastUpdateDate.get(); @@ -214,19 +216,11 @@ public class MainActivity extends ProfileThemedActivity { Data.lastUpdateDate.addObserver((o, arg) -> { Log.d("main", "lastUpdateDate changed"); - runOnUiThread(() -> { - Date date = Data.lastUpdateDate.get(); - if (date == null) { - tvLastUpdate.setText(R.string.transaction_last_update_never); - } - else { - final String text = DateFormat.getDateTimeInstance().format(date); - tvLastUpdate.setText(text); - Log.d("despair", String.format("Date formatted: %s", text)); - } - }); + runOnUiThread(this::updateLastUpdateDisplay); }); + updateLastUpdateDisplay(); + findViewById(R.id.btn_no_profiles_add) .setOnClickListener(v -> startEditProfileActivity(null)); @@ -269,7 +263,8 @@ public class MainActivity extends ProfileThemedActivity { profileListHeadMore.setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles()); profileListHeadCancel.setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles()); - profileListHeadMoreAndCancel.setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles()); + profileListHeadMoreAndCancel + .setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles()); drawer.addDrawerListener(new DrawerLayout.SimpleDrawerListener() { @Override @@ -279,6 +274,19 @@ public class MainActivity extends ProfileThemedActivity { } }); } + private void updateLastUpdateDisplay() { + TextView v = findViewById(R.id.transactions_last_update); + Date date = Data.lastUpdateDate.get(); + if (date == null) { + v.setText(R.string.transaction_last_update_never); + Log.d("main", "no last update date :("); + } + else { + final String text = DateFormat.getDateTimeInstance().format(date); + v.setText(text); + Log.d("main", String.format("Date formatted: %s", text)); + } + } private void profileThemeChanged() { setupProfileColors(); @@ -290,11 +298,6 @@ public class MainActivity extends ProfileThemedActivity { intent.putExtra(BUNDLE_SAVED_STATE, bundle); startActivity(intent); } - @Override - protected void onResume() { - super.onResume(); - setupProfile(); - } public void startEditProfileActivity(MobileLedgerProfile profile) { Intent intent = new Intent(this, ProfileDetailActivity.class); Bundle args = new Bundle(); @@ -441,6 +444,7 @@ public class MainActivity extends ProfileThemedActivity { updateLastUpdateTextFromDB(); new RefreshDescriptionsTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + TransactionListViewModel.scheduleTransactionListReload(); } else Toast.makeText(this, error, Toast.LENGTH_LONG).show(); } @@ -492,6 +496,9 @@ public class MainActivity extends ProfileThemedActivity { profileListHeadArrow.startAnimation(AnimationUtils.loadAnimation(this, R.anim.rotate_180)); profileListHeadMore.setVisibility(View.VISIBLE); profileListHeadMore.startAnimation(AnimationUtils.loadAnimation(this, R.anim.fade_in)); + findViewById(R.id.nav_profile_list).setMinimumHeight( + (int) (getResources().getDimension(R.dimen.thumb_row_height) * + Data.profiles.size())); } private void collapseProfileList() { profileListExpanded = false;