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=3e774a04ce4883920cea6f2c5ce015c4f049dadf;hp=86463aac20c22bc34d7f50ec4cec5fc00ee74541;hb=3b7d0b3a96e48343b4500466d4bb3f5b62e28dde;hpb=b0a3715e2675b4b02deb8697f00e747ce95f002b 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 86463aac..3e774a04 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 @@ -100,6 +100,7 @@ public class MainActivity extends ProfileThemedActivity { protected void onStart() { super.onStart(); + Log.d("flow", "MainActivity.onStart()"); setupProfile(); updateLastUpdateTextFromDB(); @@ -129,7 +130,7 @@ public class MainActivity extends ProfileThemedActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - + Log.d("flow", "MainActivity.onCreate()"); setContentView(R.layout.activity_main); fab = findViewById(R.id.btn_add_transaction); @@ -169,6 +170,22 @@ public class MainActivity extends ProfileThemedActivity { fab.hide(); } + int old_index = -1; + int new_index = -1; + if (arg != null) { + MobileLedgerProfile old = (MobileLedgerProfile) arg; + old_index = Data.getProfileIndex(old); + new_index = Data.getProfileIndex(profile); + } + + if ((old_index != -1) && (new_index != -1)) { + mProfileListAdapter.notifyItemChanged(old_index); + mProfileListAdapter.notifyItemChanged(new_index); + } + else mProfileListAdapter.notifyDataSetChanged(); + + collapseProfileList(); + int newProfileTheme = profile.getThemeId(); if (newProfileTheme != Colors.profileThemeId) { Log.d("profiles", String.format("profile theme %d → %d", Colors.profileThemeId, @@ -176,6 +193,8 @@ public class MainActivity extends ProfileThemedActivity { profileThemeChanged(); Colors.profileThemeId = newProfileTheme; } + else + drawer.closeDrawers(); }); }); Data.profiles.addObserver((o, arg) -> { @@ -440,7 +459,8 @@ public class MainActivity extends ProfileThemedActivity { mBackMeansToAccountList = false; } else { - Log.d("fragments", String.format("manager stack: %d", fragmentManager.getBackStackEntryCount())); + Log.d("fragments", String.format("manager stack: %d", + fragmentManager.getBackStackEntryCount())); super.onBackPressed(); }