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

Unified Diff: src/plugin/PluginTabBase.h

Issue 29323611: Issue #1234, #2058 - Rewrite log facility, improving thread implementation
Patch Set: Created Aug. 19, 2015, 5:42 p.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: src/plugin/PluginTabBase.h
===================================================================
--- a/src/plugin/PluginTabBase.h
+++ b/src/plugin/PluginTabBase.h
@@ -15,74 +15,66 @@
* along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>.
*/
-#ifndef _PLUGIN_TAB_BASE_H_
-#define _PLUGIN_TAB_BASE_H_
-
-class CPluginDomTraverser;
-
-#include "PluginUserSettings.h"
-#include "PluginFilter.h"
-#include "../shared/CriticalSection.h"
-#include <thread>
-#include <atomic>
-
-class CPluginClass;
-
-
-class CPluginTabBase
-{
-
- friend class CPluginClass;
-
-protected:
-
- CComAutoCriticalSection m_criticalSection;
- CriticalSection m_csInject;
-
- std::wstring m_documentDomain;
- std::wstring m_documentUrl;
- CPluginUserSettings m_pluginUserSettings;
-public:
- CPluginClass* m_plugin;
-protected:
- bool m_isActivated;
-
- std::thread m_thread;
- std::atomic<bool> m_continueThreadRunning;
- CPluginDomTraverser* m_traverser;
-public:
- std::auto_ptr<CPluginFilter> m_filter;
-private:
- void ThreadProc();
- CComAutoCriticalSection m_criticalSectionCache;
- std::set<std::wstring> m_cacheFrames;
- std::wstring m_cacheDomain;
- void SetDocumentUrl(const std::wstring& url);
- void InjectABP(IWebBrowser2* browser);
-public:
-
- CPluginTabBase(CPluginClass* plugin);
- ~CPluginTabBase();
-
- std::wstring GetDocumentDomain();
- std::wstring GetDocumentUrl();
- virtual void OnActivate();
- virtual void OnUpdate();
- virtual void OnNavigate(const std::wstring& url);
- virtual void OnDownloadComplete(IWebBrowser2* browser);
- virtual void OnDocumentComplete(IWebBrowser2* browser, const std::wstring& url, bool isDocumentBrowser);
- static DWORD WINAPI TabThreadProc(LPVOID pParam);
- void CacheFrame(const std::wstring& url);
- bool IsFrameCached(const std::wstring& url);
- void ClearFrameCache(const std::wstring& domain=L"");
-
-};
-
-/**
- * Temporary class used during refactoring.
- * This is the definition previously in AdblockPlusTab.h
- * Defining this class during refactoring alleviates the need to rename CPluginTabBase in the first change set.
- */
+#ifndef _PLUGIN_TAB_BASE_H_
+#define _PLUGIN_TAB_BASE_H_
+
+class CPluginDomTraverser;
+
+#include "PluginUserSettings.h"
+#include "PluginFilter.h"
+#include "../shared/CriticalSection.h"
+#include <thread>
+#include <atomic>
+
+class CPluginClass;
+
+
+class CPluginTabBase
+{
+
+ friend class CPluginClass;
+
+protected:
+
+ CComAutoCriticalSection m_criticalSection;
+ CriticalSection m_csInject;
+
+ std::wstring m_documentDomain;
+ std::wstring m_documentUrl;
+ CPluginUserSettings m_pluginUserSettings;
+public:
+ CPluginClass* m_plugin;
+protected:
+ CPluginDomTraverser* m_traverser;
+public:
+ std::auto_ptr<CPluginFilter> m_filter;
+private:
+ CComAutoCriticalSection m_criticalSectionCache;
+ std::set<std::wstring> m_cacheFrames;
+ std::wstring m_cacheDomain;
+ void SetDocumentUrl(const std::wstring& url);
+ void InjectABP(IWebBrowser2* browser);
+public:
+
+ CPluginTabBase(CPluginClass* plugin);
+ ~CPluginTabBase();
+
+ std::wstring GetDocumentDomain();
+ std::wstring GetDocumentUrl();
+ virtual void OnNavigate(const std::wstring& url);
+ virtual void OnDownloadComplete(IWebBrowser2* browser);
+ virtual void OnDocumentComplete(IWebBrowser2* browser, const std::wstring& url, bool isDocumentBrowser);
+ void CacheFrame(const std::wstring& url);
+ bool IsFrameCached(const std::wstring& url);
+ void ClearFrameCache(const std::wstring& domain=L"");
+
+};
+
+/**
+ * Temporary class used during refactoring.
+ * This is the definition previously in AdblockPlusTab.h
+ * Defining this class during refactoring alleviates the need to rename CPluginTabBase in the first change set.
+ */
class CPluginTab : public CPluginTabBase
{
@@ -91,6 +83,6 @@
~CPluginTab() {};
};
-
-
-#endif // _PLUGIN_TAB_BASE_H_
+
+
+#endif // _PLUGIN_TAB_BASE_H_

Powered by Google App Engine
This is Rietveld