From c7a5d8858fa3949866361ad16f5c6e3dd1b23421 Mon Sep 17 00:00:00 2001 From: Erik Johansson Date: Mon, 26 Mar 2018 23:34:40 +0200 Subject: [PATCH] Retint preference icons after changing theme --- .../main/java/com/health/openscale/gui/MainActivity.java | 1 - .../health/openscale/gui/activities/SettingsActivity.java | 7 +++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java b/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java index 4b88efd6..0009faa3 100644 --- a/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java +++ b/android_app/app/src/main/java/com/health/openscale/gui/MainActivity.java @@ -297,7 +297,6 @@ public class MainActivity extends BaseAppCompatActivity break; case R.id.nav_settings: Intent settingsIntent = new Intent(this, SettingsActivity.class); - settingsIntent.putExtra(SettingsActivity.EXTRA_TINT_COLOR, navDrawer.getItemTextColor().getDefaultColor()); startActivity(settingsIntent); settingsActivityRunning = true; drawerLayout.closeDrawers(); diff --git a/android_app/app/src/main/java/com/health/openscale/gui/activities/SettingsActivity.java b/android_app/app/src/main/java/com/health/openscale/gui/activities/SettingsActivity.java index af6c4590..66b0876c 100644 --- a/android_app/app/src/main/java/com/health/openscale/gui/activities/SettingsActivity.java +++ b/android_app/app/src/main/java/com/health/openscale/gui/activities/SettingsActivity.java @@ -23,6 +23,7 @@ import android.graphics.drawable.Drawable; import android.os.Bundle; import android.preference.PreferenceActivity; import android.preference.PreferenceManager; +import android.widget.EditText; import com.health.openscale.R; import com.health.openscale.gui.preferences.BackupPreferences; @@ -34,13 +35,15 @@ import java.util.List; public class SettingsActivity extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener { - public static String EXTRA_TINT_COLOR = "tintColor"; private static List fragments = new ArrayList(); private Fragment currentFragment; @Override protected void attachBaseContext(Context context) { super.attachBaseContext(BaseAppCompatActivity.createBaseContext(context)); + if (!fragments.isEmpty()) { + invalidateHeaders(); + } } @Override @@ -76,7 +79,7 @@ public class SettingsActivity extends PreferenceActivity public void onBuildHeaders(List
target) { loadHeadersFromResource(R.xml.header_preferences, target); - int tintColor = getIntent().getIntExtra(EXTRA_TINT_COLOR, 0); + int tintColor = new EditText(this).getCurrentTextColor(); fragments.clear(); for (Header header : target) {