Skip to content
  • jer.noble@apple.com's avatar
    2011-04-19 Jer Noble <jer.noble@apple.com> · e8864857
    jer.noble@apple.com authored
            Reviewed by Daniel Bates.
    
            Full Screen from within an <iframe> does not cause <iframe> to resize.
            https://bugs.webkit.org/show_bug.cgi?id=58638
    
            * fullscreen/full-screen-frameset-expected.txt: Added.
            * fullscreen/full-screen-frameset.html: Added.
            * fullscreen/content/inner.html: Added.
            * fullscreen/full-screen-iframe-allowed-expected.txt: Updated.
            * fullscreen/full-screen-iframe-allowed.html: Add a button with which to trigger
                full screen mode in Safari.
            * fullscreen/full-screen-iframe-not-allowed-expected.txt: Updated.
            * fullscreen/full-screen-iframe-not-allowed.html: Ditto.
            * fullscreen/resources/allowed.html: Added.
            * fullscreen/resources/inner.html: Added.
    2011-04-19  Jer Noble  <jer.noble@apple.com>
    
            Reviewed by Daniel Bates.
    
            Full Screen from within an <iframe> does not cause <iframe> to resize.
            https://bugs.webkit.org/show_bug.cgi?id=58638
    
            Tests: fullscreen/full-screen-frameset.html
    
            * css/CSSStyleSelector.cpp:
            (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Add the
                -webkit-full-screen pseudo class to frame elements which contain
                full screen elements.
            * css/fullscreen.css:
            (iframe:-webkit-full-screen): Add iframe-specific styling rules.
            * dom/Document.cpp:
            (WebCore::Document::setContainsFullScreenElementRecursively): Added.  Walk up each
                successive document owner element, calling setContainsFullScreenElement() if
                owner is a frame element.
            (WebCore::Document::fullScreenIsAllowedForElement): Use the new Element::isFrameElementBase
                call instead of checking the element's tag name.
            (WebCore::Document::webkitWillEnterFullScreenForElement): Mark any containing
                iframes as containing a full screen element.
            (WebCore::Document::webkitWillExitFullScreenForElement): Ditto.
            * dom/Element.h:
            (WebCore::Element::isFrameElementBase): Added.
            * html/HTMLFrameElement.h:
            (WebCore::HTMLFrameElement::allowFullScreen): Disable full screen from within
                HTMLFrameElements.
            * html/HTMLFrameElementBase.cpp:
            (WebCore::HTMLFrameElementBase::setContainsFullScreenElement): Added.
            * html/HTMLFrameElementBase.h:
            (WebCore::HTMLFrameElementBase::containsFullScreenElement): Added.
            (WebCore::HTMLFrameElementBase::isFrameElementBase): Added.
    2011-04-19  Jer Noble  <jer.noble@apple.com>
    
            Reviewed by Daniel Bates.
    
            Full Screen from within an <iframe> does not cause <iframe> to resize.
            https://bugs.webkit.org/show_bug.cgi?id=58638
    
            Tests: fullscreen/full-screen-frameset-allowed.html
                   fullscreen/full-screen-frameset-not-allowed.html
    
            Return the _element's document instead of the WKView's document, which
            will be different in the case of elements within <iframe>s.
    
            * WebView/WebFullScreenController.mm:
            (-[WebFullScreenController _document]):
    2011-04-19  Jer Noble  <jer.noble@apple.com>
    
            Reviewed by Daniel Bates.
    
            Full Screen from within an <iframe> does not cause <iframe> to resize.
            https://bugs.webkit.org/show_bug.cgi?id=58638
    
            Tests: fullscreen/full-screen-frameset-allowed.html
                   fullscreen/full-screen-frameset-not-allowed.html
    
            * UIProcess/mac/WKFullScreenWindowController.mm:
            (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]): Cancel the background animation
                if the full screen animation finishes first.
            * WebProcess/FullScreen/mac/WebFullScreenManagerMac.mm:
            (WebKit::WebFullScreenManagerMac::WebFullScreenManagerMac): m_fullScreenRootLayer was uninitialized.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@84706 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    e8864857