Skip to content
  • ggaren's avatar
    LayoutTests: · 31614e2f
    ggaren authored
            Tests for accessing renderer-dependent properties from a javascript: URL.
            
            * fast/frames/frame-js-url-clientWidth-expected.txt: Added.
            * fast/frames/frame-js-url-clientWidth.html: Added.
            * fast/frames/iframe-js-url-clientWidth-expected.txt: Added.
            * fast/frames/iframe-js-url-clientWidth.html: Added.
    
    WebCore:
    
            Reviewed by Darin, John.
    
            - Merged more frame and iframe code
            - Fixed a bug where iframes returned incorrect values for renderer-dependent 
            properties during javascript: loads because they didn't have renderers at 
            load time
            
            PLT insists this is a small performance win. Don't believe its lies.
    
            * bindings/js/kjs_html.cpp:
            (KJS::JSHTMLElement::frameGetter): Renamed frameWidth and frameHeight to
            width and height, for consistency with the rest of the DOM.
            * dom/ContainerNode.cpp:
            (WebCore::ContainerNode::queuePostAttachCallback): Added a post-attach callback
            queue that gets drained after the render tree is fully constructed. Currently,
            this is only used for frame loading.
            (WebCore::ContainerNode::attach):
            * dom/ContainerNode.h:
            * html/HTMLFrameElement.cpp:
            (WebCore::HTMLFrameElement::insertedIntoDocument): Removed frame loading from
            attach() because loading iframes during attach() causes a crash. 
            Moved frame loading logic into insertedIntoDocument(). That's a more 
            logical place for it because  document insertion is what 
            triggers frame loading. Made frame loading a post-attach callback, instead
            of an immediate action, to fix the incorrect values bug.
            (WebCore::HTMLFrameElement::attach): Added setWidget call that used to be
            in HTMLIFrameElement::attach. IFRAME requires this call. FRAME will soon 
            require this call, once I remove the call from WebKit.
            (WebCore::HTMLFrameElement::setLocation):
            (WebCore::HTMLFrameElement::width):
            (WebCore::HTMLFrameElement::height):
            * html/HTMLFrameElement.h: Made openURL non-virtual to avoid the unnecessary
            killing of puppies.
            * html/HTMLIFrameElement.cpp: Merged code into HTMLFrameElement
            (WebCore::HTMLIFrameElement::rendererIsNeeded):
            (WebCore::HTMLIFrameElement::createRenderer):
            (WebCore::HTMLIFrameElement::insertedIntoDocument):
            (WebCore::HTMLIFrameElement::removedFromDocument):
            (WebCore::HTMLIFrameElement::attach):
            * page/FrameView.h: Removed unused method.
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@17040 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    31614e2f