WebKit-https.git
16 years ago Reviewed by Geoff.
mjs [Thu, 13 Apr 2006 10:33:16 +0000 (10:33 +0000)]
    Reviewed by Geoff.

        - fix testkjs to not show false-positive KJS::Node leaks in debug builds

        * kjs/testkjs.cpp:
        (doIt):
        (kjsmain):

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

16 years agoRefining the list of renames to be done soon.
darin [Thu, 13 Apr 2006 07:48:15 +0000 (07:48 +0000)]
Refining the list of renames to be done soon.

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

16 years ago Rubber-stamped by Anders.
darin [Thu, 13 Apr 2006 07:07:34 +0000 (07:07 +0000)]
    Rubber-stamped by Anders.

        - fix Windows build

        * WebCore.vcproj/Image\ Viewer/Image\ Viewer.vcproj: Add loader directory.

        - use std::min/max exclusively intead of kMin/Max
        - eliminate KWQDef.h since all it had left in it was kMin/Max

        * WebCore.vcproj/WebCore/WebCore.vcproj: Remove KWQDef.h.
        * WebCore.xcodeproj/project.pbxproj: Ditto.

        * kwq/KWQDef.h: Removed.

        * bridge/mac/FrameMac.mm:
        (WebCore::FrameMac::attributedString):
        * bridge/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
        * css/cssstyleselector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
        (WebCore::CSSStyleSelector::fontSizeForKeyword):
        * dom/Document.cpp:
        (WebCore::Document::minimumLayoutDelay):
        (WebCore::Document::addMarker):
        * dom/StyledElement.cpp:
        (WebCore::StyledElement::addCSSColor):
        * dom/xml_tokenizer.cpp:
        (WebCore::OffsetBuffer::readOutBytes):
        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::deleteInsignificantText):
        * editing/TextIterator.cpp:
        (WebCore::TextIterator::handleTextNode):
        (WebCore::TextIterator::handleTextBox):
        (WebCore::CharacterIterator::string):
        (WebCore::findPlainText):
        * editing/htmlediting.cpp:
        (WebCore::rangeCompliantEquivalent):
        * editing/markup.cpp:
        (WebCore::renderedText):
        * editing/visible_units.cpp:
        (WebCore::startOfParagraph):
        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::parseMappedAttribute):
        * html/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::parseComment):
        (WebCore::HTMLTokenizer::parseEntity):
        (WebCore::HTMLTokenizer::parseTag):
        (WebCore::HTMLTokenizer::enlargeBuffer):
        (WebCore::HTMLTokenizer::enlargeScriptBuffer):
        * html/html_imageimpl.cpp:
        (WebCore::HTMLAreaElement::getRegion):
        * html/html_tableimpl.cpp:
        (WebCore::HTMLTableElement::parseMappedAttribute):
        * ksvg2/css/SVGCSSParser.cpp:
        (WebCore::CSSParser::parseSVGPaint):
        (WebCore::CSSParser::parseSVGColor):
        * kwq/KWQComboBox.mm:
        (QComboBox::sizeHint):
        * kwq/KWQListBox.mm:
        (QListBox::sizeForNumberOfLines):
        * kwq/KWQSlider.mm:
        (QSlider::setValue):
        * loader/Cache.cpp:
        (WebCore::Cache::setSize):
        * page/Frame.cpp:
        (WebCore::Frame::forceLayoutWithPageWidthRange):
        * platform/DeprecatedPtrListImpl.h:
        * platform/DeprecatedString.cpp:
        (ucstrcmp):
        * platform/DeprecatedString.h:
        * platform/DeprecatedValueListImpl.h:
        * platform/mac/GraphicsContextMac.mm:
        (WebCore::GraphicsContext::addRoundedRectClip):
        * platform/mac/WebCoreTextArea.mm:
        (-[WebCoreTextView _trackResizeFromMouseDown:]):
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::isSelected):
        (WebCore::InlineTextBox::selectionRect):
        (WebCore::InlineTextBox::placeEllipsisBox):
        (WebCore::InlineTextBox::selectionStartEnd):
        (WebCore::InlineTextBox::paintMarkedTextBackground):
        (WebCore::InlineTextBox::paintSpellingMarker):
        (WebCore::InlineTextBox::paintTextMatchMarker):
        (WebCore::InlineTextBox::paintMarkedTextUnderline):
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::overflowRect):
        (WebCore::RenderBlock::layoutBlock):
        (WebCore::RenderBlock::collapseMargins):
        (WebCore::RenderBlock::clearFloatsIfNeeded):
        (WebCore::RenderBlock::estimateVerticalPosition):
        (WebCore::RenderBlock::determineHorizontalPosition):
        (WebCore::RenderBlock::setCollapsedBottomMargin):
        (WebCore::RenderBlock::handleBottomOfBlock):
        (WebCore::RenderBlock::layoutBlockChildren):
        (WebCore::RenderBlock::fillVerticalSelectionGap):
        (WebCore::RenderBlock::fillLeftSelectionGap):
        (WebCore::RenderBlock::fillRightSelectionGap):
        (WebCore::RenderBlock::positionNewFloats):
        (WebCore::RenderBlock::nearestFloatBottom):
        (WebCore::RenderBlock::lowestPosition):
        (WebCore::RenderBlock::rightmostPosition):
        (WebCore::RenderBlock::leftmostPosition):
        (WebCore::RenderBlock::getClearDelta):
        (WebCore::RenderBlock::calcMinMaxWidth):
        (WebCore::RenderBlock::calcInlineMinMaxWidth):
        (WebCore::RenderBlock::calcBlocminMaxWidth):
        * rendering/RenderBlock.h:
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::calcBorderBoxWidth):
        (WebCore::RenderBox::calcBorderBoxHeight):
        (WebCore::RenderBox::calcContentBoxWidth):
        (WebCore::RenderBox::calcContentBoxHeight):
        (WebCore::RenderBox::paintRootBoxDecorations):
        (WebCore::RenderBox::paintBoxDecorations):
        (WebCore::RenderBox::calcWidth):
        (WebCore::RenderBox::calcWidthUsing):
        (WebCore::RenderBox::calcHeight):
        (WebCore::RenderBox::calcPercentageHeight):
        (WebCore::RenderBox::calcReplacedWidth):
        (WebCore::RenderBox::calcReplacedHeight):
        (WebCore::RenderBox::calcAbsoluteHorizontalValues):
        (WebCore::RenderBox::calcAbsoluteVerticalValues):
        * rendering/RenderCanvas.cpp:
        (WebCore::RenderCanvas::layout):
        * rendering/RenderFlexibleBox.cpp:
        (WebCore::RenderFlexibleBox::calcMinMaxWidth):
        (WebCore::RenderFlexibleBox::layoutHorizontalBox):
        (WebCore::RenderFlexibleBox::layoutVerticalBox):
        (WebCore::RenderFlexibleBox::allowedChildFlex):
        * rendering/RenderFlow.cpp:
        (WebCore::RenderFlow::paintLines):
        (WebCore::RenderFlow::lowestPosition):
        (WebCore::RenderFlow::rightmostPosition):
        (WebCore::RenderFlow::leftmostPosition):
        (WebCore::RenderFlow::paintOutlineForLine):
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::imageChanged):
        (WebCore::RenderImage::calcReplacedWidth):
        (WebCore::RenderImage::calcReplacedHeight):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::scrollRectToVisible):
        (WebCore::RenderLayer::computeScrollDimensions):
        (WebCore::RenderLayer::updateScrollInfoAfterLayout):
        (WebCore::RenderLayer::absoluteBoundingBox):
        (WebCore::Marquee::marqueeSpeed):
        (WebCore::Marquee::computePosition):
        (WebCore::Marquee::timerFired):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::drawBorder):
        (WebCore::RenderObject::paintBorderImage):
        (WebCore::RenderObject::paintBorder):
        (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::calcWidth):
        (WebCore::RenderTable::layout):
        (WebCore::RenderTable::paintBoxDecorations):
        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::paintBackgroundsBehindCell):
        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::layoutRows):
        (WebCore::RenderTableSection::lowestPosition):
        (WebCore::RenderTableSection::rightmostPosition):
        (WebCore::RenderTableSection::leftmostPosition):
        * rendering/RenderText.cpp:
        (WebCore::RenderText::caretRect):
        (WebCore::RenderText::calcMinMaxWidth):
        (WebCore::RenderText::minXPos):
        (WebCore::RenderText::width):
        (WebCore::RenderText::caretMinOffset):
        (WebCore::RenderText::caretMaxOffset):
        * rendering/bidi.cpp:
        (WebCore::RenderBlock::computeHorizontalPositionsForLine):
        (WebCore::RenderBlock::layoutInlineChildren):
        (WebCore::RenderBlock::checkLinesForOverflow):
        * rendering/render_form.cpp:
        (WebCore::RenderLineEdit::setSelectionStart):
        (WebCore::RenderLineEdit::setSelectionEnd):
        (WebCore::RenderLineEdit::setSelectionRange):
        (WebCore::RenderFieldset::layoutLegend):
        (WebCore::RenderFieldset::paintBoxDecorations):
        (WebCore::RenderSelect::layout):
        (WebCore::RenderTextArea::calcMinMaxWidth):
        (WebCore::RenderSlider::updateFromElement):
        * rendering/render_frames.cpp:
        (WebCore::RenderFrameSet::layout):
        * rendering/render_line.cpp:
        (WebCore::InlineFlowBox::placeBoxesHorizontally):
        (WebCore::InlineFlowBox::verticallyAlignBoxes):
        (WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
        (WebCore::InlineFlowBox::placeBoxesVertically):
        (WebCore::InlineFlowBox::paintBackgroundAndBorder):
        * rendering/render_line.h:
        (WebCore::RootInlineBox::selectionHeight):
        * rendering/render_list.cpp:
        (WebCore::RenderListItem::positionListMarker):
        * rendering/render_replaced.cpp:
        (WebCore::RenderReplaced::shouldPaint):
        * rendering/table_layout.cpp:
        (WebCore::FixedTableLayout::calcMinMaxWidth):
        (WebCore::AutoTableLayout::recalcColumn):
        (WebCore::AutoTableLayout::calcMinMaxWidth):
        (WebCore::AutoTableLayout::calcEffectiveWidth):
        (WebCore::AutoTableLayout::layout):
        Use min/max instead of kMin/kMax.

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

16 years ago Rubber-stamped by Anders.
darin [Thu, 13 Apr 2006 06:32:52 +0000 (06:32 +0000)]
    Rubber-stamped by Anders.

        - get ready for some more de-KWQ-ing done by the renaming script in two ways
            1) stop using forwarding headers for things within WebCore
            2) remove a bit of unused stuff

        * loader/CachedImage.h:
        * loader/CachedImage.cpp:
        * loader/DocLoader.cpp:
        * loader/DocLoader.h:
        * page/Frame.cpp:
        * xml/XSLTProcessor.cpp:
        Removed unused showAnimations functions and data. We can add back later if we need it.
        And if we do, we won't use a typedef from KHTMLSettings.

        * ForwardingHeaders/java: Removed.
        * ForwardingHeaders/java/kjavaappletwidget.h: Removed.
        * ForwardingHeaders/khtml_settings.h: Removed.
        * ForwardingHeaders/kio: Removed.
        * ForwardingHeaders/kio/global.h: Removed.
        * ForwardingHeaders/ksslkeygen.h: Removed.
        * ForwardingHeaders/q3ptrlist.h: Removed.
        * ForwardingHeaders/q3valuelist.h: Removed.
        * ForwardingHeaders/qcombobox.h: Removed.
        * ForwardingHeaders/qfontmetrics.h: Removed.
        * ForwardingHeaders/qlineedit.h: Removed.
        * ForwardingHeaders/qmatrix.h: Removed.
        * ForwardingHeaders/qptrlist.h: Removed.
        * ForwardingHeaders/qptrqueue.h: Removed.
        * ForwardingHeaders/qregexp.h: Removed.
        * ForwardingHeaders/qscrollbar.h: Removed.
        * ForwardingHeaders/qtextedit.h: Removed.
        * ForwardingHeaders/qtextstream.h: Removed.
        * ForwardingHeaders/qvaluelist.h: Removed.
        * ForwardingHeaders/qwmatrix.h: Removed.

        * WebCore+SVG/DOMList.h:
        * bindings/js/kjs_dom.cpp:
        * bindings/js/kjs_dom.h:
        * bindings/js/kjs_window.cpp:
        * css/css_stylesheetimpl.h:
        * css/css_valueimpl.cpp:
        * css/css_valueimpl.h:
        * css/cssstyleselector.cpp:
        * dom/CharacterData.cpp:
        * dom/Document.cpp:
        * dom/Document.h:
        * dom/EventTargetNode.cpp:
        * dom/Node.cpp:
        * editing/BreakBlockquoteCommand.h:
        * editing/htmlediting.cpp:
        * html/FormDataList.h:
        * html/HTMLKeygenElement.cpp:
        * html/HTMLTokenizer.h:
        * html/html_objectimpl.cpp:
        * kcanvas/KCanvasFilters.cpp:
        * kcanvas/KCanvasMatrix.cpp:
        * kcanvas/KCanvasMatrix.h:
        * kcanvas/KCanvasPath.cpp:
        * kcanvas/KCanvasPath.h:
        * kcanvas/KCanvasResources.cpp:
        * kcanvas/KCanvasTreeDebug.h:
        * kcanvas/RenderForeignObject.h:
        * kcanvas/RenderPath.h:
        * kcanvas/RenderSVGImage.h:
        * kcanvas/RenderSVGText.h:
        * kcanvas/device/KRenderingPaintServerGradient.cpp:
        * kcanvas/device/KRenderingPaintServerPattern.cpp:
        * kcanvas/device/KRenderingPaintServerSolid.cpp:
        * kcanvas/device/quartz/KCanvasItemQuartz.h:
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
        * ksvg2/svg/SVGColor.cpp:
        * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
        * ksvg2/svg/SVGDocument.h:
        * ksvg2/svg/SVGFEBlendElement.cpp:
        * ksvg2/svg/SVGFEColorMatrixElement.cpp:
        * ksvg2/svg/SVGFEComponentTransferElement.cpp:
        * ksvg2/svg/SVGFECompositeElement.cpp:
        * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
        * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
        * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
        * ksvg2/svg/SVGFELightElement.cpp:
        * ksvg2/svg/SVGFEMergeElement.cpp:
        * ksvg2/svg/SVGFEOffsetElement.cpp:
        * ksvg2/svg/SVGFESpecularLightingElement.cpp:
        * ksvg2/svg/SVGFETileElement.cpp:
        * ksvg2/svg/SVGFETurbulenceElement.cpp:
        * ksvg2/svg/SVGFitToViewBox.cpp:
        * ksvg2/svg/SVGLengthList.cpp:
        * ksvg2/svg/SVGMatrix.h:
        * ksvg2/svg/SVGNumberList.cpp:
        * ksvg2/svg/SVGPreserveAspectRatio.cpp:
        * ksvg2/svg/SVGSVGElement.cpp:
        * ksvg2/svg/SVGStringList.cpp:
        * ksvg2/svg/SVGStyledElement.h:
        * ksvg2/svg/SVGStyledTransformableElement.cpp:
        * ksvg2/svg/SVGTransformable.cpp:
        * ksvg2/svg/SVGURIReference.h:
        * ksvg2/svg/svgpathparser.cpp:
        * kwq/KWQKHTMLSettings.h:
        * loader/Cache.h:
        * loader/CachedObject.h:
        * loader/Decoder.cpp:
        * loader/FormData.h:
        * loader/loader.h:
        * page/Frame.h:
        * page/FramePrivate.h:
        * platform/Font.cpp:
        * platform/SegmentedString.h:
        * platform/mac/FontMac.mm:
        * platform/mac/WebCoreTextField.mm:
        * rendering/RenderBlock.cpp:
        * rendering/RenderObject.cpp:
        * rendering/RenderTable.cpp:
        * rendering/RenderTableCell.cpp:
        * rendering/RenderTableCol.cpp:
        * rendering/RenderTableSection.cpp:
        * rendering/bidi.h:
        * rendering/break_lines.cpp:
        * rendering/render_applet.cpp:
        * rendering/render_form.cpp:
        * rendering/render_form.h:
        * rendering/render_frames.cpp:
        * rendering/render_style.h:
        * xml/xmlhttprequest.cpp:
        Updated includes.

        * WebCore.xcodeproj/project.pbxproj: Resorted a couple things.

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

16 years agoPlans for another round of renaming (eliminating KWQ).
darin [Thu, 13 Apr 2006 05:43:56 +0000 (05:43 +0000)]
Plans for another round of renaming (eliminating KWQ).

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

16 years agoFixes the build.
thatcher [Thu, 13 Apr 2006 03:19:23 +0000 (03:19 +0000)]
Fixes the build.

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

16 years ago Reviewed by harrison
justing [Thu, 13 Apr 2006 02:00:44 +0000 (02:00 +0000)]
    Reviewed by harrison

        Layout test for the changes made to VisiblePosition::init in r13825.

        * editing/selection/unrendered-space.html
        * editing/selection/unrendered-space-expected.png
        * editing/selection/unrendered-space-expected.checksum
        * editing/selection/unrendered-space-expected.txt

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

16 years agoLayoutTests:
adele [Thu, 13 Apr 2006 01:50:04 +0000 (01:50 +0000)]
LayoutTests:

        Test for setSelectionRange bug in text fields.

        * fast/forms/input-delete-expected.txt: Added.
        * fast/forms/input-delete.html: Added.

WebCore:

        Reviewed by Darin and Tim O.

        WebCore part of fix for:
        http://bugzilla.opendarwin.org/show_bug.cgi?id=8061
        REGRESSION: New text fields need to send callbacks used by autocomplete

        Fix for:
        http://bugzilla.opendarwin.org/show_bug.cgi?id=8156
        FrameMac::submitForm is busted after Vector changes

        * bindings/objc/DOMHTML.mm:
        (-[DOMHTMLInputElement _rectOnScreen]): Use boundingBox method so this no longer relies on an NSTextField.
        The old code is no longer needed because this method was used by autocomplete, and that was not enabled for password or search fields.
        (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]): New implementation that uses setValue and setSelectionRange
        instead of NSTextField specific code.
        (-[DOMHTMLInputElement _selectedRange]): Creates range by calling selectionStart and selectionEnd on the input element.
        (-[DOMHTMLInputElement _setAutofilled:]): Provides a way for the autofill code to set a flag on the input element so
         it knows when its value is set by autofill.  This is how we change the background color.
        * bindings/objc/DOMPrivate.h: Removed _displayedValue, _setDisplayedValue, _setBackgroundColor since these are no
         longer needed for the new text field implementation, and aren't used for remaining NSView-style password and search fields.
         Added _setAutofilled method.
        * bridge/mac/FrameMac.h: Added virtual clearRecordedFormValues and recordFormValue.  These were moved into Frame.cpp recently, which broke
        how Safari asked to add form values to the keychain.

        * bridge/mac/FrameMac.mm:
        (WebCore::createNSDictionary): Added. Converts a hashmap to an NSDictionary for m_formValuesAboutToBeSubmitted.  This is needed to fix the submit form bug.
        (WebCore::selectorForKeyEvent): Added.  This helper function converts key events into selectors that the autocomplete code needs to know about.
        (WebCore::FrameMac::FrameMac):
        (WebCore::FrameMac::submitForm): Convert saved form and formValues into DOMElement and NSMutableDictionary.
        (WebCore::FrameMac::textFieldDidBeginEditing): Added so the input element can send this notification over the bridge.
        (WebCore::FrameMac::textFieldDidEndEditing): ditto.
        (WebCore::FrameMac::textDidChangeInTextField): ditto.
        (WebCore::FrameMac::doTextFieldCommandFromEvent): ditto. Also calls selectorForKeyEvent.
        (WebCore::FrameMac::textWillBeDeletedInTextField): ditto.
        * page/Frame.cpp:
        (WebCore::Frame::textFieldDidBeginEditing): ditto.
        (WebCore::Frame::textFieldDidEndEditing): ditto.
        (WebCore::Frame::textDidChangeInTextField): ditto.
        (WebCore::Frame::doTextFieldCommandFromEvent): ditto.
        (WebCore::Frame::textWillBeDeletedInTextField): ditto.
        * page/Frame.h: ditto.
        * platform/PlatformString.h: (WebCore::String::replace): Added to use an existing version of StringImpl::replace.

        * rendering/RenderTextField.cpp:
        (WebCore::RenderTextField::setSelectionRange): Setting the selection here should close the typing command.
        (WebCore::RenderTextField::subtreeHasChanged): Calls textDidChangeInTextField.

        * dom/Document.cpp: (WebCore::Document::setFocusNode): Calls dispatchFocusEvent and dispatchBlurEvent instead of directly dispatching the events.  This gives the node a chance to do other work before dispatching the event.

        * dom/EventTargetNode.cpp:
        (WebCore:: EventTargetNode::dispatchFocusEvent): Added.
        (WebCore:: EventTargetNode::dispatchBlurEvent): Added.
        * dom/EventTargetNode.h:

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::init): initializes m_autofilled.
        (WebCore::HTMLInputElement::dispatchFocusEvent): Calls textFieldDidBeginEditing and then calls up to the base class
        (WebCore::HTMLInputElement::dispatchBlurEvent): Calls textFieldDidEndEditing and then calls up to the base class
        (WebCore::HTMLInputElement::defaultEventHandler): For keypress events, calls doTextFieldCommandFromEvent so the form delegate will
        have a chance to say whether or not it is going to handle the event.
       (WebCore::HTMLInputElement::isKeyboardFocusable): Uses isNonWidgetTextField instead of checking the inputType.
        (WebCore::HTMLInputElement::isMouseFocusable): ditto.
        (WebCore::HTMLInputElement::focus): ditto.
        (WebCore::HTMLInputElement::constrainValue): Uses isTextField instead of checking inputType.
        * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): ditto.
        * html/HTMLInputElement.h:
        (WebCore::HTMLInputElement::isTextField): Added. Checks for TEXT, PASSWORD, and SEARCH
        (WebCore::HTMLInputElement::isNonWidgetTextField): Added.  Checks for all converted controls.
        (WebCore::HTMLInputElement::autofilled): Added.
        (WebCore::HTMLInputElement::setAutofilled): Added.
        * html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLTextFieldInnerElement::defaultEventHandler): Uses isNonWidgetTextField instead of checking the inputType.

        * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::doApply):
         If the deletion is occuring in a text field, call textWillBeDeletedInTextField so the frame can
         call across the bridge to notify the form delegate.

        * css/css_base.cpp: (WebCore::CSSSelector::extractPseudoType): Added autofill string for "-khtml-autofill".
        * css/css_base.h: (WebCore::CSSSelector::): Added PseudoAutofill to enum.
        * css/cssstyleselector.cpp:
        (WebCore::CSSStyleSelector::checkOneSelector): Added case for PseudoAutofill that checks the input element's autofilled flag.
        (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Changed  -webkit-focus-ring-color to -khtml-focus-ring-color for consistency.
        * css/html4.css: Added background-color and background-image for input:-khtml-autofill style.
         Changed -webkit-focus-ring-color to -khtml-focus-ring-color for consistency.
        * css/CSSValueKeywords.in: ditto.
        * css/cssparser.cpp:
        (WebCore::CSSParser::parseValue): ditto.
        (WebCore::CSSParser::parseShadow): ditto.

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

16 years agoLayoutTests:
justing [Thu, 13 Apr 2006 01:31:24 +0000 (01:31 +0000)]
LayoutTests:

         Reviewed by hyatt

         - updated test results for http://bugzilla.opendarwin.org/show_bug.cgi?id=4855
           List item's bullets fail to redraw correctly after their style is set with JavaScript

         * css1/basic/class_as_selector-expected.txt:
         * css1/basic/containment-expected.txt:
         * css1/basic/contextual_selectors-expected.txt:
         * css1/basic/id_as_selector-expected.txt:
         * css1/box_properties/border_bottom-expected.txt:
         * css1/box_properties/border_left-expected.txt:
         * css1/box_properties/border_right_inline-expected.txt:
         * css1/box_properties/border_top-expected.txt:
         * css1/box_properties/clear_float-expected.txt:
         * css1/box_properties/margin-expected.txt:
         * css1/box_properties/margin_bottom-expected.txt:
         * css1/box_properties/margin_left-expected.txt:
         * css1/box_properties/margin_right-expected.txt:
         * css1/box_properties/margin_top-expected.txt:
         * css1/box_properties/padding_left-expected.txt:
         * css1/box_properties/padding_right-expected.txt:
         * css1/cascade/cascade_order-expected.txt:
         * css1/classification/display-expected.txt:
         * css1/classification/list_style-expected.txt:
         * css1/classification/list_style_image-expected.txt:
         * css1/classification/list_style_position-expected.txt:
         * css1/classification/list_style_type-expected.txt:
         * css1/conformance/forward_compatible_parsing-expected.txt:
         * css1/pseudo/anchor-expected.txt:
         * css2.1/t0402-c71-fwd-parsing-02-f-expected.txt:
         * css2.1/t0505-c16-descendant-01-e-expected.txt:
         * css2.1/t050803-c14-classes-00-e-expected.txt:
         * css2.1/t0509-c15-ids-01-e-expected.txt:
         * css2.1/t0805-c5518-brdr-t-01-e-expected.txt:
         * css2.1/t0805-c5519-brdr-r-02-e-expected.txt:
         * css2.1/t0805-c5520-brdr-b-01-e-expected.txt:
         * css2.1/t0805-c5521-brdr-l-02-e-expected.txt:
         * css2.1/t1205-c561-list-displ-00-b-expected.txt:
         * css2.1/t1205-c563-list-type-00-b-expected.txt:
         * css2.1/t1205-c563-list-type-01-b-expected.txt:
         * css2.1/t1205-c564-list-img-00-b-g-expected.txt:
         * css2.1/t1205-c565-list-pos-00-b-expected.txt:
         * css2.1/t1205-c566-list-stl-00-e-ag-expected.txt:
         * css2.1/t1205-c566-list-stl-01-c-g-expected.txt:
         * editing/deleting/delete-listitem-002-expected.txt:
         * editing/execCommand/insertHTML-expected.txt:
         * editing/pasteboard/paste-4039777-fix-expected.txt:
         * editing/pasteboard/paste-list-001-expected.txt:
         * editing/selection/extend-by-word-002-expected.txt:
         * editing/selection/move-by-line-002-expected.txt:
         * editing/selection/select-all-iframe-expected.txt:
         * editing/selection/selectNode-expected.txt:
         * editing/selection/selectNodeContents-expected.txt:
         * editing/unsupported-content/list-type-after-expected.txt:
         * editing/unsupported-content/list-type-before-expected.txt:
         * fast/block/float/014-expected.txt:
         * fast/css-generated-content/009-expected.txt:
         * fast/css/001-expected.txt:
         * fast/css/001-expected.png:
         * fast/css/001-expected.checksum:
         * fast/css/continuationCrash-expected.txt:
         * fast/css/list-outline-expected.txt:
         * fast/doctypes/001-expected.txt:
         * fast/doctypes/002-expected.txt:
         * fast/doctypes/003-expected.txt:
         * fast/doctypes/004-expected.txt:
         * fast/dom/window-onFocus-expected.txt:
         * fast/forms/form-hides-table-expected.txt:
         * fast/forms/plaintext-mode-2-expected.txt:
         * fast/lists/001-expected.checksum:
         * fast/lists/001-expected.png:
         * fast/lists/001-expected.txt:
         * fast/lists/002-expected.txt:
         * fast/lists/003-expected.txt:
         * fast/lists/004-expected.txt:
         * fast/lists/005-expected.txt:
         * fast/lists/006-expected.txt:
         * fast/lists/007-expected.txt:
         * fast/lists/008-expected.txt:
         * fast/lists/009-expected.txt:
         * fast/lists/drag-into-marker-expected.txt:
         * fast/lists/li-br-expected.txt:
         * fast/lists/ol-display-types-expected.txt:
         * fast/lists/olstart-expected.txt:
         * fast/lists/scrolled-marker-paint-expected.txt:
         * fast/overflow/overflow-rtl-expected.txt:
         * fast/parser/entities-in-xhtml-expected.txt:
         * fast/selectors/001-expected.txt:
         * fast/selectors/013-expected.txt:
         * fast/selectors/015-expected.txt:
         * fast/selectors/166-expected.txt:
         * fast/table/018-expected.txt:
         * fast/table/form-with-table-style-expected.txt:
         * fast/text/whitespace/tab-character-basics-expected.txt:
         * fast/tokenizer/004-expected.txt:
         * tables/mozilla/bugs/bug23235-expected.txt:
         * tables/mozilla/bugs/bug30692-expected.txt:
         * tables/mozilla/bugs/bug3191-expected.txt:
         * tables/mozilla/bugs/bug32205-2-expected.txt:
         * tables/mozilla/marvin/backgr_index-expected.txt:
         * tables/mozilla/marvin/backgr_layers-opacity-expected.txt:
         * tables/mozilla/marvin/x_table-expected.txt:
         * tables/mozilla/other/wa_table_thtd_rowspan-expected.txt:
         * tables/mozilla/other/wa_table_tr_align-expected.txt:
         * tables/mozilla_expected_failures/bugs/bug1010-expected.txt:
         * tables/mozilla_expected_failures/marvin/backgr_fixed-bg-expected.txt:
         * tables/mozilla_expected_failures/marvin/backgr_layers-show-expected.txt:

WebCore:

         Reviewed by hyatt

         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4855
           List item's bullets fail to redraw correctly after their style is set with JavaScript

         * manual-tests/list-marker-repaint.html: Added.
         * rendering/RenderBlock.cpp:
         (WebCore::RenderBlock::layoutBlock): Call positionListMarker() after laying out
         the children.
         (WebCore::RenderBlock::calcInlineMinMaxWidth): Call calcWidth() on the child
         if we are going to use its marginLeft() or marginRight(), which is if they are
         given as a percentage or if the child is a list marker.
         * rendering/RenderBlock.h:
         (WebCore::RenderBlock::positionListMarker): Added this virtual function which
         RenderListItem implements and which is called from layoutBlock().
         * rendering/RenderFlow.cpp:
         (WebCore::RenderFlow::addFocusRingRects): Avoid adding focus rings around outside list
         markers. Previously it did not matter since the markers had zero width.
         * rendering/bidi.cpp:
         (WebCore::RenderBlock::findNextLineBreak): Outside list markers should not contribute
         to the line width, even now that they have width.
         * rendering/render_line.cpp:
         (WebCore::InlineFlowBox::placeBoxesHorizontally): Skip outside list markers.
         * rendering/render_list.cpp:
         (WebCore::RenderListItem::positionListMarker): Added.
         (WebCore::RenderListMarker::paint): Removed code that was used to right-align outside
         text markers, since that is achieved by margins now.
         (WebCore::RenderListMarker::calcMinMaxWidth): Changed the marker height to be the font height.
         Made the width of outside list markers non-zero and equal to the width of inside markers.
         Changed the width to include only the marker and not any padding. Increased the width of bullets
         by 2 to contain spillage due to antialiasing.
         (WebCore::RenderListMarker::calcWidth): Calculate horizontal margins. Padding that was
         previously included in the width is now part of the margins.
         (WebCore::RenderListMarker::getRelativeMarkerRect): Adjusted for the changes to width and
         margins.
         * rendering/render_list.h:

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

16 years ago Rubber-stamped by Hyatt.
darin [Thu, 13 Apr 2006 00:36:46 +0000 (00:36 +0000)]
    Rubber-stamped by Hyatt.

        - moved some more files out of KWQ to more-permanent homes

        * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new locations.
        * WebCore.xcodeproj/project.pbxproj: Ditto.

        * kwq/BlockExceptions.h: Removed.
        * kwq/BlockExceptions.mm: Removed.
        * kwq/ClipboardMac.h: Removed.
        * kwq/ClipboardMac.mm: Removed.
        * kwq/DeprecatedPtrList.h: Removed.
        * kwq/DeprecatedPtrListImpl.cpp: Removed.
        * kwq/DeprecatedPtrListImpl.h: Removed.
        * kwq/DeprecatedValueList.h: Removed.
        * kwq/DeprecatedValueListImpl.cpp: Removed.
        * kwq/DeprecatedValueListImpl.h: Removed.
        * kwq/WebCoreTextArea.h: Removed.
        * kwq/WebCoreTextArea.mm: Removed.
        * kwq/WebCoreTextField.h: Removed.
        * kwq/WebCoreTextField.mm: Removed.
        * platform/DeprecatedPtrList.h: Added.
        * platform/DeprecatedPtrListImpl.cpp: Added.
        * platform/DeprecatedPtrListImpl.h: Added.
        * platform/DeprecatedValueList.h: Added.
        * platform/DeprecatedValueListImpl.cpp: Added.
        * platform/DeprecatedValueListImpl.h: Added.
        * platform/mac/BlockExceptions.h: Added.
        * platform/mac/BlockExceptions.mm: Added.
        * platform/mac/ClipboardMac.h: Added.
        * platform/mac/ClipboardMac.mm: Added.
        * platform/mac/WebCoreTextArea.h: Added.
        * platform/mac/WebCoreTextArea.mm: Added.
        * platform/mac/WebCoreTextField.h: Added.
        * platform/mac/WebCoreTextField.mm: Added.

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

16 years ago <rdar://problem/4386640> AX: AXPreviousSentenceStartTextMarkerForTextMarker...
harrison [Thu, 13 Apr 2006 00:21:46 +0000 (00:21 +0000)]
    <rdar://problem/4386640> AX: AXPreviousSentenceStartTextMarkerForTextMarker does not respect paragraph boundary
        <rdar://problem/4414575> AX: Dictionary popup cannot find some words on Dictionary.app

        * editing/editing.js:
        Add sentence navigation/selection.

        * editing/selection/extend-by-sentence-001-expected.txt: Added.
        * editing/selection/extend-by-sentence-001.html: Added.
        Test for both <rdar://problem/4386640> and <rdar://problem/4414575>.

        * fast/dom/inner-text-001-expected.txt: Added.
        * fast/dom/inner-text-001.html: Added.
        Tests innerText on a variety of elements.

        * fast/dom/HTMLObjectElement/form/test1-expected.txt:
        * fast/events/mouseclick-target-and-positioning-expected.txt:
        * fast/forms/button-in-forms-collection-expected.txt:
        * fast/forms/focus-control-to-page-expected.txt:
        * fast/forms/focus-expected.txt:
        * fast/forms/textarea-hard-linewrap-expected.txt:
        * fast/forms/textarea-setvalue-submit-expected.txt:
        * fast/loader/loadInProgress-expected.txt:
        Updated for innerText changes that emit newlines for more kinds of blocks.

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

16 years ago Reviewed by Darin.
harrison [Thu, 13 Apr 2006 00:18:49 +0000 (00:18 +0000)]
    Reviewed by Darin.

        <rdar://problem/4386640> AX: AXPreviousSentenceStartTextMarkerForTextMarker does not respect paragraph boundary
        <rdar://problem/4414575> AX: Dictionary popup cannot find some words on Dictionary.app

        (see related changes in WebCore)

        Tests added:
        * editing/selection/extend-by-sentence-001.html: Added.
        * fast/dom/inner-text-001.html: Added.

        * WebView/WebHTMLView.m:
        (-[NSArray validateUserInterfaceItem:]):
        (-[NSArray moveToBeginningOfSentence:]):
        (-[NSArray moveToBeginningOfSentenceAndModifySelection:]):
        (-[NSArray moveToEndOfSentence:]):
        (-[NSArray moveToEndOfSentenceAndModifySelection:]):
        (-[NSArray selectSentence:]):
        * WebView/WebView.m:
        * WebView/WebViewPrivate.h:
        Add sentence navigation and selection.

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

16 years ago Reviewed by Darin.
harrison [Thu, 13 Apr 2006 00:14:21 +0000 (00:14 +0000)]
    Reviewed by Darin.

        <rdar://problem/4386640> AX: AXPreviousSentenceStartTextMarkerForTextMarker does not respect paragraph boundary
        <rdar://problem/4414575> AX: Dictionary popup cannot find some words on Dictionary.app

        AXPreviousSentenceStartTextMarkerForTextMarker failed to stop at the beginning a block because
        SimplifiedBackwardsTextIterator::handleNonTextNode() emitted a space when exiting the block.
        Fixed by emitting a newline instead.

        Word boundary failed to stop at the beginning of a block because no character at all was emitted
        when leaving the block, because the exitNode was checking specific html tags to decide whether the
        node is block, but the node was xml.  Fixed by using the node's renderer, if present.

        (see related changes in WebKit)

        Tests added:
        * editing/selection/extend-by-sentence-001.html: Added.
        * fast/dom/inner-text-001.html: Added.

        * bridge/mac/WebCoreFrameBridge.h:
        * bridge/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
        Add sentence navigation/selection.

        * editing/Selection.cpp:
        (WebCore::Selection::validate):
        Add sentence navigation/selection.

        * editing/SelectionController.cpp:
        (WebCore::SelectionController::modifyExtendingRightForward):
        (WebCore::SelectionController::modifyMovingRightForward):
        (WebCore::SelectionController::modifyExtendingLeftBackward):
        (WebCore::SelectionController::modifyMovingLeftBackward):
        (WebCore::SelectionController::modify):
        Add sentence navigation/selection.

        * editing/TextGranularity.h:
        (WebCore::):
        Add SentenceGranularity and SentenceBoundary.

        * editing/TextIterator.cpp:
        (WebCore::isTableCell):
        (WebCore::shouldEmitTabBeforeNode):
        (WebCore::shouldEmitNewlineForNode):
        (WebCore::shouldEmitNewlinesBeforeAndAfterNode):
        (WebCore::shouldEmitExtraNewlineForNode):
        New utility functions that prefer renderers over html tag names.

        (WebCore::TextIterator::handleNonTextNode):
        (WebCore::TextIterator::exitNode):
        (WebCore::SimplifiedBackwardsTextIterator::advance):
        Use new utility functions.

        (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode):
        Use new utility functions.  Also emit linefeed instead of space,
        so sentence parsing works across block boundaries.

        (WebCore::SimplifiedBackwardsTextIterator::exitNode):
        Use new utility functions.

        (WebCore::SimplifiedBackwardsTextIterator::emitNewline):
        Renamed from emitNewlineForBROrText because it is not always for BR or text.

        * editing/TextIterator.h:
        Renamed emitNewlineForBROrText to emitNewline.

        * editing/visible_units.cpp:
        * editing/visible_units.h:
        (WebCore::previousBoundary):
        (WebCore::nextBoundary):
        (WebCore::previousSentencePosition):
        (WebCore::nextSentencePosition):
        Add sentence navigation/selection.

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

16 years ago Rubber-stamped by Hyatt.
darin [Wed, 12 Apr 2006 23:54:30 +0000 (23:54 +0000)]
    Rubber-stamped by Hyatt.

        - moved Decoder and FormData classes into loader directory
          (Decoder, because it's part of the loading process.
           FormData, because it's used as a parameter when specifying
           what to load. Arguably either could be in page instead.)
        - moved Length.h from css to renderer, cause that's where Hyatt
          says it belongs

        * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new locations.
        * WebCore.xcodeproj/project.pbxproj: Ditto.

        * khtml: Removed.
        * loader/Decoder.cpp: Added.
        * loader/Decoder.h: Added.
        * loader/FormData.cpp: Added.
        * loader/FormData.h: Added.

        * css/Length.h: Removed.
        * rendering/Length.h: Added.

        * bridge/mac/WebCoreEncodings.mm:
        * dom/Document.h:
        * kwq/KWQFormData.mm:
        * loader/CachedXBLDocument.cpp:
        * loader/CachedXSLStyleSheet.cpp:
        * page/ResourceRequest.h:
        * platform/TransferJobInternal.h:
        * xml/xmlhttprequest.cpp:
        Updated includes.

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

16 years ago Rubber-stamped by Darin.
darin [Wed, 12 Apr 2006 23:49:54 +0000 (23:49 +0000)]
    Rubber-stamped by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8348
          upload-disk-image stage on buildslaves fail with "No space left on device"

        * BuildSlaveSupport/build-launcher-dmg:  Use the -srcfolder option to
          'hdiutil create'.   This creates the initial disk image based on the size of
          the source folder, and copies the contents to the new disk image.  The file
          extension on the temporary uncompressed disk image has also been altered from
          ".uncompressed" to ".uncompressed.dmg" as hdiutil on 10.4.6 Intel fails when
          the extension is not ".dmg".

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

16 years ago Reviewed by darin
justing [Wed, 12 Apr 2006 23:13:59 +0000 (23:13 +0000)]
    Reviewed by darin

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8337
          Incomplete repaint of inlines' outline during editing

        * manual-tests/inline-outline-repaint.html: Added.
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::layoutBlock): Add the maximal outline width to the
        inlines' repaint rect.

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

16 years agoFix broken test results.
hyatt [Wed, 12 Apr 2006 23:01:12 +0000 (23:01 +0000)]
Fix broken test results.

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

16 years agoRemoved unnecessary check for an empty string.
justing [Wed, 12 Apr 2006 21:54:53 +0000 (21:54 +0000)]
Removed unnecessary check for an empty string.

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

16 years agoLayoutTests:
justing [Wed, 12 Apr 2006 21:51:27 +0000 (21:51 +0000)]
LayoutTests:

        Reviewed by darin

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8335>
        Implement execCommand(InsertHorizontalRule)

        * editing/deleting/merge-unrendered-space.html:
        * editing/execCommand/insertHorizontalRule-expected.checksum: Added.
        * editing/execCommand/insertHorizontalRule-expected.png: Added.
        * editing/execCommand/insertHorizontalRule-expected.txt: Added.
        * editing/execCommand/insertHorizontalRule.html: Added.

WebCore:

        Reviewed by darin

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8335>
        Implement execCommand(InsertHorizontalRule)

        * editing/JSEditor.cpp:

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

16 years ago Reviewed by Darin.
tomernic [Wed, 12 Apr 2006 21:43:27 +0000 (21:43 +0000)]
    Reviewed by Darin.

        Part of <rdar://problem/4482530>

        * WebView/WebView.m:
        (-[WebView _focusedFrame]):
        Fixed up the logic here to take into account immediate subviews of WebView, which are not actually in a WebFrameView
        (they are peers to the main frame's WebFrameView).

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

16 years agoLand updated results for overflow changes.
hyatt [Wed, 12 Apr 2006 20:21:41 +0000 (20:21 +0000)]
Land updated results for overflow changes.

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

16 years ago Rubber-stamped by Hyatt.
darin [Wed, 12 Apr 2006 20:02:04 +0000 (20:02 +0000)]
    Rubber-stamped by Hyatt.

        - moved xsl files into xml directory, removed xbl files (for now)

        * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new locations.
        * WebCore.xcodeproj/project.pbxproj: Ditto.
        * khtml/xbl: Removed.
        * khtml/xsl: Removed.
        * xml/XSLStyleSheet.cpp: Added.
        * xml/XSLStyleSheet.h: Added.
        * xml/XSLTProcessor.cpp: Added.
        * xml/XSLTProcessor.h: Added.

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

16 years ago Fix for 5283, make sure overflow doesn't paint on top of positioned elements.
hyatt [Wed, 12 Apr 2006 19:52:10 +0000 (19:52 +0000)]
    Fix for 5283, make sure overflow doesn't paint on top of positioned elements.

        Reviewed by beth

        * kwq/RenderTreeAsText.cpp:
        (writeLayers):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::RenderLayer):
        (WebCore::RenderLayer::~RenderLayer):
        (WebCore::RenderLayer::addChild):
        (WebCore::RenderLayer::removeChild):
        (WebCore::RenderLayer::paintLayer):
        (WebCore::RenderLayer::hitTestLayer):
        (WebCore::RenderLayer::dirtyOverflowList):
        (WebCore::RenderLayer::updateOverflowList):
        (WebCore::RenderLayer::collectLayers):
        (WebCore::RenderLayer::shouldBeOverflowOnly):
        (WebCore::RenderLayer::styleChanged):
        * rendering/RenderLayer.h:
        (WebCore::RenderLayer::isOverflowOnly):
        (WebCore::RenderLayer::overflowList):

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

16 years ago2006-04-12 Eric Seidel <eseidel@apple.com>
eseidel [Wed, 12 Apr 2006 18:31:51 +0000 (18:31 +0000)]
2006-04-12  Eric Seidel  <eseidel@apple.com>

        Reviewed by Tim H.

        * Scripts/update-webkit: Make this return non-zero when svn fails.

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

16 years ago * WebCore.xcodeproj/project.pbxproj: Turn SVG support back on.
darin [Wed, 12 Apr 2006 16:32:26 +0000 (16:32 +0000)]
    * WebCore.xcodeproj/project.pbxproj: Turn SVG support back on.
        I accidentally checked in this file with SVG off last night.

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

16 years ago - try to fix Windows build
darin [Wed, 12 Apr 2006 16:22:58 +0000 (16:22 +0000)]
    - try to fix Windows build

        * platform/TransferJobInternal.h: Declare HANDLE.
        * platform/image-decoders/gif/GIFImageReader.h: Include GIFImageDecoder.h.
        * rendering/RenderThemeWin.h: Declare HANDLE and HMODULE.

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

16 years ago - another attempt to get things building
darin [Wed, 12 Apr 2006 16:08:14 +0000 (16:08 +0000)]
    - another attempt to get things building

        * bindings/js/kjs_proxy.cpp: Add "kjs_events.h" include, needed when not
        building SVG (so for Windows too).
        * editing/TextIterator.h: Add back include of Vector.h.

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

16 years ago Reviewed by Maciej.
ggaren [Wed, 12 Apr 2006 05:31:37 +0000 (05:31 +0000)]
    Reviewed by Maciej.

        Minor code cleanup -- passes all the JS tests.

        * kjs/object_object.cpp:
        (ObjectObjectImp::construct):
        (ObjectObjectImp::callAsFunction):

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

16 years agoJavaScriptCore:
darin [Wed, 12 Apr 2006 04:46:13 +0000 (04:46 +0000)]
JavaScriptCore:

        - another attempt to fix Windows build -- Vector in Forward.h was not working

        * kxmlcore/Forward.h: Remove Vector.
        * kxmlcore/Vector.h: Add back default arguments, remove include of
        Forward.h.

WebCore:

        - try to fix Windows build

        * html/HTMLCollection.h: Add back include of Vector.h.
        * page/Frame.h: Ditto.
        * platform/Timer.h: Ditto.

        - more changes for no-SVG (not working yet though)

        * editing/CompositeEditCommand.h: Added css_valueimpl.h include.

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

16 years ago - try to fix no-SVG build
darin [Wed, 12 Apr 2006 04:15:54 +0000 (04:15 +0000)]
    - try to fix no-SVG build

        * kwq/RenderTreeAsText.cpp: Added back an include only needed for non-SVG.
        * rendering/RenderObject.h: Ditto.

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

16 years agoJavaScriptCore:
darin [Wed, 12 Apr 2006 04:07:52 +0000 (04:07 +0000)]
JavaScriptCore:

        - try to fix Windows build -- HashForward.h was not working

        * kxmlcore/HashForward.h: Removed.

        * JavaScriptCore.xcodeproj/project.pbxproj: Remove HashForward.h.
        * kjs/collector.h: Remove use of HashForward.h.
        * kxmlcore/HashCountedSet.h: Remove include of HashForward.h, restore
        default arguments.
        * kxmlcore/HashMap.h: Ditto.
        * kxmlcore/HashSet.h: Ditto.

JavaScriptGlue:

        - try to fix Windows build

        * kxmlcore/HashForward.h: Removed.

WebCore:

        - try to fix Windows build

        * ForwardingHeaders/kxmlcore/HashForward.h: Removed.
        * dom/xml_tokenizer.h: Include another header instead of HashForward.h.
        * loader/Cache.h: Ditto.
        * page/Page.h: Ditto.
        * platform/TransferJob.h: Ditto.

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

16 years agogit-svn-id: https://svn.webkit.org/repository/webkit/trunk@13829 268f45cc-cd09-0410...
justing [Wed, 12 Apr 2006 03:14:11 +0000 (03:14 +0000)]
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13829 268f45cc-cd09-0410-ab3c-d52691b4dbfc

16 years agoLayoutTests:
justing [Wed, 12 Apr 2006 02:07:40 +0000 (02:07 +0000)]
LayoutTests:

        Reviewed by harrison

        Added to test changes:
        * editing/pasteboard/merge-end-1-expected.checksum: Added.
        * editing/pasteboard/merge-end-1-expected.png: Added.
        * editing/pasteboard/merge-end-1-expected.txt: Added.
        * editing/pasteboard/merge-end-1.html: Added.
        * editing/pasteboard/merge-end-2-expected.checksum: Added.
        * editing/pasteboard/merge-end-2-expected.png: Added.
        * editing/pasteboard/merge-end-2-expected.txt: Added.
        * editing/pasteboard/merge-end-2.html: Added.

        Use the editing library so the test can be run in slow motion.
        * editing/deleting/merge-unrendered-space.html:

        Merges after pasted content no longer happen unnecessary.  These
        tests used to do unnecessary merges that happened to move nodes
        that served as selection endpoints, which cleared the selection.
        So, you'll see changes to the selection change delegate calls.
        * editing/pasteboard/8145-2-expected.txt:
        * editing/pasteboard/paste-line-endings-010-expected.txt:
        * editing/pasteboard/paste-text-008-expected.txt:
        * editing/pasteboard/paste-text-009-expected.txt:

WebCore:

        Reviewed by harrison

        Fixes more instances of:
        <rdar://problem/3950559>
        CrashTracer: 2116 crashes in Mail at com.apple.WebCore: khtml::CompositeEditCommand::insertNodeAfter + 32

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::doApply): Do paragraph merging using moveParagraphs.

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

16 years agoLayoutTests:
justing [Wed, 12 Apr 2006 00:57:02 +0000 (00:57 +0000)]
LayoutTests:

        Reviewed by harrison

        * editing/deleting/merge-unrendered-space-expected.checksum: Added.
        * editing/deleting/merge-unrendered-space-expected.png: Added.
        * editing/deleting/merge-unrendered-space-expected.txt: Added.
        * editing/deleting/merge-unrendered-space.html: Added.

WebCore:

        Reviewed by harrison

        Some setup for work on paste performance.

        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::moveParagraph):
        Moved code from mergeParagraphs so that it can be used in ReplaceSelectionCommand.
        * editing/CompositeEditCommand.h:
        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::mergeParagraphs):
        (WebCore::DeleteSelectionCommand::doApply):
        * editing/VisiblePosition.cpp:
        (WebCore::VisiblePosition::init): Put the code that chooses m_deepPosition into initDeepPosition.
        (WebCore::VisiblePosition::initDeepPosition):
        Fixed a bug: don't fall through to the code that's only for positions inside unrendered space between blocks when
        there's a candidate downstream() is a candidate.  Added a comment about why the fall through code is necessary.
        * editing/VisiblePosition.h:

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

16 years ago Reviewed by Darin.
harrison [Tue, 11 Apr 2006 20:02:53 +0000 (20:02 +0000)]
    Reviewed by Darin.

        - fixed clean build, broken by Darin's check-in

        * kjs/date_object.cpp: Add needed include of lookup.h.
        * kjs/regexp_object.cpp: Move include of .lut.h file below other includes.

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

16 years ago2006-04-11 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 11 Apr 2006 19:45:14 +0000 (19:45 +0000)]
2006-04-11  Eric Seidel  <eseidel@apple.com>

        Reviewed by andersca.

        * quality/testing.html: fix run-mozilla-tests to run-javascriptcore-tests

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

16 years ago Reviewed by Darin Adler.
sullivan [Tue, 11 Apr 2006 17:51:54 +0000 (17:51 +0000)]
    Reviewed by Darin Adler.

        - fixed <rdar://problem/4509328> highlight all matches hangs when searching for tab character on www.google.com (and others)

        For reasons not yet completely understood, searching for a tab character on some pages (Google, Amazon) finds a match
        with a non-collapsed range but then claims that the end visible position of the match is the original start visible
        position of the search range. This was causing the highlightAllMatches code to loop forever. Fixed the loop by
        checking for the non-advancing search range explicitly. I'm going to track down a reduction of the bogus
        search-for-tab issue, and write that up as a separate bug (that bug is not a regression; you can "find" a tab on
        google in Tiger also).

        * page/Frame.cpp:
        (WebCore::Frame::highlightAllMatchesForString):
        break the loop if the search range hasn't advanced

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

16 years agoJavaScriptCore:
darin [Tue, 11 Apr 2006 16:30:21 +0000 (16:30 +0000)]
JavaScriptCore:

        Rubber-stamped by John Sullivan.

        - switched from a shell script to a makefile for generated files
        - removed lots of unneeded includes
        - added new Forward.h and HashForward.h headers that allow compiling with
          fewer unneeded templates

        * DerivedSources.make: Added.
        * generate-derived-sources: Removed.
        * JavaScriptCore.xcodeproj/project.pbxproj: Added new files, changed to use
        DerivedSources.make.

        * kxmlcore/Forward.h: Added.
        * kxmlcore/HashForward.h: Added.

        * kxmlcore/HashCountedSet.h: Include HashForward for default args.
        * kxmlcore/HashMap.h: Ditto.
        * kxmlcore/HashSet.h: Ditto.

        * kjs/object.h:
        * kjs/object.cpp:
        Moved KJS_MAX_STACK into the .cpp file.

        * bindings/NP_jsobject.cpp:
        * bindings/c/c_instance.h:
        * bindings/jni/jni_class.h:
        * bindings/jni/jni_runtime.h:
        * bindings/jni/jni_utility.h:
        * bindings/objc/WebScriptObject.mm:
        * bindings/objc/WebScriptObjectPrivate.h:
        * bindings/objc/objc_class.h:
        * bindings/objc/objc_class.mm:
        * bindings/objc/objc_instance.h:
        * bindings/objc/objc_instance.mm:
        * bindings/objc/objc_runtime.mm:
        * bindings/objc/objc_utility.mm:
        * bindings/runtime.h:
        * bindings/runtime_array.cpp:
        * bindings/runtime_array.h:
        * bindings/runtime_method.cpp:
        * bindings/runtime_method.h:
        * bindings/runtime_object.cpp:
        * bindings/runtime_root.h:
        * kjs/JSImmediate.cpp:
        * kjs/Parser.h:
        * kjs/array_object.cpp:
        * kjs/array_object.h:
        * kjs/bool_object.cpp:
        * kjs/bool_object.h:
        * kjs/collector.h:
        * kjs/context.h:
        * kjs/debugger.cpp:
        * kjs/error_object.h:
        * kjs/function_object.h:
        * kjs/internal.h:
        * kjs/lexer.cpp:
        * kjs/math_object.cpp:
        * kjs/math_object.h:
        * kjs/nodes.cpp:
        * kjs/nodes.h:
        * kjs/number_object.cpp:
        * kjs/number_object.h:
        * kjs/object_object.cpp:
        * kjs/operations.cpp:
        * kjs/protected_reference.h:
        * kjs/reference.h:
        * kjs/reference_list.h:
        * kjs/regexp_object.h:
        * kjs/string_object.cpp:
        * kjs/string_object.h:
        * kjs/testkjs.cpp:
        * kjs/value.cpp:
        * kjs/value.h:
        * kxmlcore/HashTable.h:
        * kxmlcore/ListRefPtr.h:
        * kxmlcore/TCPageMap.h:
        * kxmlcore/Vector.h:
        Removed unneeded header includes.

JavaScriptGlue:

        Rubber-stamped by John Sullivan.

        - added forwarding headers for the new Forward.h and HashForward.h files

        * kxmlcore/Forward.h: Added.
        * kxmlcore/HashForward.h: Added.

WebCore:

        Rubber-stamped by John Sullivan (except for pbxproj change).

        - updated to use the new Forward.h and HashForward.h headers
        - moved the showTree debugging functions out of the WebCore
          namespace so they are easier to call from gdb, and renamed
          the showTree member functions so they don't get in the way;
          now you can do "call showTree(x)" in gdb and it just works
        - removed a lot of unneeded includes

        * WebCore.xcodeproj/project.pbxproj: Fixed a lot of paths that
        were not relative to the enclosing group.

        * ForwardingHeaders/kxmlcore/Forward.h: Added.
        * ForwardingHeaders/kxmlcore/HashForward.h: Added.
        * bindings/js/JSCanvasRenderingContext2DBase.cpp:
        * bindings/js/JSXMLHttpRequest.cpp:
        * bindings/js/JSXMLHttpRequest.h:
        * bindings/js/JSXSLTProcessor.h:
        * bindings/js/kjs_binding.h:
        * bindings/js/kjs_dom.cpp:
        * bindings/js/kjs_dom.h:
        * bindings/js/kjs_events.cpp:
        * bindings/js/kjs_events.h:
        * bindings/js/kjs_html.cpp:
        * bindings/js/kjs_navigator.cpp:
        * bindings/js/kjs_navigator.h:
        * bindings/js/kjs_proxy.cpp:
        * bindings/js/kjs_traversal.h:
        * bindings/js/kjs_window.cpp:
        * bindings/js/kjs_window.h:
        * bindings/objc/DOM.mm:
        * bindings/objc/DOMCSS.mm:
        * bindings/objc/DOMCore.h:
        * bindings/objc/DOMEvents.mm:
        * bindings/objc/DOMHTML.mm:
        * bindings/objc/DOMImplementationFront.h:
        * bindings/objc/DOMInternal.mm:
        * bindings/objc/DOMUtility.mm:
        * bindings/objc/DOMViews.mm:
        * bridge/BrowserExtension.h:
        * bridge/mac/BrowserExtensionMac.mm:
        * bridge/mac/FrameMac.h:
        * bridge/mac/FrameMac.mm:
        * bridge/mac/WebCoreFrameBridge.mm:
        * bridge/mac/WebCoreFrameNamespaces.mm:
        * bridge/mac/WebCoreJavaScript.mm:
        * bridge/win/PageWin.cpp:
        * css/CSSComputedStyleDeclaration.cpp:
        * css/css_base.h:
        * css/css_ruleimpl.h:
        * css/css_valueimpl.cpp:
        * css/cssparser.cpp:
        * css/cssparser.h:
        * css/cssstyleselector.cpp:
        * css/cssstyleselector.h:
        * dom/AbstractView.h:
        * dom/AtomicStringList.h:
        * dom/Attribute.cpp:
        * dom/Attribute.h:
        * dom/Comment.cpp:
        * dom/ContainerNode.cpp:
        * dom/DOMImplementation.cpp:
        * dom/DOMImplementation.h:
        * dom/Document.cpp:
        * dom/Document.h:
        * dom/Element.h:
        * dom/EventTargetNode.cpp:
        (WebCore::EventTargetNode::dump):
        (WebCore::forbidEventDispatch):
        (WebCore::allowEventDispatch):
        (WebCore::eventDispatchForbidden):
        * dom/EventTargetNode.h:
        (WebCore::EventTargetNode::postDispatchEventHandler):
        * dom/NamedAttrMap.h:
        * dom/Node.cpp:
        (WebCore::Node::showNode):
        (WebCore::Node::showTree):
        (WebCore::Node::showTreeAndMark):
        (showTree):
        * dom/Node.h:
        * dom/NodeList.cpp:
        * dom/NodeList.h:
        * dom/Position.cpp:
        (showTree):
        * dom/Position.h:
        * dom/Range.cpp:
        * dom/Range.h:
        * dom/StyledElement.cpp:
        * dom/StyledElement.h:
        * dom/dom2_eventsimpl.cpp:
        * dom/dom2_eventsimpl.h:
        * dom/dom2_traversalimpl.h:
        * dom/dom_xmlimpl.cpp:
        * dom/xml_tokenizer.cpp:
        * dom/xml_tokenizer.h:
        * editing/AppendNodeCommand.cpp:
        * editing/ApplyStyleCommand.cpp:
        * editing/ApplyStyleCommand.h:
        * editing/BreakBlockquoteCommand.cpp:
        * editing/CompositeEditCommand.cpp:
        * editing/CreateLinkCommand.cpp:
        * editing/DeleteFromTextNodeCommand.cpp:
        * editing/DeleteFromTextNodeCommand.h:
        * editing/DeleteSelectionCommand.cpp:
        * editing/EditCommand.cpp:
        * editing/EditCommand.h:
        * editing/HTMLInterchange.cpp:
        * editing/InsertIntoTextNodeCommand.cpp:
        * editing/InsertIntoTextNodeCommand.h:
        * editing/InsertLineBreakCommand.cpp:
        * editing/InsertNodeBeforeCommand.cpp:
        * editing/InsertParagraphSeparatorCommand.cpp:
        * editing/InsertTextCommand.cpp:
        * editing/JSEditor.cpp:
        * editing/JoinTextNodesCommand.cpp:
        * editing/MergeIdenticalElementsCommand.cpp:
        * editing/ModifySelectionListLevelCommand.cpp:
        * editing/MoveSelectionCommand.cpp:
        * editing/RebalanceWhitespaceCommand.h:
        * editing/RemoveCSSPropertyCommand.h:
        * editing/ReplaceSelectionCommand.cpp:
        * editing/ReplaceSelectionCommand.h:
        * editing/Selection.cpp:
        (WebCore::Selection::formatForDebugger):
        (WebCore::Selection::showTree):
        (showTree):
        * editing/Selection.h:
        * editing/SelectionController.cpp:
        (WebCore::SelectionController::formatForDebugger):
        (WebCore::SelectionController::showTree):
        (showTree):
        * editing/SelectionController.h:
        * editing/TextIterator.cpp:
        * editing/TextIterator.h:
        * editing/TypingCommand.cpp:
        * editing/TypingCommand.h:
        * editing/UnlinkCommand.cpp:
        * editing/VisiblePosition.cpp:
        (WebCore::isEqualIgnoringAffinity):
        (WebCore::VisiblePosition::formatForDebugger):
        (WebCore::VisiblePosition::showTree):
        (showTree):
        * editing/VisiblePosition.h:
        (WebCore::VisiblePosition::VisiblePosition):
        (WebCore::operator==):
        * editing/WrapContentsInDummySpanCommand.cpp:
        * editing/htmlediting.h:
        * editing/markup.cpp:
        * editing/markup.h:
        (WebCore::):
        * editing/visible_units.cpp:
        * html/CanvasGradient.cpp:
        * html/CanvasRenderingContext2D.h:
        * html/CanvasStyle.cpp:
        * html/CanvasStyle.h:
        * html/FormDataList.cpp:
        * html/FormDataList.h:
        * html/HTMLCollection.cpp:
        * html/HTMLCollection.h:
        * html/HTMLDocument.cpp:
        * html/HTMLDocument.h:
        * html/HTMLElement.cpp:
        * html/HTMLElementFactory.cpp:
        * html/HTMLElementFactory.h:
        * html/HTMLFormCollection.cpp:
        * html/HTMLFormElement.cpp:
        * html/HTMLFormElement.h:
        * html/HTMLInputElement.cpp:
        * html/HTMLParser.cpp:
        * html/HTMLSelectElement.cpp:
        * html/HTMLSelectElement.h:
        * html/HTMLTokenizer.cpp:
        * html/HTMLTokenizer.h:
        * html/html_baseimpl.cpp:
        * html/html_headimpl.h:
        * kcanvas/KCanvasCreator.cpp:
        * kcanvas/KCanvasFilters.h:
        * kcanvas/KCanvasPath.h:
        * kcanvas/KCanvasResources.h:
        * kcanvas/KCanvasTreeDebug.cpp:
        * kcanvas/RenderPath.cpp:
        * kcanvas/RenderPath.h:
        * kcanvas/device/KRenderingDevice.h:
        * kcanvas/device/KRenderingPaintServerGradient.h:
        * kcanvas/device/KRenderingPaintServerPattern.h:
        * kcanvas/device/KRenderingPaintServerSolid.h:
        * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
        * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
        * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
        * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
        * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
        * khtml/misc/decoder.cpp:
        * khtml/misc/decoder.h:
        * khtml/xsl/XSLStyleSheet.cpp:
        * khtml/xsl/XSLTProcessor.cpp:
        * khtml/xsl/XSLTProcessor.h:
        * ksvg2/css/SVGRenderStyle.h:
        * ksvg2/ecma/GlobalObject.cpp:
        * ksvg2/misc/KCanvasRenderingStyle.h:
        * ksvg2/misc/SVGDocumentExtensions.h:
        * ksvg2/svg/SVGAngle.h:
        * ksvg2/svg/SVGAnimateColorElement.h:
        * ksvg2/svg/SVGAnimatedColor.h:
        * ksvg2/svg/SVGAnimatedLengthList.h:
        * ksvg2/svg/SVGAnimatedNumberList.h:
        * ksvg2/svg/SVGAnimatedString.h:
        * ksvg2/svg/SVGAnimatedTransformList.h:
        * ksvg2/svg/SVGAnimationElement.h:
        * ksvg2/svg/SVGColor.h:
        * ksvg2/svg/SVGCursorElement.h:
        * ksvg2/svg/SVGHelper.h:
        * ksvg2/svg/SVGLength.h:
        * ksvg2/svg/SVGList.h:
        * ksvg2/svg/SVGPaint.h:
        * ksvg2/svg/SVGPathSeg.h:
        * ksvg2/svg/SVGPatternElement.h:
        * ksvg2/svg/SVGSVGElement.cpp:
        * ksvg2/svg/SVGSVGElement.h:
        * ksvg2/svg/SVGStringList.h:
        * ksvg2/svg/SVGTransform.h:
        * kwq/AccessibilityObjectCache.mm:
        * kwq/ClipboardMac.mm:
        * kwq/JavaAppletWidget.mm:
        * kwq/KWQComboBox.mm:
        * kwq/KWQEditCommand.mm:
        * kwq/KWQFileButton.mm:
        * kwq/KWQKHTMLSettings.h:
        * kwq/KWQKSSLKeyGen.mm:
        * kwq/KWQLoader.mm:
        * kwq/KWQPageState.mm:
        * kwq/KWQTextEdit.mm:
        * kwq/RegularExpression.h:
        * kwq/RenderTreeAsText.cpp:
        * kwq/RenderTreeAsText.h:
        * kwq/WebCoreAXObject.mm:
        * loader/Cache.cpp:
        * loader/Cache.h:
        * loader/CachedCSSStyleSheet.cpp:
        * loader/CachedObject.h:
        * loader/CachedScript.cpp:
        * loader/CachedXBLDocument.cpp:
        * loader/CachedXBLDocument.h:
        * loader/CachedXSLStyleSheet.cpp:
        * loader/CachedXSLStyleSheet.h:
        * loader/DocLoader.cpp:
        * page/Frame.cpp:
        * page/Frame.h:
        * page/FramePrivate.h:
        * page/FrameTree.cpp:
        * page/FrameTree.h:
        * page/FrameView.cpp:
        * page/FrameView.h:
        * page/Page.cpp:
        * page/Page.h:
        * page/Plugin.h:
        (WebCore::Plugin::Plugin):
        (WebCore::Plugin::view):
        * platform/Color.cpp:
        * platform/FloatRect.h:
        * platform/Font.cpp:
        * platform/Font.h:
        * platform/FontFamily.cpp:
        * platform/GraphicsContext.cpp:
        * platform/Image.cpp:
        * platform/Image.h:
        * platform/IntRect.h:
        * platform/KURL.cpp:
        * platform/KURL.h:
        * platform/SegmentedString.h:
        * platform/Shared.h:
        * platform/StreamingTextDecoder.cpp:
        * platform/StringImpl.cpp:
        * platform/StringImpl.h:
        * platform/TextEncoding.h:
        * platform/Timer.cpp:
        * platform/Timer.h:
        * platform/TransferJob.cpp:
        * platform/TransferJob.h:
        * platform/TransferJobInternal.h:
        * platform/cairo/GraphicsContextCairo.cpp:
        * platform/cairo/ImageCairo.cpp:
        * platform/cairo/ImageSourceCairo.cpp:
        * platform/image-decoders/gif/GIFImageReader.cpp:
        * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
        * platform/mac/FontFamilyMac.mm:
        * platform/mac/FontMac.mm:
        * platform/mac/ImageMac.mm:
        * platform/mac/TextEncodingMac.cpp:
        * platform/mac/TransferJobMac.mm:
        * platform/win/FontPlatformDataWin.cpp:
        * platform/win/TransferJobWin.cpp:
        * rendering/RenderBlock.cpp:
        * rendering/RenderBlock.h:
        * rendering/RenderBox.cpp:
        * rendering/RenderBox.h:
        * rendering/RenderCanvas.cpp:
        * rendering/RenderCanvas.h:
        * rendering/RenderContainer.cpp:
        * rendering/RenderFlexibleBox.h:
        * rendering/RenderFlow.cpp:
        * rendering/RenderFlow.h:
        * rendering/RenderImage.cpp:
        * rendering/RenderImage.h:
        * rendering/RenderLayer.cpp:
        * rendering/RenderLayer.h:
        * rendering/RenderObject.cpp:
        (showTree):
        * rendering/RenderObject.h:
        * rendering/RenderTableCell.h:
        * rendering/RenderTableSection.h:
        * rendering/RenderText.cpp:
        * rendering/RenderText.h:
        * rendering/RenderTextField.cpp:
        * rendering/RenderTextFragment.h:
        * rendering/RenderTheme.h:
        * rendering/RenderThemeMac.mm:
        * rendering/RenderThemeWin.cpp:
        * rendering/bidi.cpp:
        * rendering/render_form.h:
        * rendering/render_line.cpp:
        (showTree):
        * rendering/render_line.h:
        * rendering/render_list.cpp:
        * rendering/render_replaced.cpp:
        * rendering/render_replaced.h:
        * rendering/render_style.cpp:
        * rendering/render_style.h:
        * xml/xmlhttprequest.h:

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

16 years ago Reviewed by Darin.
ap [Tue, 11 Apr 2006 04:40:48 +0000 (04:40 +0000)]
    Reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8157
          Make HTTP tests using Perl use .pl extension

WebKitTools:
        * Scripts/run-webkit-tests: Added support for running .pl and .php tests,
          removed support for .text. Reduced the number of places that explicitly list supported
          extensions. Some of the changes come from bug 8121, the patch for which got landed only
          partially.

LayoutTests:
        * http/tests/incremental/slow-utf8-text.pl: Added (renamed from .text).
        * http/tests/incremental/slow-utf8-text.text: Removed.
        * http/tests/incremental/split-hex-entities.pl: Added (renamed from .html).
        * http/tests/incremental/split-hex-entities.html: Removed.
        * http/tests/incremental/.htaccess: Removed.

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

16 years ago Reviewed by Tim Omernick.
sullivan [Tue, 11 Apr 2006 04:17:43 +0000 (04:17 +0000)]
    Reviewed by Tim Omernick.

        - fixed <rdar://problem/4139799> Seed: Safari: Private Browsing leaves traces in Icon Cache

        * Misc/WebIconDatabasePrivate.h:
        new ivars: pageURLsBoundDuringPrivateBrowsing, iconURLsBoundDuringPrivateBrowsing, and privateBrowsingEnabled

        * Misc/WebIconDatabase.m:
        (-[NSMutableDictionary init]):
        initialize new ivars, and listen for notifications that WebPreferences changed so we can react to changes
        to private browsing.
        (-[NSMutableDictionary iconForURL:withSize:cache:]):
        Don't remove icon URL from extraRetain dictionary; that's now done in _forgetIconForIconURLString. (I left a
        comment here earlier about why I was worried about this change, but I convinced myself that it's fine.)
        (-[WebIconDatabase removeAllIcons]):
        Removed no-longer-true (and never very clear) comment, and braces. Also remove all objects from the two
        private-browsing-related dictionaries.
        (-[WebIconDatabase _setIcon:forIconURL:]):
        remember icon URL if private browsing is enabled
        (-[WebIconDatabase _setHaveNoIconForIconURL:]):
        remember icon URL if private browsing is enabled
        (-[WebIconDatabase _setIconURL:forURL:]):
        added an assert that helped me out at one point
        (-[WebIconDatabase _clearDictionaries]):
        clear the two new dictionaries too
        (-[WebIconDatabase _loadIconDictionaries]):
        made an existing ERROR not fire in the expected case where there are no icons at all on disk
        (-[WebIconDatabase _updateFileDatabase]):
        when saving the pageURLToIconURL dictionary to disk, first remove any values that were created during
        private browsing
        (-[WebIconDatabase _retainIconForIconURLString:]):
        skip the code that deals with saving changes to disk if private browsing is enabled
        (-[WebIconDatabase _forgetIconForIconURLString:]):
        Remove the icon URL from extraRetain dictionary here. We're forgetting everything about this icon URL
        so we should forget its former extraRetain count too.
        (-[WebIconDatabase _resetCachedWebPreferences:]):
        Cache the new value of private browsing. If it has now been turned off, forget everything we learned
        while it was on. This causes (e.g.) icons for bookmarks or pre-existing history items to be forgotten
        if the icon was only learned during private browsing.

        * History/WebHistoryItem.m:
        removed an unnecessary #import I happened to notice

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

16 years ago * fast/dom/gc-4-expected.txt: Add one blank line (test result was failing).
darin [Mon, 10 Apr 2006 23:36:49 +0000 (23:36 +0000)]
    * fast/dom/gc-4-expected.txt: Add one blank line (test result was failing).

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

16 years ago - try to fix the Windows build
darin [Mon, 10 Apr 2006 23:30:25 +0000 (23:30 +0000)]
    - try to fix the Windows build

        * WebCore.vcproj/WebCore/WebCore.vcproj: Fix mistaken bad editing of
        AdditionalIncludeDirectories.

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

16 years ago Make focus ring painting respect clips set by WebCore (e.g., overflow).
hyatt [Mon, 10 Apr 2006 22:30:42 +0000 (22:30 +0000)]
    Make focus ring painting respect clips set by WebCore (e.g., overflow).

        Reviewed by darin

        * platform/GraphicsContext.h:
        * platform/mac/GraphicsContextMac.mm:
        (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
        (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
        (WebCore::GraphicsContext::setFocusRingClip):
        (WebCore::GraphicsContext::clearFocusRingClip):
        (WebCore::GraphicsContext::drawFocusRing):
        * platform/mac/WebCoreGraphicsBridge.h:
        * platform/mac/WebCoreGraphicsBridge.m:
        (-[WebCoreGraphicsBridge drawFocusRingWithPath:radius:color:clipRect:]):
        * rendering/RenderLayer.cpp:
        (WebCore::setClip):
        (WebCore::restoreClip):

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

16 years ago Make the broken CG focus ring painting work when WebCore sets a clip
hyatt [Mon, 10 Apr 2006 22:29:13 +0000 (22:29 +0000)]
    Make the broken CG focus ring painting work when WebCore sets a clip
        (in addition to respecting the dirty rect clip).

        Reviewed by darin

        * WebCoreSupport/WebGraphicsBridge.m:
        (-[WebGraphicsBridge drawFocusRingWithPath:radius:color:clipRect:]):

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

16 years ago Reviewed by Geoff.
darin [Mon, 10 Apr 2006 22:12:30 +0000 (22:12 +0000)]
    Reviewed by Geoff.

        - death to khtml/ecma, long live bindings/js

        * khtml/ecma: Removed. Moved all files to bindings/js.

        * bindings/js/JSDOMParser.cpp: Added.
        * bindings/js/JSDOMParser.h: Added.
        * bindings/js/JSXMLHttpRequest.cpp: Added.
        * bindings/js/JSXMLHttpRequest.h: Added.
        * bindings/js/JSXMLSerializer.cpp: Added.
        * bindings/js/JSXMLSerializer.h: Added.
        * bindings/js/JSXSLTProcessor.cpp: Added.
        * bindings/js/JSXSLTProcessor.h: Added.
        * bindings/js/kjs_binding.cpp: Added.
        * bindings/js/kjs_binding.h: Added.
        * bindings/js/kjs_css.cpp: Added.
        * bindings/js/kjs_css.h: Added.
        * bindings/js/kjs_dom.cpp: Added.
        * bindings/js/kjs_dom.h: Added.
        * bindings/js/kjs_events.cpp: Added.
        * bindings/js/kjs_events.h: Added.
        * bindings/js/kjs_html.cpp: Added.
        * bindings/js/kjs_html.h: Added.
        * bindings/js/kjs_navigator.cpp: Added.
        * bindings/js/kjs_navigator.h: Added.
        * bindings/js/kjs_proxy.cpp: Added.
        * bindings/js/kjs_proxy.h: Added.
        * bindings/js/kjs_traversal.cpp: Added.
        * bindings/js/kjs_traversal.h: Added.
        * bindings/js/kjs_views.cpp: Added.
        * bindings/js/kjs_views.h: Added.
        * bindings/js/kjs_window.cpp: Added.
        * bindings/js/kjs_window.h: Added.

        * DerivedSources.make: Removed khtml/ecma from directory list.
        * WebCore.vcproj/WebCore/WebCore.vcproj: Moved files from
        khtml/ecma to bindings/js.
        * WebCore.xcodeproj/project.pbxproj: Ditto.

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

16 years ago - one more test change for http://bugzilla.opendarwin.org/show_bug.cgi?id...
darin [Mon, 10 Apr 2006 21:40:51 +0000 (21:40 +0000)]
    - one more test change for bugzilla.opendarwin.org/show_bug.cgi?id=4884
          Canvas element breaks when RenderObject creation is deferred by external CSS

        * fast/dom/gc-4.html: Test had a bug where it used <canvas>
        without a </canvas> tag. Changed test to include a </canvas> tag.

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

16 years ago Reviewed by Geoff.
darin [Mon, 10 Apr 2006 21:38:16 +0000 (21:38 +0000)]
    Reviewed by Geoff.

        - try to fix the Windows build

        * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::reset):
        Put code to release m_drawingContext into an __APPLE__ ifdef.

        * platform/win/TemporaryLinkStubs.cpp:

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

16 years ago Reviewed by Beth.
ggaren [Mon, 10 Apr 2006 21:10:00 +0000 (21:10 +0000)]
    Reviewed by Beth.

        * projects/compat/hitlist.html: updated dates

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

16 years ago Fix by Mitz Pettel, reviewed by Eric.
ap [Mon, 10 Apr 2006 17:02:17 +0000 (17:02 +0000)]
    Fix by Mitz Pettel, reviewed by Eric.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8295
          Dictionary pop-up panel targets the wrong word in a scrolled IFRAME

        * kwq/WebCoreAXObject.mm:
        (-[WebCoreAXObject doAXTextMarkerForPosition:]): Removed the addition of scroll
        offsets, which is redundant for scrolled views, then changed the first view
        to be the document's scrolled view instead of its scroll view (all subsequent views were
        already scrolled views).
        * manual-tests/dictionary-scrolled-iframe.html: Added.

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

16 years agoLayoutTests:
darin [Mon, 10 Apr 2006 16:49:04 +0000 (16:49 +0000)]
LayoutTests:

        - regenerated pixel results because many may be affected by
          the fix for bug 8100

WebKit:

        Reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8100
          REGRESSION (NativeTextField): Right-aligned and RTL text jitters in new text fields

        * WebCoreSupport/WebTextRenderer.m:
        (overrideLayoutOperation): For RTL runs, apply the word-rounding on the left.
        (CG_floatWidthForRun): For RTL runs, apply the last character's rounding
        on the left by adjusting the start position.
        (initializeWidthIterator): Added finalRoundingWidth field to WidthIterator.
        (advanceWidthIterator): For RTL runs, apply rounding on the left of the character,
        by increasing the width of the next character (which is the character to the left). For
        the last character, keep the rounding width in the iterator's finalRoundingWidth, to be used by
        CG_floatWidthForRun().

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

16 years ago Reviewed by eric.
ggaren [Mon, 10 Apr 2006 05:06:35 +0000 (05:06 +0000)]
    Reviewed by eric.

        - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=8284
        prevent unnecessary entries in the "nodes with extra refs" hash table

        This patch switches manual RefPtr exchange with use of
        RefPtr::release to ensure that a node's ref count never tops 1
        (in the normal case).

        * kjs/nodes.cpp:
        (BlockNode::BlockNode):
        (CaseBlockNode::CaseBlockNode):
        * kjs/nodes.h:
        (KJS::ArrayNode::ArrayNode):
        (KJS::ObjectLiteralNode::ObjectLiteralNode):
        (KJS::ArgumentsNode::ArgumentsNode):
        (KJS::VarStatementNode::VarStatementNode):
        (KJS::ForNode::ForNode):
        (KJS::CaseClauseNode::CaseClauseNode):
        (KJS::FuncExprNode::FuncExprNode):
        (KJS::FuncDeclNode::FuncDeclNode):

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

16 years ago Reviewed by Darin.
ap [Mon, 10 Apr 2006 04:40:28 +0000 (04:40 +0000)]
    Reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7877
        XMLHttpRequest ignores username/password passed to open()

        Test: http/tests/xmlhttprequest/basic-auth.html

        * platform/KURL.cpp:
        (KURL::setUser): Enable a code path that handles non-empty user name -
        it was already present, but commented out and protected with an assertion.
        (KURL::setPass): Ditto.

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

16 years agoRemoved bogus suffix I checked in by accident.
darin [Mon, 10 Apr 2006 02:45:30 +0000 (02:45 +0000)]
Removed bogus suffix I checked in by accident.

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

16 years agoFirst early steps towards a next, much smaller, round of renames
darin [Sun, 9 Apr 2006 23:48:06 +0000 (23:48 +0000)]
First early steps towards a next, much smaller, round of renames
in WebCore.

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

16 years agoLayoutTests:
darin [Sun, 9 Apr 2006 23:38:06 +0000 (23:38 +0000)]
LayoutTests:

        Reviewed by Anders.

        - test changes for http://bugzilla.opendarwin.org/show_bug.cgi?id=4884
          Canvas element breaks when RenderObject creation is deferred by external CSS

        * fast/canvas/canvas-before-css-expected.checksum: Added.
        * fast/canvas/canvas-before-css-expected.png: Added.
        * fast/canvas/canvas-before-css-expected.txt: Added.
        * fast/canvas/canvas-before-css.html: Added.

        * fast/canvas/image-object-in-canvas.html: Test had a bug where it used <canvas>
        without a </canvas> tag. Changed test to include a </canvas> tag.

        * fast/canvas/patternfill-repeat-expected.txt: Updated for name change from
        RenderCanvasImage to RenderHTMLCanvas.
        * fast/canvas/image-object-in-canvas-expected.txt: Ditto.
        * fast/canvas/fillrect_gradient-expected.txt: Ditto.
        * fast/canvas/quadraticCurveTo-expected.txt: Ditto.

WebCore:

        Reviewed by Anders.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4884
          Canvas element breaks when RenderObject creation is deferred by external CSS

        Test: fast/canvas/canvas-before-css.html

        This patch makes us match the canvas documentation in Hixie's Web Applications
        draft as far as when the canvas is created and recreated and how it's sized.
        It also gets rid of the compositeOperation attribute of the canvas element.
        We can add that back if we need it. Anders points out that this specifically
        changes behavior for canvas elements where the size is set in CSS and not with
        width and height attributes. The CSS size now determines how big a box the canvas
        is rendered into, but has no effect on the size of the canvas's buffer.

        * html/CanvasRenderingContext2D.h: Added overloads of drawImage that take
        HTMLCanvasElement, which is no longer derived from HTMLImageElement.
        * html/CanvasRenderingContext2D.cpp:
        (WebCore::imageSize): Renamed from imageOrCanvasSize. Now used for images only,
        because canvas is no longer derived from image.
        (WebCore::CanvasRenderingContext2D::drawImage): Split the implementation of this
        for image sources from the implementation for canvas sources.
        (WebCore::CanvasRenderingContext2D::willDraw): Changed to call a new willDraw
        function on the canvas element.
        (WebCore::CanvasRenderingContext2D::drawingContext): Changed to call drawingContext
        on the canvas element rather than the renderer.

        * html/HTMLCanvasElement.h: Changed HTMLCanvasElement to derive from HTMLElement
        instead of HTMLImageElement. Added width, height, setWidth, setHeight, willDraw,
        paint, drawingContext, createDrawingContext, and reset functions. Added m_size,
        m_createdDrawingContext, m_data, and m_drawingContext data members. Removed
        mapToEntry, attach, detach, and isURLAttribute functins.

        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::HTMLCanvasElement): Added initializers for new m_size,
        m_createdDrawingContext, m_data, and m_drawingContext data members.
        (WebCore::HTMLCanvasElement::~HTMLCanvasElement): Free m_data and m_drawingContext.
        (WebCore::HTMLCanvasElement::parseMappedAttribute): Got rid of special case for
        srcAttr, which is no longer needed since we aren't deriving from HTMLImageElement.
        Added code that triggers a reset when either width or height is set.
        (WebCore::HTMLCanvasElement::createRenderer): Added code to set the intrinsic
        width and height of the renderer to the size of the element.
        (WebCore::HTMLCanvasElement::setHeight): Added. Sets the height attribute.
        (WebCore::HTMLCanvasElement::setWidth): Added. Sets the width attribute.
        (WebCore::HTMLCanvasElement::willDraw): Added. Tells the renderer to repaint.
        Also has FIXME mentioning we could dirty only the part that has changed in the future.
        (WebCore::HTMLCanvasElement::reset): Added. Sets the size of the canvas and discards
        the old buffer, which is an indirect way of resetting the buffer to transparent black.
        (WebCore::HTMLCanvasElement::paint): Added. Draws the canvas image into the graphics
        context that's passed in.
        (WebCore::HTMLCanvasElement::createDrawingContext): Added. Allocates a buffer for
        the bits, then creates a bitmap context for drawing into the buffer.
        (WebCore::HTMLCanvasElement::drawingContext): Added. Calls createDrawingContext if
        needed, then returns the current drawing context.
        (WebCore::HTMLCanvasElement::createPlatformImage): Changed to always call CGContextFlush
        and to create the image from the context in this class.

        * rendering/RenderHTMLCanvas.h: Remove almost all of the contents of this file.
        Removed ~RenderHTMLCanvas, setNeedsImageUpdate, element, updateDrawnImage, drawingContext,
        createDrawingContext, and drawnImage functions and _drawingContext, _drawingContextData,
        _drawnImage, and _needsImageUpdate booleans. Changed RenderHTMLCanvas to derive from
        RenderReplaced instead of RenderImage.

        * rendering/RenderHTMLCanvas.cpp:
        (WebCore::RenderHTMLCanvas::RenderHTMLCanvas): Changed to only initialize RenderReplaced.
        (WebCore::RenderHTMLCanvas::renderName): Moved this in here, since there's no good reason
        to have this virtual function inlined.
        (WebCore::RenderHTMLCanvas::paint): Changed implementation to use HTMLCanvasElement::paint
        instead ofcalling CGContextDrawImage directly.
        (WebCore::RenderHTMLCanvas::layout): Removed the code that detects changes in width and
        causes the drawing context to be recreated; instead, if the width and height changes we
        scale when we paint the canvas.

        * bindings/js/JSCanvasRenderingContext2DBase.cpp:
        (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction):
        Separated out handling for <canvas> vs. <img> elements in drawRect, since
        HTMLCanvasElement is no longer derived from HTMLImageElement.

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

16 years ago2006-04-09 Rob Buis <buis@kde.org>
eseidel [Sun, 9 Apr 2006 22:00:40 +0000 (22:00 +0000)]
2006-04-09  Rob Buis  <buis@kde.org>

        Reviewed by eseidel.  Landed by eseidel.

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6027:
        Dirty rect invalidation issues in mozilla sample

        Make sure the paths calculate the new bounding box and not
        use the cached bbox.

        No automated test case possible.

        * kcanvas/RenderPath.cpp:
        (WebCore::RenderPath::setPath):

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

16 years ago2006-04-09 Rob Buis <buis@kde.org>
eseidel [Sun, 9 Apr 2006 21:55:41 +0000 (21:55 +0000)]
2006-04-09  Rob Buis  <buis@kde.org>

        Reviewed by darin.  Landed by eseidel.

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6930:
        % width/height on nested <svg> tags do not work

        Set the context correctly for inner <svg>, so calculation of
        width/height for inner <svg> elements is done against the
        viewport element.

        Test: svg/custom/inner-percent.svg

        * ksvg2/svg/SVGSVGElement.cpp:
        (WebCore::SVGSVGElement::width):
        (WebCore::SVGSVGElement::height):

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

16 years ago2006-04-08 Rob Buis <buis@kde.org>
eseidel [Sun, 9 Apr 2006 20:12:06 +0000 (20:12 +0000)]
2006-04-08  Rob Buis  <buis@kde.org>

        Reviewed by eseidel.

        No automated test case possible.

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7531:
        hang in SVGPolygonElementImpl::toPathData in polygon test case

        Make sure the points list is cleared, just like the path
        list is cleared first before (re)parsing.

        * ksvg2/svg/SVGPolyElement.cpp:
        (SVGPolyElement::parseMappedAttribute):

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

16 years agoForgot to commit ChangeLog for JSC string capitalization fixes.
ap [Sun, 9 Apr 2006 08:03:17 +0000 (08:03 +0000)]
Forgot to commit ChangeLog for JSC string capitalization fixes.

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

16 years agoLayoutTests:
darin [Sun, 9 Apr 2006 05:08:56 +0000 (05:08 +0000)]
LayoutTests:

        Reviewed by Beth.

        - tests for http://bugzilla.opendarwin.org/show_bug.cgi?id=7622
          REGRESSION: New text fields should compute maxlength considering composed character sequences

        * fast/forms/input-text-maxlength-expected.checksum: Added.
        * fast/forms/input-text-maxlength-expected.png: Added.
        * fast/forms/input-text-maxlength-expected.txt: Added.
        * fast/forms/input-text-maxlength.html: Added.
        * fast/forms/input-text-paste-maxlength-expected.checksum: Added.
        * fast/forms/input-text-paste-maxlength-expected.png: Added.
        * fast/forms/input-text-paste-maxlength-expected.txt: Added.
        * fast/forms/input-text-paste-maxlength.html: Added.

WebCore:

        Reviewed by Beth.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7622
          REGRESSION: New text fields should compute maxlength considering composed character sequences

        Test: fast/forms/input-text-maxlength.html
        Test: fast/forms/input-text-paste-maxlength.html

        * html/HTMLInputElement.h: Removed all friend classes (not needed any more). Renamed
        typeEnum to InputType. Made init() function private. Tweaked parameter names and formatting
        in many function declarations. Made canHaveSelection, selectionStart, and selectionEnd
        const. Made data members except for m_name private instead of protected. Added private
        functions constrainValue and recheckValue. Removed unused isEditable function.

        * html/HTMLInputElement.cpp:
        (WebCore::numGraphemeClusters): Added.
        (WebCore::numCharactersInGraphemeClusters): Added.
        (WebCore::HTMLInputElement::isKeyboardFocusable): Use inputType() instead of using m_type
        directly.
        (WebCore::HTMLInputElement::isMouseFocusable): Ditto.
        (WebCore::HTMLInputElement::focus): Ditto.
        (WebCore::HTMLInputElement::setInputType): Added code to call constrainValue or recheckValue
        so we will enforce maxLen if changing from a type that doesn't have maxLen to one that does.
        (WebCore::HTMLInputElement::type): More-standard formatting for switch statement. Put
        cases into alphabetical order.
        (WebCore::HTMLInputElement::state): Changed switch statement to include all case values and
        not include a default case to take advantage of gcc's missing case warning.
        (WebCore::HTMLInputElement::restoreState): Ditto.
        (WebCore::HTMLInputElement::canHaveSelection): Ditto.
        (WebCore::HTMLInputElement::selectionStart): Ditto.
        (WebCore::HTMLInputElement::selectionEnd): Ditto.
        (WebCore::HTMLInputElement::setSelectionStart): Ditto.
        (WebCore::HTMLInputElement::setSelectionEnd): Ditto.
        (WebCore::HTMLInputElement::select): Ditto.
        (WebCore::HTMLInputElement::setSelectionRange): Ditto.
        (WebCore::HTMLInputElement::click): Ditto.
        (WebCore::HTMLInputElement::accessKeyAction): Ditto.
        (WebCore::HTMLInputElement::parseMappedAttribute): Use inputType() instead of using m_type
        directly. Added call to recheckValue when parsing a new value for the maxlength attribute.
        (WebCore::HTMLInputElement::rendererIsNeeded): Changed switch statement to include all case
        values and not include a default case to take advantage of gcc's missing case warning.
        (WebCore::HTMLInputElement::createRenderer): Ditto.
        (WebCore::HTMLInputElement::attach): Remove code to condition the value attribute when done
        parsing. This is now all handled by constrainValue and recheckValue as needed.
        (WebCore::HTMLInputElement::isSuccessfulSubmitButton): Use inputType() instead of using
        m_type directly.
        (WebCore::HTMLInputElement::appendFormData): Ditto. Rearranged code a little.
        (WebCore::HTMLInputElement::setChecked): Ditto.
        (WebCore::HTMLInputElement::setIndeterminate): Ditto.
        (WebCore::HTMLInputElement::value): Ditto. Call constrainValue when reading the value out
        of the value attribute.
        (WebCore::HTMLInputElement::valueWithDefault): Use inputType() instead of using
        m_type directly. Changed switch statement to include all case values and not include a
        default case to take advantage of gcc's missing case warning.
        (WebCore::HTMLInputElement::setValue): Ditto. Call constrainValue when storing a value.
        (WebCore::HTMLInputElement::setValueFromRenderer): Added an assertion.
        (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Use inputType() instead of
        using m_type directly.
        (WebCore::HTMLInputElement::preDispatchEventHandler): Ditto.
        (WebCore::HTMLInputElement::postDispatchEventHandler): Ditto.
        (WebCore::HTMLInputElement::defaultEventHandler): Ditto. Changed code to truncate inserted
        text in a BeforeTextInsertedEvent to use the new constrainValue function and also the
        numGraphemeClusters function, so it's based on grapheme clusters instead of characters and
        shares code.
        (WebCore::HTMLInputElement::constrainValue): Added.
        (WebCore::HTMLInputElement::recheckValue): Added.

        * html/HTMLIsIndexElement.cpp: (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
        Removed unneeded code to set m_type to TEXT, which is already what it gets set to by
        the base class's constructor.

        * html/HTMLGenericFormElement.h: Removed unused isEditable function.
        * html/HTMLGenericFormElement.cpp: Ditto.
        * html/HTMLTextAreaElement.h: Ditto.
        * html/HTMLTextAreaElement.cpp: Ditto.

        * platform/StringImpl.cpp: (WebCore::StringImpl::truncate): Changed > to >= so that
        truncating to the size of the string does nothing, efficiently.

        * rendering/RenderText.h: Added declaration of characterBreakIterator.
        * rendering/RenderText.cpp:
        (WebCore::characterBreakIterator): Made this public so it can be used in other files.
        Maybe we should also move it to another source file later. Also renamed to remove the
        "get" from the title.
        (WebCore::RenderText::previousOffset): Updated for name change.
        (WebCore::RenderText::nextOffset): Updated for name change.

        * rendering/RenderTextField.cpp: (WebCore::RenderTextField::updateFromElement):
        Removed code to implement maxlength checking. That's handled entirely in the DOM now.
        Also moved down the code to get the value into a string so that it's done only in the
        case where the string is used.

        * rendering/render_form.cpp: (WebCore::RenderFileButton::valueChanged): Use setValueFromRenderer
        instead of setting the value directly in the input element. We changed this for all the other
        types a while ago, and it works just as well for the input element.

        * dom/BeforeTextInsertedEvent.h: Added setText function. Previously, clients changed the text
        by modifying the text object in place, but going forward we'd like to avoid that sort of thing.

        * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment):
        Changed code to assume clients will change the text in the event rather than mutating the
        text object itself. This is compatible with possible future changes to String to be copy
        on write.
        * editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText): Ditto.

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

16 years ago Reviewed by Darin.
ap [Sat, 8 Apr 2006 19:04:29 +0000 (19:04 +0000)]
    Reviewed by Darin.

        One more attempt - use reinterpret_cast, rather than static_cast.

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

16 years ago Reviewed by Darin.
ap [Sat, 8 Apr 2006 18:54:06 +0000 (18:54 +0000)]
    Reviewed by Darin.

        An attempt to fix Win32 build - ICU uses wchar_t on Windows, so we need a type cast.

        * kxmlcore/unicode/icu/UnicodeIcu.h:
        (KXMLCore::Unicode::toLower):
        (KXMLCore::Unicode::toUpper):

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

16 years ago Reviewed by Darin.
ap [Sat, 8 Apr 2006 17:21:52 +0000 (17:21 +0000)]
    Reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8264
        toLowerCase and toUpperCase don't honor special mappings

        Test: fast/js/string-capitalization.html

        * JavaScriptCore.xcodeproj/project.pbxproj: Added KXMLCore::Unicode headers to the project.
        * icu/unicode/putil.h: Added (copied from WebCore).
        * icu/unicode/uiter.h: Ditto.
        * icu/unicode/ustring.h: Ditto.
        * kjs/string_object.cpp:
        (StringProtoFunc::callAsFunction): Use the new KXMLCore::Unicode::toUpper() and toLower().
        * kjs/ustring.cpp: Removed unused (and evil) UChar::toLower() and toUpper().
        * kjs/ustring.h: Ditto.

        * kxmlcore/unicode/Unicode.h: Corrected capitalization of the word Unicode.
        * kxmlcore/unicode/UnicodeCategory.h: Renamed include guard macro to match file name.

        * kxmlcore/unicode/icu/UnicodeIcu.h:
        (KXMLCore::Unicode::toLower): Work on strings, not individual characters. Use ICU root locale.
        (KXMLCore::Unicode::toUpper): Ditto.
        (KXMLCore::Unicode::isFormatChar): Use int32_t, which can hold a complete code point.
        (KXMLCore::Unicode::isSeparatorSpace): Ditto.
        (KXMLCore::Unicode::category): Ditto.
        * kxmlcore/unicode/qt4/UnicodeQt4.h:
        (KXMLCore::Unicode::toLower): Work on strings, not individual characters.
        (KXMLCore::Unicode::toUpper): Ditto.
        (KXMLCore::Unicode::isFormatChar): Use int32_t, which can hold a complete code point.
        (KXMLCore::Unicode::isSeparatorSpace): Ditto.
        (KXMLCore::Unicode::category): Ditto.

        * tests/mozilla/ecma/String/15.5.4.12-1.js: Corrected expected results.
        * tests/mozilla/ecma/String/15.5.4.12-5.js: Corrected expected results.

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

16 years ago Reviewed by Adele Peterson.
sullivan [Sat, 8 Apr 2006 16:49:21 +0000 (16:49 +0000)]
    Reviewed by Adele Peterson.

        - fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=8260
        REGRESSION: Assertion failure: ![_private->iconsToSaveWithURLs containsObject:iconURLString]
        in WebIconDatabase.m:695-[WebIconDatabase(WebInternal) _retainIconForIconURLString:]

        * Misc/WebIconDatabase.m:
        (-[WebIconDatabase _retainIconForIconURLString:]):
        This new assertion was one block too high; moved it in.

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

16 years agoLayoutTests:
darin [Sat, 8 Apr 2006 00:34:20 +0000 (00:34 +0000)]
LayoutTests:

        Reviewed by Hyatt.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8134
          REGRESSION: dragging down from the middle of a text field does not select to end of field

        * fast/forms/input-text-drag-down-expected.checksum: Added.
        * fast/forms/input-text-drag-down-expected.png: Added.
        * fast/forms/input-text-drag-down-expected.txt: Added.
        * fast/forms/input-text-drag-down.html: Added.

WebCore:

        Reviewed by Hyatt.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8134
          REGRESSION: dragging down from the middle of a text field does not select to end of field

        * editing/Selection.cpp:
        (WebCore::comparePositions): Added. Takes shadow content into account.
        (WebCore::Selection::validate): Changed to call comparePositions instead of calling
        Range::compareBoundaryPoints directly. Also removed unneeded code to redundantly set
        m_start and m_end to null and did a bit of reformatting.

        - some tiny efficiency improvements to the tokenizer -- no measurable speedup, but removes
          a little bit of unneeded code

        * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): Changed all the places
        that do "unsigned short x = *c" to "unsigned short x = c->unicode()" when c is a QChar,
        otherwise we do an unnecessary conversion to char (which requires a branch to see if
        the c fits in a char).

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

16 years ago Reviewed by harrison
justing [Sat, 8 Apr 2006 00:21:53 +0000 (00:21 +0000)]
    Reviewed by harrison

        Rolled the fix for 8250 back in and fixed a bug:
        The local variables for the first and last nodes in the fragment
        need to be reset when the fragment is changed for plaintext-only mode
        or a change from the beforetextinserted event handler.

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplacementFragment::ReplacementFragment):

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

16 years ago A fix that makes coalesced updates work much better (and makes our
hyatt [Sat, 8 Apr 2006 00:16:38 +0000 (00:16 +0000)]
    A fix that makes coalesced updates work much better (and makes our
        single animated GIF timer work better).  The new rect painting algorithm
        for WebHTMLView will use the single unioned rect if the # of rects exceeds
        a threshold (10 is my initial cut), or if the union has enough "wasted"
        additional pixels (conservatively set at 75%).

        Reviewed by darin

        * WebView/WebHTMLView.m:
        (-[NSArray drawSingleRect:]):
        (-[NSArray drawRect:]):

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

16 years agoLayoutTests:
mjs [Fri, 7 Apr 2006 23:55:19 +0000 (23:55 +0000)]
LayoutTests:

        Reviewed by Darin.

        Test case for this fix:

        - fixed REGRESSION: offsetParent on element with no offset parent crashes

        * fast/dom/Element/null-offset-parent.html: Added.

WebCore:

        Reviewed by Darin.

        - fixed REGRESSION: offsetParent on element with no offset parent crashes

        * dom/Element.cpp:
        (WebCore::Element::offsetParent): Add missing null check.

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

16 years ago Reviewed by Darin.
mjs [Fri, 7 Apr 2006 23:50:17 +0000 (23:50 +0000)]
    Reviewed by Darin.

        - simplify archive loading

        * WebView/WebDataSource.m:
        (-[WebDataSource representation]): fix whitespace
        * WebView/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation loadArchive]): Use WebFrame's loadArchive: instead
        of trying to do a manual load here.
        (-[WebHTMLRepresentation documentSource]): No more special case for WebArchive.

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

16 years ago Reviewed by Tim Omernick.
sullivan [Fri, 7 Apr 2006 23:01:57 +0000 (23:01 +0000)]
    Reviewed by Tim Omernick.

        - fixed <rdar://problem/4507054> If an icon file is removed from disk behind Safari's back,
        Safari will not try to refetch it

        In addition to letting WebIconDatabase recover from disk/memory mismatches as per 4507054, I also found
        a bug in the way icons are remembered that could account for some of the other cases where
        site icons didn't appear (and you'd get an ERROR on debug builds about WebIconDatabase saying it
        had some icon when it really doesn't).

        * Misc/WebIconDatabase.m:
        (-[WebIconDatabase iconForURL:withSize:cache:]):
        When the icon file for a previously-saved site icon isn't found, forget about the darn icon URL thoroughly
        so that this situation is self-correcting. Formerly, once you got into this state WebKit would never find
        the icon again (short of removing the entire icon database cleanly). Note that this does *not* change
        the behavior of sites that didn't have a site icon when WebKit checked -- these will continue to not
        return a site icon indefinitely (that's a separate, possibly performance-sensitive issue).
        (-[WebIconDatabase _retainIconForIconURLString:]):
        This code did the wrong thing in the case where an icon was in the process of being forgotten about. In
        that case, the icon would still be in _private->iconsOnDiskWithURLs, so we wouldn't try to save it here,
        so the new icon wouldn't stick.

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

16 years agoLayoutTests:
justing [Fri, 7 Apr 2006 22:25:43 +0000 (22:25 +0000)]
LayoutTests:

        Reviewed by adele

        * fast/forms/input-maxlength-2-expected.checksum: Added.
        * fast/forms/input-maxlength-2-expected.png: Added.
        * fast/forms/input-maxlength-2-expected.txt: Added.
        * fast/forms/input-maxlength-2.html: Added.

WebCore:

        Reviewed by adele

        maxlength truncation in text fields didn't work if the fragment was a
        single text node.

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplacementFragment::ReplacementFragment):

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

16 years agoRolling out the patch I just checked in.
justing [Fri, 7 Apr 2006 21:57:55 +0000 (21:57 +0000)]
Rolling out the patch I just checked in.

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

16 years agoLayoutTests:
justing [Fri, 7 Apr 2006 20:46:44 +0000 (20:46 +0000)]
LayoutTests:

        Reviewed by harrison
        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8250>
        REGRESSION: Interchange newlines aren't passed with the khtmlBeforeTextInsertedEvent

        * fast/forms/8250-expected.checksum: Added.
        * fast/forms/8250-expected.png: Added.
        * fast/forms/8250-expected.txt: Added.
        * fast/forms/8250.html: Added.

WebCore:

        Reviewed by harrison

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8250>
        REGRESSION: Interchange newlines aren't passed with the khtmlBeforeTextInsertedEvent

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplacementFragment::ReplacementFragment):
        Interchange content removal happened before khtmlBeforeTextInsertedEvent was sent.

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

16 years agoLayoutTests:
justing [Fri, 7 Apr 2006 19:36:59 +0000 (19:36 +0000)]
LayoutTests:

        Reviewed by adele
        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8219>
        REGRESSION: Two extra newlines added when pasting a single styled line into a plaintext-only region

        Updated to relfect fix:
        * editing/pasteboard/8145-1-expected.checksum:
        * editing/pasteboard/8145-1-expected.png:
        * editing/pasteboard/8145-1-expected.txt:
        * editing/pasteboard/8145-1.html:

WebCore:

        Reviewed by adele

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8219>
        REGRESSION: Two extra newlines added when pasting a single styled line into a plaintext-only region

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplacementFragment::ReplacementFragment):
        Converting the fragment to plaintext introduced an extraneous newline because
        the range passed to plainText ended after the paragraph containing the fragment
        built from the markup that TextEdit put on the paste board.  TextIterator will
        emit a newline when it exits a paragraph.
        Two extra newlines were added because the '\n' in the plaintext string turns
        into an interchange newline, which isn't removed because of 8250, and the
        interchange newline looks like inline content that requires the insertion of
        a paragraph separator during paste.
        Fixed by creating a range using VisiblePositions at the start and the end of
        the node that holds the fragment during paste's test rendering.

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

16 years agoLayoutTests:
justing [Fri, 7 Apr 2006 18:41:26 +0000 (18:41 +0000)]
LayoutTests:

        Reviewed by harrison

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8145>
        REGRESSION: Pasting text from TextEdit with a bold word into text field results in crash

        * editing/pasteboard/8145-1-expected.checksum: Added.
        * editing/pasteboard/8145-1-expected.png: Added.
        * editing/pasteboard/8145-1-expected.txt: Added.
        * editing/pasteboard/8145-1.html: Added.
        * editing/pasteboard/8145-2-expected.checksum: Added.
        * editing/pasteboard/8145-2-expected.png: Added.
        * editing/pasteboard/8145-2-expected.txt: Added.
        * editing/pasteboard/8145-2.html: Added.
        * editing/pasteboard/8145-3-expected.checksum: Added.
        * editing/pasteboard/8145-3-expected.png: Added.
        * editing/pasteboard/8145-3-expected.txt: Added.
        * editing/pasteboard/8145-3.html: Added.
        * fast/forms/plaintext-mode-1-expected.txt:
        * fast/forms/plaintext-mode-1.html:

WebCore:

        Reviewed by harrison

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8145>
        REGRESSION: Pasting text from TextEdit with a bold word into text field results in crash

        * editing/AppendNodeCommand.cpp:
        (WebCore::AppendNodeCommand::doApply):
        Assert that the node will be placed somewhere that's contenteditable.
        * editing/InsertNodeBeforeCommand.cpp:
        (WebCore::InsertNodeBeforeCommand::doApply): Ditto
        * editing/JSEditor.cpp:
        Enabled insertHTML for plaintext-only regions since it's useful for debugging rich
        content pastes into the new text fields.
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::doApply):
        1) After the first paragraph of the fragment has been merged with the first part of the
        paragraph where the paste occured, if the next node to be inserted is inline, we put it
        in a new paragraph because it was at the start of a paragraph in the fragment.  The change
        is to insert a paragraph separator if insertionPos.next() is null or outside of the current
        editable region.
        2) Before the paste begins, a paragraph separator is inserted in order to avoid
        nesting blocks from the fragment to be pasted inside the block where the paste will
        occur.  I made two fixes to the code that decides whether or not to insert the
        paragraph separator and added testcases for each.  Added a fixme because it appears that
        this code is also used to ensure that the aforementioned insertionPos will be at the end of
        a paragraph.  This code should only be about preventing nesting.

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

16 years agoLayoutTests:
mjs [Fri, 7 Apr 2006 08:31:17 +0000 (08:31 +0000)]
LayoutTests:

        Reviewed by Anders.

        Added test case for incidental fix from this change:

        - Convert Element JS bindings to be almost completely autogenerated
        http://bugzilla.opendarwin.org/show_bug.cgi?id=8227

        * fast/dom/Element/dimension-properties-unrendered-expected.txt: Added.
        * fast/dom/Element/dimension-properties-unrendered.html: Added.
        * fast/dom/Element/resources/dimension-properties-unrendered.js: Added.

WebCore:

        Reviewed by Anders.

        - Convert Element JS bindings to be almost completely autogenerated
        http://bugzilla.opendarwin.org/show_bug.cgi?id=8227

        * dom/Element.idl: Declare full interface in IDL.
        * dom/Element.h:
        (WebCore::Element::tagQName): Renamed from tagName, so the real DOM
        method can be called tagName.
        (WebCore::Element::tagName): inline alias for nodeName.
        * dom/Element.cpp:
        (WebCore::Element::scrollByUnits): Moved logic from JS bindings to
        core DOM.
        (WebCore::Element::scrollByLines): ditto
        (WebCore::Element::scrollByPages): ditto
        (WebCore::Element::offsetLeft): ditto, plus make unrendered elements return 0 not undefined
        (WebCore::Element::offsetTop): ditto, plus make unrendered elements return 0 not undefined
        (WebCore::Element::offsetWidth): ditto, plus make unrendered elements return 0 not undefined
        (WebCore::Element::offsetHeight): ditto, plus make unrendered elements return 0 not undefined
        (WebCore::Element::offsetParent): ditto
        (WebCore::Element::clientWidth): ditto, plus make unrendered elements return 0 not undefined
        (WebCore::Element::clientHeight): ditto, plus make unrendered elements return 0 not undefined
        (WebCore::Element::scrollLeft): ditto
        (WebCore::Element::scrollTop): ditto
        (WebCore::Element::setScrollLeft): ditto
        (WebCore::Element::setScrollTop): ditto
        (WebCore::Element::scrollWidth): ditto, plus make unrendered elements return 0 not undefined
        (WebCore::Element::scrollHeight): ditto, plus make unrendered elements return 0 not undefined

        * bindings/scripts/CodeGeneratorJS.pm: Added support for
        ConvertUndefinedToTrue, for benefit of scroll methods where
        omitted arguments should be treated as true.  However, maybe
        explicit overloading in the IDL would be a better long-term
        approach for optional arguments.

        * khtml/ecma/kjs_binding.cpp:
        (KJS::valueToStringWithNullCheck): fixed formatting
        (KJS::valueToBooleanTreatUndefinedAsTrue): added for binding of scrollIntoView
        (isn't this lame?)
        * khtml/ecma/kjs_binding.h:
        (KJS::toJS): fixed formatting, added new stuff
        * khtml/ecma/kjs_dom.cpp:
        (KJS::DOMElement::getValueProperty): removed most of contents
        (KJS::DOMElement::putValueProperty): ditto
        (KJS::DOMElementProtoFunc::callAsFunction): ditto

        * css/cssstyleselector.cpp:
        (WebCore::CSSStyleSelector::canShareStyleWithElement): updated for rename
        of tagName to tagQName
        (WebCore::CSSStyleSelector::checkOneSelector): ditto
        * dom/Document.cpp:
        (WebCore::Document::importNode): ditto
        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::removeInlineStyle): ditto
        (WebCore::areIdenticalElements): ditto
        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::inEitherTagList): ditto
        (WebCore::HTMLElement::inInlineTagList): ditto
        (WebCore::HTMLElement::inBlockTagList): ditto

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

16 years ago Re-enable coalesced updates. Our move to a single timer has essentially
hyatt [Fri, 7 Apr 2006 08:04:02 +0000 (08:04 +0000)]
    Re-enable coalesced updates.  Our move to a single timer has essentially
        implemented coalescing of updates anyway, so the regression has already
        come back.  Since we have to deal with that now anyway, there's no reason
        to visually tear also. :)

        Reviewed by darin

        * ChangeLog:
        * WebView/WebView.m:
        (-[WebView _commonInitializationWithFrameName:groupName:]):

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

16 years agoAdd the ignore property for inside this project.
darin [Fri, 7 Apr 2006 04:52:32 +0000 (04:52 +0000)]
Add the ignore property for inside this project.

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

16 years ago Reviewed by Darin.
bdakin [Thu, 6 Apr 2006 18:45:52 +0000 (18:45 +0000)]
    Reviewed by Darin.

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8203
        REGRESSION: "Invite a friend" text field in GMail page spills out
        of table

        RenderReplaced::calcMinMaxWidth() sets m_minWidth to 0 when the
        width is a percent, so this patch copies that behavior into
        RenderTextField::calcMinMaxWidth().

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

16 years ago - try to fix Windows build
darin [Thu, 6 Apr 2006 07:26:44 +0000 (07:26 +0000)]
    - try to fix Windows build

        * WebCore.vcproj/WebCore/WebCore.vcproj: Add JSDocument.cpp.

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

16 years ago Changes requested by Mark Rowe.
darin [Thu, 6 Apr 2006 07:23:34 +0000 (07:23 +0000)]
    Changes requested by Mark Rowe.

        * BuildSlaveSupport/build-launcher-app: Set executable bit, removed property change
        trash at the end of the file.
        * BuildSlaveSupport/build-launcher-dmg: Ditto.

        * WebKitLauncher/main.m: Removed trash at end of file.

        * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj: Let Xcode update comments
        to make name match.

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

16 years ago - regenerated test results
darin [Thu, 6 Apr 2006 07:11:46 +0000 (07:11 +0000)]
    - regenerated test results

        * fast/forms/input-table-expected.txt: Regenerated. Seems right, matches Gecko.

        * fast/forms/form-element-geometry-expected.png: Regenerated.
        * fast/forms/form-element-geometry-expected.checksum: Regenerated.

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

16 years ago - attempt to fix Windows build
darin [Thu, 6 Apr 2006 07:02:00 +0000 (07:02 +0000)]
    - attempt to fix Windows build

        * kxmlcore/HashMap.h: (KXMLCore::HashMap::remove): Use (*it). instead of it->.
        * kxmlcore/HashSet.h: (KXMLCore::HashSet::remove): Ditto.

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

16 years ago - bug http://bugzilla.opendarwin.org/show_bug.cgi?id=8187 seems to have disap...
darin [Thu, 6 Apr 2006 06:41:49 +0000 (06:41 +0000)]
    - bug bugzilla.opendarwin.org/show_bug.cgi?id=8187 seems to have disappeared

        * fast/forms/input-truncate-newline-expected.txt: Restored good expected results.

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

16 years ago - attempt to fix Windows build
darin [Thu, 6 Apr 2006 06:07:42 +0000 (06:07 +0000)]
    - attempt to fix Windows build

        * os-win32/stdint.h: Add int8_t, uint8_t, int64_t.

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

16 years ago - fixed a storage leak from that last check-in
darin [Thu, 6 Apr 2006 06:01:20 +0000 (06:01 +0000)]
    - fixed a storage leak from that last check-in

        * WebView/WebUnarchivingState.m: (-[WebUnarchivingState dealloc]):
        Release the two dictionaries.

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

16 years agoLayoutTests:
darin [Thu, 6 Apr 2006 05:57:30 +0000 (05:57 +0000)]
LayoutTests:

        Reviewed by Adele.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8111
          REGRESSION (NativeTextField): first click in form field on weather.com leaves focus
          but no caret

        - updated results for improved dumping of selection location in DumpRenderTree

        * fast/forms/input-text-self-emptying-click-expected.checksum: Added.
        * fast/forms/input-text-self-emptying-click-expected.png: Added.
        * fast/forms/input-text-self-emptying-click-expected.txt: Added.
        * fast/forms/input-text-self-emptying-click.html: Added.

        * editing/selection/3690703-2-expected.txt: Updated.
        * fast/forms/input-appearance-focus-expected.txt: Updated.
        * fast/forms/input-appearance-readonly-expected.txt: Updated.
        * fast/forms/input-appearance-selection-expected.txt: Updated.
        * fast/forms/input-paste-undo-expected.txt: Updated.
        * fast/forms/input-text-double-click-expected.txt: Updated.
        * fast/forms/input-text-option-delete-expected.txt: Updated.
        * fast/forms/input-text-scroll-left-on-blur-expected.txt: Updated.
        * fast/forms/plaintext-mode-2-expected.txt: Updated.

WebCore:

        Reviewed by Adele.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8111
          REGRESSION (NativeTextField): first click in form field on weather.com leaves focus
          but no caret

        Test: fast/forms/input-text-self-emptying-click.html

        * page/MouseEventWithHitTestResults.h: Removed url, target, m_url and m_target,
        replacing them with isOverLink and m_isOverLink. Replaced innerNode with targetNode,
        and added logic to handle the case where the target node is removed from the document
        but the element the target node was in is still inside the document.
        * page/MouseEventWithHitTestResults.cpp: Added.

        * WebCore.xcodeproj/project.pbxproj: Added MouseEventWithHitTestResults.cpp.
        * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.

        * kwq/RenderTreeAsText.cpp: (nodePosition): Added a call to shadowParentNode so we
        correctly dump positions within shadow trees. This was needed to give a good result
        from my new test for this bug.

        * dom/Document.cpp:
        (WebCore::Document::prepareMouseEvent): Update to pass fewer parameters to the
        constructor for MouseEventWithHitTestResults. Now takes isOverLink boolean, and no
        longer takes href and target parameters.

        * page/Frame.cpp:
        (WebCore::Frame::handleMousePressEventDoubleClick): Use new name targetNode, instead
        of old name innerNode.
        (WebCore::Frame::handleMousePressEventTripleClick): Ditto.
        (WebCore::Frame::handleMousePressEventSingleClick): Ditto. Also change code to check
        if over a link to use !isOverLink instead of url.isNull.
        (WebCore::Frame::handleMousePressEvent): Ditto. Also remove unused "url" local variable.
        (WebCore::Frame::handleMouseMoveEvent): Ditto.
        (WebCore::Frame::handleMouseReleaseEvent): Ditto.
        (WebCore::Frame::passWidgetMouseDownEventToWidget): Ditto.

        * bridge/mac/FrameMac.mm:
        (WebCore::FrameMac::handleMousePressEvent): Use new name targetNode, instead of old
        name innerNode.
        (WebCore::FrameMac::handleMouseMoveEvent): Ditto.
        (WebCore::FrameMac::passSubframeEventToSubframe): Ditto.
        (WebCore::FrameMac::sendContextMenuEvent): Ditto.

        * page/FrameView.cpp:
        (WebCore::subframeForEvent): Use new name targetNode, instead of old name innerNode.
        (WebCore::FrameView::handleMousePressEvent): Ditto.
        (WebCore::FrameView::handleMouseDoubleClickEvent): Ditto.
        (WebCore::selectCursor): Ditto. Also change code to check if over a link to use
        isOverLink instead of !url.isNull.
        (WebCore::FrameView::handleMouseMoveEvent): Ditto.
        (WebCore::FrameView::handleMouseReleaseEvent): Ditto.
        (WebCore::FrameView::updateDragAndDrop): Ditto.

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

16 years ago Reviewed by Eric.
mjs [Thu, 6 Apr 2006 04:49:28 +0000 (04:49 +0000)]
    Reviewed by Eric.

        - start on factoring WebArchive unpacking more into a separate class.
        http://bugzilla.opendarwin.org/show_bug.cgi?id=8208

        * WebKit.xcodeproj/project.pbxproj:
        * WebView/WebDataSource.m:
        (-[WebDataSourcePrivate dealloc]):
        (-[WebDataSource _addToUnarchiveState:]):
        (-[WebDataSource _popSubframeArchiveWithName:]):
        (-[WebDataSource _documentFragmentWithArchive:]):
        (-[WebDataSource _setupForReplaceByMIMEType:]):
        (-[WebDataSource subresourceForURL:]):
        * WebView/WebDataSourcePrivate.h:
        * WebView/WebFrame.m:
        (-[WebFrame _loadRequest:archive:]):
        (-[WebFrame loadRequest:]):
        (-[WebFrame loadArchive:]):
        * WebView/WebFramePrivate.h:
        * WebView/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation loadArchive]):
        * WebView/WebUnarchivingState.h: Added.
        * WebView/WebUnarchivingState.m: Added.
        (-[WebUnarchivingState init]):
        (-[WebUnarchivingState addArchive:]):
        (-[WebUnarchivingState archivedResourceForURL:]):
        (-[WebUnarchivingState popSubframeArchiveWithFrameName:]):

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

16 years agoFixed date in ChangeLog entries for last checkin.
mjs [Thu, 6 Apr 2006 04:44:42 +0000 (04:44 +0000)]
Fixed date in ChangeLog entries for last checkin.

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

16 years agoLayoutTests:
mjs [Thu, 6 Apr 2006 04:40:07 +0000 (04:40 +0000)]
LayoutTests:

        Reviewed and landed by Maciej.

        - updated test result for http://bugzilla.opendarwin.org/show_bug.cgi?id=8184
          REGRESSION (r13655): Layer outline not clipped where it should be

        * fast/clip/outline-overflowClip-expected.txt: Reverted to the correct
        expected result.

WebCore:

        Reviewed and landed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8184
          REGRESSION (r13655): Layer outline not clipped where it should be

        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::calculateRects): Reverted this part of the fix for bug 7943.
        The outlineRect should not be inflated.

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

16 years agoLayoutTests:
mjs [Thu, 6 Apr 2006 04:36:14 +0000 (04:36 +0000)]
LayoutTests:

        Reviewed by Eric, landed by Maciej.

        * svg/custom/class-selector.svg: Added.

WebCore:

        Reviewed by Eric, landed by Maciej.

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7627:
        SVG from the W3C SVG 1.1 test suite (cubic01.svg) renders as all black

        Fix this svg stylesheet to use strict-mode, as this makes sure
        class selecting is done correctly.

        * ksvg2/svg/SVGStyleElement.cpp:
        (SVGStyleElement::childrenChanged):

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

16 years ago Reviewed by Darin, landed by Maciej.
mjs [Thu, 6 Apr 2006 04:14:24 +0000 (04:14 +0000)]
    Reviewed by Darin, landed by Maciej.

        * BuildSlaveSupport/build-launcher-app: Added.  Builds WebKit.app from WebKitLauncher
          and bundles the WebKit frameworks inside it.
        * BuildSlaveSupport/build-launcher-dmg: Added.  Builds, and optionally uploads, a disk image
          containing WebKit.app.
        * BuildSlaveSupport/run-performance-tests:  Use currentSVNRevision.
        * Scripts/webkitdirs.pm:  Add currentSVNRevision to retrieve the revision
          number of the SVN working copy.
        * WebKitLauncher: Added.
        * WebKitLauncher/Info.plist: Added.
        * WebKitLauncher/WebKitLauncher.xcodeproj: Added.
        * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj: Added.
        * WebKitLauncher/WebKitNightlyEnabler.m: Added.  This makes
          up the WebKitNightlyEnabler dylib which is loaded into Safari's address space
          to cause LaunchServices to treat Safari.app as WebKit.app when it is run from
          the nightly launcher.
        * WebKitLauncher/main.m: Added.  The WebKit.app launcher.
          It sets up the environment to have Safari use the bundled frameworks
          and load the WebKitNightlyEnabler dylib before exec'ing Safari
        * WebKitLauncher/start.html: Added.
        * WebKitLauncher/webkit.icns: Added.

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

16 years ago Reviewed by Maciej.
darin [Thu, 6 Apr 2006 00:13:50 +0000 (00:13 +0000)]
    Reviewed by Maciej.

        - fix memory leak introduced by the previous change

        * kxmlcore/HashTable.h: Specialize NeedsRef so that it correctly returns true when
        the value in question is a pair where one of the pair needs a ref and the other
        of the pair does not.

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

16 years ago Reviewed by mjs
justing [Thu, 6 Apr 2006 00:00:24 +0000 (00:00 +0000)]
    Reviewed by mjs

        I forgot to convert one of the implicit remove/inserts to an explicit remove/insert,
        so we were hitting the assert I just added to InsertNodeBeforeCommand that checked for
        implicit removes.

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::doApply):

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

16 years agoShould fix the build
justing [Wed, 5 Apr 2006 22:43:40 +0000 (22:43 +0000)]
Should fix the build

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

16 years agoLayoutTests:
mjs [Wed, 5 Apr 2006 22:26:43 +0000 (22:26 +0000)]
LayoutTests:

        Reviewed by Anders.

        Update prototype chain for the following fix:

        - autogenerate bindings for all of the methods and properties of Document
        http://bugzilla.opendarwin.org/show_bug.cgi?id=8163

        * fast/dom/prototype-chain-expected.txt:

WebCore:

        Reviewed by Anders.

        - autogenerate bindings for all of the methods and properties of Document
        http://bugzilla.opendarwin.org/show_bug.cgi?id=8163

        - also removed document.actualEncoding since it is not in any spec
        or implemented by any other browser

        * DerivedSources.make: add JSDocument.h to results
        * WebCore.xcodeproj/project.pbxproj: Added new files to project
        * bindings/scripts/CodeGeneratorJS.pm: Support for new stuff needed by Document.
        * dom/Document.cpp:
        (WebCore::Document::readyState): moved impl here from JS bindings
        (WebCore::Document::inputEncoding): ditto
        (WebCore::Document::defaultCharset): ditto
        (WebCore::Document::setCharset): ditto
        * dom/Document.h:
        (WebCore::Document::charset): added, synonym for inputEncoding.
        (WebCore::Document::characterSet): ditto
        * dom/Document.idl: Added. Full interface for the Document object.
        * khtml/ecma/JSXMLHttpRequest.cpp:
        (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): JSDocument, not DOMDocument
        * khtml/ecma/JSXSLTProcessor.cpp:
        (KJS::XSLTProcessorProtoFunc::callAsFunction): ditto
        * khtml/ecma/kjs_binding.cpp:
        (KJS::jsStringOrFalse): Added this convenience for the method on Document
        that bizzarely returns false on failure and a string otherwise.
        * khtml/ecma/kjs_binding.h:
        * khtml/ecma/kjs_css.cpp:
        (KJS::toJS): renamed for consistency
        * khtml/ecma/kjs_css.h:
        * khtml/ecma/kjs_dom.cpp:
        - removed all traces of DOMDocument
        (KJS::toJS): JSDocument, not DOMDocument
        * khtml/ecma/kjs_dom.h:
        * khtml/ecma/kjs_html.cpp:
        (KJS::):
        (KJS::JSHTMLDocument::JSHTMLDocument): inherit from JSDocument
        (KJS::JSHTMLDocument::getOwnPropertySlot): ditto
        (KJS::JSHTMLDocument::put): ditto
        * khtml/ecma/kjs_html.h:
        * khtml/ecma/kjs_traversal.cpp:
        (KJS::toJS): added overloads
        (KJS::toNodeFilter): handle JS functions as well as impl NodeFilter objects
        * khtml/ecma/kjs_traversal.h:
        * platform/AtomicString.h:
        (WebCore::AtomicString::AtomicString): Allow implicit conversion from String.

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

16 years agoLayoutTests:
justing [Wed, 5 Apr 2006 21:53:23 +0000 (21:53 +0000)]
LayoutTests:

        Reviewed by darin

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8198>
        Hitting an assert on undo paste

        * editing/pasteboard/undoable-fragment-removes-expected.checksum: Added.
        * editing/pasteboard/undoable-fragment-removes-expected.png: Added.
        * editing/pasteboard/undoable-fragment-removes-expected.txt: Added.
        * editing/pasteboard/undoable-fragment-removes.html: Added.

WebCore:

        Reviewed by darin

        <http://bugzilla.opendarwin.org/show_bug.cgi?id=8198>
        Hitting an assert on undo paste

        ReplaceSelectionCommand was doing a combination of undoable and non-undoable
        removes from the ReplacementFragment.  On Undo Paste, the undoable removes
        couldn't be undone because the tree was in a different state than it was
        at the time of the remove.  This patch makes all the removes from the fragment
        non-undoable.  We could make them all undoable, but I can't think of any reason
        why we'd want the fragment to be reconstructed on an Undo Paste.

        * editing/AppendNodeCommand.cpp:
        (WebCore::AppendNodeCommand::doApply):
        Assert that the node to append isn't already in a tree, since if it is, it will
        be removed in a non-undoable way.
        * editing/InsertNodeBeforeCommand.cpp:
        (WebCore::InsertNodeBeforeCommand::doApply): Ditto.
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::doApply):
        Nodes were being moved from the fragment to the document with undoable inserts.
        Undoable inserts implicitly remove the node (in a non-undoable way) from its
        old location if it is already in a tree.  I now explicitly remove the nodes
        from the fragment before inserting them into the document to make it clear that
        they are being removed in a non-non-undoable way.  I also changed the one undoable
        remove from the fragment to a non-undoable remove.
        * editing/ReplaceSelectionCommand.h:
        Made ReplacementFragment's non-undoable removeNode public.

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

16 years ago - fixed the build
darin [Wed, 5 Apr 2006 21:51:11 +0000 (21:51 +0000)]
    - fixed the build

        * WebCore.xcodeproj/project.pbxproj: Oops! Resolved merge conflict.

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

16 years agoJavaScriptCore:
darin [Wed, 5 Apr 2006 21:19:57 +0000 (21:19 +0000)]
JavaScriptCore:

        Reviewed by Maciej.

        - JavaScriptCore part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8049
          StringImpl hash traits deleted value creates an init routine for WebCore
          <rdar://problem/4442248> REGRESSION: WebCore has init routines (8049)

        Change HashMap and HashSet implementation so they fold various types together.
        This allows us to implement maps and sets that use RefPtr<WebCore::StringImpl>
        and WebCore::String in terms of the underlying raw pointer type, and hence use
        -1 for the deleted value.

        * kxmlcore/HashTraits.h: Added a new type to HashTraits, StorageTraits, which is a
        type to be used when storing a value that has the same layout as the type itself.
        This is used only for non-key cases. In the case of keys, the hash function must also
        be considered. Moved emptyValue out of GenericHashTraitsBase into GenericHashTraits.
        Added a new bool to HashTraits, needsRef, which indicates whether the type needs
        explicit reference counting. If the type itself has needsRef true, but the storage
        type has needsRef false, then the HashSet or HashMap has to handle the reference
        counting explicitly. Added hash trait specializations for all signed integer values
        that give -1 as the deleted value. Gave all integers StorageTraits of the canonical
        integer type of the same size so int and long will share code. Gave all pointers and
        RefPtrs StorageTraits of the appropriately sized integer type. Removed redundant
        TraitType and emptyValue definitions in the pointer specialization for HashTraits.
        Added PairBaseHashTraits, which doesn't try to set up needsDestruction and deletedValue.
        Useful for types where we don't want to force the existence of deletedValue, such as
        the type of a pair in a HashMap which is not the actual storage type. Removed an
        unneeded parameter from the DeletedValueAssigner template. Added HashKeyStorageTraits
        template, which determines what type can be used to store a given hash key type with
        a given hash function, and specialized it for pointers and RefPtr so that pointer
        hash tables share an underlying HashTable that uses IntHash.

        * kxmlcore/HashTable.h: Added HashTableConstIteratorAdapter, HashTableIteratorAdapter,
        NeedsRef, RefCountManagerBase, RefCountManager, HashTableRefCountManagerBase, and
        HashTableRefCountManager. All are used by both HashSet and HashMap to handle hash
        tables where the type stored is not the same as the real value type.

        * kxmlcore/HashFunctions.h: Added a new struct named IntTypes that finds an
        integer type given a sizeof value. Renamed pointerHash to intHash and made it
        use overloading and take integer parameters. Added an IntHash struct which is
        a hash function that works for integers. Changed PtrHash to call IntHash with
        an appropriately sized integer. Made IntHash the default hash function for
        many integer types. Made PtrHash the default hash function for RefPtr as well
        as for raw pointers.

        * kxmlcore/HashSet.h: Changed implementation to use a separate "storage type"
        derived from the new traits. The HashTable will use the storage type and all
        necessary translation and ref/deref is done at the HashSet level. Also reorganized
        the file so that the HashSet is at the top and has no inline implementation inside
        it so it's easy to read the interface to HashSet.

        * kxmlcore/HashMap.h: Changed implementation to use a separate "storage type"
        derived from the new traits. The HashTable will use the storage type and all
        necessary translation and ref/deref is done at the HashMap level. Also reorganized
        the file so that the HashMap is at the top and has no inline implementation inside
        it so it's easy to read the interface to HashMap.

        * kxmlcore/HashMapPtrSpec.h: Removed. Superceded by optimizations in HashMap itself.

        * JavaScriptCore.xcodeproj/project.pbxproj: Remove HashMapPtrSpec.h, resort files,
        and also remove some unnecessary build settings from the aggregate target that
        generates derived sources.
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Ditto.

WebCore:

        Reviewed by Maciej.

        - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8049
          StringImpl hash traits deleted value creates an init routine for WebCore
          <rdar://problem/4442248> REGRESSION: WebCore has init routines (8049)

        * platform/StringHash.h: Added. Moved hash functions and such for
        WebCore::String and friends into this file so we don't have to include
        the hash traits header everywhere. Changed hashing for WebCore::StringImpl
        and WebCore::String so that they use a raw pointer for the underlying
        storage type, taking advantage of the new feature added in JavaScriptCore.

        * platform/AtomicString.h: Moved StrHash specialization to StringHash.h.
        * platform/PlatformString.h: Moved StrHash specialization to StringHash.h.
        * platform/StringImpl.h: Moved StrHash, CaseInsensitiveHash, and HashTraits
        to StringHash.h. Left DefaultHash behind so that you can't get the wrong
        hash function by accident if you forget to include "StringHash.h".

        * platform/StringImpl.cpp: Added include of StringHash.h and removed
        RefPtr<StringImpl> HashTraits<RefPtr<StringImpl> >::_deleted, which is
        the object with a global initializer causing all the trouble!

        * kwq/AccessibilityObjectCache.h: Changed hash function to be IntHash
        instead of PtrHash.

        * dom/StyledElement.cpp: Changed MappedAttributeKeyTraits to inherit from
        the generic traits in KXMLCore so we get a StorageType. Also cleaned up a
        tiny bit by adding default values to the MappedAttributeKey constructor.

        * platform/CharsetNames.cpp: Changed hash traits here to be a new
        TextEncodingIDHashTraits struct rather than defining new default traits
        for the integer type since more integer types have default traits in
        HashTraits.h now. Also added a specialization so this class will share
        the underlying implementation (since InvalidEncoding happens to be -1).

        * bridge/mac/FrameMac.h:
        * dom/Document.h:
        * dom/xml_tokenizer.h:
        * khtml/xsl/XSLTProcessor.h:
        * kwq/JavaAppletWidget.h:
        * page/FramePrivate.h:
        * page/Page.cpp:
        * platform/AtomicString.cpp:
        * platform/TransferJob.h:
        * rendering/render_applet.h:
        Added include of StringHash.h.

        * WebCore.xcodeproj/project.pbxproj: Added StringHash.h. Remove unneeded
        CREATE_HASH_TABLE variable in build settings. Re-sorted some file lists.
        Added quotes to the CREATE_HASH_TABLE initialization in the rule that
        builds generated files. Removed various unneeded build settings for that
        target as well.

        * ForwardingHeaders/kxmlcore/HashTraits.h: Added.

        - other minor cleanup

        * bridge/mac/FrameMac.mm: Sorted includes.
        * dom/Node.cpp: Removed bogus symbol after #endif.

        * khtml/xsl/XSLTProcessor.cpp: Sorted includes. Removed redundant using
        namespace WebCore.
        * loader/Cache.cpp: Ditto.

WebKitTools:

        Reviewed by Maciej.

        * Scripts/check-for-global-initializers: Remove StringImpl from the list of files that
        are allowed to have global initializers.

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

16 years ago Reviewed by Darin.
bdakin [Wed, 5 Apr 2006 18:05:12 +0000 (18:05 +0000)]
    Reviewed by Darin.

        Fix for <rdar://problem/4502311> text-transform:capitalize needs to
        treat nbsp as a regular space when ICU changes

        There will be future changes in ICU to match the Unicode 4.1
        standard which no longer recognizes &nbsp as a word separator. We
        need to work around this with text-transform:capitalize because
        words after non-breaking spaces still need to be capitalized.

        No layout tests added because existing layout tests cover this.

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