Index: adblockplussbrowser/src/main/java/org/adblockplus/sbrowser/contentblocker/MainPreferences.java |
=================================================================== |
--- a/adblockplussbrowser/src/main/java/org/adblockplus/sbrowser/contentblocker/MainPreferences.java |
+++ b/adblockplussbrowser/src/main/java/org/adblockplus/sbrowser/contentblocker/MainPreferences.java |
@@ -33,18 +33,17 @@ import android.preference.PreferenceActi |
import android.preference.PreferenceManager; |
import android.text.Html; |
import android.util.Log; |
import android.view.Gravity; |
import android.widget.Button; |
import android.widget.LinearLayout; |
public class MainPreferences extends PreferenceActivity implements |
- EngineService.OnEngineCreatedCallback, SharedPrefsUtils.OnSharedPreferenceChangeListener, |
- Engine.SubscriptionUpdateCallback |
+ EngineService.OnEngineCreatedCallback, Engine.SubscriptionUpdateCallback |
{ |
private static final String TAG = MainPreferences.class.getSimpleName(); |
private Engine engine = null; |
private AlertDialog dialog; |
private int dialogTitleResId; |
@Override |
public void onCreate(Bundle savedInstanceState) |
@@ -61,25 +60,25 @@ public class MainPreferences extends Pre |
@Override |
protected void onStart() |
{ |
this.dialogTitleResId = R.string.initialization_title; |
this.dialog = ProgressDialog.show(this, |
this.getString(this.dialogTitleResId), |
this.getString(R.string.initialization_message)); |
super.onStart(); |
- SharedPrefsUtils.registerOnSharedPreferenceChangeListener(this, this); |
+ SharedPrefsUtils.registerOnSharedPreferenceChangeListener(this, listener); |
EngineService.startService(this.getApplicationContext(), this); |
} |
@Override |
protected void onStop() |
{ |
super.onStop(); |
- SharedPrefsUtils.unregisterOnSharedPreferenceChangeListener(this, this); |
+ SharedPrefsUtils.unregisterOnSharedPreferenceChangeListener(this, listener); |
this.dismissDialog(); |
} |
private void dismissDialog() |
{ |
if (this.dialog != null) |
{ |
this.dialogTitleResId = 0; |
@@ -197,44 +196,49 @@ public class MainPreferences extends Pre |
{ |
this.dismissDialog(); |
this.checkForCompatibleSBrowserAndProceed(); |
} |
} |
@Override |
- public void onSharedPreferenceChanged(String key) |
- { |
- if (this.getString(R.string.key_automatic_updates).equals(key) && this.engine != null) |
- { |
- this.engine.connectivityChanged(); |
- } |
- else if (this.getString(R.string.key_acceptable_ads).equals(key)) |
- { |
- final boolean enabled = SharedPrefsUtils.getBoolean(this, R.string.key_acceptable_ads, true); |
- final String id = "url:" + this.engine.getPrefsDefault(Engine.SUBSCRIPTIONS_EXCEPTIONSURL); |
- Log.d(TAG, "Acceptable ads " + (enabled ? "enabled" : "disabled")); |
- this.engine.changeSubscriptionState(id, enabled); |
- } |
- else if (this.getString(R.string.key_application_activated).equals(key)) |
- { |
- if (this.dialogTitleResId == R.string.setup_dialog_title) |
- { |
- this.dismissDialog(); |
- } |
- } |
- } |
- |
- @Override |
public void subscriptionUpdateRequested(final boolean enabled) |
{ |
this.dialog = ProgressDialog.show(this, null, enabled |
? getString(R.string.add_subscription_dialog_message) |
: getString(R.string.remove_subscription_dialog_message)); |
} |
@Override |
public void subscriptionUpdatedApplied() |
{ |
this.dismissDialog(); |
} |
+ |
+ private final SharedPrefsUtils.OnSharedPreferenceChangeListener listener = |
+ new SharedPrefsUtils.OnSharedPreferenceChangeListener() |
+ { |
+ @Override |
+ protected void onSharedPreferenceChanged(String key) |
+ { |
+ if (getString(R.string.key_automatic_updates).equals(key) && engine != null) |
+ { |
+ engine.connectivityChanged(); |
+ } |
+ else if (getString(R.string.key_acceptable_ads).equals(key)) |
+ { |
+ final boolean enabled = SharedPrefsUtils.getBoolean |
+ (MainPreferences.this, R.string.key_acceptable_ads, true); |
+ final String id = "url:" + engine.getPrefsDefault(Engine.SUBSCRIPTIONS_EXCEPTIONSURL); |
+ Log.d(TAG, "Acceptable ads " + (enabled ? "enabled" : "disabled")); |
+ engine.changeSubscriptionState(id, enabled); |
+ } |
+ else if (getString(R.string.key_application_activated).equals(key)) |
+ { |
+ if (dialogTitleResId == R.string.setup_dialog_title) |
+ { |
+ dismissDialog(); |
+ } |
+ } |
+ } |
+ }; |
} |