package net.ktnx.mobileledger.ui.activity;
import android.content.Intent;
+import android.content.SharedPreferences;
import android.content.pm.PackageInfo;
import android.content.pm.ShortcutInfo;
import android.content.pm.ShortcutManager;
public static final String STATE_CURRENT_PAGE = "current_page";
public static final String BUNDLE_SAVED_STATE = "bundle_savedState";
public static final String STATE_ACC_FILTER = "account_filter";
+ private static final String PREF_THEME_ID = "themeId";
public AccountSummaryFragment mAccountSummaryFragment;
DrawerLayout drawer;
private LinearLayout profileListContainer;
}
@Override
protected void setupProfileColors() {
- int profileColor = Data.retrieveCurrentThemeIdFromDb();
+ SharedPreferences prefs = getPreferences(MODE_PRIVATE);
+ int profileColor = prefs.getInt(PREF_THEME_ID, -2);
+ if (profileColor == -2) profileColor = Data.retrieveCurrentThemeIdFromDb();
Colors.setupTheme(this, profileColor);
Colors.profileThemeId = profileColor;
+ storeThemeIdInPrefs(profileColor);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
private void profileThemeChanged() {
Bundle bundle = new Bundle();
onSaveInstanceState(bundle);
+
+ storeThemeIdInPrefs(profile.getThemeId());
+
// restart activity to reflect theme change
finish();
intent.putExtra(BUNDLE_SAVED_STATE, bundle);
startActivity(intent);
}
+ private void storeThemeIdInPrefs(int themeId) {
+ // store the new theme id in the preferences
+ SharedPreferences prefs = getPreferences(MODE_PRIVATE);
+ SharedPreferences.Editor e = prefs.edit();
+ e.putInt(PREF_THEME_ID, themeId);
+ e.apply();
+ }
public void startEditProfileActivity(MobileLedgerProfile profile) {
Intent intent = new Intent(this, ProfileDetailActivity.class);
Bundle args = new Bundle();