Diff
Modified: trunk/LayoutTests/ChangeLog (162177 => 162178)
--- trunk/LayoutTests/ChangeLog 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/LayoutTests/ChangeLog 2014-01-17 02:12:19 UTC (rev 162178)
@@ -1,3 +1,14 @@
+2014-01-16 Jer Noble <jer.no...@apple.com>
+
+ REGRESSION(r162145): media/video-controls-visible-audio-only.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=127147
+
+ Re-enable media/video-controls-visible-audio-only.html.
+
+ Reviewed by Eric Carlson.
+
+ * platform/mac/TestExpectations:
+
2014-01-16 Alexey Proskuryakov <a...@apple.com>
REGRESSION(r162145): media/video-controls-visible-audio-only.html fails
Modified: trunk/LayoutTests/platform/mac/TestExpectations (162177 => 162178)
--- trunk/LayoutTests/platform/mac/TestExpectations 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/LayoutTests/platform/mac/TestExpectations 2014-01-17 02:12:19 UTC (rev 162178)
@@ -1362,5 +1362,3 @@
# Subpixel: misplaced zoomed svg content.
webkit.org/b/126900 svg/zoom/page/zoom-zoom-coords.xhtml
-
-webkit.org/b/127147 media/video-controls-visible-audio-only.html [ Pass Failure ]
Modified: trunk/Source/WebCore/ChangeLog (162177 => 162178)
--- trunk/Source/WebCore/ChangeLog 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/Source/WebCore/ChangeLog 2014-01-17 02:12:19 UTC (rev 162178)
@@ -1,3 +1,29 @@
+2014-01-16 Jer Noble <jer.no...@apple.com>
+
+ REGRESSION(r162145): media/video-controls-visible-audio-only.html fails
+ https://bugs.webkit.org/show_bug.cgi?id=127147
+
+ Reviewed by Eric Carlson.
+
+ Reset the MediaSessionManager's restrictions to their default values before
+ each run.
+
+ Add a new virtual method "resetRestrictions()" so that each port-specific
+ MediaSessionManager can reset the restrictions to their default values.
+ Call this from Internals::resetToConsistentState() so that tests which change
+ the restrictions don't affect later tests.
+
+ * platform/audio/MediaSessionManager.cpp:
+ (WebCore::MediaSessionManager::MediaSessionManager):
+ (WebCore::MediaSessionManager::resetRestrictions):
+ * platform/audio/MediaSessionManager.h:
+ (WebCore::MediaSessionManager::~MediaSessionManager):
+ * platform/audio/ios/MediaSessionManagerIOS.h:
+ * platform/audio/ios/MediaSessionManagerIOS.mm:
+ (WebCore::MediaSessionManageriOS::resetRestrictions):
+ * testing/Internals.cpp:
+ (WebCore::Internals::resetToConsistentState):
+
2014-01-16 Alex Christensen <achristen...@webkit.org>
Compile fix for WinCairo after r162138.
Modified: trunk/Source/WebCore/platform/audio/MediaSessionManager.cpp (162177 => 162178)
--- trunk/Source/WebCore/platform/audio/MediaSessionManager.cpp 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/Source/WebCore/platform/audio/MediaSessionManager.cpp 2014-01-17 02:12:19 UTC (rev 162178)
@@ -41,6 +41,11 @@
MediaSessionManager::MediaSessionManager()
: m_interruptions(0)
{
+ resetRestrictions();
+}
+
+void MediaSessionManager::resetRestrictions()
+{
m_restrictions[MediaSession::Video] = NoRestrictions;
m_restrictions[MediaSession::Audio] = NoRestrictions;
m_restrictions[MediaSession::WebAudio] = NoRestrictions;
Modified: trunk/Source/WebCore/platform/audio/MediaSessionManager.h (162177 => 162178)
--- trunk/Source/WebCore/platform/audio/MediaSessionManager.h 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/Source/WebCore/platform/audio/MediaSessionManager.h 2014-01-17 02:12:19 UTC (rev 162178)
@@ -39,6 +39,7 @@
class MediaSessionManager {
public:
static MediaSessionManager& sharedManager();
+ virtual ~MediaSessionManager() { }
bool has(MediaSession::MediaType) const;
int count(MediaSession::MediaType) const;
@@ -56,6 +57,7 @@
void addRestriction(MediaSession::MediaType, SessionRestrictions);
void removeRestriction(MediaSession::MediaType, SessionRestrictions);
SessionRestrictions restrictions(MediaSession::MediaType);
+ virtual void resetRestrictions();
void sessionWillBeginPlayback(const MediaSession&) const;
bool sessionRestrictsInlineVideoPlayback(const MediaSession&) const;
Modified: trunk/Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h (162177 => 162178)
--- trunk/Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h 2014-01-17 02:12:19 UTC (rev 162178)
@@ -42,6 +42,8 @@
private:
friend class MediaSessionManager;
+ virtual void resetRestrictions() override;
+
MediaSessionManageriOS();
RetainPtr<WebMediaSessionHelper> m_objcObserver;
};
Modified: trunk/Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm (162177 => 162178)
--- trunk/Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.mm 2014-01-17 02:12:19 UTC (rev 162178)
@@ -73,6 +73,12 @@
:MediaSessionManager()
, m_objcObserver(adoptNS([[WebMediaSessionHelper alloc] initWithCallback:this]))
{
+}
+
+void MediaSessionManageriOS::resetRestrictions()
+{
+ MediaSessionManager::resetRestrictions();
+
DEFINE_STATIC_LOCAL(wkDeviceClass, deviceClass, (iosDeviceClass()));
if (deviceClass == wkDeviceClassiPhone || deviceClass == wkDeviceClassiPod)
@@ -81,8 +87,6 @@
addRestriction(MediaSession::Video, ConcurrentPlaybackNotPermitted);
}
-}
-
@implementation WebMediaSessionHelper
- (id)initWithCallback:(MediaSessionManageriOS*)callback
Modified: trunk/Source/WebCore/testing/Internals.cpp (162177 => 162178)
--- trunk/Source/WebCore/testing/Internals.cpp 2014-01-17 01:58:42 UTC (rev 162177)
+++ trunk/Source/WebCore/testing/Internals.cpp 2014-01-17 02:12:19 UTC (rev 162178)
@@ -292,6 +292,9 @@
if (page->mainFrame().editor().isOverwriteModeEnabled())
page->mainFrame().editor().toggleOverwriteModeEnabled();
cacheStorage().setDefaultOriginQuota(ApplicationCacheStorage::noQuota());
+#if ENABLE(VIDEO)
+ MediaSessionManager::sharedManager().resetRestrictions();
+#endif
}
Internals::Internals(Document* document)