diff options
Diffstat (limited to 'WebKit/mac/WebCoreSupport')
-rw-r--r-- | WebKit/mac/WebCoreSupport/WebChromeClient.h | 1 | ||||
-rw-r--r-- | WebKit/mac/WebCoreSupport/WebChromeClient.mm | 35 | ||||
-rw-r--r-- | WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h | 7 | ||||
-rw-r--r-- | WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm | 10 | ||||
-rw-r--r-- | WebKit/mac/WebCoreSupport/WebInspectorClient.mm | 30 | ||||
-rw-r--r-- | WebKit/mac/WebCoreSupport/WebSecurityOrigin.mm | 8 |
6 files changed, 64 insertions, 27 deletions
diff --git a/WebKit/mac/WebCoreSupport/WebChromeClient.h b/WebKit/mac/WebCoreSupport/WebChromeClient.h index 8649662..05db524 100644 --- a/WebKit/mac/WebCoreSupport/WebChromeClient.h +++ b/WebKit/mac/WebCoreSupport/WebChromeClient.h @@ -164,6 +164,7 @@ public: virtual bool supportsFullscreenForNode(const WebCore::Node*); virtual void enterFullscreenForNode(WebCore::Node*); virtual void exitFullscreenForNode(WebCore::Node*); + virtual void fullScreenRendererChanged(WebCore::RenderBox*); #endif #if ENABLE(FULLSCREEN_API) diff --git a/WebKit/mac/WebCoreSupport/WebChromeClient.mm b/WebKit/mac/WebCoreSupport/WebChromeClient.mm index 965e607..a2c4ee5 100644 --- a/WebKit/mac/WebCoreSupport/WebChromeClient.mm +++ b/WebKit/mac/WebCoreSupport/WebChromeClient.mm @@ -29,6 +29,7 @@ #import "WebChromeClient.h" +#import "DOMElementInternal.h" #import "DOMNodeInternal.h" #import "WebDefaultUIDelegate.h" #import "WebDelegateImplementationCaching.h" @@ -822,21 +823,41 @@ void WebChromeClient::exitFullscreenForNode(Node*) bool WebChromeClient::supportsFullScreenForElement(const Element* element) { - return CallUIDelegateReturningBoolean(false, m_webView, @selector(webView:supportsFullScreenForElement:), kit(const_cast<WebCore::Element*>(element))); + SEL selector = @selector(webView:supportsFullScreenForElement:); + if ([[m_webView UIDelegate] respondsToSelector:selector]) + return CallUIDelegateReturningBoolean(false, m_webView, selector, kit(const_cast<WebCore::Element*>(element))); + return [m_webView _supportsFullScreenForElement:const_cast<WebCore::Element*>(element)]; } void WebChromeClient::enterFullScreenForElement(Element* element) { - WebKitFullScreenListener* listener = [[WebKitFullScreenListener alloc] initWithElement:element]; - CallUIDelegate(m_webView, @selector(webView:enterFullScreenForElement:listener:), kit(element), listener); - [listener release]; + SEL selector = @selector(webView:enterFullScreenForElement:listener:); + if ([[m_webView UIDelegate] respondsToSelector:selector]) { + WebKitFullScreenListener* listener = [[WebKitFullScreenListener alloc] initWithElement:element]; + CallUIDelegate(m_webView, selector, kit(element), listener); + [listener release]; + } else + [m_webView _enterFullScreenForElement:element]; } void WebChromeClient::exitFullScreenForElement(Element* element) { - WebKitFullScreenListener* listener = [[WebKitFullScreenListener alloc] initWithElement:element]; - CallUIDelegate(m_webView, @selector(webView:exitFullScreenForElement:listener:), kit(element), listener); - [listener release]; + SEL selector = @selector(webView:exitFullScreenForElement:listener:); + if ([[m_webView UIDelegate] respondsToSelector:selector]) { + WebKitFullScreenListener* listener = [[WebKitFullScreenListener alloc] initWithElement:element]; + CallUIDelegate(m_webView, selector, kit(element), listener); + [listener release]; + } else + [m_webView _exitFullScreenForElement:element]; +} + +void WebChromeClient::fullScreenRendererChanged(RenderBox* renderer) +{ + SEL selector = @selector(webView:fullScreenRendererChanged:); + if ([[m_webView UIDelegate] respondsToSelector:selector]) + CallUIDelegate(m_webView, selector, (id)renderer); + else + [m_webView _fullScreenRendererChanged:renderer]; } #endif diff --git a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h index 2b3b2cc..9de4246 100644 --- a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h +++ b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.h @@ -175,6 +175,9 @@ private: virtual void transitionToCommittedFromCachedFrame(WebCore::CachedFrame*); virtual void transitionToCommittedForNewPage(); + virtual void didSaveToPageCache(); + virtual void didRestoreFromPageCache(); + virtual void dispatchDidBecomeFrameset(bool); virtual bool canHandleRequest(const WebCore::ResourceRequest&) const; @@ -224,6 +227,10 @@ private: virtual jobject javaApplet(NSView*); #endif +#if PLATFORM(MAC) + virtual RemoteAXObjectRef accessibilityRemoteObject() { return 0; } +#endif + void setOriginalURLForDownload(WebDownload *, const WebCore::ResourceRequest&) const; RetainPtr<WebFramePolicyListener> setUpPolicyListener(WebCore::FramePolicyFunction); diff --git a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm index c8285dc..227d13a 100644 --- a/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm +++ b/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm @@ -1253,6 +1253,14 @@ void WebFrameLoaderClient::transitionToCommittedForNewPage() } } +void WebFrameLoaderClient::didSaveToPageCache() +{ +} + +void WebFrameLoaderClient::didRestoreFromPageCache() +{ +} + void WebFrameLoaderClient::dispatchDidBecomeFrameset(bool) { } @@ -1858,7 +1866,7 @@ PassRefPtr<Widget> WebFrameLoaderClient::createMediaPlayerProxyPlugin(const IntS if (errorCode) { NSError *error = [[NSError alloc] _initWithPluginErrorCode:errorCode - contentURL:URL pluginPageURL:nil pluginName:[pluginPackage name] MIMEType:mimeType]; + contentURL:URL pluginPageURL:nil pluginName:[pluginPackage pluginInfo].name MIMEType:mimeType]; WebNullPluginView *nullView = [[[WebNullPluginView alloc] initWithFrame:NSMakeRect(0, 0, size.width(), size.height()) error:error DOMElement:kit(element)] autorelease]; view = nullView; diff --git a/WebKit/mac/WebCoreSupport/WebInspectorClient.mm b/WebKit/mac/WebCoreSupport/WebInspectorClient.mm index b08c161..5beedcf 100644 --- a/WebKit/mac/WebCoreSupport/WebInspectorClient.mm +++ b/WebKit/mac/WebCoreSupport/WebInspectorClient.mm @@ -69,7 +69,7 @@ using namespace WebCore; - (void)destroyInspectorView:(bool)notifyInspectorController; @end -#pragma mark - +// MARK: - @interface WebNodeHighlighter : NSObject { @private @@ -81,7 +81,7 @@ using namespace WebCore; - (void)hideHighlight; @end -#pragma mark - +// MARK: - WebInspectorClient::WebInspectorClient(WebView *webView) @@ -208,7 +208,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const } -#pragma mark - +// MARK: - @implementation WebInspectorWindowController - (id)init @@ -271,7 +271,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const [super dealloc]; } -#pragma mark - +// MARK: - - (WebView *)webView { @@ -307,7 +307,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const return window; } -#pragma mark - +// MARK: - - (BOOL)windowShouldClose:(id)sender { @@ -385,7 +385,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const } } -#pragma mark - +// MARK: - - (void)attach { @@ -465,8 +465,8 @@ void WebInspectorFrontendClient::updateWindowTitle() const [_webView close]; } -#pragma mark - -#pragma mark WebNodeHighlight delegate +// MARK: - +// MARK: WebNodeHighlight delegate - (void)didAttachWebNodeHighlight:(WebNodeHighlight *)highlight { @@ -478,15 +478,15 @@ void WebInspectorFrontendClient::updateWindowTitle() const [_inspectedWebView setCurrentNodeHighlight:nil]; } -#pragma mark - -#pragma mark UI delegate +// MARK: - +// MARK: UI delegate - (NSUInteger)webView:(WebView *)sender dragDestinationActionMaskForDraggingInfo:(id <NSDraggingInfo>)draggingInfo { return WebDragDestinationActionNone; } -#pragma mark - +// MARK: - // These methods can be used by UI elements such as menu items and toolbar buttons when the inspector is the key window. @@ -534,7 +534,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const @end -#pragma mark - +// MARK: - @implementation WebNodeHighlighter - (id)initWithInspectedWebView:(WebView *)webView @@ -550,7 +550,7 @@ void WebInspectorFrontendClient::updateWindowTitle() const [super dealloc]; } -#pragma mark - +// MARK: - - (void)highlightNode:(DOMNode *)node { @@ -575,8 +575,8 @@ void WebInspectorFrontendClient::updateWindowTitle() const _currentHighlight = nil; } -#pragma mark - -#pragma mark WebNodeHighlight delegate +// MARK: - +// MARK: WebNodeHighlight delegate - (void)didAttachWebNodeHighlight:(WebNodeHighlight *)highlight { diff --git a/WebKit/mac/WebCoreSupport/WebSecurityOrigin.mm b/WebKit/mac/WebCoreSupport/WebSecurityOrigin.mm index f19dcb5..385d869 100644 --- a/WebKit/mac/WebCoreSupport/WebSecurityOrigin.mm +++ b/WebKit/mac/WebCoreSupport/WebSecurityOrigin.mm @@ -124,8 +124,8 @@ using namespace WebCore; @end -#pragma mark - -#pragma mark WebQuotaManagers +// MARK: - +// MARK: WebQuotaManagers @implementation WebSecurityOrigin (WebQuotaManagers) @@ -146,8 +146,8 @@ using namespace WebCore; @end -#pragma mark - -#pragma mark Deprecated +// MARK: - +// MARK: Deprecated // FIXME: The following methods are deprecated and should removed later. // Clients should instead get a WebQuotaManager, and query / set the quota via the Manager. |