X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Factivity%2FProfileThemedActivity.java;h=821d186d88a2382f405dd6209bf2f61ee8e3be19;hb=aab4c009a95d371354f14685152b275812d60a15;hp=9e01f00cf634b947d6743c5962425f3807497e8e;hpb=efa1f56494e485c7f8d4f97cd64df4b01f7b5e07;p=mobile-ledger.git diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/ProfileThemedActivity.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/ProfileThemedActivity.java index 9e01f00c..821d186d 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/ProfileThemedActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/ProfileThemedActivity.java @@ -17,15 +17,23 @@ package net.ktnx.mobileledger.ui.activity; +import android.annotation.SuppressLint; import android.os.Bundle; +import net.ktnx.mobileledger.model.Data; +import net.ktnx.mobileledger.model.MobileLedgerProfile; import net.ktnx.mobileledger.utils.Colors; +import net.ktnx.mobileledger.utils.GetOptCallback; +import net.ktnx.mobileledger.utils.MLDB; import androidx.annotation.Nullable; +@SuppressLint("Registered") public class ProfileThemedActivity extends CrashReportingActivity { + static final int waitSlice = 200; + protected MobileLedgerProfile mProfile; protected void setupProfileColors() { - Colors.setupTheme(this); + Colors.setupTheme(this, mProfile); } @Override protected void onStart() { @@ -33,7 +41,26 @@ public class ProfileThemedActivity extends CrashReportingActivity { Colors.refreshColors(getTheme()); } protected void onCreate(@Nullable Bundle savedInstanceState) { + initProfile(); super.onCreate(savedInstanceState); - Colors.setupTheme(this); + Data.profile.observe(this, mobileLedgerProfile -> { + mProfile = mobileLedgerProfile; + setupProfileColors(); + }); + } + protected void initProfile() { + mProfile = Data.profile.getValue(); + if (mProfile == null) { + MLDB.getOption(MLDB.OPT_PROFILE_UUID, null, new GetOptCallback() { + @Override + protected void onResult(String profileUUID) { + MobileLedgerProfile startupProfile; + + + startupProfile = Data.getProfile(profileUUID); + Data.setCurrentProfile(startupProfile); + } + }); + } } }