summaryrefslogtreecommitdiff
path: root/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp')
-rw-r--r--Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp b/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp
index d809d611b..127715c7a 100644
--- a/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp
+++ b/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp
@@ -131,6 +131,30 @@ void InjectedBundle::overrideBoolPreferenceForTestRunner(WebPageGroupProxy* page
// FIXME: Need an explicit way to set "WebKitTabToLinksPreferenceKey" directly in WebPage.
+ if (preference == "WebKit2AsynchronousPluginInitializationEnabled") {
+ WebPreferencesStore::overrideBoolValueForKey(WebPreferencesKey::asynchronousPluginInitializationEnabledKey(), enabled);
+ for (HashSet<Page*>::iterator i = pages.begin(); i != pages.end(); ++i) {
+ WebPage* webPage = static_cast<WebFrameLoaderClient*>((*i)->mainFrame()->loader()->client())->webFrame()->page();
+ webPage->setAsynchronousPluginInitializationEnabled(enabled);
+ }
+ }
+
+ if (preference == "WebKit2AsynchronousPluginInitializationEnabledForAllPlugins") {
+ WebPreferencesStore::overrideBoolValueForKey(WebPreferencesKey::asynchronousPluginInitializationEnabledForAllPluginsKey(), enabled);
+ for (HashSet<Page*>::iterator i = pages.begin(); i != pages.end(); ++i) {
+ WebPage* webPage = static_cast<WebFrameLoaderClient*>((*i)->mainFrame()->loader()->client())->webFrame()->page();
+ webPage->setAsynchronousPluginInitializationEnabledForAllPlugins(enabled);
+ }
+ }
+
+ if (preference == "WebKit2ArtificialPluginInitializationDelayEnabled") {
+ WebPreferencesStore::overrideBoolValueForKey(WebPreferencesKey::artificialPluginInitializationDelayEnabledKey(), enabled);
+ for (HashSet<Page*>::iterator i = pages.begin(); i != pages.end(); ++i) {
+ WebPage* webPage = static_cast<WebFrameLoaderClient*>((*i)->mainFrame()->loader()->client())->webFrame()->page();
+ webPage->setArtificialPluginInitializationDelayEnabled(enabled);
+ }
+ }
+
// Map the names used in LayoutTests with the names used in WebCore::Settings and WebPreferencesStore.
#define FOR_EACH_OVERRIDE_BOOL_PREFERENCE(macro) \
macro(WebKitAcceleratedCompositingEnabled, AcceleratedCompositingEnabled, acceleratedCompositingEnabled) \
@@ -479,4 +503,11 @@ void InjectedBundle::setPageVisibilityState(WebPage* page, int state, bool isIni
#endif
}
+void InjectedBundle::setUserStyleSheetLocation(WebPageGroupProxy* pageGroup, const String& location)
+{
+ const HashSet<Page*>& pages = PageGroup::pageGroup(pageGroup->identifier())->pages();
+ for (HashSet<Page*>::iterator iter = pages.begin(); iter != pages.end(); ++iter)
+ (*iter)->settings()->setUserStyleSheetLocation(KURL(KURL(), location));
+}
+
} // namespace WebKit