InjectedBundlePagePolicyClient.h [plain text]
#ifndef InjectedBundlePagePolicyClient_h
#define InjectedBundlePagePolicyClient_h
#include "APIClient.h"
#include "APIObject.h"
#include "WKBundlePage.h"
#include <wtf/Forward.h>
namespace API {
template<> struct ClientTraits<WKBundlePagePolicyClientBase> {
typedef std::tuple<WKBundlePagePolicyClientV0> Versions;
};
}
namespace WebCore {
class ResourceError;
class ResourceRequest;
class ResourceResponse;
}
namespace WebKit {
class InjectedBundleNavigationAction;
class WebFrame;
class WebPage;
class InjectedBundlePagePolicyClient : public API::Client<WKBundlePagePolicyClientBase> {
public:
WKBundlePagePolicyAction decidePolicyForNavigationAction(WebPage*, WebFrame*, InjectedBundleNavigationAction*, const WebCore::ResourceRequest&, RefPtr<API::Object>& userData);
WKBundlePagePolicyAction decidePolicyForNewWindowAction(WebPage*, WebFrame*, InjectedBundleNavigationAction*, const WebCore::ResourceRequest&, const String& frameName, RefPtr<API::Object>& userData);
WKBundlePagePolicyAction decidePolicyForResponse(WebPage*, WebFrame*, const WebCore::ResourceResponse&, const WebCore::ResourceRequest&, RefPtr<API::Object>& userData);
void unableToImplementPolicy(WebPage*, WebFrame*, const WebCore::ResourceError&, RefPtr<API::Object>& userData);
};
}
#endif // InjectedBundlePagePolicyClient_h