<!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>[208329] 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/208329">208329</a></dd>
<dt>Author</dt> <dd>barraclough@apple.com</dd>
<dt>Date</dt> <dd>2016-11-03 09:34:33 -0700 (Thu, 03 Nov 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Remove PageThrottler &amp; all related code
https://bugs.webkit.org/show_bug.cgi?id=164302

Reviewed by Ryosuke Niwa.

All relevant information now available from the ActivityState.

Source/WebCore:

* CMakeLists.txt:
* WebCore.xcodeproj/project.pbxproj:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::setMuted):
(WebCore::HTMLMediaElement::updateVolume):
(WebCore::HTMLMediaElement::updatePlayState):
(WebCore::HTMLMediaElement::updateAudioAssertionState): Deleted.
* html/HTMLMediaElement.h:
* loader/FrameLoader.cpp:
(WebCore::FrameLoader::completed):
(WebCore::FrameLoader::started):
* loader/FrameLoader.h:
* page/ChromeClient.h:
* page/Page.cpp:
(WebCore::Page::Page):
* page/Page.h:
(WebCore::Page::pageActivityStateChanged): Deleted.
(WebCore::Page::pageThrottler): Deleted.
* page/PageThrottler.cpp: Removed.
* page/PageThrottler.h: Removed.

Source/WebKit2:

* PluginProcess/PluginProcess.cpp:
(WebKit::PluginProcess::PluginProcess):
(WebKit::PluginProcess::createWebProcessConnection):
(WebKit::PluginProcess::audioHardwareDidBecomeActive): Deleted.
(WebKit::PluginProcess::audioHardwareDidBecomeInactive): Deleted.
* PluginProcess/PluginProcess.h:
(): Deleted.
* PluginProcess/WebProcessConnection.cpp:
(WebKit::WebProcessConnection::audioHardwareDidBecomeActive): Deleted.
(WebKit::WebProcessConnection::audioHardwareDidBecomeInactive): Deleted.
* PluginProcess/WebProcessConnection.h:
* WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
(WebKit::NPRuntimeObjectMap::evaluate):
* WebProcess/Plugins/Plugin.h:
(WebKit::Plugin::audioHardwareActivity): Deleted.
* WebProcess/Plugins/PluginProcessConnection.cpp:
(WebKit::PluginProcessConnection::PluginProcessConnection):
(WebKit::PluginProcessConnection::didReceiveMessage):
(WebKit::PluginProcessConnection::audioHardwareDidBecomeActive): Deleted.
(WebKit::PluginProcessConnection::audioHardwareDidBecomeInactive): Deleted.
* WebProcess/Plugins/PluginProcessConnection.h:
(WebKit::PluginProcessConnection::supportsAsynchronousPluginInitialization):
(WebKit::PluginProcessConnection::audioHardwareActivity): Deleted.
* WebProcess/Plugins/PluginProcessConnection.messages.in:
* WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::audioHardwareActivity): Deleted.
* WebProcess/Plugins/PluginProxy.h:
* WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::audioHardwareActivity): Deleted.
* WebProcess/Plugins/PluginView.h:
* WebProcess/WebPage/WebPage.cpp:</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreCMakeListstxt">trunk/Source/WebCore/CMakeLists.txt</a></li>
<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="#trunkSourceWebCoreloaderFrameLoadercpp">trunk/Source/WebCore/loader/FrameLoader.cpp</a></li>
<li><a href="#trunkSourceWebCoreloaderFrameLoaderh">trunk/Source/WebCore/loader/FrameLoader.h</a></li>
<li><a href="#trunkSourceWebCorepageChromeClienth">trunk/Source/WebCore/page/ChromeClient.h</a></li>
<li><a href="#trunkSourceWebCorepagePagecpp">trunk/Source/WebCore/page/Page.cpp</a></li>
<li><a href="#trunkSourceWebCorepagePageh">trunk/Source/WebCore/page/Page.h</a></li>
<li><a href="#trunkSourceWebKit2ChangeLog">trunk/Source/WebKit2/ChangeLog</a></li>
<li><a href="#trunkSourceWebKit2PluginProcessPluginProcesscpp">trunk/Source/WebKit2/PluginProcess/PluginProcess.cpp</a></li>
<li><a href="#trunkSourceWebKit2PluginProcessPluginProcessh">trunk/Source/WebKit2/PluginProcess/PluginProcess.h</a></li>
<li><a href="#trunkSourceWebKit2PluginProcessWebProcessConnectioncpp">trunk/Source/WebKit2/PluginProcess/WebProcessConnection.cpp</a></li>
<li><a href="#trunkSourceWebKit2PluginProcessWebProcessConnectionh">trunk/Source/WebKit2/PluginProcess/WebProcessConnection.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsNetscapeNPRuntimeObjectMapcpp">trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginh">trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginProcessConnectioncpp">trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginProcessConnectionh">trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginProcessConnectionmessagesin">trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.messages.in</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginProxycpp">trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginProxyh">trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginViewcpp">trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp</a></li>
<li><a href="#trunkSourceWebKit2WebProcessPluginsPluginViewh">trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h</a></li>
<li><a href="#trunkSourceWebKit2WebProcessWebPageWebPagecpp">trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp</a></li>
</ul>

<h3>Removed Paths</h3>
<ul>
<li><a href="#trunkSourceWebCorepagePageThrottlercpp">trunk/Source/WebCore/page/PageThrottler.cpp</a></li>
<li><a href="#trunkSourceWebCorepagePageThrottlerh">trunk/Source/WebCore/page/PageThrottler.h</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreCMakeListstxt"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/CMakeLists.txt (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/CMakeLists.txt        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/CMakeLists.txt        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -2049,7 +2049,6 @@
</span><span class="cx">     page/PageOverlay.cpp
</span><span class="cx">     page/PageOverlayController.cpp
</span><span class="cx">     page/PageSerializer.cpp
</span><del>-    page/PageThrottler.cpp
</del><span class="cx">     page/PageVisibilityState.cpp
</span><span class="cx">     page/Performance.cpp
</span><span class="cx">     page/PerformanceEntry.cpp
</span></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/ChangeLog        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -1,3 +1,33 @@
</span><ins>+2016-11-01  Gavin Barraclough  &lt;barraclough@apple.com&gt;
+
+        Remove PageThrottler &amp; all related code
+        https://bugs.webkit.org/show_bug.cgi?id=164302
+
+        Reviewed by Ryosuke Niwa.
+
+        All relevant information now available from the ActivityState.
+
+        * CMakeLists.txt:
+        * WebCore.xcodeproj/project.pbxproj:
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::setMuted):
+        (WebCore::HTMLMediaElement::updateVolume):
+        (WebCore::HTMLMediaElement::updatePlayState):
+        (WebCore::HTMLMediaElement::updateAudioAssertionState): Deleted.
+        * html/HTMLMediaElement.h:
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::completed):
+        (WebCore::FrameLoader::started):
+        * loader/FrameLoader.h:
+        * page/ChromeClient.h:
+        * page/Page.cpp:
+        (WebCore::Page::Page):
+        * page/Page.h:
+        (WebCore::Page::pageActivityStateChanged): Deleted.
+        (WebCore::Page::pageThrottler): Deleted.
+        * page/PageThrottler.cpp: Removed.
+        * page/PageThrottler.h: Removed.
+
</ins><span class="cx"> 2016-11-03  Dan Bernstein  &lt;mitz@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         REGRESSION (r206247): Painting milestones can be delayed until the next layer flush
</span></span></pre></div>
<a id="trunkSourceWebCoreWebCorexcodeprojprojectpbxproj"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -3957,8 +3957,6 @@
</span><span class="cx">                 A715E653134BBBEC00D8E713 /* ProgressShadowElement.h in Headers */ = {isa = PBXBuildFile; fileRef = A715E651134BBBEC00D8E713 /* ProgressShadowElement.h */; };
</span><span class="cx">                 A718760E0B2A120100A16ECE /* DragActions.h in Headers */ = {isa = PBXBuildFile; fileRef = A718760D0B2A120100A16ECE /* DragActions.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 A71878900B2D04AC00A16ECE /* DragControllerMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = A718788F0B2D04AC00A16ECE /* DragControllerMac.mm */; };
</span><del>-                A7197F24175689C4007B9442 /* PageThrottler.h in Headers */ = {isa = PBXBuildFile; fileRef = A7197F23175689C4007B9442 /* PageThrottler.h */; settings = {ATTRIBUTES = (Private, ); }; };
-                A7197F2617568AE5007B9442 /* PageThrottler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A7197F2517568AE5007B9442 /* PageThrottler.cpp */; };
</del><span class="cx">                 A723F77B1484CA4C008C6DBE /* PlatformExportMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = A723F77A1484CA4C008C6DBE /* PlatformExportMacros.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 A72763BF16689BFB002FCACB /* UserActionElementSet.h in Headers */ = {isa = PBXBuildFile; fileRef = A72763BE16689BFB002FCACB /* UserActionElementSet.h */; settings = {ATTRIBUTES = (Private, ); }; };
</span><span class="cx">                 A73F95FE12C97BFE0031AAF9 /* RoundedRect.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A73F95FC12C97BFE0031AAF9 /* RoundedRect.cpp */; };
</span><span class="lines">@@ -11486,8 +11484,6 @@
</span><span class="cx">                 A715E651134BBBEC00D8E713 /* ProgressShadowElement.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProgressShadowElement.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 A718760D0B2A120100A16ECE /* DragActions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DragActions.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 A718788F0B2D04AC00A16ECE /* DragControllerMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DragControllerMac.mm; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><del>-                A7197F23175689C4007B9442 /* PageThrottler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PageThrottler.h; sourceTree = &quot;&lt;group&gt;&quot;; };
-                A7197F2517568AE5007B9442 /* PageThrottler.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = PageThrottler.cpp; sourceTree = &quot;&lt;group&gt;&quot;; };
</del><span class="cx">                 A71A70C911AFB02000989D6D /* HTMLMeterElement.idl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = HTMLMeterElement.idl; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 A723F77A1484CA4C008C6DBE /* PlatformExportMacros.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlatformExportMacros.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="cx">                 A72763BE16689BFB002FCACB /* UserActionElementSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UserActionElementSet.h; sourceTree = &quot;&lt;group&gt;&quot;; };
</span><span class="lines">@@ -17743,8 +17739,6 @@
</span><span class="cx">                                 2D5C9CFE19C7B52E00B3C5C1 /* PageOverlayController.h */,
</span><span class="cx">                                 371E65CD13661EED00BEEDB0 /* PageSerializer.cpp */,
</span><span class="cx">                                 371E65CB13661EDC00BEEDB0 /* PageSerializer.h */,
</span><del>-                                A7197F2517568AE5007B9442 /* PageThrottler.cpp */,
-                                A7197F23175689C4007B9442 /* PageThrottler.h */,
</del><span class="cx">                                 FFD5B977135CC97800D5E92A /* PageVisibilityState.cpp */,
</span><span class="cx">                                 FFD5B978135CC97800D5E92A /* PageVisibilityState.h */,
</span><span class="cx">                                 E526AF3E1727F8F200E41781 /* Performance.cpp */,
</span><span class="lines">@@ -26638,7 +26632,6 @@
</span><span class="cx">                                 F3820895147D35F90010BC06 /* PageRuntimeAgent.h in Headers */,
</span><span class="cx">                                 A5F36D3B18F758720054C024 /* PageScriptDebugServer.h in Headers */,
</span><span class="cx">                                 371E65CC13661EDC00BEEDB0 /* PageSerializer.h in Headers */,
</span><del>-                                A7197F24175689C4007B9442 /* PageThrottler.h in Headers */,
</del><span class="cx">                                 E1284AE110447D4500EAEB52 /* PageTransitionEvent.h in Headers */,
</span><span class="cx">                                 51E1ECC30C91C90400DC255B /* PageURLRecord.h in Headers */,
</span><span class="cx">                                 FFD5B97B135CC97800D5E92A /* PageVisibilityState.h in Headers */,
</span><span class="lines">@@ -30363,7 +30356,6 @@
</span><span class="cx">                                 F3820894147D35F90010BC06 /* PageRuntimeAgent.cpp in Sources */,
</span><span class="cx">                                 A5F36D3A18F758720054C024 /* PageScriptDebugServer.cpp in Sources */,
</span><span class="cx">                                 371E65CE13661EED00BEEDB0 /* PageSerializer.cpp in Sources */,
</span><del>-                                A7197F2617568AE5007B9442 /* PageThrottler.cpp in Sources */,
</del><span class="cx">                                 E1284AEA10447DEE00EAEB52 /* PageTransitionEvent.cpp in Sources */,
</span><span class="cx">                                 51E1ECC20C91C90400DC255B /* PageURLRecord.cpp in Sources */,
</span><span class="cx">                                 FFD5B97A135CC97800D5E92A /* PageVisibilityState.cpp in Sources */,
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLMediaElementcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLMediaElement.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -74,7 +74,6 @@
</span><span class="cx"> #include &quot;NoEventDispatchAssertion.h&quot;
</span><span class="cx"> #include &quot;Page.h&quot;
</span><span class="cx"> #include &quot;PageGroup.h&quot;
</span><del>-#include &quot;PageThrottler.h&quot;
</del><span class="cx"> #include &quot;PlatformMediaSessionManager.h&quot;
</span><span class="cx"> #include &quot;ProgressTracker.h&quot;
</span><span class="cx"> #include &quot;RenderLayerCompositor.h&quot;
</span><span class="lines">@@ -3276,7 +3275,6 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     scheduleUpdatePlaybackControlsManager();
</span><del>-    updateAudioAssertionState();
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void HTMLMediaElement::togglePlayState()
</span><span class="lines">@@ -4791,8 +4789,6 @@
</span><span class="cx">     if (hasMediaControls())
</span><span class="cx">         mediaControls()-&gt;changedVolume();
</span><span class="cx"> #endif
</span><del>-
-    updateAudioAssertionState();
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void HTMLMediaElement::updatePlayState(UpdateState updateState)
</span><span class="lines">@@ -4812,7 +4808,6 @@
</span><span class="cx">         m_playbackProgressTimer.stop();
</span><span class="cx">         if (hasMediaControls())
</span><span class="cx">             mediaControls()-&gt;playbackStopped();
</span><del>-        updateAudioAssertionState();
</del><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx">     
</span><span class="lines">@@ -4878,8 +4873,6 @@
</span><span class="cx"> 
</span><span class="cx">     m_hasEverHadAudio |= hasAudio();
</span><span class="cx">     m_hasEverHadVideo |= hasVideo();
</span><del>-
-    updateAudioAssertionState();
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void HTMLMediaElement::setPlaying(bool playing)
</span><span class="lines">@@ -6947,42 +6940,6 @@
</span><span class="cx">     return muted() || (document().page() &amp;&amp; document().page()-&gt;isAudioMuted());
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void HTMLMediaElement::updateAudioAssertionState()
-{
-    auto* page = document().page();
-    if (!page) {
-        m_audioActivityToken = nullptr;
-        return;
-    }
-
-#define RELEASE_AUDIO_TOKEN(REASON) \
-    RELEASE_LOG_IF(page-&gt;isAlwaysOnLoggingAllowed() &amp;&amp; m_audioActivityToken, Media, &quot;%p - HTMLMediaElement releases audio activity token, reason: &quot; REASON, this); \
-    m_audioActivityToken = nullptr
-
-    if (!hasAudio()) {
-        RELEASE_AUDIO_TOKEN(&quot;No audio&quot;);
-        return;
-    }
-    if (!isPlaying()) {
-        RELEASE_AUDIO_TOKEN(&quot;Not playing&quot;);
-        return;
-    }
-    if (effectiveMuted()) {
-        RELEASE_AUDIO_TOKEN(&quot;Audio is muted&quot;);
-        return;
-    }
-    if (!volume()) {
-        RELEASE_AUDIO_TOKEN(&quot;Volume is 0&quot;);
-        return;
-    }
-    if (!m_audioActivityToken) {
-        RELEASE_LOG_IF(page-&gt;isAlwaysOnLoggingAllowed(), Media, &quot;%p - HTMLMediaElement takes audio activity token because there is audible audio&quot;, this);
-        m_audioActivityToken = page-&gt;pageThrottler().mediaActivityToken();
-    }
-
-#undef RELEASE_AUDIO_TOKEN
-}
-
</del><span class="cx"> bool HTMLMediaElement::doesHaveAttribute(const AtomicString&amp; attribute, AtomicString* value) const
</span><span class="cx"> {
</span><span class="cx">     QualifiedName attributeName(nullAtom, attribute, nullAtom);
</span></span></pre></div>
<a id="trunkSourceWebCorehtmlHTMLMediaElementh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/html/HTMLMediaElement.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/html/HTMLMediaElement.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -37,7 +37,6 @@
</span><span class="cx"> #include &quot;MediaControllerInterface.h&quot;
</span><span class="cx"> #include &quot;MediaElementSession.h&quot;
</span><span class="cx"> #include &quot;MediaProducer.h&quot;
</span><del>-#include &quot;PageThrottler.h&quot;
</del><span class="cx"> #include &quot;UserInterfaceLayoutDirection.h&quot;
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(VIDEO_TRACK)
</span><span class="lines">@@ -771,8 +770,6 @@
</span><span class="cx"> 
</span><span class="cx">     bool effectiveMuted() const;
</span><span class="cx"> 
</span><del>-    void updateAudioAssertionState();
-
</del><span class="cx">     void registerWithDocument(Document&amp;);
</span><span class="cx">     void unregisterWithDocument(Document&amp;);
</span><span class="cx"> 
</span><span class="lines">@@ -1007,7 +1004,6 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     std::unique_ptr&lt;MediaElementSession&gt; m_mediaSession;
</span><del>-    PageActivityAssertionToken m_audioActivityToken;
</del><span class="cx">     size_t m_reportedExtraMemoryCost { 0 };
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(MEDIA_CONTROLS_SCRIPT)
</span></span></pre></div>
<a id="trunkSourceWebCoreloaderFrameLoadercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/loader/FrameLoader.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/loader/FrameLoader.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/loader/FrameLoader.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -87,7 +87,6 @@
</span><span class="cx"> #include &quot;MemoryCache.h&quot;
</span><span class="cx"> #include &quot;Page.h&quot;
</span><span class="cx"> #include &quot;PageCache.h&quot;
</span><del>-#include &quot;PageThrottler.h&quot;
</del><span class="cx"> #include &quot;PageTransitionEvent.h&quot;
</span><span class="cx"> #include &quot;PlatformStrategies.h&quot;
</span><span class="cx"> #include &quot;PluginData.h&quot;
</span><span class="lines">@@ -1078,13 +1077,10 @@
</span><span class="cx"> 
</span><span class="cx">     if (m_frame.view())
</span><span class="cx">         m_frame.view()-&gt;maintainScrollPositionAtAnchor(nullptr);
</span><del>-    m_activityAssertion = nullptr;
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void FrameLoader::started()
</span><span class="cx"> {
</span><del>-    if (m_frame.page())
-        m_activityAssertion = m_frame.page()-&gt;pageThrottler().pageLoadActivityToken();
</del><span class="cx">     for (Frame* frame = &amp;m_frame; frame; frame = frame-&gt;tree().parent())
</span><span class="cx">         frame-&gt;loader().m_isComplete = false;
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreloaderFrameLoaderh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/loader/FrameLoader.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/loader/FrameLoader.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/loader/FrameLoader.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -36,7 +36,6 @@
</span><span class="cx"> #include &quot;FrameLoaderTypes.h&quot;
</span><span class="cx"> #include &quot;LayoutMilestones.h&quot;
</span><span class="cx"> #include &quot;MixedContentChecker.h&quot;
</span><del>-#include &quot;PageThrottler.h&quot;
</del><span class="cx"> #include &quot;ResourceHandleTypes.h&quot;
</span><span class="cx"> #include &quot;ResourceLoadNotifier.h&quot;
</span><span class="cx"> #include &quot;ResourceLoaderOptions.h&quot;
</span><span class="lines">@@ -459,7 +458,6 @@
</span><span class="cx"> 
</span><span class="cx">     URL m_previousURL;
</span><span class="cx">     RefPtr&lt;HistoryItem&gt; m_requestedHistoryItem;
</span><del>-    PageActivityAssertionToken m_activityAssertion;
</del><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> // This function is called by createWindow() in JSDOMWindowBase.cpp, for example, for
</span></span></pre></div>
<a id="trunkSourceWebCorepageChromeClienth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/ChromeClient.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/ChromeClient.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/page/ChromeClient.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -32,7 +32,6 @@
</span><span class="cx"> #include &quot;HostWindow.h&quot;
</span><span class="cx"> #include &quot;LayerFlushThrottleState.h&quot;
</span><span class="cx"> #include &quot;MediaProducer.h&quot;
</span><del>-#include &quot;PageThrottler.h&quot;
</del><span class="cx"> #include &quot;PopupMenu.h&quot;
</span><span class="cx"> #include &quot;PopupMenuClient.h&quot;
</span><span class="cx"> #include &quot;RenderEmbeddedObject.h&quot;
</span></span></pre></div>
<a id="trunkSourceWebCorepagePagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/Page.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/Page.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/page/Page.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -67,7 +67,6 @@
</span><span class="cx"> #include &quot;PageDebuggable.h&quot;
</span><span class="cx"> #include &quot;PageGroup.h&quot;
</span><span class="cx"> #include &quot;PageOverlayController.h&quot;
</span><del>-#include &quot;PageThrottler.h&quot;
</del><span class="cx"> #include &quot;PlatformMediaSessionManager.h&quot;
</span><span class="cx"> #include &quot;PlugInClient.h&quot;
</span><span class="cx"> #include &quot;PluginData.h&quot;
</span><span class="lines">@@ -224,7 +223,6 @@
</span><span class="cx"> #endif
</span><span class="cx">     , m_alternativeTextClient(pageConfiguration.alternativeTextClient)
</span><span class="cx">     , m_scriptedAnimationsSuspended(false)
</span><del>-    , m_pageThrottler(*this)
</del><span class="cx">     , m_consoleClient(std::make_unique&lt;PageConsoleClient&gt;(*this))
</span><span class="cx"> #if ENABLE(REMOTE_INSPECTOR)
</span><span class="cx">     , m_inspectorDebuggable(std::make_unique&lt;PageDebuggable&gt;(*this))
</span></span></pre></div>
<a id="trunkSourceWebCorepagePageh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/Page.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/Page.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/page/Page.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -26,7 +26,6 @@
</span><span class="cx"> #include &quot;LayoutMilestones.h&quot;
</span><span class="cx"> #include &quot;LayoutRect.h&quot;
</span><span class="cx"> #include &quot;MediaProducer.h&quot;
</span><del>-#include &quot;PageThrottler.h&quot;
</del><span class="cx"> #include &quot;PageVisibilityState.h&quot;
</span><span class="cx"> #include &quot;Pagination.h&quot;
</span><span class="cx"> #include &quot;PlatformScreen.h&quot;
</span><span class="lines">@@ -34,6 +33,7 @@
</span><span class="cx"> #include &quot;ScrollTypes.h&quot;
</span><span class="cx"> #include &quot;SessionID.h&quot;
</span><span class="cx"> #include &quot;Supplementable.h&quot;
</span><ins>+#include &quot;Timer.h&quot;
</ins><span class="cx"> #include &quot;UserInterfaceLayoutDirection.h&quot;
</span><span class="cx"> #include &quot;ViewportArguments.h&quot;
</span><span class="cx"> #include &quot;WheelEventTestTrigger.h&quot;
</span><span class="lines">@@ -104,7 +104,6 @@
</span><span class="cx"> class PageConsoleClient;
</span><span class="cx"> class PageDebuggable;
</span><span class="cx"> class PageGroup;
</span><del>-class PageThrottler;
</del><span class="cx"> class PlugInClient;
</span><span class="cx"> class PluginData;
</span><span class="cx"> class PluginInfoProvider;
</span><span class="lines">@@ -137,7 +136,6 @@
</span><span class="cx">     WTF_MAKE_NONCOPYABLE(Page);
</span><span class="cx">     WTF_MAKE_FAST_ALLOCATED;
</span><span class="cx">     friend class Settings;
</span><del>-    friend class PageThrottler;
</del><span class="cx"> 
</span><span class="cx"> public:
</span><span class="cx">     WEBCORE_EXPORT static void updateStyleForAllPagesAfterGlobalChangeInEnvironment();
</span><span class="lines">@@ -336,7 +334,6 @@
</span><span class="cx">     // Notifications when the Page starts and stops being presented via a native window.
</span><span class="cx">     WEBCORE_EXPORT void setActivityState(ActivityState::Flags);
</span><span class="cx">     bool isVisibleAndActive() const;
</span><del>-    void pageActivityStateChanged() { }
</del><span class="cx">     WEBCORE_EXPORT void setIsVisible(bool);
</span><span class="cx">     WEBCORE_EXPORT void setIsPrerender();
</span><span class="cx">     bool isVisible() const { return m_activityState &amp; ActivityState::IsVisible; }
</span><span class="lines">@@ -437,8 +434,6 @@
</span><span class="cx">     void sawMediaEngine(const String&amp; engineName);
</span><span class="cx">     void resetSeenMediaEngines();
</span><span class="cx"> 
</span><del>-    PageThrottler&amp; pageThrottler() { return m_pageThrottler; }
-
</del><span class="cx">     PageConsoleClient&amp; console() { return *m_consoleClient; }
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(REMOTE_INSPECTOR)
</span><span class="lines">@@ -667,7 +662,6 @@
</span><span class="cx">     bool m_isEditable;
</span><span class="cx">     bool m_isPrerender;
</span><span class="cx">     ActivityState::Flags m_activityState;
</span><del>-    PageActivityState::Flags m_pageActivityState;
</del><span class="cx"> 
</span><span class="cx">     LayoutMilestones m_requestedLayoutMilestones;
</span><span class="cx"> 
</span><span class="lines">@@ -685,7 +679,6 @@
</span><span class="cx">     AlternativeTextClient* m_alternativeTextClient;
</span><span class="cx"> 
</span><span class="cx">     bool m_scriptedAnimationsSuspended;
</span><del>-    PageThrottler m_pageThrottler;
</del><span class="cx">     const std::unique_ptr&lt;PageConsoleClient&gt; m_consoleClient;
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(REMOTE_INSPECTOR)
</span></span></pre></div>
<a id="trunkSourceWebCorepagePageThrottlercpp"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/page/PageThrottler.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/PageThrottler.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/page/PageThrottler.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -1,85 +0,0 @@
</span><del>-/*
- * Copyright (C) 2013 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 INC. AND ITS CONTRIBUTORS ``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 INC. OR ITS 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.
- */
-
-#include &quot;config.h&quot;
-#include &quot;PageThrottler.h&quot;
-
-#include &quot;Page.h&quot;
-
-namespace WebCore {
-
-static const double PageLoadHysteresisSeconds = 10;
-
-PageThrottler::PageThrottler(Page&amp; page)
-    : m_page(page)
-    , m_mediaActivityHysteresis([this](HysteresisState state) { setActivityFlag(PageActivityState::MediaActivity, state == HysteresisState::Started); })
-    , m_pageLoadActivityHysteresis([this](HysteresisState state) { setActivityFlag(PageActivityState::PageLoadActivity, state == HysteresisState::Started); }, PageLoadHysteresisSeconds)
-    , m_mediaActivityCounter([this](RefCounterEvent) { mediaActivityCounterChanged(); })
-    , m_pageLoadActivityCounter([this](RefCounterEvent) { pageLoadActivityCounterChanged(); })
-{
-}
-
-PageActivityAssertionToken PageThrottler::mediaActivityToken()
-{
-    return m_mediaActivityCounter.count();
-}
-
-PageActivityAssertionToken PageThrottler::pageLoadActivityToken()
-{
-    return m_pageLoadActivityCounter.count();
-}
-
-void PageThrottler::mediaActivityCounterChanged()
-{
-    if (m_mediaActivityCounter.value())
-        m_mediaActivityHysteresis.start();
-    else
-        m_mediaActivityHysteresis.stop();
-}
-
-void PageThrottler::pageLoadActivityCounterChanged()
-{
-    if (m_pageLoadActivityCounter.value())
-        m_pageLoadActivityHysteresis.start();
-    else
-        m_pageLoadActivityHysteresis.stop();
-}
-
-void PageThrottler::setActivityFlag(PageActivityState::Flags flag, bool value)
-{
-    PageActivityState::Flags activityState = m_activityState;
-    if (value)
-        activityState |= flag;
-    else
-        activityState &amp;= ~flag;
-
-    if (m_activityState == activityState)
-        return;
-    m_activityState = activityState;
-
-    m_page.pageActivityStateChanged();
-}
-
-}
</del></span></pre></div>
<a id="trunkSourceWebCorepagePageThrottlerh"></a>
<div class="delfile"><h4>Deleted: trunk/Source/WebCore/page/PageThrottler.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/PageThrottler.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebCore/page/PageThrottler.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -1,76 +0,0 @@
</span><del>-/*
- * Copyright (C) 2013 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 INC. AND ITS CONTRIBUTORS ``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 INC. OR ITS 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.
- */
-
-#pragma once
-
-#include &quot;ActivityState.h&quot;
-#include &quot;Timer.h&quot;
-#include &quot;UserActivity.h&quot;
-#include &lt;wtf/RefCounter.h&gt;
-
-namespace WebCore {
-
-class Page;
-
-enum PageActivityCounterType { };
-typedef RefCounter&lt;PageActivityCounterType&gt; PageActivityCounter;
-typedef PageActivityCounter::Token PageActivityAssertionToken;
-
-struct PageActivityState {
-    enum {
-        MediaActivity = 1 &lt;&lt; 0,
-        PageLoadActivity = 1 &lt;&lt; 1,
-    };
-
-    typedef unsigned Flags;
-
-    static const Flags NoFlags = 0;
-    static const Flags AllFlags = MediaActivity | PageLoadActivity;
-};
-
-class PageThrottler {
-    WTF_MAKE_FAST_ALLOCATED;
-public:
-    PageThrottler(Page&amp;);
-
-    PageActivityState::Flags activityState() { return m_activityState; }
-    void pluginDidEvaluateWhileAudioIsPlaying() { m_mediaActivityHysteresis.impulse(); }
-    PageActivityAssertionToken mediaActivityToken();
-    PageActivityAssertionToken pageLoadActivityToken();
-
-private:
-    void mediaActivityCounterChanged();
-    void pageLoadActivityCounterChanged();
-    void setActivityFlag(PageActivityState::Flags, bool);
-
-    Page&amp; m_page;
-    PageActivityState::Flags m_activityState { PageActivityState::NoFlags };
-    HysteresisActivity m_mediaActivityHysteresis;
-    HysteresisActivity m_pageLoadActivityHysteresis;
-    PageActivityCounter m_mediaActivityCounter;
-    PageActivityCounter m_pageLoadActivityCounter;
-};
-
-} // namespace WebCore
</del></span></pre></div>
<a id="trunkSourceWebKit2ChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/ChangeLog (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/ChangeLog        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/ChangeLog        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -1,3 +1,44 @@
</span><ins>+2016-11-01  Gavin Barraclough  &lt;barraclough@apple.com&gt;
+
+        Remove PageThrottler &amp; all related code
+        https://bugs.webkit.org/show_bug.cgi?id=164302
+
+        Reviewed by Ryosuke Niwa.
+
+        All relevant information now available from the ActivityState.
+
+        * PluginProcess/PluginProcess.cpp:
+        (WebKit::PluginProcess::PluginProcess):
+        (WebKit::PluginProcess::createWebProcessConnection):
+        (WebKit::PluginProcess::audioHardwareDidBecomeActive): Deleted.
+        (WebKit::PluginProcess::audioHardwareDidBecomeInactive): Deleted.
+        * PluginProcess/PluginProcess.h:
+        (): Deleted.
+        * PluginProcess/WebProcessConnection.cpp:
+        (WebKit::WebProcessConnection::audioHardwareDidBecomeActive): Deleted.
+        (WebKit::WebProcessConnection::audioHardwareDidBecomeInactive): Deleted.
+        * PluginProcess/WebProcessConnection.h:
+        * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
+        (WebKit::NPRuntimeObjectMap::evaluate):
+        * WebProcess/Plugins/Plugin.h:
+        (WebKit::Plugin::audioHardwareActivity): Deleted.
+        * WebProcess/Plugins/PluginProcessConnection.cpp:
+        (WebKit::PluginProcessConnection::PluginProcessConnection):
+        (WebKit::PluginProcessConnection::didReceiveMessage):
+        (WebKit::PluginProcessConnection::audioHardwareDidBecomeActive): Deleted.
+        (WebKit::PluginProcessConnection::audioHardwareDidBecomeInactive): Deleted.
+        * WebProcess/Plugins/PluginProcessConnection.h:
+        (WebKit::PluginProcessConnection::supportsAsynchronousPluginInitialization):
+        (WebKit::PluginProcessConnection::audioHardwareActivity): Deleted.
+        * WebProcess/Plugins/PluginProcessConnection.messages.in:
+        * WebProcess/Plugins/PluginProxy.cpp:
+        (WebKit::PluginProxy::audioHardwareActivity): Deleted.
+        * WebProcess/Plugins/PluginProxy.h:
+        * WebProcess/Plugins/PluginView.cpp:
+        (WebKit::PluginView::audioHardwareActivity): Deleted.
+        * WebProcess/Plugins/PluginView.h:
+        * WebProcess/WebPage/WebPage.cpp:
+
</ins><span class="cx"> 2016-11-03  Dan Bernstein  &lt;mitz@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         REGRESSION (r206247): Painting milestones can be delayed until the next layer flush
</span></span></pre></div>
<a id="trunkSourceWebKit2PluginProcessPluginProcesscpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/PluginProcess/PluginProcess.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/PluginProcess/PluginProcess.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/PluginProcess/PluginProcess.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -60,7 +60,6 @@
</span><span class="cx">     , m_connectionActivity(&quot;PluginProcess connection activity.&quot;)
</span><span class="cx"> {
</span><span class="cx">     NetscapePlugin::setSetExceptionFunction(WebProcessConnection::setGlobalException);
</span><del>-    m_audioHardwareListener = AudioHardwareListener::create(*this);
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> PluginProcess::~PluginProcess()
</span><span class="lines">@@ -168,13 +167,6 @@
</span><span class="cx">     // Create a listening connection.
</span><span class="cx">     auto connection = WebProcessConnection::create(IPC::Connection::Identifier(listeningPort));
</span><span class="cx"> 
</span><del>-    if (m_audioHardwareListener) {
-        if (m_audioHardwareListener-&gt;hardwareActivity() == WebCore::AudioHardwareActivityType::IsActive)
-            connection-&gt;audioHardwareDidBecomeActive();
-        else if (m_audioHardwareListener-&gt;hardwareActivity() == WebCore::AudioHardwareActivityType::IsInactive)
-            connection-&gt;audioHardwareDidBecomeInactive();
-    }
-
</del><span class="cx">     m_webProcessConnections.append(WTFMove(connection));
</span><span class="cx"> 
</span><span class="cx">     IPC::Attachment clientPort(listeningPort, MACH_MSG_TYPE_MAKE_SEND);
</span><span class="lines">@@ -253,18 +245,6 @@
</span><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-void PluginProcess::audioHardwareDidBecomeActive()
-{
-    for (auto&amp; connection : m_webProcessConnections)
-        connection-&gt;audioHardwareDidBecomeActive();
-}
-    
-void PluginProcess::audioHardwareDidBecomeInactive()
-{
-    for (auto&amp; connection : m_webProcessConnections)
-        connection-&gt;audioHardwareDidBecomeInactive();
-}
-
</del><span class="cx"> } // namespace WebKit
</span><span class="cx"> 
</span><span class="cx"> #endif // ENABLE(NETSCAPE_PLUGIN_API)
</span></span></pre></div>
<a id="trunkSourceWebKit2PluginProcessPluginProcessh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/PluginProcess/PluginProcess.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/PluginProcess/PluginProcess.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/PluginProcess/PluginProcess.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -30,7 +30,6 @@
</span><span class="cx"> 
</span><span class="cx"> #include &quot;ChildProcess.h&quot;
</span><span class="cx"> #include &lt;WebCore/CountedUserActivity.h&gt;
</span><del>-#include &lt;WebCore/AudioHardwareListener.h&gt;
</del><span class="cx"> #include &lt;wtf/Forward.h&gt;
</span><span class="cx"> #include &lt;wtf/NeverDestroyed.h&gt;
</span><span class="cx"> #include &lt;wtf/text/WTFString.h&gt;
</span><span class="lines">@@ -45,7 +44,7 @@
</span><span class="cx"> class WebProcessConnection;
</span><span class="cx"> struct PluginProcessCreationParameters;
</span><span class="cx">         
</span><del>-class PluginProcess : public ChildProcess, private WebCore::AudioHardwareListener::Client
</del><ins>+class PluginProcess : public ChildProcess
</ins><span class="cx"> {
</span><span class="cx">     WTF_MAKE_NONCOPYABLE(PluginProcess);
</span><span class="cx">     friend class NeverDestroyed&lt;PluginProcess&gt;;
</span><span class="lines">@@ -101,11 +100,6 @@
</span><span class="cx">     void deleteWebsiteData(std::chrono::system_clock::time_point modifiedSince, uint64_t callbackID);
</span><span class="cx">     void deleteWebsiteDataForHostNames(const Vector&lt;String&gt;&amp; hostNames, uint64_t callbackID);
</span><span class="cx"> 
</span><del>-    // AudioHardwareListenerClient
-    void audioHardwareDidBecomeActive() override;
-    void audioHardwareDidBecomeInactive() override;
-    void audioOutputDeviceChanged() override { }
-
</del><span class="cx">     void platformInitializePluginProcess(PluginProcessCreationParameters&amp;&amp;);
</span><span class="cx">     
</span><span class="cx">     void setMinimumLifetime(double);
</span><span class="lines">@@ -135,8 +129,6 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     CountedUserActivity m_connectionActivity;
</span><del>-
-    RefPtr&lt;WebCore::AudioHardwareListener&gt; m_audioHardwareListener;
</del><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> } // namespace WebKit
</span></span></pre></div>
<a id="trunkSourceWebKit2PluginProcessWebProcessConnectioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/PluginProcess/WebProcessConnection.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/PluginProcess/WebProcessConnection.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/PluginProcess/WebProcessConnection.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -322,16 +322,6 @@
</span><span class="cx">     m_connection-&gt;sendSync(Messages::PluginProxy::DidCreatePlugin(wantsWheelEvents, remoteLayerClientID), Messages::PluginProxy::DidCreatePlugin::Reply(), creationParameters.pluginInstanceID);
</span><span class="cx"> }
</span><span class="cx">     
</span><del>-void WebProcessConnection::audioHardwareDidBecomeActive()
-{
-    m_connection-&gt;send(Messages::PluginProcessConnection::AudioHardwareDidBecomeActive(), 0);
-}
-
-void WebProcessConnection::audioHardwareDidBecomeInactive()
-{
-    m_connection-&gt;send(Messages::PluginProcessConnection::AudioHardwareDidBecomeInactive(), 0);
-}
-    
</del><span class="cx"> } // namespace WebKit
</span><span class="cx"> 
</span><span class="cx"> #endif // ENABLE(NETSCAPE_PLUGIN_API)
</span></span></pre></div>
<a id="trunkSourceWebKit2PluginProcessWebProcessConnectionh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/PluginProcess/WebProcessConnection.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/PluginProcess/WebProcessConnection.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/PluginProcess/WebProcessConnection.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -54,9 +54,6 @@
</span><span class="cx"> 
</span><span class="cx">     static void setGlobalException(const String&amp;);
</span><span class="cx">     
</span><del>-    void audioHardwareDidBecomeActive();
-    void audioHardwareDidBecomeInactive();
-
</del><span class="cx"> private:
</span><span class="cx">     WebProcessConnection(IPC::Connection::Identifier);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsNetscapeNPRuntimeObjectMapcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -42,7 +42,6 @@
</span><span class="cx"> #include &lt;WebCore/DOMWrapperWorld.h&gt;
</span><span class="cx"> #include &lt;WebCore/Frame.h&gt;
</span><span class="cx"> #include &lt;WebCore/Page.h&gt;
</span><del>-#include &lt;WebCore/PageThrottler.h&gt;
</del><span class="cx"> #include &lt;WebCore/ScriptController.h&gt;
</span><span class="cx"> #include &lt;wtf/NeverDestroyed.h&gt;
</span><span class="cx"> 
</span><span class="lines">@@ -189,15 +188,6 @@
</span><span class="cx">     if (!globalObject)
</span><span class="cx">         return false;
</span><span class="cx"> 
</span><del>-#if PLATFORM(COCOA)
-    if (m_pluginView &amp;&amp; !m_pluginView-&gt;isBeingDestroyed()) {
-        if (Page* page = m_pluginView-&gt;frame()-&gt;page()) {
-            if (m_pluginView-&gt;audioHardwareActivity() != WebCore::AudioHardwareActivityType::IsInactive)
-                page-&gt;pageThrottler().pluginDidEvaluateWhileAudioIsPlaying();
-        }
-    }
-#endif
-
</del><span class="cx">     ExecState* exec = globalObject-&gt;globalExec();
</span><span class="cx">     
</span><span class="cx">     JSLockHolder lock(exec);
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/Plugin.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -26,7 +26,6 @@
</span><span class="cx"> #ifndef Plugin_h
</span><span class="cx"> #define Plugin_h
</span><span class="cx"> 
</span><del>-#include &lt;WebCore/AudioHardwareListener.h&gt;
</del><span class="cx"> #include &lt;WebCore/FindOptions.h&gt;
</span><span class="cx"> #include &lt;WebCore/GraphicsLayer.h&gt;
</span><span class="cx"> #include &lt;WebCore/URL.h&gt;
</span><span class="lines">@@ -293,8 +292,6 @@
</span><span class="cx">     virtual String getSelectionForWordAtPoint(const WebCore::FloatPoint&amp;) const = 0;
</span><span class="cx">     virtual bool existingSelectionContainsPoint(const WebCore::FloatPoint&amp;) const = 0;
</span><span class="cx"> 
</span><del>-    virtual WebCore::AudioHardwareActivityType audioHardwareActivity() const { return WebCore::AudioHardwareActivityType::Unknown; }
-
</del><span class="cx">     virtual void mutedStateChanged(bool) { }
</span><span class="cx"> 
</span><span class="cx">     virtual bool canCreateTransientPaintingSnapshot() const { return true; }
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginProcessConnectioncpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -46,7 +46,6 @@
</span><span class="cx">     : m_pluginProcessConnectionManager(pluginProcessConnectionManager)
</span><span class="cx">     , m_pluginProcessToken(pluginProcessToken)
</span><span class="cx">     , m_supportsAsynchronousPluginInitialization(supportsAsynchronousPluginInitialization)
</span><del>-    , m_audioHardwareActivity(WebCore::AudioHardwareActivityType::Unknown)
</del><span class="cx"> {
</span><span class="cx">     m_connection = IPC::Connection::createClientConnection(connectionIdentifier, *this);
</span><span class="cx"> 
</span><span class="lines">@@ -91,11 +90,6 @@
</span><span class="cx"> 
</span><span class="cx"> void PluginProcessConnection::didReceiveMessage(IPC::Connection&amp; connection, IPC::Decoder&amp; decoder)
</span><span class="cx"> {
</span><del>-    if (!decoder.destinationID()) {
-        didReceivePluginProcessConnectionMessage(connection, decoder);
-        return;
-    }
-    
</del><span class="cx">     ASSERT(decoder.destinationID());
</span><span class="cx"> 
</span><span class="cx">     PluginProxy* pluginProxy = m_plugins.get(decoder.destinationID());
</span><span class="lines">@@ -145,16 +139,6 @@
</span><span class="cx">     NPRuntimeObjectMap::setGlobalException(exceptionString);
</span><span class="cx"> }
</span><span class="cx">     
</span><del>-void PluginProcessConnection::audioHardwareDidBecomeActive()
-{
-    m_audioHardwareActivity = WebCore::AudioHardwareActivityType::IsActive;
-}
-
-void PluginProcessConnection::audioHardwareDidBecomeInactive()
-{
-    m_audioHardwareActivity = WebCore::AudioHardwareActivityType::IsInactive;
-}
-
</del><span class="cx"> } // namespace WebKit
</span><span class="cx"> 
</span><span class="cx"> #endif // ENABLE(NETSCAPE_PLUGIN_API)
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginProcessConnectionh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -58,7 +58,6 @@
</span><span class="cx">     NPRemoteObjectMap* npRemoteObjectMap() const { return m_npRemoteObjectMap.get(); }
</span><span class="cx"> 
</span><span class="cx">     bool supportsAsynchronousPluginInitialization() const { return m_supportsAsynchronousPluginInitialization; }
</span><del>-    WebCore::AudioHardwareActivityType audioHardwareActivity() const { return m_audioHardwareActivity; }
</del><span class="cx">     
</span><span class="cx"> private:
</span><span class="cx">     PluginProcessConnection(PluginProcessConnectionManager*, uint64_t pluginProcessToken, IPC::Connection::Identifier connectionIdentifier, bool supportsAsynchronousInitialization);
</span><span class="lines">@@ -70,11 +69,8 @@
</span><span class="cx">     void didReceiveInvalidMessage(IPC::Connection&amp;, IPC::StringReference messageReceiverName, IPC::StringReference messageName) override;
</span><span class="cx"> 
</span><span class="cx">     // Message handlers.
</span><del>-    void didReceivePluginProcessConnectionMessage(IPC::Connection&amp;, IPC::Decoder&amp;);
</del><span class="cx">     void didReceiveSyncPluginProcessConnectionMessage(IPC::Connection&amp;, IPC::Decoder&amp;, std::unique_ptr&lt;IPC::Encoder&gt;&amp;);
</span><span class="cx">     void setException(const String&amp;);
</span><del>-    void audioHardwareDidBecomeActive();
-    void audioHardwareDidBecomeInactive();
</del><span class="cx"> 
</span><span class="cx">     PluginProcessConnectionManager* m_pluginProcessConnectionManager;
</span><span class="cx">     uint64_t m_pluginProcessToken;
</span><span class="lines">@@ -88,7 +84,6 @@
</span><span class="cx">     RefPtr&lt;NPRemoteObjectMap&gt; m_npRemoteObjectMap;
</span><span class="cx">     
</span><span class="cx">     bool m_supportsAsynchronousPluginInitialization;
</span><del>-    WebCore::AudioHardwareActivityType m_audioHardwareActivity;
</del><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> } // namespace WebKit
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginProcessConnectionmessagesin"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.messages.in (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.messages.in        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProcessConnection.messages.in        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -25,10 +25,6 @@
</span><span class="cx"> messages -&gt; PluginProcessConnection LegacyReceiver {
</span><span class="cx">     # Set a global JavaScript exception.
</span><span class="cx">     SetException(String exceptionString) -&gt; ()
</span><del>-    
-    # Plugin process audio hardware state changed
-    AudioHardwareDidBecomeActive()
-    AudioHardwareDidBecomeInactive()
</del><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #endif
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -740,13 +740,6 @@
</span><span class="cx">     return nullptr;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-#if PLATFORM(COCOA)
-WebCore::AudioHardwareActivityType PluginProxy::audioHardwareActivity() const
-{
-    return m_connection-&gt;audioHardwareActivity();
-}
-#endif
-
</del><span class="cx"> } // namespace WebKit
</span><span class="cx"> 
</span><span class="cx"> #endif // ENABLE(NETSCAPE_PLUGIN_API)
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginProxy.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -147,10 +147,6 @@
</span><span class="cx">     String getSelectionForWordAtPoint(const WebCore::FloatPoint&amp;) const override { return String(); }
</span><span class="cx">     bool existingSelectionContainsPoint(const WebCore::FloatPoint&amp;) const override { return false; }
</span><span class="cx"> 
</span><del>-#if PLATFORM(COCOA)
-    WebCore::AudioHardwareActivityType audioHardwareActivity() const override;
-#endif
-
</del><span class="cx">     float contentsScaleFactor();
</span><span class="cx">     bool needsBackingStore() const;
</span><span class="cx">     bool updateBackingStore();
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginView.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -59,7 +59,6 @@
</span><span class="cx"> #include &lt;WebCore/NetscapePlugInStreamLoader.h&gt;
</span><span class="cx"> #include &lt;WebCore/NetworkingContext.h&gt;
</span><span class="cx"> #include &lt;WebCore/Page.h&gt;
</span><del>-#include &lt;WebCore/PageThrottler.h&gt;
</del><span class="cx"> #include &lt;WebCore/PlatformMouseEvent.h&gt;
</span><span class="cx"> #include &lt;WebCore/ProtectionSpace.h&gt;
</span><span class="cx"> #include &lt;WebCore/ProxyServer.h&gt;
</span><span class="lines">@@ -546,19 +545,7 @@
</span><span class="cx">         m_plugin-&gt;windowFocusChanged(m_webPage-&gt;windowIsFocused());
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-WebCore::AudioHardwareActivityType PluginView::audioHardwareActivity() const
-{
-    if (!m_isInitialized || !m_plugin)
-        return AudioHardwareActivityType::IsInactive;
-    
</del><span class="cx"> #if PLATFORM(COCOA)
</span><del>-    return m_plugin-&gt;audioHardwareActivity();
-#else
-    return AudioHardwareActivityType::Unknown;
-#endif
-}
-    
-#if PLATFORM(COCOA)
</del><span class="cx"> void PluginView::setDeviceScaleFactor(float scaleFactor)
</span><span class="cx"> {
</span><span class="cx">     if (!m_isInitialized || !m_plugin)
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessPluginsPluginViewh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/Plugins/PluginView.h        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -116,7 +116,6 @@
</span><span class="cx">     bool performDictionaryLookupAtLocation(const WebCore::FloatPoint&amp;);
</span><span class="cx">     String getSelectionForWordAtPoint(const WebCore::FloatPoint&amp;) const;
</span><span class="cx">     bool existingSelectionContainsPoint(const WebCore::FloatPoint&amp;) const;
</span><del>-    WebCore::AudioHardwareActivityType audioHardwareActivity() const override;
</del><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     PluginView(PassRefPtr&lt;WebCore::HTMLPlugInElement&gt;, PassRefPtr&lt;Plugin&gt;, const Plugin::Parameters&amp; parameters);
</span></span></pre></div>
<a id="trunkSourceWebKit2WebProcessWebPageWebPagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp (208328 => 208329)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2016-11-03 16:19:48 UTC (rev 208328)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp        2016-11-03 16:34:33 UTC (rev 208329)
</span><span class="lines">@@ -149,7 +149,6 @@
</span><span class="cx"> #include &lt;WebCore/MouseEvent.h&gt;
</span><span class="cx"> #include &lt;WebCore/Page.h&gt;
</span><span class="cx"> #include &lt;WebCore/PageConfiguration.h&gt;
</span><del>-#include &lt;WebCore/PageThrottler.h&gt;
</del><span class="cx"> #include &lt;WebCore/PlatformKeyboardEvent.h&gt;
</span><span class="cx"> #include &lt;WebCore/PluginDocument.h&gt;
</span><span class="cx"> #include &lt;WebCore/PointerLockController.h&gt;
</span></span></pre>
</div>
</div>

</body>
</html>