aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java
diff options
context:
space:
mode:
authorrsudev <rasch@munin-soft.de>2014-04-10 19:46:58 +0200
committerrsudev <rasch@munin-soft.de>2014-04-10 19:47:12 +0200
commitba6973aea7c63bcd88b974137bf4bd936f12ccfc (patch)
tree86ad8e8efba1d3f4185bdaad639f41e8f271c517 /main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java
parentd01d25ef9ee90314429c7e5ea152e519e3bace41 (diff)
downloadcgeo-ba6973aea7c63bcd88b974137bf4bd936f12ccfc.zip
cgeo-ba6973aea7c63bcd88b974137bf4bd936f12ccfc.tar.gz
cgeo-ba6973aea7c63bcd88b974137bf4bd936f12ccfc.tar.bz2
Refactor oc settings
Diffstat (limited to 'main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java')
-rw-r--r--main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java b/main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java
index e36e007..35df787 100644
--- a/main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java
+++ b/main/src/cgeo/geocaching/settings/CheckBoxWithPopupPreference.java
@@ -18,6 +18,7 @@ public class CheckBoxWithPopupPreference extends CheckBoxPreference {
private String text;
private String url;
private String urlButton;
+ private OnPreferenceChangeListener baseOnPrefChangeListener = null;
public CheckBoxWithPopupPreference(Context context) {
super(context);
@@ -53,10 +54,17 @@ public class CheckBoxWithPopupPreference extends CheckBoxPreference {
@Override
protected View onCreateView(ViewGroup parent) {
+ if (baseOnPrefChangeListener == null) {
+ baseOnPrefChangeListener = getOnPreferenceChangeListener();
+ }
+
// show dialog when checkbox enabled
setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(final Preference preference, Object newValue) {
+ if (baseOnPrefChangeListener != null) {
+ baseOnPrefChangeListener.onPreferenceChange(preference, newValue);
+ }
if (!(Boolean) newValue) {
return true;
}