| 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-2016 Eyeo GmbH |   3  * Copyright (C) 2006-2016 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 20 matching lines...) Expand all  Loading... | 
|  31   CComAutoCriticalSection m_criticalSection; |  31   CComAutoCriticalSection m_criticalSection; | 
|  32   CriticalSection m_csInject; |  32   CriticalSection m_csInject; | 
|  33  |  33  | 
|  34   std::wstring m_documentDomain; |  34   std::wstring m_documentDomain; | 
|  35   std::wstring m_documentUrl; |  35   std::wstring m_documentUrl; | 
|  36   CPluginUserSettings m_pluginUserSettings; |  36   CPluginUserSettings m_pluginUserSettings; | 
|  37   bool m_isActivated; |  37   bool m_isActivated; | 
|  38  |  38  | 
|  39   std::thread m_thread; |  39   std::thread m_thread; | 
|  40   std::atomic<bool> m_continueThreadRunning; |  40   std::atomic<bool> m_continueThreadRunning; | 
|  41   CPluginDomTraverser* m_traverser; |  41   std::unique_ptr<CPluginDomTraverser> m_traverser; | 
|  42 public: |  42 public: | 
|  43   CPluginFilter m_filter; |  43   class AsyncPluginFilter; | 
 |  44   std::shared_ptr<AsyncPluginFilter> m_asyncPluginFilter; | 
|  44 private: |  45 private: | 
|  45   void ThreadProc(); |  46   void ThreadProc(); | 
|  46   CComAutoCriticalSection m_criticalSectionCache; |  47   CComAutoCriticalSection m_criticalSectionCache; | 
|  47   std::set<std::wstring> m_cacheFrames; |  48   std::set<std::wstring> m_cacheFrames; | 
|  48   std::wstring m_cacheDomain; |  49   std::wstring m_cacheDomain; | 
|  49   void InjectABP(IWebBrowser2* browser); |  50   void InjectABP(IWebBrowser2* browser); | 
 |  51   bool IsTraverserEnabled(); | 
 |  52   bool IsCSSInjectionEnabled(); | 
|  50 public: |  53 public: | 
|  51  |  54  | 
|  52   CPluginTab(); |  55   CPluginTab(); | 
|  53   ~CPluginTab(); |  56   ~CPluginTab(); | 
|  54  |  57  | 
|  55   std::wstring GetDocumentDomain(); |  58   std::wstring GetDocumentDomain(); | 
|  56   void SetDocumentUrl(const std::wstring& url); |  59   void SetDocumentUrl(const std::wstring& url); | 
|  57   std::wstring GetDocumentUrl(); |  60   std::wstring GetDocumentUrl(); | 
|  58   virtual void OnActivate(); |  61   virtual void OnActivate(); | 
|  59   virtual void OnUpdate(); |  62   virtual void OnUpdate(); | 
|  60   virtual void OnNavigate(const std::wstring& url); |  63   virtual void OnNavigate(const std::wstring& url); | 
|  61   virtual void OnDownloadComplete(IWebBrowser2* browser); |  64   virtual void OnDownloadComplete(IWebBrowser2* browser); | 
|  62   virtual void OnDocumentComplete(IWebBrowser2* browser, const std::wstring& url
    , bool isDocumentBrowser); |  65   virtual void OnDocumentComplete(IWebBrowser2* browser, const std::wstring& url
    , bool isDocumentBrowser); | 
|  63   static DWORD WINAPI TabThreadProc(LPVOID pParam); |  66   static DWORD WINAPI TabThreadProc(LPVOID pParam); | 
|  64   void CacheFrame(const std::wstring& url); |  67   void CacheFrame(const std::wstring& url); | 
|  65   bool IsFrameCached(const std::wstring& url); |  68   bool IsFrameCached(const std::wstring& url); | 
|  66   void ClearFrameCache(const std::wstring& domain=L""); |  69   void ClearFrameCache(const std::wstring& domain=L""); | 
|  67   /** |  70   /** | 
|  68    * Is it possible to disable the current content of the present tab on a per-s
    ite basis? |  71    * Is it possible to disable the current content of the present tab on a per-s
    ite basis? | 
|  69    */ |  72    */ | 
|  70   bool IsPossibleToDisableOnSite(); |  73   bool IsPossibleToDisableOnSite(); | 
|  71 }; |  74 }; | 
|  72  |  75  | 
|  73 #endif // _PLUGIN_TAB_BASE_H_ |  76 #endif // _PLUGIN_TAB_BASE_H_ | 
| OLD | NEW |