Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: mobile/android/thirdparty/org/adblockplus/browser/AddOnBridge.java

Issue 29322610: Issue 2720 - [Adblocking settings] Add the other filter lists category (Closed)
Patch Set: Last naming nit Created July 31, 2015, 9:36 a.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: mobile/android/thirdparty/org/adblockplus/browser/AddOnBridge.java
diff --git a/mobile/android/thirdparty/org/adblockplus/browser/AddOnBridge.java b/mobile/android/thirdparty/org/adblockplus/browser/AddOnBridge.java
index 5bd4a06150082c674bb2b850c64267094357e8cf..39304cce0d31acd5b42c5fced38e3ae46df5ede1 100644
--- a/mobile/android/thirdparty/org/adblockplus/browser/AddOnBridge.java
+++ b/mobile/android/thirdparty/org/adblockplus/browser/AddOnBridge.java
@@ -42,15 +42,33 @@ public class AddOnBridge
private static final int QUERY_GET_FILTERS_LOADED_DELAY = 500;
// Handler+HandlerThread for posting delayed re-tries without interfering with
// other threads (e.g. the UI or Gecko thread)
- private static final HandlerThread HANDLER_THREAD;
- private static final Handler HANDLER;
+ private static final HandlerThread PRIVATE_HANDLER_THREAD;
+ private static final Handler PRIVATE_HANDLER;
+ // Global handler, for e.g. UI tasks
+ private static final HandlerThread GLOBAL_HANDLER_THREAD;
+ private static final Handler GLOBAL_HANDLER;
static
{
- HANDLER_THREAD = new HandlerThread("abp-bridge");
- HANDLER_THREAD.setDaemon(true);
- HANDLER_THREAD.start();
- HANDLER = new Handler(HANDLER_THREAD.getLooper());
+ PRIVATE_HANDLER_THREAD = new HandlerThread("abp-private-handler");
+ PRIVATE_HANDLER_THREAD.setDaemon(true);
+ PRIVATE_HANDLER_THREAD.start();
+ PRIVATE_HANDLER = new Handler(PRIVATE_HANDLER_THREAD.getLooper());
+
+ GLOBAL_HANDLER_THREAD = new HandlerThread("abp-global-handler");
+ GLOBAL_HANDLER_THREAD.setDaemon(true);
+ GLOBAL_HANDLER_THREAD.start();
+ GLOBAL_HANDLER = new Handler(GLOBAL_HANDLER_THREAD.getLooper());
+ }
+
+ public static void postToHandler(Runnable runnable)
+ {
+ GLOBAL_HANDLER.post(runnable);
+ }
+
+ public static void postToHandlerDelayed(Runnable runnable, long delayMillis)
+ {
+ GLOBAL_HANDLER.postDelayed(runnable, delayMillis);
}
public static boolean getBooleanFromJsObject(final NativeJSObject obj, final String name,
@@ -169,10 +187,20 @@ public class AddOnBridge
Log.d(TAG, "addSubscription for " + url + " (" + title + ")");
final Map<String, Object> parameters = new HashMap<String, Object>();
parameters.put("url", url);
- parameters.put("title", title);
+ if (title != null)
+ {
+ parameters.put("title", title);
+ }
callFunction(callback, "addSubscription", parameters);
}
+ public static void queryActiveSubscriptions(final AdblockPlusApiCallback callback)
+ {
+ Log.d(TAG, "queryActiveSubscriptions");
+ final Map<String, Object> parameters = new HashMap<String, Object>();
+ callFunction(callback, "getActiveSubscriptions", parameters);
+ }
+
public static void removeSubscription(final AdblockPlusApiCallback callback,
final String url)
{
@@ -281,7 +309,7 @@ public class AddOnBridge
{
Log.d(TAG, "Retrying: " + this.value);
final ChainedRequest next = this.cloneForRetry();
- HANDLER.postDelayed(new Runnable()
+ PRIVATE_HANDLER.postDelayed(new Runnable()
{
@Override
public void run()

Powered by Google App Engine
This is Rietveld