1. 08 Jul, 2006 1 commit
    • mjs's avatar
      Reviewed by Darin, tweaked slightly and landed by Maciej. · 965a62f1
      mjs authored
              http://bugzilla.opendarwin.org/show_bug.cgi?id=9787
              fast/frames tests failing (bad pointer to owner element) under MallocScribble
              
              * html/HTMLFrameElement.cpp:
              (WebCore::HTMLFrameElement::close):
              Disconnect the owner element of our frame.
              
              * html/HTMLIFrameElement.cpp:
              (WebCore::HTMLIFrameElement::attach):
              Don't call setFrame here.
              
              * html/HTMLPlugInElement.cpp:
              (WebCore::HTMLPlugInElement::detach):
              Disconnect the owner element of our frame.
      
              * html/HTMLPlugInElement.h:
              (WebCore::HTMLPlugInElement::setFrameName):        
              New function.
              
              * page/Frame.cpp:
              (WebCore::Frame::Frame):
              Don't call setFrame.
              
              (WebCore::Frame::~Frame):
              Null out the owner element.
              
              (WebCore::Frame::requestObject):
              When an object creates a child frame, assign it a name so it can be
              accessed from HTMLPlugInElement.
              
              * rendering/RenderPart.cpp:
              (WebCore::RenderPart::RenderPart):
              (WebCore::RenderPart::~RenderPart):
              * rendering/RenderPart.h:
              Get rid of setFrame.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15240 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      965a62f1
  2. 05 Jul, 2006 1 commit
    • andersca's avatar
      WebCore: · 3a434621
      andersca authored
      2006-07-05  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Maciej.
      
              http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
              iFrames set to display:none are Missing from frames array
      
              * bridge/mac/FrameMac.h:
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::FrameMac):
              (WebCore::FrameMac::createFrame):
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
              (-[WebCoreFrameBridge installInFrame:]):
              Modify to pass the owner element instead of the owner renderer.        
      
              * dom/ContainerNode.cpp:
              (WebCore::ContainerNode::insertBefore):
              (WebCore::ContainerNode::replaceChild):
              (WebCore::ContainerNode::appendChild):
              Dispatch the node inserted events before attaching the nodes. This is what the
              tokenizer does.
              
              * html/HTMLFrameElement.cpp:
              (WebCore::HTMLFrameElement::openURL):
              (WebCore::HTMLFrameElement::attach):
              Pass the element to requestFrame.
              
              (WebCore::HTMLFrameElement::setLocation):
              Don't call attach/detach on an iframe.
      
              * html/HTMLIFrameElement.cpp:
              (WebCore::HTMLIFrameElement::insertedIntoDocument):
              Load the frame here (using openURL).
              
              (WebCore::HTMLIFrameElement::removedFromDocument):
              Call frameDetached.
              
              (WebCore::HTMLIFrameElement::attach):
              If there's a renderer, attach the content frame to it.
              
              (WebCore::HTMLIFrameElement::detach):
              Reset the renderer's frame.
              
              (WebCore::HTMLIFrameElement::openURL):
              Modify to request the frame.
              
              * html/HTMLIFrameElement.h:
              Add detach.
              
              * page/Frame.cpp:
              (WebCore::parentFromOwnerElement):
              (WebCore::Frame::Frame):
              (WebCore::Frame::~Frame):
              (WebCore::Frame::requestFrame):
              (WebCore::Frame::requestObject):
              (WebCore::Frame::loadSubframe):
              (WebCore::Frame::ownerElement):
              (WebCore::Frame::ownerRenderer):
              (WebCore::Frame::disconnectOwnerElement):
              * page/Frame.h:
              * page/FramePrivate.h:
              (WebCore::FramePrivate::FramePrivate):        
              * rendering/RenderPart.cpp:
              (WebCore::RenderPart::setFrame):
              Modify to keep an owner element around instead of the renderer. 
              
              * rendering/RenderPartObject.cpp:
              (WebCore::RenderPartObject::updateWidget):
              Don't do anything for iframes.
      
      WebKit:
      
      2006-07-05  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Maciej.
      
              http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
              iFrames set to display:none are Missing from frames array
              
              * WebCoreSupport/WebFrameBridge.m:
              (-[WebFrameBridge initSubframeWithOwnerElement:frameName:view:]):
              (-[WebFrameBridge createChildFrameNamed:withURL:referrer:ownerElement:allowsScrolling:marginWidth:marginHeight:]):
              Modify to pass the owner element instead of the owner renderer.
              
              * WebView/WebHTMLView.m:
              (-[WebHTMLView _topHTMLView]):
              Remove assertion, it's not valid anymore.
      
      LayoutTests:
      
      2006-07-05  Anders Carlsson  <acarlsson@apple.com>
      
              Reviewed by Maciej.
      
              http://bugzilla.opendarwin.org/show_bug.cgi?id=3581
              iFrames set to display:none are Missing from frames array
      
              * fast/events/mouseover-mouseout2-expected.txt:
              * fast/events/mouseover-mouseout2.html:
              Update expected result. Since we now keep the frame around, the mouseout event is 
              now dispatched to the element in the frame.
      
              * fast/events/onloadFrameCrash-expected.checksum:
              * fast/events/onloadFrameCrash-expected.png:
              * fast/events/onloadFrameCrash-expected.txt:
              This does hide the frame now.
              
              * fast/frames/iframe-display-none-expected.txt: Added.
              * fast/frames/iframe-display-none.html: Added.
              * fast/frames/resources/iframe-display-none-child.html: Added.
              New test that tests JS interaction with frames.
              
              * fast/frames/iframe-double-attach-expected.txt: Added.
              * fast/frames/iframe-double-attach.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15170 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3a434621
  3. 26 Jun, 2006 1 commit
    • hyatt's avatar
      Fix for 9538, support syntax highlighted HTML source. Lots of loose · 3ad24079
      hyatt authored
              ends still (script/style/comments/doctype/entities/accurate whitespace).
      
              Reviewed by darin
      
              * DerivedSources.make:
              * WebCore.xcodeproj/project.pbxproj:
              * bridge/mac/WebCoreFrameBridge.h:
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge setInViewSourceMode:]):
              (-[WebCoreFrameBridge inViewSourceMode]):
              * css/cssstyleselector.cpp:
              (WebCore::CSSStyleSelector::loadDefaultStyle):
              (WebCore::CSSStyleSelector::matchUARules):
              * css/cssstyleselector.h:
              * css/view-source.css: Added.
              * dom/Document.cpp:
              (WebCore::Document::implicitClose):
              * dom/xml_tokenizer.h:
              (WebCore::Tokenizer::Tokenizer):
              (WebCore::Tokenizer::~Tokenizer):
              (WebCore::Tokenizer::inViewSourceMode):
              (WebCore::Tokenizer::setInViewSourceMode):
              * html/HTMLAttributeNames.in:
              * html/HTMLFrameElement.cpp:
              (WebCore::HTMLFrameElement::init):
              (WebCore::HTMLFrameElement::parseMappedAttribute):
              (WebCore::HTMLFrameElement::attach):
              * html/HTMLFrameElement.h:
              (WebCore::HTMLFrameElement::viewSourceMode):
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::HTMLTokenizer):
              (WebCore::HTMLTokenizer::scriptHandler):
              (WebCore::HTMLTokenizer::scriptExecution):
              (WebCore::HTMLTokenizer::parseTag):
              (WebCore::HTMLTokenizer::continueProcessing):
              (WebCore::HTMLTokenizer::write):
              (WebCore::HTMLTokenizer::timerFired):
              (WebCore::HTMLTokenizer::end):
              (WebCore::HTMLTokenizer::processToken):
              (WebCore::HTMLTokenizer::notifyFinished):
              * html/HTMLTokenizer.h:
              * html/HTMLViewSourceDocument.cpp: Added.
              (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
              (WebCore::HTMLViewSourceDocument::createTokenizer):
              (WebCore::HTMLViewSourceDocument::addViewSourceToken):
              (WebCore::HTMLViewSourceDocument::addViewSourceAttribute):
              (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
              * html/HTMLViewSourceDocument.h: Added.
              * page/Frame.cpp:
              (WebCore::Frame::begin):
              (WebCore::Frame::inViewSourceMode):
              (WebCore::Frame::setInViewSourceMode):
              * page/Frame.h:
              * page/FramePrivate.h:
              (WebCore::FramePrivate::FramePrivate):
              * rendering/RenderPartObject.cpp:
              (WebCore::RenderPartObject::updateWidget):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@15050 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3ad24079
  4. 12 May, 2006 1 commit
    • eseidel's avatar
      2006-05-12 Eric Seidel <eseidel@apple.com> · 409f4301
      eseidel authored
              Reviewed by mjs.
      
              Split render_frames.* render_replaced.* and html_baseimpl.* into separate files (one class per file).
              http://bugzilla.opendarwin.org/show_bug.cgi?id=8878
      
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/kjs_html.cpp:
              (KJS::JSHTMLDocumentProtoFunc::callAsFunction):
              (KJS::JSHTMLDocument::namedItemGetter):
              (KJS::JSHTMLDocument::getValueProperty):
              (KJS::JSHTMLDocument::getOwnPropertySlot):
              (KJS::JSHTMLDocument::putValueProperty):
              (KJS::JSHTMLElement::formIndexGetter):
              (KJS::JSHTMLElement::formNameGetter):
              (KJS::JSHTMLElement::selectIndexGetter):
              (KJS::JSHTMLElement::framesetNameGetter):
              (KJS::JSHTMLElement::runtimeObjectGetter):
              (KJS::JSHTMLElement::runtimeObjectPropertyGetter):
              (KJS::JSHTMLElement::getOwnPropertySlot):
              (KJS::JSHTMLElement::implementsCall):
              (KJS::JSHTMLElement::callAsFunction):
              (KJS::JSHTMLElement::getValueProperty):
              (KJS::JSHTMLElement::toString):
              (KJS::getForm):
              (KJS::JSHTMLElement::pushEventHandlerScope):
              (KJS::HTMLElementFunction::callAsFunction):
              (KJS::JSHTMLElement::put):
              (KJS::JSHTMLElement::selectSetter):
              (KJS::JSHTMLElement::putValueProperty):
              (KJS::toHTMLElement):
              (KJS::toHTMLTableCaptionElement):
              (KJS::toHTMLTableSectionElement):
              (KJS::JSHTMLCollection::lengthGetter):
              (KJS::JSHTMLCollection::indexGetter):
              (KJS::JSHTMLCollection::nameGetter):
              (KJS::JSHTMLCollection::getOwnPropertySlot):
              (KJS::HTMLCollectionProtoFunc::callAsFunction):
              (KJS::JSHTMLSelectCollection::selectedIndexGetter):
              (KJS::JSHTMLSelectCollection::put):
              (KJS::OptionConstructorImp::construct):
              (KJS::getSelectHTMLCollection):
              * bindings/objc/DOMHTML.mm:
              * bridge/mac/FrameMac.mm:
              (WebCore::FrameMac::createFrame):
              * bridge/mac/WebCoreFrameBridge.mm:
              (-[WebCoreFrameBridge copyRenderNode:copier:]):
              * dom/Document.cpp:
              (WebCore::widgetForNode):
              * html/HTMLBodyElement.cpp: Added.
              (WebCore::HTMLBodyElement::HTMLBodyElement):
              (WebCore::HTMLBodyElement::parseMappedAttribute):
              * html/HTMLBodyElement.h: Added.
              * html/HTMLDocument.cpp:
              * html/HTMLElementFactory.cpp:
              * html/HTMLEmbedElement.cpp:
              * html/HTMLFrameElement.cpp: Added.
              (WebCore::HTMLFrameElement::isURLAllowed):
              (WebCore::HTMLFrameElement::parseMappedAttribute):
              (WebCore::HTMLFrameElement::setLocation):
              * html/HTMLFrameElement.h: Added.
              * html/HTMLFrameSetElement.cpp: Added.
              (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
              (WebCore::HTMLFrameSetElement::parseMappedAttribute):
              (WebCore::HTMLFrameSetElement::attach):
              (WebCore::HTMLFrameSetElement::defaultEventHandler):
              (WebCore::HTMLFrameSetElement::recalcStyle):
              * html/HTMLFrameSetElement.h: Added.
              * html/HTMLHeadElement.cpp: Added.
              (WebCore::HTMLHeadElement::HTMLHeadElement):
              * html/HTMLHeadElement.h: Added.
              * html/HTMLHtmlElement.cpp: Added.
              (WebCore::HTMLHtmlElement::HTMLHtmlElement):
              * html/HTMLHtmlElement.h: Added.
              * html/HTMLIFrameElement.cpp: Added.
              (WebCore::HTMLIFrameElement::HTMLIFrameElement):
              * html/HTMLIFrameElement.h: Added.
              * html/HTMLObjectElement.cpp:
              * html/HTMLParser.cpp:
              * html/html_baseimpl.cpp: Removed.
              * html/html_baseimpl.h: Removed.
              * kwq/WebCoreAXObject.mm:
              * page/Frame.cpp:
              (WebCore::isFrameElement):
              (WebCore::Frame::applyEditingStyleToBodyElement):
              (WebCore::Frame::removeEditingStyleFromBodyElement):
              (WebCore::Frame::applyEditingStyleToElement):
              (WebCore::Frame::removeEditingStyleFromElement):
              (WebCore::Frame::selectionRect):
              (WebCore::Frame::isFrameSet):
              (WebCore::scanForForm):
              (WebCore::Frame::currentForm):
              (WebCore::Frame::nodeInfoAtPoint):
              (WebCore::Frame::adjustPageHeight):
              (WebCore::Frame::frameForWidget):
              (WebCore::Frame::forceLayoutWithPageWidthRange):
              (WebCore::Frame::passWidgetMouseDownEventToWidget):
              * page/FrameView.cpp:
              * rendering/RenderFrame.cpp: Added.
              (WebCore::RenderFrame::viewCleared):
              * rendering/RenderFrame.h: Added.
              * rendering/RenderFrameSet.cpp: Added.
              (WebCore::RenderFrameSet::RenderFrameSet):
              (WebCore::RenderFrameSet::~RenderFrameSet):
              (WebCore::RenderFrameSet::layout):
              (WebCore::RenderFrameSet::positionFrames):
              (WebCore::RenderFrameSet::userResize):
              (WebCore::RenderFrameSet::canResize):
              (WebCore::RenderFrameSet::dump):
              * rendering/RenderFrameSet.h: Added.
              * rendering/RenderImage.h:
              * rendering/RenderPart.cpp: Added.
              (WebCore::RenderPart::RenderPart):
              * rendering/RenderPart.h: Added.
              * rendering/RenderPartObject.cpp: Added.
              (WebCore::isURLAllowed):
              (WebCore::RenderPartObject::updateWidget):
              (WebCore::RenderPartObject::viewCleared):
              * rendering/RenderPartObject.h: Added.
              * rendering/RenderReplaced.cpp: Added.
              (WebCore::RenderReplaced::selectionColor):
              * rendering/RenderReplaced.h: Added.
              * rendering/RenderWidget.cpp: Added.
              (WebCore::RenderWidget::deleteWidget):
              * rendering/RenderWidget.h: Added.
              * rendering/render_form.h:
              * rendering/render_frames.cpp: Removed.
              * rendering/render_frames.h: Removed.
              * rendering/render_replaced.cpp: Removed.
              * rendering/render_replaced.h: Removed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@14334 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      409f4301