diff options
-rw-r--r-- | src/com/cyngn/theme/chooser/ThemeFragment.java | 6 | ||||
-rw-r--r-- | src/com/cyngn/theme/perapptheming/PerAppThemingWindow.java | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/com/cyngn/theme/chooser/ThemeFragment.java b/src/com/cyngn/theme/chooser/ThemeFragment.java index 085b23a..9ae1cdf 100644 --- a/src/com/cyngn/theme/chooser/ThemeFragment.java +++ b/src/com/cyngn/theme/chooser/ThemeFragment.java @@ -2208,7 +2208,11 @@ public class ThemeFragment extends Fragment implements LoaderManager.LoaderCallb = fillMissingComponentsWithDefault(componentsToApply); ThemeManager tm = getThemeManager(); if (tm != null) { - tm.addClient(ThemeFragment.this); + try { + tm.addClient(ThemeFragment.this); + } catch (IllegalArgumentException e) { + /* ignore since this means we already have a listener added */ + } tm.requestThemeChange(getThemeChangeRequestForComponents(fullMap), true); } diff --git a/src/com/cyngn/theme/perapptheming/PerAppThemingWindow.java b/src/com/cyngn/theme/perapptheming/PerAppThemingWindow.java index 64245d0..4b6857b 100644 --- a/src/com/cyngn/theme/perapptheming/PerAppThemingWindow.java +++ b/src/com/cyngn/theme/perapptheming/PerAppThemingWindow.java @@ -775,7 +775,11 @@ public class PerAppThemingWindow extends Service implements OnTouchListener, ThemeManager tm = ThemeManager.getInstance(getContext()); ThemeChangeRequest.Builder builder = new ThemeChangeRequest.Builder(); builder.setAppOverlay(appPkgName, themePkgName); - tm.addClient(PerAppThemingWindow.this); + try { + tm.addClient(PerAppThemingWindow.this); + } catch (IllegalArgumentException e) { + /* ignore since this means we already have a listener added */ + } tm.requestThemeChange(builder.build(), false); } }); |