From 75b0fed00d44c3cac7eef44bb50421d5894fabd7 Mon Sep 17 00:00:00 2001 From: Harsh Shandilya Date: Tue, 25 Feb 2020 14:25:35 +0530 Subject: ThemeChangeAwareActivity: Remove drawable cache buster Shouldn't be needed anymore. Signed-off-by: Harsh Shandilya --- .../android/activity/ThemeChangeAwareActivity.java | 35 ---------------------- 1 file changed, 35 deletions(-) (limited to 'app/src/main/java/com/wireguard') diff --git a/app/src/main/java/com/wireguard/android/activity/ThemeChangeAwareActivity.java b/app/src/main/java/com/wireguard/android/activity/ThemeChangeAwareActivity.java index 977f64ea..602ad37c 100644 --- a/app/src/main/java/com/wireguard/android/activity/ThemeChangeAwareActivity.java +++ b/app/src/main/java/com/wireguard/android/activity/ThemeChangeAwareActivity.java @@ -20,38 +20,6 @@ import java.lang.reflect.Field; public abstract class ThemeChangeAwareActivity extends AppCompatActivity implements SharedPreferences.OnSharedPreferenceChangeListener { private static final String TAG = "WireGuard/" + ThemeChangeAwareActivity.class.getSimpleName(); - private static boolean lastDarkMode; - @Nullable private static Resources lastResources; - - private static synchronized void invalidateDrawableCache(final Resources resources, final boolean darkMode) { - if (resources == lastResources && darkMode == lastDarkMode) - return; - - try { - Field f; - Object o = resources; - try { - f = o.getClass().getDeclaredField("mResourcesImpl"); - f.setAccessible(true); - o = f.get(o); - } catch (final Exception ignored) { - } - f = o.getClass().getDeclaredField("mDrawableCache"); - f.setAccessible(true); - o = f.get(o); - try { - o.getClass().getMethod("onConfigurationChange", int.class).invoke(o, -1); - } catch (final Exception ignored) { - o.getClass().getMethod("clear").invoke(o); - } - } catch (final Exception e) { - Log.e(TAG, "Failed to flush drawable cache", e); - } - - lastResources = resources; - lastDarkMode = darkMode; - } - @Override protected void onCreate(@Nullable final Bundle savedInstanceState) { @@ -70,13 +38,10 @@ public abstract class ThemeChangeAwareActivity extends AppCompatActivity impleme @Override public void onSharedPreferenceChanged(final SharedPreferences sharedPreferences, final String key) { if ("dark_theme".equals(key)) { - final boolean darkMode = sharedPreferences.getBoolean(key, false); AppCompatDelegate.setDefaultNightMode( sharedPreferences.getBoolean(key, false) ? AppCompatDelegate.MODE_NIGHT_YES : AppCompatDelegate.MODE_NIGHT_NO); - invalidateDrawableCache(getResources(), darkMode); - recreate(); } } } -- cgit v1.2.3-59-g8ed1b