summaryrefslogtreecommitdiff
path: root/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h
diff options
context:
space:
mode:
authorLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
committerLorry Tar Creator <lorry-tar-importer@lorry>2017-06-27 06:07:23 +0000
commit1bf1084f2b10c3b47fd1a588d85d21ed0eb41d0c (patch)
tree46dcd36c86e7fbc6e5df36deb463b33e9967a6f7 /Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h
parent32761a6cee1d0dee366b885b7b9c777e67885688 (diff)
downloadWebKitGtk-tarball-master.tar.gz
Diffstat (limited to 'Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h')
-rw-r--r--Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h33
1 files changed, 18 insertions, 15 deletions
diff --git a/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h b/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h
index c3b390272..fe6bc6f56 100644
--- a/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h
+++ b/Source/WebKit2/UIProcess/Plugins/PlugInAutoStartProvider.h
@@ -26,6 +26,7 @@
#ifndef PlugInAutoStartProvider_h
#define PlugInAutoStartProvider_h
+#include <WebCore/SessionID.h>
#include <functional>
#include <wtf/HashMap.h>
#include <wtf/HashSet.h>
@@ -36,41 +37,43 @@
namespace API {
class Array;
+class Dictionary;
}
namespace WebKit {
-class ImmutableDictionary;
-class WebContext;
+class WebProcessPool;
-typedef HashMap<unsigned, double> PlugInAutoStartOriginHash;
+typedef HashMap<unsigned, double> PlugInAutoStartOriginMap;
+typedef HashMap<WebCore::SessionID, PlugInAutoStartOriginMap> SessionPlugInAutoStartOriginMap;
typedef Vector<String> PlugInAutoStartOrigins;
class PlugInAutoStartProvider {
WTF_MAKE_NONCOPYABLE(PlugInAutoStartProvider);
public:
- explicit PlugInAutoStartProvider(WebContext*);
+ explicit PlugInAutoStartProvider(WebProcessPool*);
- void addAutoStartOriginHash(const String& pageOrigin, unsigned plugInOriginHash);
- void didReceiveUserInteraction(unsigned plugInOriginHash);
+ void addAutoStartOriginHash(const String& pageOrigin, unsigned plugInOriginHash, WebCore::SessionID);
+ void didReceiveUserInteraction(unsigned plugInOriginHash, WebCore::SessionID);
- PassRefPtr<ImmutableDictionary> autoStartOriginsTableCopy() const;
- void setAutoStartOriginsTable(ImmutableDictionary&);
- void setAutoStartOriginsFilteringOutEntriesAddedAfterTime(ImmutableDictionary&, double time);
+ Ref<API::Dictionary> autoStartOriginsTableCopy() const;
+ void setAutoStartOriginsTable(API::Dictionary&);
+ void setAutoStartOriginsFilteringOutEntriesAddedAfterTime(API::Dictionary&, double time);
void setAutoStartOriginsArray(API::Array&);
- PlugInAutoStartOriginHash autoStartOriginHashesCopy() const;
+ SessionPlugInAutoStartOriginMap autoStartOriginHashesCopy() const;
const PlugInAutoStartOrigins& autoStartOrigins() const { return m_autoStartOrigins; }
private:
- WebContext* m_context;
+ WebProcessPool* m_processPool;
- void setAutoStartOriginsTableWithItemsPassingTest(ImmutableDictionary&, std::function<bool(double expirationTimestamp)>);
+ void setAutoStartOriginsTableWithItemsPassingTest(API::Dictionary&, std::function<bool(double expirationTimestamp)>);
- typedef HashMap<String, PlugInAutoStartOriginHash, CaseFoldingHash> AutoStartTable;
- AutoStartTable m_autoStartTable;
+ typedef HashMap<String, PlugInAutoStartOriginMap, ASCIICaseInsensitiveHash> AutoStartTable;
+ typedef HashMap<WebCore::SessionID, AutoStartTable> SessionAutoStartTable;
+ SessionAutoStartTable m_autoStartTable;
- HashMap<unsigned, String> m_hashToOriginMap;
+ HashMap<WebCore::SessionID, HashMap<unsigned, String>> m_hashToOriginMap;
PlugInAutoStartOrigins m_autoStartOrigins;
};