https://bugs.webkit.org/show_bug.cgi?id=165226
Reviewed by Dean Jackson.
Source/WebKit2:
* UIProcess/API/C/WKPreferences.cpp:
(WKPreferencesSetModernMediaControlsEnabled):
(WKPreferencesGetModernMediaControlsEnabled):
* UIProcess/API/C/WKPreferencesRefPrivate.h:
Tools:
* DumpRenderTree/TestOptions.h:
* DumpRenderTree/TestOptions.mm:
(TestOptions::TestOptions):
* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebPreferencesToConsistentValues):
* WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::beginTesting):
* WebKitTestRunner/TestController.cpp:
(WTR::TestController::resetPreferencesToConsistentValues):
(WTR::updateTestOptionsFromTestHeader):
* WebKitTestRunner/TestOptions.h:
* WebKitTestRunner/ios/PlatformWebViewIOS.mm:
(WTR::PlatformWebView::viewSupportsOptions):
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
(WTR::PlatformWebView::viewSupportsOptions):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@209161
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2016-11-30 Antoine Quint <graouts@apple.com>
+
+ [Modern Media Controls] Add an HTML comment flag to turn the feature on
+ https://bugs.webkit.org/show_bug.cgi?id=165226
+
+ Reviewed by Dean Jackson.
+
+ Add new methods to set the Modern Media Controls preference.
+
+ * UIProcess/API/C/WKPreferences.cpp:
+ (WKPreferencesSetModernMediaControlsEnabled):
+ (WKPreferencesGetModernMediaControlsEnabled):
+ * UIProcess/API/C/WKPreferencesRefPrivate.h:
+
2016-11-30 Said Abou-Hallawa <sabouhallawa@apple.com>
Add separate settings and preferences to enable/disable async decoding for large images and animated images
return toImpl(preferencesRef)->mediaControlsScaleWithPageZoom();
}
+void WKPreferencesSetModernMediaControlsEnabled(WKPreferencesRef preferencesRef, bool flag)
+{
+ toImpl(preferencesRef)->setModernMediaControlsEnabled(flag);
+}
+
+bool WKPreferencesGetModernMediaControlsEnabled(WKPreferencesRef preferencesRef)
+{
+ return toImpl(preferencesRef)->modernMediaControlsEnabled();
+}
+
void WKPreferencesSetShowsToolTipOverTruncatedText(WKPreferencesRef preferencesRef, bool flag)
{
toImpl(preferencesRef)->setShowsToolTipOverTruncatedText(flag);
WK_EXPORT bool WKPreferencesGetMediaControlsScaleWithPageZoom(WKPreferencesRef preferencesRef);
// Defaults to false.
+WK_EXPORT void WKPreferencesSetModernMediaControlsEnabled(WKPreferencesRef preferencesRef, bool flag);
+WK_EXPORT bool WKPreferencesGetModernMediaControlsEnabled(WKPreferencesRef preferencesRef);
+
+// Defaults to false.
WK_EXPORT void WKPreferencesSetShowsToolTipOverTruncatedText(WKPreferencesRef preferencesRef, bool flag);
WK_EXPORT bool WKPreferencesGetShowsToolTipOverTruncatedText(WKPreferencesRef preferencesRef);
+2016-11-30 Antoine Quint <graouts@apple.com>
+
+ [Modern Media Controls] Add an HTML comment flag to turn the feature on
+ https://bugs.webkit.org/show_bug.cgi?id=165226
+
+ Reviewed by Dean Jackson.
+
+ Add a new flag to turn Modern Media Controls on in the test runners.
+
+ * DumpRenderTree/TestOptions.h:
+ * DumpRenderTree/TestOptions.mm:
+ (TestOptions::TestOptions):
+ * DumpRenderTree/mac/DumpRenderTree.mm:
+ (resetWebPreferencesToConsistentValues):
+ * WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
+ (WTR::InjectedBundle::beginTesting):
+ * WebKitTestRunner/TestController.cpp:
+ (WTR::TestController::resetPreferencesToConsistentValues):
+ (WTR::updateTestOptionsFromTestHeader):
+ * WebKitTestRunner/TestOptions.h:
+ * WebKitTestRunner/ios/PlatformWebViewIOS.mm:
+ (WTR::PlatformWebView::viewSupportsOptions):
+ * WebKitTestRunner/mac/PlatformWebViewMac.mm:
+ (WTR::PlatformWebView::viewSupportsOptions):
+
2016-11-30 Said Abou-Hallawa <sabouhallawa@apple.com>
Add separate settings and preferences to enable/disable async decoding for large images and animated images
struct TestOptions {
bool enableIntersectionObserver { false };
+ bool enableModernMediaControls { false };
TestOptions(NSURL *testURL);
};
auto value = pairString.substr(equalsLocation + 1, pairEnd - (equalsLocation + 1));
if (key == "enableIntersectionObserver")
this->enableIntersectionObserver = parseBooleanTestHeaderValue(value);
+ else if (key == "enableModernMediaControls")
+ this->enableModernMediaControls = parseBooleanTestHeaderValue(value);
pairStart = pairEnd + 1;
}
}
[preferences setES6ModulesEnabled:YES];
- [preferences setModernMediaControlsEnabled:NO];
-
[preferences setHiddenPageDOMTimerThrottlingEnabled:NO];
[preferences setHiddenPageCSSAnimationSuspensionEnabled:NO];
preferences.intersectionObserverEnabled = options.enableIntersectionObserver;
+ preferences.modernMediaControlsEnabled = options.enableModernMediaControls;
[WebPreferences _clearNetworkLoaderSession];
[WebPreferences _setCurrentNetworkLoaderSessionCookieAcceptPolicy:NSHTTPCookieAcceptPolicyOnlyFromMainDocumentDomain];
m_testRunner->setWebGL2Enabled(true);
- m_testRunner->setModernMediaControlsEnabled(false);
-
m_testRunner->setFetchAPIEnabled(true);
m_testRunner->setDownloadAttributeEnabled(true);
WKPreferencesSetMockScrollbarsEnabled(preferences, options.useMockScrollbars);
WKPreferencesSetNeedsSiteSpecificQuirks(preferences, options.needsSiteSpecificQuirks);
WKPreferencesSetIntersectionObserverEnabled(preferences, options.enableIntersectionObserver);
+ WKPreferencesSetModernMediaControlsEnabled(preferences, options.enableModernMediaControls);
static WKStringRef defaultTextEncoding = WKStringCreateWithUTF8CString("ISO-8859-1");
WKPreferencesSetDefaultTextEncodingName(preferences, defaultTextEncoding);
testOptions.useCharacterSelectionGranularity = parseBooleanTestHeaderValue(value);
if (key == "enableIntersectionObserver")
testOptions.enableIntersectionObserver = parseBooleanTestHeaderValue(value);
+ if (key == "enableModernMediaControls")
+ testOptions.enableModernMediaControls = parseBooleanTestHeaderValue(value);
pairStart = pairEnd + 1;
}
}
bool ignoresViewportScaleLimits { false };
bool useCharacterSelectionGranularity { false };
bool enableIntersectionObserver { false };
+ bool enableModernMediaControls { false };
float deviceScaleFactor { 1 };
Vector<String> overrideLanguages;
if (m_options.overrideLanguages != options.overrideLanguages
|| m_options.needsSiteSpecificQuirks != options.needsSiteSpecificQuirks
|| m_options.useCharacterSelectionGranularity != options.useCharacterSelectionGranularity
- || m_options.enableIntersectionObserver != options.enableIntersectionObserver)
+ || m_options.enableIntersectionObserver != options.enableIntersectionObserver
+ || m_options.enableModernMediaControls != options.enableModernMediaControls)
return false;
return true;
|| m_options.overrideLanguages != options.overrideLanguages
|| m_options.useMockScrollbars != options.useMockScrollbars
|| m_options.needsSiteSpecificQuirks != options.needsSiteSpecificQuirks
- || m_options.enableIntersectionObserver != options.enableIntersectionObserver)
+ || m_options.enableIntersectionObserver != options.enableIntersectionObserver
+ || m_options.enableModernMediaControls != options.enableModernMediaControls)
return false;
return true;