summaryrefslogtreecommitdiff
path: root/Source/WebKit2/UIProcess/WebPageGroup.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/UIProcess/WebPageGroup.h')
-rw-r--r--Source/WebKit2/UIProcess/WebPageGroup.h38
1 files changed, 10 insertions, 28 deletions
diff --git a/Source/WebKit2/UIProcess/WebPageGroup.h b/Source/WebKit2/UIProcess/WebPageGroup.h
index 46027c5af..a3eba61ea 100644
--- a/Source/WebKit2/UIProcess/WebPageGroup.h
+++ b/Source/WebKit2/UIProcess/WebPageGroup.h
@@ -30,19 +30,22 @@
#include "WebPageGroupData.h"
#include "WebPageProxy.h"
#include "WebProcessProxy.h"
+#include <WebCore/UserStyleSheetTypes.h>
#include <wtf/Forward.h>
#include <wtf/HashSet.h>
+#include <wtf/text/WTFString.h>
namespace WebKit {
class WebPreferences;
class WebPageProxy;
+class WebUserContentControllerProxy;
class WebPageGroup : public API::ObjectImpl<API::Object::Type::PageGroup> {
public:
WebPageGroup(const String& identifier = String(), bool visibleToInjectedBundle = true, bool visibleToHistoryClient = true);
static PassRefPtr<WebPageGroup> create(const String& identifier = String(), bool visibleToInjectedBundle = true, bool visibleToHistoryClient = true);
- static PassRef<WebPageGroup> createNonNull(const String& identifier = String(), bool visibleToInjectedBundle = true, bool visibleToHistoryClient = true);
+ static Ref<WebPageGroup> createNonNull(const String& identifier = String(), bool visibleToInjectedBundle = true, bool visibleToHistoryClient = true);
static WebPageGroup* get(uint64_t pageGroupID);
virtual ~WebPageGroup();
@@ -50,44 +53,23 @@ public:
void addPage(WebPageProxy*);
void removePage(WebPageProxy*);
- const String& identifier() const { return m_data.identifer; }
uint64_t pageGroupID() const { return m_data.pageGroupID; }
- const WebPageGroupData& data() { return m_data; }
+ const WebPageGroupData& data() const { return m_data; }
void setPreferences(WebPreferences*);
- WebPreferences* preferences() const;
+ WebPreferences& preferences() const;
void preferencesDidChange();
-
- void addUserStyleSheet(const String& source, const String& baseURL, API::Array* whitelist, API::Array* blacklist, WebCore::UserContentInjectedFrames, WebCore::UserStyleLevel);
- void addUserScript(const String& source, const String& baseURL, API::Array* whitelist, API::Array* blacklist, WebCore::UserContentInjectedFrames, WebCore::UserScriptInjectionTime);
- void removeAllUserStyleSheets();
- void removeAllUserScripts();
- void removeAllUserContent();
-private:
- template<typename T> void sendToAllProcessesInGroup(const T&, uint64_t destinationID);
+ WebUserContentControllerProxy& userContentController();
+private:
WebPageGroupData m_data;
- mutable RefPtr<WebPreferences> m_preferences;
+ RefPtr<WebPreferences> m_preferences;
+ RefPtr<WebUserContentControllerProxy> m_userContentController;
HashSet<WebPageProxy*> m_pages;
};
-template<typename T>
-void WebPageGroup::sendToAllProcessesInGroup(const T& message, uint64_t destinationID)
-{
- HashSet<WebProcessProxy*> processesSeen;
-
- for (WebPageProxy* webPageProxy : m_pages) {
- WebProcessProxy& webProcessProxy = webPageProxy->process();
- if (!processesSeen.add(&webProcessProxy).isNewEntry)
- continue;
-
- if (webProcessProxy.canSendMessage())
- webProcessProxy.send(T(message), destinationID);
- }
-}
-
} // namespace WebKit
#endif // WebPageGroup_h