WebProcessCreationParameters.h [plain text]
#ifndef WebProcessCreationParameters_h
#define WebProcessCreationParameters_h
#include "CacheModel.h"
#include "SandboxExtension.h"
#include "TextCheckerState.h"
#include <wtf/RetainPtr.h>
#include <wtf/Vector.h>
#include <wtf/text/StringHash.h>
#include <wtf/text/WTFString.h>
#if PLATFORM(MAC)
#include "MachPort.h"
#endif
namespace CoreIPC {
class ArgumentDecoder;
class ArgumentEncoder;
}
namespace WebKit {
struct WebProcessCreationParameters {
WebProcessCreationParameters();
void encode(CoreIPC::ArgumentEncoder*) const;
static bool decode(CoreIPC::ArgumentDecoder*, WebProcessCreationParameters&);
String injectedBundlePath;
SandboxExtension::Handle injectedBundlePathExtensionHandle;
String applicationCacheDirectory;
String databaseDirectory;
String localStorageDirectory;
Vector<String> urlSchemesRegistererdAsEmptyDocument;
Vector<String> urlSchemesRegisteredAsSecure;
Vector<String> urlSchemesForWhichDomainRelaxationIsForbidden;
Vector<String> mimeTypesWithCustomRepresentation;
CacheModel cacheModel;
bool shouldTrackVisitedLinks;
bool shouldAlwaysUseComplexTextCodePath;
bool shouldUseFontSmoothing;
bool iconDatabaseEnabled;
#if ENABLE(PLUGIN_PROCESS)
bool disablePluginProcessMessageTimeout;
#endif
Vector<String> languages;
TextCheckerState textCheckerState;
bool fullKeyboardAccessEnabled;
double defaultRequestTimeoutInterval;
#if PLATFORM(MAC) || USE(CFURLSTORAGESESSIONS)
String uiProcessBundleIdentifier;
#endif
#if PLATFORM(MAC)
String parentProcessName;
pid_t presenterApplicationPid;
String nsURLCachePath;
uint64_t nsURLCacheMemoryCapacity;
uint64_t nsURLCacheDiskCapacity;
CoreIPC::MachPort acceleratedCompositingPort;
String uiProcessBundleResourcePath;
String webInspectorBaseDirectory;
#elif PLATFORM(WIN)
String cfURLCachePath;
uint64_t cfURLCacheDiskCapacity;
uint64_t cfURLCacheMemoryCapacity;
uint32_t initialHTTPCookieAcceptPolicy;
bool shouldPaintNativeControls;
#if USE(CFURLSTORAGESESSIONS)
RetainPtr<CFDataRef> serializedDefaultStorageSession;
#endif // USE(CFURLSTORAGESESSIONS)
#endif // PLATFORM(WIN)
#if PLATFORM(QT)
String cookieStorageDirectory;
#endif
#if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
HashMap<String, bool> notificationPermissions;
#endif
};
}
#endif // WebProcessCreationParameters_h