WebKit-https.git
16 years ago Reviewed by Adele.
mjs [Thu, 6 Jul 2006 21:41:29 +0000 (21:41 +0000)]
    Reviewed by Adele.

        - fix 435 more layout tests Node leaks

        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::moveParagraphs): fix more instances of leaked DOM ranges

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15187 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by John.
beidson [Thu, 6 Jul 2006 18:39:46 +0000 (18:39 +0000)]
    Reviewed by John.

        Small fix to my previous small fix that only lets the ASSERT off the hook if the DB
        is closing

        * Misc/WebIconDatabase.m:
        (-[WebIconDatabase _releaseIconForIconURLString:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15186 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
harrison [Thu, 6 Jul 2006 16:45:20 +0000 (16:45 +0000)]
LayoutTests:

        Reviewed by Geoff.

        <rdar://problem/4565031> innerHTML of XMP tag returns special characters like '&gt;' instead of '>'

        * fast/innerHTML/006-expected.checksum: Added.
        * fast/innerHTML/006-expected.png: Added.
        * fast/innerHTML/006-expected.txt: Added.
        * fast/innerHTML/006.html: Added.

WebCore:

        Reviewed by Geoff

        <rdar://problem/4565031> innerHTML of XMP tag returns special characters like '&gt;' instead of '>'

        Test: fast/innerHTML/006.html

        * editing/markup.cpp:
        (WebCore::startMarkup):
        (WebCore::createMarkup):
        Do not special quote content of XMP nodes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15185 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Not reviewed - build fix.
mjs [Thu, 6 Jul 2006 11:37:12 +0000 (11:37 +0000)]
    Not reviewed - build fix.

        - back out earlier leak fix, as it caused a crash on one of the fast/invalid layout tests

        * dom/Document.cpp:
        (WebCore::Document::removedLastRef):
        * html/HTMLParser.cpp:
        (WebCore::HTMLStackElem::HTMLStackElem):
        (WebCore::HTMLParser::popNestedHeaderTag):
        (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
        (WebCore::HTMLParser::reopenResidualStyleTags):
        (WebCore::HTMLParser::popBlock):
        (WebCore::HTMLParser::popOneBlock):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15184 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Anders.
mjs [Thu, 6 Jul 2006 09:50:17 +0000 (09:50 +0000)]
    Reviewed by Anders.

        - fix ~3000 Node leaks on the editing tests

        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::moveParagraphs): put a newly created Range in a RefPtr
        to avoid leaking it, as this leaks the whole document.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15183 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Anders.
mjs [Thu, 6 Jul 2006 09:39:27 +0000 (09:39 +0000)]
    Reviewed by Anders.

        - fix 26 Node leaks on various fast/dom tests

        * dom/Document.cpp:
        (WebCore::Document::removedLastRef): Delete the tokenizer here, since if we are in mid-parse,
        the parser might hold refs on some of our children that have self-only refs.
        * html/HTMLParser.cpp:
        (WebCore::HTMLStackElem::HTMLStackElem): don't ref the node if it is a document to avoid ref cycles
        (WebCore::HTMLStackElem::~HTMLStackElem): ditto
        (WebCore::HTMLStackElem::node): changed interface a bit to support the above
        (WebCore::HTMLStackElem::setNode): ditto
        (WebCore::HTMLParser::popNestedHeaderTag): use new interface to HTMLStackElem
        (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): ditto
        (WebCore::HTMLParser::reopenResidualStyleTags): ditto
        (WebCore::HTMLParser::popBlock): ditto
        (WebCore::HTMLParser::popOneBlock): ditto

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15182 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Adele.
adele [Thu, 6 Jul 2006 06:39:15 +0000 (06:39 +0000)]
    Reviewed by Adele.

        * rendering/RenderMenuList.h:
        (WebCore::RenderMenuList::createsAnonymousWrapper): This method replaces
        allowsReusingAnonymousChild() and has the opposite meaning.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15181 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Maciej
beidson [Thu, 6 Jul 2006 06:35:05 +0000 (06:35 +0000)]
    Reviewed by Maciej

        Small fix that prevents an assertion from triggering if the DB is being cleaned up
        (ie, the app being shut down)

        * Misc/WebIconDatabase.h:
        * Misc/WebIconDatabase.m:
        (-[NSMutableDictionary init]):
        (-[WebIconDatabase _applicationWillTerminate:]):
        (-[WebIconDatabase _releaseIconForIconURLString:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15180 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Build fixes.
adele [Thu, 6 Jul 2006 06:19:16 +0000 (06:19 +0000)]
    Build fixes.

        * WebCore.vcproj/WebCore/WebCore.vcproj:
        * platform/win/TemporaryLinkStubs.cpp:
        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::calcMinMaxWidth):
        * rendering/RenderPopupMenuWin.h:
        (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
        * rendering/RenderThemeWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15179 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Adele.
mjs [Thu, 6 Jul 2006 05:55:15 +0000 (05:55 +0000)]
    Reviewed by Adele.

        - fix 308 Node leaks on the editing layout tests

        * dom/Document.cpp: (WebCore::Document::removedLastRef): Clear the markers once there
        are no real refs on the document, otherwise a self-only reference cycle w/ the document
        can occur.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15178 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
adele [Thu, 6 Jul 2006 05:47:30 +0000 (05:47 +0000)]
WebCore:

        Reviewed by Maciej and Hyatt.

        Initial implementation of popup menu control.  This can be turned on by setting -webkit-appearance: menulist on a select element.

        * WebCore.xcodeproj/project.pbxproj: Added RenderMenuList.h, RenderMenuList.cpp, RenderPopupMenu.h, RenderPopupMenu.cpp,
        RenderPopupMenuWin.h, RenderPopupMenuMac.h, RenderPopupMenuMac.mm,

        * dom/Node.cpp:
        (WebCore::Node::renderStyle): Added. Returns the renderer's style.  If there's no renderer, returns's a RenderStyle that's kept by the node.
        This is important for HTMLOptGroupElement and HTMLOptionElement, which don't have renderers.
        (WebCore::Node::setRenderStyle): Added.
        * dom/Node.h:
        * dom/Element.cpp: (WebCore::Element::recalcStyle): Updated to use renderStyle so recalcStyle will work for HTMLOptionElements and HTMLOptGroupElements.

        * css/cssstyleselector.cpp: Updated to call renderStyle method on the node, so resolving style works on elements w/o renderers that cache style.
        (WebCore::CSSStyleSelector::initForStyleResolve):
        (WebCore::CSSStyleSelector::locateCousinList):
        (WebCore::CSSStyleSelector::canShareStyleWithElement):
        (WebCore::CSSStyleSelector::locateSharedStyle):
        (WebCore::CSSStyleSelector::checkOneSelector):

        * css/html4.css: Removed display:none from options and optgroups, since we're now caching style for these elements.
        Added font-weight styles for option and optgroup.

        * html/HTMLOptGroupElement.h: Added m_style to keep track of a RenderStyle for the element, even though we aren't creating a renderer.
        This will allow us to honor style for optgroups and options for popup menus (and eventually list boxes too).
        (WebCore::HTMLOptGroupElement::rendererIsNeeded): Added.
        (WebCore::HTMLOptGroupElement::renderStyle): Added.
        * html/HTMLOptionElement.h: ditto.
        (WebCore::HTMLOptionElement::rendererIsNeeded): Added.
        (WebCore::HTMLOptionElement::renderStyle): Added.

        * html/HTMLOptGroupElement.cpp:
        (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): Initialize m_style.
        (WebCore::HTMLOptGroupElement::attach): Set the renderStyle.
        (WebCore::HTMLOptGroupElement::detach): Clear m_style.
        (WebCore::HTMLOptGroupElement::setRenderStyle): Added.
        (WebCore::HTMLOptGroupElement::groupLabelText): Added.
        * html/HTMLOptionElement.cpp: ditto.
        (WebCore::HTMLOptionElement::HTMLOptionElement):
        (WebCore::HTMLOptionElement::attach):
        (WebCore::HTMLOptionElement::detach):
        (WebCore::HTMLOptionElement::setRenderStyle):
        (WebCore::HTMLOptionElement::optionText):

        * html/HTMLSelectElement.cpp: Added code to use the new RenderMenuList if the appearance is set to MenuListAppearance,
        and if we're not creating a list box renderer.
        (WebCore::HTMLSelectElement::recalcStyle):
        (WebCore::HTMLSelectElement::createRenderer):
        (WebCore::HTMLSelectElement::setRecalcListItems):
        (WebCore::HTMLSelectElement::reset):
        (WebCore::HTMLSelectElement::notifyOptionSelected):
        (WebCore::HTMLSelectElement::defaultEventHandler):
        * html/HTMLSelectElement.h:

        * WebCore.exp: Added _wkPopupMenu.
        * platform/mac/WebCoreSystemInterface.h: Added wkPopupMenu to get the NSMenu to pop up.
        * platform/mac/WebCoreSystemInterface.mm:

        * platform/win/TemporaryLinkStubs.cpp: Added stubs for RenderPopupMenuWin.
        (RenderPopupMenuWin::RenderPopupMenuWin):
        (RenderPopupMenuWin::~RenderPopupMenuWin):
        (RenderPopupMenuWin::clear):
        (RenderPopupMenuWin::populate):
        (RenderPopupMenuWin::showPopup):
        (RenderPopupMenuWin::addSeparator):
        (RenderPopupMenuWin::addGroupLabel):
        (RenderPopupMenuWin::addOption):
        * rendering/RenderPopupMenuWin.h: Added.

        * rendering/RenderPopupMenu.cpp: Added.
        (WebCore::RenderPopupMenu::RenderPopupMenu):
        (WebCore::RenderPopupMenu::~RenderPopupMenu):
        (WebCore::RenderPopupMenu::clear):
        (WebCore::RenderPopupMenu::populate): Walks the DOM tree, and adds separators, options, and group labels to the RenderPopupMenu.
        (WebCore::RenderPopupMenu::showPopup):
        (WebCore::RenderPopupMenu::addSeparator):
        (WebCore::RenderPopupMenu::addGroupLabel):
        (WebCore::RenderPopupMenu::addOption):
        * rendering/RenderPopupMenu.h: Added.
        (WebCore::RenderPopupMenu::renderName):
        (WebCore::RenderPopupMenu::getRenderMenuList):
        * rendering/RenderPopupMenuMac.h: Added.
        * rendering/RenderPopupMenuMac.mm: Added.
        (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
        (WebCore::RenderPopupMenuMac::~RenderPopupMenuMac):
        (WebCore::RenderPopupMenuMac::clear): Removes all items from the menu.
        (WebCore::RenderPopupMenuMac::populate): Disables menuChangedMessages before populating the menu.
        (WebCore::RenderPopupMenuMac::showPopup): Calculates the right position, and calls wkPopupMenu.
        (WebCore::RenderPopupMenuMac::addSeparator):
        (WebCore::RenderPopupMenuMac::addGroupLabel):
        (WebCore::RenderPopupMenuMac::addOption):

        * rendering/RenderMenuList.cpp: Added.
        (WebCore::RenderMenuList::RenderMenuList):
        (WebCore::RenderMenuList::addChild):
        (WebCore::RenderMenuList::removeChild):
        (WebCore::RenderMenuList::setStyle):
        (WebCore::RenderMenuList::updateFromElement): If the options have changed, iterate through the children to find the menu item with the widest text.
        Set the button text to the selected item's text.
        (WebCore::RenderMenuList::setText):
        (WebCore::RenderMenuList::paintObject):
        (WebCore::RenderMenuList::baselinePosition):
        (WebCore::RenderMenuList::calcMinMaxWidth):
        (WebCore::RenderMenuList::showPopup):
        (WebCore::RenderMenuList::layout):
        (WebCore::RenderMenuList::updateSelection):
        (WebCore::RenderMenuList::valueChanged):
        * rendering/RenderMenuList.h: Added.
        (WebCore::RenderMenuList::removeLeftoverAnonymousBoxes):
        (WebCore::RenderMenuList::allowsReusingAnonymousChild):
        (WebCore::RenderMenuList::canHaveChildren):
        (WebCore::RenderMenuList::renderName):
        (WebCore::RenderMenuList::setOptionsChanged):
        (WebCore::RenderMenuList::selectionChanged):
        (WebCore::RenderMenuList::setSelectionChanged):
        (WebCore::RenderMenuList::hasPopupMenu):

        * rendering/RenderTheme.cpp: Added cases for MenuListAppearance.
        (WebCore::RenderTheme::adjustStyle):
        (WebCore::RenderTheme::paint):
        (WebCore::RenderTheme::paintBorderOnly):
        (WebCore::RenderTheme::isControlStyled):
        (WebCore::RenderTheme::adjustMenuListStyle):
        (WebCore::RenderTheme::createPopupMenu): creates platform-specific RenderPopupMenu.
        * rendering/RenderTheme.h:
        (WebCore::RenderTheme::sizeOfArrowControl): Added.
        (WebCore::RenderTheme::paintMenuList): Added.
        * rendering/RenderThemeMac.h:
        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::adjustRepaintRect):
        (WebCore::RenderThemeMac::paintMenuList):
        (WebCore::RenderThemeMac::adjustMenuListStyle):
        (WebCore::RenderThemeMac::setPopupButtonCellState):
        (WebCore::RenderThemeMac::createPopupMenu):
        (WebCore::RenderThemeMac::sizeOfArrowControl):
        * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::createPopupMenu):
        * rendering/RenderThemeWin.h:

WebKit:

        Reviewed by Maciej and Hyatt.

        WebKit part of initial popup menu implementation.

        * WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
        Initialize WKPopupMenu.

WebKitLibraries:

        Reviewed by Maciej and Hyatt.

        * WebKitSystemInterface.h: Updated.
        * libWebKitSystemInterface.a: Updated.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15177 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Tim Omernick.
beidson [Wed, 5 Jul 2006 23:45:45 +0000 (23:45 +0000)]
    Reviewed by Tim Omernick.

        IconDatabase now respects private browsing via the use of in memory, temporary tables

        * bridge/mac/WebCoreIconDatabaseBridge.mm:
        (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
        (-[WebCoreIconDatabaseBridge iconURLForPageURL:]): Renamed WebCore::IconDatabase methods, changes reflected here

        * icon/IconDatabase.cpp:
        (WebCore::IconDatabase::clearDatabase):
        (WebCore::IconDatabase::deletePrivateTables):
        (WebCore::IconDatabase::imageDataForIconID):
        (WebCore::IconDatabase::imageDataForIconURL):
        (WebCore::IconDatabase::imageDataForPageURL):
        (WebCore::IconDatabase::setPrivateBrowsingEnabled):
        (WebCore::IconDatabase::iconForPageURL):
        (WebCore::IconDatabase::iconURLForPageURL):
        (WebCore::IconDatabase::setIconDataForIconURL):
        (WebCore::IconDatabase::performSetIconDataForIconID):
        (WebCore::IconDatabase::establishTemporaryIconIDForEscapedIconURL):
        (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
        (WebCore::IconDatabase::setHaveNoIconForIconURL):
        (WebCore::IconDatabase::setIconURLForPageURL):
        (WebCore::IconDatabase::performSetIconURLForPageURL):
        (WebCore::IconDatabase::hasIconForIconURL):
        -Some style/comment cleanups, but mainly putting private browsing handling in place

        * icon/IconDatabase.h:  Some methods added, others renamed, some comments added

        * icon/SQLStatement.cpp:
        (WebCore::SQLStatement::getColumnName):
        (WebCore::SQLStatement::getColumnName16):
        (WebCore::SQLStatement::getColumnText):
        (WebCore::SQLStatement::getColumnText16):
        -The above 4 had changes to return String() for empty results instead of "" as it's less expensive;

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15175 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Adele.
sullivan [Wed, 5 Jul 2006 23:30:23 +0000 (23:30 +0000)]
    Reviewed by Adele.

        - layout test for <rdar://problem/4609162> REGRESSION: When tabbing between links on a page,
        the window doesn't scroll to link that's not in view

        The test verifies that focusing a link will scroll the link into view.

        * fast/events/reveal-link-when-focused-expected.checksum: Added.
        * fast/events/reveal-link-when-focused-expected.png: Added.
        * fast/events/reveal-link-when-focused-expected.txt: Added.
        * fast/events/reveal-link-when-focused.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15174 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Darin and Adele.
sullivan [Wed, 5 Jul 2006 23:27:20 +0000 (23:27 +0000)]
    Reviewed by Darin and Adele.

        - fixed <rdar://problem/4609162> REGRESSION: When tabbing between links on a page,
        the window doesn't scroll to link that's not in view

        * html/HTMLAnchorElement.cpp:
        * html/HTMLAnchorElement.h:
        removed HTMLAnchorElement::focus and HTMLAnchorElement::blur.

        HTMLAnchorElement::focus just called document()->setFocusNode(). The scroll-to-reveal
        code used to be inside document()->setFocusNode(), but now it's in Element::focus, and this override
        was preventing that code from running.

        HTMLAnchorElement::blur was exactly the same implementation as Element::blur (and there aren't any
        other implementations of ::blur in the class hierarchy in between). This change has no practical
        effect, other than removing duplicate code.

        Adele and I think that it was an oversight not to remove these two methods on 12/20/05
        these methods were removed from HTMLButtonElementImpl and HTMLInputElementImpl.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15173 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago2006-07-05 Anders Carlsson <acarlsson@apple.com>
andersca [Wed, 5 Jul 2006 22:24:18 +0000 (22:24 +0000)]
2006-07-05  Anders Carlsson  <acarlsson@apple.com>

        * bridge/win/FrameWin.cpp:
        (WebCore::FrameWin::FrameWin):
        * bridge/win/FrameWin.h:
        * platform/win/TemporaryLinkStubs.cpp:
        (FrameWin::createFrame):
        Fix Win32 build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15172 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago2006-07-05 Anders Carlsson <acarlsson@apple.com>
andersca [Wed, 5 Jul 2006 21:37:26 +0000 (21:37 +0000)]
2006-07-05  Anders Carlsson  <acarlsson@apple.com>

        * WebCore.xcodeproj/project.pbxproj:
        Revert accidental change of debug format to DWARF.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15171 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
andersca [Wed, 5 Jul 2006 21:29:41 +0000 (21:29 +0000)]
WebCore:

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: https://svn.webkit.org/repository/webkit/trunk@15170 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Harrison.
thatcher [Wed, 5 Jul 2006 20:05:41 +0000 (20:05 +0000)]
    Reviewed by Harrison.

        <rdar://problem/4608423> HIViewAdapter used but not defined
        Adds a new export file to fix the build.

        * WebKit.LP64.exp: Added.
        * WebKit.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15169 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago RS by Beth.
ggaren [Wed, 5 Jul 2006 19:10:49 +0000 (19:10 +0000)]
    RS by Beth.

        Renamed JSCharBufferRef, which was universally unpopular, to JSStringBufferRef,
        which, hopefully, will be less unpopular.

        * API/APICast.h:
        (toJS):
        (toRef):
        * API/JSBase.h:
        * API/JSCallbackObject.cpp:
        (KJS::JSCallbackObject::getOwnPropertySlot):
        (KJS::JSCallbackObject::put):
        (KJS::JSCallbackObject::deleteProperty):
        (KJS::JSCallbackObject::staticValueGetter):
        (KJS::JSCallbackObject::callbackGetter):
        * API/JSCharBufferRef.cpp: Removed.
        * API/JSCharBufferRef.h: Removed.
        * API/JSContextRef.cpp:
        (JSEvaluate):
        (JSCheckSyntax):
        * API/JSContextRef.h:
        * API/JSNode.c:
        (JSNodePrototype_appendChild):
        (JSNode_getNodeType):
        (JSNode_getChildNodes):
        (JSNode_getFirstChild):
        * API/JSNodeList.c:
        (JSNodeList_length):
        (JSNodeList_getProperty):
        * API/JSObjectRef.cpp:
        (JSFunctionMakeWithBody):
        (JSObjectGetDescription):
        (JSObjectHasProperty):
        (JSObjectGetProperty):
        (JSObjectSetProperty):
        (JSObjectDeleteProperty):
        (JSPropertyEnumeratorGetNext):
        (JSPropertyListAdd):
        * API/JSObjectRef.h:
        * API/JSStringBufferRef.cpp: Added.
        (JSStringMake):
        (JSStringBufferCreate):
        (JSStringBufferCreateUTF8):
        (JSStringBufferRetain):
        (JSStringBufferRelease):
        (JSValueCopyStringValue):
        (JSStringBufferGetLength):
        (JSStringBufferGetCharactersPtr):
        (JSStringBufferGetCharacters):
        (JSStringBufferGetMaxLengthUTF8):
        (JSStringBufferGetCharactersUTF8):
        (JSStringBufferIsEqual):
        (JSStringBufferIsEqualUTF8):
        (JSStringBufferCreateWithCFString):
        (CFStringCreateWithJSStringBuffer):
        * API/JSStringBufferRef.h: Added.
        * API/JSValueRef.h:
        * API/JavaScriptCore.h:
        * API/minidom.c:
        (main):
        (print):
        * API/testapi.c:
        (assertEqualsAsUTF8String):
        (assertEqualsAsCharactersPtr):
        (assertEqualsAsCharacters):
        (MyObject_hasProperty):
        (MyObject_getProperty):
        (MyObject_setProperty):
        (MyObject_deleteProperty):
        (MyObject_getPropertyList):
        (print_callAsFunction):
        (myConstructor_callAsConstructor):
        (main):
        * JavaScriptCore.exp:
        * JavaScriptCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15168 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago RS by Beth.
ggaren [Wed, 5 Jul 2006 18:07:57 +0000 (18:07 +0000)]
    RS by Beth.

        Moved some code around for more logical file separation.

        * API/JSBase.h:
        * API/JSContextRef.h:
        * API/JSObjectRef.cpp:
        * API/JSValueRef.cpp:
        (JSValueToObject):
        * API/JSValueRef.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15165 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Maciej.
ggaren [Wed, 5 Jul 2006 17:46:00 +0000 (17:46 +0000)]
    Reviewed by Maciej.

        Implemented JSFunctionMakeWithBody, which parses a script as a function body
        in the global scope, and returns the resulting anonymous function.

        I also removed private data from JSCallbackFunction. It never worked,
        since JSCallbackFunction doesn't inherit from JSCallbackObject.

        * API/JSCallbackConstructor.cpp: Removed.
        * API/JSCallbackConstructor.h: Removed.
        * API/JSCallbackFunction.cpp:
        (KJS::JSCallbackFunction::JSCallbackFunction):
        (KJS::JSCallbackFunction::implementsConstruct):
        (KJS::JSCallbackFunction::construct):
        (KJS::JSCallbackFunction::implementsCall):
        (KJS::JSCallbackFunction::callAsFunction):
        * API/JSCallbackFunction.h:
        * API/JSCallbackObject.cpp:
        (KJS::JSCallbackObject::staticFunctionGetter):
        * API/JSObjectRef.cpp:
        (JSFunctionMake):
        (JSFunctionMakeWithCallbacks):
        * API/JSObjectRef.h:
        * API/JSValueRef.h:
        * API/minidom.c:
        (main):
        * API/testapi.c:
        (main):
        * JavaScriptCore.exp: Programmatically added all symbols exported by
        API object files, and sorted results
        * JavaScriptCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15164 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoJavaScriptCore:
ggaren [Wed, 5 Jul 2006 16:52:54 +0000 (16:52 +0000)]
JavaScriptCore:

        Reviewed by Maciej.

        - Return syntax error in JSCheckSyntax through a JSValueRef* exception
        argument

        * API/JSBase.h:
        * API/JSContextRef.cpp:
        (JSCheckSyntax):
        * API/testapi.c:
        (main):
        * JavaScriptCore.exp:
        * kjs/interpreter.cpp:
        (KJS::Interpreter::checkSyntax):
        * kjs/interpreter.h:

JavaScriptGlue:

        Reviewed by Maciej.

        * JSRun.cpp:
        (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
        * JavaScriptGlue.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15163 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoBuild fix.
thatcher [Wed, 5 Jul 2006 16:35:50 +0000 (16:35 +0000)]
Build fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15162 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoBuild fix to work with the new linker.
thatcher [Wed, 5 Jul 2006 16:35:07 +0000 (16:35 +0000)]
Build fix to work with the new linker.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15161 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoFixes backwards if statement logic.
thatcher [Wed, 5 Jul 2006 16:27:28 +0000 (16:27 +0000)]
Fixes backwards if statement logic.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15160 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Maciej.
thatcher [Wed, 5 Jul 2006 06:17:40 +0000 (06:17 +0000)]
    Reviewed by Maciej.

        Bug 9731: [Drosera] crash when trying to access the scope chain
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9731

        Because of <rdar://problem/4608404> the WebScriptObject, _globalObj, that
        WebCoreScriptDebugger holds is unprotected each time the page changes.
        This causes Drosera to crash Safari when trying to access the scope chain.
        We simply need to detach and re-attach the debugger when the window script
        object is cleared until 4608404 is fixed. This change also attaches the
        debugger before we call the windowScriptObjectAvailable: delegate method,
        so the debugger is ready before anyone might use the window object.

        * WebCoreSupport/WebFrameBridge.m:
        (-[WebFrameBridge windowObjectCleared]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15159 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
mjs [Wed, 5 Jul 2006 04:52:54 +0000 (04:52 +0000)]
LayoutTests:

        Reviewed by Darin.

        http://bugzilla.opendarwin.org/show_bug.cgi?id=9734
        - change SVG XPath DOM tests to dump as text, and update expected results

        This should stop the random failures in Attribute_Nodes.svg

        * dom/svg/level3/xpath/Attribute_Nodes-expected.txt:
        * dom/svg/level3/xpath/Attribute_Nodes_xmlns-expected.txt:
        * dom/svg/level3/xpath/Comment_Nodes-expected.txt:
        * dom/svg/level3/xpath/Conformance_Expressions-expected.txt:
        * dom/svg/level3/xpath/Conformance_hasFeature_3-expected.txt:
        * dom/svg/level3/xpath/Conformance_hasFeature_empty-expected.txt:
        * dom/svg/level3/xpath/Conformance_hasFeature_null-expected.txt:
        * dom/svg/level3/xpath/Conformance_isSupported_3-expected.txt:
        * dom/svg/level3/xpath/Conformance_isSupported_empty-expected.txt:
        * dom/svg/level3/xpath/Conformance_isSupported_null-expected.txt:
        * dom/svg/level3/xpath/Element_Nodes-expected.txt:
        * dom/svg/level3/xpath/Processing_Instruction_Nodes-expected.txt:
        * dom/svg/level3/xpath/Text_Nodes-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluatorCast01-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createExpression_INVALID_EXPRESSION_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_01-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createExpression_NAMESPACE_ERR_02-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createExpression_NS-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createExpression_no_NS-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createNSResolver_all-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createNSResolver_document-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_createNSResolver_documentElement-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_evaluate_INVALID_EXPRESSION_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_evaluate_NAMESPACE_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_evaluate_NOT_SUPPORTED_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_evaluate_TYPE_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_evaluate_WRONG_DOCUMENT_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_evaluate_document-expected.txt:
        * dom/svg/level3/xpath/XPathEvaluator_evaluate_documentElement-expected.txt:
        * dom/svg/level3/xpath/XPathExpression_evaluate_NOT_SUPPORTED_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathExpression_evaluate_WRONG_DOCUMENT_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathExpression_evaluate_document-expected.txt:
        * dom/svg/level3/xpath/XPathExpression_evaluate_documentElement-expected.txt:
        * dom/svg/level3/xpath/XPathNSResolver_lookupNamespaceURI_nist_dmstc-expected.txt:
        * dom/svg/level3/xpath/XPathNSResolver_lookupNamespaceURI_null-expected.txt:
        * dom/svg/level3/xpath/XPathNSResolver_lookupNamespaceURI_prefix-expected.txt:
        * dom/svg/level3/xpath/XPathNSResolver_lookupNamespaceURI_xml-expected.txt:
        * dom/svg/level3/xpath/XPathResult_TYPE_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathResult_booleanValue_false-expected.txt:
        * dom/svg/level3/xpath/XPathResult_booleanValue_true-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_ANY_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_ANY_UNORDERED_NODE_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_BOOLEAN_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_FIRST_ORDERED_NODE_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_NUMBER_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_ITERATOR_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_ORDERED_NODE_SNAPSHOT_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_STRING_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_ITERATOR_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_invalidIteratorState_UNORDERED_NODE_SNAPSHOT_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_iterateNext_INVALID_STATE_ERR-expected.txt:
        * dom/svg/level3/xpath/XPathResult_iteratorNext_ORDERED_NODE_ITERATOR_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_numberValue-expected.txt:
        * dom/svg/level3/xpath/XPathResult_resultType-expected.txt:
        * dom/svg/level3/xpath/XPathResult_singleNodeValue_ANY_UNORDERED_NODE_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_singleNodeValue_FIRST_ORDERED_NODE_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_null-expected.txt:
        * dom/svg/level3/xpath/XPathResult_snapshotItem_ORDERED_NODE_SNAPSHOT_TYPE_order-expected.txt:
        * dom/svg/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_count-expected.txt:
        * dom/svg/level3/xpath/XPathResult_snapshotItem_UNORDERED_NODE_SNAPSHOT_TYPE_null-expected.txt:
        * dom/svg/level3/xpath/XPathResult_snapshotLength_ORDERED_NODE_SNAPSHOT_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_snapshotLength_UNORDERED_NODE_SNAPSHOT_TYPE-expected.txt:
        * dom/svg/level3/xpath/XPathResult_stringValue-expected.txt:
        * dom/svg/level3/xpath/svgunit.js:

WebKitTools:

        Reviewed by Darin.

        http://bugzilla.opendarwin.org/show_bug.cgi?id=9734
        - add support for dumping non-HTML as text - in this case use textContent
        instead of innerText

        * DumpRenderTree/DumpRenderTree.m:
        (dump):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15158 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Darin.
thatcher [Wed, 5 Jul 2006 04:34:56 +0000 (04:34 +0000)]
    Reviewed by Darin.

        Bug 9732: [Drosera] calling removeListener to many times will cause
                  WebKit's listener count to underflow/wraparound
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9732

        Adds a check to make sure the listener was in our listeners set before
        decrementing the global listener count. Also checks for nil in addListner
        to prevent a possible exception when adding the object to the set.

        * DefaultDelegates/WebScriptDebugServer.m:
        (-[WebScriptDebugServer addListener:]):
        (-[WebScriptDebugServer removeListener:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15157 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago - fixed build
darin [Wed, 5 Jul 2006 04:25:48 +0000 (04:25 +0000)]
    - fixed build

        * wtf/MathExtras.h: Oops. Added missing #endif.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15156 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Maciej.
darin [Wed, 5 Jul 2006 04:13:32 +0000 (04:13 +0000)]
    Reviewed by Maciej.
        Tweaked a bit by Darin.

        - http://bugzilla.opendarwin.org/show_bug.cgi?id=9678
          work around MSVCRT's fmod function returning NaN for fmod(x, infinity) instead of x

        * wtf/MathExtras.h: Added include of <float.h>.
        (isinf): Fix to return false for NAN.
        (wtf_fmod): Added. An inline that works around the bug.

        * kjs/nodes.cpp:
        * kjs/number_object.cpp:
        * kjs/operations.cpp:
        * kjs/value.cpp:
        Added includes of MathExtras.h to all files using fmod.

        * JavaScriptCore.xcodeproj/project.pbxproj: Let Xcode 2.3 have its way with
        the project.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15155 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Maciej, reworked a bit by Darin.
darin [Wed, 5 Jul 2006 04:04:11 +0000 (04:04 +0000)]
    Reviewed by Maciej, reworked a bit by Darin.

        Compile fixes for wx port / gcc 4.0.2

        * platform/PlatformString.h:
        * platform/StringImpl.h:
        Include CoreFoundation for CF-specific code.

        * dom/DocPtr.h:
        * doc/EventTargetNode.h:
        Silence warnings about 'extra tokens' after #endif on gcc 4.0.2.
        (Not an error but warnings appear frequently.)

        * WebCoreSources.bkl:
        * webcore-base.bkl:
        Synching ports sources file with TOT. Also, making sure SRCDIR variable
        overrides any previous values.

        * loader/ImageDocument.cpp:
        Use PLATFORM(MAC) for the parts that are specific to the Macintosh version,
        and move the Objective-C parts to another file.

        * loader/mac/ImageDocumentMac.h: Added.
        * loader/mac/ImageDocumentMac.mm: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15154 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago - updated test result to reflect window without scroll bars
darin [Wed, 5 Jul 2006 01:05:34 +0000 (01:05 +0000)]
    - updated test result to reflect window without scroll bars

        1) this test should not have scroll bars
        2) on the buildbot the result is the non-scroll-bar one

        * dom/svg/level3/xpath/Attribute_Nodes-expected.txt:
        Changed text node width to 800.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15153 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Build fix.
weinig [Tue, 4 Jul 2006 23:40:28 +0000 (23:40 +0000)]
    Build fix.

        * platform/Color.cpp:
        (WebCore::makeRGBAFromHSLA):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15152 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
weinig [Tue, 4 Jul 2006 22:14:49 +0000 (22:14 +0000)]
LayoutTests:

        Reviewed by Darin.

        - tests for http://bugzilla.opendarwin.org/show_bug.cgi?id=9506
        Tests using HSL rather than RGB for color values.

        * fast/css/hsl-color-expected.checksum: Added.
        * fast/css/hsl-color-expected.png: Added.
        * fast/css/hsl-color-expected.txt: Added.
        * fast/css/hsl-color.html: Added.
        * fast/css/hsla-color-expected.checksum: Added.
        * fast/css/hsla-color-expected.png: Added.
        * fast/css/hsla-color-expected.txt: Added.
        * fast/css/hsla-color.html: Added.

WebCore:

        Reviewed by Darin.

        - Added HSL color support as specified in CSS3 spec.
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9506
        Added parsing support of hsl(h,s,l) and hsla(h,s,l,a)
        Added converting code to convert HSL to RGB

        * css/cssparser.cpp:
        (WebCore::CSSParser::parseColorParameters):
        Moved common code to parse RGB/RGBA values into it's
        own function. This code was duplicated in the parseColorFromValue()
        method.
        (WebCore::CSSParser::parseHSLParameters):
        Common code to parse HSL/HSLA values.
        (WebCore::CSSParser::parseColorFromValue):
        Moved RGB/RGBA parsing out to seperate function as the code was
        duplicated.
        Added parsing support for hsl( and hsla(
        * css/cssparser.h:
        Added two new functions parseColorParameters() and
        parseHSLParameters().
        * platform/Color.cpp:
        (WebCore::calcHue):
        Added Hue parameter to RGB color.
        (WebCore::makeRGBAFromHSLA):
        New function to convert HSLA to RGBA.
        * platform/Color.h:
        Added new functions makeRGBAFromHSLA() and calcHue().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15151 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Maciej.
ap [Tue, 4 Jul 2006 16:45:13 +0000 (16:45 +0000)]
    Reviewed by Maciej.

        - http://bugzilla.opendarwin.org/show_bug.cgi?id=8210
        Conditional XMLHttpRequest gets should pass 304 responses unchanged

        Test: http/tests/xmlhttprequest/cache-override.html

        * Misc/WebNSURLRequestExtras.h: Added _web_isConditionalRequest
        * Misc/WebNSURLRequestExtras.m:
        (-[NSURLRequest _web_isConditionalRequest]):
        * WebCoreSupport/WebFrameBridge.m:
        (-[WebFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
        Bypass the cache for conditional requests.
        * WebCoreSupport/WebSubresourceLoader.m:
        (+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15150 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Darin.
ggaren [Tue, 4 Jul 2006 02:35:09 +0000 (02:35 +0000)]
    Reviewed by Darin.

        - Refined value conversions in the API:
            - failed toNumber returns NaN
            - failed toObject returns NULL
            - failed toString returns empty string

        - Refined excpetion handling in the API:
            - failed value conversions do not throw exceptions
            - uncaught exceptions in JSEvaluate, JSObjectCallAsFunction, and
              JSObjectCallAsConstructor are returned through a JSValueRef* exception
              argument
            - removed JSContextHasException, because JSContextGetException does
              the same job

        * API/JSBase.h:
        * API/JSCharBufferRef.cpp:
        (JSValueCopyStringValue):
        * API/JSContextRef.cpp:
        (JSEvaluate):
        * API/JSContextRef.h:
        * API/JSNodeList.c: Added test code demonstrating how you would use
        toNumber, and why you probably don't need toUInt32, etc.
        (JSNodeListPrototype_item):
        (JSNodeList_getProperty):
        * API/JSObjectRef.cpp:
        (JSValueToObject):
        (JSObjectCallAsFunction):
        (JSObjectCallAsConstructor):
        * API/JSObjectRef.h:
        * API/JSValueRef.cpp:
        (JSValueToNumber):
        * API/JSValueRef.h:
        * API/minidom.c:
        (main):
        * API/testapi.c:
        (main): Added tests for new rules, and call to JSGCProtect to fix Intel
        crash
        * JavaScriptCore.exp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15149 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago - Rolled out HashMap implementation of NPRuntime, at least temporarily.
darin [Tue, 4 Jul 2006 01:42:14 +0000 (01:42 +0000)]
    - Rolled out HashMap implementation of NPRuntime, at least temporarily.

        Fixes hang in the bindings section of layout tests seen on the
        buildbot.

        This code was using HashMap<const char*, PrivateIdentifier*>.
        But that hashes based on pointer identity, not string value.
        The default hash for any pointer type is to hash based on the pointer.
        And WTF doesn't currently have a string hash for char*.
        We'll need to fix that before re-landing this patch.

        (Formatting was also incorrect -- extra spaces in parentheses.)

        * bindings/npruntime.cpp: Rolled out last change.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15148 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoBuild fix.
thatcher [Mon, 3 Jul 2006 18:46:31 +0000 (18:46 +0000)]
Build fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15147 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed, tweaked, landed by ggaren.
ggaren [Mon, 3 Jul 2006 17:36:31 +0000 (17:36 +0000)]
    Reviewed, tweaked, landed by ggaren.

        - Port NPRuntime from CFDictionary to HashMap.

        * bindings/npruntime.cpp:
        (getStringIdentifierDictionary):
        (getIntIdentifierDictionary):
        (_NPN_GetStringIdentifier):
        (_NPN_GetIntIdentifier):
        * bindings/npruntime.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15146 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoForgot the NIB file change for step over and step out.
thatcher [Mon, 3 Jul 2006 08:27:46 +0000 (08:27 +0000)]
Forgot the NIB file change for step over and step out.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15145 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Eric.
thatcher [Mon, 3 Jul 2006 08:20:46 +0000 (08:20 +0000)]
    Reviewed by Eric.

        Bug 9631: [Drosera] Add "Step Over" and "Step Out"
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9631

        Adds step over and step out. Along with a little code cleanup
        that was minor enough to piggyback on this fix.

        * Drosera/DebuggerDocument.h:
        * Drosera/DebuggerDocument.m:
        (-[DebuggerDocument stepOver:]):
        (-[DebuggerDocument stepOut:]):
        (-[DebuggerDocument windowDidLoad]):
        (-[DebuggerDocument windowWillClose:]):
        (-[DebuggerDocument toolbar:itemForItemIdentifier:willBeInsertedIntoToolbar:]):
        (-[DebuggerDocument toolbarDefaultItemIdentifiers:]):
        (-[DebuggerDocument toolbarAllowedItemIdentifiers:]):
        (-[DebuggerDocument validateUserInterfaceItem:]):
        * Drosera/Drosera.xcodeproj/project.pbxproj:
        * Drosera/debugger.html:
        * Drosera/debugger.js:
        * Drosera/viewer.css:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15144 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Eric.
thatcher [Mon, 3 Jul 2006 08:03:57 +0000 (08:03 +0000)]
    Reviewed by Eric.

        Bug 9628: [Drosera] Split Views acting oddly
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9628

        Only update the last X or Y coordinate if the new
        size was not constrained. Also adds the resize cursor to
        the body during the drag incase there is a constrained
        over drag off of the resizer element.

        * Drosera/debugger.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15143 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed and landed by ggaren.
ggaren [Sun, 2 Jul 2006 23:36:57 +0000 (23:36 +0000)]
    Reviewed and landed by ggaren.

        * platform/gdk/TransferJobManager.cpp
        Fixed broken dowload logic
        * platform/gdk/ScrollViewGdk.cpp
        Add comment that scrollbarSize is a temporary variable
        * Projects/gdk/webcore-gdk.bkl
        Defined NDEBUG build executable is miscompiled otherwise
        * WebCoreSources.bkl
        added icon/SiteIcon.cpp editing/IndentOutdentCommand.cpp
        html/HTMLViewSourceDocument.cpp

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15140 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Adele.
ggaren [Sun, 2 Jul 2006 18:17:08 +0000 (18:17 +0000)]
    Reviewed by Adele.

        - Fixed <rdar://problem/4611197> REGRESSION: Liveconnect with Java test
        fails at http://www-sor.inria.fr/~dedieu/notes/liveconnect/simple_example.html

        * JavaScriptCore.exp: Export symbols used by liveconnect

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15139 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebKitTools:
ddkilzer [Sun, 2 Jul 2006 13:05:27 +0000 (13:05 +0000)]
WebKitTools:

        Reviewed by Alexy Proskuryakov.  Patch by Mark Rowe.

        Bug 9692: Warning about Safari extensions on every launch is obnoxious
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9692

        * WebKitLauncher/WebKitNightlyEnabler.m:
        (myApplicationWillTerminate): Note that we are exiting cleanly.
        (cleanUpAfterOurselves): Install bundle load tracking only if we failed
         to exit cleanly on our last invocation.  This doesn't play nicely with
         multiple concurrent instances of WebKit.app so it can be disabled via
         defaults write com.apple.Safari WKNEShouldMonitorShutdowns -bool NO.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15138 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebKitTools:
ddkilzer [Sun, 2 Jul 2006 12:23:36 +0000 (12:23 +0000)]
WebKitTools:

        Reviewed by Alexy Proskuryakov.  Patch by Mark Rowe.

        Bug 9654: Refresh Loop when accessing feed URLs
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9654

        * WebKitLauncher/Info.plist: Don't claim to handle feed:// URLs.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15137 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebKitTools:
ddkilzer [Sun, 2 Jul 2006 12:02:38 +0000 (12:02 +0000)]
WebKitTools:

        Reviewed by Timothy Hatcher.  Patch by Mark Rowe.

        Bug 9689: Nightly builds should warn a user about potential problems when using
        "Safari extensions"
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9689

        * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:
        * WebKitLauncher/WebKitNightlyEnabler.m:
        (myBundleDidLoad): Keep track of if any bundles that are loaded.
        (myApplicationWillFinishLaunching):  Notify user if any bundles are loaded.
        (cleanUpAfterOurselves): Register for NSBundleDidLoadNotification and
        NSApplicationWillFinishLaunchingNotification notifications so that we can
        track bundle loads and notify the user at launch completion.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15136 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Sun, 2 Jul 2006 11:59:06 +0000 (11:59 +0000)]
WebCore:

        Reviewed by Timothy Hatcher.  Build fix for Linux.  Patch by Shawn Stricker.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9684
          [GDK] multiple little fixes and a few new things for Templinkstubs

        * platform/gdk/ScrollViewGdk.cpp:
        (WebCore::ScrollView::setDrawable): Changed SCROLLBAR_SIZE to scrollbarSize.
        * platform/gdk/TemporaryLinkStubs.cpp:
        (Image::drawTiled): Added missing parameter to argument list.
        * platform/gdk/TransferJobManager.cpp:
        (WebCore::writeCallback): Added missing parenthesis to static_cast.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15135 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Sun, 2 Jul 2006 11:39:43 +0000 (11:39 +0000)]
WebCore:

        Reviewed by Darin.  Patch by Mitz.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9674
          REGRESSION (r15075): Blank or incomplete pages on digg.com

        Replaced the requestingScript state bit added in the fix for bug 9317
        with a m_requestingScript bool that is set before and restored
        after calling ref() on a CachedScript.

        Test: fast/tokenizer/nested-cached-scripts.html

        * html/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::HTMLTokenizer):
        (WebCore::HTMLTokenizer::begin):
        (WebCore::HTMLTokenizer::scriptHandler):
        (WebCore::HTMLTokenizer::notifyFinished):
        * html/HTMLTokenizer.h:
        (WebCore::HTMLTokenizer::State::):

LayoutTests:

        Reviewed by Darin.  Patch by Mitz.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9674
          REGRESSION (r15075): Blank or incomplete pages on digg.com

        * fast/tokenizer/nested-cached-scripts-expected.txt: Added.
        * fast/tokenizer/nested-cached-scripts.html: Added.
        * fast/tokenizer/resources/nested-1.js: Added.
        * fast/tokenizer/resources/nested-2.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15134 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Maciej.
ggaren [Sun, 2 Jul 2006 04:06:07 +0000 (04:06 +0000)]
    Reviewed by Maciej.

        - Phase 2 in the JS API.

        - Added support for specifying static tables of values -- this should
        obviate the need for using complicated callbacks for most lookups.

        -  API objects are now created with classes (JSClassRef) -- in order to support
        static values, and in order to prevent API objects from storing their
        data inline, and thus falling into the oversized (read: slow and prone to
        giving Maciej the frowny face) heap.

        - Added two specialized JSObject subclasses -- JSCallbackFunction and JSCallbackConstructor --
        to allow JSFunctionMake and JSConstructorMake to continue to work with
        the new class model. Another solution to this problem would be to create
        a custom class object for each function and constructor you make. This
        solution is more code but also more efficient.

        - Substantially beefed up the minidom example to demonstrate and test a
        lot of these techniques. Its output is still pretty haphazard, though.

        - Gave the <kjs/ preface to some includes -- I'm told this matters to
        building on some versions of Linux.

        - Implemented JSValueIsInstanceOf and JSValueIsObjectOfClass

        - Removed GetDescription callback. Something in the class datastructure
        should take care of this.

        * API/JSBase.h:
        * API/JSCallbackConstructor.cpp: Added.
        (KJS::):
        (KJS::JSCallbackConstructor::JSCallbackConstructor):
        (KJS::JSCallbackConstructor::implementsConstruct):
        (KJS::JSCallbackConstructor::construct):
        (KJS::JSCallbackConstructor::setPrivate):
        (KJS::JSCallbackConstructor::getPrivate):
        * API/JSCallbackConstructor.h: Added.
        (KJS::JSCallbackConstructor::classInfo):
        * API/JSCallbackFunction.cpp: Added.
        (KJS::):
        (KJS::JSCallbackFunction::JSCallbackFunction):
        (KJS::JSCallbackFunction::implementsCall):
        (KJS::JSCallbackFunction::callAsFunction):
        (KJS::JSCallbackFunction::setPrivate):
        (KJS::JSCallbackFunction::getPrivate):
        * API/JSCallbackFunction.h: Added.
        (KJS::JSCallbackFunction::classInfo):
        * API/JSCallbackObject.cpp:
        (KJS::):
        (KJS::JSCallbackObject::JSCallbackObject):
        (KJS::JSCallbackObject::init):
        (KJS::JSCallbackObject::~JSCallbackObject):
        (KJS::JSCallbackObject::className):
        (KJS::JSCallbackObject::getOwnPropertySlot):
        (KJS::JSCallbackObject::put):
        (KJS::JSCallbackObject::deleteProperty):
        (KJS::JSCallbackObject::implementsConstruct):
        (KJS::JSCallbackObject::construct):
        (KJS::JSCallbackObject::implementsCall):
        (KJS::JSCallbackObject::callAsFunction):
        (KJS::JSCallbackObject::getPropertyList):
        (KJS::JSCallbackObject::toBoolean):
        (KJS::JSCallbackObject::toNumber):
        (KJS::JSCallbackObject::toString):
        (KJS::JSCallbackObject::inherits):
        (KJS::JSCallbackObject::staticValueGetter):
        (KJS::JSCallbackObject::staticFunctionGetter):
        (KJS::JSCallbackObject::callbackGetter):
        * API/JSCallbackObject.h:
        * API/JSCharBufferRef.cpp:
        * API/JSClassRef.cpp: Added.
        (JSClassCreate):
        (JSClassRetain):
        (JSClassRelease):
        * API/JSClassRef.h: Added.
        (StaticValueEntry::StaticValueEntry):
        (StaticFunctionEntry::StaticFunctionEntry):
        (__JSClass::__JSClass):
        * API/JSContextRef.cpp:
        (JSContextCreate):
        (JSEvaluate):
        * API/JSContextRef.h:
        * API/JSNode.c: Added.
        (JSNodePrototype_appendChild):
        (JSNodePrototype_removeChild):
        (JSNodePrototype_replaceChild):
        (JSNodePrototype_class):
        (JSNode_getNodeType):
        (JSNode_getChildNodes):
        (JSNode_getFirstChild):
        (JSNode_finalize):
        (JSNode_class):
        (JSNode_prototype):
        (JSNode_new):
        (JSNode_construct):
        * API/JSNode.h: Added.
        * API/JSNodeList.c: Added.
        (JSNodeListPrototype_item):
        (JSNodeListPrototype_class):
        (JSNodeList_length):
        (JSNodeList_getProperty):
        (JSNodeList_finalize):
        (JSNodeList_class):
        (JSNodeList_prototype):
        (JSNodeList_new):
        * API/JSNodeList.h: Added.
        * API/JSObjectRef.cpp:
        (JSObjectMake):
        (JSFunctionMake):
        (JSConstructorMake):
        (__JSPropertyEnumerator::__JSPropertyEnumerator):
        (JSObjectCreatePropertyEnumerator):
        (JSPropertyEnumeratorGetNext):
        (JSPropertyEnumeratorRetain):
        (JSPropertyEnumeratorRelease):
        * API/JSObjectRef.h:
        (__JSObjectCallbacks::):
        * API/JSValueRef.cpp:
        (JSValueIsObjectOfClass):
        (JSValueIsInstanceOf):
        * API/JSValueRef.h:
        * API/Node.c: Added.
        (Node_new):
        (Node_appendChild):
        (Node_removeChild):
        (Node_replaceChild):
        (Node_ref):
        (Node_deref):
        * API/Node.h: Added.
        * API/NodeList.c: Added.
        (NodeList_new):
        (NodeList_length):
        (NodeList_item):
        (NodeList_ref):
        (NodeList_deref):
        * API/NodeList.h: Added.
        * API/minidom.c:
        (main):
        (print):
        (createStringWithContentsOfFile):
        * API/minidom.js:
        * API/testapi.c:
        (assertEqualsAsCharacters):
        (MyObject_getProperty):
        (MyObject_class):
        (myConstructor_callAsConstructor):
        (main):
        * API/testapi.js:
        * JavaScriptCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15133 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Sun, 2 Jul 2006 03:20:02 +0000 (03:20 +0000)]
WebCore:

        Reviewed by NOBODY (build fix).

        * platform/gdk/TransferJobManager.cpp:
        (WebCore::writeCallback): Changed 'static_cat' to 'static_cast'.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15132 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebKit:
ddkilzer [Sun, 2 Jul 2006 02:50:01 +0000 (02:50 +0000)]
WebKit:

        Reviewed by NOBODY (fixed Tim's build fix).

        * WebView/WebView.m: Added back missing '/' at the beginning of the file.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15131 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by NOBODY (build fix)
tomernic [Sun, 2 Jul 2006 01:31:12 +0000 (01:31 +0000)]
    Reviewed by NOBODY (build fix)

        * WebView/WebView.m:
        (-[WebView _isMIMETypeRegisteredAsPlugin:]):
        Changed nil to NO (typo).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15130 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoBuild fix for case-sensitive filesystems.
thatcher [Sat, 1 Jul 2006 19:08:09 +0000 (19:08 +0000)]
Build fix for case-sensitive filesystems.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15126 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed and tweaked by Darin.
darin [Sat, 1 Jul 2006 05:02:23 +0000 (05:02 +0000)]
    Reviewed and tweaked by Darin.

        - Compile fixes for wx port / gcc 4.0.2

        * kjs/array_object.cpp:
        Added missing headers.

        * kjs/ExecState.h:
        gcc needs class prototypes before defining those classes as friend classes

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15125 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed and worked over a lot by Darin.
darin [Sat, 1 Jul 2006 04:39:50 +0000 (04:39 +0000)]
    Reviewed and worked over a lot by Darin.

        - check in first set of GDK-specific sources

        * platform/gdk/BrowserExtensionGdk.h: Added.
        * platform/gdk/CookieJarGdk.cpp: Added.
        * platform/gdk/CursorGdk.cpp: Added.
        * platform/gdk/FontCacheGdk.cpp: Added.
        * platform/gdk/FontDataGdk.cpp: Added.
        * platform/gdk/FontGdk.cpp: Added.
        * platform/gdk/FontPlatformData.h: Added.
        * platform/gdk/FontPlatformDataGdk.cpp: Added.
        * platform/gdk/FrameGdk.cpp: Added.
        * platform/gdk/FrameGdk.h: Added.
        * platform/gdk/GlyphMapGdk.cpp: Added.
        * platform/gdk/KeyEventGdk.cpp: Added.
        * platform/gdk/KeyboardCodes.h: Added.
        * platform/gdk/MouseEventGdk.cpp: Added.
        * platform/gdk/PageGdk.cpp: Added.
        * platform/gdk/RenderThemeGdk.cpp: Added.
        * platform/gdk/RenderThemeGdk.h: Added.
        * platform/gdk/ScreenGdk.cpp: Added.
        * platform/gdk/ScrollViewGdk.cpp: Added.
        * platform/gdk/SharedTimerLinux.cpp: Added.
        * platform/gdk/SystemTimeLinux.cpp: Added.
        * platform/gdk/TemporaryLinkStubs.cpp: Added.
        * platform/gdk/TransferJobCurl.cpp: Added.
        * platform/gdk/TransferJobManager.cpp: Added.
        * platform/gdk/TransferJobManager.h: Added.
        * platform/gdk/WheelEventGdk.cpp: Added.
        * platform/gdk/WidgetGdk.cpp: Added.
        * platform/gdk/gdk-encodings.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15124 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Darin.
darin [Sat, 1 Jul 2006 04:24:46 +0000 (04:24 +0000)]
    Reviewed by Darin.

        * WebCoreSources.bkl: Updated for recent file changes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15123 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed and enhanced by Darin.
darin [Sat, 1 Jul 2006 04:23:22 +0000 (04:23 +0000)]
    Reviewed and enhanced by Darin.

        Compilation fixes for Linux/Gdk.

        * WebCore/platform/FontData.h: Added forward declaration of a class.
        * WebCore/platform/cairo/GraphicsContextCairo.cpp: Fixed case on include.
        * WebCore/bindings/js/kjs_html.cpp: Added <math.h> include.

        * WebCore/css/maketokenizer: Fixed incorrect check for Linux that was
        already true even on Mac OS X. Added some additional includes and
        defines to the Linux extra generated code.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15122 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Sat, 1 Jul 2006 02:51:32 +0000 (02:51 +0000)]
WebCore:

        Reviewed by Hyatt.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7204
          float inserted in fixed height block via DOM not repainted

        Test: fast/repaint/float-move-during-layout.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::layoutBlockChildren):
        (WebCore::RenderBlock::repaintOverhangingFloats): Renamed repaintFloatingDescendants()
        to this and limited it to repainting overhanging floats. Added a boolean parameter that forces
        all descendant overhanging floats (that don't have their own layer) to paint.
        * rendering/RenderBlock.h:
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::repaintDuringLayoutIfMoved): Changed to paint all descendant
        floats.
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::repaintOverhangingFloats):
        * rendering/RenderObject.h:

LayoutTests:

        Reviewed by Hyatt.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=7204
          float inserted in fixed height block via DOM not repainted

        * fast/repaint/float-move-during-layout-expected.checksum: Added.
        * fast/repaint/float-move-during-layout-expected.png: Added.
        * fast/repaint/float-move-during-layout-expected.txt: Added.
        * fast/repaint/float-move-during-layout.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15121 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoChanges by Mike Emmel.
darin [Sat, 1 Jul 2006 01:33:37 +0000 (01:33 +0000)]
Changes by Mike Emmel.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15120 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Darin.
darin [Sat, 1 Jul 2006 01:32:57 +0000 (01:32 +0000)]
    Reviewed by Darin.

        - first check-in of a Gdk shell for testing WebKit

        * GdkLauncher: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15119 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Darin.
darin [Sat, 1 Jul 2006 01:31:08 +0000 (01:31 +0000)]
    Reviewed by Darin.

        Compilation fixes for Linux/Gdk.

        * JavaScriptCore/kjs/interpreter.cpp: added include of signal.h
        * JavaScriptCore/kjs/ExecState.h: added missing class declaration
        * JavaScriptCore/kjs/ExecState.cpp: case wrong on include of context.h
        * JavaScriptCore/JavaScriptCoreSources.bkl: added Context.cpp and ExecState.cpp

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15118 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
lweintraub [Fri, 30 Jun 2006 23:47:09 +0000 (23:47 +0000)]
LayoutTests:

        Reviewed by justin

        * editing/execCommand/format-block-with-trailing-br-expected.checksum: Added.
        * editing/execCommand/format-block-with-trailing-br-expected.png: Added.
        * editing/execCommand/format-block-with-trailing-br-expected.txt: Added.
        * editing/execCommand/format-block-with-trailing-br.html: Added.

WebCore:

        Reviewed by justin

        * editing/VisiblePosition.cpp: Removed is[Not]EqualIgnoringAffinity and made operator== use the logic that ignores affinity.
        * editing/VisiblePosition.h: Ditto.
        (WebCore::operator==):
        * editing/visible_units.cpp:
        (WebCore::isStartOfParagraph): Changed to compare VisiblePositions using ==.
        (WebCore::isEndOfParagraph): Ditto.
        (WebCore::isStartOfBlock): Ditto.
        (WebCore::isEndOfBlock): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15117 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoVersioning
thatcher [Fri, 30 Jun 2006 23:35:16 +0000 (23:35 +0000)]
Versioning

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15115 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoFixed the test case that I just checked in.
justing [Fri, 30 Jun 2006 22:32:52 +0000 (22:32 +0000)]
Fixed the test case that I just checked in.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15114 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
justing [Fri, 30 Jun 2006 22:17:51 +0000 (22:17 +0000)]
LayoutTests:

        Reviewed by levi

        * editing/pasteboard/pasting-object-expected.checksum: Added.
        * editing/pasteboard/pasting-object-expected.png: Added.
        * editing/pasteboard/pasting-object-expected.txt: Added.
        * editing/pasteboard/pasting-object.html: Added.

WebCore:

        Reviewed by levi

        * editing/htmlediting.cpp:
        (WebCore::canHaveChildrenForEditing): Don't insert children into
        object tags while editing.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15113 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
justing [Fri, 30 Jun 2006 19:43:03 +0000 (19:43 +0000)]
LayoutTests:

        Reviewed by harrison

        Added:
        * editing/selection/skip-non-editable-1-expected.txt: Added.
        * editing/selection/skip-non-editable-1.html: Added.
        * editing/selection/skip-non-editable-2-expected.txt: Added.
        * editing/selection/skip-non-editable-2.html: Added.

        Equivalent render tree:
        * editing/execCommand/format-block-with-braces-expected.txt:

        Fixes:
        * editing/selection/iframe-expected.checksum:
        * editing/selection/iframe-expected.png:
        * editing/selection/iframe-expected.txt:
        * editing/selection/inline-table-expected.checksum:
        * editing/selection/inline-table-expected.png:
        * editing/selection/inline-table-expected.txt:
        * editing/selection/move-between-blocks-no-001-expected.checksum:
        * editing/selection/move-between-blocks-no-001-expected.png:
        * editing/selection/move-between-blocks-no-001-expected.txt:
        * editing/selection/select-box-expected.checksum:
        * editing/selection/select-box-expected.png:
        * editing/selection/select-box-expected.txt:

WebCore:

        Reviewed by harrison

        <rdar://problem/4598309
        Caret gets stuck when it hits non editable content within an editable body
        <http://bugzilla.opendarwin.org/show_bug.cgi?id=9510>
        Caret will jump out of an editable region

        * dom/Position.cpp:
        (WebCore::Position::upstream): Don't move into a new editable region so that
        candidates that that straddle an editable/non-editable boundary will
        correspond to different VisiblePositions.
        (WebCore::Position::downstream): Ditto.
        * editing/SelectionController.cpp:
        (WebCore::SelectionController::modifyMovingRightForward): Use VisiblePosition::next(true)
        (WebCore::SelectionController::modifyMovingLeftBackward): Use VisiblePosition::previous(true)
        * editing/VisiblePosition.cpp:
        (WebCore::VisiblePosition::next): Added code to jump to the next editable region as long
        as it has the same highest editable root.
        (WebCore::VisiblePosition::previous): Ditto.
        * editing/VisiblePosition.h:
        * editing/htmlediting.cpp:
        (WebCore::highestEditableRoot): Added, returns the highest editable root of a node if that
        node is in editable content, otherwise 0.
        * editing/htmlediting.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15112 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Fri, 30 Jun 2006 19:09:54 +0000 (19:09 +0000)]
WebCore:

        Reviewed by Darin.

        - Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9358
          REGRESSION: Assertion failure in HTMLInputElement::setValueFromRenderer
          (value == constrainValue(value)) when deleting all text

        Test: editing/deleting/delete-all-text-in-text-field-assertion.html

        Bug 9661 filed to fix the follow-up issue:
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9661
        textContent returns "\n" for a <br> even if it is collapsed

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::setValueFromRenderer): Work around "\n" value
        when all characters are deleted from a text field.

LayoutTests:

        Reviewed by Darin.

        - Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9358
          REGRESSION: Assertion failure in HTMLInputElement::setValueFromRenderer
          (value == constrainValue(value)) when deleting all text

        * editing/deleting/delete-all-text-in-text-field-assertion-expected.txt: Added.
        * editing/deleting/delete-all-text-in-text-field-assertion.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15111 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Darin.
thatcher [Fri, 30 Jun 2006 18:56:59 +0000 (18:56 +0000)]
    Reviewed by Darin.

        Only enable shouldCloseWithWindow when ObjC GC is enabled.
        This maintains backwards compatibility with applications
        that expect a WebView to be usable after the window closes.

        * WebView/WebView.m:
        (-[WebViewPrivate init]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15110 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Tim Omernick
harrison [Fri, 30 Jun 2006 17:53:21 +0000 (17:53 +0000)]
    Reviewed by Tim Omernick

        <rdar://problem/4609481> Crash calling -[WebScriptObject valueForKey:] when JS disabled

        * bridge/mac/FrameMac.mm:
        (WebCore::FrameMac::executionContextForDOM):
        Early return if JS is not enabled.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15109 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Anders.
thatcher [Fri, 30 Jun 2006 17:35:00 +0000 (17:35 +0000)]
    Reviewed by Anders.

        Call _close in dealloc to ensure we cleanup for backwards
        compatibility. This will safeguard and cleanup even if the
        application doesn't use the new close API yet, like Mail.

        * WebView/WebView.m:
        (-[WebView dealloc]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15108 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Tim H.
thatcher [Fri, 30 Jun 2006 14:05:51 +0000 (14:05 +0000)]
    Reviewed by Tim H.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9664
          REGRESSION (r15106): Crash in fast/events/mouseover-mouseout2.html

        * page/FrameView.cpp:
        (WebCore::FrameView::handleMouseMoveEvent): Added a check that oldSubframe is
        still a subframe of the view's frame before passing the event to it.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15107 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
thatcher [Fri, 30 Jun 2006 07:29:33 +0000 (07:29 +0000)]
WebCore:

        Reviewed by Darin.

        <rdar://problem/3694163> -[KWQPageState finalize] is incorrect; design change needed
        <rdar://problem/3694165> -[WebCoreFrameBridge finalize] is incorrect; design change needed

        Added close methods that need to be called before these
        objects can be released. This ensures proper tear-down under GC.

        * WebCore.xcodeproj/project.pbxproj:
        * bridge/mac/WebCoreFrameBridge.h:
        * bridge/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge dealloc]):
        (-[WebCoreFrameBridge finalize]):
        (-[WebCoreFrameBridge close]):
        * bridge/mac/WebCorePageBridge.h:
        * bridge/mac/WebCorePageBridge.mm:
        (-[WebCorePageBridge setMainFrame:]):
        (-[WebCorePageBridge dealloc]):
        (-[WebCorePageBridge finalize]):
        (-[WebCorePageBridge close]):
        (-[WebCorePageBridge mainFrame]):
        (-[WebCorePageBridge setGroupName:]):
        (-[WebCorePageBridge groupName]):
        * kwq/KWQPageState.h:
        * kwq/KWQPageState.mm:
        (-[KWQPageState dealloc]):
        (-[KWQPageState finalize]):
        (-[KWQPageState close]):

WebKit:

        Reviewed by Darin.

        <rdar://problem/4484405> WebKit leaks, improper tear-down
        <rdar://problem/3694059> -[WebBackForwardList finalize] is incorrect; design change needed
        <rdar://problem/3694103> -[WebFrame finalize] is incorrect; design change needed
        <rdar://problem/3694104> -[WebHTMLView finalize] is incorrect; design change needed

        Adds a close method to WebView, this needs to be called when the
        WebView is no longer needed. To make this easier for the common cases
        there is now an "auto close" on WebView that listens to the view's
        parent window. If the parent window closes and the WebView has no
        hostWindow then the WebView is automatically closed if autoClose is YES.
        To manage WebView closing yourself call setAutoClose: and pass NO.

        When a WebView closes it will tear-down and not be usable anymore.
        Close will will called on various other internal objects as a part
        of this, to ensure proper tear-down in GC without relying on finalize.

        * History/WebBackForwardList.m:
        (-[WebBackForwardList dealloc]):
        (-[WebBackForwardList finalize]):
        (-[WebBackForwardList _close]):
        * History/WebHistoryItem.m:
        (+[WebHistoryItem _closeObjectsInPendingPageCaches]):
        (+[WebHistoryItem _releaseAllPendingPageCaches]):
        * History/WebHistoryItemPrivate.h:
        * WebCoreSupport/WebFrameBridge.m:
        (-[WebFrameBridge close]):
        (-[WebFrameBridge saveDocumentToPageCache:]):
        (-[WebFrameBridge canGoBackOrForward:]):
        * WebView/WebFrame.m:
        (-[WebFrame _detachFromParent]):
        (-[WebFrame dealloc]):
        (-[WebFrame finalize]):
        * WebView/WebFrameView.m:
        (-[WebFrameView _setWebFrame:]):
        (-[WebFrameView finalize]):
        * WebView/WebHTMLView.m:
        (-[WebHTMLView close]):
        (-[NSArray dealloc]):
        (-[NSArray finalize]):
        * WebView/WebHTMLViewInternal.h:
        * WebView/WebHTMLViewPrivate.h:
        * WebView/WebScriptDebugDelegate.m:
        (-[WebScriptCallFrame _initWithFrame:initWithWebFrame:]):
        (-[WebScriptCallFrame parsedSource:fromURL:sourceId:startLine:errorLine:errorMessage:]):
        (-[WebScriptCallFrame enteredFrame:sourceId:line:]):
        (-[WebScriptCallFrame hitStatement:sourceId:line:]):
        (-[WebScriptCallFrame leavingFrame:sourceId:line:]):
        * WebView/WebScriptDebugDelegatePrivate.h:
        * WebView/WebView.m:
        (-[WebViewPrivate init]):
        (-[WebView _close]):
        (-[WebView dealloc]):
        (-[WebView finalize]):
        (-[WebView viewWillMoveToWindow:]):
        (-[WebView _windowWillClose:]):
        (-[WebView setPreferencesIdentifier:]):
        (-[WebView mainFrame]):
        (-[WebView setHostWindow:]):
        (-[WebView searchFor:direction:caseSensitive:wrap:]):
        (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]):
        (-[WebView close]):
        (-[WebView setAutoClose:]):
        (-[WebView autoClose]):
        (-[WebView _frameViewAtWindowPoint:]):
        * WebView/WebViewPrivate.h:

WebKitTools:

        Reviewed by Darin.

        Need to call window close so WebView tears-down completly.

        * DumpRenderTree/DumpRenderTree.m:
        (main): call [window close]

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15106 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Fri, 30 Jun 2006 06:36:22 +0000 (06:36 +0000)]
WebCore:

        Reviewed by Hyatt.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=4874
        Table with absolute bottom positioning is positioned incorrectly

        Note: patch originally from Mitz, spruced up by Weinig.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::calcAbsoluteVerticalValues):
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::layout):

LayoutTests:

        Reviewed by Hyatt.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=4874
        Table with absolute bottom positioning is positioned incorrectly

        Note: test case originally from Mitz.

        * fast/table/absolute-table-at-bottom-expected.checksum: Added.
        * fast/table/absolute-table-at-bottom-expected.png: Added.
        * fast/table/absolute-table-at-bottom-expected.txt: Added.
        * fast/table/absolute-table-at-bottom.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15105 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by mjs and timo.
kdecker [Fri, 30 Jun 2006 05:56:59 +0000 (05:56 +0000)]
    Reviewed by mjs and timo.

        Fixed: <rdar://problem/4609119> handleAuthenticationFromResource was removed; needed by the Dashboard

        * WebView/WebViewPrivate.h: Added handleAuthenticationFromResource back into the header. Needed by the
        Dashboard, but was removed in r.14028 on 2006-04-23.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15104 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Fri, 30 Jun 2006 05:35:21 +0000 (05:35 +0000)]
WebCore:

        Reviewed by Justin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9505
          moveParagraphContentsToNewBlockIfNecessary creates a new block outside the current position

        * editing/CompositeEditCommand.cpp:
        Added sanity checking to prevent modifying nodes outside of
        where we should be
        (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):

LayoutTests:

        Reviewed by Justin.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9505
         moveParagraphContentsToNewBlockIfNecessary creates a new block outside the current position

        * editing/pasteboard/paste-table-002.html: Added.
        * editing/pasteboard/paste-table-002-expected.checksum: Added.
        * editing/pasteboard/paste-table-002-expected.png: Added.
        * editing/pasteboard/paste-table-002-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15103 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Levi.
beidson [Fri, 30 Jun 2006 04:45:43 +0000 (04:45 +0000)]
    Reviewed by Levi.

        In addition to a few small details, logging changes, and style cleanups, this is a stop-gap hack
        for a problem in SQLite's blob handling.  Querying for a blob in a void* form is reproducibly
        returning a corrupt buffer.  The temporary solution is to query for the blob as "quoted text" and
        manually convert the return string into a character buffer.

        * icon/IconDatabase.cpp:
        (WebCore::IconDatabase::recreateDatabase):
        (WebCore::IconDatabase::createPrivateTables):

        (WebCore::hexToUnsignedChar): These two functions are the text-to-character-data converters for the time being
        (WebCore::hexStringToVector):

        (WebCore::IconDatabase::imageDataForIconID):
        (WebCore::IconDatabase::imageDataForIconURL):
        (WebCore::IconDatabase::imageDataForPageURL):
        (WebCore::IconDatabase::iconForPageURL):
        (WebCore::IconDatabase::hasIconForIconURL):
        * icon/IconDatabase.h:  changes the icon data accessors to return a Vector<unsigned char> instead of void*

        * icon/SQLStatement.cpp:
        (WebCore::SQLStatement::columnCount):
        (WebCore::SQLStatement::getColumnBlob):
        * icon/SiteIcon.cpp:
        (SiteIcon::getImage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15102 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Fri, 30 Jun 2006 04:39:24 +0000 (04:39 +0000)]
WebCore:

        Reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9652
          Assertion failure when changing an RTL table cell to display:none

        Test: fast/table/rtl-cell-display-none-assert.html

        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::layoutRows): Corrected the index used as
        the last index in the columnPos vector.

LayoutTests:

        Reviewed by Darin.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9652
          Assertion failure when changing an RTL table cell to display:none

        * fast/table/rtl-cell-display-none-assert-expected.checksum: Added.
        * fast/table/rtl-cell-display-none-assert-expected.png: Added.
        * fast/table/rtl-cell-display-none-assert-expected.txt: Added.
        * fast/table/rtl-cell-display-none-assert.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15101 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Kevin Decker.
tomernic [Fri, 30 Jun 2006 04:31:30 +0000 (04:31 +0000)]
    Reviewed by Kevin Decker.

        <rdar://problem/4608487> REGRESSION: reproducible crash in +[WebCoreFrameBridge supportedImageMIMETypes]

        * Plugins/WebPluginDatabase.m:
        (+[WebPluginDatabase setAdditionalWebPlugInPaths:]):
        One might be tempted to add additionalWebPlugInPaths to the global WebPluginDatabase here.
        For backward compatibility with earlier versions of the +setAdditionalWebPlugInPaths: SPI,
        we need to save a copy of the additional paths and not cause a refresh of the plugin DB
        at this time.
        (-[WebPluginDatabase _plugInPaths]):
        Include additionalWebPlugInPaths if this is the global DB.
        (-[WebPluginDatabase refresh]):
        Call -_plugInPaths to get the modified array of paths.  This is similar to what the old code
        (before we had per-WebView plugin search paths).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15100 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebKitTools:
ddkilzer [Fri, 30 Jun 2006 04:24:40 +0000 (04:24 +0000)]
WebKitTools:

        Reviewed by Darin.

        Bug 9615: Buildbot configuration should be in SVN repository
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9615

        Import BuildBot configuration files as used by build.webkit.org.
        auth.py has been stubbed out so that slave passwords are not disclosed.

        * BuildSlaveSupport/build.webkit.org-config/Makefile: Added.
        * BuildSlaveSupport/build.webkit.org-config/buildbot.css: Added.
        * BuildSlaveSupport/build.webkit.org-config/buildbot.tac: Added.
        * BuildSlaveSupport/build.webkit.org-config/master.cfg: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/__init__.py: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/auth.py: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/basesteps.py: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/builders.py: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/factories.py: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/schedulers.py: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/status.py: Added.
        * BuildSlaveSupport/build.webkit.org-config/webkit/steps.py: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15099 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebKitTools:
ddkilzer [Fri, 30 Jun 2006 04:20:18 +0000 (04:20 +0000)]
WebKitTools:

        Reviewed by Darin.

        Bug 9614: Nightly builds should notify user if a newer build is available
        http://bugzilla.opendarwin.org/show_bug.cgi?id=9614

        * BuildSlaveSupport/build-launcher-app: Write revision number to WebKit.app's VERSION file.
        * BuildSlaveSupport/build-launcher-dmg: Pass revision number to server-side nightly maintenance
        script so it can keep track of the latest revision.
        * Scripts/run-webkit-tests: Pass build-dumprendertree's exit status through correctly.
        * WebKitLauncher/VERSION: Added.  Placeholder for SVN revision number
        * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:
        * WebKitLauncher/start.html: Retrieve revision number from VERSION file, and pass it through to
        the nightly start page.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15098 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Anders.
darin [Fri, 30 Jun 2006 02:56:14 +0000 (02:56 +0000)]
    Reviewed by Anders.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9622
          showModalDialog returnValue ignored, function result is always "undefined"

        * manual-tests/modal-dialog.html: Added.
        * manual-tests/show-modal-dialog-test.html: Added.

        * page/Frame.cpp: (WebCore::Frame::clear): Call KJSProxy::clear with the
        clearWindowProperties parameter instead of not calling it at all when
        clearWindowProperties is false.

        * bindings/js/kjs_proxy.h: Add boolean clearWindowProperties parameter.
        * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): Pass clearWindowProperties
        variable through to Window::clear instead of not calling it at all.

        * bindings/js/kjs_window.h: Add boolean clearWindowProperties parameter.
        * bindings/js/kjs_window.cpp: (KJS::Window::clear): If clearWindowProperties
        is false, do only the returnValue work, not the rest of the work.

        * manual-tests/modal-dialog.html: Added.
        * manual-tests/show-modal-dialog-test.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15097 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Geoff.
mjs [Thu, 29 Jun 2006 23:32:47 +0000 (23:32 +0000)]
    Reviewed by Geoff.

        - add headerdoc comments to some of the new JS API headers

        * API/JSBase.h:
        * API/JSValueRef.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15096 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Hyatt.
bdakin [Thu, 29 Jun 2006 23:18:23 +0000 (23:18 +0000)]
    Reviewed by Hyatt.

        Fix for <rdar://problem/4450615> Add composite mode to background
        styles

        -webkit-background-composite will set a composite mode on a
        background image.

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::):
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
        * css/CSSPropertyNames.in: Add -webkit-background-composite
        * css/CSSValueKeywords.in: Add all possible values (clear, copy,
        source-over, source-in, source-out, source-atop, destination-over,
        destination-in, destination-out, destination-atop, xor, plus-
        darker, highlight, and plus-lighter)
        * css/cssparser.cpp:
        (WebCore::CSSParser::parseValue):
        (WebCore::CSSParser::parseBackgroundProperty):
        * css/cssstyleselector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::CSSStyleSelector::mapBackgroundComposite):
        * css/cssstyleselector.h:
        * platform/GraphicsContext.cpp:
        (WebCore::GraphicsContext::drawTiledImage):
        * platform/GraphicsContext.h: drawTiledImage() now takes a
        composite operator.
        * platform/Image.h: drawTiled() now takes a composite operator.
        * platform/cairo/ImageCairo.cpp:
        (WebCore::Image::drawTiled): Set the composite operator.
        * platform/mac/ImageMac.mm:
        (WebCore::Image::drawTiled): Set the composite operator.
        * platform/win/TemporaryLinkStubs.cpp:
        (Image::drawTiled):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::paintBackgroundExtended): Send the composite
        operator in the render style over to the graphics context.
        * rendering/render_style.cpp:
        (WebCore::BackgroundLayer::BackgroundLayer):
        (WebCore::BackgroundLayer::operator=):
        (WebCore::BackgroundLayer::operator==):
        (WebCore::BackgroundLayer::fillUnsetProperties):
        (WebCore::BackgroundLayer::cullEmptyLayers):
        * rendering/render_style.h:
        (WebCore::BackgroundLayer::backgroundComposite):
        (WebCore::BackgroundLayer::isBackgroundCompositeSet):
        (WebCore::BackgroundLayer::setBackgroundComposite):
        (WebCore::BackgroundLayer::clearBackgroundComposite):
        (WebCore::RenderStyle::backgroundComposite):
        (WebCore::RenderStyle::initialBackgroundComposite):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15095 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by John Sullivan.
tomernic [Thu, 29 Jun 2006 19:28:20 +0000 (19:28 +0000)]
    Reviewed by John Sullivan.

        WebHistoryItem now supports getting and setting arbitrary properties via _transientPropertyForKey: and
        -_setTransientProperty:forKey:.
        For now, these properties do not persist with the rest of the history data.  They are intended to hold transient
        per-history-item state, which is something that was until now difficult for a WebKit client app to do.

        * History/WebHistoryItemPrivate.h:
        * History/WebHistoryItem.m:
        (-[WebHistoryItemPrivate dealloc]):
        (-[WebHistoryItem _transientPropertyForKey:]):
        (-[WebHistoryItem _setTransientProperty:forKey:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15094 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Harrison.
thatcher [Thu, 29 Jun 2006 18:18:42 +0000 (18:18 +0000)]
    Reviewed by Harrison.

        Smart insert and delete, continuous spell checking and autoscroll
        can now be used for any WebView, not just editable ones. All of
        these make sense for documents that might contain content editable
        areas or our new text fields. Autoscroll is usefull for dragging
        for file input controls also.

        Added a SPI to toggle WebViews tab key behavior, tabKeyCyclesThroughElements.
        WebHTMLView's _interceptEditingKeyEvent now uses WebView's
        tabKeyCyclesThroughElements state to determine whether or not
        to process tab key events. The idea here is that tabKeyCyclesThroughElements
        will be YES when this WebView is being used in a browser, and we
        desire the behavior where tab moves to the next element in tab order.
        If tabKeyCyclesThroughElements is NO, it is likely that the WebView
        is being embedded as the whole view, as in Mail, and tabs should input
        tabs as expected in a text editor. Using Option-Tab always cycles
        through elements.

        * WebView/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
        * WebView/WebHTMLView.m:
        (-[NSArray _interceptEditingKeyEvent:]):
        * WebView/WebView.m:
        (-[WebViewPrivate init]):
        (-[WebView _autoscrollForDraggingInfo:timeDelta:]):
        (-[WebView _shouldAutoscrollForDraggingInfo:]):
        (-[WebView validateUserInterfaceItem:]):
        (-[WebView toggleSmartInsertDelete:]):
        (-[WebView toggleContinuousSpellChecking:]):
        (-[WebView setTabKeyCyclesThroughElements:]):
        (-[WebView tabKeyCyclesThroughElements]):
        * WebView/WebViewPrivate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15093 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
ddkilzer [Thu, 29 Jun 2006 15:28:48 +0000 (15:28 +0000)]
WebCore:

        Reviewed by Darin.

        http://bugzilla.opendarwin.org/show_bug.cgi?id=9649
        The no-svg build broke after r15091

        * bindings/objc/DOMInternal.h: Added #if XPATH_SUPPORT/#endif.
        * bindings/objc/DOMInternal.mm: Ditto.
        (raiseDOMException):
        * bindings/objc/DOMXPath.h: Ditto.
        * bindings/objc/DOMXPath.mm: Ditto.
        * bindings/objc/DOMXPathInternal.h: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15092 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
andersca [Thu, 29 Jun 2006 07:54:49 +0000 (07:54 +0000)]
WebCore:

2006-06-29  Anders Carlsson  <acarlsson@apple.com>

        Reviewed by Tim O.

        <rdar://problem/4599760> Objective-C XPath support

        * WebCore.xcodeproj/project.pbxproj:
        Add files.

        * bindings/objc/DOMInternal.h:
        * bindings/objc/DOMInternal.mm:
        (raiseDOMException):
        Handle XPath exceptions

        * bindings/objc/DOMXPath.h: Added.
        (-[DOMXPathNSResolver lookupNamespaceURI:]):
        * bindings/objc/DOMXPath.mm: Added.
        (-[DOMNativeXPathNSResolver dealloc]):
        (-[DOMNativeXPathNSResolver finalize]):
        (-[DOMNativeXPathNSResolver _xpathNSResolver]):
        (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:]):
        (+[DOMNativeXPathNSResolver _xpathNSResolverWith:]):
        (-[DOMNativeXPathNSResolver lookupNamespaceURI:]):
        (-[DOMXPathResult dealloc]):
        (-[DOMXPathResult finalize]):
        (-[DOMXPathResult resultType]):
        (-[DOMXPathResult numberValue]):
        (-[DOMXPathResult stringValue]):
        (-[DOMXPathResult booleanValue]):
        (-[DOMXPathResult singleNodeValue]):
        (-[DOMXPathResult invalidIteratorState]):
        (-[DOMXPathResult snapshotLength]):
        (-[DOMXPathResult iterateNext]):
        (-[DOMXPathResult snapshotItem:]):
        (-[DOMXPathResult _xpathResult]):
        (-[DOMXPathResult _initWithXPathResult:]):
        (+[DOMXPathResult _xpathResultWith:]):
        (-[DOMXPathExpression evaluate:::]):
        (-[DOMXPathExpression _xpathExpression]):
        (-[DOMXPathExpression _initWithXPathExpression:]):
        (+[DOMXPathExpression _xpathExpressionWith:]):
        (-[DOMDocument createExpression::]):
        (-[DOMDocument createNSResolver:]):
        (-[DOMDocument evaluate:::::]):
        * bindings/objc/DOMXPathInternal.h: Added.
        Add Objective-C XPath API.

WebKit:

2006-06-29  Anders Carlsson  <acarlsson@apple.com>

        Reviewed by Tim O.

        * WebKit.xcodeproj/project.pbxproj:
        Add DOMXPath.h header.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15091 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoWebCore:
hyatt [Thu, 29 Jun 2006 00:32:55 +0000 (00:32 +0000)]
WebCore:

        Add support for custom highlighting to paint at the root line box level
        (and to inflate the box it uses so that it can go outside the bounds of
        the line if necessary).

        Reviewed by harrison

        * bridge/mac/FrameMac.h:
        * bridge/mac/FrameMac.mm:
        (WebCore::FrameMac::customHighlightLineRect):
        (WebCore::FrameMac::paintCustomHighlight):
        * bridge/mac/WebCoreFrameBridge.h:
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::paintCustomHighlight):
        * rendering/RootInlineBox.cpp:
        (WebCore::RootInlineBox::paintCustomHighlight):
        (WebCore::RootInlineBox::paint):
        * rendering/RootInlineBox.h:

WebKit:

        Fix custom highlighting so that you can paint the entire line (and go
        outside the bounds of the line).

        Reviewed by harrison

        * WebCoreSupport/WebFrameBridge.m:
        (-[WebFrameBridge customHighlightRect:forLine:]):
        (-[WebFrameBridge paintCustomHighlight:forBox:onLine:behindText:entireLine:]):
        * WebKit.xcodeproj/project.pbxproj:
        * WebView/WebHTMLViewPrivate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15090 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by Anders.
mjs [Thu, 29 Jun 2006 00:20:12 +0000 (00:20 +0000)]
    Reviewed by Anders.

        - fix Frame leak on layout tests

        * WebCoreSupport/WebPageBridge.m:
        (-[WebPageBridge outerView]): Return WebFrameView for main frame instead
        of WebView to avoid reference cycle between WebView and Page.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15089 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
lweintraub [Wed, 28 Jun 2006 23:44:03 +0000 (23:44 +0000)]
LayoutTests:

        Reviewed by justin

        <rdar://problem/4592005> FormatBlock inserts in the wrong place, disregarding editable content
        <rdar://problem/4590763> FormatBlock for paragraph style doesn't work

        * editing/execCommand/format-block-with-braces-expected.checksum: Added.
        * editing/execCommand/format-block-with-braces-expected.png: Added.
        * editing/execCommand/format-block-with-braces-expected.txt: Added.
        * editing/execCommand/format-block-with-braces.html: Added.
        * editing/execCommand/indent-list-item-expected.checksum: Added.
        * editing/execCommand/indent-list-item-expected.png: Added.
        * editing/execCommand/indent-list-item-expected.txt: Added.
        * editing/execCommand/indent-list-item.html: Added.
        * editing/execCommand/indent-selection-expected.checksum: Added.
        * editing/execCommand/indent-selection-expected.png: Added.
        * editing/execCommand/indent-selection-expected.txt: Added.
        * editing/execCommand/indent-selection.html: Added.
        * editing/execCommand/outdent-selection-expected.checksum: Added.
        * editing/execCommand/outdent-selection-expected.png: Added.
        * editing/execCommand/outdent-selection-expected.txt: Added.
        * editing/execCommand/outdent-selection.html: Added.

WebCore:

        Reviewed by justin

        <rdar://problem/4592005> FormatBlock inserts in the wrong place, disregarding editable content
        <rdar://problem/4590763> FormatBlock for paragraph style doesn't work

        * dom/Node.cpp:
        (WebCore::Node::rootEditableElement): Return inline nodes
        * editing/FormatBlockCommand.cpp:
        (WebCore::FormatBlockCommand::doApply): Keep from inserting before editable content
        * editing/JSEditor.cpp: Support html braces (<>) around tag names

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15088 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by levi
justing [Wed, 28 Jun 2006 23:18:01 +0000 (23:18 +0000)]
    Reviewed by levi

        svg/custom/text-hit-test.svg was failing

        * rendering/RenderContainer.cpp:
        (WebCore::RenderContainer::positionForCoordinates): Don't skip child
        renderers that have a height of 0 when looking for the closest child
        renderer, they may contain content that overflows.
        * rendering/RenderText.cpp:
        (WebCore::RenderText::positionForCoordinates): Fixed typos.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15087 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Make the view source document properly handle <script>. We don't syntax
hyatt [Wed, 28 Jun 2006 20:43:18 +0000 (20:43 +0000)]
    Make the view source document properly handle <script>.  We don't syntax
        highlight the JS yet, but it shows up properly now.

        Reviewed by john

        * WebCore.xcodeproj/project.pbxproj:
        * html/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::scriptHandler):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoJavaScriptCore:
thatcher [Wed, 28 Jun 2006 20:32:45 +0000 (20:32 +0000)]
JavaScriptCore:

        Prefer the Stabs debugging symbols format until DWARF bugs are fixed.

        * JavaScriptCore.xcodeproj/project.pbxproj:

JavaScriptGlue:

        Prefer the Stabs debugging symbols format until DWARF bugs are fixed.

        * JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

        Prefer the Stabs debugging symbols format until DWARF bugs are fixed.

        * WebCore.xcodeproj/project.pbxproj:

WebKit:

        Prefer the Stabs debugging symbols format until DWARF bugs are fixed.

        * WebKit.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15085 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Reviewed by levi
justing [Wed, 28 Jun 2006 20:18:11 +0000 (20:18 +0000)]
    Reviewed by levi

        Fixed EditActions for InsertHorizontalRule and RemoveFormat.

        * editing/JSEditor.cpp:
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
        (WebCore::ReplaceSelectionCommand::editingAction):
        * editing/ReplaceSelectionCommand.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15084 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoadded google spreadsheets and yahoo mail beta, moved google calendar and yahoo previe...
aliceli1 [Wed, 28 Jun 2006 20:09:50 +0000 (20:09 +0000)]
added google spreadsheets and yahoo mail beta, moved google calendar and yahoo preview to alumni list.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15083 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoBuild Fix
lweintraub [Wed, 28 Jun 2006 18:58:19 +0000 (18:58 +0000)]
Build Fix

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15082 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years ago Build Fix. Reviewed by NOBODY
lweintraub [Wed, 28 Jun 2006 18:36:46 +0000 (18:36 +0000)]
     Build Fix. Reviewed by NOBODY

        * editing/IndentOutdentCommand.cpp:
        (WebCore::IndentOutdentCommand::indentRegion):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15081 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
lweintraub [Wed, 28 Jun 2006 18:17:58 +0000 (18:17 +0000)]
LayoutTests:

        Reviewed by justin

        http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
        Bug 7568: Implement Indent/Outdent

        * editing/execCommand/indent-list-item-expected.checksum: Added.
        * editing/execCommand/indent-list-item-expected.png: Added.
        * editing/execCommand/indent-list-item-expected.txt: Added.
        * editing/execCommand/indent-list-item.html: Added.
        * editing/execCommand/indent-selection-expected.checksum: Added.
        * editing/execCommand/indent-selection-expected.png: Added.
        * editing/execCommand/indent-selection-expected.txt: Added.
        * editing/execCommand/indent-selection.html: Added.
        * editing/execCommand/outdent-selection.html: Added.

WebCore:

        Reviewed by justin

        http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
        Bug 7568: Implement Indent/Outdent

        * WebCore.vcproj/WebCore/WebCore.vcproj: Added IndentOutdentCommand.h/cpp
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * editing/IndentOutdentCommand.cpp: Added.
        (WebCore::IndentOutdentCommand::IndentOutdentCommand):
        (WebCore::enclosingListOrBlockquote):
        (WebCore::IndentOutdentCommand::splitTreeToNode): Splits the DOM tree from a
        descendent node to an ending ancestor, duplicating nodes when necessary. Returns
        the last node split. Used to insert blockquotes at the topmost level.
        (WebCore::IndentOutdentCommand::indentRegion):
        (WebCore::IndentOutdentCommand::outdentParagraph):
        (WebCore::IndentOutdentCommand::outdentRegion):
        (WebCore::IndentOutdentCommand::doApply):
        * editing/IndentOutdentCommand.h: Added.
        (WebCore::IndentOutdentCommand::):
        * editing/JSEditor.cpp: Added the execCommands Indent and Outdent
        * editing/htmlediting.cpp:
        (WebCore::enclosingNodeWithTag): Finds the enclosing node with any specified tag.
        (WebCore::enclosingListChild): Added checks for nill and editable boundaries.
        (WebCore::outermostEnclosingListChild): Returns the highest ancestor list child.
        (WebCore::highestAncestor): Added.
        (WebCore::createElement): Changed the passed in string to a const reference.
        * editing/htmlediting.h:

WebKit:

        Reviewed by justin

        http://bugzilla.opendarwin.org/show_bug.cgi?id=7568
        Bug 7568: Implement Indent/Outdent
        Added undo action strings and enum values

        * English.lproj/Localizable.strings:
        * WebCoreSupport/WebFrameBridge.m:
        (-[WebFrameBridge nameForUndoAction:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15080 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
darin [Wed, 28 Jun 2006 15:42:13 +0000 (15:42 +0000)]
LayoutTests:

        Reviewed by Darin and Hyatt.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9561
          REGRESSION: Content property on :before of button causes hang on click or hover

        * fast/forms/button-generated-content-expected.checksum: Added.
        * fast/forms/button-generated-content-expected.png: Added.
        * fast/forms/button-generated-content-expected.txt: Added.
        * fast/forms/button-generated-content.html: Added.

WebCore:

        Reviewed by Darin and Hyatt.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9561
          REGRESSION: Content property on :before of button causes hang on click or hover

        Test: fast/forms/button-generated-content.html

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::setStyle):
        * rendering/RenderButton.cpp:
        (WebCore::RenderButton::updatePseudoChild): Added. Calls updatePseudoChildForObject()
        on the button itself or on its inner div, if it has one.
        * rendering/RenderButton.h:
        (WebCore::RenderButton::createsAnonymousWrapper): Added. Returns true.
        * rendering/RenderContainer.cpp:
        (WebCore::RenderContainer::pseudoChild): Added. Returns the child containing
        generated content of the requested type if there is one, or otherwise the
        child before/after which such generated content should come.
        (WebCore::RenderContainer::updatePseudoChild): Removed the child parameter and moved the guts
        of this method into updatePseudoChildForObject, which this method calls unless the object
        is an anonymous wrapper.
        (WebCore::RenderContainer::updatePseudoChildForObject): Added. Does the what
        updatePseudoChildForObject did previously, but fetches the pseudo style from
        the styledObject parameter.
        * rendering/RenderContainer.h:
        * rendering/RenderInline.cpp:
        (WebCore::RenderInline::setStyle):
        (WebCore::RenderInline::addChildToFlow):
        (WebCore::RenderInline::splitInlines):
        (WebCore::RenderInline::splitFlow):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::createsAnonymousWrapper): Added. This method replaces
        allowsReusingAnonymousChild and returns the opposite of what that method used to
        return. Returns true if the object creates an anonymous child to contain all its
        other children.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15079 268f45cc-cd09-0410-ab3c-d52691b4dbfc