void FullscreenController::enterFullScreenForElement(WebCore::Element* element) { // We are already transitioning to fullscreen for a different element. if (m_provisionalFullScreenElement) { m_provisionalFullScreenElement = element; return; } // We are already in fullscreen mode. if (m_fullScreenFrame) { m_provisionalFullScreenElement = element; willEnterFullScreen(); didEnterFullScreen(); return; } #if USE(NATIVE_FULLSCREEN_VIDEO) if (element && element->isMediaElement()) { HTMLMediaElement* mediaElement = toMediaElement(element); if (mediaElement->player() && mediaElement->player()->canEnterFullscreen()) { mediaElement->player()->enterFullscreen(); m_provisionalFullScreenElement = element; } return; } #endif // We need to transition to fullscreen mode. if (WebViewClient* client = m_webViewImpl->client()) { if (client->enterFullScreen()) m_provisionalFullScreenElement = element; } }
void FullscreenController::enterFullScreenForElement(WebCore::Element* element) { // We are already transitioning to fullscreen for a different element. if (m_provisionalFullScreenElement) { m_provisionalFullScreenElement = element; return; } // We are already in fullscreen mode. if (m_fullScreenFrame) { m_provisionalFullScreenElement = element; willEnterFullScreen(); didEnterFullScreen(); return; } if (RuntimeEnabledFeatures::overlayFullscreenVideoEnabled() && element && element->isMediaElement() // FIXME: There is no embedder-side handling in layout test mode. && !isRunningLayoutTest()) { HTMLMediaElement* mediaElement = toHTMLMediaElement(element); if (mediaElement->player() && mediaElement->player()->canShowFullscreenOverlay()) { mediaElement->player()->showFullscreenOverlay(); m_provisionalFullScreenElement = element; return; } } // We need to transition to fullscreen mode. if (WebViewClient* client = m_webViewImpl->client()) { if (client->enterFullScreen()) m_provisionalFullScreenElement = element; } }
void WebFullScreenManagerProxy::enterFullScreen() { if (!m_webView || m_hasRequestedFullScreen) return; m_hasRequestedFullScreen = true; willEnterFullScreen(); toEwkView(m_webView)->enterFullScreen(); didEnterFullScreen(); }
void FullscreenController::enterFullScreenForElement(WebCore::Element* element) { // We are already transitioning to fullscreen for a different element. if (m_provisionalFullScreenElement) { m_provisionalFullScreenElement = element; return; } // We are already in fullscreen mode. if (m_fullScreenFrame) { m_provisionalFullScreenElement = element; willEnterFullScreen(); didEnterFullScreen(); return; } // We need to transition to fullscreen mode. if (WebViewClient* client = m_webViewImpl->client()) { if (client->enterFullScreen()) m_provisionalFullScreenElement = element; } }