Title: [199286] trunk/Source
Revision
199286
Author
wei...@apple.com
Date
2016-04-10 11:48:37 -0700 (Sun, 10 Apr 2016)

Log Message

Remove support for custom target picker actions
<rdar://problem/24987783>
https://bugs.webkit.org/show_bug.cgi?id=156434

Reviewed by Eric Carlson.

This mostly entailed rolling out r197429 and r197569.

Source/WebCore:

* Modules/mediasession/WebMediaSessionManager.cpp:
(WebCore::WebMediaSessionManager::removeAllPlaybackTargetPickerClients):
(WebCore::WebMediaSessionManager::showPlaybackTargetPicker):
(WebCore::WebMediaSessionManager::clientStateDidChange):
(WebCore::WebMediaSessionManager::externalOutputDeviceAvailableDidChange):
(WebCore::WebMediaSessionManager::configureNewClients):
(WebCore::WebMediaSessionManager::customPlaybackActionSelected): Deleted.
* Modules/mediasession/WebMediaSessionManager.h:
* Modules/mediasession/WebMediaSessionManagerClient.h:
* dom/Document.cpp:
(WebCore::Document::removePlaybackTargetPickerClient):
(WebCore::Document::showPlaybackTargetPicker):
(WebCore::Document::playbackTargetPickerClientStateDidChange):
(WebCore::Document::setShouldPlayToPlaybackTarget):
(WebCore::Document::customPlaybackActionSelected): Deleted.
* dom/Document.h:
* html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent):
(WebCore::HTMLMediaElement::setShouldPlayToPlaybackTarget):
(WebCore::HTMLMediaElement::webkitCurrentPlaybackTargetIsWireless):
(WebCore::HTMLMediaElement::customPlaybackActionSelected): Deleted.
(WebCore::HTMLMediaElement::playbackTargetPickerCustomActionName): Deleted.
* html/HTMLMediaElement.h:
* html/MediaElementSession.cpp:
(WebCore::MediaElementSession::showPlaybackTargetPicker):
(WebCore::MediaElementSession::hasWirelessPlaybackTargets):
(WebCore::MediaElementSession::setShouldPlayToPlaybackTarget):
(WebCore::MediaElementSession::mediaStateDidChange):
(WebCore::MediaElementSession::customPlaybackActionSelected): Deleted.
* html/MediaElementSession.h:
* page/ChromeClient.h:
* page/Page.cpp:
(WebCore::Page::removePlaybackTargetPickerClient):
(WebCore::Page::showPlaybackTargetPicker):
(WebCore::Page::setShouldPlayToPlaybackTarget):
(WebCore::Page::ensureTestTrigger):
(WebCore::Page::customPlaybackActionSelected): Deleted.
* page/Page.h:
(WebCore::Page::testTrigger):
* platform/audio/PlatformMediaSession.h:
(WebCore::PlatformMediaSessionClient::canPlayToWirelessPlaybackTarget):
(WebCore::PlatformMediaSessionClient::isPlayingToWirelessPlaybackTarget):
(WebCore::PlatformMediaSessionClient::setShouldPlayToPlaybackTarget):
(WebCore::PlatformMediaSessionClient::customPlaybackActionSelected): Deleted.
* platform/graphics/MediaPlaybackTargetClient.h:
* platform/graphics/MediaPlaybackTargetPicker.cpp:
(WebCore::MediaPlaybackTargetPicker::pendingActionTimerFired):
(WebCore::MediaPlaybackTargetPicker::addPendingAction):
(WebCore::MediaPlaybackTargetPicker::showPlaybackTargetPicker):
* platform/graphics/MediaPlaybackTargetPicker.h:
(WebCore::MediaPlaybackTargetPicker::availableDevicesDidChange):
(WebCore::MediaPlaybackTargetPicker::currentDeviceDidChange):
(WebCore::MediaPlaybackTargetPicker::Client::customPlaybackActionSelected): Deleted.
(WebCore::MediaPlaybackTargetPicker::customPlaybackActionSelected): Deleted.
* platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h:
* platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm:
(WebCore::MediaPlaybackTargetPickerMac::devicePicker):
(WebCore::MediaPlaybackTargetPickerMac::showPlaybackTargetPicker):
* platform/mac/WebVideoFullscreenInterfaceMac.h:
* platform/mac/WebVideoFullscreenInterfaceMac.mm:
(WebCore::WebVideoFullscreenInterfaceMac::preparedToReturnToInline):
(WebCore::WebVideoFullscreenInterfaceMac::setVideoDimensions):
(WebCore::WebVideoFullscreenInterfaceMac::setExternalPlayback): Deleted.
* platform/mock/MediaPlaybackTargetPickerMock.cpp:
(WebCore::MediaPlaybackTargetPickerMock::timerFired):
(WebCore::MediaPlaybackTargetPickerMock::showPlaybackTargetPicker):
* platform/mock/MediaPlaybackTargetPickerMock.h:
* platform/spi/cocoa/AVKitSPI.h:

Source/WebKit/mac:

* WebCoreSupport/WebChromeClient.h:
* WebCoreSupport/WebChromeClient.mm:
(WebChromeClient::removePlaybackTargetPickerClient):
(WebChromeClient::showPlaybackTargetPicker):
* WebView/WebMediaPlaybackTargetPicker.h:
* WebView/WebMediaPlaybackTargetPicker.mm:
(WebMediaPlaybackTargetPicker::removePlaybackTargetPickerClient):
(WebMediaPlaybackTargetPicker::showPlaybackTargetPicker):
(WebMediaPlaybackTargetPicker::playbackTargetPickerClientStateDidChange):
(WebMediaPlaybackTargetPicker::setShouldPlayToPlaybackTarget):
(WebMediaPlaybackTargetPicker::invalidate):
(WebMediaPlaybackTargetPicker::customPlaybackActionSelected): Deleted.
* WebView/WebView.mm:
(-[WebView _showPlaybackTargetPicker:location:hasVideo:]):
(-[WebView _playbackTargetPickerClientStateDidChange:state:]):

Source/WebKit2:

* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::removePlaybackTargetPickerClient):
(WebKit::WebPageProxy::showPlaybackTargetPicker):
(WebKit::WebPageProxy::playbackTargetPickerClientStateDidChange):
(WebKit::WebPageProxy::setShouldPlayToPlaybackTarget):
(WebKit::WebPageProxy::didChangeBackgroundColor):
(WebKit::WebPageProxy::customPlaybackActionSelected): Deleted.
* UIProcess/WebPageProxy.h:
* UIProcess/WebPageProxy.messages.in:
* WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::removePlaybackTargetPickerClient):
(WebKit::WebChromeClient::showPlaybackTargetPicker):
(WebKit::WebChromeClient::playbackTargetPickerClientStateDidChange):
* WebProcess/WebCoreSupport/WebChromeClient.h:
* WebProcess/WebPage/WebPage.h:
* WebProcess/WebPage/WebPage.messages.in:
* WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::setShouldPlayToPlaybackTarget):
(WebKit::WebPage::customPlaybackActionSelected): Deleted.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (199285 => 199286)


--- trunk/Source/WebCore/ChangeLog	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/ChangeLog	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1,3 +1,82 @@
+2016-04-08  Sam Weinig  <s...@webkit.org>
+
+        Remove support for custom target picker actions
+        <rdar://problem/24987783>
+        https://bugs.webkit.org/show_bug.cgi?id=156434
+
+        Reviewed by Eric Carlson.
+
+        This mostly entailed rolling out r197429 and r197569.
+
+        * Modules/mediasession/WebMediaSessionManager.cpp:
+        (WebCore::WebMediaSessionManager::removeAllPlaybackTargetPickerClients):
+        (WebCore::WebMediaSessionManager::showPlaybackTargetPicker):
+        (WebCore::WebMediaSessionManager::clientStateDidChange):
+        (WebCore::WebMediaSessionManager::externalOutputDeviceAvailableDidChange):
+        (WebCore::WebMediaSessionManager::configureNewClients):
+        (WebCore::WebMediaSessionManager::customPlaybackActionSelected): Deleted.
+        * Modules/mediasession/WebMediaSessionManager.h:
+        * Modules/mediasession/WebMediaSessionManagerClient.h:
+        * dom/Document.cpp:
+        (WebCore::Document::removePlaybackTargetPickerClient):
+        (WebCore::Document::showPlaybackTargetPicker):
+        (WebCore::Document::playbackTargetPickerClientStateDidChange):
+        (WebCore::Document::setShouldPlayToPlaybackTarget):
+        (WebCore::Document::customPlaybackActionSelected): Deleted.
+        * dom/Document.h:
+        * html/HTMLMediaElement.cpp:
+        (WebCore::HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent):
+        (WebCore::HTMLMediaElement::setShouldPlayToPlaybackTarget):
+        (WebCore::HTMLMediaElement::webkitCurrentPlaybackTargetIsWireless):
+        (WebCore::HTMLMediaElement::customPlaybackActionSelected): Deleted.
+        (WebCore::HTMLMediaElement::playbackTargetPickerCustomActionName): Deleted.
+        * html/HTMLMediaElement.h:
+        * html/MediaElementSession.cpp:
+        (WebCore::MediaElementSession::showPlaybackTargetPicker):
+        (WebCore::MediaElementSession::hasWirelessPlaybackTargets):
+        (WebCore::MediaElementSession::setShouldPlayToPlaybackTarget):
+        (WebCore::MediaElementSession::mediaStateDidChange):
+        (WebCore::MediaElementSession::customPlaybackActionSelected): Deleted.
+        * html/MediaElementSession.h:
+        * page/ChromeClient.h:
+        * page/Page.cpp:
+        (WebCore::Page::removePlaybackTargetPickerClient):
+        (WebCore::Page::showPlaybackTargetPicker):
+        (WebCore::Page::setShouldPlayToPlaybackTarget):
+        (WebCore::Page::ensureTestTrigger):
+        (WebCore::Page::customPlaybackActionSelected): Deleted.
+        * page/Page.h:
+        (WebCore::Page::testTrigger):
+        * platform/audio/PlatformMediaSession.h:
+        (WebCore::PlatformMediaSessionClient::canPlayToWirelessPlaybackTarget):
+        (WebCore::PlatformMediaSessionClient::isPlayingToWirelessPlaybackTarget):
+        (WebCore::PlatformMediaSessionClient::setShouldPlayToPlaybackTarget):
+        (WebCore::PlatformMediaSessionClient::customPlaybackActionSelected): Deleted.
+        * platform/graphics/MediaPlaybackTargetClient.h:
+        * platform/graphics/MediaPlaybackTargetPicker.cpp:
+        (WebCore::MediaPlaybackTargetPicker::pendingActionTimerFired):
+        (WebCore::MediaPlaybackTargetPicker::addPendingAction):
+        (WebCore::MediaPlaybackTargetPicker::showPlaybackTargetPicker):
+        * platform/graphics/MediaPlaybackTargetPicker.h:
+        (WebCore::MediaPlaybackTargetPicker::availableDevicesDidChange):
+        (WebCore::MediaPlaybackTargetPicker::currentDeviceDidChange):
+        (WebCore::MediaPlaybackTargetPicker::Client::customPlaybackActionSelected): Deleted.
+        (WebCore::MediaPlaybackTargetPicker::customPlaybackActionSelected): Deleted.
+        * platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h:
+        * platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm:
+        (WebCore::MediaPlaybackTargetPickerMac::devicePicker):
+        (WebCore::MediaPlaybackTargetPickerMac::showPlaybackTargetPicker):
+        * platform/mac/WebVideoFullscreenInterfaceMac.h:
+        * platform/mac/WebVideoFullscreenInterfaceMac.mm:
+        (WebCore::WebVideoFullscreenInterfaceMac::preparedToReturnToInline):
+        (WebCore::WebVideoFullscreenInterfaceMac::setVideoDimensions):
+        (WebCore::WebVideoFullscreenInterfaceMac::setExternalPlayback): Deleted.
+        * platform/mock/MediaPlaybackTargetPickerMock.cpp:
+        (WebCore::MediaPlaybackTargetPickerMock::timerFired):
+        (WebCore::MediaPlaybackTargetPickerMock::showPlaybackTargetPicker):
+        * platform/mock/MediaPlaybackTargetPickerMock.h:
+        * platform/spi/cocoa/AVKitSPI.h:
+
 2016-04-09  Konstantin Tokarev  <annu...@yandex.ru>
 
         Fixed compilation of JPEGImageDecoder with libjpeg v9.

Modified: trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManager.cpp (199285 => 199286)


--- trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManager.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManager.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -180,7 +180,7 @@
     scheduleDelayedTask(TargetMonitoringConfigurationTask | TargetClientsConfigurationTask);
 }
 
-void WebMediaSessionManager::showPlaybackTargetPicker(WebMediaSessionManagerClient& client, uint64_t contextId, const IntRect& rect, bool, const String& customMenuItemTitle)
+void WebMediaSessionManager::showPlaybackTargetPicker(WebMediaSessionManagerClient& client, uint64_t contextId, const IntRect& rect, bool)
 {
     size_t index = find(&client, contextId);
     ASSERT(index != notFound);
@@ -195,8 +195,7 @@
 
     bool hasActiveRoute = flagsAreSet(m_clientState[index]->flags, MediaProducer::IsPlayingToExternalDevice);
     LOG(Media, "WebMediaSessionManager::showPlaybackTargetPicker(%p + %llu) - hasActiveRoute = %i", &client, contextId, (int)hasActiveRoute);
-
-    targetPicker().showPlaybackTargetPicker(FloatRect(rect), hasActiveRoute, customMenuItemTitle);
+    targetPicker().showPlaybackTargetPicker(FloatRect(rect), hasActiveRoute);
 }
 
 void WebMediaSessionManager::clientStateDidChange(WebMediaSessionManagerClient& client, uint64_t contextId, MediaProducer::MediaStateFlags newFlags)
@@ -270,17 +269,6 @@
         state->client.externalOutputDeviceAvailableDidChange(state->contextId, available);
 }
 
-void WebMediaSessionManager::customPlaybackActionSelected()
-{
-    for (auto& state : m_clientState) {
-        if (!state->requestedPicker)
-            continue;
-
-        state->client.customPlaybackActionSelected(state->contextId);
-        state->requestedPicker = false;
-    }
-}
-
 void WebMediaSessionManager::configureNewClients()
 {
     for (auto& state : m_clientState) {

Modified: trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManager.h (199285 => 199286)


--- trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManager.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManager.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -55,9 +55,7 @@
     WEBCORE_EXPORT uint64_t addPlaybackTargetPickerClient(WebMediaSessionManagerClient&, uint64_t);
     WEBCORE_EXPORT void removePlaybackTargetPickerClient(WebMediaSessionManagerClient&, uint64_t);
     WEBCORE_EXPORT void removeAllPlaybackTargetPickerClients(WebMediaSessionManagerClient&);
-
-    WEBCORE_EXPORT void showPlaybackTargetPicker(WebMediaSessionManagerClient&, uint64_t, const IntRect&, bool, const String&);
-
+    WEBCORE_EXPORT void showPlaybackTargetPicker(WebMediaSessionManagerClient&, uint64_t, const IntRect&, bool);
     WEBCORE_EXPORT void clientStateDidChange(WebMediaSessionManagerClient&, uint64_t, WebCore::MediaProducer::MediaStateFlags);
 
 protected:
@@ -75,7 +73,6 @@
     // MediaPlaybackTargetPicker::Client
     void setPlaybackTarget(Ref<WebCore::MediaPlaybackTarget>&&) override;
     void externalOutputDeviceAvailableDidChange(bool) override;
-    void customPlaybackActionSelected() override;
 
     size_t find(WebMediaSessionManagerClient*, uint64_t);
 

Modified: trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManagerClient.h (199285 => 199286)


--- trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManagerClient.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/Modules/mediasession/WebMediaSessionManagerClient.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -43,7 +43,6 @@
     virtual void setPlaybackTarget(uint64_t, Ref<MediaPlaybackTarget>&&) = 0;
     virtual void externalOutputDeviceAvailableDidChange(uint64_t, bool) = 0;
     virtual void setShouldPlayToPlaybackTarget(uint64_t, bool) = 0;
-    virtual void customPlaybackActionSelected(uint64_t) = 0;
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/dom/Document.cpp (199285 => 199286)


--- trunk/Source/WebCore/dom/Document.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/dom/Document.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -6897,7 +6897,7 @@
     page->removePlaybackTargetPickerClient(clientId);
 }
 
-void Document::showPlaybackTargetPicker(MediaPlaybackTargetClient& client, bool isVideo, const String& customMenuItemTitle)
+void Document::showPlaybackTargetPicker(MediaPlaybackTargetClient& client, bool isVideo)
 {
     Page* page = this->page();
     if (!page)
@@ -6907,7 +6907,7 @@
     if (it == m_clientToIDMap.end())
         return;
 
-    page->showPlaybackTargetPicker(it->value, view()->lastKnownMousePosition(), isVideo, customMenuItemTitle);
+    page->showPlaybackTargetPicker(it->value, view()->lastKnownMousePosition(), isVideo);
 }
 
 void Document::playbackTargetPickerClientStateDidChange(MediaPlaybackTargetClient& client, MediaProducer::MediaStateFlags state)
@@ -6949,12 +6949,6 @@
 
     it->value->setShouldPlayToPlaybackTarget(shouldPlay);
 }
-
-void Document::customPlaybackActionSelected(uint64_t clientId)
-{
-    if (auto* client = m_idToClientMap.get(clientId))
-        client->customPlaybackActionSelected();
-}
 #endif // ENABLE(WIRELESS_PLAYBACK_TARGET)
 
 #if ENABLE(MEDIA_SESSION)

Modified: trunk/Source/WebCore/dom/Document.h (199285 => 199286)


--- trunk/Source/WebCore/dom/Document.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/dom/Document.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1286,15 +1286,12 @@
 #if ENABLE(WIRELESS_PLAYBACK_TARGET)
     void addPlaybackTargetPickerClient(MediaPlaybackTargetClient&);
     void removePlaybackTargetPickerClient(MediaPlaybackTargetClient&);
-
-    void showPlaybackTargetPicker(MediaPlaybackTargetClient&, bool, const String&);
-
+    void showPlaybackTargetPicker(MediaPlaybackTargetClient&, bool);
     void playbackTargetPickerClientStateDidChange(MediaPlaybackTargetClient&, MediaProducer::MediaStateFlags);
 
     void setPlaybackTarget(uint64_t, Ref<MediaPlaybackTarget>&&);
     void playbackTargetAvailabilityDidChange(uint64_t, bool);
     void setShouldPlayToPlaybackTarget(uint64_t, bool);
-    void customPlaybackActionSelected(uint64_t);
 #endif
 
     ShouldOpenExternalURLsPolicy shouldOpenExternalURLsPolicyToPropagate() const;

Modified: trunk/Source/WebCore/html/HTMLMediaElement.cpp (199285 => 199286)


--- trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/html/HTMLMediaElement.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -151,10 +151,6 @@
 #include <bindings/ScriptObject.h>
 #endif
 
-#if USE(APPLE_INTERNAL_SDK)
-#include <WebKitAdditions/HTMLMediaElementAdditions.cpp>
-#endif
-
 namespace WebCore {
 
 static const double SeekRepeatDelay = 0.1;
@@ -5233,7 +5229,7 @@
 
 void HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent()
 {
-    bool hasTargets = m_mediaSession->hasWirelessPlaybackTargets(*this) || !playbackTargetPickerCustomActionName().isEmpty();
+    bool hasTargets = m_mediaSession->hasWirelessPlaybackTargets(*this);
     LOG(Media, "HTMLMediaElement::enqueuePlaybackTargetAvailabilityChangedEvent(%p) - hasTargets = %s", this, boolString(hasTargets));
     RefPtr<Event> event = WebKitPlaybackTargetAvailabilityEvent::create(eventNames().webkitplaybacktargetavailabilitychangedEvent, hasTargets);
     event->setTarget(this);
@@ -5273,19 +5269,6 @@
     if (m_player)
         m_player->setShouldPlayToPlaybackTarget(shouldPlay);
 }
-
-#if !USE(APPLE_INTERNAL_SDK)
-void HTMLMediaElement::customPlaybackActionSelected()
-{
-    LOG(Media, "HTMLMediaElement::customPlaybackActionSelected(%p)", this);
-}
-
-String HTMLMediaElement::playbackTargetPickerCustomActionName() const
-{
-    return { };
-}
-#endif
-
 #else // ENABLE(WIRELESS_PLAYBACK_TARGET)
 
 bool HTMLMediaElement::webkitCurrentPlaybackTargetIsWireless() const

Modified: trunk/Source/WebCore/html/HTMLMediaElement.h (199285 => 199286)


--- trunk/Source/WebCore/html/HTMLMediaElement.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/html/HTMLMediaElement.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -345,8 +345,6 @@
     bool isPlayingToWirelessPlaybackTarget() const override;
     void setWirelessPlaybackTarget(Ref<MediaPlaybackTarget>&&) override;
     void setShouldPlayToPlaybackTarget(bool) override;
-    void customPlaybackActionSelected() override;
-    String playbackTargetPickerCustomActionName() const;
 #endif
     bool webkitCurrentPlaybackTargetIsWireless() const;
 

Modified: trunk/Source/WebCore/html/MediaElementSession.cpp (199285 => 199286)


--- trunk/Source/WebCore/html/MediaElementSession.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/html/MediaElementSession.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -36,7 +36,6 @@
 #include "FrameView.h"
 #include "HTMLAudioElement.h"
 #include "HTMLMediaElement.h"
-#include "HTMLMediaElementEnums.h"
 #include "HTMLNames.h"
 #include "HTMLVideoElement.h"
 #include "HitTestResult.h"
@@ -260,8 +259,7 @@
     }
 #endif
 
-    String customMenuItemTitle = element.playbackTargetPickerCustomActionName();
-    element.document().showPlaybackTargetPicker(*this, is<HTMLVideoElement>(element), customMenuItemTitle);
+    element.document().showPlaybackTargetPicker(*this, is<HTMLVideoElement>(element));
 }
 
 bool MediaElementSession::hasWirelessPlaybackTargets(const HTMLMediaElement&) const
@@ -385,11 +383,6 @@
     client().setShouldPlayToPlaybackTarget(shouldPlay);
 }
 
-void MediaElementSession::customPlaybackActionSelected()
-{
-    client().customPlaybackActionSelected();
-}
-
 void MediaElementSession::mediaStateDidChange(const HTMLMediaElement& element, MediaProducer::MediaStateFlags state)
 {
     element.document().playbackTargetPickerClientStateDidChange(*this, state);

Modified: trunk/Source/WebCore/html/MediaElementSession.h (199285 => 199286)


--- trunk/Source/WebCore/html/MediaElementSession.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/html/MediaElementSession.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -116,7 +116,6 @@
     void setPlaybackTarget(Ref<MediaPlaybackTarget>&&) override;
     void externalOutputDeviceAvailableDidChange(bool) override;
     void setShouldPlayToPlaybackTarget(bool) override;
-    void customPlaybackActionSelected() override;
 #endif
 #if PLATFORM(IOS)
     bool requiresPlaybackTargetRouteMonitoring() const override;

Modified: trunk/Source/WebCore/page/ChromeClient.h (199285 => 199286)


--- trunk/Source/WebCore/page/ChromeClient.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/page/ChromeClient.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -455,9 +455,7 @@
 #if ENABLE(WIRELESS_PLAYBACK_TARGET)
     virtual void addPlaybackTargetPickerClient(uint64_t /*contextId*/) { }
     virtual void removePlaybackTargetPickerClient(uint64_t /*contextId*/) { }
-
-    virtual void showPlaybackTargetPicker(uint64_t /*contextId*/, const WebCore::IntPoint&, bool /* isVideo */, const String& /*customMenuItemTitle*/) { }
-
+    virtual void showPlaybackTargetPicker(uint64_t /*contextId*/, const WebCore::IntPoint&, bool /* isVideo */) { }
     virtual void playbackTargetPickerClientStateDidChange(uint64_t /*contextId*/, MediaProducer::MediaStateFlags) { }
     virtual void setMockMediaPlaybackTargetPickerEnabled(bool)  { }
     virtual void setMockMediaPlaybackTargetPickerState(const String&, WebCore::MediaPlaybackTargetContext::State) { }

Modified: trunk/Source/WebCore/page/Page.cpp (199285 => 199286)


--- trunk/Source/WebCore/page/Page.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/page/Page.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1897,16 +1897,15 @@
     chrome().client().removePlaybackTargetPickerClient(contextId);
 }
 
-void Page::showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint& location, bool isVideo, const String& customMenuItemTitle)
+void Page::showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint& location, bool isVideo)
 {
 #if PLATFORM(IOS)
     // FIXME: refactor iOS implementation.
     UNUSED_PARAM(contextId);
     UNUSED_PARAM(location);
-    UNUSED_PARAM(customMenuItemTitle);
     chrome().client().showPlaybackTargetPicker(isVideo);
 #else
-    chrome().client().showPlaybackTargetPicker(contextId, location, isVideo, customMenuItemTitle);
+    chrome().client().showPlaybackTargetPicker(contextId, location, isVideo);
 #endif
 }
 
@@ -1951,12 +1950,6 @@
         frame->document()->setShouldPlayToPlaybackTarget(clientId, shouldPlay);
     }
 }
-
-void Page::customPlaybackActionSelected(uint64_t contextId)
-{
-    for (Frame* frame = &mainFrame(); frame; frame = frame->tree().traverseNext())
-        frame->document()->customPlaybackActionSelected(contextId);
-}
 #endif
 
 WheelEventTestTrigger& Page::ensureTestTrigger()

Modified: trunk/Source/WebCore/page/Page.h (199285 => 199286)


--- trunk/Source/WebCore/page/Page.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/page/Page.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -482,9 +482,7 @@
 #if ENABLE(WIRELESS_PLAYBACK_TARGET)
     void addPlaybackTargetPickerClient(uint64_t);
     void removePlaybackTargetPickerClient(uint64_t);
-
-    void showPlaybackTargetPicker(uint64_t, const IntPoint&, bool, const String&);
-
+    void showPlaybackTargetPicker(uint64_t, const IntPoint&, bool);
     void playbackTargetPickerClientStateDidChange(uint64_t, MediaProducer::MediaStateFlags);
     WEBCORE_EXPORT void setMockMediaPlaybackTargetPickerEnabled(bool);
     WEBCORE_EXPORT void setMockMediaPlaybackTargetPickerState(const String&, MediaPlaybackTargetContext::State);
@@ -492,7 +490,6 @@
     WEBCORE_EXPORT void setPlaybackTarget(uint64_t, Ref<MediaPlaybackTarget>&&);
     WEBCORE_EXPORT void playbackTargetAvailabilityDidChange(uint64_t, bool);
     WEBCORE_EXPORT void setShouldPlayToPlaybackTarget(uint64_t, bool);
-    WEBCORE_EXPORT void customPlaybackActionSelected(uint64_t);
 #endif
 
     RefPtr<WheelEventTestTrigger> testTrigger() const { return m_testTrigger; }

Modified: trunk/Source/WebCore/platform/audio/PlatformMediaSession.h (199285 => 199286)


--- trunk/Source/WebCore/platform/audio/PlatformMediaSession.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/audio/PlatformMediaSession.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -135,7 +135,6 @@
     void setPlaybackTarget(Ref<MediaPlaybackTarget>&&) override { }
     void externalOutputDeviceAvailableDidChange(bool) override { }
     void setShouldPlayToPlaybackTarget(bool) override { }
-    void customPlaybackActionSelected() override { }
 #endif
 
 #if PLATFORM(IOS)
@@ -198,7 +197,6 @@
     virtual bool canPlayToWirelessPlaybackTarget() const { return false; }
     virtual bool isPlayingToWirelessPlaybackTarget() const { return false; }
     virtual void setShouldPlayToPlaybackTarget(bool) { }
-    virtual void customPlaybackActionSelected() { }
 
     virtual const Document* hostingDocument() const = 0;
 

Modified: trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetClient.h (199285 => 199286)


--- trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetClient.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetClient.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -42,7 +42,6 @@
     virtual void setPlaybackTarget(Ref<MediaPlaybackTarget>&&) = 0;
     virtual void externalOutputDeviceAvailableDidChange(bool) = 0;
     virtual void setShouldPlayToPlaybackTarget(bool) = 0;
-    virtual void customPlaybackActionSelected() = 0;
 };
 
 } // namespace WebCore

Modified: trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.cpp (199285 => 199286)


--- trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -59,9 +59,6 @@
 
     if (pendingActions & OutputDeviceAvailabilityChanged)
         m_client->externalOutputDeviceAvailableDidChange(externalOutputDeviceAvailable());
-
-    if (pendingActions & CustomPlaybackActionSelected)
-        m_client->customPlaybackActionSelected();
 }
 
 void MediaPlaybackTargetPicker::addPendingAction(PendingActionFlags action)
@@ -73,7 +70,7 @@
     m_pendingActionTimer.startOneShot(pendingActionInterval);
 }
 
-void MediaPlaybackTargetPicker::showPlaybackTargetPicker(const FloatRect&, bool, const String&)
+void MediaPlaybackTargetPicker::showPlaybackTargetPicker(const FloatRect&, bool)
 {
     ASSERT_NOT_REACHED();
 }

Modified: trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.h (199285 => 199286)


--- trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/graphics/MediaPlaybackTargetPicker.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -45,21 +45,19 @@
     public:
         virtual void setPlaybackTarget(Ref<MediaPlaybackTarget>&&) = 0;
         virtual void externalOutputDeviceAvailableDidChange(bool) = 0;
-        virtual void customPlaybackActionSelected() { }
 
         void invalidate();
     };
 
     virtual ~MediaPlaybackTargetPicker();
 
-    virtual void showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute, const String&);
+    virtual void showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute);
     virtual void startingMonitoringPlaybackTargets();
     virtual void stopMonitoringPlaybackTargets();
     virtual void invalidatePlaybackTargets();
 
     void availableDevicesDidChange() { addPendingAction(OutputDeviceAvailabilityChanged); }
     void currentDeviceDidChange() { addPendingAction(CurrentDeviceDidChange); }
-    void customPlaybackActionSelected() { addPendingAction(CustomPlaybackActionSelected); }
 
 protected:
     explicit MediaPlaybackTargetPicker(Client&);
@@ -67,7 +65,6 @@
     enum ActionType {
         OutputDeviceAvailabilityChanged = 1 << 0,
         CurrentDeviceDidChange = 1 << 1,
-        CustomPlaybackActionSelected = 1 << 2,
     };
     typedef unsigned PendingActionFlags;
 

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h (199285 => 199286)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -43,8 +43,7 @@
 
     virtual ~MediaPlaybackTargetPickerMac();
 
-    void showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute, const String&) override;
-
+    void showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute) override;
     void startingMonitoringPlaybackTargets() override;
     void stopMonitoringPlaybackTargets() override;
     void invalidatePlaybackTargets() override;

Modified: trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm (199285 => 199286)


--- trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.mm	2016-04-10 18:48:37 UTC (rev 199286)
@@ -109,7 +109,7 @@
     return m_outputDeviceMenuController.get();
 }
 
-void MediaPlaybackTargetPickerMac::showPlaybackTargetPicker(const FloatRect& location, bool checkActiveRoute, const String& customMenuItemTitle)
+void MediaPlaybackTargetPickerMac::showPlaybackTargetPicker(const FloatRect& location, bool checkActiveRoute)
 {
 #if !PLATFORM(MAC) || __MAC_OS_X_VERSION_MIN_REQUIRED < 101200
     UNUSED_PARAM(customMenuItemTitle);
@@ -121,36 +121,14 @@
     LOG(Media, "MediaPlaybackTargetPickerMac::showPlaybackTargetPicker - checkActiveRoute = %i", (int)checkActiveRoute);
 
     AVOutputDeviceMenuControllerType *picker = devicePicker();
-    if (![picker respondsToSelector:@selector(showMenuForRect:appearanceName:allowReselectionOfSelectedOutputDevice:)]
-#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101200
-        && ![picker respondsToSelector:@selector(showMenuForRect:appearanceName:allowReselectionOfSelectedOutputDevice:customMenuItemTitle:customMenuItemEnabled:)]
-#endif
-        )
+    if (![picker respondsToSelector:@selector(showMenuForRect:appearanceName:allowReselectionOfSelectedOutputDevice:)])
         return;
 
     m_showingMenu = true;
-
-#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101200
-    if ([picker respondsToSelector:@selector(showMenuForRect:appearanceName:allowReselectionOfSelectedOutputDevice:customMenuItemTitle:customMenuItemEnabled:)]) {
-        NSString *customMenuItemTitleNSString = customMenuItemTitle.isEmpty() ? nil : (NSString *)customMenuItemTitle;
-        switch ([picker showMenuForRect:location appearanceName:NSAppearanceNameVibrantLight allowReselectionOfSelectedOutputDevice:!checkActiveRoute customMenuItemTitle:customMenuItemTitleNSString customMenuItemEnabled:YES]) {
-        case AVOutputDeviceMenuControllerSelectionCustomMenuItem:
-            customPlaybackActionSelected();
-            break;
-        case AVOutputDeviceMenuControllerSelectionOutputDevice:
-            if (!checkActiveRoute)
-                currentDeviceDidChange();
-            break;
-        case AVOutputDeviceMenuControllerSelectionNone:
-            break;
-        }
-    } else
-#endif
     if ([picker showMenuForRect:location appearanceName:NSAppearanceNameVibrantLight allowReselectionOfSelectedOutputDevice:!checkActiveRoute]) {
         if (!checkActiveRoute)
             currentDeviceDidChange();
     }
-
     m_showingMenu = false;
 }
 

Modified: trunk/Source/WebCore/platform/mac/WebVideoFullscreenInterfaceMac.h (199285 => 199286)


--- trunk/Source/WebCore/platform/mac/WebVideoFullscreenInterfaceMac.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/mac/WebVideoFullscreenInterfaceMac.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -69,9 +69,9 @@
     WEBCORE_EXPORT void setVideoDimensions(bool hasVideo, float width, float height) final;
     WEBCORE_EXPORT void setSeekableRanges(const TimeRanges&) override;
     WEBCORE_EXPORT void setCanPlayFastReverse(bool) override { }
-    WEBCORE_EXPORT void setAudioMediaSelectionOptions(const Vector<WTF::String>& /*options*/, uint64_t /*selectedIndex*/) override;
-    WEBCORE_EXPORT void setLegibleMediaSelectionOptions(const Vector<WTF::String>& /*options*/, uint64_t /*selectedIndex*/) override;
-    WEBCORE_EXPORT void setExternalPlayback(bool enabled, ExternalPlaybackTargetType, WTF::String localizedDeviceName) override;
+    WEBCORE_EXPORT void setAudioMediaSelectionOptions(const Vector<String>& /*options*/, uint64_t /*selectedIndex*/) override;
+    WEBCORE_EXPORT void setLegibleMediaSelectionOptions(const Vector<String>& /*options*/, uint64_t /*selectedIndex*/) override;
+    WEBCORE_EXPORT void setExternalPlayback(bool enabled, ExternalPlaybackTargetType, String localizedDeviceName) override;
     WEBCORE_EXPORT void setWirelessVideoPlaybackDisabled(bool) override { }
 
     WEBCORE_EXPORT void setupFullscreen(NSView& layerHostedView, const IntRect& initialRect, NSWindow *parentWindow, HTMLMediaElementEnums::VideoFullscreenMode, bool allowsPictureInPicturePlayback);

Modified: trunk/Source/WebCore/platform/mac/WebVideoFullscreenInterfaceMac.mm (199285 => 199286)


--- trunk/Source/WebCore/platform/mac/WebVideoFullscreenInterfaceMac.mm	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/mac/WebVideoFullscreenInterfaceMac.mm	2016-04-10 18:48:37 UTC (rev 199286)
@@ -389,10 +389,6 @@
 {
 }
 
-void WebVideoFullscreenInterfaceMac::setExternalPlayback(bool, ExternalPlaybackTargetType, WTF::String)
-{
-}
-
 void WebVideoFullscreenInterfaceMac::setVideoDimensions(bool, float, float)
 {
 }

Modified: trunk/Source/WebCore/platform/mock/MediaPlaybackTargetPickerMock.cpp (199285 => 199286)


--- trunk/Source/WebCore/platform/mock/MediaPlaybackTargetPickerMock.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/mock/MediaPlaybackTargetPickerMock.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -70,7 +70,7 @@
     currentDeviceDidChange();
 }
 
-void MediaPlaybackTargetPickerMock::showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute, const String&)
+void MediaPlaybackTargetPickerMock::showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute)
 {
     if (!client() || m_showingMenu)
         return;

Modified: trunk/Source/WebCore/platform/mock/MediaPlaybackTargetPickerMock.h (199285 => 199286)


--- trunk/Source/WebCore/platform/mock/MediaPlaybackTargetPickerMock.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/mock/MediaPlaybackTargetPickerMock.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -41,7 +41,7 @@
 
     virtual ~MediaPlaybackTargetPickerMock();
 
-    void showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute, const String&) override;
+    void showPlaybackTargetPicker(const FloatRect&, bool checkActiveRoute) override;
     void startingMonitoringPlaybackTargets() override;
     void stopMonitoringPlaybackTargets() override;
     void invalidatePlaybackTargets() override;

Modified: trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h (199285 => 199286)


--- trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -125,13 +125,6 @@
 - (void)showMenuForRect:(NSRect)screenRect appearanceName:(NSString *)appearanceName;
 - (BOOL)showMenuForRect:(NSRect)screenRect appearanceName:(NSString *)appearanceName allowReselectionOfSelectedOutputDevice:(BOOL)allowReselectionOfSelectedOutputDevice;
 
-typedef NS_ENUM(NSInteger, AVOutputDeviceMenuControllerSelection) {
-    AVOutputDeviceMenuControllerSelectionOutputDevice,
-    AVOutputDeviceMenuControllerSelectionCustomMenuItem,
-    AVOutputDeviceMenuControllerSelectionNone
-};
-
-- (AVOutputDeviceMenuControllerSelection)showMenuForRect:(NSRect)screenRect appearanceName:(NSString *)appearanceName allowReselectionOfSelectedOutputDevice:(BOOL)allowReselectionOfSelectedOutputDevice customMenuItemTitle:(NSString *)customMenuItemTitle customMenuItemEnabled:(BOOL)customMenuItemEnabled;
 @end
 
 

Modified: trunk/Source/WebKit/mac/ChangeLog (199285 => 199286)


--- trunk/Source/WebKit/mac/ChangeLog	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit/mac/ChangeLog	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1,3 +1,29 @@
+2016-04-08  Sam Weinig  <s...@webkit.org>
+
+        Remove support for custom target picker actions
+        <rdar://problem/24987783>
+        https://bugs.webkit.org/show_bug.cgi?id=156434
+
+        Reviewed by Eric Carlson.
+
+        This mostly entailed rolling out r197429 and r197569.
+
+        * WebCoreSupport/WebChromeClient.h:
+        * WebCoreSupport/WebChromeClient.mm:
+        (WebChromeClient::removePlaybackTargetPickerClient):
+        (WebChromeClient::showPlaybackTargetPicker):
+        * WebView/WebMediaPlaybackTargetPicker.h:
+        * WebView/WebMediaPlaybackTargetPicker.mm:
+        (WebMediaPlaybackTargetPicker::removePlaybackTargetPickerClient):
+        (WebMediaPlaybackTargetPicker::showPlaybackTargetPicker):
+        (WebMediaPlaybackTargetPicker::playbackTargetPickerClientStateDidChange):
+        (WebMediaPlaybackTargetPicker::setShouldPlayToPlaybackTarget):
+        (WebMediaPlaybackTargetPicker::invalidate):
+        (WebMediaPlaybackTargetPicker::customPlaybackActionSelected): Deleted.
+        * WebView/WebView.mm:
+        (-[WebView _showPlaybackTargetPicker:location:hasVideo:]):
+        (-[WebView _playbackTargetPickerClientStateDidChange:state:]):
+
 2016-04-07  Joseph Pecoraro  <pecor...@apple.com>
 
         Remove ENABLE(ENABLE_ES6_CLASS_SYNTAX) guards

Modified: trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h (199285 => 199286)


--- trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -213,7 +213,7 @@
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
     void addPlaybackTargetPickerClient(uint64_t /*contextId*/) override;
     void removePlaybackTargetPickerClient(uint64_t /*contextId*/) override;
-    void showPlaybackTargetPicker(uint64_t /*contextId*/, const WebCore::IntPoint&, bool /* hasVideo */, const String&) override;
+    void showPlaybackTargetPicker(uint64_t /*contextId*/, const WebCore::IntPoint&, bool /* hasVideo */) override;
     void playbackTargetPickerClientStateDidChange(uint64_t /*contextId*/, WebCore::MediaProducer::MediaStateFlags) override;
     void setMockMediaPlaybackTargetPickerEnabled(bool) override;
     void setMockMediaPlaybackTargetPickerState(const String&, WebCore::MediaPlaybackTargetContext::State) override;

Modified: trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm (199285 => 199286)


--- trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit/mac/WebCoreSupport/WebChromeClient.mm	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1032,7 +1032,7 @@
     [m_webView _removePlaybackTargetPickerClient:contextId];
 }
 
-void WebChromeClient::showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint& location, bool hasVideo, const String&)
+void WebChromeClient::showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint& location, bool hasVideo)
 {
     [m_webView _showPlaybackTargetPicker:contextId location:location hasVideo:hasVideo];
 }

Modified: trunk/Source/WebKit/mac/WebView/WebMediaPlaybackTargetPicker.h (199285 => 199286)


--- trunk/Source/WebKit/mac/WebView/WebMediaPlaybackTargetPicker.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit/mac/WebView/WebMediaPlaybackTargetPicker.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -45,7 +45,7 @@
 
     void addPlaybackTargetPickerClient(uint64_t);
     void removePlaybackTargetPickerClient(uint64_t);
-    void showPlaybackTargetPicker(uint64_t, const WebCore::FloatRect&, bool hasVideo, const String&);
+    void showPlaybackTargetPicker(uint64_t, const WebCore::FloatRect&, bool hasVideo);
     void playbackTargetPickerClientStateDidChange(uint64_t, WebCore::MediaProducer::MediaStateFlags);
     void setMockMediaPlaybackTargetPickerEnabled(bool);
     void setMockMediaPlaybackTargetPickerState(const String&, WebCore::MediaPlaybackTargetContext::State);
@@ -54,7 +54,6 @@
     void setPlaybackTarget(uint64_t, Ref<WebCore::MediaPlaybackTarget>&&) override;
     void externalOutputDeviceAvailableDidChange(uint64_t, bool) override;
     void setShouldPlayToPlaybackTarget(uint64_t, bool) override;
-    void customPlaybackActionSelected(uint64_t) override;
 
     void invalidate();
 

Modified: trunk/Source/WebKit/mac/WebView/WebMediaPlaybackTargetPicker.mm (199285 => 199286)


--- trunk/Source/WebKit/mac/WebView/WebMediaPlaybackTargetPicker.mm	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit/mac/WebView/WebMediaPlaybackTargetPicker.mm	2016-04-10 18:48:37 UTC (rev 199286)
@@ -51,9 +51,9 @@
     WebCore::WebMediaSessionManager::shared().removePlaybackTargetPickerClient(*this, contextId);
 }
 
-void WebMediaPlaybackTargetPicker::showPlaybackTargetPicker(uint64_t contextId, const WebCore::FloatRect& rect, bool hasVideo, const String& customMenuItemTitle)
+void WebMediaPlaybackTargetPicker::showPlaybackTargetPicker(uint64_t contextId, const WebCore::FloatRect& rect, bool hasVideo)
 {
-    WebCore::WebMediaSessionManager::shared().showPlaybackTargetPicker(*this, contextId, WebCore::IntRect(rect), hasVideo, customMenuItemTitle);
+    WebCore::WebMediaSessionManager::shared().showPlaybackTargetPicker(*this, contextId, WebCore::IntRect(rect), hasVideo);
 }
 
 void WebMediaPlaybackTargetPicker::playbackTargetPickerClientStateDidChange(uint64_t contextId, WebCore::MediaProducer::MediaStateFlags state)
@@ -95,14 +95,6 @@
     m_page->setShouldPlayToPlaybackTarget(contextId, shouldPlay);
 }
 
-void WebMediaPlaybackTargetPicker::customPlaybackActionSelected(uint64_t contextId)
-{
-    if (!m_page)
-        return;
-
-    m_page->customPlaybackActionSelected(contextId);
-}
-
 void WebMediaPlaybackTargetPicker::invalidate()
 {
     m_page = nullptr;

Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (199285 => 199286)


--- trunk/Source/WebKit/mac/WebView/WebView.mm	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm	2016-04-10 18:48:37 UTC (rev 199286)
@@ -8742,7 +8742,7 @@
         return;
 
     NSRect rectInScreenCoordinates = [self.window convertRectToScreen:NSMakeRect(location.x(), location.y(), 0, 0)];
-    [self _devicePicker]->showPlaybackTargetPicker(clientId, rectInScreenCoordinates, hasVideo, { });
+    [self _devicePicker]->showPlaybackTargetPicker(clientId, rectInScreenCoordinates, hasVideo);
 }
 
 - (void)_playbackTargetPickerClientStateDidChange:(uint64_t)clientId state:(WebCore::MediaProducer::MediaStateFlags)state

Modified: trunk/Source/WebKit2/ChangeLog (199285 => 199286)


--- trunk/Source/WebKit2/ChangeLog	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/ChangeLog	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1,3 +1,33 @@
+2016-04-08  Sam Weinig  <s...@webkit.org>
+
+        Remove support for custom target picker actions
+        <rdar://problem/24987783>
+        https://bugs.webkit.org/show_bug.cgi?id=156434
+
+        Reviewed by Eric Carlson.
+
+        This mostly entailed rolling out r197429 and r197569.
+
+        * UIProcess/WebPageProxy.cpp:
+        (WebKit::WebPageProxy::removePlaybackTargetPickerClient):
+        (WebKit::WebPageProxy::showPlaybackTargetPicker):
+        (WebKit::WebPageProxy::playbackTargetPickerClientStateDidChange):
+        (WebKit::WebPageProxy::setShouldPlayToPlaybackTarget):
+        (WebKit::WebPageProxy::didChangeBackgroundColor):
+        (WebKit::WebPageProxy::customPlaybackActionSelected): Deleted.
+        * UIProcess/WebPageProxy.h:
+        * UIProcess/WebPageProxy.messages.in:
+        * WebProcess/WebCoreSupport/WebChromeClient.cpp:
+        (WebKit::WebChromeClient::removePlaybackTargetPickerClient):
+        (WebKit::WebChromeClient::showPlaybackTargetPicker):
+        (WebKit::WebChromeClient::playbackTargetPickerClientStateDidChange):
+        * WebProcess/WebCoreSupport/WebChromeClient.h:
+        * WebProcess/WebPage/WebPage.h:
+        * WebProcess/WebPage/WebPage.messages.in:
+        * WebProcess/WebPage/mac/WebPageMac.mm:
+        (WebKit::WebPage::setShouldPlayToPlaybackTarget):
+        (WebKit::WebPage::customPlaybackActionSelected): Deleted.
+
 2016-04-08  Simon Fraser  <simon.fra...@apple.com>
 
         [iOS WK2] WKWebViews should consult ancestor UIScrollViews to determine tiling area

Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (199285 => 199286)


--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -6155,9 +6155,9 @@
     m_pageClient.mediaSessionManager().removePlaybackTargetPickerClient(*this, contextId);
 }
 
-void WebPageProxy::showPlaybackTargetPicker(uint64_t contextId, const WebCore::FloatRect& rect, bool hasVideo, const String& customMenuItemTitle)
+void WebPageProxy::showPlaybackTargetPicker(uint64_t contextId, const WebCore::FloatRect& rect, bool hasVideo)
 {
-    m_pageClient.mediaSessionManager().showPlaybackTargetPicker(*this, contextId, m_pageClient.rootViewToScreen(IntRect(rect)), hasVideo, customMenuItemTitle);
+    m_pageClient.mediaSessionManager().showPlaybackTargetPicker(*this, contextId, m_pageClient.rootViewToScreen(IntRect(rect)), hasVideo);
 }
 
 void WebPageProxy::playbackTargetPickerClientStateDidChange(uint64_t contextId, WebCore::MediaProducer::MediaStateFlags state)
@@ -6198,14 +6198,6 @@
 
     m_process->send(Messages::WebPage::SetShouldPlayToPlaybackTarget(contextId, shouldPlay), m_pageID);
 }
-
-void WebPageProxy::customPlaybackActionSelected(uint64_t contextId)
-{
-    if (!isValid())
-        return;
-
-    m_process->send(Messages::WebPage::CustomPlaybackActionSelected(contextId), m_pageID);
-}
 #endif
 
 void WebPageProxy::didChangeBackgroundColor()

Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.h (199285 => 199286)


--- trunk/Source/WebKit2/UIProcess/WebPageProxy.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1073,7 +1073,7 @@
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
     void addPlaybackTargetPickerClient(uint64_t);
     void removePlaybackTargetPickerClient(uint64_t);
-    void showPlaybackTargetPicker(uint64_t, const WebCore::FloatRect&, bool hasVideo, const String&);
+    void showPlaybackTargetPicker(uint64_t, const WebCore::FloatRect&, bool hasVideo);
     void playbackTargetPickerClientStateDidChange(uint64_t, WebCore::MediaProducer::MediaStateFlags);
     void setMockMediaPlaybackTargetPickerEnabled(bool);
     void setMockMediaPlaybackTargetPickerState(const String&, WebCore::MediaPlaybackTargetContext::State);
@@ -1082,7 +1082,6 @@
     void setPlaybackTarget(uint64_t, Ref<WebCore::MediaPlaybackTarget>&&) override;
     void externalOutputDeviceAvailableDidChange(uint64_t, bool) override;
     void setShouldPlayToPlaybackTarget(uint64_t, bool) override;
-    void customPlaybackActionSelected(uint64_t) override;
 #endif
 
     void didChangeBackgroundColor();

Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in (199285 => 199286)


--- trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.messages.in	2016-04-10 18:48:37 UTC (rev 199286)
@@ -435,7 +435,7 @@
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
     AddPlaybackTargetPickerClient(uint64_t contextId)
     RemovePlaybackTargetPickerClient(uint64_t contextId)
-    ShowPlaybackTargetPicker(uint64_t clientId, WebCore::FloatRect pickerLocation, bool hasVideo, String customMenuItemTitle)
+    ShowPlaybackTargetPicker(uint64_t clientId, WebCore::FloatRect pickerLocation, bool hasVideo)
     PlaybackTargetPickerClientStateDidChange(uint64_t contextId, unsigned mediaState)
     SetMockMediaPlaybackTargetPickerEnabled(bool enabled)
     SetMockMediaPlaybackTargetPickerState(String name, unsigned pickerState)

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp (199285 => 199286)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1111,11 +1111,11 @@
 }
 
 
-void WebChromeClient::showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint& position, bool isVideo, const String& customMenuItemTitle)
+void WebChromeClient::showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint& position, bool isVideo)
 {
     FrameView* frameView = m_page->mainFrame()->view();
     FloatRect rect(frameView->contentsToRootView(frameView->windowToContents(position)), FloatSize());
-    m_page->send(Messages::WebPageProxy::ShowPlaybackTargetPicker(contextId, rect, isVideo, customMenuItemTitle));
+    m_page->send(Messages::WebPageProxy::ShowPlaybackTargetPicker(contextId, rect, isVideo));
 }
 
 void WebChromeClient::playbackTargetPickerClientStateDidChange(uint64_t contextId, WebCore::MediaProducer::MediaStateFlags state)

Modified: trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h (199285 => 199286)


--- trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -322,7 +322,7 @@
 #if ENABLE(WIRELESS_PLAYBACK_TARGET) && !PLATFORM(IOS)
     void addPlaybackTargetPickerClient(uint64_t /*contextId*/) override;
     void removePlaybackTargetPickerClient(uint64_t /*contextId*/) override;
-    void showPlaybackTargetPicker(uint64_t /*contextId*/, const WebCore::IntPoint&, bool, const String&) override;
+    void showPlaybackTargetPicker(uint64_t contextId, const WebCore::IntPoint&, bool) override;
     void playbackTargetPickerClientStateDidChange(uint64_t, WebCore::MediaProducer::MediaStateFlags) override;
     void setMockMediaPlaybackTargetPickerEnabled(bool) override;
     void setMockMediaPlaybackTargetPickerState(const String&, WebCore::MediaPlaybackTargetContext::State) override;

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h (199285 => 199286)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1181,7 +1181,6 @@
     void playbackTargetSelected(uint64_t, const WebCore::MediaPlaybackTargetContext& outputDevice) const;
     void playbackTargetAvailabilityDidChange(uint64_t, bool);
     void setShouldPlayToPlaybackTarget(uint64_t, bool);
-    void customPlaybackActionSelected(uint64_t);
 #endif
 
     void clearWheelEventTestTrigger();

Modified: trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in (199285 => 199286)


--- trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/WebProcess/WebPage/WebPage.messages.in	2016-04-10 18:48:37 UTC (rev 199286)
@@ -418,7 +418,6 @@
     PlaybackTargetSelected(uint64_t contextId, WebCore::MediaPlaybackTargetContext target)
     PlaybackTargetAvailabilityDidChange(uint64_t contextId, bool available)
     SetShouldPlayToPlaybackTarget(uint64_t contextId, bool shouldPlay)
-    CustomPlaybackActionSelected(uint64_t contextId)
 #endif
 
     ClearWheelEventTestTrigger()

Modified: trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm (199285 => 199286)


--- trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm	2016-04-10 10:14:54 UTC (rev 199285)
+++ trunk/Source/WebKit2/WebProcess/WebPage/mac/WebPageMac.mm	2016-04-10 18:48:37 UTC (rev 199286)
@@ -1159,11 +1159,6 @@
 {
     m_page->setShouldPlayToPlaybackTarget(contextId, shouldPlay);
 }
-
-void WebPage::customPlaybackActionSelected(uint64_t contextId)
-{
-    m_page->customPlaybackActionSelected(contextId);
-}
 #endif
 
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to