<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[184670] trunk/Source</title>
</head>
<body>
<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; }
#msg dl a { font-weight: bold}
#msg dl a:link { color:#fc3; }
#msg dl a:active { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/184670">184670</a></dd>
<dt>Author</dt> <dd>jer.noble@apple.com</dd>
<dt>Date</dt> <dd>2015-05-20 16:12:09 -0700 (Wed, 20 May 2015)</dd>
</dl>
<h3>Log Message</h3>
<pre>Touching HTMLMediaElement.h or MediaPlayer.h causes a world rebuild.
https://bugs.webkit.org/show_bug.cgi?id=145193
Reviewed by Eric Carlson.
Source/WebCore:
HTMLMediaElement.h and MediaPlayer.h are included in a number of headers solely for access to the enums
defined within the classes contained within. Move these enums into their own--otherwise empty--classes.
Then add `using` declarations to pull those inherited enums back into the namespace of HTMLMediaElement
and MediaPlayer.
Classes and headers which do not need to directly include HTMLMediaElement.h can now include HTMLMediaElementEnums.h
instead; the same goes for MediaPlayer.h and MediaPlayerEnums.h.
* WebCore.xcodeproj/project.pbxproj: Add new files to project.
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::TrackGroup::TrackGroup): Move definition here from the header.
* html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::videoFullscreenGravity): MediaPlayer -> MediaPlayerEnums.
(WebCore::HTMLMediaElement::preloadValue): Ditto.
(WebCore::HTMLMediaElement::TrackGroup::TrackGroup): Deleted; moved to implementation file.
* html/HTMLMediaElementEnums.h: Added.
* html/MediaControllerInterface.h: Inherit from HTMLMediaElementEnums.
* page/ChromeClient.h: HTMLMediaElement -> HTMLMediaElementEnums.
* platform/graphics/MediaPlayer.h: MediaPlayer -> MediaPlayerEnums.
* platform/graphics/MediaPlayerEnums.h: Added.
* platform/ios/WebVideoFullscreenControllerAVKit.h:
* platform/ios/WebVideoFullscreenControllerAVKit.mm:
(-[WebVideoFullscreenController enterFullscreen:mode:]): HTMLMediaElement -> HTMLMediaElementEnums.
* platform/ios/WebVideoFullscreenInterfaceAVKit.h:
* platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
(WebVideoFullscreenInterfaceAVKit::setupFullscreen): Ditto.
(WebVideoFullscreenInterfaceAVKit::setupFullscreenInternal): Ditto.
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): Ditto.
(WebVideoFullscreenInterfaceAVKit::exitFullscreenInternal): Ditto.
(WebVideoFullscreenInterfaceAVKit::cleanupFullscreenInternal): Ditto.
(WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen): Ditto.
(WebVideoFullscreenInterfaceAVKit::mayAutomaticallyShowVideoOptimized): Ditto.
(WebVideoFullscreenInterfaceAVKit::willStartOptimizedFullscreen): Ditto.
(WebVideoFullscreenInterfaceAVKit::didStopOptimizedFullscreen): Ditto.
(WebVideoFullscreenInterfaceAVKit::didCancelOptimizedFullscreen): Ditto.
(WebVideoFullscreenInterfaceAVKit::setMode): Ditto.
(WebVideoFullscreenInterfaceAVKit::clearMode): Ditto.
* platform/ios/WebVideoFullscreenModel.h:
* platform/ios/WebVideoFullscreenModelVideoElement.h:
* platform/ios/WebVideoFullscreenModelVideoElement.mm:
(WebVideoFullscreenModelVideoElement::setVideoElement): Ditto.
(WebVideoFullscreenModelVideoElement::fullscreenModeChanged): Ditto.
Source/WebKit/mac:
Use HTMLMediaElementEnums instead of HTMLMediaElement.
* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::enterVideoFullscreenForVideoElement): HTMLMediaElement -> HTMLMediaElementEnums.
* WebView/WebView.mm:
(-[WebView _enterVideoFullscreenForVideoElement:mode:]): Ditto.
* WebView/WebViewInternal.h:
Source/WebKit2:
Use HTMLMediaElementEnums instead of HTMLMediaElement.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _isShowingVideoOptimized]): HTMLMediaElement -> HTMLMediaElementEnums.
* UIProcess/ios/WebVideoFullscreenManagerProxy.h:
* UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
* UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
(WebKit::WebVideoFullscreenManagerProxy::hasMode): Ditto.
(WebKit::WebVideoFullscreenModelContext::fullscreenModeChanged): Ditto.
(WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Ditto.
(WebKit::WebVideoFullscreenManagerProxy::fullscreenModeChanged): Ditto.
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::enterVideoFullscreenForVideoElement): Ditto.
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/ios/WebVideoFullscreenManager.h:
(WebKit::WebVideoFullscreenInterfaceContext::fullscreenMode): Ditto.
(WebKit::WebVideoFullscreenInterfaceContext::setFullscreenMode): Ditto.
* WebProcess/ios/WebVideoFullscreenManager.messages.in:
* WebProcess/ios/WebVideoFullscreenManager.mm:
(WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): Ditto.
(WebKit::WebVideoFullscreenManager::fullscreenModeChanged): Ditto.
(WebKit::WebVideoFullscreenManager::didCleanupFullscreen): Ditto.</pre>
<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreWebCorexcodeprojprojectpbxproj">trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLMediaElementcpp">trunk/Source/WebCore/html/HTMLMediaElement.cpp</a></li>
<li><a href="#trunkSourceWebCorehtmlHTMLMediaElementh">trunk/Source/WebCore/html/HTMLMediaElement.h</a></li>
<li><a href="#trunkSourceWebCorehtmlMediaControllerInterfaceh">trunk/Source/WebCore/html/MediaControllerInterface.h</a></li>
<li><a href="#trunkSourceWebCorepageChromeClienth">trunk/Source/WebCore/page/ChromeClient.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsMediaPlayerh">trunk/Source/WebCore/platform/graphics/MediaPlayer.h</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWebVideoFullscreenControllerAVKith">trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWebVideoFullscreenControllerAVKitmm">trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWebVideoFullscreenInterfaceAVKith">trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.h</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWebVideoFullscreenInterfaceAVKitmm">trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWebVideoFullscreenModelh">trunk/Source/WebCore/platform/ios/WebVideoFullscreenModel.h</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWebVideoFullscreenModelVideoElementh">trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.h</a></li>
<li><a href="#trunkSourceWebCoreplatformiosWebVideoFullscreenModelVideoElementmm">trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.mm</a></li>
<li><a href="#trunkSourceWebKitmacChangeLog">trunk/Source/WebKit/mac/ChangeLog</a></li>
<li><a href="#trunkSourceWebKitmacWebCoreSupportWebChromeClienth">trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h</a></li>
<li><a href="#trunkSourceWebKitmacWebCoreSupportWebChromeClientmm">trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebViewmm">trunk/Source/WebKit/mac/WebView/WebView.mm</a></li>
<li><a href="#trunkSourceWebKitmacWebViewWebViewInternalh">trunk/Source/WebKit/mac/WebView/WebViewInternal.h</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2UIProcessAPICocoaWKWebViewmm">trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm</a></li>
<li><a href="#trunkSourceWebKit2UIProcessiosWebVideoFullscreenManagerProxyh">trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.h</a></li>
<li><a href="#trunkSourceWebKit2UIProcessiosWebVideoFullscreenManagerProxymessagesin">trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in</a></li>
<li><a href="#trunkSourceWebKit2UIProcessiosWebVideoFullscreenManagerProxymm">trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebCoreSupportWebChromeClientcpp">trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebCoreSupportWebChromeClienth">trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessiosWebVideoFullscreenManagerh">trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessiosWebVideoFullscreenManagermessagesin">trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.messages.in</a></li>
<li><a href="#trunkSourceWebKit2WebProcessiosWebVideoFullscreenManagermm">trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm</a></li>
</ul>
<h3>Added Paths</h3>
<ul>
<li><a href="#trunkSourceWebCorehtmlHTMLMediaElementEnumsh">trunk/Source/WebCore/html/HTMLMediaElementEnums.h</a></li>
<li><a href="#trunkSourceWebCoreplatformgraphicsMediaPlayerEnumsh">trunk/Source/WebCore/platform/graphics/MediaPlayerEnums.h</a></li>
</ul>
</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/ChangeLog        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -1,3 +1,53 @@
</span><ins>+2015-05-19 Jer Noble <jer.noble@apple.com>
+
+ Touching HTMLMediaElement.h or MediaPlayer.h causes a world rebuild.
+ https://bugs.webkit.org/show_bug.cgi?id=145193
+
+ Reviewed by Eric Carlson.
+
+ HTMLMediaElement.h and MediaPlayer.h are included in a number of headers solely for access to the enums
+ defined within the classes contained within. Move these enums into their own--otherwise empty--classes.
+ Then add `using` declarations to pull those inherited enums back into the namespace of HTMLMediaElement
+ and MediaPlayer.
+
+ Classes and headers which do not need to directly include HTMLMediaElement.h can now include HTMLMediaElementEnums.h
+ instead; the same goes for MediaPlayer.h and MediaPlayerEnums.h.
+
+ * WebCore.xcodeproj/project.pbxproj: Add new files to project.
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::TrackGroup::TrackGroup): Move definition here from the header.
+ * html/HTMLMediaElement.h:
+ (WebCore::HTMLMediaElement::videoFullscreenGravity): MediaPlayer -> MediaPlayerEnums.
+ (WebCore::HTMLMediaElement::preloadValue): Ditto.
+ (WebCore::HTMLMediaElement::TrackGroup::TrackGroup): Deleted; moved to implementation file.
+ * html/HTMLMediaElementEnums.h: Added.
+ * html/MediaControllerInterface.h: Inherit from HTMLMediaElementEnums.
+ * page/ChromeClient.h: HTMLMediaElement -> HTMLMediaElementEnums.
+ * platform/graphics/MediaPlayer.h: MediaPlayer -> MediaPlayerEnums.
+ * platform/graphics/MediaPlayerEnums.h: Added.
+ * platform/ios/WebVideoFullscreenControllerAVKit.h:
+ * platform/ios/WebVideoFullscreenControllerAVKit.mm:
+ (-[WebVideoFullscreenController enterFullscreen:mode:]): HTMLMediaElement -> HTMLMediaElementEnums.
+ * platform/ios/WebVideoFullscreenInterfaceAVKit.h:
+ * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
+ (WebVideoFullscreenInterfaceAVKit::setupFullscreen): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::setupFullscreenInternal): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::enterFullscreen): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::exitFullscreenInternal): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::cleanupFullscreenInternal): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::mayAutomaticallyShowVideoOptimized): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::willStartOptimizedFullscreen): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::didStopOptimizedFullscreen): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::didCancelOptimizedFullscreen): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::setMode): Ditto.
+ (WebVideoFullscreenInterfaceAVKit::clearMode): Ditto.
+ * platform/ios/WebVideoFullscreenModel.h:
+ * platform/ios/WebVideoFullscreenModelVideoElement.h:
+ * platform/ios/WebVideoFullscreenModelVideoElement.mm:
+ (WebVideoFullscreenModelVideoElement::setVideoElement): Ditto.
+ (WebVideoFullscreenModelVideoElement::fullscreenModeChanged): Ditto.
+
</ins><span class="cx"> 2015-05-20 Roger Fong <roger_fong@apple.com>
</span><span class="cx">
</span><span class="cx"> Media Controls stop updating after hovering for a few seconds.
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -5729,6 +5729,8 @@
</span><span class="cx">                 CD3E252318046BCD00E27F56 /* CSSGridTemplateAreasValue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD3E252118046BCD00E27F56 /* CSSGridTemplateAreasValue.cpp */; };
</span><span class="cx">                 CD3E252418046BCD00E27F56 /* CSSGridTemplateAreasValue.h in Headers */ = {isa = PBXBuildFile; fileRef = CD3E252218046BCD00E27F56 /* CSSGridTemplateAreasValue.h */; };
</span><span class="cx">                 CD4AC52A1496AE9A0087C4EF /* Composite.wav in Copy Audio Resources */ = {isa = PBXBuildFile; fileRef = CD4AC5281496AE2F0087C4EF /* Composite.wav */; };
</span><ins>+                CD5209E41B0BD8380077184E /* MediaPlayerEnums.h in Headers */ = {isa = PBXBuildFile; fileRef = CD5209E31B0BD8380077184E /* MediaPlayerEnums.h */; settings = {ATTRIBUTES = (Private, ); }; };
+                CD5209E61B0BD9E10077184E /* HTMLMediaElementEnums.h in Headers */ = {isa = PBXBuildFile; fileRef = CD5209E51B0BD9E10077184E /* HTMLMediaElementEnums.h */; settings = {ATTRIBUTES = (Private, ); }; };
</ins><span class="cx">                 CD52481A18E200ED0008A07D /* DisplaySleepDisabler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD52481818E200ED0008A07D /* DisplaySleepDisabler.cpp */; };
</span><span class="cx">                 CD52481B18E200ED0008A07D /* DisplaySleepDisabler.h in Headers */ = {isa = PBXBuildFile; fileRef = CD52481918E200ED0008A07D /* DisplaySleepDisabler.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 CD5393D3175E018600C07123 /* JSMemoryInfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = CD5393D1175E018600C07123 /* JSMemoryInfo.cpp */; };
</span><span class="lines">@@ -13293,6 +13295,8 @@
</span><span class="cx">                 CD4097FF1A8C855F004C65E9 /* CFNSURLConnectionSPI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFNSURLConnectionSPI.h; sourceTree = "<group>"; };
</span><span class="cx">                 CD4AC5281496AE2F0087C4EF /* Composite.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; name = Composite.wav; path = platform/audio/resources/Composite.wav; sourceTree = SOURCE_ROOT; };
</span><span class="cx">                 CD4E0AFA11F7BC27009D3811 /* fullscreen.css */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.css; path = fullscreen.css; sourceTree = "<group>"; };
</span><ins>+                CD5209E31B0BD8380077184E /* MediaPlayerEnums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MediaPlayerEnums.h; sourceTree = "<group>"; };
+                CD5209E51B0BD9E10077184E /* HTMLMediaElementEnums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTMLMediaElementEnums.h; sourceTree = "<group>"; };
</ins><span class="cx">                 CD52481818E200ED0008A07D /* DisplaySleepDisabler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DisplaySleepDisabler.cpp; sourceTree = "<group>"; };
</span><span class="cx">                 CD52481918E200ED0008A07D /* DisplaySleepDisabler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DisplaySleepDisabler.h; sourceTree = "<group>"; };
</span><span class="cx">                 CD5393CB175DCCE600C07123 /* MemoryInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemoryInfo.h; sourceTree = "<group>"; };
</span><span class="lines">@@ -18160,6 +18164,7 @@
</span><span class="cx">                                 E44613920CD6331000FADA75 /* HTMLMediaElement.cpp */,
</span><span class="cx">                                 E44613930CD6331000FADA75 /* HTMLMediaElement.h */,
</span><span class="cx">                                 E44613940CD6331000FADA75 /* HTMLMediaElement.idl */,
</span><ins>+                                CD5209E51B0BD9E10077184E /* HTMLMediaElementEnums.h */,
</ins><span class="cx">                                 07FE99DA18807A7D00256648 /* HTMLMediaSession.cpp */,
</span><span class="cx">                                 07FE99DB18807A7D00256648 /* HTMLMediaSession.h */,
</span><span class="cx">                                 A8EA79EC0A1916DF00A8EF5F /* HTMLMenuElement.cpp */,
</span><span class="lines">@@ -20893,6 +20898,7 @@
</span><span class="cx">                                 078E43D81ABB6C7E001C2FA6 /* MediaPlaybackTargetPicker.h */,
</span><span class="cx">                                 E4B41E0C0CBF90BD00AF2ECE /* MediaPlayer.cpp */,
</span><span class="cx">                                 E4B41E0D0CBF90BD00AF2ECE /* MediaPlayer.h */,
</span><ins>+                                CD5209E31B0BD8380077184E /* MediaPlayerEnums.h */,
</ins><span class="cx">                                 079F5E4B0F3BEBEA005E0782 /* MediaPlayerPrivate.h */,
</span><span class="cx">                                 CD641EB11818F5ED00EE4C41 /* MediaSourcePrivate.h */,
</span><span class="cx">                                 CDDC1E7918A952F30027A9D4 /* MediaSourcePrivateClient.h */,
</span><span class="lines">@@ -23846,6 +23852,7 @@
</span><span class="cx">                                 51741D0F0B07259A00ED442C /* BackForwardClient.h in Headers */,
</span><span class="cx">                                 BCA8C81E11E3D36900812FB7 /* BackForwardController.h in Headers */,
</span><span class="cx">                                 BCA8CA6011E4E6D100812FB7 /* BackForwardList.h in Headers */,
</span><ins>+                                CD5209E61B0BD9E10077184E /* HTMLMediaElementEnums.h in Headers */,
</ins><span class="cx">                                 BC124EE80C2641CD009E2349 /* BarProp.h in Headers */,
</span><span class="cx">                                 379E61CA126CA5C400B63E8D /* BaseButtonInputType.h in Headers */,
</span><span class="cx">                                 379E61CC126CA5C400B63E8D /* BaseCheckableInputType.h in Headers */,
</span><span class="lines">@@ -27029,6 +27036,7 @@
</span><span class="cx">                                 7AF9B20618CFB2DF00C64BEF /* VTTRegionList.h in Headers */,
</span><span class="cx">                                 7A93868618DCC14500B8263D /* VTTScanner.h in Headers */,
</span><span class="cx">                                 A14832B0187F618D00DA63A6 /* WAKAppKitStubs.h in Headers */,
</span><ins>+                                CD5209E41B0BD8380077184E /* MediaPlayerEnums.h in Headers */,
</ins><span class="cx">                                 A14832B2187F61ED00DA63A6 /* WAKClipView.h in Headers */,
</span><span class="cx">                                 A14832B4187F629A00DA63A6 /* WAKResponder.h in Headers */,
</span><span class="cx">                                 A14832B6187F631F00DA63A6 /* WAKScrollView.h in Headers */,
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLMediaElementcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLMediaElement.cpp        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -62,6 +62,7 @@
</span><span class="cx"> #include "MediaFragmentURIParser.h"
</span><span class="cx"> #include "MediaKeyEvent.h"
</span><span class="cx"> #include "MediaList.h"
</span><ins>+#include "MediaPlayer.h"
</ins><span class="cx"> #include "MediaQueryEvaluator.h"
</span><span class="cx"> #include "MediaResourceLoader.h"
</span><span class="cx"> #include "MediaSessionManager.h"
</span><span class="lines">@@ -253,6 +254,24 @@
</span><span class="cx"> };
</span><span class="cx"> #endif
</span><span class="cx">
</span><ins>+struct HTMLMediaElement::TrackGroup {
+ enum GroupKind { CaptionsAndSubtitles, Description, Chapter, Metadata, Other };
+
+ TrackGroup(GroupKind kind)
+ : visibleTrack(0)
+ , defaultTrack(0)
+ , kind(kind)
+ , hasSrcLang(false)
+ {
+ }
+
+ Vector<RefPtr<TextTrack>> tracks;
+ RefPtr<TextTrack> visibleTrack;
+ RefPtr<TextTrack> defaultTrack;
+ GroupKind kind;
+ bool hasSrcLang;
+};
+
</ins><span class="cx"> HTMLMediaElement::HTMLMediaElement(const QualifiedName& tagName, Document& document, bool createdByParser)
</span><span class="cx"> : HTMLElement(tagName, document)
</span><span class="cx"> , ActiveDOMObject(&document)
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLMediaElementh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLMediaElement.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/html/HTMLMediaElement.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -31,10 +31,10 @@
</span><span class="cx"> #include "ActiveDOMObject.h"
</span><span class="cx"> #include "GenericEventQueue.h"
</span><span class="cx"> #include "GenericTaskQueue.h"
</span><ins>+#include "HTMLMediaElementEnums.h"
</ins><span class="cx"> #include "HTMLMediaSession.h"
</span><span class="cx"> #include "MediaCanStartListener.h"
</span><span class="cx"> #include "MediaControllerInterface.h"
</span><del>-#include "MediaPlayer.h"
</del><span class="cx"> #include "MediaProducer.h"
</span><span class="cx"> #include "PageThrottler.h"
</span><span class="cx">
</span><span class="lines">@@ -67,6 +67,7 @@
</span><span class="cx"> class MediaControls;
</span><span class="cx"> class MediaControlsHost;
</span><span class="cx"> class MediaError;
</span><ins>+class MediaPlayer;
</ins><span class="cx"> class TimeRanges;
</span><span class="cx"> #if ENABLE(ENCRYPTED_MEDIA_V2)
</span><span class="cx"> class MediaKeys;
</span><span class="lines">@@ -131,22 +132,14 @@
</span><span class="cx"> void setVideoFullscreenLayer(PlatformLayer*);
</span><span class="cx"> PlatformLayer* videoFullscreenLayer() const { return m_videoFullscreenLayer.get(); }
</span><span class="cx"> void setVideoFullscreenFrame(FloatRect);
</span><del>- void setVideoFullscreenGravity(MediaPlayer::VideoGravity);
- MediaPlayer::VideoGravity videoFullscreenGravity() const { return m_videoFullscreenGravity; }
</del><ins>+ void setVideoFullscreenGravity(MediaPlayerEnums::VideoGravity);
+ MediaPlayerEnums::VideoGravity videoFullscreenGravity() const { return m_videoFullscreenGravity; }
</ins><span class="cx"> #endif
</span><span class="cx">
</span><del>- enum DelayedActionType {
- LoadMediaResource = 1 << 0,
- ConfigureTextTracks = 1 << 1,
- TextTrackChangesNotification = 1 << 2,
- ConfigureTextTrackDisplay = 1 << 3,
- CheckPlaybackTargetCompatablity = 1 << 4,
-
- EveryDelayedAction = LoadMediaResource | ConfigureTextTracks | TextTrackChangesNotification | ConfigureTextTrackDisplay | CheckPlaybackTargetCompatablity,
- };
</del><ins>+ using HTMLMediaElementEnums::DelayedActionType;
</ins><span class="cx"> void scheduleDelayedAction(DelayedActionType);
</span><span class="cx">
</span><del>- MediaPlayer::MovieLoadType movieLoadType() const;
</del><ins>+ MediaPlayerEnums::MovieLoadType movieLoadType() const;
</ins><span class="cx">
</span><span class="cx"> bool inActiveDocument() const { return m_inActiveDocument; }
</span><span class="cx">
</span><span class="lines">@@ -163,7 +156,7 @@
</span><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> // network state
</span><del>- enum NetworkState { NETWORK_EMPTY, NETWORK_IDLE, NETWORK_LOADING, NETWORK_NO_SOURCE };
</del><ins>+ using HTMLMediaElementEnums::NetworkState;
</ins><span class="cx"> NetworkState networkState() const;
</span><span class="cx">
</span><span class="cx"> String preload() const;
</span><span class="lines">@@ -174,6 +167,7 @@
</span><span class="cx"> String canPlayType(const String& mimeType, const String& keySystem = String(), const URL& = URL()) const;
</span><span class="cx">
</span><span class="cx"> // ready state
</span><ins>+ using HTMLMediaElementEnums::ReadyState;
</ins><span class="cx"> virtual ReadyState readyState() const override;
</span><span class="cx"> bool seeking() const;
</span><span class="cx">
</span><span class="lines">@@ -306,24 +300,7 @@
</span><span class="cx"> PlatformTextTrackMenuInterface* platformTextTrackMenu();
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- struct TrackGroup {
- enum GroupKind { CaptionsAndSubtitles, Description, Chapter, Metadata, Other };
-
- TrackGroup(GroupKind kind)
- : visibleTrack(0)
- , defaultTrack(0)
- , kind(kind)
- , hasSrcLang(false)
- {
- }
-
- Vector<RefPtr<TextTrack>> tracks;
- RefPtr<TextTrack> visibleTrack;
- RefPtr<TextTrack> defaultTrack;
- GroupKind kind;
- bool hasSrcLang;
- };
-
</del><ins>+ struct TrackGroup;
</ins><span class="cx"> void configureTextTrackGroupForLanguage(const TrackGroup&) const;
</span><span class="cx"> void configureTextTracks();
</span><span class="cx"> void configureTextTrackGroup(const TrackGroup&);
</span><span class="lines">@@ -331,7 +308,7 @@
</span><span class="cx"> void setSelectedTextTrack(TextTrack*);
</span><span class="cx">
</span><span class="cx"> bool textTracksAreReady() const;
</span><del>- enum TextTrackVisibilityCheckType { CheckTextTrackVisibility, AssumeTextTrackVisibilityChanged };
</del><ins>+ using HTMLMediaElementEnums::TextTrackVisibilityCheckType;
</ins><span class="cx"> void configureTextTrackDisplay(TextTrackVisibilityCheckType checkType = CheckTextTrackVisibility);
</span><span class="cx"> void updateTextTrackDisplay();
</span><span class="cx">
</span><span class="lines">@@ -381,13 +358,7 @@
</span><span class="cx"> WEBCORE_EXPORT virtual bool isFullscreen() const override;
</span><span class="cx"> void toggleFullscreenState();
</span><span class="cx">
</span><del>- enum {
- VideoFullscreenModeNone = 0,
- VideoFullscreenModeStandard = 1 << 0,
- VideoFullscreenModeOptimized = 1 << 1,
- };
- typedef uint32_t VideoFullscreenMode;
-
</del><ins>+ using MediaPlayerEnums::VideoFullscreenMode;
</ins><span class="cx"> VideoFullscreenMode fullscreenMode() const { return m_videoFullscreenMode; }
</span><span class="cx"> virtual void fullscreenModeChanged(VideoFullscreenMode mode) { m_videoFullscreenMode = mode; }
</span><span class="cx">
</span><span class="lines">@@ -424,7 +395,7 @@
</span><span class="cx"> AudioSourceProvider* audioSourceProvider();
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- enum InvalidURLAction { DoNothing, Complain };
</del><ins>+ using HTMLMediaElementEnums::InvalidURLAction;
</ins><span class="cx"> bool isSafeToLoadURL(const URL&, InvalidURLAction);
</span><span class="cx">
</span><span class="cx"> const String& mediaGroup() const;
</span><span class="lines">@@ -437,14 +408,14 @@
</span><span class="cx">
</span><span class="cx"> unsigned long long fileSize() const;
</span><span class="cx">
</span><del>- void mediaLoadingFailed(MediaPlayer::NetworkState);
- void mediaLoadingFailedFatally(MediaPlayer::NetworkState);
</del><ins>+ void mediaLoadingFailed(MediaPlayerEnums::NetworkState);
+ void mediaLoadingFailedFatally(MediaPlayerEnums::NetworkState);
</ins><span class="cx">
</span><span class="cx"> #if ENABLE(MEDIA_SOURCE)
</span><span class="cx"> RefPtr<VideoPlaybackQuality> getVideoPlaybackQuality();
</span><span class="cx"> #endif
</span><span class="cx">
</span><del>- MediaPlayer::Preload preloadValue() const { return m_preload; }
</del><ins>+ MediaPlayerEnums::Preload preloadValue() const { return m_preload; }
</ins><span class="cx"> HTMLMediaSession& mediaSession() const { return *m_mediaSession; }
</span><span class="cx">
</span><span class="cx"> #if ENABLE(MEDIA_CONTROLS_SCRIPT)
</span><span class="lines">@@ -524,8 +495,8 @@
</span><span class="cx">
</span><span class="cx"> virtual void updateDisplayState() { }
</span><span class="cx">
</span><del>- void setReadyState(MediaPlayer::ReadyState);
- void setNetworkState(MediaPlayer::NetworkState);
</del><ins>+ void setReadyState(MediaPlayerEnums::ReadyState);
+ void setNetworkState(MediaPlayerEnums::NetworkState);
</ins><span class="cx">
</span><span class="cx"> double effectivePlaybackRate() const;
</span><span class="cx"> double requestedPlaybackRate() const;
</span><span class="lines">@@ -705,7 +676,7 @@
</span><span class="cx"> bool isBlocked() const;
</span><span class="cx"> bool isBlockedOnMediaController() const;
</span><span class="cx"> virtual bool hasCurrentSrc() const override { return !m_currentSrc.isEmpty(); }
</span><del>- virtual bool isLiveStream() const override { return movieLoadType() == MediaPlayer::LiveStream; }
</del><ins>+ virtual bool isLiveStream() const override { return movieLoadType() == MediaPlayerEnums::LiveStream; }
</ins><span class="cx"> bool isAutoplaying() const { return m_autoplaying; }
</span><span class="cx">
</span><span class="cx"> void updateSleepDisabling();
</span><span class="lines">@@ -803,12 +774,12 @@
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> RetainPtr<PlatformLayer> m_videoFullscreenLayer;
</span><span class="cx"> FloatRect m_videoFullscreenFrame;
</span><del>- MediaPlayer::VideoGravity m_videoFullscreenGravity;
</del><ins>+ MediaPlayerEnums::VideoGravity m_videoFullscreenGravity;
</ins><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> std::unique_ptr<MediaPlayer> m_player;
</span><span class="cx">
</span><del>- MediaPlayer::Preload m_preload;
</del><ins>+ MediaPlayerEnums::Preload m_preload;
</ins><span class="cx">
</span><span class="cx"> DisplayMode m_displayMode;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLMediaElementEnumsh"></a>
<div class="addfile"><h4>Added: trunk/Source/WebCore/html/HTMLMediaElementEnums.h (0 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLMediaElementEnums.h         (rev 0)
+++ trunk/Source/WebCore/html/HTMLMediaElementEnums.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+/*
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef HTMLMediaElementEnums_h
+#define HTMLMediaElementEnums_h
+
+#include "MediaPlayerEnums.h"
+
+namespace WebCore {
+
+class HTMLMediaElementEnums : public MediaPlayerEnums {
+public:
+ using MediaPlayerEnums::VideoFullscreenMode;
+
+ enum DelayedActionType {
+ LoadMediaResource = 1 << 0,
+ ConfigureTextTracks = 1 << 1,
+ TextTrackChangesNotification = 1 << 2,
+ ConfigureTextTrackDisplay = 1 << 3,
+ CheckPlaybackTargetCompatablity = 1 << 4,
+
+ EveryDelayedAction = LoadMediaResource | ConfigureTextTracks | TextTrackChangesNotification | ConfigureTextTrackDisplay | CheckPlaybackTargetCompatablity,
+ };
+
+ enum ReadyState { HAVE_NOTHING, HAVE_METADATA, HAVE_CURRENT_DATA, HAVE_FUTURE_DATA, HAVE_ENOUGH_DATA };
+ enum NetworkState { NETWORK_EMPTY, NETWORK_IDLE, NETWORK_LOADING, NETWORK_NO_SOURCE };
+ enum TextTrackVisibilityCheckType { CheckTextTrackVisibility, AssumeTextTrackVisibilityChanged };
+ enum InvalidURLAction { DoNothing, Complain };
+};
+
+}
+
+#endif
</ins></span></pre></div>
<a id="trunkSourceWebCorehtmlMediaControllerInterfaceh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/MediaControllerInterface.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/MediaControllerInterface.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/html/MediaControllerInterface.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -28,6 +28,7 @@
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO)
</span><span class="cx">
</span><ins>+#include "HTMLMediaElementEnums.h"
</ins><span class="cx"> #include <wtf/PassRefPtr.h>
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><span class="lines">@@ -36,7 +37,7 @@
</span><span class="cx">
</span><span class="cx"> typedef int ExceptionCode;
</span><span class="cx">
</span><del>-class MediaControllerInterface {
</del><ins>+class MediaControllerInterface : public HTMLMediaElementEnums {
</ins><span class="cx"> public:
</span><span class="cx"> virtual ~MediaControllerInterface() { };
</span><span class="cx">
</span><span class="lines">@@ -64,8 +65,8 @@
</span><span class="cx">
</span><span class="cx"> virtual bool muted() const = 0;
</span><span class="cx"> virtual void setMuted(bool) = 0;
</span><del>-
- enum ReadyState { HAVE_NOTHING, HAVE_METADATA, HAVE_CURRENT_DATA, HAVE_FUTURE_DATA, HAVE_ENOUGH_DATA };
</del><ins>+
+ using HTMLMediaElementEnums::ReadyState;
</ins><span class="cx"> virtual ReadyState readyState() const = 0;
</span><span class="cx">
</span><span class="cx"> // MediaControlElements:
</span></span></pre></div>
<a id="trunkSourceWebCorepageChromeClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/ChromeClient.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/ChromeClient.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/page/ChromeClient.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -29,7 +29,7 @@
</span><span class="cx"> #include "FocusDirection.h"
</span><span class="cx"> #include "FrameLoader.h"
</span><span class="cx"> #include "GraphicsContext.h"
</span><del>-#include "HTMLMediaElement.h"
</del><ins>+#include "HTMLMediaElementEnums.h"
</ins><span class="cx"> #include "HostWindow.h"
</span><span class="cx"> #include "LayerFlushThrottleState.h"
</span><span class="cx"> #include "MediaProducer.h"
</span><span class="lines">@@ -327,7 +327,7 @@
</span><span class="cx">
</span><span class="cx"> virtual bool supportsVideoFullscreen() { return false; }
</span><span class="cx"> #if ENABLE(VIDEO)
</span><del>- virtual void enterVideoFullscreenForVideoElement(HTMLVideoElement&, HTMLMediaElement::VideoFullscreenMode) { }
</del><ins>+ virtual void enterVideoFullscreenForVideoElement(HTMLVideoElement&, HTMLMediaElementEnums::VideoFullscreenMode) { }
</ins><span class="cx"> #endif
</span><span class="cx"> virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&) { }
</span><span class="cx"> virtual bool requiresFullscreenForVideoPlayback() { return false; }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsMediaPlayerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/graphics/MediaPlayer.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/MediaPlayer.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayer.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -35,6 +35,7 @@
</span><span class="cx"> #include "IntRect.h"
</span><span class="cx"> #include "URL.h"
</span><span class="cx"> #include "LayoutRect.h"
</span><ins>+#include "MediaPlayerEnums.h"
</ins><span class="cx"> #include "MediaSession.h"
</span><span class="cx"> #include "NativeImagePtr.h"
</span><span class="cx"> #include "PlatformLayer.h"
</span><span class="lines">@@ -285,7 +286,7 @@
</span><span class="cx"> virtual String mediaPlayerDocumentHost() const { return String(); }
</span><span class="cx"> };
</span><span class="cx">
</span><del>-class MediaPlayer {
</del><ins>+class MediaPlayer : public MediaPlayerEnums {
</ins><span class="cx"> WTF_MAKE_NONCOPYABLE(MediaPlayer); WTF_MAKE_FAST_ALLOCATED;
</span><span class="cx"> public:
</span><span class="cx"> explicit MediaPlayer(MediaPlayerClient&);
</span><span class="lines">@@ -311,7 +312,7 @@
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> void setVideoFullscreenLayer(PlatformLayer*);
</span><span class="cx"> void setVideoFullscreenFrame(FloatRect);
</span><del>- enum VideoGravity { VideoGravityResize, VideoGravityResizeAspect, VideoGravityResizeAspectFill };
</del><ins>+ using MediaPlayerEnums::VideoGravity;
</ins><span class="cx"> void setVideoFullscreenGravity(VideoGravity);
</span><span class="cx">
</span><span class="cx"> NSArray *timedMetadata() const;
</span><span class="lines">@@ -422,16 +423,16 @@
</span><span class="cx">
</span><span class="cx"> PassNativeImagePtr nativeImageForCurrentTime();
</span><span class="cx">
</span><del>- enum NetworkState { Empty, Idle, Loading, Loaded, FormatError, NetworkError, DecodeError };
</del><ins>+ using MediaPlayerEnums::NetworkState;
</ins><span class="cx"> NetworkState networkState();
</span><span class="cx">
</span><del>- enum ReadyState { HaveNothing, HaveMetadata, HaveCurrentData, HaveFutureData, HaveEnoughData };
</del><ins>+ using MediaPlayerEnums::ReadyState;
</ins><span class="cx"> ReadyState readyState();
</span><span class="cx">
</span><del>- enum MovieLoadType { Unknown, Download, StoredStream, LiveStream };
</del><ins>+ using MediaPlayerEnums::MovieLoadType;
</ins><span class="cx"> MovieLoadType movieLoadType() const;
</span><span class="cx">
</span><del>- enum Preload { None, MetaData, Auto };
</del><ins>+ using MediaPlayerEnums::Preload;
</ins><span class="cx"> Preload preload() const;
</span><span class="cx"> void setPreload(Preload);
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformgraphicsMediaPlayerEnumshfromrev184669trunkSourceWebCoreplatformiosWebVideoFullscreenControllerAVKith"></a>
<div class="copfile"><h4>Copied: trunk/Source/WebCore/platform/graphics/MediaPlayerEnums.h (from rev 184669, trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h) (0 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/graphics/MediaPlayerEnums.h         (rev 0)
+++ trunk/Source/WebCore/platform/graphics/MediaPlayerEnums.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -0,0 +1,48 @@
</span><ins>+/*
+ * Copyright (C) 2015 Apple Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
+ * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
+ * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#ifndef MediaPlayerEnums_h
+#define MediaPlayerEnums_h
+
+namespace WebCore {
+
+class MediaPlayerEnums {
+public:
+ enum NetworkState { Empty, Idle, Loading, Loaded, FormatError, NetworkError, DecodeError };
+ enum ReadyState { HaveNothing, HaveMetadata, HaveCurrentData, HaveFutureData, HaveEnoughData };
+ enum MovieLoadType { Unknown, Download, StoredStream, LiveStream };
+ enum Preload { None, MetaData, Auto };
+ enum VideoGravity { VideoGravityResize, VideoGravityResizeAspect, VideoGravityResizeAspectFill };
+ enum {
+ VideoFullscreenModeNone = 0,
+ VideoFullscreenModeStandard = 1 << 0,
+ VideoFullscreenModeOptimized = 1 << 1,
+ };
+ typedef uint32_t VideoFullscreenMode;
+};
+
+}
+
+#endif
</ins></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWebVideoFullscreenControllerAVKith"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -28,14 +28,18 @@
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx">
</span><del>-#import <WebCore/HTMLVideoElement.h>
</del><ins>+#import <WebCore/HTMLMediaElementEnums.h>
</ins><span class="cx">
</span><span class="cx"> OBJC_CLASS UIView;
</span><span class="cx">
</span><ins>+namespace WebCore {
+class HTMLVideoElement;
+}
+
</ins><span class="cx"> WEBCORE_EXPORT @interface WebVideoFullscreenController : NSObject
</span><span class="cx"> - (void)setVideoElement:(WebCore::HTMLVideoElement*)videoElement;
</span><span class="cx"> - (WebCore::HTMLVideoElement*)videoElement;
</span><del>-- (void)enterFullscreen:(UIView *)view mode:(WebCore::HTMLMediaElement::VideoFullscreenMode)mode;
</del><ins>+- (void)enterFullscreen:(UIView *)view mode:(WebCore::HTMLMediaElementEnums::VideoFullscreenMode)mode;
</ins><span class="cx"> - (void)exitFullscreen;
</span><span class="cx"> - (void)requestHideAndExitFullscreen;
</span><span class="cx"> @end
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWebVideoFullscreenControllerAVKitmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -33,6 +33,7 @@
</span><span class="cx"> #import "WebVideoFullscreenInterfaceAVKit.h"
</span><span class="cx"> #import "WebVideoFullscreenModelVideoElement.h"
</span><span class="cx"> #import <QuartzCore/CoreAnimation.h>
</span><ins>+#import <WebCore/HTMLVideoElement.h>
</ins><span class="cx"> #import <WebCore/WebCoreThreadRun.h>
</span><span class="cx">
</span><span class="cx"> using namespace WebCore;
</span><span class="lines">@@ -121,7 +122,7 @@
</span><span class="cx"> return _videoElement.get();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-- (void)enterFullscreen:(UIView *)view mode:(HTMLMediaElement::VideoFullscreenMode)mode
</del><ins>+- (void)enterFullscreen:(UIView *)view mode:(HTMLMediaElementEnums::VideoFullscreenMode)mode
</ins><span class="cx"> {
</span><span class="cx"> [self retain]; // Balanced by -release in didExitFullscreen:
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWebVideoFullscreenInterfaceAVKith"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -30,9 +30,11 @@
</span><span class="cx"> #if PLATFORM(IOS) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 80000
</span><span class="cx">
</span><span class="cx"> #include <WebCore/EventListener.h>
</span><del>-#include <WebCore/HTMLMediaElement.h>
</del><ins>+#include <WebCore/HTMLMediaElementEnums.h>
</ins><span class="cx"> #include <WebCore/PlatformLayer.h>
</span><span class="cx"> #include <WebCore/WebVideoFullscreenInterface.h>
</span><ins>+#include <functional>
+#include <objc/objc.h>
</ins><span class="cx"> #include <wtf/RefPtr.h>
</span><span class="cx"> #include <wtf/RetainPtr.h>
</span><span class="cx"> #include <wtf/ThreadSafeRefCounted.h>
</span><span class="lines">@@ -89,7 +91,7 @@
</span><span class="cx"> WEBCORE_EXPORT virtual void setLegibleMediaSelectionOptions(const Vector<WTF::String>& options, uint64_t selectedIndex) override;
</span><span class="cx"> WEBCORE_EXPORT virtual void setExternalPlayback(bool enabled, ExternalPlaybackTargetType, WTF::String localizedDeviceName) override;
</span><span class="cx">
</span><del>- WEBCORE_EXPORT virtual void setupFullscreen(PlatformLayer&, const IntRect& initialRect, UIView *, HTMLMediaElement::VideoFullscreenMode, bool allowOptimizedFullscreen);
</del><ins>+ WEBCORE_EXPORT virtual void setupFullscreen(PlatformLayer&, const IntRect& initialRect, UIView *, HTMLMediaElementEnums::VideoFullscreenMode, bool allowOptimizedFullscreen);
</ins><span class="cx"> WEBCORE_EXPORT virtual void enterFullscreen();
</span><span class="cx"> WEBCORE_EXPORT virtual void exitFullscreen(const IntRect& finalRect);
</span><span class="cx"> WEBCORE_EXPORT virtual void cleanupFullscreen();
</span><span class="lines">@@ -97,7 +99,7 @@
</span><span class="cx"> WEBCORE_EXPORT virtual void requestHideAndExitFullscreen();
</span><span class="cx"> WEBCORE_EXPORT virtual void preparedToReturnToInline(bool visible, const IntRect& inlineRect);
</span><span class="cx">
</span><del>- HTMLMediaElement::VideoFullscreenMode mode() const { return m_mode; }
</del><ins>+ HTMLMediaElementEnums::VideoFullscreenMode mode() const { return m_mode; }
</ins><span class="cx"> bool allowOptimizedFullscreen() const { return m_allowOptimizedFullscreen; }
</span><span class="cx"> void setIsOptimized(bool);
</span><span class="cx"> WEBCORE_EXPORT bool mayAutomaticallyShowVideoOptimized() const;
</span><span class="lines">@@ -111,15 +113,15 @@
</span><span class="cx"> void didCancelOptimizedFullscreen();
</span><span class="cx"> void prepareForOptimizedFullscreenStopWithCompletionHandler(void (^)(BOOL));
</span><span class="cx">
</span><del>- void setMode(HTMLMediaElement::VideoFullscreenMode);
- void clearMode(HTMLMediaElement::VideoFullscreenMode);
- bool hasMode(HTMLMediaElement::VideoFullscreenMode mode) const { return m_mode & mode; }
- bool isMode(HTMLMediaElement::VideoFullscreenMode mode) const { return m_mode == mode; }
</del><ins>+ void setMode(HTMLMediaElementEnums::VideoFullscreenMode);
+ void clearMode(HTMLMediaElementEnums::VideoFullscreenMode);
+ bool hasMode(HTMLMediaElementEnums::VideoFullscreenMode mode) const { return m_mode & mode; }
+ bool isMode(HTMLMediaElementEnums::VideoFullscreenMode mode) const { return m_mode == mode; }
</ins><span class="cx">
</span><span class="cx"> protected:
</span><span class="cx"> WEBCORE_EXPORT WebVideoFullscreenInterfaceAVKit();
</span><span class="cx"> void beginSession();
</span><del>- void setupFullscreenInternal(PlatformLayer&, const IntRect& initialRect, UIView *, HTMLMediaElement::VideoFullscreenMode, bool allowOptimizedFullscreen);
</del><ins>+ void setupFullscreenInternal(PlatformLayer&, const IntRect& initialRect, UIView *, HTMLMediaElementEnums::VideoFullscreenMode, bool allowOptimizedFullscreen);
</ins><span class="cx"> void enterFullscreenOptimized();
</span><span class="cx"> void enterFullscreenStandard();
</span><span class="cx"> void exitFullscreenInternal(const IntRect& finalRect);
</span><span class="lines">@@ -138,7 +140,7 @@
</span><span class="cx"> RetainPtr<UIViewController> m_viewController;
</span><span class="cx"> RetainPtr<UIView> m_parentView;
</span><span class="cx"> RetainPtr<UIWindow> m_parentWindow;
</span><del>- HTMLMediaElement::VideoFullscreenMode m_mode { HTMLMediaElement::VideoFullscreenModeNone };
</del><ins>+ HTMLMediaElementEnums::VideoFullscreenMode m_mode { HTMLMediaElementEnums::VideoFullscreenModeNone };
</ins><span class="cx"> std::function<void(bool)> m_prepareToInlineCallback;
</span><span class="cx"> bool m_allowOptimizedFullscreen { false };
</span><span class="cx"> bool m_exitRequested { false };
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWebVideoFullscreenInterfaceAVKitmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -926,11 +926,11 @@
</span><span class="cx"> });
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenInterfaceAVKit::setupFullscreen(PlatformLayer& videoLayer, const WebCore::IntRect& initialRect, UIView* parentView, HTMLMediaElement::VideoFullscreenMode mode, bool allowOptimizedFullscreen)
</del><ins>+void WebVideoFullscreenInterfaceAVKit::setupFullscreen(PlatformLayer& videoLayer, const WebCore::IntRect& initialRect, UIView* parentView, HTMLMediaElementEnums::VideoFullscreenMode mode, bool allowOptimizedFullscreen)
</ins><span class="cx"> {
</span><span class="cx"> RefPtr<WebVideoFullscreenInterfaceAVKit> strongThis(this);
</span><span class="cx">
</span><del>- ASSERT(mode != HTMLMediaElement::VideoFullscreenModeNone);
</del><ins>+ ASSERT(mode != HTMLMediaElementEnums::VideoFullscreenModeNone);
</ins><span class="cx"> m_videoLayer = &videoLayer;
</span><span class="cx">
</span><span class="cx"> m_mode = mode;
</span><span class="lines">@@ -940,7 +940,7 @@
</span><span class="cx"> });
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenInterfaceAVKit::setupFullscreenInternal(PlatformLayer& videoLayer, const WebCore::IntRect& initialRect, UIView* parentView, HTMLMediaElement::VideoFullscreenMode mode, bool allowOptimizedFullscreen)
</del><ins>+void WebVideoFullscreenInterfaceAVKit::setupFullscreenInternal(PlatformLayer& videoLayer, const WebCore::IntRect& initialRect, UIView* parentView, HTMLMediaElementEnums::VideoFullscreenMode mode, bool allowOptimizedFullscreen)
</ins><span class="cx"> {
</span><span class="cx"> LOG(Fullscreen, "WebVideoFullscreenInterfaceAVKit::setupFullscreenInternal(%p)", this);
</span><span class="cx"> UNUSED_PARAM(videoLayer);
</span><span class="lines">@@ -1019,9 +1019,9 @@
</span><span class="cx"> RefPtr<WebVideoFullscreenInterfaceAVKit> strongThis(this);
</span><span class="cx"> dispatch_async(dispatch_get_main_queue(), [strongThis] {
</span><span class="cx"> [strongThis->m_videoLayerContainer setBackgroundColor:[[getUIColorClass() blackColor] CGColor]];
</span><del>- if (strongThis->mode() == HTMLMediaElement::VideoFullscreenModeOptimized)
</del><ins>+ if (strongThis->mode() == HTMLMediaElementEnums::VideoFullscreenModeOptimized)
</ins><span class="cx"> strongThis->enterFullscreenOptimized();
</span><del>- else if (strongThis->mode() == HTMLMediaElement::VideoFullscreenModeStandard)
</del><ins>+ else if (strongThis->mode() == HTMLMediaElementEnums::VideoFullscreenModeStandard)
</ins><span class="cx"> strongThis->enterFullscreenStandard();
</span><span class="cx"> else
</span><span class="cx"> ASSERT_NOT_REACHED();
</span><span class="lines">@@ -1084,16 +1084,16 @@
</span><span class="cx"> [[m_playerViewController view] layoutIfNeeded];
</span><span class="cx">
</span><span class="cx">
</span><del>- if (isMode(HTMLMediaElement::VideoFullscreenModeOptimized)) {
</del><ins>+ if (isMode(HTMLMediaElementEnums::VideoFullscreenModeOptimized)) {
</ins><span class="cx"> [m_window setHidden:NO];
</span><span class="cx"> [m_playerViewController stopOptimizedFullscreen];
</span><del>- } else if (isMode(HTMLMediaElement::VideoFullscreenModeOptimized | HTMLMediaElement::VideoFullscreenModeStandard)) {
</del><ins>+ } else if (isMode(HTMLMediaElementEnums::VideoFullscreenModeOptimized | HTMLMediaElementEnums::VideoFullscreenModeStandard)) {
</ins><span class="cx"> RefPtr<WebVideoFullscreenInterfaceAVKit> strongThis(this);
</span><span class="cx"> [m_playerViewController exitFullScreenAnimated:NO completionHandler:[strongThis] (BOOL, NSError*) {
</span><span class="cx"> [strongThis->m_window setHidden:NO];
</span><span class="cx"> [strongThis->m_playerViewController stopOptimizedFullscreen];
</span><span class="cx"> }];
</span><del>- } else if (isMode(HTMLMediaElement::VideoFullscreenModeStandard)) {
</del><ins>+ } else if (isMode(HTMLMediaElementEnums::VideoFullscreenModeStandard)) {
</ins><span class="cx"> RefPtr<WebVideoFullscreenInterfaceAVKit> strongThis(this);
</span><span class="cx"> [m_playerViewController exitFullScreenAnimated:YES completionHandler:[strongThis] (BOOL, NSError*) {
</span><span class="cx"> strongThis->m_exitCompleted = true;
</span><span class="lines">@@ -1145,9 +1145,9 @@
</span><span class="cx"> [m_playerViewController setDelegate:nil];
</span><span class="cx"> [m_playerViewController setPlayerController:nil];
</span><span class="cx">
</span><del>- if (hasMode(HTMLMediaElement::VideoFullscreenModeOptimized))
</del><ins>+ if (hasMode(HTMLMediaElementEnums::VideoFullscreenModeOptimized))
</ins><span class="cx"> [m_playerViewController stopOptimizedFullscreen];
</span><del>- if (hasMode(HTMLMediaElement::VideoFullscreenModeStandard))
</del><ins>+ if (hasMode(HTMLMediaElementEnums::VideoFullscreenModeStandard))
</ins><span class="cx"> [m_playerViewController exitFullScreenAnimated:NO completionHandler:[] (BOOL, NSError *) { }];
</span><span class="cx">
</span><span class="cx"> [[m_playerViewController view] removeFromSuperview];
</span><span class="lines">@@ -1192,7 +1192,7 @@
</span><span class="cx"> if (!m_enterRequested)
</span><span class="cx"> return;
</span><span class="cx">
</span><del>- if (hasMode(HTMLMediaElement::VideoFullscreenModeOptimized))
</del><ins>+ if (hasMode(HTMLMediaElementEnums::VideoFullscreenModeOptimized))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> LOG(Fullscreen, "WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen(%p)", this);
</span><span class="lines">@@ -1228,7 +1228,7 @@
</span><span class="cx">
</span><span class="cx"> bool WebVideoFullscreenInterfaceAVKit::mayAutomaticallyShowVideoOptimized() const
</span><span class="cx"> {
</span><del>- return [m_playerController isPlaying] && m_mode == HTMLMediaElement::VideoFullscreenModeStandard && wkIsOptimizedFullscreenSupported();
</del><ins>+ return [m_playerController isPlaying] && m_mode == HTMLMediaElementEnums::VideoFullscreenModeStandard && wkIsOptimizedFullscreenSupported();
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> void WebVideoFullscreenInterfaceAVKit::fullscreenMayReturnToInline(std::function<void(bool)> callback)
</span><span class="lines">@@ -1241,9 +1241,9 @@
</span><span class="cx"> void WebVideoFullscreenInterfaceAVKit::willStartOptimizedFullscreen()
</span><span class="cx"> {
</span><span class="cx"> LOG(Fullscreen, "WebVideoFullscreenInterfaceAVKit::willStartOptimizedFullscreen(%p)", this);
</span><del>- setMode(HTMLMediaElement::VideoFullscreenModeOptimized);
</del><ins>+ setMode(HTMLMediaElementEnums::VideoFullscreenModeOptimized);
</ins><span class="cx">
</span><del>- if (!hasMode(HTMLMediaElement::VideoFullscreenModeStandard))
</del><ins>+ if (!hasMode(HTMLMediaElementEnums::VideoFullscreenModeStandard))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> RefPtr<WebVideoFullscreenInterfaceAVKit> strongThis(this);
</span><span class="lines">@@ -1260,7 +1260,7 @@
</span><span class="cx"> [strongThis->m_playerViewController exitFullScreenAnimated:YES completionHandler:[strongThis] (BOOL completed, NSError*) {
</span><span class="cx"> if (!completed)
</span><span class="cx"> return;
</span><del>- strongThis->clearMode(HTMLMediaElement::VideoFullscreenModeStandard);
</del><ins>+ strongThis->clearMode(HTMLMediaElementEnums::VideoFullscreenModeStandard);
</ins><span class="cx"> [strongThis->m_window setHidden:YES];
</span><span class="cx"> }];
</span><span class="cx"> });
</span><span class="lines">@@ -1294,7 +1294,7 @@
</span><span class="cx"> void WebVideoFullscreenInterfaceAVKit::didStopOptimizedFullscreen()
</span><span class="cx"> {
</span><span class="cx"> LOG(Fullscreen, "WebVideoFullscreenInterfaceAVKit::didStopOptimizedFullscreen(%p)", this);
</span><del>- if (hasMode(HTMLMediaElement::VideoFullscreenModeStandard))
</del><ins>+ if (hasMode(HTMLMediaElementEnums::VideoFullscreenModeStandard))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> m_exitCompleted = true;
</span><span class="lines">@@ -1304,7 +1304,7 @@
</span><span class="cx">
</span><span class="cx"> RefPtr<WebVideoFullscreenInterfaceAVKit> strongThis(this);
</span><span class="cx"> WebThreadRun([strongThis] {
</span><del>- strongThis->clearMode(HTMLMediaElement::VideoFullscreenModeOptimized);
</del><ins>+ strongThis->clearMode(HTMLMediaElementEnums::VideoFullscreenModeOptimized);
</ins><span class="cx"> [strongThis->m_window setHidden:YES];
</span><span class="cx"> if (strongThis->m_fullscreenChangeObserver)
</span><span class="cx"> strongThis->m_fullscreenChangeObserver->didExitFullscreen();
</span><span class="lines">@@ -1328,12 +1328,12 @@
</span><span class="cx"> void WebVideoFullscreenInterfaceAVKit::didCancelOptimizedFullscreen()
</span><span class="cx"> {
</span><span class="cx"> LOG(Fullscreen, "WebVideoFullscreenInterfaceAVKit::didCancelOptimizedFullscreen(%p)", this);
</span><del>- if (hasMode(HTMLMediaElement::VideoFullscreenModeStandard))
</del><ins>+ if (hasMode(HTMLMediaElementEnums::VideoFullscreenModeStandard))
</ins><span class="cx"> return;
</span><span class="cx">
</span><span class="cx"> RefPtr<WebVideoFullscreenInterfaceAVKit> strongThis(this);
</span><span class="cx"> WebThreadRun([strongThis] {
</span><del>- strongThis->clearMode(HTMLMediaElement::VideoFullscreenModeOptimized);
</del><ins>+ strongThis->clearMode(HTMLMediaElementEnums::VideoFullscreenModeOptimized);
</ins><span class="cx"> [strongThis->m_window setHidden:YES];
</span><span class="cx"> if (strongThis->m_fullscreenChangeObserver)
</span><span class="cx"> strongThis->m_fullscreenChangeObserver->didExitFullscreen();
</span><span class="lines">@@ -1352,9 +1352,9 @@
</span><span class="cx"> });
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenInterfaceAVKit::setMode(HTMLMediaElement::VideoFullscreenMode mode)
</del><ins>+void WebVideoFullscreenInterfaceAVKit::setMode(HTMLMediaElementEnums::VideoFullscreenMode mode)
</ins><span class="cx"> {
</span><del>- HTMLMediaElement::VideoFullscreenMode newMode = m_mode | mode;
</del><ins>+ HTMLMediaElementEnums::VideoFullscreenMode newMode = m_mode | mode;
</ins><span class="cx"> if (m_mode == newMode)
</span><span class="cx"> return;
</span><span class="cx">
</span><span class="lines">@@ -1363,9 +1363,9 @@
</span><span class="cx"> m_videoFullscreenModel->fullscreenModeChanged(m_mode);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenInterfaceAVKit::clearMode(HTMLMediaElement::VideoFullscreenMode mode)
</del><ins>+void WebVideoFullscreenInterfaceAVKit::clearMode(HTMLMediaElementEnums::VideoFullscreenMode mode)
</ins><span class="cx"> {
</span><del>- HTMLMediaElement::VideoFullscreenMode newMode = m_mode & ~mode;
</del><ins>+ HTMLMediaElementEnums::VideoFullscreenMode newMode = m_mode & ~mode;
</ins><span class="cx"> if (m_mode == newMode)
</span><span class="cx"> return;
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWebVideoFullscreenModelh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenModel.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenModel.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenModel.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -54,7 +54,7 @@
</span><span class="cx"> virtual VideoGravity videoLayerGravity() const = 0;
</span><span class="cx"> virtual void selectAudioMediaOption(uint64_t index) = 0;
</span><span class="cx"> virtual void selectLegibleMediaOption(uint64_t index) = 0;
</span><del>- virtual void fullscreenModeChanged(HTMLMediaElement::VideoFullscreenMode) = 0;
</del><ins>+ virtual void fullscreenModeChanged(HTMLMediaElementEnums::VideoFullscreenMode) = 0;
</ins><span class="cx"> };
</span><span class="cx">
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWebVideoFullscreenModelVideoElementh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -31,7 +31,7 @@
</span><span class="cx">
</span><span class="cx"> #include <WebCore/EventListener.h>
</span><span class="cx"> #include <WebCore/FloatRect.h>
</span><del>-#include <WebCore/HTMLMediaElement.h>
</del><ins>+#include <WebCore/HTMLMediaElementEnums.h>
</ins><span class="cx"> #include <WebCore/PlatformLayer.h>
</span><span class="cx"> #include <WebCore/WebVideoFullscreenModel.h>
</span><span class="cx"> #include <wtf/RefPtr.h>
</span><span class="lines">@@ -39,6 +39,7 @@
</span><span class="cx"> #include <wtf/Vector.h>
</span><span class="cx">
</span><span class="cx"> namespace WebCore {
</span><ins>+class AudioTrack;
</ins><span class="cx"> class HTMLVideoElement;
</span><span class="cx"> class TextTrack;
</span><span class="cx"> class WebVideoFullscreenInterface;
</span><span class="lines">@@ -76,7 +77,7 @@
</span><span class="cx"> WEBCORE_EXPORT virtual VideoGravity videoLayerGravity() const override;
</span><span class="cx"> WEBCORE_EXPORT virtual void selectAudioMediaOption(uint64_t index) override;
</span><span class="cx"> WEBCORE_EXPORT virtual void selectLegibleMediaOption(uint64_t index) override;
</span><del>- WEBCORE_EXPORT virtual void fullscreenModeChanged(HTMLMediaElement::VideoFullscreenMode) override;
</del><ins>+ WEBCORE_EXPORT virtual void fullscreenModeChanged(HTMLMediaElementEnums::VideoFullscreenMode) override;
</ins><span class="cx">
</span><span class="cx"> protected:
</span><span class="cx"> WEBCORE_EXPORT WebVideoFullscreenModelVideoElement();
</span></span></pre></div>
<a id="trunkSourceWebCoreplatformiosWebVideoFullscreenModelVideoElementmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenModelVideoElement.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -83,7 +83,7 @@
</span><span class="cx"> m_videoFullscreenInterface->resetMediaState();
</span><span class="cx">
</span><span class="cx"> if (m_videoElement && m_videoElement->fullscreenMode())
</span><del>- m_videoElement->fullscreenModeChanged(HTMLMediaElement::VideoFullscreenModeNone);
</del><ins>+ m_videoElement->fullscreenModeChanged(HTMLMediaElementEnums::VideoFullscreenModeNone);
</ins><span class="cx">
</span><span class="cx"> if (m_videoElement && m_videoElement->videoFullscreenLayer())
</span><span class="cx"> m_videoElement->setVideoFullscreenLayer(nullptr);
</span><span class="lines">@@ -452,7 +452,7 @@
</span><span class="cx"> return sEventNameAll;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenModelVideoElement::fullscreenModeChanged(HTMLMediaElement::VideoFullscreenMode videoFullscreenMode)
</del><ins>+void WebVideoFullscreenModelVideoElement::fullscreenModeChanged(HTMLMediaElementEnums::VideoFullscreenMode videoFullscreenMode)
</ins><span class="cx"> {
</span><span class="cx"> __block RefPtr<WebVideoFullscreenModelVideoElement> protect(this);
</span><span class="cx"> WebThreadRun(^{
</span></span></pre></div>
<a id="trunkSourceWebKitmacChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/ChangeLog (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/ChangeLog        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit/mac/ChangeLog        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -1,3 +1,19 @@
</span><ins>+2015-05-19 Jer Noble <jer.noble@apple.com>
+
+ Touching HTMLMediaElement.h or MediaPlayer.h causes a world rebuild.
+ https://bugs.webkit.org/show_bug.cgi?id=145193
+
+ Reviewed by Eric Carlson.
+
+ Use HTMLMediaElementEnums instead of HTMLMediaElement.
+
+ * WebCoreSupport/WebChromeClient.h:
+ * WebCoreSupport/WebChromeClient.mm:
+ (WebChromeClient::enterVideoFullscreenForVideoElement): HTMLMediaElement -> HTMLMediaElementEnums.
+ * WebView/WebView.mm:
+ (-[WebView _enterVideoFullscreenForVideoElement:mode:]): Ditto.
+ * WebView/WebViewInternal.h:
+
</ins><span class="cx"> 2015-05-19 Michael Saboff <msaboff@apple.com>
</span><span class="cx">
</span><span class="cx"> REGRESSION(183787): JIT is enabled for all builds
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebCoreSupportWebChromeClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -179,7 +179,7 @@
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO)
</span><span class="cx"> virtual bool supportsVideoFullscreen() override;
</span><del>- virtual void enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElement::VideoFullscreenMode) override;
</del><ins>+ virtual void enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElementEnums::VideoFullscreenMode) override;
</ins><span class="cx"> virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&) override;
</span><span class="cx"> #endif
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebCoreSupportWebChromeClientmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -936,9 +936,9 @@
</span><span class="cx"> return true;
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebChromeClient::enterVideoFullscreenForVideoElement(HTMLVideoElement& videoElement, HTMLMediaElement::VideoFullscreenMode mode)
</del><ins>+void WebChromeClient::enterVideoFullscreenForVideoElement(HTMLVideoElement& videoElement, HTMLMediaElementEnums::VideoFullscreenMode mode)
</ins><span class="cx"> {
</span><del>- ASSERT(mode != HTMLMediaElement::VideoFullscreenModeNone);
</del><ins>+ ASSERT(mode != HTMLMediaElementEnums::VideoFullscreenModeNone);
</ins><span class="cx"> BEGIN_BLOCK_OBJC_EXCEPTIONS;
</span><span class="cx"> [m_webView _enterVideoFullscreenForVideoElement:&videoElement mode:mode];
</span><span class="cx"> END_BLOCK_OBJC_EXCEPTIONS;
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebView.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -8419,7 +8419,7 @@
</span><span class="cx"> #endif
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO)
</span><del>-- (void)_enterVideoFullscreenForVideoElement:(WebCore::HTMLVideoElement*)videoElement mode:(WebCore::HTMLMediaElement::VideoFullscreenMode)mode
</del><ins>+- (void)_enterVideoFullscreenForVideoElement:(WebCore::HTMLVideoElement*)videoElement mode:(WebCore::HTMLMediaElementEnums::VideoFullscreenMode)mode
</ins><span class="cx"> {
</span><span class="cx"> if (_private->fullscreenController) {
</span><span class="cx"> if ([_private->fullscreenController videoElement] == videoElement) {
</span></span></pre></div>
<a id="trunkSourceWebKitmacWebViewWebViewInternalh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit/mac/WebView/WebViewInternal.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit/mac/WebView/WebViewInternal.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit/mac/WebView/WebViewInternal.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -37,7 +37,7 @@
</span><span class="cx"> #import <WebCore/AlternativeTextClient.h>
</span><span class="cx"> #import <WebCore/FindOptions.h>
</span><span class="cx"> #import <WebCore/FloatRect.h>
</span><del>-#import <WebCore/HTMLMediaElement.h>
</del><ins>+#import <WebCore/HTMLMediaElementEnums.h>
</ins><span class="cx"> #import <WebCore/LayoutMilestones.h>
</span><span class="cx"> #import <WebCore/TextAlternativeWithRange.h>
</span><span class="cx"> #import <WebCore/TextIndicatorWindow.h>
</span><span class="lines">@@ -242,7 +242,7 @@
</span><span class="cx"> - (void)_preferencesChanged:(WebPreferences *)preferences;
</span><span class="cx">
</span><span class="cx"> #if ENABLE(VIDEO) && defined(__cplusplus)
</span><del>-- (void)_enterVideoFullscreenForVideoElement:(WebCore::HTMLVideoElement*)videoElement mode:(WebCore::HTMLMediaElement::VideoFullscreenMode)mode;
</del><ins>+- (void)_enterVideoFullscreenForVideoElement:(WebCore::HTMLVideoElement*)videoElement mode:(WebCore::HTMLMediaElementEnums::VideoFullscreenMode)mode;
</ins><span class="cx"> - (void)_exitVideoFullscreen;
</span><span class="cx"> #endif
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/ChangeLog        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -1,3 +1,33 @@
</span><ins>+2015-05-19 Jer Noble <jer.noble@apple.com>
+
+ Touching HTMLMediaElement.h or MediaPlayer.h causes a world rebuild.
+ https://bugs.webkit.org/show_bug.cgi?id=145193
+
+ Reviewed by Eric Carlson.
+
+ Use HTMLMediaElementEnums instead of HTMLMediaElement.
+
+ * UIProcess/API/Cocoa/WKWebView.mm:
+ (-[WKWebView _isShowingVideoOptimized]): HTMLMediaElement -> HTMLMediaElementEnums.
+ * UIProcess/ios/WebVideoFullscreenManagerProxy.h:
+ * UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
+ * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
+ (WebKit::WebVideoFullscreenManagerProxy::hasMode): Ditto.
+ (WebKit::WebVideoFullscreenModelContext::fullscreenModeChanged): Ditto.
+ (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Ditto.
+ (WebKit::WebVideoFullscreenManagerProxy::fullscreenModeChanged): Ditto.
+ * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+ (WebKit::WebChromeClient::enterVideoFullscreenForVideoElement): Ditto.
+ * WebProcess/WebCoreSupport/WebChromeClient.h:
+ * WebProcess/ios/WebVideoFullscreenManager.h:
+ (WebKit::WebVideoFullscreenInterfaceContext::fullscreenMode): Ditto.
+ (WebKit::WebVideoFullscreenInterfaceContext::setFullscreenMode): Ditto.
+ * WebProcess/ios/WebVideoFullscreenManager.messages.in:
+ * WebProcess/ios/WebVideoFullscreenManager.mm:
+ (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): Ditto.
+ (WebKit::WebVideoFullscreenManager::fullscreenModeChanged): Ditto.
+ (WebKit::WebVideoFullscreenManager::didCleanupFullscreen): Ditto.
+
</ins><span class="cx"> 2015-05-20 Anders Carlsson <andersca@apple.com>
</span><span class="cx">
</span><span class="cx"> Refactor process pool enumeration code in WebsiteDataStore
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessAPICocoaWKWebViewmm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -245,7 +245,7 @@
</span><span class="cx"> if (!_page || !_page->videoFullscreenManager())
</span><span class="cx"> return false;
</span><span class="cx">
</span><del>- return _page->videoFullscreenManager()->hasMode(WebCore::HTMLMediaElement::VideoFullscreenModeOptimized);
</del><ins>+ return _page->videoFullscreenManager()->hasMode(WebCore::HTMLMediaElementEnums::VideoFullscreenModeOptimized);
</ins><span class="cx"> }
</span><span class="cx">
</span><span class="cx"> - (BOOL)_mayAutomaticallyShowVideoOptimized
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessiosWebVideoFullscreenManagerProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -83,7 +83,7 @@
</span><span class="cx"> virtual VideoGravity videoLayerGravity() const override;
</span><span class="cx"> virtual void selectAudioMediaOption(uint64_t) override;
</span><span class="cx"> virtual void selectLegibleMediaOption(uint64_t) override;
</span><del>- virtual void fullscreenModeChanged(WebCore::HTMLMediaElement::VideoFullscreenMode) override;
</del><ins>+ virtual void fullscreenModeChanged(WebCore::HTMLMediaElementEnums::VideoFullscreenMode) override;
</ins><span class="cx">
</span><span class="cx"> // WebVideoFullscreenChangeObserver
</span><span class="cx"> virtual void didSetupFullscreen() override;
</span><span class="lines">@@ -107,7 +107,7 @@
</span><span class="cx"> void invalidate();
</span><span class="cx">
</span><span class="cx"> void requestHideAndExitFullscreen();
</span><del>- bool hasMode(WebCore::HTMLMediaElement::VideoFullscreenMode) const;
</del><ins>+ bool hasMode(WebCore::HTMLMediaElementEnums::VideoFullscreenMode) const;
</ins><span class="cx"> bool mayAutomaticallyShowVideoOptimized() const;
</span><span class="cx">
</span><span class="cx"> private:
</span><span class="lines">@@ -123,7 +123,7 @@
</span><span class="cx"> WebCore::WebVideoFullscreenInterfaceAVKit& ensureInterface(uint64_t contextId);
</span><span class="cx">
</span><span class="cx"> // Messages from WebVideoFullscreenManager
</span><del>- void setupFullscreenWithID(uint64_t contextId, uint32_t videoLayerID, const WebCore::IntRect& initialRect, float hostingScaleFactor, WebCore::HTMLMediaElement::VideoFullscreenMode, bool allowOptimizedFullscreen);
</del><ins>+ void setupFullscreenWithID(uint64_t contextId, uint32_t videoLayerID, const WebCore::IntRect& initialRect, float hostingScaleFactor, WebCore::HTMLMediaElementEnums::VideoFullscreenMode, bool allowOptimizedFullscreen);
</ins><span class="cx"> void resetMediaState(uint64_t contextId);
</span><span class="cx"> void setCurrentTime(uint64_t contextId, double currentTime, double hostTime);
</span><span class="cx"> void setBufferedTime(uint64_t contextId, double bufferedTime);
</span><span class="lines">@@ -160,7 +160,7 @@
</span><span class="cx"> void setVideoLayerGravity(uint64_t contextId, WebCore::WebVideoFullscreenModel::VideoGravity);
</span><span class="cx"> void selectAudioMediaOption(uint64_t contextId, uint64_t index);
</span><span class="cx"> void selectLegibleMediaOption(uint64_t contextId, uint64_t index);
</span><del>- void fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElement::VideoFullscreenMode);
</del><ins>+ void fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElementEnums::VideoFullscreenMode);
</ins><span class="cx"> void fullscreenMayReturnToInline(uint64_t contextId);
</span><span class="cx">
</span><span class="cx"> WebPageProxy* m_page;
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessiosWebVideoFullscreenManagerProxymessagesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -33,7 +33,7 @@
</span><span class="cx"> SetExternalPlaybackProperties(uint64_t contextId, bool enabled, uint32_t targetType, String localizedDeviceName)
</span><span class="cx"> SetDuration(uint64_t contextId, double duration)
</span><span class="cx"> SetRate(uint64_t contextId, bool isPlaying, double rate)
</span><del>- SetupFullscreenWithID(uint64_t contextId, uint32_t videoLayerID, WebCore::IntRect initialRect, float hostingScaleFactor, WebCore::HTMLMediaElement::VideoFullscreenMode videoFullscreenMode, bool allowOptimizedFullscreen)
</del><ins>+ SetupFullscreenWithID(uint64_t contextId, uint32_t videoLayerID, WebCore::IntRect initialRect, float hostingScaleFactor, WebCore::HTMLMediaElementEnums::VideoFullscreenMode videoFullscreenMode, bool allowOptimizedFullscreen)
</ins><span class="cx"> EnterFullscreen(uint64_t contextId)
</span><span class="cx"> ExitFullscreen(uint64_t contextId, WebCore::IntRect finalRect)
</span><span class="cx"> CleanupFullscreen(uint64_t contextId)
</span></span></pre></div>
<a id="trunkSourceWebKit2UIProcessiosWebVideoFullscreenManagerProxymm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -57,7 +57,7 @@
</span><span class="cx"> {
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool WebVideoFullscreenManagerProxy::hasMode(HTMLMediaElement::VideoFullscreenMode) const
</del><ins>+bool WebVideoFullscreenManagerProxy::hasMode(HTMLMediaElementEnums::VideoFullscreenMode) const
</ins><span class="cx"> {
</span><span class="cx"> return false;
</span><span class="cx"> }
</span><span class="lines">@@ -177,7 +177,7 @@
</span><span class="cx"> m_manager->selectLegibleMediaOption(m_contextId, optionId);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenModelContext::fullscreenModeChanged(WebCore::HTMLMediaElement::VideoFullscreenMode mode)
</del><ins>+void WebVideoFullscreenModelContext::fullscreenModeChanged(WebCore::HTMLMediaElementEnums::VideoFullscreenMode mode)
</ins><span class="cx"> {
</span><span class="cx"> if (m_manager)
</span><span class="cx"> m_manager->fullscreenModeChanged(m_contextId, mode);
</span><span class="lines">@@ -257,7 +257,7 @@
</span><span class="cx"> std::get<1>(tuple)->requestHideAndExitFullscreen();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-bool WebVideoFullscreenManagerProxy::hasMode(HTMLMediaElement::VideoFullscreenMode mode) const
</del><ins>+bool WebVideoFullscreenManagerProxy::hasMode(HTMLMediaElementEnums::VideoFullscreenMode mode) const
</ins><span class="cx"> {
</span><span class="cx"> for (auto& tuple : m_contextMap.values()) {
</span><span class="cx"> if (std::get<1>(tuple)->hasMode(mode))
</span><span class="lines">@@ -306,7 +306,7 @@
</span><span class="cx">
</span><span class="cx"> #pragma mark Messages from WebVideoFullscreenManager
</span><span class="cx">
</span><del>-void WebVideoFullscreenManagerProxy::setupFullscreenWithID(uint64_t contextId, uint32_t videoLayerID, const WebCore::IntRect& initialRect, float hostingDeviceScaleFactor, HTMLMediaElement::VideoFullscreenMode videoFullscreenMode, bool allowOptimizedFullscreen)
</del><ins>+void WebVideoFullscreenManagerProxy::setupFullscreenWithID(uint64_t contextId, uint32_t videoLayerID, const WebCore::IntRect& initialRect, float hostingDeviceScaleFactor, HTMLMediaElementEnums::VideoFullscreenMode videoFullscreenMode, bool allowOptimizedFullscreen)
</ins><span class="cx"> {
</span><span class="cx"> ASSERT(videoLayerID);
</span><span class="cx"> RefPtr<WebVideoFullscreenModelContext> model;
</span><span class="lines">@@ -542,7 +542,7 @@
</span><span class="cx"> m_page->send(Messages::WebVideoFullscreenManager::SelectLegibleMediaOption(contextId, index), m_page->pageID());
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenManagerProxy::fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElement::VideoFullscreenMode mode)
</del><ins>+void WebVideoFullscreenManagerProxy::fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElementEnums::VideoFullscreenMode mode)
</ins><span class="cx"> {
</span><span class="cx"> m_page->send(Messages::WebVideoFullscreenManager::FullscreenModeChanged(contextId, mode), m_page->pageID());
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebCoreSupportWebChromeClientcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -915,9 +915,9 @@
</span><span class="cx"> return m_page->videoFullscreenManager()->supportsVideoFullscreen();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebChromeClient::enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement& videoElement, WebCore::HTMLMediaElement::VideoFullscreenMode mode)
</del><ins>+void WebChromeClient::enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement& videoElement, WebCore::HTMLMediaElementEnums::VideoFullscreenMode mode)
</ins><span class="cx"> {
</span><del>- ASSERT(mode != HTMLMediaElement::VideoFullscreenModeNone);
</del><ins>+ ASSERT(mode != HTMLMediaElementEnums::VideoFullscreenModeNone);
</ins><span class="cx"> m_page->videoFullscreenManager()->enterVideoFullscreenForVideoElement(videoElement, mode);
</span><span class="cx"> }
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebCoreSupportWebChromeClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -250,7 +250,7 @@
</span><span class="cx">
</span><span class="cx"> #if PLATFORM(IOS)
</span><span class="cx"> virtual bool supportsVideoFullscreen() override;
</span><del>- virtual void enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElement::VideoFullscreenMode) override;
</del><ins>+ virtual void enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElementEnums::VideoFullscreenMode) override;
</ins><span class="cx"> virtual void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&) override;
</span><span class="cx"> #endif
</span><span class="cx">
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessiosWebVideoFullscreenManagerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.h (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.h        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.h        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -29,7 +29,7 @@
</span><span class="cx">
</span><span class="cx"> #include "MessageReceiver.h"
</span><span class="cx"> #include <WebCore/EventListener.h>
</span><del>-#include <WebCore/HTMLMediaElement.h>
</del><ins>+#include <WebCore/HTMLMediaElementEnums.h>
</ins><span class="cx"> #include <WebCore/PlatformCALayer.h>
</span><span class="cx"> #include <WebCore/WebVideoFullscreenInterface.h>
</span><span class="cx"> #include <WebCore/WebVideoFullscreenModelVideoElement.h>
</span><span class="lines">@@ -73,8 +73,8 @@
</span><span class="cx"> bool targetIsFullscreen() const { return m_targetIsFullscreen; }
</span><span class="cx"> void setTargetIsFullscreen(bool flag) { m_targetIsFullscreen = flag; }
</span><span class="cx">
</span><del>- WebCore::HTMLMediaElement::VideoFullscreenMode fullscreenMode() const { return m_fullscreenMode; }
- void setFullscreenMode(WebCore::HTMLMediaElement::VideoFullscreenMode mode) { m_fullscreenMode = mode; }
</del><ins>+ WebCore::HTMLMediaElementEnums::VideoFullscreenMode fullscreenMode() const { return m_fullscreenMode; }
+ void setFullscreenMode(WebCore::HTMLMediaElementEnums::VideoFullscreenMode mode) { m_fullscreenMode = mode; }
</ins><span class="cx">
</span><span class="cx"> bool isFullscreen() const { return m_isFullscreen; }
</span><span class="cx"> void setIsFullscreen(bool flag) { m_isFullscreen = flag; }
</span><span class="lines">@@ -100,7 +100,7 @@
</span><span class="cx"> std::unique_ptr<LayerHostingContext> m_layerHostingContext;
</span><span class="cx"> bool m_isAnimating { false };
</span><span class="cx"> bool m_targetIsFullscreen { false };
</span><del>- WebCore::HTMLMediaElement::VideoFullscreenMode m_fullscreenMode { WebCore::HTMLMediaElement::VideoFullscreenModeNone };
</del><ins>+ WebCore::HTMLMediaElementEnums::VideoFullscreenMode m_fullscreenMode { WebCore::HTMLMediaElementEnums::VideoFullscreenModeNone };
</ins><span class="cx"> bool m_isFullscreen { false };
</span><span class="cx"> };
</span><span class="cx">
</span><span class="lines">@@ -113,7 +113,7 @@
</span><span class="cx">
</span><span class="cx"> // Interface to ChromeClient
</span><span class="cx"> bool supportsVideoFullscreen() const;
</span><del>- void enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElement::VideoFullscreenMode);
</del><ins>+ void enterVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&, WebCore::HTMLMediaElementEnums::VideoFullscreenMode);
</ins><span class="cx"> void exitVideoFullscreenForVideoElement(WebCore::HTMLVideoElement&);
</span><span class="cx">
</span><span class="cx"> protected:
</span><span class="lines">@@ -160,7 +160,7 @@
</span><span class="cx"> void setVideoLayerGravityEnum(uint64_t contextId, unsigned gravity);
</span><span class="cx"> void selectAudioMediaOption(uint64_t contextId, uint64_t index);
</span><span class="cx"> void selectLegibleMediaOption(uint64_t contextId, uint64_t index);
</span><del>- void fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElement::VideoFullscreenMode);
</del><ins>+ void fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElementEnums::VideoFullscreenMode);
</ins><span class="cx"> void fullscreenMayReturnToInline(uint64_t contextId, bool isPageVisible);
</span><span class="cx">
</span><span class="cx"> WebPage* m_page;
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessiosWebVideoFullscreenManagermessagesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.messages.in (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.messages.in        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.messages.in        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -41,7 +41,7 @@
</span><span class="cx"> SetVideoLayerGravityEnum(uint64_t contextId, unsigned gravity)
</span><span class="cx"> SelectAudioMediaOption(uint64_t contextId, uint64_t index)
</span><span class="cx"> SelectLegibleMediaOption(uint64_t contextId, uint64_t index)
</span><del>- FullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElement::VideoFullscreenMode videoFullscreenMode)
</del><ins>+ FullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElementEnums::VideoFullscreenMode videoFullscreenMode)
</ins><span class="cx"> FullscreenMayReturnToInline(uint64_t contextId, bool isPageVisible)
</span><span class="cx"> }
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessiosWebVideoFullscreenManagermm"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm (184669 => 184670)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm        2015-05-20 23:04:15 UTC (rev 184669)
+++ trunk/Source/WebKit2/WebProcess/ios/WebVideoFullscreenManager.mm        2015-05-20 23:12:09 UTC (rev 184670)
</span><span class="lines">@@ -217,9 +217,9 @@
</span><span class="cx"> return Settings::avKitEnabled();
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenManager::enterVideoFullscreenForVideoElement(HTMLVideoElement& videoElement, HTMLMediaElement::VideoFullscreenMode mode)
</del><ins>+void WebVideoFullscreenManager::enterVideoFullscreenForVideoElement(HTMLVideoElement& videoElement, HTMLMediaElementEnums::VideoFullscreenMode mode)
</ins><span class="cx"> {
</span><del>- ASSERT(mode != HTMLMediaElement::VideoFullscreenModeNone);
</del><ins>+ ASSERT(mode != HTMLMediaElementEnums::VideoFullscreenModeNone);
</ins><span class="cx">
</span><span class="cx"> uint64_t contextId;
</span><span class="cx">
</span><span class="lines">@@ -394,7 +394,7 @@
</span><span class="cx"> ensureModel(contextId).selectLegibleMediaOption(index);
</span><span class="cx"> }
</span><span class="cx">
</span><del>-void WebVideoFullscreenManager::fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElement::VideoFullscreenMode videoFullscreenMode)
</del><ins>+void WebVideoFullscreenManager::fullscreenModeChanged(uint64_t contextId, WebCore::HTMLMediaElementEnums::VideoFullscreenMode videoFullscreenMode)
</ins><span class="cx"> {
</span><span class="cx"> ensureModel(contextId).fullscreenModeChanged(videoFullscreenMode);
</span><span class="cx"> }
</span><span class="lines">@@ -481,7 +481,7 @@
</span><span class="cx">
</span><span class="cx"> interface->setIsAnimating(false);
</span><span class="cx"> interface->setIsFullscreen(false);
</span><del>- HTMLMediaElement::VideoFullscreenMode mode = interface->fullscreenMode();
</del><ins>+ HTMLMediaElementEnums::VideoFullscreenMode mode = interface->fullscreenMode();
</ins><span class="cx">
</span><span class="cx"> model->setVideoFullscreenLayer(nil);
</span><span class="cx"> RefPtr<HTMLVideoElement> videoElement = model->videoElement();
</span></span></pre>
</div>
</div>
</body>
</html>