Diff
Modified: trunk/Source/WebCore/ChangeLog (215273 => 215274)
--- trunk/Source/WebCore/ChangeLog 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebCore/ChangeLog 2017-04-12 18:38:09 UTC (rev 215274)
@@ -1,3 +1,39 @@
+2017-04-12 Beth Dakin <[email protected]>
+
+ Adopt AVKit name change from AVFunctionBar* to AVTouchBar*
+ https://bugs.webkit.org/show_bug.cgi?id=170693
+ -and corresponding-
+ rdar://problem/31230018
+
+ Reviewed by San Weinig.
+
+ Since the new names only apply to some versions of macOS, this patch uses typedefs
+ for the older OS’s. SO:
+
+ AVFunctionBarScrubber is now AVTouchBarScrubber
+
+ AVFunctionBarPlaybackControlsProvider is now AVTouchBarPlaybackControlsProvider
+
+ AVFunctionBarMediaSelectionOption is now AVTouchBarMediaSelectionOption
+
+ And the protocol AVFunctionBarPlaybackControlsControlling is now
+ AVTouchBarPlaybackControlsControlling
+
+ * platform/mac/WebPlaybackControlsManager.h:
+ * platform/mac/WebPlaybackControlsManager.mm:
+ (-[WebPlaybackControlsManager audioFunctionBarMediaSelectionOptions]):
+ (-[WebPlaybackControlsManager setAudioFunctionBarMediaSelectionOptions:]):
+ (-[WebPlaybackControlsManager currentAudioFunctionBarMediaSelectionOption]):
+ (-[WebPlaybackControlsManager setCurrentAudioFunctionBarMediaSelectionOption:]):
+ (-[WebPlaybackControlsManager legibleFunctionBarMediaSelectionOptions]):
+ (-[WebPlaybackControlsManager setLegibleFunctionBarMediaSelectionOptions:]):
+ (-[WebPlaybackControlsManager currentLegibleFunctionBarMediaSelectionOption]):
+ (-[WebPlaybackControlsManager setCurrentLegibleFunctionBarMediaSelectionOption:]):
+ (mediaSelectionOptions):
+
+ Here is where the typedefs and #define are declared.
+ * platform/spi/cocoa/AVKitSPI.h:
+
2017-04-12 Alex Christensen <[email protected]>
Fix WinCairo build after r215265
Modified: trunk/Source/WebCore/platform/mac/WebPlaybackControlsManager.h (215273 => 215274)
--- trunk/Source/WebCore/platform/mac/WebPlaybackControlsManager.h 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebCore/platform/mac/WebPlaybackControlsManager.h 2017-04-12 18:38:09 UTC (rev 215274)
@@ -39,7 +39,7 @@
#if ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
WEBCORE_EXPORT
-@interface WebPlaybackControlsManager : NSObject <AVFunctionBarPlaybackControlsControlling> {
+@interface WebPlaybackControlsManager : NSObject <AVTouchBarPlaybackControlsControlling> {
NSTimeInterval _contentDuration;
RetainPtr<AVValueTiming> _timing;
NSTimeInterval _seekToTime;
@@ -46,10 +46,10 @@
RetainPtr<NSArray> _seekableTimeRanges;
BOOL _hasEnabledAudio;
BOOL _hasEnabledVideo;
- RetainPtr<NSArray<AVFunctionBarMediaSelectionOption *>> _audioFunctionBarMediaSelectionOptions;
- RetainPtr<AVFunctionBarMediaSelectionOption> _currentAudioFunctionBarMediaSelectionOption;
- RetainPtr<NSArray<AVFunctionBarMediaSelectionOption *>> _legibleFunctionBarMediaSelectionOptions;
- RetainPtr<AVFunctionBarMediaSelectionOption> _currentLegibleFunctionBarMediaSelectionOption;
+ RetainPtr<NSArray<AVTouchBarMediaSelectionOption *>> _audioFunctionBarMediaSelectionOptions;
+ RetainPtr<AVTouchBarMediaSelectionOption> _currentAudioFunctionBarMediaSelectionOption;
+ RetainPtr<NSArray<AVTouchBarMediaSelectionOption *>> _legibleFunctionBarMediaSelectionOptions;
+ RetainPtr<AVTouchBarMediaSelectionOption> _currentLegibleFunctionBarMediaSelectionOption;
float _rate;
BOOL _canTogglePlayback;
@@ -69,10 +69,10 @@
@property (nonatomic) float rate;
-- (AVFunctionBarMediaSelectionOption *)currentAudioFunctionBarMediaSelectionOption;
-- (void)setCurrentAudioFunctionBarMediaSelectionOption:(AVFunctionBarMediaSelectionOption *)option;
-- (AVFunctionBarMediaSelectionOption *)currentLegibleFunctionBarMediaSelectionOption;
-- (void)setCurrentLegibleFunctionBarMediaSelectionOption:(AVFunctionBarMediaSelectionOption *)option;
+- (AVTouchBarMediaSelectionOption *)currentAudioFunctionBarMediaSelectionOption;
+- (void)setCurrentAudioFunctionBarMediaSelectionOption:(AVTouchBarMediaSelectionOption *)option;
+- (AVTouchBarMediaSelectionOption *)currentLegibleFunctionBarMediaSelectionOption;
+- (void)setCurrentLegibleFunctionBarMediaSelectionOption:(AVTouchBarMediaSelectionOption *)option;
- (void)setAudioMediaSelectionOptions:(const Vector<WTF::String>&)options withSelectedIndex:(NSUInteger)selectedIndex;
- (void)setLegibleMediaSelectionOptions:(const Vector<WTF::String>&)options withSelectedIndex:(NSUInteger)selectedIndex;
@end
Modified: trunk/Source/WebCore/platform/mac/WebPlaybackControlsManager.mm (215273 => 215274)
--- trunk/Source/WebCore/platform/mac/WebPlaybackControlsManager.mm 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebCore/platform/mac/WebPlaybackControlsManager.mm 2017-04-12 18:38:09 UTC (rev 215274)
@@ -36,7 +36,11 @@
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wnullability-completeness"
SOFT_LINK_FRAMEWORK(AVKit)
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+SOFT_LINK_CLASS_OPTIONAL(AVKit, AVTouchBarMediaSelectionOption)
+#else
SOFT_LINK_CLASS_OPTIONAL(AVKit, AVFunctionBarMediaSelectionOption)
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
@implementation WebPlaybackControlsManager
@@ -121,22 +125,22 @@
_webPlaybackSessionInterfaceMac->endScrubbing();
}
-- (NSArray<AVFunctionBarMediaSelectionOption *> *)audioFunctionBarMediaSelectionOptions
+- (NSArray<AVTouchBarMediaSelectionOption *> *)audioFunctionBarMediaSelectionOptions
{
return _audioFunctionBarMediaSelectionOptions.get();
}
-- (void)setAudioFunctionBarMediaSelectionOptions:(NSArray<AVFunctionBarMediaSelectionOption *> *)audioOptions
+- (void)setAudioFunctionBarMediaSelectionOptions:(NSArray<AVTouchBarMediaSelectionOption *> *)audioOptions
{
_audioFunctionBarMediaSelectionOptions = audioOptions;
}
-- (AVFunctionBarMediaSelectionOption *)currentAudioFunctionBarMediaSelectionOption
+- (AVTouchBarMediaSelectionOption *)currentAudioFunctionBarMediaSelectionOption
{
return _currentAudioFunctionBarMediaSelectionOption.get();
}
-- (void)setCurrentAudioFunctionBarMediaSelectionOption:(AVFunctionBarMediaSelectionOption *)audioMediaSelectionOption
+- (void)setCurrentAudioFunctionBarMediaSelectionOption:(AVTouchBarMediaSelectionOption *)audioMediaSelectionOption
{
if (audioMediaSelectionOption == _currentAudioFunctionBarMediaSelectionOption)
return;
@@ -151,22 +155,22 @@
_webPlaybackSessionInterfaceMac->webPlaybackSessionModel()->selectAudioMediaOption(index != NSNotFound ? index : UINT64_MAX);
}
-- (NSArray<AVFunctionBarMediaSelectionOption *> *)legibleFunctionBarMediaSelectionOptions
+- (NSArray<AVTouchBarMediaSelectionOption *> *)legibleFunctionBarMediaSelectionOptions
{
return _legibleFunctionBarMediaSelectionOptions.get();
}
-- (void)setLegibleFunctionBarMediaSelectionOptions:(NSArray<AVFunctionBarMediaSelectionOption *> *)legibleOptions
+- (void)setLegibleFunctionBarMediaSelectionOptions:(NSArray<AVTouchBarMediaSelectionOption *> *)legibleOptions
{
_legibleFunctionBarMediaSelectionOptions = legibleOptions;
}
-- (AVFunctionBarMediaSelectionOption *)currentLegibleFunctionBarMediaSelectionOption
+- (AVTouchBarMediaSelectionOption *)currentLegibleFunctionBarMediaSelectionOption
{
return _currentLegibleFunctionBarMediaSelectionOption.get();
}
-- (void)setCurrentLegibleFunctionBarMediaSelectionOption:(AVFunctionBarMediaSelectionOption *)legibleMediaSelectionOption
+- (void)setCurrentLegibleFunctionBarMediaSelectionOption:(AVTouchBarMediaSelectionOption *)legibleMediaSelectionOption
{
if (legibleMediaSelectionOption == _currentLegibleFunctionBarMediaSelectionOption)
return;
@@ -185,7 +189,11 @@
{
RetainPtr<NSMutableArray> webOptions = adoptNS([[NSMutableArray alloc] initWithCapacity:options.size()]);
for (auto& name : options) {
- if (RetainPtr<AVFunctionBarMediaSelectionOption> webOption = adoptNS([allocAVFunctionBarMediaSelectionOptionInstance() initWithTitle:name]))
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+ if (RetainPtr<AVTouchBarMediaSelectionOption> webOption = adoptNS([allocAVTouchBarMediaSelectionOptionInstance() initWithTitle:name type:AVTouchBarMediaSelectionOptionTypeRegular]))
+#else
+ if (RetainPtr<AVTouchBarMediaSelectionOption> webOption = adoptNS([allocAVFunctionBarMediaSelectionOptionInstance() initWithTitle:name]))
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
[webOptions addObject:webOption.get()];
}
return webOptions;
Modified: trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h (215273 => 215274)
--- trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebCore/platform/spi/cocoa/AVKitSPI.h 2017-04-12 18:38:09 UTC (rev 215274)
@@ -153,14 +153,30 @@
#if PLATFORM(MAC) && ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
+OBJC_CLASS AVFunctionBarPlaybackControlsProvider;
+OBJC_CLASS AVFunctionBarScrubber;
+OBJC_CLASS AVFunctionBarMediaSelectionOption;
+
+#if __MAC_OS_X_VERSION_MIN_REQUIRED < 101300
+typedef AVFunctionBarMediaSelectionOption AVTouchBarMediaSelectionOption;
+typedef AVFunctionBarPlaybackControlsProvider AVTouchBarPlaybackControlsProvider;
+typedef AVFunctionBarScrubber AVTouchBarScrubber;
+#define AVTouchBarPlaybackControlsControlling AVFunctionBarPlaybackControlsControlling
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED < 101300
+
#if USE(APPLE_INTERNAL_SDK)
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+#import <AVKit/AVTouchBarPlaybackControlsProvider.h>
+#import <AVKit/AVTouchBarScrubber.h>
+#else
#import <AVKit/AVFunctionBarPlaybackControlsProvider.h>
#import <AVKit/AVFunctionBarScrubber.h>
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
#else
NS_ASSUME_NONNULL_BEGIN
-@protocol AVFunctionBarPlaybackControlsControlling <NSObject>
+@protocol AVTouchBarPlaybackControlsControlling <NSObject>
@property (readonly) NSTimeInterval contentDuration;
@property (readonly, nullable) AVValueTiming *timing;
@property (readonly, getter=isSeeking) BOOL seeking;
@@ -170,16 +186,15 @@
@property (readonly) BOOL hasEnabledVideo;
@end
-@interface AVFunctionBarPlaybackControlsProvider : NSResponder
+@interface AVTouchBarPlaybackControlsProvider : NSResponder
@property (strong, readonly, nullable) NSTouchBar *touchBar;
-@property (assign, nullable) id<AVFunctionBarPlaybackControlsControlling> playbackControlsController;
+@property (assign, nullable) id<AVTouchBarPlaybackControlsControlling> playbackControlsController;
@end
-@interface AVFunctionBarScrubber : NSView
-@property (assign, nullable) id<AVFunctionBarPlaybackControlsControlling> playbackControlsController;
+@interface AVTouchBarScrubber : NSView
+@property (assign, nullable) id<AVTouchBarPlaybackControlsControlling> playbackControlsController;
@end
-@class AVFunctionBarMediaSelectionOption;
@class AVThumbnail;
NS_ASSUME_NONNULL_END
Modified: trunk/Source/WebKit/mac/ChangeLog (215273 => 215274)
--- trunk/Source/WebKit/mac/ChangeLog 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit/mac/ChangeLog 2017-04-12 18:38:09 UTC (rev 215274)
@@ -1,3 +1,29 @@
+2017-04-12 Beth Dakin <[email protected]>
+
+ Adopt AVKit name change from AVFunctionBar* to AVTouchBar*
+ https://bugs.webkit.org/show_bug.cgi?id=170693
+ -and corresponding-
+ rdar://problem/31230018
+
+ Reviewed by Sam Weinig.
+
+ Since the new names only apply to some versions of macOS, this patch uses typedefs
+ for the older OS’s. SO:
+
+ AVFunctionBarScrubber is now AVTouchBarScrubber
+
+ AVFunctionBarPlaybackControlsProvider is now AVTouchBarPlaybackControlsProvider
+
+ AVFunctionBarMediaSelectionOption is now AVTouchBarMediaSelectionOption
+
+ And the protocol AVFunctionBarPlaybackControlsControlling is now
+ AVTouchBarPlaybackControlsControlling
+
+ Soft links and allocations cannot use the typedefs.
+ * WebView/WebView.mm:
+ (-[WebView updateMediaTouchBar]):
+ * WebView/WebViewData.h:
+
2017-04-11 Dean Jackson <[email protected]>
Disable outdated WritableStream API
Modified: trunk/Source/WebKit/mac/WebView/WebView.mm (215273 => 215274)
--- trunk/Source/WebKit/mac/WebView/WebView.mm 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit/mac/WebView/WebView.mm 2017-04-12 18:38:09 UTC (rev 215274)
@@ -336,8 +336,13 @@
#if HAVE(TOUCH_BAR) && ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
SOFT_LINK_FRAMEWORK(AVKit)
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+SOFT_LINK_CLASS(AVKit, AVTouchBarPlaybackControlsProvider)
+SOFT_LINK_CLASS(AVKit, AVTouchBarScrubber)
+#else
SOFT_LINK_CLASS(AVKit, AVFunctionBarPlaybackControlsProvider)
SOFT_LINK_CLASS(AVKit, AVFunctionBarScrubber)
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
#endif // HAVE(TOUCH_BAR) && ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
#if PLATFORM(MAC)
@@ -9794,14 +9799,19 @@
- (void)updateMediaTouchBar
{
#if ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER) && ENABLE(VIDEO_PRESENTATION_MODE)
- if (!_private->mediaTouchBarProvider)
+ if (!_private->mediaTouchBarProvider) {
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+ _private->mediaTouchBarProvider = adoptNS([allocAVTouchBarPlaybackControlsProviderInstance() init]);
+#else
_private->mediaTouchBarProvider = adoptNS([allocAVFunctionBarPlaybackControlsProviderInstance() init]);
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+ }
if (![_private->mediaTouchBarProvider playbackControlsController]) {
ASSERT(_private->playbackSessionInterface);
WebPlaybackControlsManager *manager = _private->playbackSessionInterface->playBackControlsManager();
- [_private->mediaTouchBarProvider setPlaybackControlsController:(id <AVFunctionBarPlaybackControlsControlling>)manager];
- [_private->mediaPlaybackControlsView setPlaybackControlsController:(id <AVFunctionBarPlaybackControlsControlling>)manager];
+ [_private->mediaTouchBarProvider setPlaybackControlsController:(id <AVTouchBarPlaybackControlsControlling>)manager];
+ [_private->mediaPlaybackControlsView setPlaybackControlsController:(id <AVTouchBarPlaybackControlsControlling>)manager];
}
#endif
}
Modified: trunk/Source/WebKit/mac/WebView/WebViewData.h (215273 => 215274)
--- trunk/Source/WebKit/mac/WebView/WebViewData.h 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit/mac/WebView/WebViewData.h 2017-04-12 18:38:09 UTC (rev 215274)
@@ -29,6 +29,7 @@
#import "WebTypesInternal.h"
#import "WebDelegateImplementationCaching.h"
+#import <WebCore/AVKitSPI.h>
#import <WebCore/AlternativeTextClient.h>
#import <WebCore/LayerFlushScheduler.h>
#import <WebCore/LayerFlushSchedulerClient.h>
@@ -106,8 +107,6 @@
#if HAVE(TOUCH_BAR)
@class WebTextTouchBarItemController;
-@class AVFunctionBarPlaybackControlsProvider;
-@class AVFunctionBarScrubber;
#endif
class WebViewLayerFlushScheduler : public WebCore::LayerFlushScheduler {
@@ -192,8 +191,8 @@
RetainPtr<NSCandidateListTouchBarItem> _richTextCandidateListTouchBarItem;
RetainPtr<NSCandidateListTouchBarItem> _plainTextCandidateListTouchBarItem;
RetainPtr<NSCandidateListTouchBarItem> _passwordTextCandidateListTouchBarItem;
- RetainPtr<AVFunctionBarPlaybackControlsProvider> mediaTouchBarProvider;
- RetainPtr<AVFunctionBarScrubber> mediaPlaybackControlsView;
+ RetainPtr<AVTouchBarPlaybackControlsProvider> mediaTouchBarProvider;
+ RetainPtr<AVTouchBarScrubber> mediaPlaybackControlsView;
BOOL _canCreateTouchBars;
BOOL _isUpdatingTextTouchBar;
Modified: trunk/Source/WebKit2/ChangeLog (215273 => 215274)
--- trunk/Source/WebKit2/ChangeLog 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit2/ChangeLog 2017-04-12 18:38:09 UTC (rev 215274)
@@ -1,3 +1,40 @@
+2017-04-12 Beth Dakin <[email protected]>
+
+ Adopt AVKit name change from AVFunctionBar* to AVTouchBar*
+ https://bugs.webkit.org/show_bug.cgi?id=170693
+ -and corresponding-
+ rdar://problem/31230018
+
+ Reviewed by Sam Weinig.
+
+ Since the new names only apply to some versions of macOS, this patch uses typedefs
+ for the older OS’s. SO:
+
+ AVFunctionBarScrubber is now AVTouchBarScrubber
+
+ AVFunctionBarPlaybackControlsProvider is now AVTouchBarPlaybackControlsProvider
+
+ AVFunctionBarMediaSelectionOption is now AVTouchBarMediaSelectionOption
+
+ And the protocol AVFunctionBarPlaybackControlsControlling is now
+ AVTouchBarPlaybackControlsControlling
+
+ Use the new name.
+ * UIProcess/API/Cocoa/WKViewPrivate.h:
+ * UIProcess/API/Cocoa/WKWebView.mm:
+ (-[WKWebView _mediaPlaybackControlsView]):
+ (-[WKWebView _addMediaPlaybackControlsView:]):
+ * UIProcess/API/Cocoa/WKWebViewPrivate.h:
+ * UIProcess/API/mac/WKView.mm:
+ (-[WKView _mediaPlaybackControlsView]):
+ (-[WKView _addMediaPlaybackControlsView:]):
+ * UIProcess/Cocoa/WebViewImpl.h:
+
+ Soft links and allocations cannot use the typedefs.
+ * UIProcess/Cocoa/WebViewImpl.mm:
+ (WebKit::WebViewImpl::mediaPlaybackControlsView):
+ (WebKit::WebViewImpl::updateMediaTouchBar):
+
2017-04-12 Eric Carlson <[email protected]>
[MediaStream] Audio source in UI process not identified as capture source
Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKViewPrivate.h (215273 => 215274)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKViewPrivate.h 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKViewPrivate.h 2017-04-12 18:38:09 UTC (rev 215274)
@@ -31,7 +31,7 @@
#import <WebKit/WKView.h>
#import <WebKit/_WKOverlayScrollbarStyle.h>
-@class AVFunctionBarScrubber;
+@class AVTouchBarScrubber;
@interface WKView (Private)
@@ -135,8 +135,8 @@
- (void)_gestureEventWasNotHandledByWebCore:(NSEvent *)event;
@property (nonatomic, readwrite, setter=_setWantsMediaPlaybackControlsView:) BOOL _wantsMediaPlaybackControlsView;
-@property (nonatomic, readonly) AVFunctionBarScrubber *_mediaPlaybackControlsView;
-- (void)_addMediaPlaybackControlsView:(AVFunctionBarScrubber *)mediaPlaybackControlsView;
+@property (nonatomic, readonly) AVTouchBarScrubber *_mediaPlaybackControlsView;
+- (void)_addMediaPlaybackControlsView:(AVTouchBarScrubber *)mediaPlaybackControlsView;
- (void)_removeMediaPlaybackControlsView;
@end
Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (215273 => 215274)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2017-04-12 18:38:09 UTC (rev 215274)
@@ -5005,7 +5005,7 @@
#endif
}
-- (AVFunctionBarScrubber *)_mediaPlaybackControlsView
+- (AVTouchBarScrubber *)_mediaPlaybackControlsView
{
#if HAVE(TOUCH_BAR)
return _impl->clientWantsMediaPlaybackControlsView() ? _impl->mediaPlaybackControlsView() : nil;
@@ -5015,7 +5015,7 @@
}
// This method is for subclasses to override.
-- (void)_addMediaPlaybackControlsView:(AVFunctionBarScrubber *)mediaPlaybackControlsView
+- (void)_addMediaPlaybackControlsView:(AVTouchBarScrubber *)mediaPlaybackControlsView
{
}
Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h (215273 => 215274)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h 2017-04-12 18:38:09 UTC (rev 215274)
@@ -60,7 +60,7 @@
#endif
-@class AVFunctionBarScrubber;
+@class AVTouchBarScrubber;
@class WKBrowsingContextHandle;
@class _WKFrameHandle;
@class _WKHitTestResult;
@@ -223,8 +223,8 @@
// FIXME: This SPI should become a part of the WKUIDelegate. rdar://problem/26561537
@property (nonatomic, readwrite, setter=_setWantsMediaPlaybackControlsView:) BOOL _wantsMediaPlaybackControlsView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
-@property (nonatomic, readonly) AVFunctionBarScrubber *_mediaPlaybackControlsView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
-- (void)_addMediaPlaybackControlsView:(AVFunctionBarScrubber *)mediaPlaybackControlsView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
+@property (nonatomic, readonly) AVTouchBarScrubber *_mediaPlaybackControlsView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
+- (void)_addMediaPlaybackControlsView:(AVTouchBarScrubber *)mediaPlaybackControlsView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
- (void)_removeMediaPlaybackControlsView WK_API_AVAILABLE(macosx(WK_MAC_TBA));
- (void)_prepareForMoveToWindow:(NSWindow *)targetWindow completionHandler:(void(^)(void))completionHandler;
Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm (215273 => 215274)
--- trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm 2017-04-12 18:38:09 UTC (rev 215274)
@@ -42,6 +42,7 @@
#import "WebProcessPool.h"
#import "WebViewImpl.h"
#import "_WKLinkIconParametersInternal.h"
+#import <WebCore/AVKitSPI.h>
#import <wtf/BlockPtr.h>
using namespace WebKit;
@@ -1572,7 +1573,7 @@
#endif
}
-- (AVFunctionBarScrubber *)_mediaPlaybackControlsView
+- (AVTouchBarScrubber *)_mediaPlaybackControlsView
{
#if HAVE(TOUCH_BAR)
return _data->_impl->clientWantsMediaPlaybackControlsView() ? _data->_impl->mediaPlaybackControlsView() : nil;
@@ -1582,7 +1583,7 @@
}
// This method is for subclasses to override.
-- (void)_addMediaPlaybackControlsView:(AVFunctionBarScrubber *)mediaPlaybackControlsView
+- (void)_addMediaPlaybackControlsView:(AVTouchBarScrubber *)mediaPlaybackControlsView
{
}
Modified: trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h (215273 => 215274)
--- trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.h 2017-04-12 18:38:09 UTC (rev 215274)
@@ -33,6 +33,7 @@
#include "WKLayoutMode.h"
#include "WebPageProxy.h"
#include "_WKOverlayScrollbarStyle.h"
+#include <WebCore/AVKitSPI.h>
#include <WebCore/TextIndicatorWindow.h>
#include <WebCore/UserInterfaceLayoutDirection.h>
#include <functional>
@@ -55,8 +56,6 @@
OBJC_CLASS _WKThumbnailView;
#if HAVE(TOUCH_BAR)
-OBJC_CLASS AVFunctionBarPlaybackControlsProvider;
-OBJC_CLASS AVFunctionBarScrubber;
OBJC_CLASS NSCandidateListTouchBarItem;
OBJC_CLASS NSCustomTouchBarItem;
OBJC_CLASS NSTouchBar;
@@ -516,7 +515,7 @@
void updateTouchBar();
NSTouchBar *currentTouchBar() const { return m_currentTouchBar.get(); }
NSCandidateListTouchBarItem *candidateListTouchBarItem() const;
- AVFunctionBarScrubber *mediaPlaybackControlsView() const;
+ AVTouchBarScrubber *mediaPlaybackControlsView() const;
NSTouchBar *textTouchBar() const;
void dismissTextTouchBarPopoverItemWithIdentifier(NSString *);
@@ -554,8 +553,8 @@
RetainPtr<NSCustomTouchBarItem> m_exitFullScreenButton;
#if ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
- RetainPtr<AVFunctionBarPlaybackControlsProvider> m_mediaTouchBarProvider;
- RetainPtr<AVFunctionBarScrubber> m_mediaPlaybackControlsView;
+ RetainPtr<AVTouchBarPlaybackControlsProvider> m_mediaTouchBarProvider;
+ RetainPtr<AVTouchBarScrubber> m_mediaPlaybackControlsView;
#endif // ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
#endif // HAVE(TOUCH_BAR)
Modified: trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm (215273 => 215274)
--- trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm 2017-04-12 18:10:43 UTC (rev 215273)
+++ trunk/Source/WebKit2/UIProcess/Cocoa/WebViewImpl.mm 2017-04-12 18:38:09 UTC (rev 215274)
@@ -67,7 +67,6 @@
#import "_WKRemoteObjectRegistryInternal.h"
#import "_WKThumbnailViewInternal.h"
#import <HIToolbox/CarbonEventsCore.h>
-#import <WebCore/AVKitSPI.h>
#import <WebCore/AXObjectCache.h>
#import <WebCore/ActivityState.h>
#import <WebCore/ColorMac.h>
@@ -102,8 +101,13 @@
#if HAVE(TOUCH_BAR) && ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
SOFT_LINK_FRAMEWORK(AVKit)
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+SOFT_LINK_CLASS(AVKit, AVTouchBarPlaybackControlsProvider)
+SOFT_LINK_CLASS(AVKit, AVTouchBarScrubber)
+#else
SOFT_LINK_CLASS(AVKit, AVFunctionBarPlaybackControlsProvider)
SOFT_LINK_CLASS(AVKit, AVFunctionBarScrubber)
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
static NSString * const WKMediaExitFullScreenItem = @"WKMediaExitFullScreenItem";
#endif // HAVE(TOUCH_BAR) && ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
@@ -902,7 +906,7 @@
return isRichlyEditable() ? m_richTextCandidateListTouchBarItem.get() : m_plainTextCandidateListTouchBarItem.get();
}
-AVFunctionBarScrubber *WebViewImpl::mediaPlaybackControlsView() const
+AVTouchBarScrubber *WebViewImpl::mediaPlaybackControlsView() const
{
#if ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER)
if (m_page->hasActiveVideoForControlsManager())
@@ -1125,11 +1129,21 @@
void WebViewImpl::updateMediaTouchBar()
{
#if ENABLE(WEB_PLAYBACK_CONTROLS_MANAGER) && ENABLE(VIDEO_PRESENTATION_MODE)
- if (!m_mediaTouchBarProvider)
+ if (!m_mediaTouchBarProvider) {
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+ m_mediaTouchBarProvider = adoptNS([allocAVTouchBarPlaybackControlsProviderInstance() init]);
+#else
m_mediaTouchBarProvider = adoptNS([allocAVFunctionBarPlaybackControlsProviderInstance() init]);
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+ }
- if (!m_mediaPlaybackControlsView)
+ if (!m_mediaPlaybackControlsView) {
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+ m_mediaPlaybackControlsView = adoptNS([allocAVTouchBarScrubberInstance() init]);
+#else
m_mediaPlaybackControlsView = adoptNS([allocAVFunctionBarScrubberInstance() init]);
+#endif // __MAC_OS_X_VERSION_MIN_REQUIRED >= 101300
+ }
if (!m_playbackControlsManager)
m_playbackControlsManager = adoptNS([[WebPlaybackControlsManager alloc] init]);