| OLD | NEW | 
|    1 /* |    1 /* | 
|    2  * This file is part of Adblock Plus <https://adblockplus.org/>, |    2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
|    3  * Copyright (C) 2006-present eyeo GmbH |    3  * Copyright (C) 2006-present eyeo GmbH | 
|    4  * |    4  * | 
|    5  * Adblock Plus is free software: you can redistribute it and/or modify |    5  * Adblock Plus is free software: you can redistribute it and/or modify | 
|    6  * it under the terms of the GNU General Public License version 3 as |    6  * it under the terms of the GNU General Public License version 3 as | 
|    7  * published by the Free Software Foundation. |    7  * published by the Free Software Foundation. | 
|    8  * |    8  * | 
|    9  * Adblock Plus is distributed in the hope that it will be useful, |    9  * Adblock Plus is distributed in the hope that it will be useful, | 
|   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of |   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   75   static |   75   static | 
|   76   { |   76   { | 
|   77     for (int i = 0; i < BUILTIN_TITLES.length; i++) |   77     for (int i = 0; i < BUILTIN_TITLES.length; i++) | 
|   78     { |   78     { | 
|   79       BUILTIN_URL_TO_INDEX.put(BUILTIN_LISTS[i * 2 + 1], Integer.valueOf(i)); |   79       BUILTIN_URL_TO_INDEX.put(BUILTIN_LISTS[i * 2 + 1], Integer.valueOf(i)); | 
|   80     } |   80     } | 
|   81  |   81  | 
|   82     IGNORED_URLS.add("https://easylist-downloads.adblockplus.org/exceptionrules.
     txt"); |   82     IGNORED_URLS.add("https://easylist-downloads.adblockplus.org/exceptionrules.
     txt"); | 
|   83   } |   83   } | 
|   84  |   84  | 
|   85   private synchronized static void initRecommendedSubscriptions() |   85   private synchronized static void initRecommendedSubscriptions(Context context) | 
|   86   { |   86   { | 
|   87     if (recommendedSubscriptions == null) |   87     if (recommendedSubscriptions == null) | 
|   88     { |   88     { | 
|   89       recommendedSubscriptions = SubscriptionContainer.create(false); |   89       recommendedSubscriptions = SubscriptionContainer.create(context, false); | 
|   90  |   90  | 
|   91       for (SubscriptionContainer.Subscription s : recommendedSubscriptions.getSu
     bscriptions(false)) |   91       for (SubscriptionContainer.Subscription s : recommendedSubscriptions.getSu
     bscriptions(false)) | 
|   92       { |   92       { | 
|   93         IGNORED_URLS.add(s.url); |   93         IGNORED_URLS.add(s.url); | 
|   94       } |   94       } | 
|   95     } |   95     } | 
|   96   } |   96   } | 
|   97  |   97  | 
|   98   public MoreSubscriptionsPreferenceGroup(final Context context, final Attribute
     Set attrs) |   98   public MoreSubscriptionsPreferenceGroup(final Context context, final Attribute
     Set attrs) | 
|   99   { |   99   { | 
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  138     this.setEnabled(false); |  138     this.setEnabled(false); | 
|  139     this.setShouldDisableView(true); |  139     this.setShouldDisableView(true); | 
|  140  |  140  | 
|  141     super.onAttachedToActivity(); |  141     super.onAttachedToActivity(); | 
|  142  |  142  | 
|  143     this.progressDialog = new ProgressDialog(this.getContext()); |  143     this.progressDialog = new ProgressDialog(this.getContext()); | 
|  144     this.progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); |  144     this.progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); | 
|  145     this.progressDialog.setMessage(this.getContext().getString(R.string.abb_adbl
     ocking_waiting)); |  145     this.progressDialog.setMessage(this.getContext().getString(R.string.abb_adbl
     ocking_waiting)); | 
|  146     this.progressDialog.show(); |  146     this.progressDialog.show(); | 
|  147  |  147  | 
|  148     AddOnBridge.postToHandler(new Runnable() |  148     ExtensionBridge.postToHandler(new Runnable() | 
|  149     { |  149     { | 
|  150       @Override |  150       @Override | 
|  151       public void run() |  151       public void run() | 
|  152       { |  152       { | 
|  153         initRecommendedSubscriptions(); |  153         initRecommendedSubscriptions(getContext()); | 
|  154         MoreSubscriptionsPreferenceGroup.this.activeSubscriptions.refresh(); |  154         MoreSubscriptionsPreferenceGroup.this.activeSubscriptions.refresh(); | 
|  155  |  155  | 
|  156         ThreadUtils.postToUiThread(new Runnable() |  156         ThreadUtils.postToUiThread(new Runnable() | 
|  157         { |  157         { | 
|  158           @Override |  158           @Override | 
|  159           public void run() |  159           public void run() | 
|  160           { |  160           { | 
|  161             MoreSubscriptionsPreferenceGroup.this.initEntries(); |  161             MoreSubscriptionsPreferenceGroup.this.initEntries(); | 
|  162           } |  162           } | 
|  163         }); |  163         }); | 
| (...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  212   } |  212   } | 
|  213  |  213  | 
|  214   private void addNewSubscription(final String url) |  214   private void addNewSubscription(final String url) | 
|  215   { |  215   { | 
|  216     this.progressDialog = new ProgressDialog(this.getContext()); |  216     this.progressDialog = new ProgressDialog(this.getContext()); | 
|  217     this.progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); |  217     this.progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER); | 
|  218     this.progressDialog |  218     this.progressDialog | 
|  219         .setMessage(this.getContext().getString(R.string.abb_add_subscription_ad
     ding)); |  219         .setMessage(this.getContext().getString(R.string.abb_add_subscription_ad
     ding)); | 
|  220     this.progressDialog.show(); |  220     this.progressDialog.show(); | 
|  221  |  221  | 
|  222     AddOnBridge.postToHandler(new Runnable() |  222     ExtensionBridge.postToHandler(new Runnable() | 
|  223     { |  223     { | 
|  224       @Override |  224       @Override | 
|  225       public void run() |  225       public void run() | 
|  226       { |  226       { | 
|  227         try |  227         try | 
|  228         { |  228         { | 
|  229           final Semaphore finished = new Semaphore(0); |  229           final Semaphore finished = new Semaphore(0); | 
|  230  |  230  | 
|  231           AddOnBridge.addSubscription(url, null, new AdblockPlusApiCallback() |  231           ExtensionBridge.addSubscription(url, null, new AdblockPlusApiCallback(
     ) | 
|  232           { |  232           { | 
|  233             @Override |  233             @Override | 
|  234             public void onApiRequestSucceeded(GeckoBundle bundle) |  234             public void onApiRequestSucceeded(GeckoBundle bundle) | 
|  235             { |  235             { | 
|  236               finished.release(); |  236               finished.release(); | 
|  237             } |  237             } | 
|  238  |  238  | 
|  239             @Override |  239             @Override | 
|  240             public void onApiRequestFailed(String errorMessage) |  240             public void onApiRequestFailed(String errorMessage) | 
|  241             { |  241             { | 
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  275     this.addNewSubscription(input); |  275     this.addNewSubscription(input); | 
|  276   } |  276   } | 
|  277  |  277  | 
|  278   private static class ActiveSubscriptionContainer implements AdblockPlusApiCall
     back |  278   private static class ActiveSubscriptionContainer implements AdblockPlusApiCall
     back | 
|  279   { |  279   { | 
|  280     public final HashMap<String, String> enabledSubscriptions = new HashMap<Stri
     ng, String>(); |  280     public final HashMap<String, String> enabledSubscriptions = new HashMap<Stri
     ng, String>(); | 
|  281     private final Semaphore entriesReady = new Semaphore(0); |  281     private final Semaphore entriesReady = new Semaphore(0); | 
|  282  |  282  | 
|  283     public void refresh() |  283     public void refresh() | 
|  284     { |  284     { | 
|  285       AddOnBridge.queryActiveSubscriptions(this); |  285       ExtensionBridge.queryActiveSubscriptions(this); | 
|  286       this.entriesReady.acquireUninterruptibly(); |  286       this.entriesReady.acquireUninterruptibly(); | 
|  287     } |  287     } | 
|  288  |  288  | 
|  289     @Override |  289     @Override | 
|  290     public void onApiRequestSucceeded(GeckoBundle bundle) |  290     public void onApiRequestSucceeded(GeckoBundle bundle) | 
|  291     { |  291     { | 
|  292       try |  292       try | 
|  293       { |  293       { | 
|  294         this.enabledSubscriptions.clear(); |  294         this.enabledSubscriptions.clear(); | 
|  295         for (final GeckoBundle sub : bundle.getBundleArray("value")) |  295         for (final GeckoBundle sub : bundle.getBundleArray("value")) | 
| (...skipping 27 matching lines...) Expand all  Loading... | 
|  323     @Override |  323     @Override | 
|  324     public boolean onPreferenceChange(Preference preference, Object newValue) |  324     public boolean onPreferenceChange(Preference preference, Object newValue) | 
|  325     { |  325     { | 
|  326       if (preference instanceof CheckBoxPreference && newValue instanceof Boolea
     n) |  326       if (preference instanceof CheckBoxPreference && newValue instanceof Boolea
     n) | 
|  327       { |  327       { | 
|  328         final CheckBoxPreference cbp = (CheckBoxPreference) preference; |  328         final CheckBoxPreference cbp = (CheckBoxPreference) preference; | 
|  329         final boolean enable = ((Boolean) newValue).booleanValue(); |  329         final boolean enable = ((Boolean) newValue).booleanValue(); | 
|  330  |  330  | 
|  331         if (enable) |  331         if (enable) | 
|  332         { |  332         { | 
|  333           AddOnBridge.addSubscription(cbp.getKey(), null, this); |  333           ExtensionBridge.addSubscription(cbp.getKey(), null, this); | 
|  334         } |  334         } | 
|  335         else |  335         else | 
|  336         { |  336         { | 
|  337           AddOnBridge.removeSubscription(cbp.getKey(), this); |  337           ExtensionBridge.removeSubscription(cbp.getKey(), this); | 
|  338         } |  338         } | 
|  339       } |  339       } | 
|  340       return true; |  340       return true; | 
|  341     } |  341     } | 
|  342  |  342  | 
|  343     @Override |  343     @Override | 
|  344     public void onApiRequestSucceeded(GeckoBundle bundle) |  344     public void onApiRequestSucceeded(GeckoBundle bundle) | 
|  345     { |  345     { | 
|  346       // ignored |  346       // ignored | 
|  347     } |  347     } | 
|  348  |  348  | 
|  349     @Override |  349     @Override | 
|  350     public void onApiRequestFailed(String errorMessage) |  350     public void onApiRequestFailed(String errorMessage) | 
|  351     { |  351     { | 
|  352       // ignored |  352       // ignored | 
|  353     } |  353     } | 
|  354   } |  354   } | 
|  355 } |  355 } | 
| OLD | NEW |