Title: [221794] trunk/Source
Revision
221794
Author
[email protected]
Date
2017-09-08 12:03:53 -0700 (Fri, 08 Sep 2017)

Log Message

Unreviewed, rolling out r221773.
https://bugs.webkit.org/show_bug.cgi?id=176614

This caused build failures. (Requested by mlewis13 on
#webkit).

Reverted changeset:

"[Mac] Upstream QTKit-related WebKitSystemInterface functions"
https://bugs.webkit.org/show_bug.cgi?id=176472
http://trac.webkit.org/changeset/221773

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (221793 => 221794)


--- trunk/Source/WebCore/ChangeLog	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebCore/ChangeLog	2017-09-08 19:03:53 UTC (rev 221794)
@@ -1,3 +1,17 @@
+2017-09-08  Commit Queue  <[email protected]>
+
+        Unreviewed, rolling out r221773.
+        https://bugs.webkit.org/show_bug.cgi?id=176614
+
+        This caused build failures. (Requested by mlewis13 on
+        #webkit).
+
+        Reverted changeset:
+
+        "[Mac] Upstream QTKit-related WebKitSystemInterface functions"
+        https://bugs.webkit.org/show_bug.cgi?id=176472
+        http://trac.webkit.org/changeset/221773
+
 2017-09-08  Antti Koivisto  <[email protected]>
 
         Remove support for >> descendant combinator syntax

Modified: trunk/Source/WebCore/PAL/ChangeLog (221793 => 221794)


--- trunk/Source/WebCore/PAL/ChangeLog	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebCore/PAL/ChangeLog	2017-09-08 19:03:53 UTC (rev 221794)
@@ -1,3 +1,17 @@
+2017-09-08  Commit Queue  <[email protected]>
+
+        Unreviewed, rolling out r221773.
+        https://bugs.webkit.org/show_bug.cgi?id=176614
+
+        This caused build failures. (Requested by mlewis13 on
+        #webkit).
+
+        Reverted changeset:
+
+        "[Mac] Upstream QTKit-related WebKitSystemInterface functions"
+        https://bugs.webkit.org/show_bug.cgi?id=176472
+        http://trac.webkit.org/changeset/221773
+
 2017-09-07  Andy Estes  <[email protected]>
 
         [Mac] Upstream QTKit-related WebKitSystemInterface functions

Modified: trunk/Source/WebCore/PAL/pal/spi/mac/QTKitSPI.h (221793 => 221794)


--- trunk/Source/WebCore/PAL/pal/spi/mac/QTKitSPI.h	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebCore/PAL/pal/spi/mac/QTKitSPI.h	2017-09-08 19:03:53 UTC (rev 221794)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016-2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2016 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -25,12 +25,8 @@
 
 #pragma once
 
-#if USE(APPLE_INTERNAL_SDK)
-
-#import <QTKit/QTHUDBackgroundView_Private.h>
-#import <QTKit/QTKit_Private.h>
-#import <QTKit/QTUtilities_Private.h>
-
+#if USE(APPLE_INTERNAL_SDK) || __MAC_OS_X_VERSION_MAX_ALLOWED < 101200
+#import <QTKit/QTKit.h>
 #else
 
 enum {
@@ -50,19 +46,8 @@
 
 typedef enum {
     QTIncludeCommonTypes = 0,
-    QTIncludeOnlyFigMediaFileTypes = 1 << 8,
 } QTMovieFileTypeOptions;
 
-enum {
-    QTMovieTypeUnknown = 0,
-    QTMovieTypeLocal,
-    QTMovieTypeFastStart,
-    QTMovieTypeLiveStream,
-    QTMovieTypeStoredStream
-};
-
-@class QTTrack;
-
 @interface QTMedia : NSObject
 
 - (id)attributeForKey:(NSString *)attributeKey;
@@ -73,8 +58,6 @@
 
 + (NSArray *)movieFileTypes:(QTMovieFileTypeOptions)types;
 
-+ (void)disableComponent:(ComponentDescription)component;
-
 - (id)initWithAttributes:(NSDictionary *)attributes error:(NSError **)errorPtr;
 
 - (void)play;
@@ -98,14 +81,6 @@
 
 - (NSArray *)tracks;
 
-- (NSArray *)alternateGroupTypes;
-- (NSArray *)alternatesForMediaType:(NSString *)type;
-- (void)deselectAlternateGroupTrack:(QTTrack *)alternateTrack;
-- (void)selectAlternateGroupTrack:(QTTrack *)alternateTrack;
-
-- (NSURL *)URL;
-- (UInt32)movieType;
-
 @end
 
 @interface QTMovieLayer : CALayer
@@ -131,20 +106,4 @@
 
 @end
 
-@interface QTHUDBackgroundView : NSView
-
-- (void)setContentBorderPosition:(CGFloat)contentBorderPosition;
-
-@end
-
-@interface QTUtilities : NSObject
-
-+ (id)qtUtilities;
-
-- (NSArray *)sitesInDownloadCache;
-- (void)clearDownloadCache;
-- (void)clearDownloadCacheForSite:(NSString *)site;
-
-@end
-
 #endif

Modified: trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm (221793 => 221794)


--- trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebCore/platform/graphics/mac/MediaPlayerPrivateQTKit.mm	2017-09-08 19:03:53 UTC (rev 221794)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2007-2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -52,7 +52,6 @@
 
 SOFT_LINK_CLASS(QTKit, QTMovie)
 SOFT_LINK_CLASS(QTKit, QTMovieLayer)
-SOFT_LINK_CLASS(QTKit, QTUtilities)
 
 SOFT_LINK_POINTER(QTKit, QTTrackMediaTypeAttribute, NSString *)
 SOFT_LINK_POINTER(QTKit, QTMediaTypeAttribute, NSString *)
@@ -72,7 +71,6 @@
 SOFT_LINK_POINTER(QTKit, QTMovieLoadStateAttribute, NSString *)
 SOFT_LINK_POINTER(QTKit, QTMovieLoadStateErrorAttribute, NSString *)
 SOFT_LINK_POINTER(QTKit, QTMovieLoadStateDidChangeNotification, NSString *)
-SOFT_LINK_POINTER(QTKit, QTMovieLoadedRangesDidChangeNotification, NSString *);
 SOFT_LINK_POINTER(QTKit, QTMovieNaturalSizeAttribute, NSString *)
 SOFT_LINK_POINTER(QTKit, QTMovieCurrentSizeAttribute, NSString *)
 SOFT_LINK_POINTER(QTKit, QTMoviePreventExternalURLLinksAttribute, NSString *)
@@ -97,8 +95,8 @@
 - (NSArray *)loadedRanges;
 @end
 
+#define QTMovie getQTMovieClass()
 #define QTMovieLayer getQTMovieLayerClass()
-#define QTUtilities getQTUtilitiesClass()
 
 #define QTTrackMediaTypeAttribute getQTTrackMediaTypeAttribute()
 #define QTMediaTypeAttribute getQTMediaTypeAttribute()
@@ -118,7 +116,6 @@
 #define QTMovieLoadStateAttribute getQTMovieLoadStateAttribute()
 #define QTMovieLoadStateErrorAttribute getQTMovieLoadStateErrorAttribute()
 #define QTMovieLoadStateDidChangeNotification getQTMovieLoadStateDidChangeNotification()
-#define QTMovieLoadedRangesDidChangeNotification getQTMovieLoadedRangesDidChangeNotification()
 #define QTMovieNaturalSizeAttribute getQTMovieNaturalSizeAttribute()
 #define QTMovieCurrentSizeAttribute getQTMovieCurrentSizeAttribute()
 #define QTMoviePreventExternalURLLinksAttribute getQTMoviePreventExternalURLLinksAttribute()
@@ -295,7 +292,7 @@
     // QTKitServer has not yet started.  As a result, we must pass in exactly the flags we want to
     // disable per component.  As a failsafe, if in the future these flags change, we will disable the
     // PDF components for a third time with a wildcard flags field:
-    ComponentDescription componentsToDisable[11] = {
+    uint32_t componentsToDisable[11][5] = {
         {'eat ', 'TEXT', 'text', 0, 0},
         {'eat ', 'TXT ', 'text', 0, 0},    
         {'eat ', 'utxt', 'text', 0, 0},  
@@ -310,7 +307,7 @@
     };
 
     for (auto& component : componentsToDisable)
-        [getQTMovieClass() disableComponent:component];
+        wkQTMovieDisableComponent(component);
 }
 
 void MediaPlayerPrivateQTKit::createQTMovie(NSURL *url, NSDictionary *movieAttributes)
@@ -348,10 +345,14 @@
                                                object:m_qtMovie.get()];
 
     // In updateState(), we track when maxTimeLoaded() == duration().
-    [[NSNotificationCenter defaultCenter] addObserver:m_objcObserver.get()
-                                             selector:@selector(loadedRangesChanged:)
-                                                 name:QTMovieLoadedRangesDidChangeNotification
-                                               object:m_qtMovie.get()];
+    // In newer version of QuickTime, a notification is emitted when maxTimeLoaded changes.
+    // In older version of QuickTime, QTMovieLoadStateDidChangeNotification be fired.
+    if (NSString *maxTimeLoadedChangeNotification = wkQTMovieMaxTimeLoadedChangeNotification()) {
+        [[NSNotificationCenter defaultCenter] addObserver:m_objcObserver.get()
+                                                 selector:@selector(loadedRangesChanged:)
+                                                     name:maxTimeLoadedChangeNotification
+                                                   object:m_qtMovie.get()];        
+    }
 
     [[NSNotificationCenter defaultCenter] addObserver:m_objcObserver.get()
                                              selector:@selector(rateChanged:) 
@@ -770,30 +771,18 @@
 {
     if (!metaDataAvailable())
         return false;
-    return [[m_qtMovie alternateGroupTypes] containsObject:@"clcp"];
+    return wkQTMovieHasClosedCaptions(m_qtMovie.get());  
 }
 
 void MediaPlayerPrivateQTKit::setClosedCaptionsVisible(bool closedCaptionsVisible)
 {
-    if (!metaDataAvailable())
-        return;
+    if (metaDataAvailable()) {
+        wkQTMovieSetShowClosedCaptions(m_qtMovie.get(), closedCaptionsVisible);
 
-    if (![[m_qtMovie alternateGroupTypes] containsObject:@"clcp"])
-        return;
-
-    NSArray *trackAlternatesArray = [m_qtMovie alternatesForMediaType:@"clcp"];
-    QTTrack *track = trackAlternatesArray[0][@"QTAlternates_QTTrack"];
-    if (!track)
-        return;
-
-    if (!closedCaptionsVisible)
-        [m_qtMovie deselectAlternateGroupTrack:track];
-    else
-        [m_qtMovie selectAlternateGroupTrack:track];
-
-    if (closedCaptionsVisible && m_qtVideoLayer) {
-        // Captions will be rendered upside down unless we flag the movie as flipped (again). See <rdar://7408440>.
-        [m_qtVideoLayer.get() setGeometryFlipped:YES];
+        if (closedCaptionsVisible && m_qtVideoLayer) {
+            // Captions will be rendered upside down unless we flag the movie as flipped (again). See <rdar://7408440>.
+            [m_qtVideoLayer.get() setGeometryFlipped:YES];
+        }
     }
 }
 
@@ -952,58 +941,6 @@
         m_player->client().mediaPlayerRenderingModeChanged(m_player);
 }
 
-static void selectPreferredAlternateTrackForMediaType(QTMovie *movie, NSString *mediaType)
-{
-    NSArray *alternates = [movie alternatesForMediaType:mediaType];
-    if (!alternates.count)
-        return;
-
-    auto languageToQTTrackMap = adoptNS([[NSMutableDictionary alloc] initWithCapacity:alternates.count]);
-
-    for (NSUInteger index = 0; index < alternates.count; ++index) {
-        NSDictionary *alternateDict = alternates[index];
-        NSString *languageString = alternateDict[@"QTAlternates_LanguageCodeEncoding_ISO_639_2T"];
-        if (![languageString cStringUsingEncoding:kCFStringEncodingASCII])
-            continue;
-        if (!languageString)
-            languageString = alternateDict[@"QTAlternates_LanguageCodeEncoding_RFC_4646"];
-        if (!languageString) {
-            LangCode langCode = [alternateDict[@"QTAlternates_LanguageCodeEncoding_MacType_LangCode"] intValue];
-            auto identifier = adoptCF(CFLocaleCreateCanonicalLocaleIdentifierFromScriptManagerCodes(kCFAllocatorDefault, langCode, 0));
-            languageString = (NSString *)identifier.autorelease();
-        }
-        if (!languageString)
-            continue;
-
-        id alternateTrack = alternateDict[@"QTAlternates_QTTrack"];
-        if (!alternateTrack)
-            continue;
-
-        if (![[alternateTrack attributeForKey:@"QTTrackEnabledAttribute"] boolValue])
-            continue;
-
-        [languageToQTTrackMap setObject:alternateTrack forKey:languageString];
-    }
-
-    NSArray *preferredLanguages = [NSBundle preferredLocalizationsFromArray:[languageToQTTrackMap allKeys] forPreferences:nil];
-    if (preferredLanguages.count) {
-        id preferredTrack = [languageToQTTrackMap objectForKey:preferredLanguages[0]];
-        if (preferredTrack) {
-            // +[NSBundle preferredLocalizationsFromArray:forPreferences] may return a language which was
-            // not present in preferredLanguages, and will therefore not have an associated track.
-            [movie selectAlternateGroupTrack:preferredTrack];
-        }
-    }
-}
-
-static void selectPreferredAlternates(QTMovie *movie)
-{
-    selectPreferredAlternateTrackForMediaType(movie, @"vide");
-    selectPreferredAlternateTrackForMediaType(movie, @"soun");
-    selectPreferredAlternateTrackForMediaType(movie, @"cplp");
-    selectPreferredAlternateTrackForMediaType(movie, @"sbtl");
-}
-
 void MediaPlayerPrivateQTKit::updateStates()
 {
     MediaPlayer::NetworkState oldNetworkState = m_networkState;
@@ -1028,7 +965,7 @@
             loadState = QTMovieLoadStateError;
 
         if (loadState != QTMovieLoadStateError) {
-            selectPreferredAlternates(m_qtMovie.get());
+            wkQTMovieSelectPreferredAlternates(m_qtMovie.get());
             cacheMovieScale();
             MediaPlayer::MovieLoadType movieType = movieLoadType();
             m_isStreaming = movieType == MediaPlayer::StoredStream || movieType == MediaPlayer::LiveStream;
@@ -1330,13 +1267,13 @@
 
 static const HashSet<String, ASCIICaseInsensitiveHash>& mimeCommonTypesCache()
 {
-    static const auto cache = makeNeverDestroyed(createFileTypesSet([getQTMovieClass() movieFileTypes:QTIncludeCommonTypes]));
+    static const auto cache = makeNeverDestroyed(createFileTypesSet([QTMovie movieFileTypes:QTIncludeCommonTypes]));
     return cache;
 } 
 
 static const HashSet<String, ASCIICaseInsensitiveHash>& mimeModernTypesCache()
 {
-    static const auto cache = makeNeverDestroyed(createFileTypesSet([getQTMovieClass() movieFileTypes:QTIncludeOnlyFigMediaFileTypes]));
+    static const auto cache = makeNeverDestroyed(createFileTypesSet([QTMovie movieFileTypes:(QTMovieFileTypeOptions)wkQTIncludeOnlyModernMediaFileTypes()]));
     return cache;
 }
 
@@ -1387,7 +1324,7 @@
 HashSet<RefPtr<SecurityOrigin>> MediaPlayerPrivateQTKit::originsInMediaCache(const String&)
 {
     HashSet<RefPtr<SecurityOrigin>> origins;
-    NSArray *mediaSites = [[QTUtilities qtUtilities] sitesInDownloadCache];
+    NSArray *mediaSites = wkQTGetSitesInMediaDownloadCache();
     
     for (NSString *site in mediaSites) {
         URL siteAsURL = URL(URL(), site);
@@ -1400,7 +1337,7 @@
 void MediaPlayerPrivateQTKit::clearMediaCache(const String&, std::chrono::system_clock::time_point)
 {
     LOG(Media, "MediaPlayerPrivateQTKit::clearMediaCache()");
-    [[QTUtilities qtUtilities] clearDownloadCache];
+    wkQTClearMediaDownloadCache();
 }
 
 void MediaPlayerPrivateQTKit::clearMediaCacheForOrigins(const String&, const HashSet<RefPtr<SecurityOrigin>>& origins)
@@ -1407,7 +1344,7 @@
 {
     LOG(Media, "MediaPlayerPrivateQTKit::clearMediaCacheForOrigins()");
     for (auto& origin : origins)
-        [[QTUtilities qtUtilities] clearDownloadCacheForSite:origin->toRawString()];
+        wkQTClearMediaDownloadCacheForSite(origin->toRawString());
 }
 
 void MediaPlayerPrivateQTKit::disableUnsupportedTracks()
@@ -1531,7 +1468,7 @@
     if (!m_qtMovie)
         return false;
 
-    Ref<SecurityOrigin> resolvedOrigin = SecurityOrigin::create(URL([m_qtMovie URL]));
+    Ref<SecurityOrigin> resolvedOrigin = SecurityOrigin::create(URL(wkQTMovieResolvedURL(m_qtMovie.get())));
     Ref<SecurityOrigin> requestedOrigin = SecurityOrigin::createFromString(m_movieURL);
     return resolvedOrigin->isSameSchemeHostPort(requestedOrigin.get());
 }
@@ -1539,21 +1476,15 @@
 MediaPlayer::MovieLoadType MediaPlayerPrivateQTKit::movieLoadType() const
 {
     if (!m_qtMovie)
-        return MediaPlayer::MovieLoadType::Unknown;
+        return MediaPlayer::Unknown;
 
-    UInt32 movieType = [m_qtMovie movieType];
-    switch (movieType) {
-    case QTMovieTypeLocal:
-    case QTMovieTypeFastStart:
-        return MediaPlayer::MovieLoadType::Download;
-    case QTMovieTypeLiveStream:
-        return MediaPlayer::MovieLoadType::LiveStream;
-    case QTMovieTypeStoredStream:
-        return MediaPlayer::MovieLoadType::StoredStream;
-    case QTMovieTypeUnknown:
-    default:
-        return MediaPlayer::MovieLoadType::Unknown;
-    }
+    MediaPlayer::MovieLoadType movieType = (MediaPlayer::MovieLoadType)wkQTMovieGetType(m_qtMovie.get());
+
+    // Can't include WebKitSystemInterface from WebCore so we can't get the enum returned
+    // by wkQTMovieGetType, but at least verify that the value is in the valid range.
+    ASSERT(movieType >= MediaPlayer::Unknown && movieType <= MediaPlayer::LiveStream);
+
+    return movieType;
 }
 
 void MediaPlayerPrivateQTKit::setPreload(MediaPlayer::Preload preload)
@@ -1584,7 +1515,7 @@
         return false;
 
     if (m_qtMovie)
-        url = "" URL]);
+        url = ""
     else
         url = "" m_movieURL);
 

Modified: trunk/Source/WebCore/platform/mac/WebCoreSystemInterface.h (221793 => 221794)


--- trunk/Source/WebCore/platform/mac/WebCoreSystemInterface.h	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebCore/platform/mac/WebCoreSystemInterface.h	2017-09-08 19:03:53 UTC (rev 221794)
@@ -131,7 +131,32 @@
 extern BOOL (*wkGetNSURLResponseMustRevalidate)(NSURLResponse *response);
 extern BOOL (*wkHitTestMediaUIPart)(int part, CGRect bounds, CGPoint point);
 extern void (*wkMeasureMediaUIPart)(int part, CGRect *bounds, CGSize *naturalSize);
+extern NSView *(*wkCreateMediaUIBackgroundView)(void);
 
+typedef enum {
+    wkMediaUIControlTimeline,
+    wkMediaUIControlSlider,
+    wkMediaUIControlPlayPauseButton,
+    wkMediaUIControlExitFullscreenButton,
+    wkMediaUIControlRewindButton,
+    wkMediaUIControlFastForwardButton,
+    wkMediaUIControlVolumeUpButton,
+    wkMediaUIControlVolumeDownButton
+} wkMediaUIControlType;
+extern NSControl *(*wkCreateMediaUIControl)(int);
+
+extern unsigned (*wkQTIncludeOnlyModernMediaFileTypes)(void);
+extern void (*wkQTMovieDisableComponent)(uint32_t[5]);
+extern float (*wkQTMovieMaxTimeLoaded)(QTMovie*);
+extern NSString *(*wkQTMovieMaxTimeLoadedChangeNotification)(void);
+extern int (*wkQTMovieGetType)(QTMovie*);
+extern BOOL (*wkQTMovieHasClosedCaptions)(QTMovie*);
+extern NSURL *(*wkQTMovieResolvedURL)(QTMovie*);
+extern void (*wkQTMovieSetShowClosedCaptions)(QTMovie*, BOOL);
+extern void (*wkQTMovieSelectPreferredAlternates)(QTMovie*);
+extern NSArray *(*wkQTGetSitesInMediaDownloadCache)();
+extern void (*wkQTClearMediaDownloadCacheForSite)(NSString *site);
+extern void (*wkQTClearMediaDownloadCache)();
 extern void (*wkSetCookieStoragePrivateBrowsingEnabled)(BOOL);
 #endif
 extern void (*wkSetCONNECTProxyForStream)(CFReadStreamRef, CFStringRef proxyHost, CFNumberRef proxyPort);

Modified: trunk/Source/WebCore/platform/mac/WebCoreSystemInterface.mm (221793 => 221794)


--- trunk/Source/WebCore/platform/mac/WebCoreSystemInterface.mm	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebCore/platform/mac/WebCoreSystemInterface.mm	2017-09-08 19:03:53 UTC (rev 221794)
@@ -36,9 +36,23 @@
 BOOL (*wkHitTestMediaUIPart)(int part, CGRect bounds, CGPoint point);
 void (*wkDrawMediaUIPart)(int part, CGContextRef context, CGRect rect, unsigned state);
 void (*wkMeasureMediaUIPart)(int part, CGRect *bounds, CGSize *naturalSize);
+NSView *(*wkCreateMediaUIBackgroundView)(void);
+NSControl *(*wkCreateMediaUIControl)(int);
 NSTimeInterval (*wkGetNSURLResponseCalculatedExpiration)(NSURLResponse *response);
 BOOL (*wkGetNSURLResponseMustRevalidate)(NSURLResponse *response);
 void (*wkPopupMenu)(NSMenu*, NSPoint location, float width, NSView*, int selectedItem, NSFont*, NSControlSize controlSize, bool usesCustomAppearance);
+unsigned (*wkQTIncludeOnlyModernMediaFileTypes)(void);
+void (*wkQTMovieDisableComponent)(uint32_t[5]);
+float (*wkQTMovieMaxTimeLoaded)(QTMovie*);
+NSString *(*wkQTMovieMaxTimeLoadedChangeNotification)(void);
+int (*wkQTMovieGetType)(QTMovie*);
+BOOL (*wkQTMovieHasClosedCaptions)(QTMovie*);
+NSURL *(*wkQTMovieResolvedURL)(QTMovie*);
+void (*wkQTMovieSetShowClosedCaptions)(QTMovie*, BOOL);
+void (*wkQTMovieSelectPreferredAlternates)(QTMovie*);
+NSArray *(*wkQTGetSitesInMediaDownloadCache)();
+void (*wkQTClearMediaDownloadCacheForSite)(NSString *site);
+void (*wkQTClearMediaDownloadCache)();
 
 void (*wkSetCONNECTProxyForStream)(CFReadStreamRef, CFStringRef proxyHost, CFNumberRef proxyPort);
 void (*wkSetCONNECTProxyAuthorizationForStream)(CFReadStreamRef, CFStringRef proxyAuthorizationString);

Modified: trunk/Source/WebCore/platform/mac/WebVideoFullscreenHUDWindowController.mm (221793 => 221794)


--- trunk/Source/WebCore/platform/mac/WebVideoFullscreenHUDWindowController.mm	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebCore/platform/mac/WebVideoFullscreenHUDWindowController.mm	2017-09-08 19:03:53 UTC (rev 221794)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2009-2017 Apple Inc. All rights reserved.
+ * Copyright (C) 2009-2016 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -31,38 +31,9 @@
 #import <WebCore/HTMLVideoElement.h>
 #import <WebCoreSystemInterface.h>
 #import <pal/spi/cg/CoreGraphicsSPI.h>
-#import <pal/spi/mac/QTKitSPI.h>
-#import <wtf/SoftLinking.h>
 
-SOFT_LINK_FRAMEWORK(QTKit)
-
-SOFT_LINK_CLASS(QTKit, QTHUDBackgroundView)
-SOFT_LINK_CLASS(QTKit, QTHUDButton)
-SOFT_LINK_CLASS(QTKit, QTHUDSlider)
-SOFT_LINK_CLASS(QTKit, QTHUDTimeline)
-
-#define QTHUDBackgroundView getQTHUDBackgroundViewClass()
-#define QTHUDButton getQTHUDButtonClass()
-#define QTHUDSlider getQTHUDSliderClass()
-#define QTHUDTimeline getQTHUDTimelineClass()
-
 using namespace WebCore;
 
-namespace WebCore {
-
-enum class MediaUIControl {
-    Timeline,
-    Slider,
-    PlayPauseButton,
-    ExitFullscreenButton,
-    RewindButton,
-    FastForwardButton,
-    VolumeUpButton,
-    VolumeDownButton,
-};
-
-}
-
 @interface WebVideoFullscreenHUDWindowController (Private) <NSWindowDelegate>
 
 - (void)updateTime;
@@ -294,68 +265,10 @@
     [self setWindow:nil];
 }
 
-static NSControl *createMediaUIControl(MediaUIControl controlType)
+static NSControl *createControlWithMediaUIControlType(int controlType, NSRect frame)
 {
-    switch (controlType) {
-    case MediaUIControl::Timeline: {
-        NSSlider *slider = [[QTHUDTimeline alloc] init];
-        [[slider cell] setContinuous:YES];
-        return slider;
-    }
-    case MediaUIControl::Slider: {
-        NSButton *slider = [[QTHUDSlider alloc] init];
-        [[slider cell] setContinuous:YES];
-        return slider;
-    }
-    case MediaUIControl::PlayPauseButton: {
-        NSButton *button = [[QTHUDButton alloc] init];
-        [button setImage:[NSImage imageNamed:@"NSPlayTemplate"]];
-        [button setAlternateImage:[NSImage imageNamed:@"NSPauseQTPrivateTemplate"]];
-
-        [[button cell] setShowsStateBy:NSContentsCellMask];
-        [button setBordered:NO];
-        return button;
-    }
-    case MediaUIControl::ExitFullscreenButton: {
-        NSButton *button = [[QTHUDButton alloc] init];
-        [button setImage:[NSImage imageNamed:@"NSExitFullScreenTemplate"]];
-        [button setBordered:NO];
-        return button;
-    }
-    case MediaUIControl::RewindButton: {
-        NSButton *button = [[QTHUDButton alloc] init];
-        [button setImage:[NSImage imageNamed:@"NSRewindTemplate"]];
-        [button setBordered:NO];
-        return button;
-    }
-    case MediaUIControl::FastForwardButton: {
-        NSButton *button = [[QTHUDButton alloc] init];
-        [button setImage:[NSImage imageNamed:@"NSFastForwardTemplate"]];
-        [button setBordered:NO];
-        return button;
-    }
-    case MediaUIControl::VolumeUpButton: {
-        NSButton *button = [[QTHUDButton alloc] init];
-        [button setImage:[NSImage imageNamed:@"NSAudioOutputVolumeHighTemplate"]];
-        [button setBordered:NO];
-        return button;
-    }
-    case MediaUIControl::VolumeDownButton: {
-        NSButton *button = [[QTHUDButton alloc] init];
-        [button setImage:[NSImage imageNamed:@"NSAudioOutputVolumeLowTemplate"]];
-        [button setBordered:NO];
-        return button;
-    }
-    }
-
-    ASSERT_NOT_REACHED();
-    return nil;
-}
-
-static NSControl *createControlWithMediaUIControlType(MediaUIControl controlType, NSRect frame)
-{
-    NSControl *control = createMediaUIControl(controlType);
-    control.frame = frame;
+    NSControl *control = wkCreateMediaUIControl(controlType);
+    [control setFrame:frame];
     return control;
 }
 
@@ -372,21 +285,6 @@
     return textField;
 }
 
-static NSView *createMediaUIBackgroundView()
-{
-    id view = [[QTHUDBackgroundView alloc] init];
-
-    const CGFloat quickTimePlayerHUDHeight = 59;
-    const CGFloat quickTimePlayerHUDContentBorderPosition = 38;
-
-#pragma clang diagnostic push
-#pragma clang diagnostic ignored "-Wdeprecated-declarations"
-    [view setContentBorderPosition:quickTimePlayerHUDContentBorderPosition / quickTimePlayerHUDHeight];
-#pragma clang diagnostic pop
-
-    return view;
-}
-
 - (void)windowDidLoad
 {
     static const CGFloat horizontalMargin = 10;
@@ -412,7 +310,7 @@
     NSWindow *window = [self window];
     ASSERT(window);
 
-    NSView *background = ""
+    NSView *background = ""
 
     [window setContentView:background];
     _area = [[NSTrackingArea alloc] initWithRect:[background bounds] options:NSTrackingMouseEnteredAndExited | NSTrackingActiveAlways owner:self userInfo:nil];
@@ -422,7 +320,7 @@
     NSView *contentView = [window contentView];
 
     CGFloat center = CGFloor((windowWidth - playButtonWidth) / 2);
-    _playButton = (NSButton *)createControlWithMediaUIControlType(MediaUIControl::PlayPauseButton, NSMakeRect(center, windowHeight - playButtonTopMargin - playButtonHeight, playButtonWidth, playButtonHeight));
+    _playButton = (NSButton *)createControlWithMediaUIControlType(wkMediaUIControlPlayPauseButton, NSMakeRect(center, windowHeight - playButtonTopMargin - playButtonHeight, playButtonWidth, playButtonHeight));
     ASSERT([_playButton isKindOfClass:[NSButton class]]);
     [_playButton setTarget:self];
     [_playButton setAction:@selector(togglePlaying:)];
@@ -429,7 +327,7 @@
     [contentView addSubview:_playButton];
 
     CGFloat closeToRight = windowWidth - horizontalMargin - exitFullscreenButtonWidth;
-    NSControl *exitFullscreenButton = createControlWithMediaUIControlType(MediaUIControl::ExitFullscreenButton, NSMakeRect(closeToRight, windowHeight - exitFullscreenButtonTopMargin - exitFullscreenButtonHeight, exitFullscreenButtonWidth, exitFullscreenButtonHeight));
+    NSControl *exitFullscreenButton = createControlWithMediaUIControlType(wkMediaUIControlExitFullscreenButton, NSMakeRect(closeToRight, windowHeight - exitFullscreenButtonTopMargin - exitFullscreenButtonHeight, exitFullscreenButtonWidth, exitFullscreenButtonHeight));
     [exitFullscreenButton setAction:@selector(exitFullscreen:)];
     [exitFullscreenButton setTarget:self];
     [contentView addSubview:exitFullscreenButton];
@@ -437,7 +335,7 @@
     
     CGFloat volumeControlsBottom = windowHeight - volumeControlsTopMargin - volumeButtonHeight;
     CGFloat left = horizontalMargin;
-    NSControl *volumeDownButton = createControlWithMediaUIControlType(MediaUIControl::VolumeDownButton, NSMakeRect(left, volumeControlsBottom, volumeButtonWidth, volumeButtonHeight));
+    NSControl *volumeDownButton = createControlWithMediaUIControlType(wkMediaUIControlVolumeDownButton, NSMakeRect(left, volumeControlsBottom, volumeButtonWidth, volumeButtonHeight));
     [contentView addSubview:volumeDownButton];
     [volumeDownButton setTarget:self];
     [volumeDownButton setAction:@selector(setVolumeToZero:)];
@@ -444,7 +342,7 @@
     [volumeDownButton release];
 
     left += volumeButtonWidth;
-    _volumeSlider = createControlWithMediaUIControlType(MediaUIControl::Slider, NSMakeRect(left, volumeControlsBottom + CGFloor((volumeButtonHeight - volumeSliderHeight) / 2), volumeSliderWidth, volumeSliderHeight));
+    _volumeSlider = createControlWithMediaUIControlType(wkMediaUIControlSlider, NSMakeRect(left, volumeControlsBottom + CGFloor((volumeButtonHeight - volumeSliderHeight) / 2), volumeSliderWidth, volumeSliderHeight));
     [_volumeSlider setValue:[NSNumber numberWithDouble:[self maxVolume]] forKey:@"maxValue"];
     [_volumeSlider setTarget:self];
     [_volumeSlider setAction:@selector(volumeChanged:)];
@@ -451,13 +349,13 @@
     [contentView addSubview:_volumeSlider];
 
     left += volumeSliderWidth + volumeUpButtonLeftMargin;
-    NSControl *volumeUpButton = createControlWithMediaUIControlType(MediaUIControl::VolumeUpButton, NSMakeRect(left, volumeControlsBottom, volumeButtonWidth, volumeButtonHeight));
+    NSControl *volumeUpButton = createControlWithMediaUIControlType(wkMediaUIControlVolumeUpButton, NSMakeRect(left, volumeControlsBottom, volumeButtonWidth, volumeButtonHeight));
     [volumeUpButton setTarget:self];
     [volumeUpButton setAction:@selector(setVolumeToMaximum:)];
     [contentView addSubview:volumeUpButton];
     [volumeUpButton release];
 
-    _timeline = createMediaUIControl(MediaUIControl::Timeline);
+    _timeline = wkCreateMediaUIControl(wkMediaUIControlTimeline);
 
     [_timeline setTarget:self];
     [_timeline setAction:@selector(timelinePositionChanged:)];

Modified: trunk/Source/WebKit/ChangeLog (221793 => 221794)


--- trunk/Source/WebKit/ChangeLog	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebKit/ChangeLog	2017-09-08 19:03:53 UTC (rev 221794)
@@ -1,3 +1,17 @@
+2017-09-08  Commit Queue  <[email protected]>
+
+        Unreviewed, rolling out r221773.
+        https://bugs.webkit.org/show_bug.cgi?id=176614
+
+        This caused build failures. (Requested by mlewis13 on
+        #webkit).
+
+        Reverted changeset:
+
+        "[Mac] Upstream QTKit-related WebKitSystemInterface functions"
+        https://bugs.webkit.org/show_bug.cgi?id=176472
+        http://trac.webkit.org/changeset/221773
+
 2017-09-08  Stephan Szabo  <[email protected]>
 
         [WinCairo] Add Storage Process files for wincairo webkit

Modified: trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebSystemInterface.mm (221793 => 221794)


--- trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebSystemInterface.mm	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebKit/WebProcess/WebCoreSupport/mac/WebSystemInterface.mm	2017-09-08 19:03:53 UTC (rev 221794)
@@ -43,6 +43,18 @@
         INIT(DrawMediaUIPart);
         INIT(HitTestMediaUIPart);
         INIT(MeasureMediaUIPart);
+        INIT(QTIncludeOnlyModernMediaFileTypes);
+        INIT(QTMovieDisableComponent);
+        INIT(QTMovieGetType);
+        INIT(QTMovieHasClosedCaptions);
+        INIT(QTMovieMaxTimeLoaded);
+        INIT(QTMovieMaxTimeLoadedChangeNotification);
+        INIT(QTMovieResolvedURL);
+        INIT(QTMovieSelectPreferredAlternates);
+        INIT(QTMovieSetShowClosedCaptions);
+        INIT(QTGetSitesInMediaDownloadCache);
+        INIT(QTClearMediaDownloadCacheForSite);
+        INIT(QTClearMediaDownloadCache);
 #endif
         INIT(SetCONNECTProxyAuthorizationForStream);
         INIT(SetCONNECTProxyForStream);

Modified: trunk/Source/WebKitLegacy/mac/ChangeLog (221793 => 221794)


--- trunk/Source/WebKitLegacy/mac/ChangeLog	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebKitLegacy/mac/ChangeLog	2017-09-08 19:03:53 UTC (rev 221794)
@@ -1,3 +1,17 @@
+2017-09-08  Commit Queue  <[email protected]>
+
+        Unreviewed, rolling out r221773.
+        https://bugs.webkit.org/show_bug.cgi?id=176614
+
+        This caused build failures. (Requested by mlewis13 on
+        #webkit).
+
+        Reverted changeset:
+
+        "[Mac] Upstream QTKit-related WebKitSystemInterface functions"
+        https://bugs.webkit.org/show_bug.cgi?id=176472
+        http://trac.webkit.org/changeset/221773
+
 2017-09-07  Andy Estes  <[email protected]>
 
         [Mac] Upstream QTKit-related WebKitSystemInterface functions

Modified: trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebSystemInterface.mm (221793 => 221794)


--- trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebSystemInterface.mm	2017-09-08 18:58:24 UTC (rev 221793)
+++ trunk/Source/WebKitLegacy/mac/WebCoreSupport/WebSystemInterface.mm	2017-09-08 19:03:53 UTC (rev 221794)
@@ -49,9 +49,25 @@
     INIT(DrawMediaSliderTrack);
     INIT(HitTestMediaUIPart);
     INIT(MeasureMediaUIPart);
+    INIT(CreateMediaUIBackgroundView);
+    INIT(CreateMediaUIControl);
 #endif
     INIT(SetCONNECTProxyAuthorizationForStream);
     INIT(SetCONNECTProxyForStream);
+#if ENABLE(VIDEO) && !PLATFORM(IOS)
+    INIT(QTIncludeOnlyModernMediaFileTypes);
+    INIT(QTMovieDisableComponent);
+    INIT(QTMovieMaxTimeLoaded);
+    INIT(QTMovieMaxTimeLoadedChangeNotification);
+    INIT(QTMovieGetType);
+    INIT(QTMovieHasClosedCaptions);
+    INIT(QTMovieResolvedURL);
+    INIT(QTMovieSetShowClosedCaptions);
+    INIT(QTMovieSelectPreferredAlternates);
+    INIT(QTGetSitesInMediaDownloadCache);
+    INIT(QTClearMediaDownloadCacheForSite);
+    INIT(QTClearMediaDownloadCache);
+#endif
 
 #if !PLATFORM(IOS)
     INIT(ExecutableWasLinkedOnOrBeforeSnowLeopard);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to