Home | History | Annotate | Download | only in WebCore
      1 2007-10-14  Eric Seidel  <eric (a] webkit.org>
      2 
      3         Reviewed by aroben.
      4 
      5         Remove senseless malloc from paintOutline
      6         No tests needed, no functional change.
      7 
      8         * rendering/RenderFlow.cpp:
      9         (WebCore::RenderFlow::paintOutline): remove unneeded malloc
     10 
     11 2007-10-13  Eric Seidel  <eric (a] webkit.org>
     12 
     13         Reviewed by Mark Rowe.
     14 
     15         Fix SVGSVGElement::currentView() to not leak by using an OwnPtr.
     16         This fix is incompatible with changes eventually needed for supporting
     17         SVGSVGElement.currentView in the bindings (that needs a ref'd object)
     18         There are also several parser crashers in SVGViewSpec, but those will be fixed
     19         in my next patch.
     20         
     21         Leak fix only, no additional tests needed.
     22 
     23         * ksvg2/svg/SVGSVGElement.cpp:
     24         (WebCore::SVGSVGElement::currentView): call .get() and .set()
     25         * ksvg2/svg/SVGSVGElement.h: use OwnPtr
     26 
     27 2007-10-13  Oliver Hunt  <oliver (a] apple.com>
     28 
     29         Reviewed by Maciej.
     30 
     31         Fixing a few testcases by enabling SVG_EXPERIMENTAL on windows, and making the
     32         required fixes and corrections.
     33 
     34         * WebCore.vcproj/WebCore.vcproj:
     35         * WebCore.vcproj/build-generated-files.sh:
     36         * bindings/scripts/CodeGeneratorJS.pm:
     37         * ksvg2/scripts/make_names.pl:
     38         * ksvg2/svg/SVGColor.cpp:
     39         (WebCore::SVGColor::colorFromRGBColorString):
     40         * page/DOMWindow.idl:
     41         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp:
     42         * platform/win/WebCoreTextRenderer.cpp:
     43 
     44 2007-10-12  Darin Adler  <darin (a] apple.com>
     45 
     46         Reviewed by Sam.
     47 
     48         - more float/int conversion (to try to get the old builbot up)
     49 
     50         * rendering/RenderSVGRoot.cpp:
     51         (WebCore::RenderSVGRoot::layout): Cast to int.
     52         (WebCore::RenderSVGRoot::applyContentTransforms): Ditto.
     53         (WebCore::RenderSVGRoot::nodeAtPoint): Ditto.
     54 
     55 2007-10-12  Justin Garcia  <justin.garcia (a] apple.com>
     56 
     57         Reviewed by Harrison.
     58         
     59         <rdar://problem/5483370> GoogleDocs: Deleting cell text in a table row also removes any empty rows beneath the row being edited
     60         <rdar://problem/5482524> GoogleDocs: A hang occurs when applying list to selected table
     61         
     62         * editing/DeleteSelectionCommand.cpp:
     63         (WebCore::DeleteSelectionCommand::removePreviouslySelectedEmptyTableRows):
     64         * editing/InsertListCommand.cpp:
     65         (WebCore::InsertListCommand::modifyRange):
     66         (WebCore::InsertListCommand::doApply):
     67 
     68 2007-10-12  Darin Adler  <darin (a] apple.com>
     69 
     70         - fix another float/int conversion
     71 
     72         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
     73         (WebCore::SVGResourceMasker::applyMask): Explicitly cast to int.
     74 
     75 2007-10-12  Darin Adler  <darin (a] apple.com>
     76 
     77         Reviewed by Oliver Hunt.
     78 
     79         - fix float/int conversions that cause warnings on older versions
     80           of gcc (like the version currently being used on the PowerPC
     81           buildbot slave)
     82 
     83         * rendering/RenderPath.cpp:
     84         (WebCore::RenderPath::paint): Explicitly cast to int.
     85         (WebCore::RenderPath::addFocusRingRects): Use enclosingIntRect
     86         to convert a FloatRect to an IntRect.
     87         * rendering/SVGRootInlineBox.cpp:
     88         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
     89         Use 0 for the initial value of an int, rather than 0.0f.
     90         (WebCore::svgTextStyleForInlineTextBox): Explicitly cast to int.
     91         (WebCore::applyTextAnchorToTextChunk): Ditto.
     92 
     93 2007-10-12  Oliver Hunt  <oliver (a] apple.com>
     94 
     95         Reviewed by Mark.
     96 
     97         Cast zoom factor to int as the original patch did.  This is necessary to appease some versions of gcc.
     98 
     99         * ksvg2/svg/SVGSVGElement.cpp:
    100         (WebCore::SVGSVGElement::setCurrentScale):
    101 
    102 2007-10-12  Eric Seidel  <eric (a] webkit.org>
    103 
    104         Reviewed by Mark Rowe.
    105 
    106         Fix leaks in SVG code from feature-branch.
    107 
    108         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
    109         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
    110         * ksvg2/svg/SVGFEFloodElement.cpp:
    111         (WebCore::SVGFEFloodElement::filterEffect):
    112         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
    113         (WebCore::SVGFESpecularLightingElement::filterEffect):
    114         * ksvg2/svg/SVGGradientElement.cpp:
    115         (WebCore::SVGGradientElement::buildStops):
    116         * ksvg2/svg/SVGStyledElement.cpp:
    117         (WebCore::SVGStyledElement::resolveStyle): always refs style
    118         * platform/graphics/cg/ImageBufferCG.cpp:
    119         (WebCore::ImageBuffer::create): fastFree buffer if CG Context creation fails
    120 
    121 2007-10-12  Mark Rowe  <mrowe (a] apple.com>
    122 
    123         Windows, Gtk and Qt build fixes.  Add new files to projects.
    124 
    125         * WebCore.pro:
    126         * WebCore.vcproj/WebCore.vcproj:
    127 
    128 === Start merge of feature-branch 2007-10-12 ===
    129 
    130 2007-10-11  Oliver Hunt  <oliver (a] apple.com>
    131 
    132         Reviewed by Sam.
    133 
    134         Bug 15469: feature branch has 100's of implicit double -> float conversions
    135 
    136         Re-enable -Wshorten-64-to-32, and make required code changes to make us build sanely again.
    137         
    138         * WebCore.xcodeproj/project.pbxproj:
    139         * bindings/js/JSSVGMatrixCustom.cpp:
    140         (WebCore::JSSVGMatrix::translate):
    141         (WebCore::JSSVGMatrix::scale):
    142         (WebCore::JSSVGMatrix::scaleNonUniform):
    143         (WebCore::JSSVGMatrix::rotate):
    144         (WebCore::JSSVGMatrix::skewX):
    145         (WebCore::JSSVGMatrix::skewY):
    146         * bindings/scripts/CodeGeneratorJS.pm:
    147         * bindings/scripts/CodeGeneratorObjC.pm:
    148         * ksvg2/css/SVGRenderStyle.cpp:
    149         (WebCore::SVGRenderStyle::cssPrimitiveToLength):
    150         * ksvg2/css/SVGRenderStyle.h:
    151         * ksvg2/svg/SVGAnimateMotionElement.cpp:
    152         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
    153         (WebCore::SVGAnimateMotionElement::updateAnimatedValue):
    154         (WebCore::parsePoint):
    155         (WebCore::SVGAnimateMotionElement::calculateFromAndToValues):
    156         * ksvg2/svg/SVGAnimationElement.cpp:
    157         (WebCore::SVGAnimationElement::parseKeyNumbers):
    158         (WebCore::parseKeySplines):
    159         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
    160         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
    161         (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
    162         * ksvg2/svg/SVGFECompositeElement.cpp:
    163         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
    164         (WebCore::SVGFECompositeElement::parseMappedAttribute):
    165         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
    166         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
    167         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
    168         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
    169         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
    170         (WebCore::SVGFEDisplacementMapElement::parseMappedAttribute):
    171         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
    172         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
    173         (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
    174         * ksvg2/svg/SVGFELightElement.cpp:
    175         (WebCore::SVGFELightElement::SVGFELightElement):
    176         (WebCore::SVGFELightElement::parseMappedAttribute):
    177         * ksvg2/svg/SVGFEOffsetElement.cpp:
    178         (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
    179         (WebCore::SVGFEOffsetElement::parseMappedAttribute):
    180         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
    181         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
    182         (WebCore::SVGFESpecularLightingElement::parseMappedAttribute):
    183         * ksvg2/svg/SVGFETurbulenceElement.cpp:
    184         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
    185         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
    186         * ksvg2/svg/SVGFitToViewBox.cpp:
    187         (WebCore::SVGFitToViewBox::parseMappedAttribute):
    188         * ksvg2/svg/SVGFitToViewBox.h:
    189         * ksvg2/svg/SVGLength.cpp:
    190         (WebCore::SVGLength::setValueAsString):
    191         (WebCore::SVGLength::PercentageOfViewport):
    192         * ksvg2/svg/SVGNumber.idl:
    193         * ksvg2/svg/SVGNumberList.cpp:
    194         (WebCore::SVGNumberList::parse):
    195         * ksvg2/svg/SVGNumberList.h:
    196         * ksvg2/svg/SVGParserUtilities.cpp:
    197         (WebCore::_parseNumber):
    198         (WebCore::parseNumber):
    199         (WebCore::pointsListFromSVGData):
    200         (WebCore::PathBuilder::svgMoveTo):
    201         (WebCore::PathBuilder::svgLineTo):
    202         (WebCore::PathBuilder::svgCurveToCubic):
    203         (WebCore::SVGPathSegListBuilder::svgMoveTo):
    204         (WebCore::SVGPathSegListBuilder::svgLineTo):
    205         (WebCore::SVGPathSegListBuilder::svgLineToHorizontal):
    206         (WebCore::SVGPathSegListBuilder::svgLineToVertical):
    207         (WebCore::SVGPathSegListBuilder::svgCurveToCubic):
    208         (WebCore::SVGPathSegListBuilder::svgCurveToCubicSmooth):
    209         (WebCore::SVGPathSegListBuilder::svgCurveToQuadratic):
    210         (WebCore::SVGPathSegListBuilder::svgCurveToQuadraticSmooth):
    211         (WebCore::SVGPathSegListBuilder::svgArcTo):
    212         * ksvg2/svg/SVGParserUtilities.h:
    213         * ksvg2/svg/SVGPathElement.cpp:
    214         (WebCore::SVGPathElement::SVGPathElement):
    215         * ksvg2/svg/SVGSVGElement.cpp:
    216         (WebCore::SVGSVGElement::pixelUnitToMillimeterX):
    217         (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
    218         * ksvg2/svg/SVGSVGElement.h:
    219         * ksvg2/svg/SVGTransformDistance.cpp:
    220         (WebCore::SVGTransformDistance::addToSVGTransform):
    221         (WebCore::SVGTransformDistance::distance):
    222         * ksvg2/svg/SVGTransformDistance.h:
    223         * ksvg2/svg/SVGTransformable.cpp:
    224         (WebCore::SVGTransformable::parseTransformValue):
    225         * ksvg2/svg/SVGViewSpec.cpp:
    226         (WebCore::SVGViewSpec::parseViewSpec):
    227         * platform/graphics/svg/SVGResourceFilter.cpp:
    228         (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
    229         * platform/graphics/svg/cg/CgSupport.cpp:
    230         (WebCore::applyStrokeStyleToContext):
    231         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
    232         (WebCore::SVGPaintServerPattern::setup):
    233         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
    234         (WebCore::SVGResourceFilter::applyFilter):
    235         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
    236         (WebCore::SVGComponentTransferFunction::SVGComponentTransferFunction):
    237         * platform/graphics/svg/filters/SVGFEComposite.cpp:
    238         (WebCore::SVGFEComposite::SVGFEComposite):
    239         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
    240         (WebCore::SVGFEConvolveMatrix::SVGFEConvolveMatrix):
    241         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
    242         (WebCore::SVGFEDiffuseLighting::SVGFEDiffuseLighting):
    243         * platform/graphics/svg/filters/SVGFEFlood.cpp:
    244         (WebCore::SVGFEFlood::SVGFEFlood):
    245         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
    246         (WebCore::SVGFEGaussianBlur::SVGFEGaussianBlur):
    247         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
    248         (WebCore::SVGFEMorphology::SVGFEMorphology):
    249         * platform/graphics/svg/filters/SVGFEOffset.cpp:
    250         (WebCore::SVGFEOffset::SVGFEOffset):
    251         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
    252         (WebCore::SVGFESpecularLighting::SVGFESpecularLighting):
    253         * platform/graphics/svg/filters/SVGFETurbulence.cpp:
    254         (WebCore::SVGFETurbulence::SVGFETurbulence):
    255         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
    256         (WebCore::SVGFEColorMatrix::getCIFilter):
    257         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
    258         (WebCore::getVectorForChannel):
    259         (WebCore::getLightVectors):
    260         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
    261         (WebCore::SVGFEImage::getCIFilter):
    262         * rendering/RenderPath.cpp:
    263         (WebCore::RenderPath::drawMarkersIfNeeded):
    264         * rendering/RenderSVGImage.cpp:
    265         (WebCore::RenderSVGImage::paint):
    266         * rendering/RenderSVGInlineText.cpp:
    267         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
    268         * rendering/RenderSVGRoot.cpp:
    269         (WebCore::RenderSVGRoot::applyContentTransforms):
    270         (WebCore::RenderSVGRoot::calcViewport):
    271         (WebCore::RenderSVGRoot::nodeAtPoint):
    272         * rendering/RenderSVGText.cpp:
    273         (WebCore::RenderSVGText::absoluteRects):
    274         (WebCore::RenderSVGText::relativeBBox):
    275         * rendering/RenderSVGTextPath.cpp:
    276         * rendering/SVGCharacterLayoutInfo.cpp:
    277         (WebCore::calculateBaselineShift):
    278         (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo):
    279         (WebCore::SVGCharacterLayoutInfo::processedChunk):
    280         (WebCore::SVGCharacterLayoutInfo::nextPathLayoutPointAndAngle):
    281         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
    282         * rendering/SVGCharacterLayoutInfo.h:
    283         * rendering/SVGInlineTextBox.cpp:
    284         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries):
    285         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
    286         (WebCore::pathForDecoration):
    287         * rendering/SVGRenderTreeAsText.cpp:
    288         (WebCore::writeStyle):
    289         * rendering/SVGRootInlineBox.cpp:
    290         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
    291         (WebCore::applyTextAnchorToTextChunk):
    292         (WebCore::SVGRootInlineBox::buildLayoutInformation):
    293         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
    294 
    295 2007-10-11  Andrew Wellington  <proton (a] wiretapped.net>
    296 
    297         Reviewed by Eric Seidel.
    298 
    299         Fix for http://bugs.webkit.org/show_bug.cgi?id=15076
    300         "deg2rad has multiple definitions"
    301         
    302         Use deg2rad, rad2deg, deg2grad, grad2deg, rad2grad, grad2rad
    303         from wtf where appropriate.
    304         
    305         No test cases as this doesn't change behaviour.
    306         
    307         Change based on original patch by Rob Buis.
    308 
    309         * ksvg2/svg/SVGAngle.cpp:
    310         (WebCore::SVGAngle::calculate):
    311         (WebCore::SVGAngle::convertToSpecifiedUnits):
    312         (WebCore::SVGAngle::todeg):
    313         (WebCore::SVGAngle::torad):
    314         * platform/graphics/AffineTransform.cpp:
    315         (WebCore::AffineTransform::rotateFromVector):
    316         (WebCore::AffineTransform::skewX):
    317         (WebCore::AffineTransform::skewY):
    318         * platform/graphics/cg/AffineTransformCG.cpp:
    319         (WebCore::AffineTransform::rotate):
    320         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
    321         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
    322         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
    323         * rendering/RenderPath.cpp:
    324         (WebCore::drawMarkerWithData):
    325 
    326 2007-10-11  Nikolas Zimmermann  <zimmermann (a] kde.org>
    327 
    328         Reviewed by Oliver.
    329 
    330         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6421 (<text> textLength attribute is not respected)
    331         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6422 (<text> lengthAdjust attribute is not respected)
    332 
    333         Implement textLength and full lengthAdjust (both 'spacing' & 'spacingAndGlyphs' mode)
    334         for <text> & <tspan> & friends. <textPath> is still todo, as it's special.
    335 
    336         Also fix usage of cummulatedGlyphWidth/Height in SVGInlineTextBox, calculateGlyphBoundaries was
    337         supposed to be used in the distance calculations, to take per character transformations into account (ie. rotation).
    338 
    339         Fixes: svg/W3C-SVG-1.1/text-text-01-b.svg (complelty fixed the single W3C textLength testcase)
    340         Partly fixed: svg/batik/text/textOnPathSpaces.svg (kerning support missing)
    341         Partly fixed: svg/batik/text/textLayout.svg (word-letter spacing & textLength is todo)
    342 
    343         * ksvg2/svg/SVGTextContentElement.cpp:
    344         (WebCore::SVGTextContentElement::SVGTextContentElement):
    345         (WebCore::SVGTextContentElement::parseMappedAttribute):
    346         * rendering/SVGCharacterLayoutInfo.cpp:
    347         (WebCore::SVGCharacterLayoutInfo::nextPathLayoutPointAndAngle):
    348         * rendering/SVGCharacterLayoutInfo.h:
    349         (WebCore::SVGTextChunk::SVGTextChunk):
    350         (WebCore::SVGTextChunkWalker::operator()):
    351         * rendering/SVGInlineTextBox.cpp:
    352         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
    353         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
    354         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
    355         * rendering/SVGRootInlineBox.cpp:
    356         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
    357         (WebCore::cummulatedWidthOrHeightOfTextChunk):
    358         (WebCore::cummulatedWidthOfTextChunk):
    359         (WebCore::cummulatedHeightOfTextChunk):
    360         (WebCore::applyTextAnchorToTextChunk):
    361         (WebCore::applyTextLengthCorrectionToTextChunk):
    362         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
    363         (WebCore::SVGRootInlineBox::buildTextChunks):
    364         (WebCore::SVGRootInlineBox::layoutTextChunks):
    365         (WebCore::SVGRootInlineBox::walkTextChunks):
    366 
    367 2007-10-11  Oliver Hunt  <oliver (a] apple.com>
    368 
    369         Reviewed by Niko.
    370 
    371         Fix for Bug 15468: Parsing of numbers and lists is too lenient in SVG
    372 
    373         Correct parsing of numbers, number lists, and length lists in SVG.
    374 
    375         * ksvg2/svg/SVGLength.cpp:
    376         (WebCore::SVGLength::setValueAsString):
    377         * ksvg2/svg/SVGLength.h:
    378         * ksvg2/svg/SVGLengthList.cpp:
    379         (WebCore::SVGLengthList::parse):
    380         * ksvg2/svg/SVGParserUtilities.cpp:
    381         (WebCore::parseNumber):
    382 
    383 2007-10-11  Allan Sandfeld Jensen  <sandfeld (a] kde.org>
    384  
    385          Reviewed by Maciej and Eric.
    386  
    387          Implement CSS selector combinators nondeterministic matching. 
    388          Fixes http://bugs.webkit.org/show_bug.cgi?id=3428
    389  
    390          * css/CSSStyleSelector.cpp:
    391          (WebCore::CSSStyleSelector::matchRulesForList):
    392          (WebCore::CSSStyleSelector::checkSelector): Split the function and make the second part recursive
    393          (WebCore::CSSStyleSelector::checkOneSelector): Handle pseodo-elements rules and hoveractive quirks 
    394          here instead of in checkSelector.
    395          * css/CSSStyleSelector.h:
    396  
    397 2007-10-10  Eric Seidel  <eric (a] webkit.org>
    398 
    399         Reviewed by Nikolas Zimmermann.
    400         
    401         Fix the SVG dom so that rect.x.baseVal = rect.x.baseVal like it should.
    402         http://bugs.webkit.org/show_bug.cgi?id=14150
    403 
    404         Test: svg/dom/animated-tearoff-equlity.xhtml
    405 
    406         * ksvg2/svg/SVGAnimatedTemplate.h:
    407         (WebCore::SVGAnimatedTypeWrapperKey::SVGAnimatedTypeWrapperKey):
    408         (WebCore::SVGAnimatedTypeWrapperKey::operator==):
    409         (WebCore::SVGAnimatedTypeWrapperKeyHash::hash):
    410         (WebCore::SVGAnimatedTypeWrapperKeyHash::equal):
    411         (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::deletedValue):
    412         (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::emptyValue):
    413         (WebCore::SVGAnimatedTemplate::~SVGAnimatedTemplate):
    414         (WebCore::SVGAnimatedTemplate::wrapperCache):
    415         (WebCore::SVGAnimatedTemplate::forgetWrapper):
    416         (WebCore::lookupOrCreateWrapper):
    417         * ksvg2/svg/SVGElement.h:
    418 
    419 2007-10-10  Oliver Hunt  <oliver (a] apple.com>
    420 
    421         Reviewed by Maciej.
    422 
    423         Leopard build fix -- SVGDocument should not trty to make read/write properties read-only
    424 
    425         Remove those API definitions SVGDocument now inherits from Document
    426 
    427         * ksvg2/svg/SVGDocument.idl:
    428 
    429 2007-10-10  Eric Seidel  <eric (a] webkit.org>
    430 
    431         Reviewed by Oliver.
    432 
    433         Make renderers pull localTransform instead of depending on DOM elements to push
    434         This allows for cleaner invalidation code, and makes writing animation easier.
    435         Also fixed a tiny bug in SVGRenderImage focus ring calculations while there
    436         
    437         Updated test results for svg/custom/focus-ring.svg
    438 
    439         * WebCore.xcodeproj/project.pbxproj:
    440         * ksvg2/svg/SVGAElement.cpp:
    441         (WebCore::SVGAElement::createRenderer):
    442         * ksvg2/svg/SVGAnimateMotionElement.cpp:
    443         (WebCore::SVGAnimateMotionElement::applyAnimatedValueToElement):
    444         * ksvg2/svg/SVGAnimateTransformElement.cpp:
    445         (WebCore::SVGAnimateTransformElement::applyAnimatedValueToElement):
    446         * ksvg2/svg/SVGClipPathElement.cpp:
    447         (WebCore::SVGClipPathElement::canvasResource):
    448         * ksvg2/svg/SVGElement.h:
    449         * ksvg2/svg/SVGGElement.cpp:
    450         (WebCore::SVGGElement::createRenderer):
    451         * ksvg2/svg/SVGImageElement.cpp:
    452         * ksvg2/svg/SVGLocatable.cpp:
    453         (WebCore::SVGLocatable::getCTM):
    454         (WebCore::SVGLocatable::getScreenCTM):
    455         * ksvg2/svg/SVGMarkerElement.cpp:
    456         (WebCore::SVGMarkerElement::canvasResource):
    457         (WebCore::SVGMarkerElement::notifyAttributeChange):
    458         * ksvg2/svg/SVGSVGElement.h:
    459         * ksvg2/svg/SVGStyledElement.cpp:
    460         (WebCore::SVGStyledElement::rendererIsNeeded):
    461         (WebCore::SVGStyledElement::notifyResourceParentIfExistant):
    462         * ksvg2/svg/SVGStyledElement.h:
    463         (WebCore::SVGStyledElement::style):
    464         * ksvg2/svg/SVGStyledTransformableElement.cpp:
    465         (WebCore::SVGStyledTransformableElement::animatedLocalTransform):
    466         (WebCore::SVGStyledTransformableElement::parseMappedAttribute):
    467         (WebCore::SVGStyledTransformableElement::notifyAttributeChange):
    468         (WebCore::SVGStyledTransformableElement::createRenderer):
    469         * ksvg2/svg/SVGStyledTransformableElement.h:
    470         (WebCore::SVGStyledTransformableElement::toPathData):
    471         * ksvg2/svg/SVGSwitchElement.cpp:
    472         (WebCore::SVGSwitchElement::createRenderer):
    473         * ksvg2/svg/SVGTRefElement.cpp:
    474         (WebCore::SVGTRefElement::updateReferencedText):
    475         * ksvg2/svg/SVGTextElement.cpp:
    476         (WebCore::SVGTextElement::parseMappedAttribute):
    477         (WebCore::SVGTextElement::animatedLocalTransform):
    478         * ksvg2/svg/SVGTextElement.h:
    479         * ksvg2/svg/SVGTextPathElement.cpp:
    480         * ksvg2/svg/SVGTextPathElement.h:
    481         * ksvg2/svg/SVGTransformable.cpp:
    482         (WebCore::SVGTransformable::getCTM):
    483         (WebCore::SVGTransformable::getScreenCTM):
    484         * ksvg2/svg/SVGTransformable.h:
    485         * ksvg2/svg/SVGUseElement.cpp:
    486         (WebCore::SVGUseElement::createRenderer):
    487         (WebCore::SVGUseElement::attachShadowTree):
    488         * platform/graphics/AffineTransform.h:
    489         (WebCore::AffineTransform::operator!=):
    490         * platform/graphics/svg/SVGResourceMarker.cpp:
    491         (WebCore::SVGResourceMarker::setMarker):
    492         * platform/graphics/svg/SVGResourceMarker.h:
    493         * rendering/RenderForeignObject.cpp:
    494         (WebCore::RenderForeignObject::calculateLocalTransform):
    495         (WebCore::RenderForeignObject::layout):
    496         * rendering/RenderForeignObject.h:
    497         (WebCore::RenderForeignObject::localTransform):
    498         * rendering/RenderObject.cpp:
    499         * rendering/RenderObject.h:
    500         * rendering/RenderPath.cpp:
    501         (WebCore::RenderPath::RenderPath):
    502         (WebCore::RenderPath::localTransform):
    503         (WebCore::RenderPath::calculateLocalTransform):
    504         (WebCore::RenderPath::layout):
    505         * rendering/RenderPath.h:
    506         * rendering/RenderSVGContainer.cpp:
    507         (WebCore::RenderSVGContainer::localTransform):
    508         (WebCore::RenderSVGContainer::calculateLocalTransform):
    509         (WebCore::RenderSVGContainer::layout):
    510         * rendering/RenderSVGContainer.h:
    511         * rendering/RenderSVGImage.h:
    512         (WebCore::RenderSVGImage::localTransform):
    513         * rendering/RenderSVGText.cpp:
    514         (WebCore::RenderSVGText::calculateLocalTransform):
    515         (WebCore::RenderSVGText::layout):
    516         * rendering/RenderSVGText.h:
    517         (WebCore::RenderSVGText::isSVGText):
    518         (WebCore::RenderSVGText::localTransform):
    519         * rendering/RenderSVGTextPath.cpp:
    520         (WebCore::RenderSVGTextPath::layoutPath):
    521         (WebCore::RenderSVGTextPath::startOffset):
    522         (WebCore::RenderSVGTextPath::exactAlignment):
    523         (WebCore::RenderSVGTextPath::stretchMethod):
    524         * rendering/RenderSVGTextPath.h:
    525         * rendering/RenderSVGTransformableContainer.cpp: Added.
    526         (WebCore::RenderSVGTransformableContainer::RenderSVGTransformableContainer):
    527         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
    528         * rendering/RenderSVGTransformableContainer.h: Added.
    529         * rendering/RenderSVGViewportContainer.h:
    530 
    531 2007-10-10  Oliver Hunt  <oliver (a] apple.com>
    532 
    533         Reviewed by Eric.
    534 
    535         Bug 15451: SVGStyledElement must unregister itself from Resources on detach
    536         
    537         Use a global hashtable to maintain the relationship between the
    538         various SVG resources and their clients, across dom updates, etc.
    539 
    540         * ksvg2/svg/SVGStyledElement.cpp:
    541         (WebCore::SVGStyledElement::detach):
    542         * ksvg2/svg/SVGStyledElement.h:
    543         * platform/graphics/svg/SVGPaintServer.h:
    544         * platform/graphics/svg/SVGResource.cpp:
    545         (WebCore::ResourceSet::ResourceSet):
    546         (WebCore::clientMap):
    547         (WebCore::SVGResource::~SVGResource):
    548         (WebCore::SVGResource::invalidate):
    549         (WebCore::SVGResource::removeClient):
    550         (WebCore::SVGResource::addClient):
    551         * platform/graphics/svg/SVGResource.h:
    552         (WebCore::):
    553         (WebCore::SVGResource::isPaintServer):
    554         (WebCore::SVGResource::isFilter):
    555         (WebCore::SVGResource::isClipper):
    556         (WebCore::SVGResource::isMarker):
    557         (WebCore::SVGResource::isMasker):
    558         * platform/graphics/svg/SVGResourceClipper.h:
    559         (WebCore::SVGResourceClipper::resourceType):
    560         * platform/graphics/svg/SVGResourceFilter.h:
    561         * platform/graphics/svg/SVGResourceMarker.h:
    562         * platform/graphics/svg/SVGResourceMasker.h:
    563 
    564 2007-10-10  Mark Rowe  <mrowe (a] apple.com>
    565 
    566         Windows build fix after r26109.
    567 
    568         * WebCore.vcproj/WebCore.vcproj:
    569 
    570 2007-10-10  Oliver Hunt  <oliver (a] apple.com>
    571 
    572         Reviewed by Eric.
    573 
    574         Fix Bug 15433: Filters do not repaint when base resources change/update
    575 
    576         SVGFEImage now actually responds to image updates, and triggers a repaint.
    577 
    578         * platform/graphics/svg/SVGResource.h:
    579         * platform/graphics/svg/filters/SVGFEImage.cpp:
    580         (WebCore::SVGFEImage::setCachedImage):
    581           Don't re-set the image lest we want to trigger infinite recursion.
    582         (WebCore::SVGFEImage::imageChanged):
    583           Image change means we need to tell our clients to repaint
    584         * platform/graphics/svg/filters/SVGFEImage.h:
    585         * rendering/SVGRenderSupport.cpp:
    586         (WebCore::prepareToRenderSVGContent):
    587           make sure that users of filters are registered.
    588 
    589 2007-10-09  Eric Seidel  <eric (a] webkit.org>
    590 
    591         Reviewed by Alp.
    592 
    593         Track changes in r26109 to fix the Gtk+ build.
    594 
    595         * WebCore.pro:
    596 
    597 2007-10-09  Alexey Proskuryakov  <ap (a] webkit.org>
    598 
    599         Reviewed by Anders.
    600 
    601         http://bugs.webkit.org/show_bug.cgi?id=15436
    602         Wrong node order for XPath reverse axes
    603 
    604         Test: fast/xpath/reverse-axes.html
    605 
    606         * xml/XPathStep.cpp:
    607         (WebCore::XPath::Step::nodesInAxis): Do not prematurely sort reverse
    608         axes. Generate preceding axis nodes in reversed document order.
    609 
    610 2007-10-09  Alexey Proskuryakov  <ap (a] webkit.org>
    611 
    612         Reviewed by Mitz.
    613 
    614         http://bugs.webkit.org/show_bug.cgi?id=15437
    615         XPath substring-after function is broken
    616 
    617         Test: fast/xpath/substring-after.html
    618 
    619         * xml/XPathFunctions.cpp:
    620         (WebCore::XPath::FunSubstringAfter::evaluate): Fix it for real this time, hopefully.
    621 
    622 2007-10-09  Rob Buis  <buis (a] kde.org>
    623 
    624         Reviewed by Eric.
    625 
    626         http://bugs.webkit.org/show_bug.cgi?id=15080
    627         <use> element not refresh after adding objects by script in referrer
    628 
    629         Update shadow tree when elements are added/removed from a tree
    630         that is referenced by a <use>.
    631 
    632         * ksvg2/svg/SVGStyledElement.cpp:
    633         (WebCore::SVGStyledElement::childrenChanged):
    634         * ksvg2/svg/SVGStyledElement.h:
    635 
    636 2007-10-09  Rob Buis  <buis (a] kde.org>
    637 
    638         Reviewed by Maciej.
    639 
    640         http://bugs.webkit.org/show_bug.cgi?id=15088
    641         HTMLOptionElement.selected returns false when parent HTMLSelectElement is "display: none" until parent's .selectedIndex is accessed
    642 
    643         Make sure the list items are up to date when there is no renderer.
    644 
    645         * html/HTMLSelectElement.cpp:
    646         (WebCore::HTMLSelectElement::recalcStyle):
    647 
    648 2007-10-08  Eric Seidel  <eric (a] webkit.org>
    649 
    650         Reviewed by Oliver.
    651 
    652         Build fix.  Fix circular build rule for CSS*.in files evident on clean build.
    653 
    654         * DerivedSources.make:
    655         * WebCore.xcodeproj/project.pbxproj:
    656         * ksvg2/css/CSSPropertyNames.in: Removed.
    657         * ksvg2/css/CSSValueKeywords.in: Removed.
    658         * ksvg2/css/SVGCSSPropertyNames.in: Copied from ksvg2/css/CSSPropertyNames.in.
    659         * ksvg2/css/SVGCSSValueKeywords.in: Copied from ksvg2/css/CSSValueKeywords.in.
    660 
    661 2007-10-08  Eric Seidel  <eric (a] webkit.org>
    662 
    663         Reviewed by hyatt.
    664 
    665         Implement getComputedStyle support for SVG CSS values
    666         http://bugs.webkit.org/show_bug.cgi?id=15422
    667         
    668         This also unifies SVG and non-SVG CSS hash lookups. A unified hash
    669         solves correctness problems as well as offers improved speed.
    670         
    671         Test: svg/css/getComputedStyle-basic.xhtml
    672 
    673         * DerivedSources.make: unify SVG and non-SVG CSS hash files
    674         * WebCore.xcodeproj/project.pbxproj: remove old SVG CSS hash files
    675         * css/CSSComputedStyleDeclaration.cpp:
    676         (WebCore::):
    677         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): call getPropertyCSSValue
    678         * css/CSSComputedStyleDeclaration.h: add getPropertyCSSValue
    679         * css/CSSGrammar.y:
    680         * css/CSSParser.cpp:
    681         (WebCore::CSSParser::parseValue):
    682         * css/CSSStyleDeclaration.cpp:
    683         (WebCore::propertyID):
    684         * css/CSSStyleSelector.cpp:
    685         (WebCore::CSSStyleSelector::applyProperty):
    686         * ksvg2/css/CSSPropertyNames.in: remove font-size-adjust
    687         * ksvg2/css/SVGCSSComputedStyleDeclaration.cpp: Added.
    688         (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): added.
    689         * ksvg2/css/SVGCSSParser.cpp:
    690         (WebCore::CSSParser::parseSVGValue):
    691         * ksvg2/css/SVGCSSStyleSelector.cpp:
    692         (WebCore::CSSStyleSelector::applySVGProperty):
    693         * ksvg2/scripts/cssmakeprops: Removed.
    694         * ksvg2/scripts/cssmakevalues: Removed.
    695         * ksvg2/svg/SVGAnimationElement.cpp:
    696         * ksvg2/svg/SVGStyledElement.cpp:
    697         (WebCore::mapAttributeToCSSProperty):
    698         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName): remove font-size-adjust
    699 
    700 2007-10-08  Sam Weinig  <sam (a] webkit.org>
    701 
    702         Reviewed by Steve Falkenburg;
    703 
    704         Fix for <rdar://problem/5519698> CrashTracer: [USER] 47 crashes in Safari at com.apple.WebCore: WebCore::XMLTokenizer::lineNumber const + 9
    705 
    706         Test: fast/innerHTML/innerHTML-script-tag-crash.xhtml
    707 
    708         * dom/XMLTokenizer.cpp:
    709         (WebCore::XMLTokenizer::lineNumber): Return 1 when there is no context.
    710         (WebCore::XMLTokenizer::columnNumber): ditto.
    711 
    712 2007-10-08  Alexey Proskuryakov  <ap (a] webkit.org>
    713 
    714         * platform/mac/FontPlatformDataMac.mm:
    715         (WebCore::FontPlatformData::setFont): Restored one of the -1 checks removed in
    716         the previous change - we do need to check m_font!
    717 
    718 2007-10-08  Alexey Proskuryakov  <ap (a] webkit.org>
    719 
    720         Reviewed by Darin.
    721 
    722         http://bugs.webkit.org/show_bug.cgi?id=15397
    723         Layout tests freeze in HashTable::lookup
    724 
    725         Fixes a DRT freeze on PowerPC.
    726 
    727         * platform/mac/FontPlatformDataMac.mm:
    728         (WebCore::FontPlatformData::FontPlatformData): Don't ask for a size of a nil font,
    729         the result is undefined.
    730         (WebCore::FontPlatformData::setFont): Ditto. Also removed some checks for -1 that
    731         were not sufficient, and thus likely unnecessary,
    732 
    733 2007-10-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
    734 
    735         Reviewed by Eric.
    736 
    737         Fix some issues with rotation & baseline-shift, when spanning
    738         across <tspan> elements. Highlighted by the existing batik tests.
    739 
    740         * rendering/SVGCharacterLayoutInfo.cpp:
    741         (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo):
    742         (WebCore::SVGCharacterLayoutInfo::processedChunk):
    743         (WebCore::SVGChar::characterTransform):
    744         * rendering/SVGCharacterLayoutInfo.h:
    745         * rendering/SVGInlineTextBox.cpp:
    746         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries):
    747         (WebCore::SVGInlineTextBox::paintCharacters):
    748         (WebCore::SVGInlineTextBox::paintDecoration):
    749         * rendering/SVGRootInlineBox.cpp:
    750         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
    751 
    752 2007-10-07  Mark Rowe  <mrowe (a] apple.com>
    753 
    754         Reviewed by Maciej.
    755 
    756         Bug 5122: Need an equivalent of Mozilla's DOMContentLoaded event
    757         http://bugs.webkit.org/show_bug.cgi?id=5122
    758 
    759         This is based on a patch by Daniel Peebles (pumpkingod (a] gmail.com).
    760 
    761         Test: http/tests/loading/DOMContentLoaded-event.html
    762 
    763         * dom/Document.cpp:
    764         (WebCore::Document::finishedParsing): Dispatch the DOMContentLoaded event when parsing completes.
    765         * dom/EventNames.h:  Add DOMContentLoaded to the list of events.
    766 
    767 2007-10-07  Alexey Proskuryakov  <ap (a] webkit.org>
    768 
    769         Reviewed by Eric Seidel.
    770 
    771         http://bugs.webkit.org/show_bug.cgi?id=15368
    772         xsl:import fails when preceded by comment
    773 
    774         Test: fast/xsl/import-after-comment.xml
    775 
    776         * xml/XSLStyleSheet.cpp:
    777         (WebCore::XSLStyleSheet::loadChildSheets): It's OK for xsl:import to be preceded by
    778         non-element nodes.
    779 
    780 2007-10-07  Vincent Ricard  <magic (a] magicninja.org>
    781 
    782         Reviewed by Maciej.  Landed by eseidel.
    783 
    784         http://bugs.webkit.org/show_bug.cgi?id=15062
    785         Implement document.compatMode
    786 
    787         Tests: fast/dom/compatMode-AlmostStrict.html
    788                fast/dom/compatMode-Compat.html
    789                fast/dom/compatMode-Strict.html
    790 
    791         * html/HTMLDocument.cpp:
    792         (WebCore::HTMLDocument::compatMode):
    793         * html/HTMLDocument.h:
    794         * html/HTMLDocument.idl:
    795 
    796 2007-10-07  Sam Weinig  <sam (a] webkit.org>
    797 
    798         Reviewed by Darin & Nikolas.  Landed by eseidel.
    799 
    800         Patch for http://bugs.webkit.org/show_bug.cgi?id=14455
    801         Autogenerate the JS bindings for the StyleSheetList
    802 
    803         * DerivedSources.make:
    804         * WebCore.pro:
    805         * WebCore.vcproj/WebCore.vcproj:
    806         * WebCore.xcodeproj/project.pbxproj:
    807         * bindings/js/JSStyleSheetListCustom.cpp: Added.
    808         (WebCore::JSStyleSheetList::canGetItemsForName):
    809         (WebCore::JSStyleSheetList::nameGetter):
    810         * bindings/js/kjs_css.cpp:
    811         * bindings/js/kjs_css.h:
    812         * bindings/objc/DOMUtility.mm:
    813         * bindings/scripts/CodeGeneratorJS.pm:
    814         * css/StyleSheetList.cpp:
    815         (WebCore::StyleSheetList::StyleSheetList):
    816         (WebCore::StyleSheetList::documentDestroyed):
    817         (WebCore::StyleSheetList::getNamedItem):
    818         * css/StyleSheetList.h: Add Document member variable and
    819         getNamedItem function to accommodate the odd javascript 
    820         name getter functionality.
    821         * css/StyleSheetList.idl:
    822         * dom/Document.cpp:
    823         (WebCore::Document::Document):
    824         (WebCore::Document::~Document):
    825         * page/DOMWindow.idl: Add StyleSheetListConstructor
    826 
    827 2007-10-07  Lars Naesbye Christensen  <lars (a] naesbye.dk>
    828 
    829         Reviewed by Eric Seidel.
    830 
    831         make CSS cell cursor more mac-like
    832         http://bugs.webkit.org/show_bug.cgi?id=15325
    833 
    834         * Resources/cellCursor.png:
    835 
    836 2007-10-06  Eric Seidel  <eric (a] webkit.org>
    837 
    838         Reviewed by Oliver.
    839         
    840         SVG does not correctly handle onfocusin, onfocusout or onactivate
    841         http://bugs.webkit.org/show_bug.cgi?id=12573
    842 
    843         Test: svg/W3C-SVG-1.1/script-handle-02-b.svg
    844 
    845         * ksvg2/svg/SVGElement.cpp:
    846         (WebCore::SVGElement::parseMappedAttribute):
    847         * ksvg2/svg/svgattrs.in: add onfocusin, onfocusout and onactivate
    848 
    849 2007-10-06  Nikolas Zimmermann  <zimmermann (a] kde.org>
    850 
    851         Reviewed by Oliver.
    852 
    853         Never pass null input images to CICrop filter.
    854 
    855         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
    856         (WebCore::SVGFEComponentTransfer::getCIFilter):
    857         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
    858 
    859 2007-10-06  Mark Rowe  <mrowe (a] apple.com>
    860 
    861         Reviewed by Alp Toker.
    862 
    863         Gtk+ build fix and minor code cleanup.
    864 
    865         * WebCore.pro:
    866         * platform/gtk/FontCacheGtk.cpp:
    867         (WebCore::FontCache::getLastResortFallbackFont):
    868         (WebCore::FontCache::fontExists):
    869 
    870 2007-10-06  Alexey Proskuryakov  <ap (a] webkit.org>
    871 
    872         Reviewed by Mitz.
    873 
    874         http://bugs.webkit.org/show_bug.cgi?id=15380
    875         XPath: id('foo') doesn't resolve correctly
    876 
    877         Test: fast/xpath/id-simple.html
    878 
    879         * xml/XPathFunctions.cpp:
    880         (WebCore::XPath::FunId::evaluate): Fixed a logic error in id() parameter parsing.
    881 
    882 2007-10-06  Alexey Proskuryakov  <ap (a] webkit.org>
    883 
    884         Reviewed by Darin.
    885 
    886         Patch for http://bugs.webkit.org/show_bug.cgi?id=13707
    887         REGRESSION: JavaScript exceptions on quotes.burntelectrons.org
    888 
    889         http://bugs.webkit.org/show_bug.cgi?id=12628
    890         document.body is not supported in XHTML documents
    891 
    892         http://bugs.webkit.org/show_bug.cgi?id=14213
    893         On page with MIME type application/xhtml+xml, cookie don't work
    894 
    895         Moved a bunch of methods and properties from HTMLDocument down into Document to make
    896         them available for all documents (xml, svg).
    897         What was kept in HTMLDocument:
    898         - some methods and properties that are not in HTML5 (yet?);
    899         - open/write/writeln/close, as they will need to be modified to work on XML documents, and aren't
    900         of much use for those anyway;
    901         - designMode, because its definition in HTML5 is incompatible with our implementation.
    902 
    903         Covered by existing tests.
    904 
    905         * bindings/js/JSDocumentCustom.cpp:
    906         (WebCore::JSDocument::location):
    907         (WebCore::JSDocument::setLocation):
    908         * bindings/js/JSHTMLDocumentCustom.cpp:
    909         * bindings/objc/PublicDOMInterfaces.h:
    910         * dom/Document.cpp:
    911         (WebCore::Document::setBody):
    912         (WebCore::Document::cookie):
    913         (WebCore::Document::setCookie):
    914         (WebCore::Document::lastModified):
    915         * dom/Document.h:
    916         (WebCore::Document::title):
    917         * dom/Document.idl:
    918         * html/HTMLDocument.cpp:
    919         * html/HTMLDocument.h:
    920         * html/HTMLDocument.idl:
    921 
    922 2007-10-06  Eric Seidel  <eric (a] webkit.org>
    923 
    924         Reviewed by Oliver Hunt.
    925 
    926         RenderSVGContainer (<g>) should not repaint when its bounds change (unless it has a filter)
    927         http://bugs.webkit.org/show_bug.cgi?id=15388
    928         This makes the Sun Lively Kernel invalidate only what it should!
    929         
    930         No tests possible in DRT.
    931 
    932         * ksvg2/svg/SVGCircleElement.cpp:
    933         (WebCore::SVGCircleElement::notifyAttributeChange): replace call to rebuildRenderer
    934         * ksvg2/svg/SVGEllipseElement.cpp:
    935         (WebCore::SVGEllipseElement::notifyAttributeChange): replace call to rebuildRenderer
    936         * ksvg2/svg/SVGImageElement.cpp:
    937         (WebCore::SVGImageElement::notifyAttributeChange): replace call to rebuildRenderer
    938         (WebCore::SVGImageElement::hasRelativeValues): implemented
    939         * ksvg2/svg/SVGImageElement.h:
    940         * ksvg2/svg/SVGLineElement.cpp:
    941         (WebCore::SVGLineElement::notifyAttributeChange): replace call to rebuildRenderer
    942         * ksvg2/svg/SVGPathElement.cpp:
    943         (WebCore::SVGPathElement::notifyAttributeChange): replace call to rebuildRenderer
    944         * ksvg2/svg/SVGPolyElement.cpp:
    945         (WebCore::SVGPolyElement::notifyAttributeChange): replace call to rebuildRenderer
    946         * ksvg2/svg/SVGRectElement.cpp:
    947         (WebCore::SVGRectElement::notifyAttributeChange): replace call to rebuildRenderer
    948         * ksvg2/svg/SVGStyledElement.cpp:
    949         * ksvg2/svg/SVGStyledElement.h:
    950         (WebCore::SVGStyledElement::hasRelativeValues): default to true instead
    951         * ksvg2/svg/SVGStyledTransformableElement.cpp:
    952         (WebCore::SVGStyledTransformableElement::updateLocalTransform): don't layout if no change
    953         * ksvg2/svg/SVGStyledTransformableElement.h:
    954         * ksvg2/svg/SVGTransform.h:
    955         * rendering/RenderPath.cpp:
    956         (WebCore::RenderPath::layout):
    957         * rendering/RenderPath.h:
    958         * rendering/RenderSVGContainer.cpp:
    959         (WebCore::RenderSVGContainer::layout):
    960         (WebCore::RenderSVGContainer::selfWillPaint): return true if have a filter
    961         (WebCore::RenderSVGContainer::paint):
    962         * rendering/RenderSVGContainer.h:
    963         * rendering/RenderSVGHiddenContainer.cpp:
    964         (WebCore::RenderSVGHiddenContainer::layout):
    965         * rendering/RenderSVGRoot.cpp:
    966         (WebCore::RenderSVGRoot::layout):
    967         * rendering/RenderSVGViewportContainer.cpp:
    968         (WebCore::RenderSVGViewportContainer::layout):
    969         (WebCore::RenderSVGViewportContainer::calcViewport): use floats
    970 
    971 2007-10-06  Rob Buis  <buis (a] kde.org>
    972 
    973         Reviewed by Eric.
    974 
    975         Use document() instead of ownerDocument() and a few other cleanups.
    976 
    977         * ksvg2/misc/SVGDocumentExtensions.cpp:
    978         (WebCore::SVGDocumentExtensions::mapInstanceToElement):
    979         * ksvg2/svg/SVGCircleElement.cpp:
    980         (WebCore::SVGCircleElement::notifyAttributeChange):
    981         * ksvg2/svg/SVGClipPathElement.cpp:
    982         (WebCore::SVGClipPathElement::notifyAttributeChange):
    983         * ksvg2/svg/SVGElementInstance.cpp:
    984         (WebCore::containsUseChildNode):
    985         * ksvg2/svg/SVGEllipseElement.cpp:
    986         (WebCore::SVGEllipseElement::notifyAttributeChange):
    987         * ksvg2/svg/SVGGradientElement.cpp:
    988         (WebCore::SVGGradientElement::notifyAttributeChange):
    989         * ksvg2/svg/SVGImageElement.cpp:
    990         (WebCore::SVGImageElement::notifyAttributeChange):
    991         * ksvg2/svg/SVGLineElement.cpp:
    992         (WebCore::SVGLineElement::notifyAttributeChange):
    993         * ksvg2/svg/SVGMarkerElement.cpp:
    994         (WebCore::SVGMarkerElement::notifyAttributeChange):
    995         * ksvg2/svg/SVGMaskElement.cpp:
    996         (WebCore::SVGMaskElement::notifyAttributeChange):
    997         * ksvg2/svg/SVGPathElement.cpp:
    998         (WebCore::SVGPathElement::notifyAttributeChange):
    999         * ksvg2/svg/SVGPatternElement.cpp:
   1000         (WebCore::SVGPatternElement::notifyAttributeChange):
   1001         * ksvg2/svg/SVGPolyElement.cpp:
   1002         (WebCore::SVGPolyElement::notifyAttributeChange):
   1003         * ksvg2/svg/SVGRectElement.cpp:
   1004         (WebCore::SVGRectElement::notifyAttributeChange):
   1005         * ksvg2/svg/SVGStopElement.cpp:
   1006         (WebCore::SVGStopElement::notifyAttributeChange):
   1007 
   1008 2007-10-05  Eric Seidel  <eric (a] webkit.org>
   1009 
   1010         Reviewed by Oliver Hunt.
   1011 
   1012         SVG invalidates way too much during layout()
   1013         http://bugs.webkit.org/show_bug.cgi?id=14003
   1014 
   1015         * ksvg2/svg/SVGElement.cpp:
   1016         (WebCore::SVGElement::ownerSVGElement): simplify if
   1017         (WebCore::SVGElement::viewportElement): simplify if
   1018         * rendering/RenderSVGContainer.cpp:
   1019         (WebCore::RenderSVGContainer::layout): only layout children if parent changed
   1020         * rendering/RenderSVGRoot.cpp:
   1021         (WebCore::RenderSVGRoot::layout): only layout children when size changes
   1022         * rendering/RenderSVGText.cpp:
   1023         (WebCore::RenderSVGText::layout): hack to avoid bad RenderBlock::layout code
   1024         * rendering/RenderSVGViewportContainer.cpp:
   1025         (WebCore::RenderSVGViewportContainer::layout): don't use RenderSVGContainer::layout()
   1026 
   1027 2007-10-05  Oliver Hunt  <oliver (a] apple.com>
   1028 
   1029         Reviewed by Eric.
   1030 
   1031         30%+ performance improvement for svg embedded in xhtml
   1032 
   1033         Relayout internal to SVG was incorrectly being propagated to
   1034         the containing xhtml element, which subsequently resulted in
   1035         a full paint of the SVG, rather than just the dirty regions.
   1036 
   1037         * rendering/RenderObject.cpp:
   1038         (WebCore::objectIsRelayoutBoundary):
   1039         (WebCore::RenderObject::markContainingBlocksForLayout):
   1040 
   1041 2007-10-03  Eric Seidel  <eric (a] webkit.org>
   1042 
   1043         Reviewed by Maciej.
   1044         
   1045         http://bugs.webkit.org/show_bug.cgi?id=12310
   1046         Remove static variables from removeAllChildren causing crash.
   1047         removeAllChildren now iterates over the entire tree instead of recursing.
   1048         Also (according to Maciej) a possible 1-2% speedboost on HTML iBench.
   1049 
   1050         Test: fast/images/svg-background-crash-on-refresh.html
   1051 
   1052         * WebCore.xcodeproj/project.pbxproj:
   1053         * dom/ContainerNode.cpp:
   1054         (WebCore::addChildNodesToDeletionQueue):
   1055         (WebCore::ContainerNode::removeAllChildren): use new addChildNodesToDeletionQueue
   1056 
   1057 2007-10-03  David Hyatt  <hyatt (a] apple.com>
   1058 
   1059         Land support for the CSS @font-face rule.  This patch allows custom fonts
   1060         to be downloaded from the Web and rendered in Web pages.  Right now only
   1061         TrueType fonts are supported.  Proprietary formats like .eot are not
   1062         supported.
   1063 
   1064         Reviewed by Eric Seidel
   1065 
   1066         Many tests will be coming in a future landing.
   1067 
   1068         * WebCore.base.exp:
   1069         Expose some more stuff for WebKit, caused by font restructuring.
   1070 
   1071         * WebCore.xcodeproj/project.pbxproj:
   1072         Add all the new font face files.
   1073 
   1074         * css/CSSComputedStyleDeclaration.cpp:
   1075         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   1076         Make sure to ignore the 'src' property of @font-face rules.
   1077 
   1078         * css/CSSFontFace.cpp: Added.
   1079         (WebCore::CSSFontFace::CSSFontFace):
   1080         (WebCore::CSSFontFace::~CSSFontFace):
   1081         (WebCore::CSSFontFace::isLoaded):
   1082         (WebCore::CSSFontFace::isValid):
   1083         (WebCore::CSSFontFace::addSource):
   1084         (WebCore::CSSFontFace::fontLoaded):
   1085         (WebCore::CSSFontFace::getFontData):
   1086         * css/CSSFontFace.h: Added.
   1087         A CSSFontFace is a composite object.  It consists of multiple font-face sources, where each source represents either a remote or local
   1088         file in a @font-face rule's src list.
   1089 
   1090         * css/CSSFontFaceRule.cpp:
   1091         (WebCore::CSSFontFaceRule::setDeclaration):
   1092         (WebCore::CSSFontFaceRule::cssText):
   1093         * css/CSSFontFaceRule.h:
   1094         The implementation of the @font-face rule itself in the CSS sheet back end.
   1095         
   1096         * css/CSSFontFaceSource.cpp: Added.
   1097         (WebCore::CSSFontFaceSource::CSSFontFaceSource):
   1098         (WebCore::CSSFontFaceSource::~CSSFontFaceSource):
   1099         (WebCore::CSSFontFaceSource::pruneTable):
   1100         (WebCore::CSSFontFaceSource::isLoaded):
   1101         (WebCore::CSSFontFaceSource::isValid):
   1102         (WebCore::CSSFontFaceSource::fontLoaded):
   1103         (WebCore::CSSFontFaceSource::getFontData):
   1104         * css/CSSFontFaceSource.h: Added.
   1105         (WebCore::CSSFontFaceSource::string):
   1106         (WebCore::CSSFontFaceSource::setFontFace):
   1107         A font face source represents a single remote or local font.  If it represents a remote font than it wraps a CachedFont.
   1108         
   1109         * css/CSSFontFaceSrcValue.cpp: Added.
   1110         (WebCore::CSSFontFaceSrcValue::isSupportedFormat):
   1111         (WebCore::CSSFontFaceSrcValue::cssText):
   1112         * css/CSSFontFaceSrcValue.h: Added.
   1113         (WebCore::CSSFontFaceSrcValue::m_isLocal):
   1114         (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue):
   1115         (WebCore::CSSFontFaceSrcValue::resource):
   1116         (WebCore::CSSFontFaceSrcValue::format):
   1117         (WebCore::CSSFontFaceSrcValue::isLocal):
   1118         (WebCore::CSSFontFaceSrcValue::setFormat):
   1119         Used in parsing.  Represents the parsed form of the src value that can then be used to build up a CSSFontFace.
   1120 
   1121         * css/CSSFontSelector.cpp: Added.
   1122         (WebCore::CSSFontSelector::CSSFontSelector):
   1123         (WebCore::CSSFontSelector::~CSSFontSelector):
   1124         (WebCore::CSSFontSelector::isEmpty):
   1125         (WebCore::CSSFontSelector::docLoader):
   1126         (WebCore::hashForFont):
   1127         (WebCore::CSSFontSelector::addFontFaceRule):
   1128         (WebCore::CSSFontSelector::fontLoaded):
   1129         (WebCore::CSSFontSelector::getFontData):
   1130         * css/CSSFontSelector.h: Added.
   1131         The CSS font selector is the object that selects the correct font given a specified font family.  It builds up a database of CSSFontFaces that can then be handed
   1132         back.
   1133 
   1134         * css/CSSGrammar.y:
   1135         * css/CSSParser.cpp:
   1136         (WebCore::CSSParser::parseValue):
   1137         (WebCore::CSSParser::parseFontFaceSrc):
   1138         (WebCore::CSSParser::createFontFaceRule):
   1139         * css/CSSParser.h:
   1140         Modify the CSS grammar to now understand @font-face rules.
   1141 
   1142         * css/CSSPropertyNames.in:
   1143         Add the src property.
   1144 
   1145         * css/CSSStyleSelector.cpp:
   1146         (WebCore::CSSStyleSelector::CSSStyleSelector):
   1147         (WebCore::CSSStyleSelector::styleForElement):
   1148         (WebCore::CSSStyleSelector::updateFont):
   1149         (WebCore::CSSRuleSet::addRulesFromSheet):
   1150         (WebCore::CSSStyleSelector::applyProperty):
   1151         (WebCore::CSSStyleSelector::ensureFontSelector):
   1152         * css/CSSStyleSelector.h:
   1153         (WebCore::CSSStyleSelector::fontSelector):
   1154         The style selector now creates a font selector object and feeds it the appropriate information when @font-face rules are encountered.
   1155     
   1156         * dom/Document.cpp:
   1157         (WebCore::Document::recalcStyle):
   1158         Patch the update method now that it takes a font selector argument.
   1159     
   1160         * loader/Cache.cpp:
   1161         (WebCore::createResource):
   1162         (WebCore::Cache::getStatistics):
   1163         * loader/Cache.h:
   1164         Teach the Cache about CachedFonts.
   1165 
   1166         * loader/CachedFont.cpp: Added.
   1167         (WebCore::CachedFont::CachedFont):
   1168         (WebCore::CachedFont::~CachedFont):
   1169         (WebCore::CachedFont::ref):
   1170         (WebCore::CachedFont::data):
   1171         (WebCore::CachedFont::beginLoadIfNeeded):
   1172         (WebCore::CachedFont::ensureCustomFontData):
   1173         (WebCore::CachedFont::platformDataFromCustomData):
   1174         (WebCore::CachedFont::allReferencesRemoved):
   1175         (WebCore::CachedFont::checkNotify):
   1176         (WebCore::CachedFont::error):
   1177         * loader/CachedFont.h: Added.
   1178         (WebCore::CachedFont::schedule):
   1179         The implementation of CachedFont.  This represents the downloaded resource and has all the raw font data.
   1180 
   1181         * loader/CachedResource.h:
   1182         (WebCore::CachedResource::):
   1183         * loader/CachedResourceClient.h:
   1184         (WebCore::CachedResourceClient::fontLoaded):
   1185         Add a new fontLoaded method for clients of cached resources to track when fonts finish downloading.
   1186     
   1187         * loader/DocLoader.cpp:
   1188         (WebCore::DocLoader::requestFont):
   1189         * loader/DocLoader.h:
   1190          Add the ability to request a font.
   1191 
   1192         * platform/Font.cpp:
   1193         (WebCore::Font::operator==):
   1194         (WebCore::Font::update):
   1195         (WebCore::Font::drawText):
   1196         * platform/Font.h:
   1197         * platform/FontCache.cpp:
   1198         (WebCore::FontCache::getFontData):
   1199         * platform/FontCache.h:
   1200         * platform/FontData.cpp:
   1201         (WebCore::FontData::FontData):
   1202         * platform/FontData.h:
   1203         (WebCore::FontData::isCustomFont):
   1204         (WebCore::FontData::isLoading):
   1205         * platform/FontFallbackList.cpp:
   1206         (WebCore::FontFallbackList::FontFallbackList):
   1207         (WebCore::FontFallbackList::invalidate):
   1208         (WebCore::FontFallbackList::fontDataAt):
   1209         * platform/FontFallbackList.h:
   1210         (WebCore::FontFallbackList::loadingCustomFonts):
   1211         (WebCore::FontFallbackList::fontSelector):
   1212         * platform/FontSelector.h: Added.
   1213         (WebCore::FontSelector::~FontSelector):
   1214         * platform/GlyphPageTreeNode.cpp:
   1215         (WebCore::GlyphPageTreeNode::getRoot):
   1216         (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData):
   1217         (WebCore::GlyphPageTreeNode::~GlyphPageTreeNode):
   1218         (WebCore::GlyphPageTreeNode::initializePage):
   1219         (WebCore::GlyphPageTreeNode::getChild):
   1220         (WebCore::GlyphPageTreeNode::pruneCustomFontData):
   1221         * platform/GlyphPageTreeNode.h:
   1222         (WebCore::GlyphPageTreeNode::GlyphPageTreeNode):
   1223         (WebCore::GlyphPageTreeNode::page):
   1224         * platform/PopupMenuClient.h:
   1225         * platform/mac/FontCacheMac.mm:
   1226         (WebCore::FontCache::getFontDataForCharacters):
   1227         (WebCore::FontCache::getLastResortFallbackFont):
   1228         (WebCore::FontCache::fontExists):
   1229         (WebCore::FontCache::createFontPlatformData):
   1230         * platform/mac/FontCustomPlatformData.cpp: Added.
   1231         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
   1232         (WebCore::FontCustomPlatformData::fontPlatformData):
   1233         (WebCore::createFontCustomPlatformData):
   1234         * platform/mac/FontCustomPlatformData.h: Added.
   1235         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
   1236         * platform/mac/FontDataMac.mm:
   1237         (WebCore::initFontData):
   1238         (WebCore::FontData::platformInit):
   1239         (WebCore::FontData::smallCapsFontData):
   1240         (WebCore::FontData::platformWidthForGlyph):
   1241         (WebCore::FontData::checkShapesArabic):
   1242         * platform/mac/FontMac.mm:
   1243         (WebCore::initializeATSUStyle):
   1244         (WebCore::Font::drawGlyphs):
   1245         * platform/mac/FontPlatformData.h:
   1246         (WebCore::FontPlatformData::FontPlatformData):
   1247         (WebCore::FontPlatformData::hash):
   1248         (WebCore::FontPlatformData::operator==):
   1249         * platform/mac/FontPlatformDataMac.mm: Added.
   1250         (WebCore::FontPlatformData::FontPlatformData):
   1251         (WebCore::~FontPlatformData):
   1252         (WebCore::FontPlatformData::setFont):
   1253         * platform/mac/WebCoreSystemInterface.h:
   1254         * platform/mac/WebCoreSystemInterface.mm:
   1255         * platform/win/FontCacheWin.cpp:
   1256         (WebCore::FontCache::getLastResortFallbackFont):
   1257         (WebCore::FontCache::fontExists):
   1258         * platform/win/FontCustomPlatformData.cpp: Added.
   1259         (WebCore::FontCustomPlatformData::~FontCustomPlatformData):
   1260         (WebCore::FontCustomPlatformData::fontPlatformData):
   1261         (WebCore::getData):
   1262         (WebCore::releaseData):
   1263         (WebCore::getBytesWithOffset):
   1264         (WebCore::createFontCustomPlatformData):
   1265         * platform/win/FontCustomPlatformData.h: Added.
   1266         (WebCore::FontCustomPlatformData::FontCustomPlatformData):
   1267         * platform/win/FontDataWin.cpp:
   1268         (WebCore::FontData::platformInit):
   1269         (WebCore::FontData::platformDestroy):
   1270         (WebCore::FontData::smallCapsFontData):
   1271         (WebCore::FontData::containsCharacters):
   1272         (WebCore::FontData::determinePitch):
   1273         * platform/win/FontPlatformData.h:
   1274         (WebCore::FontPlatformData::FontPlatformData):
   1275         (WebCore::FontPlatformData::hash):
   1276         (WebCore::FontPlatformData::operator==):
   1277         * platform/win/FontPlatformDataWin.cpp:
   1278         (WebCore::FontPlatformData::FontPlatformData):
   1279         * platform/win/PopupMenuWin.cpp:
   1280         (WebCore::PopupMenu::paint):
   1281         Changes to platform to support rendering of custom fonts.  Too large to go into, but for ports, the relevant object to implement is
   1282         FontCustomPlatformData (to get the data loaded into your native font format), and then you have to patch your other font objects to know
   1283         how to use the font.
   1284 
   1285         * rendering/RenderListBox.cpp:
   1286         (WebCore::RenderListBox::updateFromElement):
   1287         (WebCore::RenderListBox::paintItemForeground):
   1288         * rendering/RenderMenuList.cpp:
   1289         (WebCore::RenderMenuList::fontSelector):
   1290         * rendering/RenderMenuList.h:
   1291         * rendering/RenderTextControl.cpp:
   1292         (WebCore::RenderTextControl::fontSelector):
   1293         * rendering/RenderTextControl.h:
   1294         * rendering/RenderThemeMac.mm:
   1295         (WebCore::RenderThemeMac::setFontFromControlSize):
   1296         * rendering/RenderThemeSafari.cpp:
   1297         (WebCore::RenderThemeSafari::setFontFromControlSize):
   1298         Patches for update now taking a font selector argument.
   1299     
   1300 2007-10-03  Rob Buis  <buis (a] kde.org>
   1301 
   1302         Reviewed by Eric.
   1303 
   1304         Remove unneeded code and other cleanups.
   1305 
   1306         * ksvg2/svg/SVGScriptElement.cpp:
   1307         (WebCore::SVGScriptElement::parseMappedAttribute):
   1308         * ksvg2/svg/SVGScriptElement.h:
   1309 
   1310 2007-10-03  Rob Buis  <buis (a] kde.org>
   1311 
   1312         Reviewed by Maciej.
   1313 
   1314         http://bugs.webkit.org/show_bug.cgi?id=15260
   1315         Any styles defined after <element> {<property>:%} style are ignored by Safari
   1316     
   1317         Add dummy rule to skip constructions like width: %.
   1318 
   1319         * css/CSSGrammar.y:
   1320 
   1321 2007-10-03  Mark Rowe  <mrowe (a] apple.com>
   1322 
   1323         Reviewed by Lars.
   1324 
   1325         Get Gtk+ port building on the feature branch.
   1326 
   1327         * WebCore.pro:
   1328         * ksvg2/svg/SVGSVGElement.cpp:
   1329         * platform/graphics/svg/cairo/RenderPathCairo.cpp:
   1330         (WebCore::RenderPath::strokeContains):
   1331         * platform/graphics/svg/cairo/SVGPaintServerCairo.cpp:
   1332         (WebCore::SVGPaintServer::draw):
   1333         (WebCore::SVGPaintServer::renderPath):
   1334         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp:
   1335         (WebCore::SVGPaintServerSolid::setup):
   1336         * platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp:
   1337         (WebCore::SVGResourceMasker::applyMask):
   1338         * rendering/SVGCharacterLayoutInfo.cpp:
   1339         * rendering/SVGInlineTextBox.cpp:
   1340         * rendering/SVGRootInlineBox.cpp:
   1341 
   1342 2007-10-02  Alexey Proskuryakov  <ap (a] webkit.org>
   1343 
   1344         Reviewed by Maciej.
   1345 
   1346         http://bugs.webkit.org/show_bug.cgi?id=15102
   1347         XMLHttpRequests should dispatch a readystatechange event.
   1348 
   1349         Test: http/tests/xmlhttprequest/readystatechange.html
   1350 
   1351         * xml/XMLHttpRequest.cpp:
   1352         (WebCore::XMLHttpRequest::callReadyStateChangeListener): Added readystatechange
   1353         event support. Fixed the function to dispatch the same event to all listeners
   1354         instead of creating a new copy for each one. Changed bubbling/cancelability of
   1355         load and readystatechange events to match Firefox.
   1356 
   1357 2007-10-02  Eric Seidel  <eric (a] webkit.org>
   1358 
   1359         Reviewed by Oliver Hunt.
   1360 
   1361         http://bugs.webkit.org/show_bug.cgi?id=13828
   1362         Fixes svg/custom/rootmost-svg-xy-attrs.xhtml
   1363 
   1364         * WebCore.xcodeproj/project.pbxproj: fix warning about SVGDOM.h
   1365         * ksvg2/svg/SVGSVGElement.cpp:
   1366         (WebCore::SVGSVGElement::viewport): use new isOutermostSVG()
   1367         (WebCore::SVGSVGElement::getCTM): use isOutermostSVG()
   1368         (WebCore::SVGSVGElement::getScreenCTM): use isOutermostSVG()
   1369         (WebCore::SVGSVGElement::createRenderer): use isOutermostSVG()
   1370         (WebCore::SVGSVGElement::isOutermostSVG):
   1371         * ksvg2/svg/SVGSVGElement.h: add isOutermostSVG
   1372         * rendering/RenderSVGRoot.cpp:
   1373         (WebCore::RenderSVGRoot::calcViewport): ignore x/y
   1374 
   1375 2007-10-02  Maciej Stachowiak  <mjs (a] apple.com>
   1376 
   1377         Reviewed by Mitz.
   1378         
   1379         - Avoid uselessly serializing CSS property values on replacement for 10% CK DOM speedup
   1380         http://bugs.webkit.org/show_bug.cgi?id=15340
   1381 
   1382         * css/CSSMutableStyleDeclaration.cpp:
   1383         (WebCore::CSSMutableStyleDeclaration::removeProperty): Don't generate return value unless needed.
   1384         (WebCore::CSSMutableStyleDeclaration::setProperty): Use the no-return version appropriately.
   1385         * css/CSSMutableStyleDeclaration.h:
   1386         (WebCore::CSSMutableStyleDeclaration::removeProperty): New version with no return value.
   1387 
   1388 2007-10-02  Maciej Stachowiak  <mjs (a] apple.com>
   1389 
   1390         Reviewed by Oliver.
   1391 
   1392         - Use Vector<UChar> instead of DeprecatedString for innerHTML, for 35% speedup on CK DOM test
   1393         http://bugs.webkit.org/show_bug.cgi?id=15339
   1394 
   1395         Rewrote both versions of createMarkup to build based on
   1396         Vector<UChar> instead of String. Also other miscellaneous
   1397         speedups (mainly content strings are now encoded in a way that
   1398         doesn't take a function call per character, and switch is avoided).
   1399         
   1400         This also causes a functional change - we no longer escape '>' since this was unnecessary and it's faster
   1401         to avoid testing for it. See updated test results.
   1402         
   1403         * editing/markup.cpp:
   1404         (WebCore::appendString):
   1405         (WebCore::appendAttributeValue):
   1406         (WebCore::escapeContentText):
   1407         (WebCore::appendEscapedContent):
   1408         (WebCore::appendDeprecatedString):
   1409         (WebCore::appendQuotedURLAttributeValue):
   1410         (WebCore::stringValueForRange):
   1411         (WebCore::ucharRange):
   1412         (WebCore::appendUCharRange):
   1413         (WebCore::appendNamespace):
   1414         (WebCore::appendStartMarkup):
   1415         (WebCore::getStartMarkup):
   1416         (WebCore::appendEndMarkup):
   1417         (WebCore::getEndMarkup):
   1418         (WebCore::appendMarkup):
   1419         (WebCore::joinMarkups):
   1420         (WebCore::createMarkup):
   1421         * editing/markup.h:
   1422         * page/mac/WebCoreFrameBridge.mm:
   1423         (-[WebCoreFrameBridge markupStringFromNode:nodes:]):
   1424         (-[WebCoreFrameBridge markupStringFromRange:nodes:]):
   1425 
   1426 2007-10-02  Maciej Stachowiak  <mjs (a] apple.com>
   1427 
   1428         Reviewed by Eric.
   1429         
   1430         - fixed "innerHTML updates layout every time (very bad if adding to it in a loop)"
   1431         http://bugs.webkit.org/show_bug.cgi?id=15326
   1432         (65% speedup on Celtic Kane JS 2007 DOM test)
   1433 
   1434         * editing/markup.cpp:
   1435         (WebCore::createMarkup): The Node version of this function currently never uses
   1436         the render tree, so don't bother to update layout. This is the version used for
   1437         innerHTML.
   1438 
   1439 2007-10-02  Nicholas Shanks  <webkit (a] nickshanks.com>
   1440 
   1441         Reviewed by eseidel & hyatt.
   1442 
   1443         Add support for CSS3 values 'start' and 'end' to text-align property.
   1444 
   1445         * css/cssparser.cpp:
   1446         (WebCore::CSSParser::parseValue): allow start and end values
   1447         * css/cssstyleselector.cpp:
   1448         (WebCore::CSSStyleSelector::applyProperty): handle start and end values
   1449 
   1450 2007-10-01  Oliver Hunt  <oliver (a] apple.com>
   1451 
   1452         Reviewed by Mark.
   1453 
   1454         Enable Experimental SVG features by default when building from Xcode
   1455 
   1456         * Configurations/WebCore.xcconfig:
   1457 
   1458 2007-10-01  Eric Seidel  <eric (a] webkit.org>
   1459 
   1460         Reviewed by Oliver Hunt.
   1461 
   1462         This only affects Debug builds, and the ability to save SVGs as WebArchives
   1463         neither are testable via DumpRenderTree.
   1464 
   1465         * Configurations/WebCore.xcconfig: change where Xcode looks for WebCore.exp
   1466         * DerivedSources.make: adds SVG symbols to WebCore.exp when necessary
   1467         * WebCore.SVG.exp: Added.
   1468         * WebCore.exp: moved to WebCore.base.exp
   1469         * WebCore.xcodeproj/project.pbxproj: updated to reflect moved files
   1470         * bindings/objc/DOMSVGExecption.h: moved to DOMSVGException.h
   1471 
   1472 2007-10-01  Eric Seidel  <eric (a] webkit.org>
   1473 
   1474         Reviewed by olliej.
   1475 
   1476         Make feature-branch build again with ENABLE_SVG_EXPERIMENTAL_FEATURES
   1477         Needed a double -> float change to make the new filter types build.
   1478 
   1479         Build fix, no test cases.
   1480 
   1481         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
   1482         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
   1483         * ksvg2/svg/SVGFECompositeElement.cpp:
   1484         * ksvg2/svg/SVGFECompositeElement.h:
   1485         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
   1486         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
   1487         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
   1488         * ksvg2/svg/SVGFEDisplacementMapElement.h:
   1489         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
   1490         * ksvg2/svg/SVGFEGaussianBlurElement.h:
   1491         * ksvg2/svg/SVGFELightElement.cpp:
   1492         * ksvg2/svg/SVGFELightElement.h:
   1493         * ksvg2/svg/SVGFEOffsetElement.cpp:
   1494         * ksvg2/svg/SVGFEOffsetElement.h:
   1495         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
   1496         * ksvg2/svg/SVGFESpecularLightingElement.h:
   1497         * ksvg2/svg/SVGFETurbulenceElement.cpp:
   1498         * ksvg2/svg/SVGFETurbulenceElement.h:
   1499 
   1500 2007-09-30  Julien  <julien.chaffraix (a] gmail.com>
   1501 
   1502         Reviewed by aroben & eseidel.
   1503 
   1504         fix http://bugs.webkit.org/show_bug.cgi?id=14898
   1505 
   1506         getAllResponseHeaders() separates each header with a CR LF according to the specification
   1507 
   1508         Test: http/tests/xmlhttprequest/xmlhttprequest-crlf-getAllResponseHeader.html
   1509 
   1510         * xml/XMLHttpRequest.cpp:
   1511         (WebCore::XMLHttpRequest::getAllResponseHeaders):
   1512 
   1513 2007-09-28  Eric Seidel  <eric (a] webkit.org>
   1514 
   1515         Reviewed by Sam Wenig.
   1516 
   1517         ASSERT when dragging <svg:image> with non-null prefix
   1518         http://bugs.webkit.org/show_bug.cgi?id=15308
   1519 
   1520         * bindings/objc/DOM.mm:
   1521         (WebCore::lookupElementClass): added
   1522         (WebCore::elementClass): use new lookupElementClass function
   1523 
   1524 2007-09-25  Eric Seidel  <eric (a] webkit.org>
   1525 
   1526         Reviewed by Mark Rowe.
   1527 
   1528         I managed to break the SVG build when fixing the --no-svg build for
   1529         http://bugs.webkit.org/show_bug.cgi?id=15281
   1530         This adds the appropriate DOMSVG headers to the copy headers phase
   1531         (in fixing the no-svg build I mistakenly re-marked them project-only)
   1532 
   1533         * WebCore.xcodeproj/project.pbxproj:
   1534 
   1535 2007-09-25  Eric Seidel  <eric (a] webkit.org>
   1536 
   1537         Reviewed by Rob Buis.
   1538 
   1539         Already tested by SVG/W3C-SVG-1.1/linking-a-07-t.svg
   1540 
   1541         * ksvg2/svg/SVGAElement.cpp:
   1542         (WebCore::SVGAElement::defaultEventHandler): properly pass along target values
   1543 
   1544 2007-09-22  Oliver Hunt  <oliver (a] apple.com>
   1545 
   1546         Reviewed by NOBODY (Build fix).
   1547 
   1548         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   1549         (WebCore::SVGPaintServerGradient::teardown):
   1550         (WebCore::SVGPaintServerGradient::renderPath):
   1551         * rendering/SVGRootInlineBox.cpp:
   1552         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
   1553 
   1554 2007-09-09  Nikolas Zimmermann  <zimmermann (a] kde.org>
   1555 
   1556         Reviewed by Oliver.
   1557 
   1558         Rework <pattern> support to take overflow & viewBox into account.
   1559         Also fix all possible combinations of patternUnits/patternContentUnits, tested by several batik testcases.
   1560         (Status: <mask>, <pattern>, <linearGradient>, <radialGradient>, <filter> regions work perfectly. <clipPath> is sill todo)
   1561 
   1562         While I'm at it, add a very helpful debugging tool "dumpCGOutputImage" and rename "dumpOutputImage" to "dumpCIOutputImage".
   1563         Also fix possible null image buffer problems. (ie. large alloc)
   1564 
   1565         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12221 (Webkit ToT fails to render this pattern example)
   1566 
   1567         * ksvg2/svg/PatternAttributes.h:
   1568         (WebCore::PatternAttributes::PatternAttributes):
   1569         (WebCore::PatternAttributes::x):
   1570         (WebCore::PatternAttributes::y):
   1571         (WebCore::PatternAttributes::width):
   1572         (WebCore::PatternAttributes::height):
   1573         (WebCore::PatternAttributes::setX):
   1574         (WebCore::PatternAttributes::setY):
   1575         (WebCore::PatternAttributes::setWidth):
   1576         (WebCore::PatternAttributes::setHeight):
   1577         * ksvg2/svg/SVGPatternElement.cpp:
   1578         (WebCore::SVGPatternElement::buildPattern):
   1579         (WebCore::SVGPatternElement::collectPatternProperties):
   1580         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   1581         (WebCore::SVGPaintServerGradient::setup):
   1582         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
   1583         (WebCore::patternCallback):
   1584         (WebCore::SVGPaintServerPattern::setup):
   1585         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
   1586         (WebCore::dumpCIOutputImage):
   1587         (WebCore::dumpCGOutputImage):
   1588 
   1589 2007-09-05  Nikolas Zimmermann  <zimmermann (a] kde.org>
   1590 
   1591         Reviewed by Oliver.
   1592 
   1593         Fix <mask> in userSpaceOnUse coordinates. Verified by new testcase taken from Batik.
   1594 
   1595         * ksvg2/svg/SVGMaskElement.cpp:
   1596         (WebCore::SVGMaskElement::drawMaskerContent):
   1597 
   1598 2007-09-03  Nikolas Zimmermann  <zimmermann (a] kde.org>
   1599 
   1600         Reviewed by Oliver.
   1601 
   1602         Rewrite text painting code path, to be based on "text chunks" instead of using the InlineBox* hierarchy.
   1603         This allows us to reuse paint servers as long as possible - and to actually paint in the way didacted by the spec.
   1604 
   1605         This also implements advanced SVG text decorations (ie. stroked/filled decos with gradient/pattern).
   1606         Fixes: http://bugs.webkit.org/show_bug.cgi?id=7200 (Gradient appears and disappears in SVG when text is off screen)
   1607 
   1608         Fixes paint server usage on text paths. (ie. styled text paths, with gradients/filters).
   1609 
   1610         * platform/graphics/svg/SVGPaintServer.h:
   1611         * platform/graphics/svg/SVGPaintServerGradient.h:
   1612         * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
   1613         (WebCore::SVGPaintServer::draw):
   1614         (WebCore::SVGPaintServer::renderPath):
   1615         (WebCore::SVGPaintServer::strokePath):
   1616         (WebCore::SVGPaintServer::clipToStrokePath):
   1617         (WebCore::SVGPaintServer::fillPath):
   1618         (WebCore::SVGPaintServer::clipToFillPath):
   1619         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   1620         (WebCore::findTextRootObject):
   1621         (WebCore::SVGPaintServerGradient::teardown):
   1622         (WebCore::SVGPaintServerGradient::renderPath):
   1623         (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
   1624         (WebCore::SVGPaintServerGradient::setup):
   1625         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
   1626         (WebCore::SVGPaintServerSolid::setup):
   1627         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
   1628         (WebCore::SVGPaintServer::draw):
   1629         (WebCore::SVGPaintServer::renderPath):
   1630         * rendering/RenderSVGInlineText.cpp:
   1631         * rendering/RenderSVGTSpan.cpp:
   1632         * rendering/RenderSVGText.cpp:
   1633         * rendering/RenderSVGTextPath.cpp:
   1634         * rendering/SVGCharacterLayoutInfo.h:
   1635         (WebCore::SVGTextChunkWalkerBase::~SVGTextChunkWalkerBase):
   1636         (WebCore::SVGTextChunkWalker::SVGTextChunkWalker):
   1637         (WebCore::SVGTextChunkWalker::operator()):
   1638         (WebCore::SVGTextChunkWalker::start):
   1639         (WebCore::SVGTextChunkWalker::end):
   1640         (WebCore::SVGTextChunkWalker::setupFill):
   1641         (WebCore::SVGTextChunkWalker::setupStroke):
   1642         * rendering/SVGInlineFlowBox.h:
   1643         * rendering/SVGInlineTextBox.cpp:
   1644         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::SVGInlineTextBoxClosestCharacterToPositionWalker):
   1645         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback):
   1646         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::character):
   1647         (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::offset):
   1648         (WebCore::SVGInlineTextBoxSelectionRectWalker::SVGInlineTextBoxSelectionRectWalker):
   1649         (WebCore::SVGInlineTextBoxSelectionRectWalker::chunkPortionCallback):
   1650         (WebCore::SVGInlineTextBoxSelectionRectWalker::selectionRect):
   1651         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   1652         (WebCore::SVGInlineTextBox::selectionRect):
   1653         (WebCore::SVGInlineTextBox::paintCharacters):
   1654         (WebCore::SVGInlineTextBox::paintSelection):
   1655         (WebCore::pathForDecoration):
   1656         (WebCore::SVGInlineTextBox::paintDecoration):
   1657         * rendering/SVGInlineTextBox.h:
   1658         * rendering/SVGRenderSupport.cpp:
   1659         (WebCore::prepareToRenderSVGContent):
   1660         * rendering/SVGRenderSupport.h:
   1661         * rendering/SVGRootInlineBox.cpp:
   1662         (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
   1663         (WebCore::SVGRootInlineBoxPaintWalker::~SVGRootInlineBoxPaintWalker):
   1664         (WebCore::SVGRootInlineBoxPaintWalker::teardownFillPaintServer):
   1665         (WebCore::SVGRootInlineBoxPaintWalker::teardownStrokePaintServer):
   1666         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
   1667         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
   1668         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupFillCallback):
   1669         (WebCore::SVGRootInlineBoxPaintWalker::chunkSetupStrokeCallback):
   1670         (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
   1671         (WebCore::SVGRootInlineBox::paint):
   1672         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   1673         (WebCore::addPaintServerToTextDecorationInfo):
   1674         (WebCore::SVGRootInlineBox::retrievePaintServersForTextDecoration):
   1675         (WebCore::SVGRootInlineBox::walkTextChunks):
   1676         * rendering/SVGRootInlineBox.h:
   1677 
   1678 2007-08-27  Nikolas Zimmermann  <zimmermann (a] kde.org>
   1679 
   1680         Reviewed by Mitz.
   1681 
   1682         Expose unitsPerEm() in Font classes.
   1683         This is needed to implement SVG's advanced text decorations. We won't draw lines for text-decorations
   1684         but fillable & strokable rectangles with a certain height, computed through unitsPerEm & font size.
   1685 
   1686         * platform/Font.cpp:
   1687         (WebCore::Font::unitsPerEm):
   1688         * platform/Font.h:
   1689         * platform/FontData.h:
   1690         (WebCore::FontData::unitsPerEm):
   1691         * platform/gdk/FontDataGdk.cpp:
   1692         (WebCore::FontData::platformInit):
   1693         * platform/mac/FontDataMac.mm:
   1694         (WebCore::FontData::platformInit):
   1695         * platform/qt/FontDataQt.cpp:
   1696         (WebCore::FontData::platformInit):
   1697         * platform/win/FontDataWin.cpp:
   1698         (WebCore::FontData::platformInit):
   1699         * platform/wx/FontDataWx.cpp:
   1700         (WebCore::FontData::platformInit):
   1701 
   1702 2007-08-27  Oliver Hunt  <oliver (a] apple.com>
   1703 
   1704         Reviewed by NOBODY (Build fix).
   1705 
   1706         Initialise iterators to appease gcc
   1707 
   1708         * rendering/SVGInlineTextBox.cpp:
   1709         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   1710 
   1711 2007-08-22  Rob Buis  <buis (a] kde.org>
   1712 
   1713         Reviewed by Sam.
   1714 
   1715         http://bugs.webkit.org/show_bug.cgi?id=12059
   1716         SVG colors have two separate parsing paths (one CSS and one SVGColor::setRGBColor)
   1717 
   1718         Reuse the css parser as much as possible in setRGBColor.
   1719 
   1720         * css/cssparser.cpp:
   1721         (WebCore::CSSParser::parseColor):
   1722         * css/cssparser.h:
   1723         * editing/ApplyStyleCommand.cpp:
   1724         (WebCore::StyleChange::checkForLegacyHTMLStyleChange):
   1725         * html/CanvasGradient.cpp:
   1726         (WebCore::CanvasGradient::addColorStop):
   1727         * html/CanvasRenderingContext2D.cpp:
   1728         (WebCore::CanvasRenderingContext2D::setShadow):
   1729         (WebCore::CanvasRenderingContext2D::applyShadow):
   1730         * html/CanvasStyle.cpp:
   1731         (WebCore::CanvasStyle::applyStrokeColor):
   1732         (WebCore::CanvasStyle::applyFillColor):
   1733         * ksvg2/svg/SVGColor.cpp:
   1734         (WebCore::SVGColor::colorFromRGBColorString):
   1735 
   1736 2007-08-21  Nikolas Zimmermann  <zimmermann (a] kde.org>
   1737 
   1738         Reviewed by Oliver.
   1739 
   1740         Large SVG filter rework. Bring it back in a useable state.
   1741 
   1742         Fixes: http://bugs.webkit.org/show_bug.cgi?id=5527 (Filters need subregion support)
   1743         Fixes: http://bugs.webkit.org/show_bug.cgi?id=5579 (WebKit+SVG renders full-filters-example incorrectly)
   1744         Fixes: http://bugs.webkit.org/show_bug.cgi?id=5976 (filterUnits="userSpaceOnUse" is broken (breaking feTile test case))
   1745         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12064 (Need function for manual style-resolution for things like gradient stops)
   1746 
   1747         filters-blend-01-b.svg & filters-example-01-b.svg & filters-displace-01-b.svg & filters-diffuse-01-f.svg are fixed now.
   1748 
   1749         In detail:
   1750         - flood-color & flood-opacity have been incorrectly resolved on the <feBlend> parent element!
   1751         - sizing of filter region was truncated in some cases, as the bbox was used to resolve the needed filter region instead of the filter rect
   1752         - add subregion support to all filter primitives (primitiveUnits & filterUnits handled in all cases)
   1753         - WKDisplacmentMap.cikernel incorrectly flipped the y-axis.
   1754         - Correctly specify default values for all filter primitives in ksvg2/svg!
   1755         - Initialize all variables of the SVGFE* classes in platform/graphics/svg/filters.
   1756         - Fix 'flood-color' initial value (was set to the _stop_ color initial value)
   1757           -> both initial values were pointing to 'black' though, so it was no visible problem.
   1758         - Parse 'lighting-color' css property, no more hacking in SVGFEDiffuseLighting.
   1759           -> Correct it's initial from black to white value fixes SVG lighting filters!
   1760         - Add diffuseConstant support to feDiffuseLighting filter.
   1761         - Centralize manual style resolution (needed for stop-color, flood-color & flood-opacity, lighting-color)
   1762 
   1763         * ksvg2/css/SVGCSSParser.cpp:
   1764         * ksvg2/css/SVGCSSStyleSelector.cpp:
   1765         (WebCore::CSSStyleSelector::applySVGProperty):
   1766         * ksvg2/css/SVGRenderStyle.h:
   1767         * ksvg2/css/SVGRenderStyleDefs.cpp:
   1768         (StyleMiscData::StyleMiscData):
   1769         (StyleMiscData::operator==):
   1770         * ksvg2/css/SVGRenderStyleDefs.h:
   1771         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
   1772         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
   1773         * ksvg2/svg/SVGFEBlendElement.cpp:
   1774         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
   1775         (WebCore::SVGFEBlendElement::filterEffect):
   1776         * ksvg2/svg/SVGFEBlendElement.h:
   1777         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
   1778         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
   1779         (WebCore::SVGFEColorMatrixElement::filterEffect):
   1780         * ksvg2/svg/SVGFEColorMatrixElement.h:
   1781         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
   1782         (WebCore::SVGFEComponentTransferElement::filterEffect):
   1783         * ksvg2/svg/SVGFEComponentTransferElement.h:
   1784         * ksvg2/svg/SVGFECompositeElement.cpp:
   1785         (WebCore::SVGFECompositeElement::SVGFECompositeElement):
   1786         (WebCore::SVGFECompositeElement::parseMappedAttribute):
   1787         (WebCore::SVGFECompositeElement::filterEffect):
   1788         * ksvg2/svg/SVGFECompositeElement.h:
   1789         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
   1790         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
   1791         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
   1792         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
   1793         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
   1794         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
   1795         (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
   1796         (WebCore::SVGFEDisplacementMapElement::filterEffect):
   1797         * ksvg2/svg/SVGFEDisplacementMapElement.h:
   1798         * ksvg2/svg/SVGFEDistantLightElement.cpp:
   1799         (WebCore::SVGFEDistantLightElement::SVGFEDistantLightElement):
   1800         * ksvg2/svg/SVGFEDistantLightElement.h:
   1801         * ksvg2/svg/SVGFEFloodElement.cpp:
   1802         (WebCore::SVGFEFloodElement::filterEffect):
   1803         * ksvg2/svg/SVGFEFloodElement.h:
   1804         * ksvg2/svg/SVGFEFuncAElement.cpp:
   1805         * ksvg2/svg/SVGFEFuncAElement.h:
   1806         * ksvg2/svg/SVGFEFuncBElement.cpp:
   1807         * ksvg2/svg/SVGFEFuncBElement.h:
   1808         * ksvg2/svg/SVGFEFuncGElement.cpp:
   1809         (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
   1810         * ksvg2/svg/SVGFEFuncGElement.h:
   1811         * ksvg2/svg/SVGFEFuncRElement.cpp:
   1812         * ksvg2/svg/SVGFEFuncRElement.h:
   1813         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
   1814         (WebCore::SVGFEGaussianBlurElement::filterEffect):
   1815         * ksvg2/svg/SVGFEGaussianBlurElement.h:
   1816         * ksvg2/svg/SVGFEImageElement.cpp:
   1817         (WebCore::SVGFEImageElement::notifyFinished):
   1818         (WebCore::SVGFEImageElement::filterEffect):
   1819         * ksvg2/svg/SVGFEImageElement.h:
   1820         * ksvg2/svg/SVGFELightElement.cpp:
   1821         (WebCore::SVGFELightElement::SVGFELightElement):
   1822         * ksvg2/svg/SVGFELightElement.h:
   1823         * ksvg2/svg/SVGFEMergeElement.cpp:
   1824         (WebCore::SVGFEMergeElement::filterEffect):
   1825         * ksvg2/svg/SVGFEMergeElement.h:
   1826         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
   1827         * ksvg2/svg/SVGFEMergeNodeElement.h:
   1828         * ksvg2/svg/SVGFEOffsetElement.cpp:
   1829         (WebCore::SVGFEOffsetElement::filterEffect):
   1830         * ksvg2/svg/SVGFEOffsetElement.h:
   1831         * ksvg2/svg/SVGFEPointLightElement.h:
   1832         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
   1833         (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
   1834         (WebCore::SVGFESpecularLightingElement::parseMappedAttribute):
   1835         (WebCore::SVGFESpecularLightingElement::filterEffect):
   1836         (WebCore::SVGFESpecularLightingElement::updateLights):
   1837         * ksvg2/svg/SVGFESpecularLightingElement.h:
   1838         * ksvg2/svg/SVGFESpotLightElement.cpp:
   1839         (WebCore::SVGFESpotLightElement::lightSource):
   1840         * ksvg2/svg/SVGFESpotLightElement.h:
   1841         * ksvg2/svg/SVGFETileElement.cpp:
   1842         (WebCore::SVGFETileElement::filterEffect):
   1843         * ksvg2/svg/SVGFETileElement.h:
   1844         * ksvg2/svg/SVGFETurbulenceElement.cpp:
   1845         (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement):
   1846         (WebCore::SVGFETurbulenceElement::filterEffect):
   1847         * ksvg2/svg/SVGFETurbulenceElement.h:
   1848         * ksvg2/svg/SVGFilterElement.cpp:
   1849         (WebCore::SVGFilterElement::canvasResource):
   1850         * ksvg2/svg/SVGFilterElement.h:
   1851         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
   1852         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
   1853         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
   1854         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
   1855         * ksvg2/svg/SVGGradientElement.cpp:
   1856         (WebCore::SVGGradientElement::buildStops):
   1857         * ksvg2/svg/SVGStyledElement.cpp:
   1858         (WebCore::SVGStyledElement::resolveStyle):
   1859         * ksvg2/svg/SVGStyledElement.h:
   1860         * platform/graphics/svg/SVGResourceFilter.cpp:
   1861         (WebCore::SVGResourceFilter::addFilterEffect):
   1862         (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
   1863         * platform/graphics/svg/SVGResourceFilter.h:
   1864         (WebCore::SVGResourceFilter::xBoundingBoxMode):
   1865         (WebCore::SVGResourceFilter::setXBoundingBoxMode):
   1866         (WebCore::SVGResourceFilter::yBoundingBoxMode):
   1867         (WebCore::SVGResourceFilter::setYBoundingBoxMode):
   1868         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
   1869         (WebCore::SVGResourceFilter::SVGResourceFilter):
   1870         (WebCore::SVGResourceFilter::createFilterEffect):
   1871         (WebCore::SVGResourceFilter::prepareFilter):
   1872         (WebCore::dumpOutputImage):
   1873         (WebCore::SVGResourceFilter::applyFilter):
   1874         (WebCore::SVGResourceFilter::getCIFilterStack):
   1875         (WebCore::SVGResourceFilter::imageForName):
   1876         (WebCore::SVGResourceFilter::setImageForName):
   1877         (WebCore::SVGResourceFilter::setOutputImage):
   1878         (WebCore::alphaImageForImage):
   1879         (WebCore::SVGResourceFilter::inputImage):
   1880         * platform/graphics/svg/filters/SVGDistantLightSource.h:
   1881         * platform/graphics/svg/filters/SVGFEBlend.cpp:
   1882         (WebCore::SVGFEBlend::SVGFEBlend):
   1883         * platform/graphics/svg/filters/SVGFEBlend.h:
   1884         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
   1885         (WebCore::SVGFEColorMatrix::SVGFEColorMatrix):
   1886         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
   1887         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
   1888         (WebCore::SVGFEComponentTransfer::SVGFEComponentTransfer):
   1889         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
   1890         (WebCore::SVGComponentTransferFunction::SVGComponentTransferFunction):
   1891         * platform/graphics/svg/filters/SVGFEComposite.cpp:
   1892         (WebCore::SVGFEComposite::SVGFEComposite):
   1893         * platform/graphics/svg/filters/SVGFEComposite.h:
   1894         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
   1895         (WebCore::SVGFEConvolveMatrix::SVGFEConvolveMatrix):
   1896         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
   1897         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
   1898         (WebCore::SVGFEDiffuseLighting::SVGFEDiffuseLighting):
   1899         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
   1900         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
   1901         (WebCore::SVGFEDisplacementMap::SVGFEDisplacementMap):
   1902         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
   1903         * platform/graphics/svg/filters/SVGFEFlood.cpp:
   1904         (WebCore::SVGFEFlood::SVGFEFlood):
   1905         * platform/graphics/svg/filters/SVGFEFlood.h:
   1906         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
   1907         (WebCore::SVGFEGaussianBlur::SVGFEGaussianBlur):
   1908         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
   1909         * platform/graphics/svg/filters/SVGFEImage.cpp:
   1910         (WebCore::SVGFEImage::SVGFEImage):
   1911         * platform/graphics/svg/filters/SVGFEImage.h:
   1912         * platform/graphics/svg/filters/SVGFEMerge.cpp:
   1913         * platform/graphics/svg/filters/SVGFEMerge.h:
   1914         (WebCore::SVGFEMerge::SVGFEMerge):
   1915         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
   1916         (WebCore::SVGFEMorphology::SVGFEMorphology):
   1917         * platform/graphics/svg/filters/SVGFEMorphology.h:
   1918         * platform/graphics/svg/filters/SVGFEOffset.cpp:
   1919         (WebCore::SVGFEOffset::SVGFEOffset):
   1920         * platform/graphics/svg/filters/SVGFEOffset.h:
   1921         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
   1922         (WebCore::SVGFESpecularLighting::SVGFESpecularLighting):
   1923         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
   1924         * platform/graphics/svg/filters/SVGFETile.h:
   1925         (WebCore::SVGFETile::SVGFETile):
   1926         * platform/graphics/svg/filters/SVGFETurbulence.cpp:
   1927         (WebCore::SVGFETurbulence::SVGFETurbulence):
   1928         * platform/graphics/svg/filters/SVGFETurbulence.h:
   1929         * platform/graphics/svg/filters/SVGFilterEffect.cpp:
   1930         (WebCore::SVGFilterEffect::SVGFilterEffect):
   1931         (WebCore::SVGFilterEffect::primitiveBBoxForFilterBBox):
   1932         (WebCore::SVGFilterEffect::filter):
   1933         (WebCore::SVGFilterEffect::setFilter):
   1934         * platform/graphics/svg/filters/SVGFilterEffect.h:
   1935         (WebCore::SVGFilterEffect::xBoundingBoxMode):
   1936         (WebCore::SVGFilterEffect::setXBoundingBoxMode):
   1937         (WebCore::SVGFilterEffect::yBoundingBoxMode):
   1938         (WebCore::SVGFilterEffect::setYBoundingBoxMode):
   1939         (WebCore::SVGFilterEffect::widthBoundingBoxMode):
   1940         (WebCore::SVGFilterEffect::setWidthBoundingBoxMode):
   1941         (WebCore::SVGFilterEffect::heightBoundingBoxMode):
   1942         (WebCore::SVGFilterEffect::setHeightBoundingBoxMode):
   1943         * platform/graphics/svg/filters/SVGLightSource.cpp:
   1944         * platform/graphics/svg/filters/SVGLightSource.h:
   1945         * platform/graphics/svg/filters/SVGPointLightSource.h:
   1946         (WebCore::SVGPointLightSource::SVGPointLightSource):
   1947         * platform/graphics/svg/filters/SVGSpotLightSource.h:
   1948         (WebCore::SVGSpotLightSource::SVGSpotLightSource):
   1949         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
   1950         (WebCore::SVGFEBlend::getCIFilter):
   1951         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
   1952         (WebCore::SVGFEColorMatrix::getCIFilter):
   1953         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
   1954         (WebCore::filterForComponentFunc):
   1955         (WebCore::SVGFEComponentTransfer::getCIFilter):
   1956         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
   1957         (WebCore::SVGFEComposite::getCIFilter):
   1958         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
   1959         (WebCore::SVGFEDiffuseLighting::getCIFilter):
   1960         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
   1961         (WebCore::SVGFEDisplacementMap::getCIFilter):
   1962         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
   1963         (WebCore::SVGFEFlood::getCIFilter):
   1964         * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm:
   1965         (WebCore::SVGFEGaussianBlur::getCIFilter):
   1966         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
   1967         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
   1968         (WebCore::SVGFEImage::getCIFilter):
   1969         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
   1970         (WebCore::SVGFEMerge::getCIFilter):
   1971         * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm:
   1972         (WebCore::SVGFEOffset::getCIFilter):
   1973         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
   1974         (WebCore::SVGFESpecularLighting::getCIFilter):
   1975         * platform/graphics/svg/filters/cg/SVGFETileCg.mm:
   1976         (WebCore::SVGFETile::getCIFilter):
   1977         * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm:
   1978         (WebCore::SVGFilterEffect::getCIFilter):
   1979         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.cikernel:
   1980         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.cikernel:
   1981         * platform/graphics/svg/filters/cg/WKSpotLightFilter.m:
   1982         (-[WKSpotLightFilter outputImage]):
   1983         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
   1984         (WebCore::SVGResourceFilter::createFilterEffect):
   1985 
   1986 2007-08-20  Rob Buis  <buis (a] kde.org>
   1987 
   1988         Reviewed by Nikolas.
   1989 
   1990         http://bugs.webkit.org/show_bug.cgi?id=14924
   1991         rotated rect with pattern draws incorrectly
   1992 
   1993         Use the bounding box before transformation.
   1994 
   1995         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
   1996         (WebCore::SVGPaintServerPattern::setup):
   1997 
   1998 2007-08-19  Rob Buis  <buis (a] kde.org>
   1999 
   2000         Reviewed by Nikolas.
   2001 
   2002         http://bugs.webkit.org/show_bug.cgi?id=14926
   2003         WebKit has 'em' length handling problems related to CSS properties
   2004 
   2005         Parse the properties in inline style attributes non-strict for SVG.
   2006 
   2007         * dom/StyledElement.cpp:
   2008         (WebCore::StyledElement::createInlineStyleDecl):
   2009 
   2010 2007-08-17  Rob Buis  <buis (a] kde.org>
   2011 
   2012         Reviewed by Oliver.
   2013 
   2014         http://bugs.webkit.org/show_bug.cgi?id=14927
   2015         use element in SVG does not render after parent is displayed off and on
   2016 
   2017         Also detach the shadow tree when detaching the <use>.
   2018 
   2019         * ksvg2/svg/SVGUseElement.cpp:
   2020         (WebCore::SVGUseElement::detach):
   2021         * ksvg2/svg/SVGUseElement.h:
   2022 
   2023 2007-08-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2024 
   2025         Reviewed by Rob.
   2026 
   2027         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14153
   2028 
   2029         Final, long-awaited RenderSVGContainer split. Make RenderSVGContainer really a simple
   2030         container without special cases for inner <svg> elements or <marker>. Create a new
   2031         RenderSVGViewportContainer class handling these cases now.
   2032 
   2033         * WebCore.xcodeproj/project.pbxproj:
   2034         * ksvg2/svg/SVGMarkerElement.cpp:
   2035         (WebCore::SVGMarkerElement::createRenderer):
   2036         * ksvg2/svg/SVGSVGElement.cpp:
   2037         (WebCore::SVGSVGElement::createRenderer):
   2038         * ksvg2/svg/SVGSVGElement.h:
   2039         * rendering/RenderSVGContainer.cpp:
   2040         (WebCore::RenderSVGContainer::layout):
   2041         (WebCore::RenderSVGContainer::applyContentTransforms):
   2042         (WebCore::RenderSVGContainer::applyAdditionalTransforms):
   2043         (WebCore::RenderSVGContainer::paint):
   2044         (WebCore::RenderSVGContainer::viewportTransform):
   2045         (WebCore::RenderSVGContainer::relativeBBox):
   2046         (WebCore::RenderSVGContainer::nodeAtPoint):
   2047         * rendering/RenderSVGContainer.h:
   2048         * rendering/RenderSVGRoot.cpp:
   2049         * rendering/RenderSVGViewportContainer.cpp: Added.
   2050         (WebCore::RenderSVGViewportContainer::RenderSVGViewportContainer):
   2051         (WebCore::RenderSVGViewportContainer::~RenderSVGViewportContainer):
   2052         (WebCore::RenderSVGViewportContainer::layout):
   2053         (WebCore::RenderSVGViewportContainer::paint):
   2054         (WebCore::RenderSVGViewportContainer::applyContentTransforms):
   2055         (WebCore::RenderSVGViewportContainer::applyAdditionalTransforms):
   2056         (WebCore::RenderSVGViewportContainer::viewport):
   2057         (WebCore::RenderSVGViewportContainer::calcViewport):
   2058         (WebCore::RenderSVGViewportContainer::viewportTransform):
   2059         (WebCore::RenderSVGViewportContainer::absoluteTransform):
   2060         (WebCore::RenderSVGViewportContainer::nodeAtPoint):
   2061         * rendering/RenderSVGViewportContainer.h: Added.
   2062         (WebCore::RenderSVGViewportContainer::isSVGContainer):
   2063         (WebCore::RenderSVGViewportContainer::renderName):
   2064 
   2065 2007-08-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2066 
   2067         Reviewed by Oliver & Rob.
   2068 
   2069         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12501 (SVG Text fails to respect opacity, fill-opacity and stroke-opacity)
   2070         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14045 (Incorrect support for opacity, fill-opacity and stroke-opacity)
   2071 
   2072         Based on an older patch from Rob, this fixes SVG text opacity as well as group opacity for solid fills & gradients.
   2073         The pattern changes are still missing a testcase (need to wait for Antoine Quint for that).
   2074 
   2075         * platform/graphics/svg/SVGResourceFilter.h:
   2076         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   2077         (WebCore::SVGPaintServerGradient::setup):
   2078         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
   2079         (WebCore::SVGPaintServerPattern::setup):
   2080         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
   2081         (WebCore::colorFromFloatComponents):
   2082         (WebCore::SVGPaintServerSolid::setup):
   2083         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
   2084         (WebCore::SVGResourceFilter::SVGResourceFilter):
   2085         (WebCore::SVGResourceFilter::prepareFilter):
   2086         (WebCore::SVGResourceFilter::applyFilter):
   2087         * rendering/RenderPath.cpp:
   2088         (WebCore::RenderPath::paint):
   2089         * rendering/RenderSVGContainer.cpp:
   2090         (WebCore::RenderSVGContainer::paint):
   2091         (WebCore::RenderSVGContainer::absoluteClippedOverflowRect):
   2092         * rendering/RenderSVGImage.cpp:
   2093         (WebCore::RenderSVGImage::paint):
   2094         (WebCore::RenderSVGImage::absoluteClippedOverflowRect):
   2095         * rendering/RenderSVGRoot.cpp:
   2096         (WebCore::RenderSVGRoot::paint):
   2097         * rendering/RenderSVGText.cpp:
   2098         (WebCore::RenderSVGText::absoluteClippedOverflowRect):
   2099         * rendering/SVGRenderSupport.cpp:
   2100         (WebCore::prepareToRenderSVGContent):
   2101         (WebCore::finishRenderSVGContent):
   2102         * rendering/SVGRenderSupport.h:
   2103         * rendering/SVGRootInlineBox.cpp:
   2104         (WebCore::prepareTextRendering):
   2105         (WebCore::SVGRootInlineBox::paint):
   2106         (WebCore::SVGRootInlineBox::paintChildInlineFlowBox):
   2107 
   2108 2007-08-08  Rob Buis  <buis (a] kde.org>
   2109 
   2110         Reviewed by Nikolas.
   2111 
   2112         http://bugs.webkit.org/show_bug.cgi?id=11909
   2113         Regression: large SVG from Illustrator comes out blank
   2114 
   2115         Fix last issue with the Illustrator file by making relativeBBox
   2116         calculation take into account viewBox.
   2117 
   2118         * rendering/RenderSVGContainer.cpp:
   2119         (WebCore::RenderSVGContainer::relativeBBox):
   2120         * rendering/RenderSVGRoot.cpp:
   2121         (WebCore::RenderSVGRoot::relativeBBox):
   2122 
   2123 2007-08-08  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2124 
   2125         Reviewed by Oliver.
   2126 
   2127         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14896 (SVG InlineText/Flow box sizes don't take rotated glyphs into account)
   2128 
   2129         Introduce new helper function calculateGlyphBoundaries, which takes into account any per-character transformation.
   2130         This fixes box size calculations in svg/W3C-SVG-1.1/text-text-07-t.svg, svg/batik/text/textEffect3.svg (rotated glyphs)
   2131         -> These strings can be properly selected now, just as well as text path elements.
   2132 
   2133         * rendering/SVGInlineTextBox.cpp:
   2134         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries):
   2135         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   2136         (WebCore::SVGInlineTextBox::nodeAtPoint):
   2137         (WebCore::SVGInlineTextBox::selectionRect):
   2138         * rendering/SVGInlineTextBox.h:
   2139         * rendering/SVGRootInlineBox.cpp:
   2140         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   2141 
   2142 2007-08-08  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2143 
   2144         Reviewed by Oliver.
   2145 
   2146         Fixes: http://bugs.webkit.org/show_bug.cgi?id=13909 (SVG text selection doesn't work with RTL text)
   2147 
   2148         Use drawHighlightForText() to draw the selection, instead of my home-brewn solution.
   2149         Affected code in SVGRootInlineBox::paintSelectionForTextBox. Removed not anymore needed
   2150         helper function cummulatedWidthOfSelectionRange.
   2151 
   2152         Dump all contained InlineTextBox(es) in SVGRenderTreeAsText, take into account multiple
   2153         child text boxes in ie. a RenderSVGInlineText objects (which happens for RTL text and
   2154         LTR text cases where newlines were involved - see changed testcase results.)
   2155         This affects a lot of LTR tests which actually had more than one child text box, that
   2156         wasn't taken properly into account before (in terms of selection, not rendering.)
   2157 
   2158         Fix selection for RTL text by taking box start offsets into account in closestCharacterToPosition()
   2159         and by offering RTL text selection special cases in svgCharacterHitsPosition().
   2160 
   2161         Centralized the creation of a TextStyle object for text selection/painting in a new helper function
   2162         svgTextStyleForInlineTextBox. Add new helper functions calculateGlyphWidth/calculateGlyphHeight to
   2163         centralize these calculations -> use these new helpers everywhere to avoid code duplication.
   2164 
   2165         A single fix in bidi.cpp was needed to fix SVG's unicode-bidi/direction handling, to fix text-intro-02-b.svg.
   2166         SVG didacts that the 'direction' attribute is ignored if unicode-bidi is set to 'normal' (default).
   2167         Discussed with Mitz.
   2168 
   2169         * rendering/RenderSVGInlineText.cpp:
   2170         (WebCore::RenderSVGInlineText::positionForCoordinates):
   2171         * rendering/SVGInlineTextBox.cpp:
   2172         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
   2173         (WebCore::SVGInlineTextBox::calculateGlyphHeight):
   2174         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   2175         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
   2176         (WebCore::SVGInlineTextBox::nodeAtPoint):
   2177         (WebCore::SVGInlineTextBox::selectionRect):
   2178         * rendering/SVGInlineTextBox.h:
   2179         * rendering/SVGRenderTreeAsText.cpp:
   2180         (WebCore::writeSVGInlineTextBox):
   2181         (WebCore::writeSVGInlineText):
   2182         * rendering/SVGRootInlineBox.cpp:
   2183         (WebCore::cummulatedWidthOfInlineBoxCharacterRange): Take box start offset into account.
   2184         (WebCore::svgTextStyleForInlineTextBox): New helper function.
   2185         (WebCore::totalAdvanceOfInlineTextBox): Take box start offset into account.
   2186         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): Ditto. (correctly calculate advance values in RTL mode!)
   2187         (WebCore::SVGRootInlineBox::paintSelectionForTextBox): Use GraphicsContext drawHighlightForText() instead of self-made hacks.
   2188         (WebCore::SVGRootInlineBox::paintCharacterRangeForTextBox): Use new helper function svgTextStyleForInlineTextBox.
   2189         * rendering/SVGRootInlineBox.h:
   2190         * rendering/bidi.cpp: Add special case for SVG.
   2191         (WebCore::RenderBlock::layoutInlineChildren):
   2192 
   2193 2007-07-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2194 
   2195         Reviewed by Oliver & Rob.
   2196 
   2197         Enable SVG textPath selection. Actually build chunks for them instead of
   2198         ignoring them - was easier than I thought. Respect per-character transformation
   2199         when calculating the chunk boundaries for the selection rectangles. Also fixes
   2200         selection rect drawing of rotated characters.
   2201 
   2202         Next thing todo is to unify the glyph size calculations, as per-glyph transformations
   2203         are not respected when calculating flow box sizes in SVGRootInlineBox.
   2204  
   2205         * rendering/RenderObject.h:
   2206         (WebCore::RenderObject::isSVGHiddenContainer):
   2207         * rendering/RenderSVGHiddenContainer.h:
   2208         (WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer):
   2209         * rendering/RenderSVGInlineText.cpp:
   2210         (WebCore::isChildOfHiddenContainer):
   2211         (WebCore::RenderSVGInlineText::selectionRect):
   2212         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
   2213         * rendering/SVGCharacterLayoutInfo.h:
   2214         (WebCore::SVGTextChunk::SVGTextChunk):
   2215         (WebCore::SVGTextChunkLayoutInfo::SVGTextChunkLayoutInfo):
   2216         * rendering/SVGInlineTextBox.cpp:
   2217         (WebCore::SVGInlineTextBox::selectionRect):
   2218         * rendering/SVGRootInlineBox.cpp:
   2219         (WebCore::applyTextAnchorToTextChunk):
   2220         (WebCore::SVGRootInlineBox::buildTextChunks):
   2221 
   2222 2007-07-25  Rob Buis  <buis (a] kde.org>
   2223 
   2224         Reviewed by Nikolas.
   2225 
   2226         http://bugs.webkit.org/show_bug.cgi?id=14312
   2227         Removing an attribute has no effect on SVG
   2228 
   2229         Update the transform matrix also when transform attribute is empty.
   2230 
   2231         * ksvg2/svg/SVGStyledTransformableElement.cpp:
   2232         (WebCore::SVGStyledTransformableElement::updateLocalTransform):
   2233 
   2234 2007-07-26  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2235 
   2236         Reviewed by Oliver.
   2237 
   2238         Unify absoluteRects() of RenderSVGTSpan & RenderSVGTextPath.
   2239         The RenderSVGTextPath one was still using the old, wrong concept.
   2240 
   2241         * rendering/RenderSVGTSpan.cpp: Remove unused params tx, ty, while I'm at it.
   2242         (WebCore::RenderSVGTSpan::absoluteRects):
   2243         * rendering/RenderSVGTextPath.cpp:
   2244         (WebCore::RenderSVGTextPath::absoluteRects):
   2245 
   2246 2007-07-25  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2247 
   2248         Reviewed by Sam.
   2249 
   2250         Let <textPath> be recognized within the ObjC bindings.
   2251         Forgot to add that months ago.
   2252 
   2253         * bindings/objc/DOM.mm:
   2254         (WebCore::createElementClassMap):
   2255         * bindings/objc/DOMInternal.h:
   2256         * bindings/objc/DOMSVG.h:
   2257 
   2258 2007-07-25  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2259 
   2260         Reviewed by Oliver.
   2261 
   2262         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14065
   2263 
   2264         Fix all known bugs regarding to SVG text selection, when embedded in XHTML.
   2265         Also fix inspecting <text> elements when embedded in XHTML. (WebInspector)
   2266 
   2267         Short story: selectionRect() & friends are special in terms of the "HTML parent translation".
   2268         Caused by ie. CSS translation like "left: 50px; top: 50px" when <svg> is a child of a <div>.
   2269         For non-textual objects like RenderPath, we can easily add a translation to a new coordinate
   2270         space in RenderSVGRoot::applyContentTransformations() and we're done with it.
   2271 
   2272         Same for painting text, but text selection makes problems in this concept.
   2273         We have to remove the 'html parent translation' from our selection rects that we return
   2274         from RenderSVGText & RenderSVGInlineText. Hopefully all issues are fixed now.
   2275 
   2276         Long story:
   2277         - RenderSVGRoot::nodeAtPoint didn't take the parent 'scroll offset' into account. We exited
   2278           too early, because the overflow rect wasn't correctly sized. Fixed.
   2279         - RenderSVGRoot::absoluteRects() can't return the absoluteClippedOverflowRect() as it includes
   2280           the 'html parent translation', which needs to be removed, otherwhise the painted rects are off
   2281           when inspecting with WebInspector. -> Pass down absoluteRects() call to it's children..
   2282         - RenderSVGText::absoluteRects() can't use absoluteClippedOverflowRect() for the same reason.
   2283         - Add RenderSVGInlineText::computeAbsoluteRectForRange() function - shared by absoluteRects() and
   2284           selectionRect() - and remove the 'html parent translation' there by asking the RenderSVGRoot
   2285           object for the correct offsets.
   2286 
   2287         This lead to nasty bugs showing that SVGInlineTextBox::selectionRect() wasn't actually returning
   2288         correct rectangles. It couldn't work for text chunks the way it was implemented. Fixed by implementing
   2289         it exactly the same way that closestCharacterToPosition() was done - could share more code later on.
   2290 
   2291         * rendering/RenderSVGInlineText.cpp:
   2292         (WebCore::RenderSVGInlineText::absoluteRects):
   2293         (WebCore::RenderSVGInlineText::selectionRect):
   2294         (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
   2295         * rendering/RenderSVGInlineText.h:
   2296         * rendering/RenderSVGRoot.cpp:
   2297         (WebCore::RenderSVGRoot::absoluteRects):
   2298         (WebCore::RenderSVGRoot::nodeAtPoint):
   2299         * rendering/RenderSVGText.cpp:
   2300         (WebCore::RenderSVGText::absoluteRects):
   2301         * rendering/SVGCharacterLayoutInfo.h: Removed unused variable 'bool selected'
   2302         * rendering/SVGInlineTextBox.cpp:
   2303         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   2304         (WebCore::SVGInlineTextBox::nodeAtPoint):
   2305         (WebCore::SVGInlineTextBox::selectionRect):
   2306         * rendering/SVGRootInlineBox.cpp: Add 'findSVGRootObject' helper function.
   2307         (WebCore::findSVGRootObject):
   2308         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   2309         (WebCore::SVGRootInlineBox::paintSelectionForTextBox): Remove unused tx/ty parameters.
   2310         (WebCore::SVGRootInlineBox::paintChildInlineTextBox):
   2311         (WebCore::SVGRootInlineBox::paintCharacterRangeForTextBox):
   2312         * rendering/SVGRootInlineBox.h:
   2313 
   2314 2007-07-17  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2315 
   2316         Build fix. Not reviewed.
   2317 
   2318         Rob forgot to land the changes to SVGResourceMarker in his last commit.
   2319 
   2320         * platform/graphics/svg/SVGResourceMarker.cpp:
   2321         (WebCore::SVGResourceMarker::draw):
   2322 
   2323 2007-07-17  Rob Buis  <buis (a] kde.org>
   2324 
   2325         Reviewed by Nikolas.
   2326 
   2327         http://bugs.webkit.org/show_bug.cgi?id=5996
   2328         SVG <view> is unimplemented
   2329 
   2330         Implement <view> and refactor the code in the svg renderer container classes.
   2331 
   2332         * WebCore.xcodeproj/project.pbxproj:
   2333         * ksvg2/svg/SVGDocument.cpp:
   2334         (WebCore::SVGDocument::zoomAndPanEnabled): Take into account currentView for zoom/pan
   2335         * ksvg2/svg/SVGDocument.h:
   2336         * ksvg2/svg/SVGFEImageElement.cpp:
   2337         (WebCore::SVGFEImageElement::parseMappedAttribute):
   2338         * ksvg2/svg/SVGFitToViewBox.cpp:
   2339         (WebCore::SVGFitToViewBox::parseViewBox):
   2340         (WebCore::SVGFitToViewBox::parseMappedAttribute):
   2341         * ksvg2/svg/SVGFitToViewBox.h:
   2342         * ksvg2/svg/SVGImageElement.cpp:
   2343         (WebCore::SVGImageElement::parseMappedAttribute):
   2344         * ksvg2/svg/SVGLocatable.h:
   2345         * ksvg2/svg/SVGMarkerElement.cpp:
   2346         (WebCore::SVGMarkerElement::createRenderer):
   2347         (WebCore::SVGMarkerElement::notifyAttributeChange):
   2348         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
   2349         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
   2350         * ksvg2/svg/SVGPreserveAspectRatio.h:
   2351         * ksvg2/svg/SVGSVGElement.cpp:
   2352         (WebCore::SVGSVGElement::SVGSVGElement):
   2353         (WebCore::SVGSVGElement::currentView):
   2354         (WebCore::SVGSVGElement::parseMappedAttribute):
   2355         (WebCore::SVGSVGElement::createRenderer):
   2356         (WebCore::SVGSVGElement::viewBoxToViewTransform):
   2357         (WebCore::SVGSVGElement::inheritViewAttributes):
   2358         * ksvg2/svg/SVGSVGElement.h:
   2359         * ksvg2/svg/SVGTransformable.cpp:
   2360         (WebCore::SVGTransformable::parseTransformAttribute):
   2361         * ksvg2/svg/SVGTransformable.h:
   2362         * ksvg2/svg/SVGViewElement.cpp:
   2363         (WebCore::SVGViewElement::parseMappedAttribute):
   2364         * ksvg2/svg/SVGViewElement.h:
   2365         * ksvg2/svg/SVGViewSpec.cpp: Added.
   2366         (WebCore::SVGViewSpec::SVGViewSpec):
   2367         (WebCore::SVGViewSpec::~SVGViewSpec):
   2368         (WebCore::SVGViewSpec::setTransform):
   2369         (WebCore::SVGViewSpec::setViewBoxString):
   2370         (WebCore::SVGViewSpec::setPreserveAspectRatioString):
   2371         (WebCore::SVGViewSpec::setViewTargetString):
   2372         (WebCore::SVGViewSpec::viewTarget):
   2373         (WebCore::SVGViewSpec::contextElement):
   2374         (WebCore::):
   2375         (WebCore::SVGViewSpec::parseViewSpec):
   2376         * ksvg2/svg/SVGViewSpec.h: Added.
   2377         (WebCore::SVGViewSpec::transform):
   2378         (WebCore::SVGViewSpec::viewTargetString):
   2379         * ksvg2/svg/SVGZoomAndPan.cpp:
   2380         (WebCore::SVGZoomAndPan::parseMappedAttribute):
   2381         (WebCore::):
   2382         (WebCore::SVGZoomAndPan::parseZoomAndPan):
   2383         * ksvg2/svg/SVGZoomAndPan.h:
   2384         * loader/FrameLoader.cpp:
   2385         (WebCore::FrameLoader::gotoAnchor):
   2386         * page/Frame.cpp:
   2387         (WebCore::Frame::setZoomFactor): do not zoom when it is disabled
   2388         * rendering/RenderSVGContainer.cpp:
   2389         (WebCore::RenderSVGContainer::RenderSVGContainer):
   2390         (WebCore::RenderSVGContainer::paint):
   2391         (WebCore::RenderSVGContainer::viewportTransform):
   2392         * rendering/RenderSVGContainer.h:
   2393         * rendering/RenderSVGRoot.cpp:
   2394         (WebCore::RenderSVGRoot::RenderSVGRoot):
   2395         (WebCore::RenderSVGRoot::applyContentTransforms):
   2396         (WebCore::RenderSVGRoot::paint):
   2397         (WebCore::RenderSVGRoot::absoluteTransform):
   2398         (WebCore::RenderSVGRoot::localTransform):
   2399         * rendering/RenderSVGRoot.h:
   2400 
   2401 2007-07-16  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2402 
   2403         Reviewed by Rob.
   2404 
   2405         Fixes: http://bugs.webkit.org/show_bug.cgi?id=13611 (Crash in setAttributeNS setting href of SVG <use> to nonexistent symbol)
   2406         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14631 (<use> doesn't deep-expand <symbol> elements.)
   2407 
   2408         Rework <use> on <foreignObject> cases, to not just ignore these cases, but actually proceed and skip <fO> objects
   2409         from the resulting cloned tree. This fixes parts of "treasure_map.svg" (no bug report availabe on that one, private "testcase").
   2410 
   2411         Fix assertion happening with <use> on <g> containing <symbol>. Introduce expandSymbolElementsInShadowTree()
   2412         concept, just like it's done for <use> on <use>, to deep-replace all <symbol> elements by <svg>, as demanded
   2413         by the spec. This only worked on <use> on <symbol> direct cases so far.
   2414 
   2415         Added testcase: svg/custom/use-on-g-containing-foreignObject-and-image.svg (testcase for treasure_map.svg)
   2416                         svg/custom/use-on-disallowed-foreign-object-5.svg (<use> on <symbol> containg <foreignObject>)
   2417                         svg/custom/use-on-disallowed-foreign-object-6.svg (<use> on <g> containing <svg> containing <foreignObject>)
   2418                         svg/custom/use-on-disallowed-foreign-object-7.svg (<use> on <g> containing <symbol> containing <foreignObject>)
   2419                         svg/custom/use-scripting-changes-to-nonexistant-href.svg
   2420 
   2421         * ksvg2/svg/SVGUseElement.cpp:
   2422         (WebCore::isDisallowedElement):
   2423         (WebCore::subtreeContainsDisallowedElement):
   2424         (WebCore::SVGUseElement::buildPendingResource):
   2425         (WebCore::SVGUseElement::buildInstanceTree):
   2426         (WebCore::SVGUseElement::removeDisallowedElementsFromSubtree):
   2427         (WebCore::SVGUseElement::buildShadowTree):
   2428         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
   2429         (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
   2430         * ksvg2/svg/SVGUseElement.h:
   2431 
   2432 2007-07-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2433 
   2434         Reviewed by Rob.
   2435 
   2436         Fix invisible-text-after-scrolling.xhtml regression. Scroll offset not
   2437         taken into account properly. Also fix RenderSVGInlineText::selectionRect(),
   2438         so that SVG text can be selected, when being embedded in XHTML.
   2439 
   2440         * rendering/RenderSVGInlineText.cpp:
   2441         (WebCore::RenderSVGInlineText::selectionRect):
   2442         * rendering/RenderSVGRoot.cpp:
   2443         (WebCore::RenderSVGRoot::applyContentTransforms):
   2444 
   2445 2007-07-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2446 
   2447         Reviewed by Oliver.
   2448 
   2449         Fixes: http://bugs.webkit.org/show_bug.cgi?id=5940 (<svg> inside <body> incorrectly extends over top/bottom borders)
   2450         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14145 (RenderSVGContainer should not inherit from RenderContainer)
   2451 
   2452         Make RenderSVGContainer inherit from RenderObject directly, instead of RenderContainer.
   2453         Itdoes a lot of things that we don't need for SVG, and by removing this inheritance
   2454         we can finally fix the differences about SVG object positioning, as we don't need
   2455         parent translation (tx/ty). Fixes SVG text rendering within XHTML.
   2456 
   2457         Fix requireLayer() function on RenderSVGRoot, as it can actually be a layer now.
   2458         This change is based on Rob's patch at 5940 - fixing z-order indexing.
   2459 
   2460         Change RenderSVGRoot renderName() and update all layout tests, because of this change.
   2461         
   2462         Fix absoluteRects() function for RenderSVGInlineText & RenderSVGTSpan.
   2463         Checked extensively using WebInspector, to assure all rects are correctly displayed.
   2464 
   2465         Testcases fixed: junk-data.svg, missing-xlink.svg hixie/013.xml (all regressions!)
   2466         (junk-data.svg & missing-xlink.svg previously relied on SVG text painting out of <svg> overflow rect.
   2467          Fix these testcases, as within this new RenderSVGContainer concept, that bug is now fixed, and breaks them)
   2468 
   2469         Testcases added: custom/absolute-sized-svg-in-xhtml.xhtml, custom/inline-svg-in-xhtml.xml (Mozilla XTech demo)
   2470 
   2471         * ksvg2/svg/SVGSVGElement.cpp:
   2472         (WebCore::SVGSVGElement::parseMappedAttribute):
   2473         * rendering/RenderObject.cpp:
   2474         (WebCore::RenderObject::containingBlock):
   2475         * rendering/RenderObject.h:
   2476         (WebCore::RenderObject::isSVGRoot):
   2477         * rendering/RenderPath.cpp:
   2478         (WebCore::RenderPath::paint):
   2479         (WebCore::RenderPath::addFocusRingRects):
   2480         * rendering/RenderSVGContainer.cpp:
   2481         (WebCore::RenderSVGContainer::RenderSVGContainer):
   2482         (WebCore::RenderSVGContainer::canHaveChildren):
   2483         (WebCore::RenderSVGContainer::addChild):
   2484         (WebCore::RenderSVGContainer::removeChild):
   2485         (WebCore::RenderSVGContainer::destroy):
   2486         (WebCore::RenderSVGContainer::destroyLeftoverChildren):
   2487         (WebCore::RenderSVGContainer::removeChildNode):
   2488         (WebCore::RenderSVGContainer::appendChildNode):
   2489         (WebCore::RenderSVGContainer::insertChildNode):
   2490         (WebCore::RenderSVGContainer::layout):
   2491         (WebCore::RenderSVGContainer::calcReplacedWidth):
   2492         (WebCore::RenderSVGContainer::calcReplacedHeight):
   2493         (WebCore::RenderSVGContainer::applyContentTransforms):
   2494         (WebCore::RenderSVGContainer::paint):
   2495         (WebCore::RenderSVGContainer::absoluteTransform):
   2496         (WebCore::RenderSVGContainer::nodeAtPoint):
   2497         * rendering/RenderSVGContainer.h:
   2498         (WebCore::RenderSVGContainer::firstChild):
   2499         (WebCore::RenderSVGContainer::lastChild):
   2500         (WebCore::RenderSVGContainer::width):
   2501         (WebCore::RenderSVGContainer::height):
   2502         (WebCore::RenderSVGContainer::moveChildNode):
   2503         (WebCore::RenderSVGContainer::calcPrefWidths):
   2504         * rendering/RenderSVGHiddenContainer.cpp:
   2505         (WebCore::RenderSVGHiddenContainer::RenderSVGHiddenContainer):
   2506         (WebCore::RenderSVGHiddenContainer::paint):
   2507         (WebCore::RenderSVGHiddenContainer::absoluteRects):
   2508         (WebCore::RenderSVGHiddenContainer::relativeBBox):
   2509         * rendering/RenderSVGHiddenContainer.h:
   2510         * rendering/RenderSVGImage.cpp:
   2511         (WebCore::RenderSVGImage::paint):
   2512         * rendering/RenderSVGInline.cpp:
   2513         (WebCore::RenderSVGInline::RenderSVGInline):
   2514         * rendering/RenderSVGInlineText.cpp:
   2515         (WebCore::RenderSVGInlineText::absoluteRects):
   2516         * rendering/RenderSVGRoot.cpp:
   2517         (WebCore::RenderSVGRoot::applyContentTransforms):
   2518         (WebCore::RenderSVGRoot::paint):
   2519         (WebCore::RenderSVGRoot::addFocusRingRects):
   2520         * rendering/RenderSVGRoot.h:
   2521         (WebCore::RenderSVGRoot::isSVGRoot):
   2522         (WebCore::RenderSVGRoot::renderName):
   2523         * rendering/RenderSVGTSpan.cpp:
   2524         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
   2525         (WebCore::RenderSVGTSpan::absoluteRects):
   2526         * rendering/RenderSVGTextPath.cpp:
   2527         (WebCore::RenderSVGTextPath::absoluteRects):
   2528         * rendering/RenderTreeAsText.cpp:
   2529         (WebCore::write):
   2530         * rendering/SVGRenderTreeAsText.cpp:
   2531         (WebCore::operator<<):
   2532         (WebCore::write):
   2533         * rendering/SVGRenderTreeAsText.h:
   2534 
   2535 2007-07-11  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2536 
   2537         Reviewed by Sam.
   2538 
   2539         Remove all "SVGElement* m_context" parameters spread over SVG primitives
   2540         (like SVGAngle, SVGPreserveAspectRatio, SVGTransformList, ...)
   2541 
   2542         This is all handled by the JS generation in the bindings now, leading
   2543         to a faster static rendering codepaths, and easier handling of the dynamic
   2544         parts like JS scripting. Remove the mystified genericContext() concept alltogether.
   2545 
   2546         * bindings/js/JSSVGMatrixCustom.cpp: Adapt to the context() change.
   2547         (WebCore::JSSVGMatrix::multiply):
   2548         (WebCore::JSSVGMatrix::inverse):
   2549         (WebCore::JSSVGMatrix::translate):
   2550         (WebCore::JSSVGMatrix::scale):
   2551         (WebCore::JSSVGMatrix::scaleNonUniform):
   2552         (WebCore::JSSVGMatrix::rotate):
   2553         (WebCore::JSSVGMatrix::rotateFromVector):
   2554         (WebCore::JSSVGMatrix::flipX):
   2555         (WebCore::JSSVGMatrix::flipY):
   2556         (WebCore::JSSVGMatrix::skewX):
   2557         (WebCore::JSSVGMatrix::skewY):
   2558         * bindings/js/JSSVGPODTypeWrapper.h: Remove all nAC() calls here!
   2559         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::commitChange):
   2560         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
   2561         (WebCore::JSSVGPODTypeWrapperCreatorForList::~JSSVGPODTypeWrapperCreatorForList):
   2562         * bindings/js/JSSVGPathSegCustom.cpp: Adapt to the context() change.
   2563         (WebCore::toJS):
   2564         * bindings/js/JSSVGPathSegListCustom.cpp: Ditto.
   2565         (WebCore::JSSVGPathSegList::clear):
   2566         (WebCore::JSSVGPathSegList::initialize):
   2567         (WebCore::JSSVGPathSegList::getItem):
   2568         (WebCore::JSSVGPathSegList::insertItemBefore):
   2569         (WebCore::JSSVGPathSegList::replaceItem):
   2570         (WebCore::JSSVGPathSegList::removeItem):
   2571         (WebCore::JSSVGPathSegList::appendItem):
   2572         * bindings/js/JSSVGPointListCustom.cpp: Ditto.
   2573         (WebCore::JSSVGPointList::clear):
   2574         (WebCore::JSSVGPointList::initialize):
   2575         (WebCore::JSSVGPointList::getItem):
   2576         (WebCore::JSSVGPointList::insertItemBefore):
   2577         (WebCore::JSSVGPointList::replaceItem):
   2578         (WebCore::JSSVGPointList::removeItem):
   2579         (WebCore::JSSVGPointList::appendItem): 
   2580         * bindings/js/JSSVGTransformListCustom.cpp: Ditto.
   2581         (WebCore::JSSVGTransformList::clear):
   2582         (WebCore::JSSVGTransformList::initialize):
   2583         (WebCore::JSSVGTransformList::getItem):
   2584         (WebCore::JSSVGTransformList::insertItemBefore):
   2585         (WebCore::JSSVGTransformList::replaceItem):
   2586         (WebCore::JSSVGTransformList::removeItem):
   2587         (WebCore::JSSVGTransformList::appendItem):
   2588         * bindings/js/kjs_binding.h: Add new cacheSVGDOMObject, taking third parameter: context.
   2589         (KJS::cacheSVGDOMObject):
   2590         * bindings/scripts/CodeGeneratorJS.pm: Change generation to step aways from genericContext().
   2591         * ksvg2/misc/SVGDocumentExtensions.h: Kill all genericContext() stuff.
   2592         (WebCore::SVGDocumentExtensions::hasBaseValue):
   2593         * ksvg2/svg/SVGAngle.cpp: Kill context parameter.
   2594         (WebCore::SVGAngle::SVGAngle):
   2595         * ksvg2/svg/SVGAngle.h: ditto.
   2596         * ksvg2/svg/SVGFEImageElement.cpp: SVG classes don't get context params passed anymore.
   2597         (WebCore::SVGFEImageElement::SVGFEImageElement):
   2598         * ksvg2/svg/SVGFitToViewBox.cpp: Ditto.
   2599         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
   2600         * ksvg2/svg/SVGGradientElement.cpp: Ditto.
   2601         (WebCore::SVGGradientElement::SVGGradientElement):
   2602         * ksvg2/svg/SVGImageElement.cpp: Ditto.
   2603         (WebCore::SVGImageElement::SVGImageElement):
   2604         * ksvg2/svg/SVGMarkerElement.cpp: Ditto.
   2605         (WebCore::SVGMarkerElement::SVGMarkerElement):
   2606         (WebCore::SVGMarkerElement::parseMappedAttribute):
   2607         * ksvg2/svg/SVGPathElement.cpp: Ditto.
   2608         (WebCore::SVGPathElement::pathSegList):
   2609         * ksvg2/svg/SVGPathSegList.cpp: Kill context parameter.
   2610         (WebCore::SVGPathSegList::SVGPathSegList):
   2611         * ksvg2/svg/SVGPathSegList.h:
   2612         * ksvg2/svg/SVGPatternElement.cpp: SVG classes don't get context params passed anymore.
   2613         (WebCore::SVGPatternElement::SVGPatternElement):
   2614         * ksvg2/svg/SVGPointList.cpp: Kill context parameter.
   2615         (SVGPointList::SVGPointList):
   2616         * ksvg2/svg/SVGPointList.h:
   2617         * ksvg2/svg/SVGPolyElement.cpp: SVG classes don't get context params passed anymore.
   2618         (WebCore::SVGPolyElement::points):
   2619         * ksvg2/svg/SVGPreserveAspectRatio.cpp: Kill context parameter.
   2620         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
   2621         (WebCore::SVGPreserveAspectRatio::setAlign):
   2622         (WebCore::SVGPreserveAspectRatio::setMeetOrSlice):
   2623         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
   2624         * ksvg2/svg/SVGPreserveAspectRatio.h:
   2625         * ksvg2/svg/SVGSVGElement.cpp: SVG classes don't get cntext params passed anymore.
   2626         (WebCore::SVGSVGElement::createSVGAngle):
   2627         * ksvg2/svg/SVGStyledTransformableElement.cpp: Ditto.
   2628         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
   2629         * ksvg2/svg/SVGTextElement.cpp: Ditto.
   2630         (WebCore::SVGTextElement::SVGTextElement):
   2631         * ksvg2/svg/SVGTransformList.cpp: Kill context parameter.
   2632         (SVGTransformList::SVGTransformList):
   2633         * ksvg2/svg/SVGTransformList.h:
   2634 
   2635 2007-07-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2636 
   2637         Reviewed by Sam.
   2638 
   2639         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11167.
   2640 
   2641         Recognize <textPath> in SVG JS bindings.
   2642         Add JSSVGTextPathElement to JSSVGElementWrapperFactory.
   2643 
   2644         Add SVGException.idl just for the JS generation.
   2645         Turn on all SVG JS constructors and add them to DOMWindow.idl.
   2646 
   2647         Testcase added: LayoutTests/svg/custom/js-svg-constructors.svg
   2648     
   2649         * DerivedSources.make: Add JSSVGException.h
   2650         * WebCore.xcodeproj/project.pbxproj: Correct paths for DOM/JS*SVGTextPathElement
   2651         * bindings/scripts/CodeGeneratorJS.pm: Forward port hash fix from trunk.
   2652         * bindings/js/JSSVGElementWrapperFactory.cpp: Add JSSVGTextPathElement support
   2653         * ksvg2/svg/SVGComponentTransferFunctionElement.idl:
   2654         * ksvg2/svg/SVGTextPathElement.h:
   2655         * ksvg2/svg/SVGException.h:
   2656         * ksvg2/svg/SVGException.idl: Added.
   2657         * ksvg2/svg/SVGFEBlendElement.idl:
   2658         * ksvg2/svg/SVGFEColorMatrixElement.idl:
   2659         * ksvg2/svg/SVGFECompositeElement.idl:
   2660         * ksvg2/svg/SVGFEDisplacementMapElement.idl:
   2661         * ksvg2/svg/SVGFETurbulenceElement.idl:
   2662         * ksvg2/svg/SVGGradientElement.idl:
   2663         * ksvg2/svg/SVGMarkerElement.idl:
   2664         * ksvg2/svg/SVGTextContentElement.idl:
   2665         * ksvg2/svg/SVGTextPathElement.idl:
   2666         * page/DOMWindow.idl: Recognize new js svg constructors.
   2667 
   2668 2007-06-28  Rob Buis  <buis (a] kde.org>
   2669 
   2670         Reviewed by Maciej.
   2671 
   2672         http://bugs.webkit.org/show_bug.cgi?id=14241
   2673         SVG <image> with height or width less than 1 fails to render image
   2674 
   2675         Keep extra member vars to get width/height as floats for accurate
   2676         calculations.
   2677 
   2678         * rendering/RenderSVGImage.cpp:
   2679         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
   2680         (WebCore::RenderSVGImage::paint):
   2681         (WebCore::RenderSVGImage::calcWidth):
   2682         (WebCore::RenderSVGImage::calcHeight):
   2683         * rendering/RenderSVGImage.h:
   2684 
   2685 2007-06-26  Rob Buis  <buis (a] kde.org>
   2686 
   2687         Reviewed by Maciej.
   2688 
   2689         http://bugs.webkit.org/show_bug.cgi?id=9976
   2690         Fix negative width issue in Hixie's test
   2691 
   2692         Refuse to render zero or negative width/height.
   2693 
   2694         * rendering/RenderSVGContainer.cpp:
   2695         (WebCore::RenderSVGContainer::paint):
   2696         * rendering/RenderSVGRoot.cpp:
   2697         (WebCore::RenderSVGRoot::paint):
   2698 
   2699 2007-06-26  Rob Buis  <buis (a] kde.org>
   2700 
   2701         Reviewed by Maciej.
   2702 
   2703         http://bugs.webkit.org/show_bug.cgi?id=12062
   2704         WebCore does not handle CSS-specified fill fallback correctly
   2705 
   2706         Implement fallback for fill and stroke.
   2707 
   2708         * ksvg2/css/SVGCSSParser.cpp:
   2709         (WebCore::CSSParser::parseSVGValue):
   2710         * ksvg2/svg/SVGPaint.cpp:
   2711         (WebCore::SVGPaint::SVGPaint):
   2712         * ksvg2/svg/SVGPaint.h:
   2713         * platform/graphics/svg/SVGPaintServer.cpp:
   2714         (WebCore::SVGPaintServer::fillPaintServer):
   2715         (WebCore::SVGPaintServer::strokePaintServer):
   2716 
   2717 2007-06-20  Rob Buis  <buis (a] kde.org>
   2718 
   2719         Reviewed by Eric.
   2720 
   2721         http://bugs.webkit.org/show_bug.cgi?id=14157
   2722         Rotated shape has wrong gradient rendering
   2723 
   2724         Use the untransformed bbox in objectBoundingBoxMode. Also
   2725         don't do objectBoundingBoxMode should the bbox width ort height
   2726         be zero.
   2727 
   2728         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   2729         (WebCore::SVGPaintServerGradient::teardown):
   2730         (WebCore::SVGPaintServerGradient::renderPath):
   2731 
   2732 2007-06-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2733 
   2734         Reviewed by Eric & Oliver.
   2735 
   2736         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14198
   2737 
   2738         Reeanble <foreignObject>. Explicitely disallow <use> on <foreignObject>
   2739         as it may lead to bad problems. 
   2740 
   2741         While I'm at it disallow <use> on any non-svg element.
   2742 
   2743         * bindings/js/JSSVGElementWrapperFactory.cpp:
   2744         * bindings/objc/DOM.mm:
   2745         (WebCore::createElementClassMap):
   2746         * ksvg2/svg/SVGForeignObjectElement.cpp:
   2747         * ksvg2/svg/SVGForeignObjectElement.h:
   2748         * ksvg2/svg/SVGForeignObjectElement.idl:
   2749         * ksvg2/svg/SVGLocatable.cpp:
   2750         (WebCore::SVGLocatable::nearestViewportElement):
   2751         (WebCore::SVGLocatable::farthestViewportElement):
   2752         * ksvg2/svg/SVGUseElement.cpp:
   2753         (WebCore::SVGUseElement::buildPendingResource):
   2754         * ksvg2/svg/svgtags.in:
   2755         * rendering/RenderForeignObject.cpp:
   2756 
   2757 2007-06-19  Rob Buis  <buis (a] kde.org>
   2758 
   2759         Reviewed by Oliver.
   2760 
   2761         http://bugs.webkit.org/show_bug.cgi?id=14144
   2762         All tx/ty (parentX/parentY) usage should be removed from SVG renders
   2763         http://bugs.webkit.org/show_bug.cgi?id=13981
   2764         <br> prevents click handler from firing
   2765 
   2766         Fix the hit testing issues by making RenderSVGRoot take its m_x, m_y
   2767         into account in the absolute transform.
   2768 
   2769         * rendering/RenderPath.cpp:
   2770         (WebCore::RenderPath::absoluteRects):
   2771         (WebCore::RenderPath::nodeAtPoint):
   2772         * rendering/RenderSVGImage.cpp:
   2773         (WebCore::RenderSVGImage::nodeAtPoint):
   2774         * rendering/RenderSVGRoot.cpp:
   2775         (WebCore::RenderSVGRoot::absoluteTransform):
   2776         (WebCore::RenderSVGRoot::nodeAtPoint):
   2777 
   2778 2007-06-16  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2779 
   2780         Reviewed by Eric.
   2781 
   2782         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14015 (SVGTransformList::initialize() has no effect)
   2783 
   2784         Fix SVGTransformList usage in SVG DOM exposed to JS.
   2785         This also fixes SVG space invaders including most repainting issues. (still some unrelated ones left)
   2786 
   2787         This is basically the _same_ fix applied to SVGPointList some months ago. We just forgot
   2788         to add JSSVGTransformListCustom when switching from SVGTransform* -> SVGTransform (POD type).
   2789 
   2790         * WebCore.xcodeproj/project.pbxproj:
   2791         * bindings/js/JSSVGTransformListCustom.cpp: Added.
   2792         (WebCore::JSSVGTransformList::clear):
   2793         (WebCore::JSSVGTransformList::initialize):
   2794         (WebCore::JSSVGTransformList::getItem):
   2795         (WebCore::JSSVGTransformList::insertItemBefore):
   2796         (WebCore::JSSVGTransformList::replaceItem):
   2797         (WebCore::JSSVGTransformList::removeItem):
   2798         (WebCore::JSSVGTransformList::appendItem):
   2799         * ksvg2/svg/SVGCircleElement.cpp:
   2800         (WebCore::SVGCircleElement::notifyAttributeChange):
   2801         * ksvg2/svg/SVGEllipseElement.cpp:
   2802         (WebCore::SVGEllipseElement::notifyAttributeChange):
   2803         * ksvg2/svg/SVGGradientElement.cpp:
   2804         (WebCore::SVGGradientElement::SVGGradientElement):
   2805         * ksvg2/svg/SVGImageElement.cpp:
   2806         (WebCore::SVGImageElement::notifyAttributeChange):
   2807         * ksvg2/svg/SVGLineElement.cpp:
   2808         (WebCore::SVGLineElement::notifyAttributeChange):
   2809         * ksvg2/svg/SVGPathElement.cpp:
   2810         (WebCore::SVGPathElement::notifyAttributeChange):
   2811         * ksvg2/svg/SVGPatternElement.cpp:
   2812         (WebCore::SVGPatternElement::SVGPatternElement):
   2813         * ksvg2/svg/SVGPolyElement.cpp:
   2814         (WebCore::SVGPolyElement::notifyAttributeChange):
   2815         * ksvg2/svg/SVGRectElement.cpp:
   2816         (WebCore::SVGRectElement::notifyAttributeChange):
   2817         * ksvg2/svg/SVGStyledTransformableElement.cpp:
   2818         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
   2819         (WebCore::SVGStyledTransformableElement::notifyAttributeChange):
   2820         * ksvg2/svg/SVGStyledTransformableElement.h:
   2821         * ksvg2/svg/SVGTextElement.cpp:
   2822         (WebCore::SVGTextElement::SVGTextElement):
   2823         * ksvg2/svg/SVGTransformList.cpp:
   2824         (SVGTransformList::SVGTransformList):
   2825         (SVGTransformList::context):
   2826         * ksvg2/svg/SVGTransformList.h:
   2827         * ksvg2/svg/SVGTransformList.idl:
   2828 
   2829 2007-06-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2830 
   2831         Reviewed by Eric.
   2832 
   2833         Fixes: http://bugs.webkit.org/show_bug.cgi?id=14155
   2834 
   2835         JSSVGMatrix was not working properly.
   2836         "matrix.translate(10, 10)" actually altered 'matrix' instead of returning a
   2837         new SVGMatrix object, as described in SVG 1.1 specification.
   2838 
   2839         * bindings/js/JSSVGMatrixCustom.cpp:
   2840         (WebCore::JSSVGMatrix::multiply):
   2841         (WebCore::JSSVGMatrix::inverse):
   2842         (WebCore::JSSVGMatrix::translate):
   2843         (WebCore::JSSVGMatrix::scale):
   2844         (WebCore::JSSVGMatrix::scaleNonUniform):
   2845         (WebCore::JSSVGMatrix::rotate):
   2846         (WebCore::JSSVGMatrix::flipX):
   2847         (WebCore::JSSVGMatrix::flipY):
   2848         (WebCore::JSSVGMatrix::skewX):
   2849         (WebCore::JSSVGMatrix::skewY):
   2850         * ksvg2/svg/SVGMatrix.idl:
   2851 
   2852 2007-06-15  Eric Seidel  <eric (a] webkit.org>
   2853 
   2854         Reviewed by Niko.
   2855 
   2856         Fix the release build.
   2857 
   2858         * rendering/SVGRootInlineBox.cpp:
   2859         (WebCore::applyTextAnchorToTextChunk):
   2860 
   2861 2007-06-15  Rob Buis  <buis (a] kde.org>
   2862 
   2863         Reviewed by Eric.
   2864 
   2865         http://bugs.webkit.org/show_bug.cgi?id=14051
   2866         <svg:image> fails to position correctly when <svg> is inside an inline <div>
   2867 
   2868         Leave parent translation to the containers.
   2869 
   2870         * rendering/RenderSVGImage.cpp:
   2871         (WebCore::RenderSVGImage::paint):
   2872 
   2873 2007-06-15  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2874 
   2875         Reviewed by Eric.
   2876 
   2877         Fixes: http://bugs.webkit.org/show_bug.cgi?id=13963
   2878 
   2879         Fix SVG space invaders. It actually highlighted a bad problem with our JSSVGPODTypeWrapper's.
   2880         Introduce a new "2nd-level cache" for all readwrite POD properties. Subsequent calls to ie.
   2881         myRect.x.baseVal.value don't create a new wrapper everytime, but are properly cached now.
   2882         This leads to a massive reduction in created wrappers.
   2883 
   2884         * bindings/js/JSSVGMatrixCustom.cpp:
   2885         (WebCore::JSSVGMatrix::inverse):
   2886         (WebCore::JSSVGMatrix::rotateFromVector):
   2887         * bindings/js/JSSVGPODTypeWrapper.h:
   2888         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::JSSVGPODTypeWrapperCreatorReadWrite):
   2889         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::~JSSVGPODTypeWrapperCreatorReadWrite):
   2890         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::operator PODType):
   2891         (WebCore::JSSVGPODTypeWrapperCreatorReadWrite::commitChange):
   2892         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::JSSVGPODTypeWrapperCreatorReadOnly):
   2893         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::~JSSVGPODTypeWrapperCreatorReadOnly):
   2894         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::operator PODType):
   2895         (WebCore::JSSVGPODTypeWrapperCreatorReadOnly::commitChange):
   2896         (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
   2897         (WebCore::JSSVGPODTypeWrapperCreatorForList::commitChange):
   2898         (WebCore::PODTypeReadWriteHashInfo::PODTypeReadWriteHashInfo):
   2899         (WebCore::PODTypeReadWriteHashInfo::operator==):
   2900         (WebCore::PODTypeReadWriteHashInfoHash::hash):
   2901         (WebCore::PODTypeReadWriteHashInfoHash::equal):
   2902         (WebCore::PODTypeReadWriteHashInfoTraits::deletedValue):
   2903         (WebCore::PODTypeReadWriteHashInfoTraits::emptyValue):
   2904         (WebCore::JSSVGPODTypeWrapperCache::readWriteHashMap):
   2905         (WebCore::JSSVGPODTypeWrapperCache::lookupOrCreateWrapper):
   2906         (WebCore::JSSVGPODTypeWrapperCache::forgetWrapper):
   2907         * bindings/js/JSSVGPointListCustom.cpp:
   2908         (WebCore::JSSVGPointList::removeItem):
   2909         * bindings/scripts/CodeGeneratorJS.pm:
   2910 
   2911 2007-06-14  Eric Seidel  <eric (a] webkit.org>
   2912 
   2913         Reviewed by Niko.
   2914 
   2915         Text gradients are broken on feature branch
   2916         http://bugs.webkit.org/show_bug.cgi?id=14142
   2917 
   2918         * rendering/SVGRenderSupport.cpp:
   2919         (WebCore::prepareToRenderSVGContent):
   2920         * rendering/SVGRootInlineBox.cpp:
   2921         (WebCore::prepareTextRendering):
   2922         (WebCore::SVGRootInlineBox::paint):
   2923         (WebCore::SVGRootInlineBox::paintInlineBoxes):
   2924         (WebCore::SVGRootInlineBox::paintChildInlineTextBox):
   2925         (WebCore::SVGRootInlineBox::paintChildInlineFlowBox):
   2926         * rendering/SVGRootInlineBox.h:
   2927 
   2928 2007-06-14  Nikolas Zimmermann  <zimmermann (a] kde.org>
   2929 
   2930         Reviewed by Sam.
   2931 
   2932         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11273
   2933 
   2934         Implement pixelUnitToMillimeterX(), pixelUnitToMillimeterY() in SVGSVGElement.
   2935         Use cssPixelsPerInch, just like done in CSSPrimitiveValue & SVGLength.
   2936 
   2937         * ksvg2/svg/SVGSVGElement.cpp:
   2938         (WebCore::SVGSVGElement::pixelUnitToMillimeterX):
   2939         (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
   2940 
   2941 2007-06-14  Rob Buis  <buis (a] kde.org>
   2942 
   2943         Reviewed by Eric.
   2944 
   2945         http://bugs.webkit.org/show_bug.cgi?id=9752
   2946         %-sizing of elements with a html parent is broken
   2947 
   2948         Calculate width/height for length percentages when embedded in xhtml.
   2949 
   2950         * ksvg2/svg/SVGLength.cpp:
   2951         (WebCore::SVGLength::PercentageOfViewport):
   2952 
   2953 2007-06-14  Rob Buis  <buis (a] kde.org>
   2954 
   2955         Build fix.
   2956 
   2957         * rendering/SVGCharacterLayoutInfo.cpp:
   2958 
   2959 2007-06-14  Rob Buis  <buis (a] kde.org>
   2960 
   2961         Reviewed by Eric.
   2962 
   2963         http://bugs.webkit.org/show_bug.cgi?id=12207
   2964         RenderSVGContainer should be split into multiple classes
   2965         http://bugs.webkit.org/show_bug.cgi?id=14125
   2966         KCanvasRenderingStyle should be removed
   2967 
   2968         Introduce the RenderSVGRoot class and kill the KCanvas enums.
   2969 
   2970         * WebCore.xcodeproj/project.pbxproj:
   2971         * ksvg2/css/SVGRenderStyle.cpp:
   2972         (WebCore::SVGRenderStyle::cssPrimitiveToLength):
   2973         * ksvg2/css/SVGRenderStyle.h:
   2974         * ksvg2/misc/KCanvasRenderingStyle.cpp: Removed.
   2975         * ksvg2/misc/KCanvasRenderingStyle.h: Removed.
   2976         * ksvg2/svg/SVGMarkerElement.cpp:
   2977         (WebCore::SVGMarkerElement::createRenderer):
   2978         (WebCore::SVGMarkerElement::notifyAttributeChange):
   2979         * ksvg2/svg/SVGSVGElement.cpp:
   2980         (WebCore::SVGSVGElement::createRenderer):
   2981         * ksvg2/svg/SVGSVGElement.h:
   2982         * platform/graphics/svg/SVGPaintServer.cpp:
   2983         (WebCore::sharedSolidPaintServer):
   2984         (WebCore::SVGPaintServer::fillPaintServer):
   2985         (WebCore::SVGPaintServer::strokePaintServer):
   2986         (WebCore::dashArrayFromRenderingStyle):
   2987         * platform/graphics/svg/SVGPaintServer.h:
   2988         * platform/graphics/svg/cg/CgSupport.cpp:
   2989         (WebCore::applyStrokeStyleToContext):
   2990         * platform/graphics/svg/cg/RenderPathCg.cpp:
   2991         (WebCore::RenderPath::strokeContains):
   2992         * rendering/RenderPath.cpp:
   2993         (WebCore::RenderPath::fillContains):
   2994         (WebCore::fillAndStrokePath):
   2995         (WebCore::RenderPath::drawMarkersIfNeeded):
   2996         * rendering/RenderSVGContainer.cpp:
   2997         (WebCore::RenderSVGContainer::requiresLayer):
   2998         (WebCore::RenderSVGContainer::layout):
   2999         (WebCore::RenderSVGContainer::applyContentTransforms):
   3000         (WebCore::RenderSVGContainer::paint):
   3001         (WebCore::RenderSVGContainer::setAlign):
   3002         (WebCore::RenderSVGContainer::align):
   3003         (WebCore::RenderSVGContainer::viewportTransform):
   3004         (WebCore::RenderSVGContainer::absoluteTransform):
   3005         (WebCore::RenderSVGContainer::getAspectRatio):
   3006         * rendering/RenderSVGContainer.h:
   3007         * rendering/RenderSVGInlineText.cpp:
   3008         * rendering/RenderSVGRoot.cpp: Added.
   3009         (WebCore::RenderSVGRoot::RenderSVGRoot):
   3010         (WebCore::RenderSVGRoot::~RenderSVGRoot):
   3011         (WebCore::RenderSVGRoot::localTransform):
   3012         (WebCore::RenderSVGRoot::setLocalTransform):
   3013         (WebCore::RenderSVGRoot::requiresLayer):
   3014         (WebCore::RenderSVGRoot::lineHeight):
   3015         (WebCore::RenderSVGRoot::baselinePosition):
   3016         (WebCore::RenderSVGRoot::layout):
   3017         (WebCore::RenderSVGRoot::applyContentTransforms):
   3018         (WebCore::RenderSVGRoot::paint):
   3019         (WebCore::RenderSVGRoot::viewport):
   3020         (WebCore::RenderSVGRoot::calcViewport):
   3021         (WebCore::RenderSVGRoot::setViewBox):
   3022         (WebCore::RenderSVGRoot::viewBox):
   3023         (WebCore::RenderSVGRoot::setAlign):
   3024         (WebCore::RenderSVGRoot::align):
   3025         (WebCore::RenderSVGRoot::viewportTransform):
   3026         (WebCore::RenderSVGRoot::absoluteClippedOverflowRect):
   3027         (WebCore::RenderSVGRoot::addFocusRingRects):
   3028         (WebCore::RenderSVGRoot::absoluteRects):
   3029         (WebCore::RenderSVGRoot::absoluteTransform):
   3030         (WebCore::RenderSVGRoot::fillContains):
   3031         (WebCore::RenderSVGRoot::strokeContains):
   3032         (WebCore::RenderSVGRoot::relativeBBox):
   3033         (WebCore::RenderSVGRoot::setSlice):
   3034         (WebCore::RenderSVGRoot::slice):
   3035         (WebCore::RenderSVGRoot::getAspectRatio):
   3036         (WebCore::RenderSVGRoot::nodeAtPoint):
   3037         * rendering/RenderSVGRoot.h: Added.
   3038         (WebCore::RenderSVGRoot::isSVGContainer):
   3039         (WebCore::RenderSVGRoot::renderName):
   3040         * rendering/RenderSVGTSpan.cpp:
   3041         * rendering/RenderSVGText.cpp:
   3042         (WebCore::RenderSVGText::relativeBBox):
   3043         * rendering/SVGRenderTreeAsText.cpp:
   3044         (WebCore::operator<<):
   3045         (WebCore::writeStyle):
   3046         * rendering/SVGRootInlineBox.cpp:
   3047         (WebCore::SVGRootInlineBox::paint):
   3048         (WebCore::SVGRootInlineBox::paintInlineBoxes):
   3049 
   3050 2007-06-12  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3051 
   3052         Reviewed by Eric.
   3053 
   3054         Fix regression: SVG images drawn in the wrong paint phase.
   3055 
   3056         * rendering/RenderSVGImage.cpp:
   3057         (WebCore::RenderSVGImage::paint):
   3058 
   3059 2007-06-11  Rob Buis  <buis (a] kde.org>
   3060 
   3061         Reviewed by weinig.
   3062 
   3063         http://bugs.webkit.org/show_bug.cgi?id=14064
   3064         fill property is reported as type SVGColor
   3065 
   3066         Do the checks in the right order.
   3067 
   3068         * bindings/js/kjs_css.cpp:
   3069         (KJS::toJS):
   3070 
   3071 2007-06-07  Rob Buis  <buis (a] kde.org>
   3072 
   3073         Reviewed by Eric.
   3074 
   3075         http://bugs.webkit.org/show_bug.cgi?id=12122
   3076         SVGPathElement should not inherit from SVGPathParser
   3077 
   3078         Use path builders for building Path and PathSegLists.
   3079 
   3080         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   3081         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
   3082         * ksvg2/svg/SVGParserUtilities.cpp:
   3083         (WebCore::pointsListFromSVGData):
   3084         (WebCore::SVGPathParser::~SVGPathParser):
   3085         (WebCore::SVGPathParser::svgLineToHorizontal):
   3086         (WebCore::SVGPathParser::svgLineToVertical):
   3087         (WebCore::SVGPathParser::svgCurveToCubicSmooth):
   3088         (WebCore::SVGPathParser::svgCurveToQuadratic):
   3089         (WebCore::SVGPathParser::svgCurveToQuadraticSmooth):
   3090         (WebCore::SVGPathParser::svgArcTo):
   3091         (WebCore::PathBuilder::build):
   3092         (WebCore::PathBuilder::svgMoveTo):
   3093         (WebCore::PathBuilder::svgLineTo):
   3094         (WebCore::PathBuilder::svgCurveToCubic):
   3095         (WebCore::PathBuilder::svgClosePath):
   3096         (WebCore::pathFromSVGData):
   3097         (WebCore::SVGPathSegListBuilder::build):
   3098         (WebCore::SVGPathSegListBuilder::svgMoveTo):
   3099         (WebCore::SVGPathSegListBuilder::svgLineTo):
   3100         (WebCore::SVGPathSegListBuilder::svgLineToHorizontal):
   3101         (WebCore::SVGPathSegListBuilder::svgLineToVertical):
   3102         (WebCore::SVGPathSegListBuilder::svgCurveToCubic):
   3103         (WebCore::SVGPathSegListBuilder::svgCurveToCubicSmooth):
   3104         (WebCore::SVGPathSegListBuilder::svgCurveToQuadratic):
   3105         (WebCore::SVGPathSegListBuilder::svgCurveToQuadraticSmooth):
   3106         (WebCore::SVGPathSegListBuilder::svgArcTo):
   3107         (WebCore::SVGPathSegListBuilder::svgClosePath):
   3108         (WebCore::pathSegListFromSVGData):
   3109         * ksvg2/svg/SVGParserUtilities.h:
   3110         * ksvg2/svg/SVGPathElement.cpp:
   3111         (WebCore::SVGPathElement::SVGPathElement):
   3112         (WebCore::SVGPathElement::parseMappedAttribute):
   3113         * ksvg2/svg/SVGPathElement.h:
   3114         * ksvg2/svg/SVGPolyElement.cpp:
   3115         (WebCore::SVGPolyElement::SVGPolyElement):
   3116         (WebCore::SVGPolyElement::parseMappedAttribute):
   3117         * ksvg2/svg/SVGPolyElement.h:
   3118 
   3119 2007-06-06  Eric Seidel  <eric (a] webkit.org>
   3120 
   3121         Reviewed by olliej.
   3122 
   3123         Add support for tabbing between links in an SVG file
   3124         Also add support for drawing a focus ring around focused svg content.
   3125         http://bugs.webkit.org/show_bug.cgi?id=8823
   3126         
   3127         Layout test is blocked by http://bugs.webkit.org/show_bug.cgi?id=14027
   3128 
   3129         * css/svg.css:
   3130         * ksvg2/svg/SVGAElement.cpp:
   3131         (WebCore::SVGAElement::defaultEventHandler):
   3132         (WebCore::SVGAElement::supportsFocus):
   3133         (WebCore::SVGAElement::isFocusable):
   3134         (WebCore::SVGAElement::isMouseFocusable):
   3135         (WebCore::SVGAElement::isKeyboardFocusable):
   3136         * ksvg2/svg/SVGAElement.h:
   3137 
   3138 2007-06-06  Eric Seidel  <eric (a] webkit.org>
   3139 
   3140         Reviewed by olliej.
   3141 
   3142         Make SVG (mostly) support CSS outline property (and thus focus rings)
   3143         http://bugs.webkit.org/show_bug.cgi?id=10849
   3144 
   3145         Test: svg/custom/focus-ring.svg
   3146 
   3147         * rendering/RenderPath.cpp:
   3148         (WebCore::RenderPath::paint):
   3149         (WebCore::RenderPath::addFocusRingRects):
   3150         * rendering/RenderPath.h:
   3151         * rendering/RenderSVGContainer.cpp:
   3152         (WebCore::RenderSVGContainer::paint):
   3153         (WebCore::RenderSVGContainer::addFocusRingRects):
   3154         * rendering/RenderSVGContainer.h:
   3155         * rendering/RenderSVGImage.cpp:
   3156         (WebCore::RenderSVGImage::paint):
   3157         (WebCore::RenderSVGImage::addFocusRingRects):
   3158         * rendering/RenderSVGImage.h:
   3159 
   3160 2007-06-06  Eric Seidel  <eric (a] webkit.org>
   3161 
   3162         Reviewed by weinig.
   3163         
   3164         Break out common SVG rendering logic into prepareToRenderSVGContent in SVGRenderSupport
   3165 
   3166         No test cases should be changed by this.
   3167 
   3168         * WebCore.xcodeproj/project.pbxproj:
   3169         * rendering/RenderPath.cpp:
   3170         (WebCore::fillAndStrokePath):
   3171         (WebCore::RenderPath::paint):
   3172         * rendering/RenderSVGContainer.cpp:
   3173         (WebCore::RenderSVGContainer::RenderSVGContainer):
   3174         (WebCore::RenderSVGContainer::requiresLayer):
   3175         (WebCore::RenderSVGContainer::isOutermostSVG):
   3176         (WebCore::RenderSVGContainer::layout):
   3177         (WebCore::RenderSVGContainer::applyContentTransforms):
   3178         (WebCore::RenderSVGContainer::paint):
   3179         (WebCore::RenderSVGContainer::viewportTransform):
   3180         (WebCore::RenderSVGContainer::absoluteTransform):
   3181         * rendering/RenderSVGContainer.h:
   3182         * rendering/RenderSVGImage.cpp:
   3183         (WebCore::RenderSVGImage::paint):
   3184         (WebCore::RenderSVGImage::translationForAttributes):
   3185         * rendering/SVGRenderSupport.cpp: Added.
   3186         (WebCore::prepareToRenderSVGContent):
   3187         * rendering/SVGRenderSupport.h: Added.
   3188         * rendering/SVGRootInlineBox.cpp:
   3189         (WebCore::prepareTextRendering):
   3190         (WebCore::SVGRootInlineBox::paint):
   3191         (WebCore::SVGRootInlineBox::paintInlineBoxes):
   3192 
   3193 2007-06-06  Rob Buis  <buis (a] kde.org>
   3194 
   3195         Reviewed by Eric.
   3196 
   3197         http://bugs.webkit.org/show_bug.cgi?id=13976
   3198         getPresentationAttribute not implemented
   3199 
   3200         Implement getPresentationAttribute.
   3201 
   3202         * ksvg2/svg/SVGStylable.h:
   3203         * ksvg2/svg/SVGStylable.idl:
   3204         * ksvg2/svg/SVGStyledElement.cpp:
   3205         (WebCore::SVGStyledElement::getPresentationAttribute):
   3206         * ksvg2/svg/SVGStyledElement.h:
   3207 
   3208 2007-06-06  Rob Buis  <buis (a] kde.org>
   3209 
   3210         Reviewed by olliej and eric.
   3211 
   3212         http://bugs.webkit.org/show_bug.cgi?id=12430
   3213         SVG has two transform parsers when it should have one.
   3214 
   3215         Refactor SVGTransformable parser so SVGAnimateTransformElement can reuse it better.
   3216 
   3217         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   3218         (WebCore::SVGAnimateTransformElement::calculateFromAndToValues):
   3219         * ksvg2/svg/SVGAnimateTransformElement.h:
   3220         * ksvg2/svg/SVGTransformable.cpp:
   3221         (WebCore::):
   3222         (WebCore::SVGTransformable::parseTransformValue):
   3223         (WebCore::SVGTransformable::parseTransformAttribute):
   3224         * ksvg2/svg/SVGTransformable.h:
   3225 
   3226 2007-06-05  Eric Seidel  <eric (a] webkit.org>
   3227 
   3228         Reviewed by olliej.
   3229 
   3230         Commit files missing from previous commit, oops!
   3231         
   3232         * platform/graphics/svg/SVGResourceMasker.cpp:
   3233         (WebCore::SVGResourceMasker::SVGResourceMasker):
   3234         (WebCore::SVGResourceMasker::invalidate):
   3235         * platform/graphics/svg/SVGResourceMasker.h:
   3236         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
   3237         (WebCore::SVGResourceMasker::applyMask):
   3238 
   3239 2007-06-01  Eric Seidel  <eric (a] webkit.org>
   3240 
   3241         Reviewed by olliej.
   3242 
   3243         Add support for maskUnits and maskContentUnits
   3244         http://bugs.webkit.org/show_bug.cgi?id=12568
   3245         
   3246         This is covered by the W3C tests (including mask-intro01)
   3247 
   3248         * ksvg2/svg/SVGMaskElement.cpp:
   3249         (WebCore::SVGMaskElement::SVGMaskElement):
   3250         (WebCore::SVGMaskElement::parseMappedAttribute):
   3251         (WebCore::SVGMaskElement::drawMaskerContent):
   3252         (WebCore::SVGMaskElement::canvasResource):
   3253         (WebCore::SVGMaskElement::notifyAttributeChange):
   3254         * ksvg2/svg/SVGMaskElement.h:
   3255         * ksvg2/svg/SVGMaskElement.idl:
   3256         * platform/graphics/svg/SVGResourceMasker.cpp:
   3257         (WebCore::SVGResourceMasker::SVGResourceMasker):
   3258         (WebCore::SVGResourceMasker::invalidate):
   3259         * platform/graphics/svg/SVGResourceMasker.h:
   3260         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
   3261         (WebCore::SVGResourceMasker::applyMask):
   3262 
   3263 2007-06-01  Eric Seidel  <eric (a] webkit.org>
   3264 
   3265         Reviewed by lars.
   3266         
   3267         Cursor does not change to hand over links containing <use>
   3268         http://bugs.webkit.org/show_bug.cgi?id=12630
   3269 
   3270         Test: manual-tests/svg-link-hover-use.svg
   3271 
   3272         * manual-tests/svg-link-hover-use.svg: Added.
   3273         * rendering/RenderLayer.cpp:
   3274         (WebCore::RenderLayer::hitTest): use eventParentNode instead of parentNode
   3275 
   3276 2007-06-01  Eric Seidel  <eric (a] webkit.org>
   3277 
   3278         Reviewed by olliej.
   3279 
   3280         SVG is not correctly respecting scroll during hit testing
   3281         http://bugs.webkit.org/show_bug.cgi?id=13083
   3282 
   3283         Test: svg/custom/scroll-hit-test.svg
   3284 
   3285         * rendering/RenderPath.cpp:
   3286         (WebCore::RenderPath::nodeAtPoint):
   3287         * rendering/RenderSVGContainer.cpp:
   3288         (WebCore::RenderSVGContainer::nodeAtPoint):
   3289 
   3290 2007-06-01  Eric Seidel  <eric (a] webkit.org>
   3291 
   3292         Reviewed by hyatt.
   3293 
   3294         Fix for: http://bugs.webkit.org/show_bug.cgi?id=12187
   3295 
   3296         Tests: fast/dom/attribute-case-sensitivity.html, fast/dom/attribute-case-sensitivity2.xhtml
   3297 
   3298         * dom/Element.cpp:
   3299         (WebCore::shouldIgnoreAttributeCase): check to make sure element is an HTMLElement
   3300         (WebCore::Element::getAttribute):
   3301         (WebCore::Element::setAttribute):
   3302         (WebCore::Element::removeAttribute):
   3303         (WebCore::Element::getAttributeNode):
   3304         (WebCore::Element::hasAttribute):
   3305         * dom/NamedAttrMap.cpp:
   3306         (WebCore::shouldIgnoreAttributeCase):
   3307         (WebCore::NamedAttrMap::getNamedItem):
   3308         (WebCore::NamedAttrMap::removeNamedItem):
   3309 
   3310 2007-05-31  Eric Seidel  <eric (a] webkit.org>
   3311 
   3312         Reviewed by Niko.
   3313 
   3314         Links are activated based on mouse down events instead of click events
   3315         http://bugs.webkit.org/show_bug.cgi?id=12570
   3316         
   3317         Test: svg/custom/prevent-default.svg
   3318 
   3319         * html/HTMLAnchorElement.cpp: use MiddleButton and RightButton instead of 1 and 2
   3320         (WebCore::HTMLAnchorElement::defaultEventHandler):
   3321         * ksvg2/svg/SVGAElement.cpp:
   3322         (WebCore::SVGAElement::defaultEventHandler): make it function more like the HTML side
   3323 
   3324 2007-05-30  Rob Buis  <buis (a] kde.org>
   3325 
   3326         Reviewed by Darin.
   3327 
   3328         http://bugs.webkit.org/show_bug.cgi?id=11272
   3329         Implement currentScale(), setCurrentScale() and currentTranslate() in SVGSVGElement
   3330 
   3331         Allow zooming and panning, thereby implementing the above methods.
   3332 
   3333         * ksvg2/svg/SVGDocument.cpp:
   3334         (WebCore::SVGDocument::zoomAndPanEnabled):
   3335         (WebCore::SVGDocument::startPan):
   3336         (WebCore::SVGDocument::updatePan):
   3337         * ksvg2/svg/SVGDocument.h:
   3338         * ksvg2/svg/SVGSVGElement.cpp:
   3339         (WebCore::SVGSVGElement::currentScale):
   3340         (WebCore::SVGSVGElement::setCurrentScale):
   3341         (WebCore::SVGSVGElement::currentTranslate):
   3342         (WebCore::SVGSVGElement::setCurrentTranslate):
   3343         * ksvg2/svg/SVGSVGElement.h:
   3344         * page/EventHandler.cpp:
   3345         (WebCore::EventHandler::EventHandler):
   3346         (WebCore::EventHandler::handleMousePressEvent):
   3347         (WebCore::EventHandler::handleMouseMoveEvent):
   3348         (WebCore::EventHandler::handleMouseReleaseEvent):
   3349         * page/EventHandler.h:
   3350         * page/Frame.cpp:
   3351         (WebCore::Frame::setZoomFactor):
   3352         * rendering/RenderSVGContainer.cpp:
   3353         (WebCore::RenderSVGContainer::layout):
   3354         (WebCore::RenderSVGContainer::paint):
   3355         (WebCore::RenderSVGContainer::absoluteTransform):
   3356 
   3357 2007-05-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3358 
   3359         Reviewed by Oliver.
   3360 
   3361         Fix regression: gradient on fill of text works again!
   3362 
   3363         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   3364         (WebCore::SVGPaintServerGradient::teardown):
   3365 
   3366 2007-05-29  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3367 
   3368         Reviewed by Oliver.
   3369 
   3370         Fix "jumpy" selection by correcting the way svgCharacterHitsPosition works.
   3371         I basically mixed up the "closest character to position" logic.
   3372 
   3373         * rendering/RenderSVGInlineText.cpp: Only call svgCharacterHitsPosition for the firstTextBox -> it handles all children anyway.
   3374         (WebCore::RenderSVGInlineText::positionForCoordinates):
   3375         * rendering/SVGInlineTextBox.cpp:
   3376         (WebCore::SVGInlineTextBox::closestCharacterToPosition): Fix logic - was really broken!
   3377         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
   3378         (WebCore::SVGInlineTextBox::nodeAtPoint): Do not use svgCharacterHitsPosition here - too accurate!
   3379                                                   We don't want to loose the 'text' cursor if one is just between two characters.
   3380 
   3381 2007-05-24  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3382 
   3383         Reviewed by Oliver.
   3384 
   3385         Add new code path dumping SVG text engine specific layout test results.
   3386         Finally the dumped results are actually accurate and respond to the
   3387         rendered glyphs. This has never been correct so far.
   3388 
   3389         * rendering/RenderTreeAsText.cpp:
   3390         (WebCore::quoteAndEscapeNonPrintables):
   3391         (WebCore::write):
   3392         * rendering/RenderTreeAsText.h:
   3393         * rendering/SVGInlineTextBox.h:
   3394         * rendering/SVGRenderTreeAsText.cpp:
   3395         (WebCore::operator<<):
   3396         (WebCore::containsInlineTextBox):
   3397         (WebCore::writeSVGInlineText):
   3398         (WebCore::write):
   3399         * rendering/SVGRenderTreeAsText.h:
   3400         * rendering/SVGRootInlineBox.cpp:
   3401         (WebCore::topLeftPositionOfCharacterRange):
   3402         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
   3403         (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
   3404         (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
   3405         * rendering/SVGRootInlineBox.h:
   3406 
   3407 2007-05-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   3408 
   3409         Reviewed by Oliver.
   3410 
   3411         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12698 (SVG text needs a special per-character layout mode.)
   3412 
   3413         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6420 (<text> does not respect x,y offset lists)
   3414         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6425 (<textPath> element not implemented)
   3415         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6481 (text-anchor (vertical) does not work in SVG text elements)
   3416         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11941 (REGRESSION: Missing text stroke in svg/W3C-SVG-1.1/text-deco-01-b.svg)
   3417         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12376 (glyph rotation in text/tspan not implemented)
   3418         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12377 (multiple dx and dy attributes not respected in text and tspan elements)
   3419         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12574 (<text> does not handle baseline-shift correctly)
   3420 
   3421         Introduce new experimental SVG text engine - after 5+ months of hacking.
   3422 
   3423         Add textPath support, absolute positioned SVG characters, vertical text,
   3424         text rotation, baseline-shift, text chunks spanning <tspan>'s etc.
   3425 
   3426         Check my Flickr page for screenshots: http://www.flickr.com/photos/43532360@N00 (a bit outdated)
   3427 
   3428         Fixes/Improvments:
   3429         - animate-elem-40-t.svg (x/y lists respected on <text> now)
   3430         - interact-cursor-01-f.svg (text-anchor correctly handled in <text><a> situations)
   3431         - struct-frag-05-t.svg (ditto)
   3432         - text-align-02-b.svg (baseline-shift recognized)
   3433         - text-align-04-b.svg (textPath displayed)
   3434         - text-align-05-b.svg (text-anchor & vertical text handled correctly)
   3435         - text-align-06-b.svg (baseline-shift & vertical text handled correctly)
   3436         - text-deco-01-b.svg (longstanding regression fixed for text-decoration)
   3437         - text-path-01-b.svg (all textPaths are displayed correctly)
   3438         - text-text-04-t.svg (all x/y/dx/dy list situations work fine now)
   3439         - text-text-05-t.svg (ditto)
   3440         - text-text-06-t.svg (ditto)
   3441         - text-text-07-t.svg (rotation works fine now)
   3442         - text-tspan-01-b.svg (per character placment works great in all situations)
   3443 
   3444         Most files using text-anchor show 0.5-1% differences because the shift offset calculation is more correct now.
   3445 
   3446         Regressions:    
   3447         - Gradient on fill is broken (on stroke works) -> this is a regression (easy to fix soon)
   3448           js-late-gradient-and-object-creation.svg & js-late-gradient-creation.svg & pservers-grad-08-b.svg & pservers-grad-11-b.svg are broken
   3449 
   3450         Complete list of missing things:
   3451         - 'textLength' / 'lengthAdjust' properties on <text>/<tspan> not yet handled.
   3452         - 'dominant-baseline / alignment-baseline missing (neither FF/Opera/Batik support this)
   3453         - 'kerning' property ignored
   3454         - 'glyph-orientation-vertical' / 'glyph-orientation-horizontal' not yet handled.
   3455         - Hebrew text selection broken (discontinous selection doesn't work)
   3456         - <textPath> doesn't yet participate in text selection
   3457         - <textPath> 'text-anchor' handling is flawed
   3458         - <textPath> doesn't yet handle 'method' / 'spacing' properties
   3459         - 'letter-spacing' / 'word-spacing' is still handled in the "legacy" mode. That means it only works
   3460           for simple cases -> won't work for textPath's for instance
   3461         - SVG fonts (<altGlyph>, <font> ..... tons more)
   3462 
   3463         * DerivedSources.make: Add DOM/JSSVGTextPathElement.h to build
   3464         * WebCore.xcodeproj/project.pbxproj: Add textPath related files to build
   3465         * css/svg.css: Correct white-space default setting for textPath element
   3466         * ksvg2/svg/SVGFEFloodElement.cpp: Missing include (experimental build was broken)
   3467         * ksvg2/svg/SVGTSpanElement.cpp: Recognize textPath children.
   3468         (WebCore::SVGTSpanElement::childShouldCreateRenderer):
   3469         * ksvg2/svg/SVGTextElement.cpp: Ditto.
   3470         (WebCore::SVGTextElement::childShouldCreateRenderer):
   3471         * ksvg2/svg/SVGTextPathElement.cpp: Added.
   3472         (WebCore::SVGTextPathElement::SVGTextPathElement):
   3473         (WebCore::SVGTextPathElement::~SVGTextPathElement):
   3474         (WebCore::SVGTextPathElement::parseMappedAttribute):
   3475         (WebCore::SVGTextPathElement::createRenderer):
   3476         (WebCore::SVGTextPathElement::childShouldCreateRenderer):
   3477         (WebCore::SVGTextPathElement::insertedIntoDocument):
   3478         (WebCore::SVGTextPathElement::buildPendingResource):
   3479         (WebCore::SVGTextPathElement::attach):
   3480         * ksvg2/svg/SVGTextPathElement.h: Added.
   3481         (WebCore::):
   3482         (WebCore::SVGTextPathElement::rendererIsNeeded):
   3483         (WebCore::SVGTextPathElement::contextElement):
   3484         * ksvg2/svg/SVGTextPathElement.idl: Added.
   3485         * ksvg2/svg/svgtags.in: Add textPath tag.
   3486         * rendering/InlineTextBox.cpp: Make two methods non static to share with SVG.
   3487         (WebCore::correctedTextColor):
   3488         (WebCore::updateGraphicsContext):
   3489         * rendering/InlineTextBox.h:
   3490         * rendering/RenderSVGInlineText.cpp: Special positionForCoordinates() implementation. Stub caretRect() for SVG.
   3491         (WebCore::RenderSVGInlineText::selectionRect):
   3492         (WebCore::RenderSVGInlineText::caretRect):
   3493         (WebCore::RenderSVGInlineText::positionForCoordinates):
   3494         * rendering/RenderSVGInlineText.h:
   3495         * rendering/RenderSVGTextPath.cpp: Added.
   3496         (WebCore::RenderSVGTextPath::RenderSVGTextPath):
   3497         (WebCore::RenderSVGTextPath::layoutPath):
   3498         (WebCore::RenderSVGTextPath::setLayoutPath):
   3499         (WebCore::RenderSVGTextPath::startOffset):
   3500         (WebCore::RenderSVGTextPath::setStartOffset):
   3501         (WebCore::RenderSVGTextPath::exactAlignment):
   3502         (WebCore::RenderSVGTextPath::setExactAlignment):
   3503         (WebCore::RenderSVGTextPath::stretchMethod):
   3504         (WebCore::RenderSVGTextPath::setStretchMethod):
   3505         (WebCore::RenderSVGTextPath::absoluteRects):
   3506         * rendering/RenderSVGTextPath.h: Added.
   3507         (WebCore::RenderSVGTextPath::renderName):
   3508         * rendering/RenderText.cpp: Fix indention and use StringImpl::empty() instead of creating an empty string manually.
   3509         (WebCore::RenderText::setTextInternal):
   3510         * rendering/RootInlineBox.h: Add virtual no-op computePerCharacterLayoutInformation().
   3511         (WebCore::RootInlineBox::computePerCharacterLayoutInformation):
   3512         * rendering/SVGCharacterLayoutInfo.cpp: Added.
   3513         (WebCore::calculateBaselineShift):
   3514         (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo):
   3515         (WebCore::SVGCharacterLayoutInfo::xValueAvailable):
   3516         (WebCore::SVGCharacterLayoutInfo::yValueAvailable):
   3517         (WebCore::SVGCharacterLayoutInfo::dxValueAvailable):
   3518         (WebCore::SVGCharacterLayoutInfo::dyValueAvailable):
   3519         (WebCore::SVGCharacterLayoutInfo::angleValueAvailable):
   3520         (WebCore::SVGCharacterLayoutInfo::baselineShiftValueAvailable):
   3521         (WebCore::SVGCharacterLayoutInfo::xValueNext):
   3522         (WebCore::SVGCharacterLayoutInfo::yValueNext):
   3523         (WebCore::SVGCharacterLayoutInfo::dxValueNext):
   3524         (WebCore::SVGCharacterLayoutInfo::dyValueNext):
   3525         (WebCore::SVGCharacterLayoutInfo::angleValueNext):
   3526         (WebCore::SVGCharacterLayoutInfo::baselineShiftValueNext):
   3527         (WebCore::SVGCharacterLayoutInfo::processedSingleCharacter):
   3528         (WebCore::SVGCharacterLayoutInfo::processedChunk):
   3529         (WebCore::SVGCharacterLayoutInfo::nextPathLayoutPointAndAngle):
   3530         (WebCore::SVGCharacterLayoutInfo::inPathLayout):
   3531         (WebCore::SVGCharacterLayoutInfo::setInPathLayout):
   3532         (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
   3533         (WebCore::SVGCharacterLayoutInfo::addStackContent):
   3534         (WebCore::SVGCharacterLayoutInfo::xStackWalk):
   3535         (WebCore::SVGCharacterLayoutInfo::yStackWalk):
   3536         (WebCore::SVGCharacterLayoutInfo::dxStackWalk):
   3537         (WebCore::SVGCharacterLayoutInfo::dyStackWalk):
   3538         (WebCore::SVGCharacterLayoutInfo::angleStackWalk):
   3539         (WebCore::SVGCharacterLayoutInfo::baselineShiftStackWalk):
   3540         * rendering/SVGCharacterLayoutInfo.h: Added.
   3541         (WebCore::PositionedVector::Type):
   3542         (WebCore::PositionedVector::position):
   3543         (WebCore::PositionedVector::advance):
   3544         (WebCore::PositionedVector::valueAtCurrentPosition):
   3545         (WebCore::SVGCharacterLayoutInfo::):
   3546         (WebCore::SVGInlineBoxCharacterRange::SVGInlineBoxCharacterRange):
   3547         (WebCore::SVGInlineBoxCharacterRange::isOpen):
   3548         (WebCore::SVGInlineBoxCharacterRange::isClosed):
   3549         (WebCore::SVGTextChunk::SVGTextChunk):
   3550         (WebCore::SVGTextChunkLayoutInfo::SVGTextChunkLayoutInfo):
   3551         * rendering/SVGInlineFlowBox.cpp: Make all methods no-ops when using the new text engine.
   3552         (WebCore::SVGInlineFlowBox::paint):
   3553         (WebCore::SVGInlineFlowBox::placeBoxesHorizontally):
   3554         (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
   3555         * rendering/SVGInlineFlowBox.h:
   3556         * rendering/SVGInlineTextBox.cpp: Add new text selection / character hit detection related code.
   3557         (WebCore::SVGInlineTextBox::SVGInlineTextBox):
   3558         (WebCore::SVGInlineTextBox::selectionTop):
   3559         (WebCore::SVGInlineTextBox::svgRootInlineBox):
   3560         (WebCore::SVGInlineTextBox::closestCharacterToPosition):
   3561         (WebCore::SVGInlineTextBox::svgCharacterHitsPosition):
   3562         (WebCore::SVGInlineTextBox::offsetForPosition):
   3563         (WebCore::SVGInlineTextBox::positionForOffset):
   3564         (WebCore::SVGInlineTextBox::nodeAtPoint):
   3565         (WebCore::SVGInlineTextBox::selectionRect):
   3566         * rendering/SVGInlineTextBox.h:
   3567         * rendering/SVGRootInlineBox.cpp: The heart of the new text engine lives here.
   3568         (WebCore::prepareTextRendering):
   3569         (WebCore::isVerticalWritingMode):
   3570         (WebCore::SVGRootInlineBox::paint):
   3571         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
   3572         (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
   3573         (WebCore::SVGRootInlineBox::cummulatedWidthOfSelectionRange):
   3574         (WebCore::cummulatedWidthOfInlineBoxCharacterRange):
   3575         (WebCore::cummulatedWidthOfTextChunk):
   3576         (WebCore::cummulatedHeightOfTextChunk):
   3577         (WebCore::applyTextAnchorToTextChunk):
   3578         (WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
   3579         (WebCore::totalAdvanceOfInlineTextBox):
   3580         (WebCore::totalAdvanceOfInlineBox):
   3581         (WebCore::SVGRootInlineBox::buildLayoutInformation):
   3582         (WebCore::SVGRootInlineBox::layoutInlineBoxes):
   3583         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
   3584         (WebCore::SVGRootInlineBox::buildTextChunks):
   3585         (WebCore::SVGRootInlineBox::svgTextChunks):
   3586         (WebCore::SVGRootInlineBox::layoutTextChunks):
   3587         (WebCore::SVGRootInlineBox::paintSelectionForTextBox):
   3588         (WebCore::SVGRootInlineBox::paintInlineBoxes):
   3589         (WebCore::SVGRootInlineBox::paintCharacterRangeForTextBox):
   3590         * rendering/SVGRootInlineBox.h:
   3591         * rendering/bidi.cpp: Call the new computePerCharacterLayoutInformation() method.
   3592         (WebCore::RenderBlock::layoutInlineChildren):
   3593 
   3594 2007-05-10  Eric Seidel  <eric (a] webkit.org>
   3595 
   3596         Reviewed by olliej.
   3597 
   3598         http://bugs.webkit.org/show_bug.cgi?id=11931
   3599         PathCG fails to hit on unclosed sub-paths
   3600 
   3601         Test: svg/custom/hit-test-unclosed-subpaths.svg
   3602 
   3603         * platform/graphics/cg/PathCG.cpp:
   3604         (WebCore::copyClosingSubpathsApplierFunction):
   3605         (WebCore::copyCGPathClosingSubpaths):
   3606         (WebCore::Path::contains): use new copy & close function
   3607 
   3608 === End merge of feature-branch 2007-10-12 ===
   3609 
   3610 2007-10-11  Jon Honeycutt  <jhoneycutt (a] apple.com>
   3611 
   3612         Reviewed by Anders.
   3613 
   3614         Handle a race condition that could arise if a plugin was loaded while it
   3615         was scheduled to be freed: check whether the timer that schedules
   3616         library frees is active in PluginPackageWin::load().
   3617 
   3618         * plugins/win/PluginPackageWin.cpp:
   3619         (WebCore::PluginPackageWin::freeLibrarySoon): Added assertions
   3620         (WebCore::PluginPackageWin::freeLibraryTimerFired): Added assertion
   3621         (WebCore::PluginPackageWin::load): If we are scheduled to free this
   3622         library, cancel the timer, and don't call LoadLibrary
   3623 
   3624 2007-10-11  Justin Garcia  <justin.garcia (a] apple.com>
   3625 
   3626         Reviewed by Harrison.
   3627 
   3628         <rdar://problem/5483567> REGRESSION (Tiger only): Pasting words copied from TextEdit in Mail adds extra newline
   3629         
   3630         * editing/ReplaceSelectionCommand.cpp:
   3631         (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds): Added.
   3632         We would like to insert the fragment as-is if possible, but AppKit on Tiger
   3633         creates fragments from RTF data that have carriage returns and spaces at the
   3634         beginning and end, and those need to be removed since they'll interfere with 
   3635         paragraph merging.
   3636         (WebCore::ReplaceSelectionCommand::doApply):
   3637         * editing/ReplaceSelectionCommand.h:
   3638 
   3639 2007-10-10  Justin Garcia  <justin.garcia (a] apple.com>
   3640 
   3641         Reviewed by Maciej.
   3642         
   3643         <rdar://problem/5521237> Pasting a word copied from TextEdit after a regular, breaking space, adds a leading newline
   3644         
   3645         * editing/CompositeEditCommand.cpp:
   3646         (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit):
   3647         Fixed a typo.
   3648 
   3649 2007-10-10  Jon Honeycutt  <jhoneycutt (a] apple.com>
   3650 
   3651         Reviewed by Darin.
   3652 
   3653         <rdar://5530519> REGRESSION (303-310A18): Crash when closing tab with
   3654         pdf file (Reader 7 only)
   3655 
   3656         Reader 7 subclasses its parent window, so posting a WM_DESTROY to this
   3657         window puts us in plugin code. When the plugin forwards the message
   3658         back to the original window proc, and we free the plugin library from
   3659         there, we will jump back to code we just freed when we return, so delay 
   3660         calling FreeLibrary at least until the next message loop
   3661 
   3662         * plugins/win/PluginPackageWin.cpp:
   3663         (WebCore::PluginPackageWin::freeLibrarySoon): Start a timer to free the
   3664         plugin library
   3665         (WebCore::PluginPackageWin::freeLibraryTimerFired): Free the library
   3666         (WebCore::PluginPackageWin::PluginPackageWin): Initialize the timer that
   3667         will free this library
   3668         (WebCore::PluginPackageWin::unloadWithoutShutdown): Call
   3669         freeLibrarySoon()
   3670         * plugins/win/PluginPackageWin.h: Added m_freeLibraryTimer
   3671 
   3672 2007-10-11  Ada Chan  <adachan (a] apple.com>
   3673 
   3674         <rdar://problem/5534421> 
   3675         Switched to using wkGetDefaultHTTPCookieStorage() and removed some cookie-related
   3676         methods we no longer need in ResourceHandle.
   3677         
   3678         <rdar://problem/5244261> "Never" cookie policy was ignored on windows
   3679         Need to set the cookie accept policy on each CFURLRequest.
   3680         
   3681         Reviewed by Oliver.
   3682 
   3683         * platform/network/ResourceHandle.h:
   3684         * platform/network/cf/ResourceHandleCFNet.cpp:
   3685         (WebCore::makeFinalRequest):
   3686         * platform/network/cf/ResourceRequestCFNet.cpp:
   3687         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   3688         * platform/network/win/CookieJarWin.cpp:
   3689         (WebCore::setCookies):
   3690         (WebCore::cookies):
   3691         (WebCore::cookiesEnabled):
   3692 
   3693 2007-10-11  Mark Rowe  <mrowe (a] apple.com>
   3694 
   3695         Reviewed by Tim Hatcher.
   3696 
   3697         Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
   3698         PowerPC to prevent a huge STABS section from being generated.
   3699 
   3700         * Configurations/Base.xcconfig:
   3701 
   3702 2007-10-11  Lars Knoll  <lars (a] trolltech.com>
   3703 
   3704         Reviewed by Erik Seidel and Simon.
   3705 
   3706         Ensure that setting innerHTML on an element doesn't do
   3707         weird things with the document.
   3708         Fixes most issues with http://bugs.webkit.org/show_bug.cgi?id=15456
   3709 
   3710         Test: fast/innerHTML/innerHTML-changing-document-properties.xhtml
   3711 
   3712         * dom/XMLTokenizer.cpp:
   3713         (WebCore::XMLTokenizer::write):
   3714         (WebCore::XMLTokenizer::startDocument):
   3715         (WebCore::XMLTokenizer::end):
   3716         (WebCore::):
   3717 
   3718 2007-10-10  George Staikos  <staikos (a] kde.org>
   3719 
   3720         Reviewed by Adam Roben.
   3721 
   3722         Fix Qt build on Win32 with VS2005.
   3723 
   3724         * loader/FTPDirectoryDocument.cpp:
   3725         (WebCore::processFileDateString):
   3726         * loader/FTPDirectoryParser.cpp:
   3727         (WebCore::parseOneFTPLine):
   3728 
   3729 2007-10-10  Alice Liu  <alice.liu (a] apple.com>
   3730 
   3731         Reviewed by Geoff Garen.
   3732 
   3733         Fixed <rdar://5464402> Crash when running fast/frames/onload-remove-iframe-crash.html in DRT
   3734         createFrame() now returns a RefPtr instead of a raw Frame pointer. 
   3735         Making this change improves the way we handle frames on Windows webkit. 
   3736 
   3737         * loader/FrameLoader.cpp:
   3738         (WebCore::FrameLoader::loadSubframe):
   3739         * loader/FrameLoaderClient.h:
   3740         * platform/graphics/svg/SVGImageEmptyClients.h:
   3741         (WebCore::SVGEmptyFrameLoaderClient::createFrame):
   3742 
   3743 2007-10-10  Simon Hausmann  <hausmann (a] kde.org>
   3744 
   3745         Reviewed by Lars.
   3746 
   3747         Fix compilation using gcc 4.3. Header files have been reorganized and as a result some extra
   3748         includes are needed for INT_MAX, std::auto_ptr and the like.
   3749 
   3750         WARNING: NO TEST CASES ADDED OR CHANGED
   3751 
   3752         * bridge/AXObjectCache.h:
   3753         * ksvg2/misc/SVGDocumentExtensions.h:
   3754         * platform/Base64.cpp:
   3755         * platform/graphics/svg/SVGPaintServerPattern.h:
   3756         * platform/graphics/svg/SVGResourceMasker.h:
   3757 
   3758 2007-10-08  Sam Weinig  <sam (a] webkit.org>
   3759 
   3760         Reviewed by Steve Falkenburg.
   3761 
   3762         Fix for <rdar://problem/5519698> CrashTracer: [USER] 47 crashes in Safari at com.apple.WebCore: WebCore::XMLTokenizer::lineNumber const + 9
   3763 
   3764         Test: fast/innerHTML/innerHTML-script-tag-crash.xhtml
   3765 
   3766         * dom/XMLTokenizer.cpp:
   3767         (WebCore::XMLTokenizer::lineNumber): Return 1 when there is no context.
   3768         (WebCore::XMLTokenizer::columnNumber): ditto.
   3769 
   3770 2007-10-08  Adam Roben  <aroben (a] apple.com>
   3771 
   3772         Fix Bug 15305: Crash when dragging an image when "load images automatically" preference is off
   3773 
   3774         http://bugs.webkit.org/show_bug.cgi?id=15305
   3775         <rdar://problem/5524774>
   3776 
   3777         Reviewed by Eric Seidel.
   3778 
   3779         No test possible: to reproduce this you have to change a WebKit
   3780         preference and reload the page. See
   3781         http://bugs.webkit.org/show_bug.cgi?id=15414
   3782 
   3783         * platform/win/ClipboardWin.cpp:
   3784         (WebCore::createGlobalImageFileDescriptor): ASSERT that we have an
   3785         image and that it has a SharedBuffer.
   3786         (WebCore::writeImageToDataObject): The fix: null-check imageBuffer.
   3787 
   3788 2007-10-05  Geoffrey Garen  <ggaren (a] apple.com>
   3789 
   3790         Reviewed by Sam Weinig.
   3791         
   3792         New fix for <rdar://problem/5522487> REGRESSION: With JavaScript 
   3793         disabled, any page load causes a crash in PropertyMap::put
   3794         
   3795         Explicitly remove the "document" property from the window. The old 
   3796         solution would leave a stale "document" property around after JavaScript
   3797         was re-enabled.
   3798 
   3799         The architecture for disabling JavaScript could use some consolidation. 
   3800         It seems wrong that a script proxy even exists when JavaScript is 
   3801         disabled. It also seems wrong that so many individual call sites are 
   3802         responsible for checking whether JavaScript is enabled. I've filed a 
   3803         bug about this: http://bugs.webkit.org/show_bug.cgi?id=15385.
   3804 
   3805         * bindings/js/kjs_proxy.cpp:
   3806         (WebCore::KJSProxy::clearDocumentWrapper):
   3807         * bindings/js/kjs_proxy.h:
   3808         * page/Frame.cpp:
   3809         (WebCore::Frame::setDocument):
   3810 
   3811 2007-10-05  Jon Honeycutt  <jhoneycutt (a] apple.com>
   3812 
   3813         Reviewed by Anders.
   3814 
   3815         <rdar://5520913> Ticketmaster.com doesn't display correctly (Flash
   3816         related?)
   3817 
   3818         The plugin is requesting files that don't exist on the server, and
   3819         we are passing the 404 error page to the plugin. This change cancels the
   3820         stream if the response code indicates a failure.
   3821 
   3822         This is a port of the safari / mac code.
   3823 
   3824         * loader/win/NetscapePlugInStreamLoaderWin.cpp:
   3825         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse): If the
   3826         response code indicates a failure, cancel the stream
   3827 
   3828 2007-10-05  Geoffrey Garen  <ggaren (a] apple.com>
   3829 
   3830         Reviewed by Sam Weinig.
   3831         
   3832         Fixed <rdar://problem/5522487> REGRESSION: With JavaScript disabled, 
   3833         any page load causes a crash in PropertyMap::put
   3834         
   3835         The problem was that we were using JavaScript when JavaScript was
   3836         disabled. The architecture for disabling JavaScript could use some
   3837         consolidation, but this is the simplest, safest change for now.
   3838         
   3839         Currently passing layout tests still pass.
   3840 
   3841         * bindings/js/kjs_proxy.cpp:
   3842         (WebCore::KJSProxy::updateDocumentWrapper):
   3843 
   3844 2007-10-04  Beth Dakin  <bdakin (a] apple.com>
   3845 
   3846         Reviewed by John Sullivan.
   3847 
   3848         Fix for <rdar://problem/5441823> REGRESSION (r25142, Tiger only): 
   3849         Vertical scroll bar not redrawn properly when going back in history 
   3850         (15033)
   3851 
   3852         This fix if-defs r25142 to be Leopard-only since it causes 
   3853         correctness issues on Tiger and does not seem to have any 
   3854         performance impact on Tiger either.
   3855 
   3856         * loader/FrameLoader.cpp:
   3857         (WebCore::FrameLoader::transitionToCommitted):
   3858 
   3859 2007-10-05  Ada Chan  <adachan (a] apple.com>
   3860 
   3861         <rdar://problem/5436617> Favicons sometimes don't show up even when they are
   3862         in the database
   3863         - A client can try to retain an icon for a page before the database is actually
   3864         opened.  Since isOpened() is not a requirement to retain an icon, remove the check
   3865         for that.  Instead, we'll check to make sure whether this database is enabled
   3866         before proceeding.
   3867 
   3868         Reviewed by Brady.
   3869 
   3870         * loader/icon/IconDatabase.cpp:
   3871         (WebCore::IconDatabase::retainIconForPageURL):
   3872         (WebCore::IconDatabase::releaseIconForPageURL): only check isOpen() before we
   3873         schedule for a sync.
   3874 
   3875 2007-10-05  Lars Knoll  <lars (a] trolltech.com>
   3876 
   3877         Reviewed by olliej.
   3878 
   3879         fix a hang in editing/selection/extend-by-word-002.html
   3880 
   3881         * platform/qt/TextBreakIteratorQt.cpp:
   3882         (WebCore::CharBreakIteratorQt::next):
   3883         (WebCore::characterBreakIterator):
   3884 
   3885 2007-10-04  Mark Rowe  <mrowe (a] apple.com>
   3886 
   3887         Reviewed by Oliver.
   3888 
   3889         Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
   3890         The "full" level appears to offer no observable benefits even though the documentation
   3891         suggests it be used for dead code stripping.  This should also decrease link times.
   3892 
   3893         * Configurations/Base.xcconfig:
   3894 
   3895 2007-10-04  Adele Peterson  <adele (a] apple.com>
   3896 
   3897         Reviewed by Darin.
   3898 
   3899         WebCore part of fix for <rdar://problem/5369017> REGRESSION: Can't tab to webview that doesn't have editable content
   3900 
   3901         * page/FocusController.h: Added FocusDirection argument.
   3902         * page/FocusController.cpp: (WebCore::FocusController::setInitialFocus):
   3903           Use FocusDirection argument instead of key modifiers to send direction to advanceFocus.
   3904         * WebCore.exp: Updated symbol.
   3905 
   3906 2007-10-04  Kevin Decker  <kdecker (a] apple.com>
   3907 
   3908         Reviewed by John.
   3909         
   3910         <rdar://problems/5516309>
   3911         
   3912         * page/FrameView.cpp:
   3913         (WebCore::FrameView::updateControlTints): Avoid the expense of updating tints on controls for the
   3914         empty-window case since this can take a significant amount of time even on windows that have no
   3915         content at all. Note this fix specifically optimizes the empty window/tab case; for a more broad
   3916         fix John wrote up rdar://problem/5521050.
   3917 
   3918 2007-10-04  Darin Adler  <darin (a] apple.com>
   3919 
   3920         * page/Frame.h: Put functions into categories to indicate other classes
   3921         we'd like to move them into in the future. Just organizational -- no code
   3922         change.
   3923 
   3924 2007-10-04  Lars Knoll  <lars (a] trolltech.com>
   3925 
   3926         Reviewed by maciej.
   3927 
   3928         fix a crash in the FrameLoader that can happen under certain
   3929         conditions in the Qt port.
   3930 
   3931         Test: fast/loader/iframe-crash-on-missing-image.xhtml
   3932 
   3933         * loader/FrameLoader.cpp:
   3934         (WebCore::FrameLoader::receivedMainResourceError):
   3935 
   3936 2007-10-03  Alp Toker  <alp (a] atoker.com>
   3937 
   3938         Reviewed by Adam.
   3939 
   3940         http://bugs.webkit.org/show_bug.cgi?id=14726
   3941         [gtk] API design. Mapping the WebView delegates to signals.
   3942 
   3943         Change the API namespace of the Gtk+ port from 'WebKitGtk' to 'WebKit'.
   3944 
   3945         * WebCore.pro:
   3946 
   3947 2007-10-03  Alp Toker  <alp (a] atoker.com>
   3948 
   3949         Reviewed by Eric.
   3950 
   3951         http://bugs.webkit.org/show_bug.cgi?id=14129
   3952         [CAIRO] Support the canvas element
   3953 
   3954         Add a new canvas implementation using Cairo for rendering.
   3955 
   3956         * html/CanvasGradient.cpp:
   3957         (WebCore::CanvasGradient::CanvasGradient):
   3958         (WebCore::CanvasGradient::~CanvasGradient):
   3959         (WebCore::CanvasGradient::addColorStop):
   3960         (WebCore::CanvasGradient::platformShading):
   3961         * html/CanvasGradient.h:
   3962         * html/CanvasRenderingContext2D.cpp:
   3963         (WebCore::CanvasRenderingContext2D::setFillStyle):
   3964         (WebCore::CanvasRenderingContext2D::fill):
   3965         (WebCore::CanvasRenderingContext2D::stroke):
   3966         (WebCore::CanvasRenderingContext2D::fillRect):
   3967         (WebCore::CanvasRenderingContext2D::drawImage):
   3968         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
   3969         * html/CanvasStyle.cpp:
   3970         (WebCore::CanvasStyle::applyStrokeColor):
   3971         * html/HTMLCanvasElement.cpp:
   3972         (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
   3973         (WebCore::HTMLCanvasElement::reset):
   3974         (WebCore::HTMLCanvasElement::paint):
   3975         (WebCore::HTMLCanvasElement::createDrawingContext):
   3976         (WebCore::HTMLCanvasElement::createPlatformImage):
   3977         * html/HTMLCanvasElement.h:
   3978 
   3979 2007-10-03  Lars Knoll  <lars (a] trolltech.com>
   3980 
   3981         Signed off by olliej.
   3982 
   3983         move WebKitQt to WebKit/qt for consistency with the other ports.
   3984 
   3985         WARNING: NO TEST CASES ADDED OR CHANGED
   3986 
   3987         * WebCore.pro:
   3988 
   3989 2007-10-02  Sam Weinig  <sam (a] webkit.org>
   3990 
   3991         Reviewed by Oliver and Adam.
   3992 
   3993         Patch for <rdar://problem/5506968> Fail to DnD local file with non-ascii character in path from desktop to Safari (can open it with file menu)
   3994 
   3995         Use CoreFoundation to do the conversion from path to URL, as the Windows API was not
   3996         correctly converting to UTF-8 and we know CFURL will.
   3997 
   3998         * platform/win/ClipboardUtilitiesWin.cpp:
   3999         (WebCore::urlFromPath):
   4000         (WebCore::getURL):
   4001 
   4002 2007-10-02  Tristan O'Tierney  <tristan (a] apple.com>
   4003 
   4004         Reviewed by Darin Adler.
   4005 
   4006         <rdar://problem/5511842> REGRESSION: Webkit stops responding while loading Apple Store Canada page (15304)
   4007         
   4008         Included the NSSynchronousURLConnection_PrivateMode mode, in addition to the default run loop modes
   4009         as an acceptable mode when using performSelectorOnMainThread with our syncronous url callbacks.
   4010 
   4011         * platform/network/mac/ResourceHandleMac.mm:
   4012         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   4013         Added NSSynchronousURLConnection_PrivateMode to the list of accepted modes.
   4014 
   4015 2007-10-02  Darin Adler  <darin (a] apple.com>
   4016 
   4017         Reviewed by Adam.
   4018 
   4019         - add support for GDI objects to OwnPtr; I plan to use this
   4020           to fix some GDI handle leaks
   4021 
   4022         * css/CSSGrammar.y: Change parser to avoid macro that conflicts
   4023         with macro defined in Windows system headers: FLOAT. This is needed
   4024         because OwnPtr.h will now include <windows.h>.
   4025         * css/CSSParser.cpp: (WebCore::CSSParser::lex): Ditto.
   4026         * css/tokenizer.flex: Ditto.
   4027 
   4028         * platform/win/CursorWin.cpp: (WebCore::Cursor::Cursor):
   4029         Use OwnPtr for a few HBITMAP objects as a test case.
   4030 
   4031         * platform/win/COMPtr.h: (COMPtr::COMPtr): Fix so that we can use
   4032         Query with other COMPtr. Before this would not compile if it was
   4033         ever instantiated.
   4034 
   4035 2007-10-02  Steve Falkenburg  <sfalken (a] apple.com>
   4036 
   4037         Reviewed by Adam, Ada.
   4038 
   4039         Fix leak of GDI handle when we call MLANG.
   4040 
   4041         * platform/win/FontCacheWin.cpp:
   4042         (WebCore::FontCache::getFontDataForCharacters):
   4043 
   4044 2007-10-02  Lars Knoll  <lars (a] trolltech.com>
   4045 
   4046         Reviewed by Olliej.
   4047 
   4048         The cookies() method should only return the value of the
   4049         cookie, not additional info such as the expiration date.
   4050 
   4051         * platform/qt/CookieJarQt.cpp:
   4052         (WebCore::cookies):
   4053 
   4054 2007-10-01  Lars Knoll  <lars (a] trolltech.com>
   4055 
   4056         Reviewed by Eric.
   4057 
   4058         Fix a wrong extension mapping in the MIMETypeRegistry and identify about: url's as frames in the FrameLoaderClient.
   4059 
   4060         * platform/qt/MIMETypeRegistryQt.cpp:
   4061         (WebCore::):
   4062 
   4063 2007-10-01  Justin Garcia  <justin.garcia (a] apple.com>
   4064 
   4065         Reviewed by Harrison.
   4066 
   4067         <rdar://problem/5516183> REGRESSION: Creating a ToDo on an incoming message fails
   4068         
   4069         Rolling out r25721.
   4070 
   4071         * editing/ReplaceSelectionCommand.cpp:
   4072         (WebCore::ReplaceSelectionCommand::doApply):
   4073         * editing/ReplaceSelectionCommand.h:
   4074 
   4075 2007-10-01  Beth Dakin  <bdakin (a] apple.com>
   4076 
   4077         Reviewed by Adam.
   4078 
   4079         Fix for <rdar://problem/5515426> NetNewsWire 3 crashes at launch in 
   4080         WebCore::FrameView::layout (other repro scenarios too)
   4081 
   4082         The new call to updateWidget() that we added to FrameView::layout() 
   4083         can destroy the RenderPartObject. And so we were crashing on the 
   4084         subsequent call to updateWidgetPosition(). This patch fixes that by 
   4085         checking to make sure the RenderPartObject is still in the HashSet 
   4086         after updateWidget(). Because m_widgetUpdateSet can be modified 
   4087         during the call to updateWidget(), we need it to be intact while we 
   4088         are iterating through the copy, so we cannot use the HashSet::swap 
   4089         call we were using before. This patch instead uses a Vector to 
   4090         iterate through the HashSet data and calls clear() on the HashSet 
   4091         at the end.
   4092 
   4093         * page/FrameView.cpp:
   4094         (WebCore::FrameView::layout):
   4095 
   4096 2007-10-01  Eli Fidler  <eli (a] staikos.net>
   4097 
   4098         Reviewed by George Staikos.
   4099 
   4100         Switch bogus assert to a conditional and return.  This case happens
   4101         when a widget is hidden.
   4102 
   4103         * platform/qt/WidgetQt.cpp:
   4104         (WebCore::Widget::invalidateRect):
   4105 
   4106 2007-09-30  Darin Adler  <darin (a] apple.com>
   4107 
   4108         Reviewed by Maciej.
   4109 
   4110         - tone down the assertion I asked Harrison to include in his fix for
   4111           <rdar://problem/5511128>; it's OK to re-ref and deref the document
   4112           as long as you do so after the children are done being destroyed
   4113 
   4114         No effect on release builds. Assertion change only.
   4115 
   4116         Besides the changes listed below, renamed m_hasDeleted flag to
   4117         m_deletionHasBegun.
   4118 
   4119         * dom/ContainerNode.cpp: (WebCore::ContainerNode::removeAllChildren):
   4120         Added code to set the m_deletionHasBegun flag and some assertions
   4121         that test its state.
   4122 
   4123         * dom/Document.h: Removed m_hasDeleted -- we now use m_deletionHasBegun
   4124         in the base class TreeShared.
   4125         * dom/Document.cpp:
   4126         (WebCore::Document::Document): Removed initialization of m_hasDeleted.
   4127         (WebCore::Document::removedLastRef): Added code to clear
   4128         m_inRemovedLastRefFunction if we end up deciding not to delete this.
   4129 
   4130         * platform/Shared.h:
   4131         (WebCore::TreeShared::TreeShared): Added m_deletionHasBegun in addition to
   4132         m_inRemovedLastRefFunction (formerly named m_hasRemovedLastRef).
   4133         (WebCore::TreeShared::~TreeShared): Assert that m_deletionHasBegun is true.
   4134         (WebCore::TreeShared::ref): Assert neither flag is true.
   4135         (WebCore::TreeShared::deref): Ditto.
   4136         (WebCore::TreeShared::hasOneRef): Ditto.
   4137         (WebCore::TreeShared::removedLastRef): Made private. Added code to
   4138         set m_hasDeleted to true. Also removed cast; since this class template
   4139         has a virtual destructor, we don't need to cast before calling delete.
   4140 
   4141 2007-09-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   4142 
   4143         Reviewed by Mark.
   4144 
   4145         -Fix http://bugs.webkit.org/show_bug.cgi?id=13226.
   4146         Remove Bakefiles from svn.
   4147 
   4148         * Projects/gdk/webcore-gdk.bkl: Removed.
   4149         * Projects/wx/webcore-wx.bkl: Removed.
   4150         * WebCoreSources.bkl: Removed.
   4151         * webcore-base.bkl: Removed.
   4152 
   4153 2007-09-28  Jan Michael Alonzo  <jmalonzo (a] unpluggable.com>
   4154 
   4155         Reviewed by Mark.
   4156 
   4157         -Fix http://bugs.webkit.org/show_bug.cgi?id=15254.
   4158 
   4159         * platform/gtk/RenderThemeGtk.cpp:
   4160         (WebCore::RenderThemeGtk::determineState):
   4161             - Apply state if control is readonly
   4162             - Added state GTK_STATE_SELECTED of object is checked
   4163             - Apply GTK_STATE_ACTIVE if RenderObject isFocused()
   4164         (WebCore::RenderThemeGtk::paintTextField):
   4165         (WebCore::RenderThemeGtk::gtkEntry):
   4166             - Implemented theme-aware text field based on gtk/gtkentry.c implementation
   4167 
   4168 2007-09-29  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   4169 
   4170         Reviewed by Eric.
   4171 
   4172         Build fix for Mac Gtk+ and Qt builds. In revision 25798 changing
   4173         XSLTProcessor.cpp was forgotten.
   4174 
   4175         * xml/XSLTProcessor.cpp: Use PLATFORM(MAC) instead of PLATFORM(DARWIN)
   4176 
   4177 2007-09-29  Adam Roben  <aroben (a] apple.com>
   4178 
   4179         Fix <rdar://4965715> Horizontal scrollwheel scrolling moves in opposite direction on Vista
   4180 
   4181         Reviewed by Sam.
   4182 
   4183         No regression test possible.
   4184 
   4185         * platform/win/WheelEventWin.cpp:
   4186         (WebCore::PlatformWheelEvent::PlatformWheelEvent): Use a negative
   4187         delta when scrolling right to match EventHandler's expectations (which
   4188         are based on AppKit).
   4189 
   4190 2007-09-28  Kevin Decker  <kdecker (a] apple.com>
   4191 
   4192         Reviewed by Mark Rowe
   4193 
   4194         Build fix for Mac Gtk+ and Qt builds.
   4195         
   4196         * xml/XSLStyleSheet.cpp: Use PLATFORM(MAC) instead of PLATFORM(DARWIN)
   4197         * xml/XSLTExtensions.cpp: Ditto.
   4198 
   4199 2007-09-28  David Harrison  <harrison (a] apple.com>
   4200 
   4201         Reviewed by Darin Adler.
   4202 
   4203         <rdar://problem/5511128> Crash closing or reloading this SVG
   4204 
   4205         * dom/ContainerNode.cpp:
   4206         (WebCore::dispatchChildInsertionEvents):
   4207         (WebCore::dispatchChildRemovalEvents):
   4208         Use DocPtr instead of RefPtr, since these events are dispatched
   4209         when the Document is being being torn down by removedLastRef().
   4210 
   4211         * dom/DocPtr.h:
   4212         (WebCore::DocPtr::DocPtr):
   4213         Fix longstanding typo in template so that the DocPtr(DocPtr) constructor can be used.
   4214 
   4215         * dom/Document.cpp:
   4216         (WebCore::Document::Document):
   4217         (WebCore::Document::removedLastRef):
   4218         * dom/Document.h:
   4219         (WebCore::Document::selfOnlyRef):
   4220         (WebCore::Document::selfOnlyDeref):
   4221         * platform/Shared.h:
   4222         (WebCore::Shared::Shared):
   4223         (WebCore::Shared::ref):
   4224         (WebCore::Shared::deref):
   4225         (WebCore::Shared::hasOneRef):
   4226         (WebCore::TreeShared::TreeShared):
   4227         (WebCore::TreeShared::ref):
   4228         (WebCore::TreeShared::deref):
   4229         (WebCore::TreeShared::hasOneRef):
   4230         (WebCore::TreeShared::refCount):
   4231         Add debug-only checks for a document being ref-counted while being deleted.
   4232 
   4233 2007-09-27  Kevin McCullough  <kmccullough (a] apple.com>
   4234 
   4235         Reviewed by Darin.
   4236 
   4237         - <rdar://5261371> Nothing downloaded when exporting bookmarks from iGoogle web history
   4238 
   4239         Function for use by WebKit. Currently used only on Windows.
   4240 
   4241         * platform/network/ResourceResponse.cpp:
   4242         (WebCore::ResourceResponse::isAttachment):
   4243         * platform/network/ResourceResponse.h:
   4244 
   4245 2007-09-27  Mitz Pettel  <mitz (a] webkit.org>
   4246 
   4247         Reviewed by Dave Hyatt.
   4248 
   4249         - fix http://bugs.webkit.org/show_bug.cgi?id=15262
   4250           REGRESSION: Margin-top:18px is pushing down the multiple select list box outside the div.
   4251 
   4252         Reflected in existing tests.
   4253 
   4254         * css/html4.css: Changed listboxes to use border-box sizing, to match Firefox,
   4255         WinIE and apparently also Safari 2.
   4256 
   4257 2007-09-27  Kevin Decker  <kdecker (a] apple.com>
   4258 
   4259         <rdar://problem/5493093>
   4260     
   4261         Rubber stamped by John Sullivan.
   4262         
   4263         * WebCore.order: Added.
   4264         * WebCore.xcodeproj/project.pbxproj:  We're changing from using an order file built by another team to using one
   4265          we actually check into our project repository. Linker settings for Symbol Ordering Flags have been updated
   4266          accordingly.
   4267          
   4268 2007-09-27  Antti Koivisto  <antti (a] apple.com>
   4269 
   4270         Reviewed by Geoff.
   4271         
   4272         Fix for <rdar://problem/5499125>
   4273         REGRESSION (r21367): After launching Kidzui beta, a webview frame fails to appear in its main window
   4274         
   4275         If window object properties were modified when it had initial empty document (synchronously after 
   4276         window.open() for example) those modifications were lost when the real document was switched in.
   4277         
   4278         Match Firefox behavior where window properties are not cleared if the inital document and the loaded one
   4279         have matching security domains.
   4280 
   4281         Tests: fast/dom/Window/window-early-properties.html
   4282                http/tests/security/window-properties-clear-domain.html
   4283                http/tests/security/window-properties-clear-port.html
   4284                http/tests/security/window-properties-pass.html
   4285 
   4286         * WebCore.exp:
   4287         * loader/FrameLoader.cpp:
   4288         (WebCore::FrameLoader::FrameLoader):
   4289         (WebCore::FrameLoader::init):
   4290         (WebCore::FrameLoader::clear):
   4291         (WebCore::FrameLoader::isSecureTransition):
   4292         (WebCore::FrameLoader::begin):
   4293         * loader/FrameLoader.h:
   4294         If we are transitioning from initial empty document to the final one, do a domain security check
   4295         between old security policy URL and new URL. If that passes don't clear script proxy and script objects.
   4296         
   4297         * bindings/js/kjs_proxy.cpp:
   4298         (WebCore::KJSProxy::updateDocumentWrapper):
   4299         * bindings/js/kjs_proxy.h:
   4300         * page/Frame.cpp:
   4301         (WebCore::Frame::setDocument):
   4302         Since we don't always clear window properties anymore, we need to update the document property to point to
   4303         the newly created one. 
   4304         
   4305 2007-09-27  Kevin Decker  <kdecker (a] apple.com>
   4306 
   4307         Reviewed by Darin.
   4308 
   4309         <rdar://problem/5493093>
   4310         
   4311         * WebCore.xcodeproj/project.pbxproj: Removed libxslt from statically linked frameworks.
   4312         * platform/mac/SoftLinking.h: Formatting tweakes, added SOFT_LINK_LIBRARY, and if'def for 
   4313         PLATFORM(DARWIN)
   4314         * xml/XSLStyleSheet.cpp: Soft-linked libxslt.
   4315         * xml/XSLTExtensions.cpp: Removed the call to xsltGenericError, and added a FIXME comment stating
   4316         that it might be helpful to push any errors from xmlXPathNewValueTree up to the Javascript Console. 
   4317         * xml/XSLTProcessor.cpp: Soft-linked libxslt.
   4318         
   4319 2007-09-27  Adele Peterson  <adele (a] apple.com>
   4320 
   4321         Reviewed by Brady.
   4322 
   4323         Fix for <rdar://problem/5453350> REGRESSION (r18541, Tiger only): Refreshing a cached https page does not reload CSS and JavaScript resources
   4324         http://bugs.webkit.org/show_bug.cgi?id=15121
   4325 
   4326         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest): Now sets the cache policy to ReloadIgnoringCacheData.  Without setting the cache policy,
   4327         the default policy in this case was ReturnCacheDataElseLoad.  If we're in a situation where the resource is in the cache, we want to make sure to avoid loading from the cache in this case.
   4328 
   4329 2007-09-27  Timothy Hatcher  <timothy (a] apple.com>
   4330 
   4331         Reviewed by Darin.
   4332 
   4333         <rdar://problem/5199546> CrashTracer: [REGRESSION] 8216 crashes in Safari at com.apple.WebCore: WebCore::ResourceHandle::client const + 6
   4334 
   4335         On Tiger NSURLConnection can sometimes call the connection:willCacheResponse: delegate method on
   4336         a secondary thread instead of the main thread. This was never an issue before, since the implementation 
   4337         of this method was very simple and thread safe.
   4338 
   4339         The fix is to block during connection:willCacheResponse: and perform the work on the main thread.
   4340         We need to block since this delegate method needs to return a result. If we are already on the
   4341         main thread (which sometimes we are), the method does nothing different. If we are on a secondary
   4342         thread, we make a mutable dictionary to hold all the arguments and later the result object.
   4343         Then performSelectorOnMainThread:withObject: using the _callConnectionWillCacheResponseWithInfo:
   4344         selector. This new method just pulls the arguments out for the dictionary and calls the real
   4345         connection:willCacheResponse: delegate method (this time on the main thread). The result is stored
   4346         in the dictionary, and when performSelectorOnMainThread:withObject: finishes the result is pulled
   4347         out and returned.
   4348 
   4349         * platform/network/mac/ResourceHandleMac.mm:
   4350         (-[WebCoreResourceHandleAsDelegate _callConnectionWillCacheResponseWithInfo:]):
   4351         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   4352 
   4353 2007-09-27  David Hyatt  <hyatt (a] apple.com>
   4354 
   4355         Update to reflect the minimal WebKitSystemInterface changes required
   4356         to support @font-face.
   4357 
   4358         Reviewed by john
   4359 
   4360         * platform/mac/FontDataMac.mm:
   4361         (WebCore::FontData::platformInit):
   4362         (WebCore::FontData::platformWidthForGlyph):
   4363         * platform/mac/WebCoreSystemInterface.h:
   4364         * platform/mac/WebCoreSystemInterface.mm:
   4365 
   4366 2007-09-26  Darin Adler  <darin (a] apple.com>
   4367 
   4368         - fix Windows build
   4369 
   4370         * platform/win/ClipboardWin.cpp:
   4371         (WebCore::writeURL): Add a check for empty URL. Remove the check for invalid URL.
   4372         (WebCore::ClipboardWin::setData): Remove the check for invalid URL.
   4373         * plugins/win/PluginViewWin.cpp:
   4374         (WebCore::PluginViewWin::start): Check for empty URL instead of invalid URL.
   4375         (WebCore::PluginViewWin::load): Same here.
   4376 
   4377 2007-09-26  Darin Adler  <darin (a] apple.com>
   4378 
   4379         Reviewed by John Sullivan.
   4380 
   4381         - fix <rdar://problem/5491054> REGRESSION (Mail, plain-text only): Nothing happens
   4382           when you click on rdar://<num>&<num> links (or AOL links in Safari)
   4383 
   4384         Remove the non-useful concept of a "malformed"/"invalid" URL.
   4385 
   4386         There are URLs we can parse, and others we can't, but that's not sufficient to
   4387         determine if we should try to work with the URL. It's entirely possible that
   4388         a so-called "malformed" URL will work just fine if it's passed to the right
   4389         software.
   4390 
   4391         * platform/KURL.h: Removed isMalformed() and isValid().
   4392 
   4393         * loader/Cache.cpp: (WebCore::Cache::requestResource): Removed unneeded check
   4394         if the URL is valid. But do check for an empty URL just to guarantee we don't
   4395         trip up with a null string. It's possible we can remove this empty URL check
   4396         later, but it's less risky to leave the empty string behavior alone for now.
   4397 
   4398         * loader/FrameLoader.cpp:
   4399         (WebCore::FrameLoader::urlSelected): Removed unneeded check if the URL is valid.
   4400         Back on 2007-07-08, we realized that we needed to allow empty URLs. But we also
   4401         need to allow other URLs here. This is the code path from the Mail case.
   4402         (WebCore::FrameLoader::submitForm): Replaced URL validity check with a check
   4403         for an empty URL (same reasoning as for requestResource above).
   4404 
   4405         * page/InspectorController.cpp: (WebCore::InspectorResource::type):
   4406         * rendering/RenderObject.cpp: (WebCore::RenderObject::addPDFURLRect):
   4407         Removed unneeded check for an invalid URL. In both of these cases it's definitely
   4408         safe to allow event an empty URL.
   4409 
   4410 2007-09-26  George Staikos  <staikos (a] kde.org>
   4411 
   4412         Reviewed by John Sullivan.
   4413 
   4414         Only highlight the applicable portion of the text run for a search
   4415         highlight.  No way to make a testcase for this presently.
   4416 
   4417         * rendering/InlineTextBox.cpp:
   4418         (WebCore::InlineTextBox::paintTextMatchMarker):
   4419 
   4420 2007-09-25  David Kilzer  <ddkilzer (a] webkit.org>
   4421 
   4422         Reviewed by Adam.
   4423 
   4424         - Fix http://bugs.webkit.org/show_bug.cgi?id=14885
   4425           LGPL'ed files contain incorrect FSF address
   4426 
   4427         * LICENSE-LGPL-2:
   4428         * LICENSE-LGPL-2.1:
   4429         * WebCorePrefix.h:
   4430         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   4431         * bindings/js/JSDOMWindowCustom.cpp:
   4432         * bindings/js/JSDocumentCustom.cpp:
   4433         * bindings/js/JSHTMLCollectionCustom.cpp:
   4434         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   4435         * bindings/js/JSHTMLElementWrapperFactory.h:
   4436         * bindings/js/JSHTMLInputElementBase.cpp:
   4437         * bindings/js/JSHTMLInputElementBase.h:
   4438         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   4439         * bindings/js/JSHTMLOptionElementConstructor.h:
   4440         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
   4441         * bindings/js/JSHTMLSelectElementCustom.cpp:
   4442         * bindings/js/JSNodeFilterCondition.cpp:
   4443         * bindings/js/JSNodeFilterCondition.h:
   4444         * bindings/js/JSNodeIteratorCustom.cpp:
   4445         * bindings/js/JSSVGElementWrapperFactory.cpp:
   4446         * bindings/js/JSSVGElementWrapperFactory.h:
   4447         * bindings/js/JSSVGMatrixCustom.cpp:
   4448         * bindings/js/JSSVGPathSegCustom.cpp:
   4449         * bindings/js/JSSVGPathSegListCustom.cpp:
   4450         * bindings/js/JSSVGPointListCustom.cpp:
   4451         * bindings/js/JSTreeWalkerCustom.cpp:
   4452         * bindings/js/JSXMLHttpRequest.cpp:
   4453         * bindings/js/JSXMLHttpRequest.h:
   4454         * bindings/js/kjs_binding.cpp:
   4455         * bindings/js/kjs_binding.h:
   4456         * bindings/js/kjs_css.cpp:
   4457         * bindings/js/kjs_css.h:
   4458         * bindings/js/kjs_dom.cpp:
   4459         * bindings/js/kjs_dom.h:
   4460         * bindings/js/kjs_events.cpp:
   4461         * bindings/js/kjs_events.h:
   4462         * bindings/js/kjs_html.cpp:
   4463         * bindings/js/kjs_html.h:
   4464         * bindings/js/kjs_navigator.cpp:
   4465         * bindings/js/kjs_navigator.h:
   4466         * bindings/js/kjs_proxy.cpp:
   4467         * bindings/js/kjs_proxy.h:
   4468         * bindings/js/kjs_window.cpp:
   4469         * bindings/js/kjs_window.h:
   4470         * bindings/objc/DOMImplementationFront.cpp:
   4471         * bindings/objc/DOMImplementationFront.h:
   4472         * bindings/scripts/CodeGenerator.pm:
   4473         * bindings/scripts/CodeGeneratorJS.pm:
   4474         * bindings/scripts/CodeGeneratorObjC.pm:
   4475         * bindings/scripts/IDLParser.pm:
   4476         * bindings/scripts/IDLStructure.pm:
   4477         * bindings/scripts/generate-bindings.pl:
   4478         * config.h:
   4479         * css/CSSBorderImageValue.cpp:
   4480         * css/CSSBorderImageValue.h:
   4481         * css/CSSCharsetRule.cpp:
   4482         * css/CSSCharsetRule.h:
   4483         * css/CSSCharsetRule.idl:
   4484         * css/CSSComputedStyleDeclaration.cpp:
   4485         * css/CSSComputedStyleDeclaration.h:
   4486         * css/CSSCursorImageValue.cpp:
   4487         * css/CSSCursorImageValue.h:
   4488         * css/CSSFontFaceRule.cpp:
   4489         * css/CSSFontFaceRule.h:
   4490         * css/CSSFontFaceRule.idl:
   4491         * css/CSSGrammar.y:
   4492         * css/CSSHelper.cpp:
   4493         * css/CSSHelper.h:
   4494         * css/CSSImageValue.cpp:
   4495         * css/CSSImageValue.h:
   4496         * css/CSSImportRule.cpp:
   4497         * css/CSSImportRule.h:
   4498         * css/CSSImportRule.idl:
   4499         * css/CSSInheritedValue.cpp:
   4500         * css/CSSInheritedValue.h:
   4501         * css/CSSInitialValue.cpp:
   4502         * css/CSSInitialValue.h:
   4503         * css/CSSMediaRule.cpp:
   4504         * css/CSSMediaRule.h:
   4505         * css/CSSMediaRule.idl:
   4506         * css/CSSMutableStyleDeclaration.cpp:
   4507         * css/CSSMutableStyleDeclaration.h:
   4508         * css/CSSNamespace.h:
   4509         * css/CSSPageRule.cpp:
   4510         * css/CSSPageRule.h:
   4511         * css/CSSPageRule.idl:
   4512         * css/CSSParser.cpp:
   4513         * css/CSSParser.h:
   4514         * css/CSSPrimitiveValue.cpp:
   4515         * css/CSSPrimitiveValue.h:
   4516         * css/CSSPrimitiveValue.idl:
   4517         * css/CSSProperty.cpp:
   4518         * css/CSSProperty.h:
   4519         * css/CSSQuirkPrimitiveValue.h:
   4520         * css/CSSRule.cpp:
   4521         * css/CSSRule.h:
   4522         * css/CSSRule.idl:
   4523         * css/CSSRuleList.cpp:
   4524         * css/CSSRuleList.h:
   4525         * css/CSSSelector.cpp:
   4526         * css/CSSSelector.h:
   4527         * css/CSSStyleDeclaration.cpp:
   4528         * css/CSSStyleDeclaration.h:
   4529         * css/CSSStyleDeclaration.idl:
   4530         * css/CSSStyleRule.cpp:
   4531         * css/CSSStyleRule.h:
   4532         * css/CSSStyleRule.idl:
   4533         * css/CSSStyleSelector.cpp:
   4534         * css/CSSStyleSelector.h:
   4535         * css/CSSStyleSheet.cpp:
   4536         * css/CSSStyleSheet.h:
   4537         * css/CSSStyleSheet.idl:
   4538         * css/CSSUnknownRule.h:
   4539         * css/CSSUnknownRule.idl:
   4540         * css/CSSValue.h:
   4541         * css/CSSValue.idl:
   4542         * css/CSSValueList.cpp:
   4543         * css/CSSValueList.h:
   4544         * css/Counter.h:
   4545         * css/Counter.idl:
   4546         * css/DashboardRegion.h:
   4547         * css/FontFamilyValue.cpp:
   4548         * css/FontFamilyValue.h:
   4549         * css/FontValue.cpp:
   4550         * css/FontValue.h:
   4551         * css/MediaFeatureNames.cpp:
   4552         * css/MediaFeatureNames.h:
   4553         * css/MediaList.cpp:
   4554         * css/MediaList.h:
   4555         * css/Pair.h:
   4556         * css/RGBColor.idl:
   4557         * css/Rect.h:
   4558         * css/Rect.idl:
   4559         * css/ShadowValue.cpp:
   4560         * css/ShadowValue.h:
   4561         * css/StyleBase.cpp:
   4562         * css/StyleBase.h:
   4563         * css/StyleList.cpp:
   4564         * css/StyleList.h:
   4565         * css/StyleSheet.cpp:
   4566         * css/StyleSheet.h:
   4567         * css/StyleSheet.idl:
   4568         * css/StyleSheetList.cpp:
   4569         * css/StyleSheetList.h:
   4570         * css/StyleSheetList.idl:
   4571         * css/html4.css:
   4572         * css/make-css-file-arrays.pl:
   4573         * css/makegrammar.pl:
   4574         * css/makeprop.pl:
   4575         * css/maketokenizer:
   4576         * css/makevalues.pl:
   4577         * css/quirks.css:
   4578         * dom/AtomicStringList.h:
   4579         * dom/Attr.cpp:
   4580         * dom/Attr.h:
   4581         * dom/Attr.idl:
   4582         * dom/Attribute.cpp:
   4583         * dom/Attribute.h:
   4584         * dom/BeforeUnloadEvent.cpp:
   4585         * dom/BeforeUnloadEvent.h:
   4586         * dom/CDATASection.cpp:
   4587         * dom/CDATASection.h:
   4588         * dom/CDATASection.idl:
   4589         * dom/CSSMappedAttributeDeclaration.cpp:
   4590         * dom/CSSMappedAttributeDeclaration.h:
   4591         * dom/CharacterData.cpp:
   4592         * dom/CharacterData.h:
   4593         * dom/CharacterData.idl:
   4594         * dom/ChildNodeList.cpp:
   4595         * dom/ChildNodeList.h:
   4596         * dom/Clipboard.h:
   4597         * dom/ClipboardEvent.cpp:
   4598         * dom/ClipboardEvent.h:
   4599         * dom/Comment.cpp:
   4600         * dom/Comment.h:
   4601         * dom/Comment.idl:
   4602         * dom/ContainerNode.cpp:
   4603         * dom/ContainerNode.h:
   4604         * dom/DOMImplementation.cpp:
   4605         * dom/DOMImplementation.h:
   4606         * dom/DOMImplementation.idl:
   4607         * dom/DocPtr.h:
   4608         * dom/Document.cpp:
   4609         * dom/Document.h:
   4610         * dom/Document.idl:
   4611         * dom/DocumentFragment.cpp:
   4612         * dom/DocumentFragment.h:
   4613         * dom/DocumentFragment.idl:
   4614         * dom/DocumentMarker.h:
   4615         * dom/DocumentType.cpp:
   4616         * dom/DocumentType.h:
   4617         * dom/DocumentType.idl:
   4618         * dom/EditingText.cpp:
   4619         * dom/EditingText.h:
   4620         * dom/Element.cpp:
   4621         * dom/Element.h:
   4622         * dom/Element.idl:
   4623         * dom/Entity.cpp:
   4624         * dom/Entity.h:
   4625         * dom/Entity.idl:
   4626         * dom/EntityReference.cpp:
   4627         * dom/EntityReference.h:
   4628         * dom/EntityReference.idl:
   4629         * dom/Event.cpp:
   4630         * dom/Event.h:
   4631         * dom/Event.idl:
   4632         * dom/EventListener.h:
   4633         * dom/EventListener.idl:
   4634         * dom/EventNames.cpp:
   4635         * dom/EventNames.h:
   4636         * dom/EventTarget.idl:
   4637         * dom/EventTargetNode.cpp:
   4638         * dom/EventTargetNode.h:
   4639         * dom/ExceptionCode.h:
   4640         * dom/KeyboardEvent.cpp:
   4641         * dom/KeyboardEvent.h:
   4642         * dom/KeyboardEvent.idl:
   4643         * dom/MappedAttribute.cpp:
   4644         * dom/MappedAttribute.h:
   4645         * dom/MappedAttributeEntry.h:
   4646         * dom/MouseEvent.cpp:
   4647         * dom/MouseEvent.h:
   4648         * dom/MouseEvent.idl:
   4649         * dom/MouseRelatedEvent.cpp:
   4650         * dom/MouseRelatedEvent.h:
   4651         * dom/MutationEvent.cpp:
   4652         * dom/MutationEvent.h:
   4653         * dom/MutationEvent.idl:
   4654         * dom/NameNodeList.cpp:
   4655         * dom/NameNodeList.h:
   4656         * dom/NamedAttrMap.cpp:
   4657         * dom/NamedAttrMap.h:
   4658         * dom/NamedMappedAttrMap.cpp:
   4659         * dom/NamedMappedAttrMap.h:
   4660         * dom/NamedNodeMap.h:
   4661         * dom/NamedNodeMap.idl:
   4662         * dom/Node.cpp:
   4663         * dom/Node.h:
   4664         * dom/Node.idl:
   4665         * dom/NodeFilter.cpp:
   4666         * dom/NodeFilter.h:
   4667         * dom/NodeFilter.idl:
   4668         * dom/NodeFilterCondition.cpp:
   4669         * dom/NodeFilterCondition.h:
   4670         * dom/NodeIterator.cpp:
   4671         * dom/NodeIterator.h:
   4672         * dom/NodeIterator.idl:
   4673         * dom/NodeList.cpp:
   4674         * dom/NodeList.h:
   4675         * dom/NodeList.idl:
   4676         * dom/Notation.cpp:
   4677         * dom/Notation.h:
   4678         * dom/Notation.idl:
   4679         * dom/ProcessingInstruction.cpp:
   4680         * dom/ProcessingInstruction.h:
   4681         * dom/ProcessingInstruction.idl:
   4682         * dom/QualifiedName.cpp:
   4683         * dom/QualifiedName.h:
   4684         * dom/Range.cpp:
   4685         * dom/Range.h:
   4686         * dom/Range.idl:
   4687         * dom/RangeException.h:
   4688         * dom/RangeException.idl:
   4689         * dom/RegisteredEventListener.cpp:
   4690         * dom/RegisteredEventListener.h:
   4691         * dom/StyleElement.cpp:
   4692         * dom/StyleElement.h:
   4693         * dom/StyledElement.cpp:
   4694         * dom/StyledElement.h:
   4695         * dom/Text.cpp:
   4696         * dom/Text.h:
   4697         * dom/Text.idl:
   4698         * dom/Tokenizer.h:
   4699         * dom/Traversal.cpp:
   4700         * dom/Traversal.h:
   4701         * dom/TreeWalker.cpp:
   4702         * dom/TreeWalker.h:
   4703         * dom/TreeWalker.idl:
   4704         * dom/UIEvent.cpp:
   4705         * dom/UIEvent.h:
   4706         * dom/UIEvent.idl:
   4707         * dom/UIEventWithKeyState.cpp:
   4708         * dom/UIEventWithKeyState.h:
   4709         * dom/WheelEvent.cpp:
   4710         * dom/WheelEvent.h:
   4711         * dom/WheelEvent.idl:
   4712         * dom/XMLTokenizer.cpp:
   4713         * dom/XMLTokenizer.h:
   4714         * html/FormDataList.cpp:
   4715         * html/FormDataList.h:
   4716         * html/HTMLAnchorElement.cpp:
   4717         * html/HTMLAnchorElement.h:
   4718         * html/HTMLAnchorElement.idl:
   4719         * html/HTMLAppletElement.cpp:
   4720         * html/HTMLAppletElement.h:
   4721         * html/HTMLAppletElement.idl:
   4722         * html/HTMLAreaElement.cpp:
   4723         * html/HTMLAreaElement.h:
   4724         * html/HTMLAreaElement.idl:
   4725         * html/HTMLBRElement.cpp:
   4726         * html/HTMLBRElement.h:
   4727         * html/HTMLBRElement.idl:
   4728         * html/HTMLBaseElement.cpp:
   4729         * html/HTMLBaseElement.h:
   4730         * html/HTMLBaseElement.idl:
   4731         * html/HTMLBaseFontElement.cpp:
   4732         * html/HTMLBaseFontElement.h:
   4733         * html/HTMLBaseFontElement.idl:
   4734         * html/HTMLBlockquoteElement.cpp:
   4735         * html/HTMLBlockquoteElement.h:
   4736         * html/HTMLBlockquoteElement.idl:
   4737         * html/HTMLBodyElement.cpp:
   4738         * html/HTMLBodyElement.h:
   4739         * html/HTMLBodyElement.idl:
   4740         * html/HTMLButtonElement.cpp:
   4741         * html/HTMLButtonElement.h:
   4742         * html/HTMLButtonElement.idl:
   4743         * html/HTMLCollection.cpp:
   4744         * html/HTMLCollection.h:
   4745         * html/HTMLCollection.idl:
   4746         * html/HTMLDListElement.cpp:
   4747         * html/HTMLDListElement.h:
   4748         * html/HTMLDListElement.idl:
   4749         * html/HTMLDirectoryElement.cpp:
   4750         * html/HTMLDirectoryElement.h:
   4751         * html/HTMLDirectoryElement.idl:
   4752         * html/HTMLDivElement.cpp:
   4753         * html/HTMLDivElement.h:
   4754         * html/HTMLDivElement.idl:
   4755         * html/HTMLDocument.cpp:
   4756         * html/HTMLDocument.h:
   4757         * html/HTMLDocument.idl:
   4758         * html/HTMLElement.cpp:
   4759         * html/HTMLElement.h:
   4760         * html/HTMLElement.idl:
   4761         * html/HTMLElementFactory.cpp:
   4762         * html/HTMLElementFactory.h:
   4763         * html/HTMLEmbedElement.cpp:
   4764         * html/HTMLEmbedElement.h:
   4765         * html/HTMLEmbedElement.idl:
   4766         * html/HTMLEntityNames.gperf:
   4767         * html/HTMLFieldSetElement.cpp:
   4768         * html/HTMLFieldSetElement.h:
   4769         * html/HTMLFieldSetElement.idl:
   4770         * html/HTMLFontElement.cpp:
   4771         * html/HTMLFontElement.h:
   4772         * html/HTMLFontElement.idl:
   4773         * html/HTMLFormCollection.cpp:
   4774         * html/HTMLFormCollection.h:
   4775         * html/HTMLFormElement.cpp:
   4776         * html/HTMLFormElement.h:
   4777         * html/HTMLFormElement.idl:
   4778         * html/HTMLFrameElement.cpp:
   4779         * html/HTMLFrameElement.h:
   4780         * html/HTMLFrameElement.idl:
   4781         * html/HTMLFrameElementBase.cpp:
   4782         * html/HTMLFrameElementBase.h:
   4783         * html/HTMLFrameOwnerElement.cpp:
   4784         * html/HTMLFrameOwnerElement.h:
   4785         * html/HTMLFrameSetElement.cpp:
   4786         * html/HTMLFrameSetElement.h:
   4787         * html/HTMLFrameSetElement.idl:
   4788         * html/HTMLGenericFormElement.cpp:
   4789         * html/HTMLGenericFormElement.h:
   4790         * html/HTMLHRElement.cpp:
   4791         * html/HTMLHRElement.h:
   4792         * html/HTMLHRElement.idl:
   4793         * html/HTMLHeadElement.cpp:
   4794         * html/HTMLHeadElement.h:
   4795         * html/HTMLHeadElement.idl:
   4796         * html/HTMLHeadingElement.cpp:
   4797         * html/HTMLHeadingElement.h:
   4798         * html/HTMLHeadingElement.idl:
   4799         * html/HTMLHtmlElement.cpp:
   4800         * html/HTMLHtmlElement.h:
   4801         * html/HTMLHtmlElement.idl:
   4802         * html/HTMLIFrameElement.cpp:
   4803         * html/HTMLIFrameElement.h:
   4804         * html/HTMLIFrameElement.idl:
   4805         * html/HTMLImageElement.cpp:
   4806         * html/HTMLImageElement.h:
   4807         * html/HTMLImageElement.idl:
   4808         * html/HTMLImageLoader.cpp:
   4809         * html/HTMLImageLoader.h:
   4810         * html/HTMLInputElement.cpp:
   4811         * html/HTMLInputElement.h:
   4812         * html/HTMLInputElement.idl:
   4813         * html/HTMLIsIndexElement.cpp:
   4814         * html/HTMLIsIndexElement.h:
   4815         * html/HTMLIsIndexElement.idl:
   4816         * html/HTMLKeygenElement.cpp:
   4817         * html/HTMLKeygenElement.h:
   4818         * html/HTMLLIElement.cpp:
   4819         * html/HTMLLIElement.h:
   4820         * html/HTMLLIElement.idl:
   4821         * html/HTMLLabelElement.cpp:
   4822         * html/HTMLLabelElement.h:
   4823         * html/HTMLLabelElement.idl:
   4824         * html/HTMLLegendElement.cpp:
   4825         * html/HTMLLegendElement.h:
   4826         * html/HTMLLegendElement.idl:
   4827         * html/HTMLLinkElement.cpp:
   4828         * html/HTMLLinkElement.h:
   4829         * html/HTMLLinkElement.idl:
   4830         * html/HTMLMapElement.cpp:
   4831         * html/HTMLMapElement.h:
   4832         * html/HTMLMapElement.idl:
   4833         * html/HTMLMarqueeElement.cpp:
   4834         * html/HTMLMarqueeElement.h:
   4835         * html/HTMLMarqueeElement.idl:
   4836         * html/HTMLMenuElement.cpp:
   4837         * html/HTMLMenuElement.h:
   4838         * html/HTMLMenuElement.idl:
   4839         * html/HTMLMetaElement.cpp:
   4840         * html/HTMLMetaElement.h:
   4841         * html/HTMLMetaElement.idl:
   4842         * html/HTMLModElement.cpp:
   4843         * html/HTMLModElement.h:
   4844         * html/HTMLModElement.idl:
   4845         * html/HTMLNameCollection.cpp:
   4846         * html/HTMLNameCollection.h:
   4847         * html/HTMLOListElement.cpp:
   4848         * html/HTMLOListElement.h:
   4849         * html/HTMLOListElement.idl:
   4850         * html/HTMLObjectElement.cpp:
   4851         * html/HTMLObjectElement.h:
   4852         * html/HTMLObjectElement.idl:
   4853         * html/HTMLOptGroupElement.cpp:
   4854         * html/HTMLOptGroupElement.h:
   4855         * html/HTMLOptGroupElement.idl:
   4856         * html/HTMLOptionElement.cpp:
   4857         * html/HTMLOptionElement.h:
   4858         * html/HTMLOptionElement.idl:
   4859         * html/HTMLOptionsCollection.cpp:
   4860         * html/HTMLOptionsCollection.h:
   4861         * html/HTMLOptionsCollection.idl:
   4862         * html/HTMLParagraphElement.cpp:
   4863         * html/HTMLParagraphElement.h:
   4864         * html/HTMLParagraphElement.idl:
   4865         * html/HTMLParamElement.cpp:
   4866         * html/HTMLParamElement.h:
   4867         * html/HTMLParamElement.idl:
   4868         * html/HTMLParser.cpp:
   4869         * html/HTMLParser.h:
   4870         * html/HTMLPlugInElement.cpp:
   4871         * html/HTMLPlugInElement.h:
   4872         * html/HTMLPreElement.cpp:
   4873         * html/HTMLPreElement.h:
   4874         * html/HTMLPreElement.idl:
   4875         * html/HTMLQuoteElement.cpp:
   4876         * html/HTMLQuoteElement.h:
   4877         * html/HTMLQuoteElement.idl:
   4878         * html/HTMLScriptElement.cpp:
   4879         * html/HTMLScriptElement.h:
   4880         * html/HTMLScriptElement.idl:
   4881         * html/HTMLSelectElement.cpp:
   4882         * html/HTMLSelectElement.h:
   4883         * html/HTMLSelectElement.idl:
   4884         * html/HTMLStyleElement.cpp:
   4885         * html/HTMLStyleElement.h:
   4886         * html/HTMLStyleElement.idl:
   4887         * html/HTMLTableCaptionElement.cpp:
   4888         * html/HTMLTableCaptionElement.h:
   4889         * html/HTMLTableCaptionElement.idl:
   4890         * html/HTMLTableCellElement.cpp:
   4891         * html/HTMLTableCellElement.h:
   4892         * html/HTMLTableCellElement.idl:
   4893         * html/HTMLTableColElement.cpp:
   4894         * html/HTMLTableColElement.h:
   4895         * html/HTMLTableColElement.idl:
   4896         * html/HTMLTableElement.cpp:
   4897         * html/HTMLTableElement.h:
   4898         * html/HTMLTableElement.idl:
   4899         * html/HTMLTablePartElement.cpp:
   4900         * html/HTMLTablePartElement.h:
   4901         * html/HTMLTableRowElement.cpp:
   4902         * html/HTMLTableRowElement.h:
   4903         * html/HTMLTableRowElement.idl:
   4904         * html/HTMLTableSectionElement.cpp:
   4905         * html/HTMLTableSectionElement.h:
   4906         * html/HTMLTableSectionElement.idl:
   4907         * html/HTMLTextAreaElement.cpp:
   4908         * html/HTMLTextAreaElement.h:
   4909         * html/HTMLTextAreaElement.idl:
   4910         * html/HTMLTitleElement.cpp:
   4911         * html/HTMLTitleElement.h:
   4912         * html/HTMLTitleElement.idl:
   4913         * html/HTMLTokenizer.cpp:
   4914         * html/HTMLTokenizer.h:
   4915         * html/HTMLUListElement.cpp:
   4916         * html/HTMLUListElement.h:
   4917         * html/HTMLUListElement.idl:
   4918         * ksvg2/css/SVGCSSParser.cpp:
   4919         * ksvg2/css/SVGCSSStyleSelector.cpp:
   4920         * ksvg2/css/SVGRenderStyle.cpp:
   4921         * ksvg2/css/SVGRenderStyle.h:
   4922         * ksvg2/css/SVGRenderStyleDefs.cpp:
   4923         * ksvg2/css/SVGRenderStyleDefs.h:
   4924         * ksvg2/events/JSSVGLazyEventListener.cpp:
   4925         * ksvg2/events/JSSVGLazyEventListener.h:
   4926         * ksvg2/events/SVGZoomEvent.cpp:
   4927         * ksvg2/events/SVGZoomEvent.h:
   4928         * ksvg2/misc/KCanvasRenderingStyle.cpp:
   4929         * ksvg2/misc/KCanvasRenderingStyle.h:
   4930         * ksvg2/misc/PointerEventsHitRules.cpp:
   4931         * ksvg2/misc/PointerEventsHitRules.h:
   4932         * ksvg2/misc/SVGDocumentExtensions.cpp:
   4933         * ksvg2/misc/SVGDocumentExtensions.h:
   4934         * ksvg2/misc/SVGImageLoader.cpp:
   4935         * ksvg2/misc/SVGImageLoader.h:
   4936         * ksvg2/misc/SVGTimer.cpp:
   4937         * ksvg2/misc/SVGTimer.h:
   4938         * ksvg2/misc/TimeScheduler.cpp:
   4939         * ksvg2/misc/TimeScheduler.h:
   4940         * ksvg2/scripts/cssmakeprops:
   4941         * ksvg2/scripts/cssmakevalues:
   4942         * ksvg2/svg/ColorDistance.cpp:
   4943         * ksvg2/svg/ColorDistance.h:
   4944         * ksvg2/svg/GradientAttributes.h:
   4945         * ksvg2/svg/LinearGradientAttributes.h:
   4946         * ksvg2/svg/PatternAttributes.h:
   4947         * ksvg2/svg/RadialGradientAttributes.h:
   4948         * ksvg2/svg/SVGAElement.cpp:
   4949         * ksvg2/svg/SVGAElement.h:
   4950         * ksvg2/svg/SVGAngle.cpp:
   4951         * ksvg2/svg/SVGAngle.h:
   4952         * ksvg2/svg/SVGAngle.idl:
   4953         * ksvg2/svg/SVGAnimateColorElement.cpp:
   4954         * ksvg2/svg/SVGAnimateColorElement.h:
   4955         * ksvg2/svg/SVGAnimateElement.cpp:
   4956         * ksvg2/svg/SVGAnimateElement.h:
   4957         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   4958         * ksvg2/svg/SVGAnimateMotionElement.h:
   4959         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   4960         * ksvg2/svg/SVGAnimateTransformElement.h:
   4961         * ksvg2/svg/SVGAnimatedPathData.cpp:
   4962         * ksvg2/svg/SVGAnimatedPathData.h:
   4963         * ksvg2/svg/SVGAnimatedPoints.cpp:
   4964         * ksvg2/svg/SVGAnimatedPoints.h:
   4965         * ksvg2/svg/SVGAnimatedTemplate.h:
   4966         * ksvg2/svg/SVGAnimationElement.cpp:
   4967         * ksvg2/svg/SVGAnimationElement.h:
   4968         * ksvg2/svg/SVGCircleElement.cpp:
   4969         * ksvg2/svg/SVGCircleElement.h:
   4970         * ksvg2/svg/SVGClipPathElement.cpp:
   4971         * ksvg2/svg/SVGClipPathElement.h:
   4972         * ksvg2/svg/SVGColor.cpp:
   4973         * ksvg2/svg/SVGColor.h:
   4974         * ksvg2/svg/SVGColor.idl:
   4975         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
   4976         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
   4977         * ksvg2/svg/SVGCursorElement.cpp:
   4978         * ksvg2/svg/SVGCursorElement.h:
   4979         * ksvg2/svg/SVGDefsElement.cpp:
   4980         * ksvg2/svg/SVGDefsElement.h:
   4981         * ksvg2/svg/SVGDescElement.cpp:
   4982         * ksvg2/svg/SVGDescElement.h:
   4983         * ksvg2/svg/SVGDocument.cpp:
   4984         * ksvg2/svg/SVGDocument.h:
   4985         * ksvg2/svg/SVGDocument.idl:
   4986         * ksvg2/svg/SVGElement.cpp:
   4987         * ksvg2/svg/SVGElement.h:
   4988         * ksvg2/svg/SVGElement.idl:
   4989         * ksvg2/svg/SVGElementInstance.cpp:
   4990         * ksvg2/svg/SVGElementInstance.h:
   4991         * ksvg2/svg/SVGElementInstanceList.cpp:
   4992         * ksvg2/svg/SVGElementInstanceList.h:
   4993         * ksvg2/svg/SVGEllipseElement.cpp:
   4994         * ksvg2/svg/SVGEllipseElement.h:
   4995         * ksvg2/svg/SVGException.h:
   4996         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
   4997         * ksvg2/svg/SVGExternalResourcesRequired.h:
   4998         * ksvg2/svg/SVGFEBlendElement.cpp:
   4999         * ksvg2/svg/SVGFEBlendElement.h:
   5000         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
   5001         * ksvg2/svg/SVGFEColorMatrixElement.h:
   5002         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
   5003         * ksvg2/svg/SVGFEComponentTransferElement.h:
   5004         * ksvg2/svg/SVGFECompositeElement.cpp:
   5005         * ksvg2/svg/SVGFECompositeElement.h:
   5006         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
   5007         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
   5008         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
   5009         * ksvg2/svg/SVGFEDisplacementMapElement.h:
   5010         * ksvg2/svg/SVGFEDistantLightElement.cpp:
   5011         * ksvg2/svg/SVGFEDistantLightElement.h:
   5012         * ksvg2/svg/SVGFEFloodElement.cpp:
   5013         * ksvg2/svg/SVGFEFloodElement.h:
   5014         * ksvg2/svg/SVGFEFuncAElement.cpp:
   5015         * ksvg2/svg/SVGFEFuncAElement.h:
   5016         * ksvg2/svg/SVGFEFuncBElement.cpp:
   5017         * ksvg2/svg/SVGFEFuncBElement.h:
   5018         * ksvg2/svg/SVGFEFuncGElement.cpp:
   5019         * ksvg2/svg/SVGFEFuncGElement.h:
   5020         * ksvg2/svg/SVGFEFuncRElement.cpp:
   5021         * ksvg2/svg/SVGFEFuncRElement.h:
   5022         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
   5023         * ksvg2/svg/SVGFEGaussianBlurElement.h:
   5024         * ksvg2/svg/SVGFEImageElement.cpp:
   5025         * ksvg2/svg/SVGFEImageElement.h:
   5026         * ksvg2/svg/SVGFELightElement.cpp:
   5027         * ksvg2/svg/SVGFELightElement.h:
   5028         * ksvg2/svg/SVGFEMergeElement.cpp:
   5029         * ksvg2/svg/SVGFEMergeElement.h:
   5030         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
   5031         * ksvg2/svg/SVGFEMergeNodeElement.h:
   5032         * ksvg2/svg/SVGFEOffsetElement.cpp:
   5033         * ksvg2/svg/SVGFEOffsetElement.h:
   5034         * ksvg2/svg/SVGFEPointLightElement.cpp:
   5035         * ksvg2/svg/SVGFEPointLightElement.h:
   5036         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
   5037         * ksvg2/svg/SVGFESpecularLightingElement.h:
   5038         * ksvg2/svg/SVGFESpotLightElement.cpp:
   5039         * ksvg2/svg/SVGFESpotLightElement.h:
   5040         * ksvg2/svg/SVGFETileElement.cpp:
   5041         * ksvg2/svg/SVGFETileElement.h:
   5042         * ksvg2/svg/SVGFETurbulenceElement.cpp:
   5043         * ksvg2/svg/SVGFETurbulenceElement.h:
   5044         * ksvg2/svg/SVGFilterElement.cpp:
   5045         * ksvg2/svg/SVGFilterElement.h:
   5046         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
   5047         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
   5048         * ksvg2/svg/SVGFitToViewBox.cpp:
   5049         * ksvg2/svg/SVGFitToViewBox.h:
   5050         * ksvg2/svg/SVGForeignObjectElement.cpp:
   5051         * ksvg2/svg/SVGForeignObjectElement.h:
   5052         * ksvg2/svg/SVGGElement.cpp:
   5053         * ksvg2/svg/SVGGElement.h:
   5054         * ksvg2/svg/SVGGradientElement.cpp:
   5055         * ksvg2/svg/SVGGradientElement.h:
   5056         * ksvg2/svg/SVGImageElement.cpp:
   5057         * ksvg2/svg/SVGImageElement.h:
   5058         * ksvg2/svg/SVGLangSpace.cpp:
   5059         * ksvg2/svg/SVGLangSpace.h:
   5060         * ksvg2/svg/SVGLength.cpp:
   5061         * ksvg2/svg/SVGLength.h:
   5062         * ksvg2/svg/SVGLength.idl:
   5063         * ksvg2/svg/SVGLengthList.cpp:
   5064         * ksvg2/svg/SVGLengthList.h:
   5065         * ksvg2/svg/SVGLineElement.cpp:
   5066         * ksvg2/svg/SVGLineElement.h:
   5067         * ksvg2/svg/SVGLinearGradientElement.cpp:
   5068         * ksvg2/svg/SVGLinearGradientElement.h:
   5069         * ksvg2/svg/SVGList.h:
   5070         * ksvg2/svg/SVGListTraits.h:
   5071         * ksvg2/svg/SVGLocatable.cpp:
   5072         * ksvg2/svg/SVGLocatable.h:
   5073         * ksvg2/svg/SVGMPathElement.cpp:
   5074         * ksvg2/svg/SVGMPathElement.h:
   5075         * ksvg2/svg/SVGMarkerElement.cpp:
   5076         * ksvg2/svg/SVGMarkerElement.h:
   5077         * ksvg2/svg/SVGMaskElement.cpp:
   5078         * ksvg2/svg/SVGMaskElement.h:
   5079         * ksvg2/svg/SVGMatrix.idl:
   5080         * ksvg2/svg/SVGMetadataElement.cpp:
   5081         * ksvg2/svg/SVGMetadataElement.h:
   5082         * ksvg2/svg/SVGMetadataElement.idl:
   5083         * ksvg2/svg/SVGNumber.idl:
   5084         * ksvg2/svg/SVGNumberList.cpp:
   5085         * ksvg2/svg/SVGNumberList.h:
   5086         * ksvg2/svg/SVGPaint.cpp:
   5087         * ksvg2/svg/SVGPaint.h:
   5088         * ksvg2/svg/SVGParserUtilities.cpp:
   5089         * ksvg2/svg/SVGParserUtilities.h:
   5090         * ksvg2/svg/SVGPathElement.cpp:
   5091         * ksvg2/svg/SVGPathElement.h:
   5092         * ksvg2/svg/SVGPathSeg.h:
   5093         * ksvg2/svg/SVGPathSegArc.cpp:
   5094         * ksvg2/svg/SVGPathSegArc.h:
   5095         * ksvg2/svg/SVGPathSegClosePath.cpp:
   5096         * ksvg2/svg/SVGPathSegClosePath.h:
   5097         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
   5098         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
   5099         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
   5100         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
   5101         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
   5102         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
   5103         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
   5104         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
   5105         * ksvg2/svg/SVGPathSegLineto.cpp:
   5106         * ksvg2/svg/SVGPathSegLineto.h:
   5107         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
   5108         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
   5109         * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
   5110         * ksvg2/svg/SVGPathSegLinetoVertical.h:
   5111         * ksvg2/svg/SVGPathSegList.cpp:
   5112         * ksvg2/svg/SVGPathSegList.h:
   5113         * ksvg2/svg/SVGPathSegMoveto.cpp:
   5114         * ksvg2/svg/SVGPathSegMoveto.h:
   5115         * ksvg2/svg/SVGPatternElement.cpp:
   5116         * ksvg2/svg/SVGPatternElement.h:
   5117         * ksvg2/svg/SVGPoint.idl:
   5118         * ksvg2/svg/SVGPointList.cpp:
   5119         * ksvg2/svg/SVGPointList.h:
   5120         * ksvg2/svg/SVGPolyElement.cpp:
   5121         * ksvg2/svg/SVGPolyElement.h:
   5122         * ksvg2/svg/SVGPolygonElement.cpp:
   5123         * ksvg2/svg/SVGPolygonElement.h:
   5124         * ksvg2/svg/SVGPolylineElement.cpp:
   5125         * ksvg2/svg/SVGPolylineElement.h:
   5126         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
   5127         * ksvg2/svg/SVGPreserveAspectRatio.h:
   5128         * ksvg2/svg/SVGRadialGradientElement.cpp:
   5129         * ksvg2/svg/SVGRadialGradientElement.h:
   5130         * ksvg2/svg/SVGRect.idl:
   5131         * ksvg2/svg/SVGRectElement.cpp:
   5132         * ksvg2/svg/SVGRectElement.h:
   5133         * ksvg2/svg/SVGRenderingIntent.h:
   5134         * ksvg2/svg/SVGSVGElement.cpp:
   5135         * ksvg2/svg/SVGSVGElement.h:
   5136         * ksvg2/svg/SVGSVGElement.idl:
   5137         * ksvg2/svg/SVGScriptElement.cpp:
   5138         * ksvg2/svg/SVGScriptElement.h:
   5139         * ksvg2/svg/SVGSetElement.cpp:
   5140         * ksvg2/svg/SVGSetElement.h:
   5141         * ksvg2/svg/SVGStopElement.cpp:
   5142         * ksvg2/svg/SVGStopElement.h:
   5143         * ksvg2/svg/SVGStringList.cpp:
   5144         * ksvg2/svg/SVGStringList.h:
   5145         * ksvg2/svg/SVGStylable.cpp:
   5146         * ksvg2/svg/SVGStylable.h:
   5147         * ksvg2/svg/SVGStyleElement.cpp:
   5148         * ksvg2/svg/SVGStyleElement.h:
   5149         * ksvg2/svg/SVGStyledElement.cpp:
   5150         * ksvg2/svg/SVGStyledElement.h:
   5151         * ksvg2/svg/SVGStyledLocatableElement.cpp:
   5152         * ksvg2/svg/SVGStyledLocatableElement.h:
   5153         * ksvg2/svg/SVGStyledTransformableElement.cpp:
   5154         * ksvg2/svg/SVGStyledTransformableElement.h:
   5155         * ksvg2/svg/SVGSwitchElement.cpp:
   5156         * ksvg2/svg/SVGSwitchElement.h:
   5157         * ksvg2/svg/SVGSymbolElement.cpp:
   5158         * ksvg2/svg/SVGSymbolElement.h:
   5159         * ksvg2/svg/SVGTRefElement.cpp:
   5160         * ksvg2/svg/SVGTRefElement.h:
   5161         * ksvg2/svg/SVGTSpanElement.cpp:
   5162         * ksvg2/svg/SVGTSpanElement.h:
   5163         * ksvg2/svg/SVGTests.cpp:
   5164         * ksvg2/svg/SVGTests.h:
   5165         * ksvg2/svg/SVGTextContentElement.cpp:
   5166         * ksvg2/svg/SVGTextContentElement.h:
   5167         * ksvg2/svg/SVGTextElement.cpp:
   5168         * ksvg2/svg/SVGTextElement.h:
   5169         * ksvg2/svg/SVGTextPositioningElement.cpp:
   5170         * ksvg2/svg/SVGTextPositioningElement.h:
   5171         * ksvg2/svg/SVGTitleElement.cpp:
   5172         * ksvg2/svg/SVGTitleElement.h:
   5173         * ksvg2/svg/SVGTransform.cpp:
   5174         * ksvg2/svg/SVGTransform.h:
   5175         * ksvg2/svg/SVGTransform.idl:
   5176         * ksvg2/svg/SVGTransformDistance.cpp:
   5177         * ksvg2/svg/SVGTransformDistance.h:
   5178         * ksvg2/svg/SVGTransformList.cpp:
   5179         * ksvg2/svg/SVGTransformList.h:
   5180         * ksvg2/svg/SVGTransformable.cpp:
   5181         * ksvg2/svg/SVGTransformable.h:
   5182         * ksvg2/svg/SVGURIReference.cpp:
   5183         * ksvg2/svg/SVGURIReference.h:
   5184         * ksvg2/svg/SVGUnitTypes.h:
   5185         * ksvg2/svg/SVGUseElement.cpp:
   5186         * ksvg2/svg/SVGUseElement.h:
   5187         * ksvg2/svg/SVGViewElement.cpp:
   5188         * ksvg2/svg/SVGViewElement.h:
   5189         * ksvg2/svg/SVGZoomAndPan.cpp:
   5190         * ksvg2/svg/SVGZoomAndPan.h:
   5191         * loader/Cache.cpp:
   5192         * loader/Cache.h:
   5193         * loader/CachedCSSStyleSheet.cpp:
   5194         * loader/CachedCSSStyleSheet.h:
   5195         * loader/CachedImage.cpp:
   5196         * loader/CachedImage.h:
   5197         * loader/CachedResource.cpp:
   5198         * loader/CachedResource.h:
   5199         * loader/CachedResourceClient.h:
   5200         * loader/CachedResourceClientWalker.cpp:
   5201         * loader/CachedResourceClientWalker.h:
   5202         * loader/CachedScript.cpp:
   5203         * loader/CachedScript.h:
   5204         * loader/CachedXBLDocument.cpp:
   5205         * loader/CachedXBLDocument.h:
   5206         * loader/CachedXSLStyleSheet.cpp:
   5207         * loader/CachedXSLStyleSheet.h:
   5208         * loader/DocLoader.cpp:
   5209         * loader/DocLoader.h:
   5210         * loader/FTPDirectoryParser.cpp:
   5211         * loader/FTPDirectoryParser.h:
   5212         * loader/Request.cpp:
   5213         * loader/Request.h:
   5214         * loader/TextResourceDecoder.cpp:
   5215         * loader/TextResourceDecoder.h:
   5216         * loader/loader.cpp:
   5217         * loader/loader.h:
   5218         * page/Chrome.cpp:
   5219         * page/Chrome.h:
   5220         * page/ChromeClient.h:
   5221         * page/Frame.cpp:
   5222         * page/Frame.h:
   5223         * page/FramePrivate.h:
   5224         * page/FrameTree.cpp:
   5225         * page/FrameTree.h:
   5226         * page/FrameView.cpp:
   5227         * page/FrameView.h:
   5228         * page/MouseEventWithHitTestResults.cpp:
   5229         * page/MouseEventWithHitTestResults.h:
   5230         * page/Page.cpp:
   5231         * page/Page.h:
   5232         * page/Plugin.h:
   5233         * page/mac/ChromeMac.mm:
   5234         * platform/Arena.cpp:
   5235         * platform/Arena.h:
   5236         * platform/AtomicString.cpp:
   5237         * platform/AtomicString.h:
   5238         * platform/AtomicStringImpl.h:
   5239         * platform/BidiContext.cpp:
   5240         * platform/BidiContext.h:
   5241         * platform/BidiResolver.h:
   5242         * platform/Font.cpp:
   5243         * platform/Font.h:
   5244         * platform/FontData.h:
   5245         * platform/FontDescription.h:
   5246         * platform/FontFallbackList.h:
   5247         * platform/PlatformString.h:
   5248         * platform/PopupMenu.h:
   5249         * platform/PopupMenuClient.h:
   5250         * platform/SearchPopupMenu.h:
   5251         * platform/SegmentedString.cpp:
   5252         * platform/SegmentedString.h:
   5253         * platform/Shared.h:
   5254         * platform/StaticConstructors.h:
   5255         * platform/String.cpp:
   5256         * platform/StringHash.h:
   5257         * platform/StringImpl.cpp:
   5258         * platform/StringImpl.h:
   5259         * platform/TextBreakIterator.h:
   5260         * platform/TextBreakIteratorICU.cpp:
   5261         * platform/TextBreakIteratorInternalICU.h:
   5262         * platform/TextStyle.h:
   5263         * platform/UnicodeRange.cpp:
   5264         * platform/UnicodeRange.h:
   5265         * platform/cf/StringCF.cpp:
   5266         * platform/cf/StringImplCF.cpp:
   5267         * platform/graphics/FloatPoint3D.cpp:
   5268         * platform/graphics/FloatPoint3D.h:
   5269         * platform/graphics/Icon.h:
   5270         * platform/graphics/IntSizeHash.h:
   5271         * platform/graphics/PathTraversalState.cpp:
   5272         * platform/graphics/cairo/CairoPath.h:
   5273         * platform/graphics/cairo/PathCairo.cpp:
   5274         * platform/graphics/mac/IconMac.mm:
   5275         * platform/graphics/qt/IconQt.cpp:
   5276         * platform/graphics/svg/SVGResourceFilter.cpp:
   5277         * platform/graphics/svg/SVGResourceFilter.h:
   5278         * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
   5279         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   5280         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
   5281         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
   5282         * platform/graphics/svg/filters/SVGDistantLightSource.h:
   5283         * platform/graphics/svg/filters/SVGFEBlend.cpp:
   5284         * platform/graphics/svg/filters/SVGFEBlend.h:
   5285         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
   5286         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
   5287         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
   5288         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
   5289         * platform/graphics/svg/filters/SVGFEComposite.cpp:
   5290         * platform/graphics/svg/filters/SVGFEComposite.h:
   5291         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
   5292         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
   5293         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
   5294         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
   5295         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
   5296         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
   5297         * platform/graphics/svg/filters/SVGFEFlood.cpp:
   5298         * platform/graphics/svg/filters/SVGFEFlood.h:
   5299         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
   5300         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
   5301         * platform/graphics/svg/filters/SVGFEImage.cpp:
   5302         * platform/graphics/svg/filters/SVGFEImage.h:
   5303         * platform/graphics/svg/filters/SVGFEMerge.cpp:
   5304         * platform/graphics/svg/filters/SVGFEMerge.h:
   5305         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
   5306         * platform/graphics/svg/filters/SVGFEMorphology.h:
   5307         * platform/graphics/svg/filters/SVGFEOffset.cpp:
   5308         * platform/graphics/svg/filters/SVGFEOffset.h:
   5309         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
   5310         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
   5311         * platform/graphics/svg/filters/SVGFETile.h:
   5312         * platform/graphics/svg/filters/SVGFETurbulence.cpp:
   5313         * platform/graphics/svg/filters/SVGFETurbulence.h:
   5314         * platform/graphics/svg/filters/SVGFilterEffect.cpp:
   5315         * platform/graphics/svg/filters/SVGFilterEffect.h:
   5316         * platform/graphics/svg/filters/SVGLightSource.cpp:
   5317         * platform/graphics/svg/filters/SVGLightSource.h:
   5318         * platform/graphics/svg/filters/SVGPointLightSource.h:
   5319         * platform/graphics/svg/filters/SVGSpotLightSource.h:
   5320         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
   5321         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
   5322         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
   5323         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
   5324         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
   5325         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
   5326         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
   5327         * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm:
   5328         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
   5329         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
   5330         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
   5331         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
   5332         * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm:
   5333         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
   5334         * platform/graphics/svg/filters/cg/SVGFETileCg.mm:
   5335         * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm:
   5336         * platform/graphics/svg/qt/RenderPathQt.cpp:
   5337         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
   5338         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
   5339         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
   5340         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
   5341         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
   5342         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
   5343         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
   5344         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
   5345         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
   5346         * platform/graphics/win/IconWin.cpp:
   5347         * platform/gtk/FontPlatformData.h:
   5348         * platform/gtk/FontPlatformDataGtk.cpp:
   5349         * platform/gtk/PopupMenuGtk.cpp:
   5350         * platform/gtk/RenderThemeGtk.cpp:
   5351         * platform/gtk/RenderThemeGtk.h:
   5352         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   5353         * platform/image-decoders/png/PNGImageDecoder.cpp:
   5354         * platform/mac/FontMac.mm:
   5355         * platform/mac/FontPlatformData.h:
   5356         * platform/mac/LocalCurrentGraphicsContext.h:
   5357         * platform/mac/LocalCurrentGraphicsContext.mm:
   5358         * platform/mac/PopupMenuMac.mm:
   5359         * platform/mac/SearchPopupMenuMac.mm:
   5360         * platform/mac/StringImplMac.mm:
   5361         * platform/mac/StringMac.mm:
   5362         * platform/mac/TextBreakIteratorInternalICUMac.mm:
   5363         * platform/network/FormData.cpp:
   5364         * platform/network/FormData.h:
   5365         * platform/qt/FileChooserQt.cpp:
   5366         * platform/qt/FontQt.cpp:
   5367         * platform/qt/MenuEventProxy.h:
   5368         * platform/qt/PlugInInfoStoreQt.cpp:
   5369         * platform/qt/PopupMenuQt.cpp:
   5370         * platform/qt/QWebPopup.cpp:
   5371         * platform/qt/QWebPopup.h:
   5372         * platform/qt/RenderThemeQt.cpp:
   5373         * platform/qt/RenderThemeQt.h:
   5374         * platform/qt/SearchPopupMenuQt.cpp:
   5375         * platform/qt/TextBreakIteratorQt.cpp:
   5376         * platform/qt/WheelEventQt.cpp:
   5377         * platform/win/FontPlatformData.h:
   5378         * platform/win/FontPlatformDataWin.cpp:
   5379         * platform/win/PopupMenuWin.cpp:
   5380         * platform/win/SearchPopupMenuWin.cpp:
   5381         * platform/win/TextBreakIteratorInternalICUWin.cpp:
   5382         * rendering/AutoTableLayout.cpp:
   5383         * rendering/AutoTableLayout.h:
   5384         * rendering/CounterNode.cpp:
   5385         * rendering/CounterNode.h:
   5386         * rendering/DataRef.h:
   5387         * rendering/EllipsisBox.cpp:
   5388         * rendering/EllipsisBox.h:
   5389         * rendering/FixedTableLayout.cpp:
   5390         * rendering/FixedTableLayout.h:
   5391         * rendering/GapRects.h:
   5392         * rendering/HitTestRequest.h:
   5393         * rendering/HitTestResult.cpp:
   5394         * rendering/HitTestResult.h:
   5395         * rendering/InlineBox.cpp:
   5396         * rendering/InlineBox.h:
   5397         * rendering/InlineFlowBox.cpp:
   5398         * rendering/InlineFlowBox.h:
   5399         * rendering/InlineRunBox.h:
   5400         * rendering/InlineTextBox.cpp:
   5401         * rendering/InlineTextBox.h:
   5402         * rendering/Length.h:
   5403         * rendering/ListMarkerBox.cpp:
   5404         * rendering/ListMarkerBox.h:
   5405         * rendering/RenderApplet.cpp:
   5406         * rendering/RenderApplet.h:
   5407         * rendering/RenderArena.cpp:
   5408         * rendering/RenderArena.h:
   5409         * rendering/RenderBR.cpp:
   5410         * rendering/RenderBR.h:
   5411         * rendering/RenderBlock.cpp:
   5412         * rendering/RenderBlock.h:
   5413         * rendering/RenderBox.cpp:
   5414         * rendering/RenderBox.h:
   5415         * rendering/RenderButton.cpp:
   5416         * rendering/RenderButton.h:
   5417         * rendering/RenderContainer.cpp:
   5418         * rendering/RenderContainer.h:
   5419         * rendering/RenderCounter.cpp:
   5420         * rendering/RenderCounter.h:
   5421         * rendering/RenderFieldset.cpp:
   5422         * rendering/RenderFieldset.h:
   5423         * rendering/RenderFileUploadControl.cpp:
   5424         * rendering/RenderFileUploadControl.h:
   5425         * rendering/RenderFlexibleBox.cpp:
   5426         * rendering/RenderFlexibleBox.h:
   5427         * rendering/RenderFlow.cpp:
   5428         * rendering/RenderFlow.h:
   5429         * rendering/RenderForeignObject.cpp:
   5430         * rendering/RenderForeignObject.h:
   5431         * rendering/RenderFrame.cpp:
   5432         * rendering/RenderFrame.h:
   5433         * rendering/RenderFrameSet.cpp:
   5434         * rendering/RenderFrameSet.h:
   5435         * rendering/RenderImage.cpp:
   5436         * rendering/RenderImage.h:
   5437         * rendering/RenderInline.cpp:
   5438         * rendering/RenderInline.h:
   5439         * rendering/RenderLayer.cpp:
   5440         * rendering/RenderLayer.h:
   5441         * rendering/RenderLegend.cpp:
   5442         * rendering/RenderLegend.h:
   5443         * rendering/RenderListItem.cpp:
   5444         * rendering/RenderListItem.h:
   5445         * rendering/RenderListMarker.cpp:
   5446         * rendering/RenderListMarker.h:
   5447         * rendering/RenderMenuList.cpp:
   5448         * rendering/RenderMenuList.h:
   5449         * rendering/RenderObject.cpp:
   5450         * rendering/RenderObject.h:
   5451         * rendering/RenderPart.cpp:
   5452         * rendering/RenderPart.h:
   5453         * rendering/RenderPartObject.cpp:
   5454         * rendering/RenderPartObject.h:
   5455         * rendering/RenderPath.cpp:
   5456         * rendering/RenderPath.h:
   5457         * rendering/RenderReplaced.cpp:
   5458         * rendering/RenderReplaced.h:
   5459         * rendering/RenderSVGBlock.cpp:
   5460         * rendering/RenderSVGBlock.h:
   5461         * rendering/RenderSVGContainer.cpp:
   5462         * rendering/RenderSVGContainer.h:
   5463         * rendering/RenderSVGGradientStop.cpp:
   5464         * rendering/RenderSVGGradientStop.h:
   5465         * rendering/RenderSVGHiddenContainer.cpp:
   5466         * rendering/RenderSVGHiddenContainer.h:
   5467         * rendering/RenderSVGImage.cpp:
   5468         * rendering/RenderSVGImage.h:
   5469         * rendering/RenderSVGInline.cpp:
   5470         * rendering/RenderSVGInline.h:
   5471         * rendering/RenderSVGInlineText.cpp:
   5472         * rendering/RenderSVGInlineText.h:
   5473         * rendering/RenderSVGTSpan.cpp:
   5474         * rendering/RenderSVGTSpan.h:
   5475         * rendering/RenderSVGText.cpp:
   5476         * rendering/RenderSVGText.h:
   5477         * rendering/RenderSlider.cpp:
   5478         * rendering/RenderSlider.h:
   5479         * rendering/RenderStyle.cpp:
   5480         * rendering/RenderStyle.h:
   5481         * rendering/RenderTable.cpp:
   5482         * rendering/RenderTable.h:
   5483         * rendering/RenderTableCell.cpp:
   5484         * rendering/RenderTableCell.h:
   5485         * rendering/RenderTableCol.cpp:
   5486         * rendering/RenderTableCol.h:
   5487         * rendering/RenderTableRow.cpp:
   5488         * rendering/RenderTableRow.h:
   5489         * rendering/RenderTableSection.cpp:
   5490         * rendering/RenderTableSection.h:
   5491         * rendering/RenderText.cpp:
   5492         * rendering/RenderText.h:
   5493         * rendering/RenderTextControl.cpp:
   5494         * rendering/RenderTextControl.h:
   5495         * rendering/RenderTextFragment.cpp:
   5496         * rendering/RenderTextFragment.h:
   5497         * rendering/RenderTheme.cpp:
   5498         * rendering/RenderTheme.h:
   5499         * rendering/RenderThemeMac.h:
   5500         * rendering/RenderThemeMac.mm:
   5501         * rendering/RenderThemeSafari.cpp:
   5502         * rendering/RenderThemeSafari.h:
   5503         * rendering/RenderThemeWin.cpp:
   5504         * rendering/RenderThemeWin.h:
   5505         * rendering/RenderView.cpp:
   5506         * rendering/RenderView.h:
   5507         * rendering/RenderWidget.cpp:
   5508         * rendering/RenderWidget.h:
   5509         * rendering/RootInlineBox.cpp:
   5510         * rendering/RootInlineBox.h:
   5511         * rendering/SVGInlineFlowBox.cpp:
   5512         * rendering/SVGInlineFlowBox.h:
   5513         * rendering/SVGInlineTextBox.cpp:
   5514         * rendering/SVGInlineTextBox.h:
   5515         * rendering/SVGRootInlineBox.cpp:
   5516         * rendering/SVGRootInlineBox.h:
   5517         * rendering/TableLayout.h:
   5518         * rendering/bidi.cpp:
   5519         * rendering/bidi.h:
   5520         * rendering/break_lines.cpp:
   5521         * rendering/break_lines.h:
   5522         * xml/DOMParser.cpp:
   5523         * xml/DOMParser.h:
   5524         * xml/DOMParser.idl:
   5525         * xml/XMLHttpRequest.cpp:
   5526         * xml/XMLHttpRequest.h:
   5527         * xml/XMLSerializer.cpp:
   5528         * xml/XMLSerializer.h:
   5529         * xml/XMLSerializer.idl:
   5530         * xml/XPathEvaluator.idl:
   5531         * xml/XPathExpression.idl:
   5532         * xml/XPathNSResolver.idl:
   5533         * xml/XPathResult.idl:
   5534         * xml/XSLImportRule.cpp:
   5535         * xml/XSLImportRule.h:
   5536         * xml/XSLStyleSheet.cpp:
   5537         * xml/XSLStyleSheet.h:
   5538         * xml/XSLTProcessor.cpp:
   5539         * xml/XSLTProcessor.h:
   5540 
   5541 2007-09-25  Darin Adler  <darin (a] apple.com>
   5542 
   5543         Reviewed by Harrison.
   5544 
   5545         - fix <rdar://problem/5503225> CrashTracer: [USER] 2 crashes in Dashcode
   5546           at com.apple.WebCore: WebCore::Frame::document const + 0
   5547 
   5548         * page/FrameView.cpp: (WebCore::FrameView::updateControlTints):
   5549         Added null check.
   5550 
   5551 2007-09-25  Beth Dakin  <bdakin (a] apple.com>
   5552 
   5553         Reviewed by Darin.
   5554 
   5555         Fixes http://bugs.webkit.org/show_bug.cgi?id=15282 r25726 caused 
   5556         plugins/mouse-events.html to fail
   5557 
   5558         * page/FrameView.cpp:
   5559         (WebCore::FrameView::layout): We need to call 
   5560         updateWidgetPosition() after updating each widget.
   5561 
   5562 2007-09-25  Anders Carlsson  <andersca (a] apple.com>
   5563 
   5564         Build fix.
   5565         
   5566         * page/Chrome.cpp:
   5567         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   5568 
   5569 2007-09-25  Anders Carlsson  <andersca (a] apple.com>
   5570 
   5571         Reviewed by Geoff.
   5572 
   5573         <rdar://problem/5283916>
   5574         JavaScript timers may be firing while JavaScript alerts are displayed.
   5575         
   5576         Pause JavaScript timeouts while calling UI delegate methods that might show dialogs.
   5577         
   5578         * page/Chrome.cpp:
   5579         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   5580         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   5581 
   5582 2007-09-26  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   5583 
   5584         Reviewed by Anders.
   5585 
   5586         Implement PopupMenu using GtkMenu.
   5587 
   5588         * platform/PopupMenu.h:
   5589         * platform/gtk/PopupMenuGtk.cpp:
   5590         (WebCore::PopupMenu::PopupMenu):
   5591         (WebCore::PopupMenu::~PopupMenu):
   5592         (WebCore::PopupMenu::show):
   5593         (WebCore::PopupMenu::hide):
   5594         (WebCore::PopupMenu::updateFromElement):
   5595         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   5596         (WebCore::PopupMenu::menuItemActivated):
   5597         (WebCore::PopupMenu::menuUnmapped):
   5598         (WebCore::PopupMenu::menuPositionFunction):
   5599         (WebCore::PopupMenu::menuRemoveItem):
   5600 
   5601 2007-09-23  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   5602 
   5603         Rubber stamped by Mark.
   5604 
   5605         Obey the Coding-Style and move the asterisk to the
   5606         left to be part of the type.
   5607 
   5608         * platform/gtk/RenderThemeGtk.h:
   5609 
   5610 2007-09-25  Beth Dakin  <bdakin (a] apple.com>
   5611 
   5612         Reviewed by Darin.
   5613 
   5614         Fix for <rdar://problem/5466459> CrashTracer: [USER] 1 crash in 
   5615         NetNewsWire at com.apple.WebCore: WebCore::bidiNext + 485 (15241)
   5616 
   5617         Mitz discovered that this crash appeared because r25128 made it 
   5618         possible for RenderPartObject::updateWidget() to be called during 
   5619         layout. updateWidget() can, through a series of calls, cause an 
   5620         attach/detach to happen, which is very bad in the middle of a 
   5621         layout and is what led to this crash. This patch fixes that by 
   5622         having the FrameView keep track of a queue of RenderPartObjects 
   5623         that need to call updateWidget(), and it goes through the queue 
   5624         calling updateWidget() as soon as layout is done.
   5625 
   5626         * page/FrameView.cpp: We only want to call updateWidget() if we are 
   5627         not in a nested layout. Unfortunately, the existing variables on 
   5628         FrameViewPrivate do not have exactly the information that we need, 
   5629         so I added nestedLayoutCount.
   5630         (WebCore::FrameViewPrivate::reset): Reset nestedLayoutCount.
   5631         (WebCore::FrameView::layout): Increment nestedLayoutCount once we 
   5632         have gotten through all of the early returns. Call updateWidget() 
   5633         after layout is nestedLayoutCount is 1 and there are widgets to 
   5634         update. Decrement nestedLayoutCount at the end.
   5635         (WebCore::FrameView::addWidgetToUpdate):
   5636         (WebCore::FrameView::removeWidgetToUpdate):
   5637         * page/FrameView.h:
   5638         * rendering/RenderPartObject.cpp:
   5639         (WebCore::RenderPartObject::~RenderPartObject): Remove this from 
   5640         the FrameView's update set.
   5641         (WebCore::RenderPartObject::layout): Instead of calling 
   5642         updateWidget() immediately, add this to the update widget set on 
   5643         FrameView.
   5644         * rendering/RenderPartObject.h:
   5645 
   5646 2007-09-25  David Kilzer  <ddkilzer (a] webkit.org>
   5647 
   5648         Reviewed by Mark Rowe.
   5649 
   5650         - fix http://bugs.webkit.org/show_bug.cgi?id=15275
   5651           SVG dependency on WebCore/dom/XMLTokenizer.cpp
   5652 
   5653         * dom/XMLTokenizer.cpp: Moved #include "SVGStyleElement.h" into #if ENABLE(SVG).
   5654 
   5655 2007-09-25  Justin Garcia  <justin.garcia (a] apple.com>
   5656 
   5657         Reviewed by Darin.
   5658 
   5659         <rdar://problem/5483567> 
   5660         REGRESSION (Tiger only, workaround in AppKit on Leopard): Pasting words copied from TextEdit in Mail adds extra newline
   5661         
   5662         * editing/ReplaceSelectionCommand.cpp:
   5663         (WebCore::ReplaceSelectionCommand::removeUnrenderedNodes): Added.
   5664         (WebCore::ReplaceSelectionCommand::doApply): Call removeUnrenderedNodes
   5665         to prevent unrendered spaces from interfering with paragraph merging.
   5666         * editing/ReplaceSelectionCommand.h:
   5667 
   5668 2007-09-24  Steve Falkenburg  <sfalken (a] apple.com>
   5669 
   5670         Reviewed by Darin.
   5671 
   5672         - fix <rdar://problem/5502513>
   5673 
   5674         * platform/win/FontCacheWin.cpp:
   5675         (WebCore::FontCache::getFontLinkInterface):
   5676         Roll back this file; the old code leaked a global COM object, but that's
   5677         no big deal and the new code caused a crash on quit.
   5678 
   5679 2007-09-24  Anders Carlsson  <andersca (a] apple.com>
   5680 
   5681         Reviewed by Adam.
   5682 
   5683         <rdar://problem/5494608>
   5684         Seed: Safari will follow links in Flash movies without clicking.
   5685 
   5686         Make sure to handle mouseover and mouseout so the plug-in can track when the mouse is over it.
   5687                 
   5688         * plugins/win/PluginViewWin.cpp:
   5689         (WebCore::PluginViewWin::handleMouseEvent):
   5690 
   5691 2007-09-24  Mike Fenton  <mike (a] staikos.net>
   5692 
   5693         Reviewed by George Staikos.
   5694 
   5695         Switch to using a QImage instead of a QPixmap to make transparency work.
   5696 
   5697         * html/CanvasRenderingContext2D.cpp:
   5698         (WebCore::CanvasRenderingContext2D::drawImage):
   5699         * html/HTMLCanvasElement.cpp:
   5700         (WebCore::HTMLCanvasElement::paint):
   5701         (WebCore::HTMLCanvasElement::createDrawingContext):
   5702         (WebCore::HTMLCanvasElement::createPlatformImage):
   5703         * html/HTMLCanvasElement.h:
   5704 
   5705 2007-09-21  Kevin McCullough  <kmccullough (a] apple.com>
   5706 
   5707         Reviewed by Sam.
   5708 
   5709         - Updated project files to not use Edit and Continue for Debug Information since it doesn't work and breaks some functionality.
   5710 
   5711         * WebCore.vcproj/WebCore.vcproj:
   5712 
   5713 2007-09-24  Brady Eidson  <beidson (a] apple.com>
   5714 
   5715         Reviewed by John Sullivan
   5716 
   5717         * loader/icon/IconDatabase.cpp:
   5718         (WebCore::IconDatabase::iconForPageURL): Assert the page url is non-null
   5719 
   5720 2007-09-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   5721 
   5722         Rubber stamped by Adam.
   5723 
   5724         Renamed files from *Gdk to *Gtk (see #14732) using the
   5725         work of Juan A. Suarez Romero as a base.
   5726 
   5727         GDK -> GTK
   5728 
   5729         * Projects/gdk/webcore-gdk.bkl:
   5730         * WebCore.pro:
   5731         * WebCoreSources.bkl:
   5732         * loader/gdk: Removed.
   5733         * loader/gdk/DocumentLoaderGdk.cpp: Removed.
   5734         * loader/gtk: Added.
   5735         * loader/gtk/DocumentLoaderGdk.cpp: Removed.
   5736         * loader/gtk/DocumentLoaderGtk.cpp: Added.
   5737         * page/FrameView.cpp:
   5738         * page/FrameView.h:
   5739         * page/gdk: Removed.
   5740         * page/gdk/DragControllerGdk.cpp: Removed.
   5741         * page/gdk/EventHandlerGdk.cpp: Removed.
   5742         * page/gdk/FrameGdk.cpp: Removed.
   5743         * page/gtk: Added.
   5744         * page/gtk/DragControllerGdk.cpp: Removed.
   5745         * page/gtk/DragControllerGtk.cpp: Added.
   5746         * page/gtk/EventHandlerGdk.cpp: Removed.
   5747         * page/gtk/EventHandlerGtk.cpp: Added.
   5748         (WebCore::EventHandler::createDraggingClipboard):
   5749         * page/gtk/FrameGdk.cpp: Removed.
   5750         * page/gtk/FrameGtk.cpp: Added.
   5751         * platform/ContextMenuItem.h:
   5752         * platform/Cursor.h:
   5753         * platform/DragData.h:
   5754         * platform/DragImage.h:
   5755         * platform/FontData.h:
   5756         * platform/NotImplemented.h:
   5757         * platform/PlatformKeyboardEvent.h:
   5758         * platform/PlatformMenuDescription.h:
   5759         * platform/PlatformMouseEvent.h:
   5760         * platform/PlatformWheelEvent.h:
   5761         * platform/ScrollView.h:
   5762         * platform/Widget.h:
   5763         * platform/gdk: Removed.
   5764         * platform/gdk/ClipboardGdk.cpp: Removed.
   5765         * platform/gdk/ClipboardGdk.h: Removed.
   5766         * platform/gdk/ContextMenuGdk.cpp: Removed.
   5767         * platform/gdk/ContextMenuItemGdk.cpp: Removed.
   5768         * platform/gdk/CookieJarGdk.cpp: Removed.
   5769         * platform/gdk/CursorGdk.cpp: Removed.
   5770         * platform/gdk/DragDataGdk.cpp: Removed.
   5771         * platform/gdk/DragImageGdk.cpp: Removed.
   5772         * platform/gdk/FileChooserGdk.cpp: Removed.
   5773         * platform/gdk/FileSystemGdk.cpp: Removed.
   5774         * platform/gdk/FontCacheGdk.cpp: Removed.
   5775         * platform/gdk/FontDataGdk.cpp: Removed.
   5776         * platform/gdk/FontGdk.cpp: Removed.
   5777         * platform/gdk/FontPlatformData.h: Removed.
   5778         * platform/gdk/FontPlatformDataGdk.cpp: Removed.
   5779         * platform/gdk/GlyphPageTreeNodeGdk.cpp: Removed.
   5780         * platform/gdk/KeyEventGdk.cpp: Removed.
   5781         * platform/gdk/KeyboardCodes.h: Removed.
   5782         * platform/gdk/LocalizedStringsGdk.cpp: Removed.
   5783         * platform/gdk/LoggingGdk.cpp: Removed.
   5784         * platform/gdk/MIMETypeRegistryGdk.cpp: Removed.
   5785         * platform/gdk/MouseEventGdk.cpp: Removed.
   5786         * platform/gdk/PasteboardGdk.cpp: Removed.
   5787         * platform/gdk/PlatformScreenGdk.cpp: Removed.
   5788         * platform/gdk/PlatformScrollBar.h: Removed.
   5789         * platform/gdk/PlatformScrollBarGdk.cpp: Removed.
   5790         * platform/gdk/PopupMenuGdk.cpp: Removed.
   5791         * platform/gdk/RenderThemeGdk.cpp: Removed.
   5792         * platform/gdk/RenderThemeGdk.h: Removed.
   5793         * platform/gdk/ScrollViewGdk.cpp: Removed.
   5794         * platform/gdk/SearchPopupMenuGdk.cpp: Removed.
   5795         * platform/gdk/SharedTimerLinux.cpp: Removed.
   5796         * platform/gdk/SoundGdk.cpp: Removed.
   5797         * platform/gdk/SystemTimeLinux.cpp: Removed.
   5798         * platform/gdk/TemporaryLinkStubs.cpp: Removed.
   5799         * platform/gdk/WheelEventGdk.cpp: Removed.
   5800         * platform/gdk/WidgetGdk.cpp: Removed.
   5801         * platform/graphics/GraphicsContext.h:
   5802         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   5803         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   5804         (WebCore::GraphicsContext::setPlatformFont):
   5805         * platform/graphics/gdk: Removed.
   5806         * platform/graphics/gdk/IconGdk.cpp: Removed.
   5807         * platform/graphics/gdk/ImageGdk.cpp: Removed.
   5808         * platform/graphics/gtk: Added.
   5809         * platform/graphics/gtk/IconGdk.cpp: Removed.
   5810         * platform/graphics/gtk/IconGtk.cpp: Added.
   5811         * platform/graphics/gtk/ImageGdk.cpp: Removed.
   5812         * platform/graphics/gtk/ImageGtk.cpp: Added.
   5813         * platform/gtk: Added.
   5814         * platform/gtk/ClipboardGdk.cpp: Removed.
   5815         * platform/gtk/ClipboardGdk.h: Removed.
   5816         * platform/gtk/ClipboardGtk.cpp: Added.
   5817         (WebCore::ClipboardGtk::ClipboardGtk):
   5818         (WebCore::ClipboardGtk::~ClipboardGtk):
   5819         (WebCore::ClipboardGtk::clearData):
   5820         (WebCore::ClipboardGtk::clearAllData):
   5821         (WebCore::ClipboardGtk::getData):
   5822         (WebCore::ClipboardGtk::setData):
   5823         (WebCore::ClipboardGtk::types):
   5824         (WebCore::ClipboardGtk::dragLocation):
   5825         (WebCore::ClipboardGtk::dragImage):
   5826         (WebCore::ClipboardGtk::setDragImage):
   5827         (WebCore::ClipboardGtk::dragImageElement):
   5828         (WebCore::ClipboardGtk::setDragImageElement):
   5829         (WebCore::ClipboardGtk::createDragImage):
   5830         (WebCore::ClipboardGtk::declareAndWriteDragImage):
   5831         (WebCore::ClipboardGtk::writeURL):
   5832         (WebCore::ClipboardGtk::writeRange):
   5833         (WebCore::ClipboardGtk::hasData):
   5834         * platform/gtk/ClipboardGtk.h: Added.
   5835         * platform/gtk/ContextMenuGdk.cpp: Removed.
   5836         * platform/gtk/ContextMenuGtk.cpp: Added.
   5837         * platform/gtk/ContextMenuItemGdk.cpp: Removed.
   5838         * platform/gtk/ContextMenuItemGtk.cpp: Added.
   5839         * platform/gtk/CookieJarGdk.cpp: Removed.
   5840         * platform/gtk/CookieJarGtk.cpp: Added.
   5841         * platform/gtk/CursorGdk.cpp: Removed.
   5842         * platform/gtk/CursorGtk.cpp: Added.
   5843         * platform/gtk/DragDataGdk.cpp: Removed.
   5844         * platform/gtk/DragDataGtk.cpp: Added.
   5845         * platform/gtk/DragImageGdk.cpp: Removed.
   5846         * platform/gtk/DragImageGtk.cpp: Added.
   5847         * platform/gtk/FileChooserGdk.cpp: Removed.
   5848         * platform/gtk/FileChooserGtk.cpp: Added.
   5849         * platform/gtk/FileSystemGdk.cpp: Removed.
   5850         * platform/gtk/FileSystemGtk.cpp: Added.
   5851         * platform/gtk/FontCacheGdk.cpp: Removed.
   5852         * platform/gtk/FontCacheGtk.cpp: Added.
   5853         * platform/gtk/FontDataGdk.cpp: Removed.
   5854         * platform/gtk/FontDataGtk.cpp: Added.
   5855         * platform/gtk/FontGdk.cpp: Removed.
   5856         * platform/gtk/FontGtk.cpp: Added.
   5857         * platform/gtk/FontPlatformDataGdk.cpp: Removed.
   5858         * platform/gtk/FontPlatformDataGtk.cpp: Added.
   5859         * platform/gtk/GlyphPageTreeNodeGdk.cpp: Removed.
   5860         * platform/gtk/GlyphPageTreeNodeGtk.cpp: Added.
   5861         * platform/gtk/KeyEventGdk.cpp: Removed.
   5862         * platform/gtk/KeyEventGtk.cpp: Added.
   5863         * platform/gtk/LocalizedStringsGdk.cpp: Removed.
   5864         * platform/gtk/LocalizedStringsGtk.cpp: Added.
   5865         * platform/gtk/LoggingGdk.cpp: Removed.
   5866         * platform/gtk/LoggingGtk.cpp: Added.
   5867         * platform/gtk/MIMETypeRegistryGdk.cpp: Removed.
   5868         * platform/gtk/MIMETypeRegistryGtk.cpp: Added.
   5869         * platform/gtk/MouseEventGdk.cpp: Removed.
   5870         * platform/gtk/MouseEventGtk.cpp: Added.
   5871         * platform/gtk/PasteboardGdk.cpp: Removed.
   5872         * platform/gtk/PasteboardGtk.cpp: Added.
   5873         * platform/gtk/PlatformScreenGdk.cpp: Removed.
   5874         * platform/gtk/PlatformScreenGtk.cpp: Added.
   5875         * platform/gtk/PlatformScrollBarGdk.cpp: Removed.
   5876         * platform/gtk/PlatformScrollBarGtk.cpp: Added.
   5877         * platform/gtk/PopupMenuGdk.cpp: Removed.
   5878         * platform/gtk/PopupMenuGtk.cpp: Added.
   5879         * platform/gtk/RenderThemeGdk.cpp: Removed.
   5880         * platform/gtk/RenderThemeGdk.h: Removed.
   5881         * platform/gtk/RenderThemeGtk.cpp: Added.
   5882         (WebCore::theme):
   5883         (WebCore::RenderThemeGtk::RenderThemeGtk):
   5884         (WebCore::RenderThemeGtk::close):
   5885         (WebCore::RenderThemeGtk::addIntrinsicMargins):
   5886         (WebCore::RenderThemeGtk::supportsFocus):
   5887         (WebCore::RenderThemeGtk::determineState):
   5888         (WebCore::RenderThemeGtk::determineShadow):
   5889         (WebCore::RenderThemeGtk::getThemeData):
   5890         (WebCore::RenderThemeGtk::setCheckboxSize):
   5891         (WebCore::RenderThemeGtk::paintCheckbox):
   5892         (WebCore::RenderThemeGtk::setRadioSize):
   5893         (WebCore::RenderThemeGtk::paintRadio):
   5894         (WebCore::RenderThemeGtk::paintButton):
   5895         (WebCore::RenderThemeGtk::adjustTextFieldStyle):
   5896         (WebCore::RenderThemeGtk::paintTextField):
   5897         (WebCore::RenderThemeGtk::paintTextArea):
   5898         (WebCore::RenderThemeGtk::adjustButtonStyle):
   5899         (WebCore::RenderThemeGtk::systemFont):
   5900         (WebCore::RenderThemeGtk::gtkButton):
   5901         (WebCore::RenderThemeGtk::gtkCheckbox):
   5902         (WebCore::RenderThemeGtk::gtkRadioButton):
   5903         (WebCore::RenderThemeGtk::gtkWindowContainer):
   5904         * platform/gtk/RenderThemeGtk.h: Added.
   5905         * platform/gtk/ScrollViewGdk.cpp: Removed.
   5906         * platform/gtk/ScrollViewGtk.cpp: Added.
   5907         * platform/gtk/SearchPopupMenuGdk.cpp: Removed.
   5908         * platform/gtk/SearchPopupMenuGtk.cpp: Added.
   5909         * platform/gtk/SoundGdk.cpp: Removed.
   5910         * platform/gtk/SoundGtk.cpp: Added.
   5911         * platform/gtk/WheelEventGdk.cpp: Removed.
   5912         * platform/gtk/WheelEventGtk.cpp: Added.
   5913         * platform/gtk/WidgetGdk.cpp: Removed.
   5914         * platform/gtk/WidgetGtk.cpp: Added.
   5915         * platform/network/ResourceHandle.h:
   5916 
   5917 2007-09-23  Rob Buis  <buis (a] kde.org>
   5918 
   5919         Reviewed by Hyatt.
   5920 
   5921         http://bugs.webkit.org/show_bug.cgi?id=15025
   5922         Background repeat css property is not inherited from parent if unspecified
   5923 
   5924         Don't let invalid url specification in background shorthand make
   5925         the entire shorthand invalid.
   5926 
   5927         * css/CSSParser.cpp:
   5928         (WebCore::CSSParser::parseBackgroundImage):
   5929         (WebCore::CSSParser::parseBackgroundProperty):
   5930         * css/CSSParser.h:
   5931 
   5932 2007-09-22  Adam Roben  <aroben (a] apple.com>
   5933 
   5934         Fix Bug 15251: REGRESSION: <input type=range> doesn't respond to form.reset() or setting input.value
   5935 
   5936         http://bugs.webkit.org/show_bug.cgi?id=15251
   5937         <rdar://5498169>
   5938 
   5939         Reviewed by Maciej.
   5940 
   5941         Test: fast/forms/range-reset.html
   5942 
   5943         * html/HTMLInputElement.cpp:
   5944         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): <input
   5945         type=range> should be storing its value separately from the value
   5946         attribute, as do all of our variable-input input types.
   5947 
   5948 2007-09-21  Mark Rowe  <mrowe (a] apple.com>
   5949 
   5950         Build fix for non-Mac platforms after r25697.
   5951         
   5952         Rename Frame::cleanupPlatformScriptObjects to Frame::clearPlatformScriptObjects.
   5953 
   5954         * bridge/win/FrameWin.cpp:
   5955         * page/gdk/FrameGdk.cpp:
   5956         * page/qt/FrameQt.cpp:
   5957         * platform/wx/TemporaryLinkStubs.cpp:
   5958 
   5959 2007-09-21  Adele Peterson  <adele (a] apple.com>
   5960 
   5961         Reviewed by Sam.
   5962 
   5963         Fix for <rdar://problem/5497357> REGRESSION: Safari doesn't show the month days on AirFrance reservation page
   5964 
   5965         Test: fast/dom/HTMLSelectElement/options-collection-set-string-length.html
   5966 
   5967         * bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::setLength):
   5968           Convert the value to a number.  We already have code here to check if the value is not a number.
   5969           This matches other browsers, which allow a string value to be used to set the length.
   5970 
   5971 2007-09-21  Timothy Hatcher  <timothy (a] apple.com>
   5972 
   5973         Reviewed by Darin.
   5974 
   5975         <rdar://problem/5491013> REGRESSION: -[WebView windowScriptObject] returns a dummy object or nil if a page hasn't loaded
   5976 
   5977         Calling -[WebView windowScriptObject] before the page loads would give you nil. This behavior didn't match Tiger.
   5978         The API behavior in Tiger let you get the window script object once and keep ahold of it as long as you needed it.
   5979         The window object would remain valid even after page loads. This change restores the Tiger behavior.
   5980 
   5981         <rdar://problem/5495790> NULL dereference crash beneath Bindings::RootObject::interpreter when saving Dashcode document
   5982 
   5983         The changes to WebScriptObject's _isSafeScript call also fixed the crash in Dashcode.
   5984 
   5985         * bindings/objc/WebScriptObject.mm:
   5986         (-[WebScriptObject _setOriginRootObject:andRootObject:]): New method used to update the the root objects,
   5987         so the WebScriptObject can still be used after a page load.
   5988         (-[WebScriptObject _isSafeScript]): Call [self _rootObject] instead of accessing the data member directly.
   5989         DOMNode has an override for the _rootObject method, and it can return 0 when _private->_rootObject
   5990         is non-zero. We would return YES here when it wasn't safe and later crash with my modified layout tests.
   5991         Checking _rootObject first prevents other calls sites from needing to check for a valid root object,
   5992         this fixed the Dashcode crash.
   5993         (-[WebScriptObject _imp]): Ditto.
   5994 
   5995         * bindings/objc/WebScriptObjectPrivate.h: Add _setOriginRootObject:andRootObject:.
   5996 
   5997         * loader/FrameLoader.cpp:
   5998         (WebCore::FrameLoader::clear): Call the renamed clearScriptObjects function.
   5999         (WebCore::FrameLoader::dispatchWindowObjectAvailable): Some gratuitous code cleanup.
   6000 
   6001         * page/Frame.cpp:
   6002         (WebCore::Frame::clearScriptObjects): Renamed cleanupScriptObject to clearScriptObjects.
   6003         Call clearPlatformScriptObjects last so m_bindingRootObject is already NULL.
   6004         (WebCore::Frame::windowScriptNPObject): Hold a JSLock before accessing the window. This
   6005         change is unrelated to the bug, but should be fixed.
   6006 
   6007         * page/mac/FrameMac.mm:
   6008         (WebCore::Frame::windowScriptObject): Return a script object even if the interpreter is NULL.
   6009         This resotres the Tiger behavior of always being able to access the window object.
   6010         (WebCore::Frame::clearPlatformScriptObjects): Keep the window script object around, and update
   6011         the root objects for the window script object.
   6012 
   6013         * page/Frame.h: Rename cleanupScriptObject to clearScriptObjects.
   6014         * page/FramePrivate.h: Use a RetainPtr for m_windowScriptObject.
   6015 
   6016 2007-09-21  Mike Fenton  <mike (a] staikos.net>
   6017 
   6018         Reviewed by George Staikos.
   6019 
   6020         Fix styled pen support by not clobbering QPen properties.
   6021 
   6022         * html/CanvasStyle.cpp:
   6023         (WebCore::CanvasStyle::applyStrokeColor):
   6024         (WebCore::CanvasStyle::applyFillColor):
   6025 
   6026 2007-09-21  Oliver Hunt  <oliver (a] apple.com>
   6027 
   6028         Reviewed by Tristan and Darin
   6029 
   6030         http://bugs.webkit.org/show_bug.cgi?id=15239
   6031         <rdar://problem/5491955> REGRESSION (r25547): With Hanin IME, one cannot input characters into forms (15239)
   6032         
   6033         This problem was caused by the setComposition method failing to clear
   6034         the composition markers in the presence of an empty string.  This would 
   6035         result in the caret being locked within the 0 length bounds of the "composition"
   6036         and so preventing basic keyboard interaction.
   6037 
   6038         * editing/Editor.cpp:
   6039         (WebCore::Editor::setComposition):
   6040 
   6041 2007-09-21  Adele Peterson  <adele (a] apple.com>
   6042 
   6043         Reviewed by Tristan.
   6044 
   6045         Fix for <rdar://problem/5497346> "Check spelling when I click Send" crashes on stationery messages every time
   6046 
   6047         No test. I wasn't able to find a way to get this to occur with Safari or DumpRenderTree.
   6048 
   6049         * editing/Editor.cpp: (WebCore::Editor::advanceToNextMisspelling): Updated comment.
   6050         * editing/htmlediting.cpp:
   6051         (WebCore::firstEditablePositionAfterPositionInRoot): Only return the root position if its editable.
   6052         (WebCore::maxDeepOffset): Added nil check & assert.
   6053 
   6054 2007-09-21  Anders Carlsson  <andersca (a] apple.com>
   6055 
   6056         Reviewed by Steve.
   6057 
   6058         <rdar://problem/5404339>
   6059         Site redirects continuosly, starving UI thread, causing app to hang.
   6060         
   6061         Use GetQueueStatus to see if there are input messages in the queue that aren't being processed.
   6062         If so, use a low-priority timer instead of PostMessage.
   6063         
   6064         * platform/win/SharedTimerWin.cpp:
   6065         (WebCore::setSharedTimerFireTime):
   6066 
   6067 2007-09-22  Darin Adler  <darin (a] apple.com>
   6068 
   6069         Reviewed by Anders.
   6070 
   6071         - add QueryInterface capabilities to COMPtr
   6072 
   6073         * platform/win/COMPtr.h:
   6074         (COMPtr::COMPtr): Added constructor that takes a Query tag and
   6075         does an appropriate QueryInterface.
   6076         (COMPtr::query): Added function to do a queryInterface.
   6077         (COMPtr::copyQueryInterfaceRef): Added private helper used by
   6078         both of the above. Note that when the query fails you get a 0,
   6079         which is the same thing you get if a 0 pointer is passed in.
   6080 
   6081         * platform/win/FontCacheWin.cpp:
   6082         (WebCore::FontCache::getFontLinkInterface): Convert to using
   6083         the new query as a test case. Also eliminate the unnecessary
   6084         second global variable and use COMPtr objects rather than just
   6085         leaking references.
   6086 
   6087         * platform/win/WCDataObject.h: Removed unneeded include and
   6088         using statements.
   6089 
   6090 2007-09-21  Anders Carlsson  <andersca (a] apple.com>
   6091 
   6092         Reviewed by Adam.
   6093 
   6094         <rdar://problem/5494790>
   6095         clicking any link in the Flash regions at bananarepublic.com results in bad page
   6096 
   6097         Don't replace the frame contents, the Mac version doesn't do this.
   6098         
   6099         * plugins/win/PluginViewWin.cpp:
   6100         (WebCore::PluginViewWin::performRequest):
   6101 
   6102 2007-09-21  Anders Carlsson  <andersca (a] apple.com>
   6103 
   6104         Reviewed by Darin.
   6105 
   6106         <rdar://problem/5496700>
   6107         Repro crash loading http://www.tivo.com/whatistivo/tivohd/index.html
   6108 
   6109         Don't continue if the plug-in cancelled the stream.
   6110                 
   6111         * loader/win/NetscapePlugInStreamLoaderWin.cpp:
   6112         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
   6113 
   6114 2007-09-21  Kevin Decker  <kdecker (a] apple.com>
   6115 
   6116         * platform/mac/SoftLinking.h: Build fix; added necessary #imports. 
   6117 
   6118 2007-09-21  Kevin Decker  <kdecker (a] apple.com>
   6119 
   6120         Reviewed by Darin Adler.
   6121 
   6122         * WebCore.xcodeproj/project.pbxproj: Added SoftLinking.h to the project.
   6123         * platform/mac/SoftLinking.h: Contains a new macro; useful in helping to lazily load frameworks.
   6124 
   6125 2007-09-20  Ada Chan  <adachan (a] apple.com>
   6126 
   6127         <rdar://problem/5477240> Regression: Footer is too high in print preview
   6128         Make computePageRectsForFrame() return the height of the page adjusted for margins.
   6129 
   6130         Reviewed by Steve.
   6131 
   6132         * bridge/win/FrameWin.cpp:
   6133         (WebCore::computePageRectsForFrame):
   6134         * bridge/win/FrameWin.h:
   6135 
   6136 2007-09-19  Kevin McCullough  <kmccullough (a] apple.com>
   6137 
   6138         Reviewed by Hyatt.
   6139 
   6140         - <rdar://problem/5101991> Avril Lavigne music player comes up in a window with scrollbars
   6141         - Implementing missing scrollbar functionality to allow turning off scrollbars correctly.
   6142 
   6143         * platform/ScrollView.h:
   6144         * platform/win/ScrollViewWin.cpp:
   6145         (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
   6146         (WebCore::ScrollView::ScrollViewPrivate::allowsScrolling):
   6147         (WebCore::ScrollView::updateScrollbars):
   6148         (WebCore::ScrollView::setAllowsScrolling):
   6149         (WebCore::ScrollView::allowsScrolling):
   6150 
   6151 2007-09-20  Brady Eidson  <beidson (a] apple.com>
   6152 
   6153         Reviewed by Dave Hyatt
   6154 
   6155         <rdar://problem/5245981> - No favicon shows up for cnet.com
   6156         
   6157         CNet's favicon has two images in it - a 32x32 white square, and a 16x16 image that is their actual icon
   6158         Till now on Windows we've always gone straight for the first image in an icon for the favicon, now we
   6159         actually do proper size matching
   6160 
   6161         * platform/graphics/BitmapImage.h:
   6162 
   6163         * platform/graphics/Image.h:
   6164         (WebCore::Image::getHBITMAPOfSize): 
   6165         (WebCore::Image::drawFrameMatchingSourceSize): Search through the frames of the image for the correct size
   6166 
   6167         * platform/graphics/win/ImageWin.cpp:
   6168         (WebCore::BitmapImage::getHBITMAP):
   6169         (WebCore::BitmapImage::getHBITMAPOfSize):
   6170         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
   6171 
   6172 2007-09-20  Steve Falkenburg  <sfalken (a] apple.com>
   6173 
   6174         Reviewed by Brady.
   6175 
   6176         Call ascii() instead of utf8() from debug logging code to avoid threading
   6177         issues associated w/ converting to UTF8.
   6178 
   6179         * loader/icon/IconDatabase.cpp:
   6180         (WebCore::makeAllDirectories):
   6181         (WebCore::IconDatabase::retainIconForPageURL):
   6182         (WebCore::IconDatabase::releaseIconForPageURL):
   6183         (WebCore::IconDatabase::setIconDataForIconURL):
   6184         (WebCore::IconDatabase::setIconURLForPageURL):
   6185         (WebCore::IconDatabase::loadDecisionForIconURL):
   6186         (WebCore::IconDatabase::getOrCreatePageURLRecord):
   6187         (WebCore::IconDatabase::iconDatabaseSyncThread):
   6188         (WebCore::IconDatabase::performOpenInitialization):
   6189         (WebCore::IconDatabase::checkIntegrity):
   6190         (WebCore::IconDatabase::performURLImport):
   6191         (WebCore::IconDatabase::readFromDatabase):
   6192         (WebCore::IconDatabase::writeToDatabase):
   6193         (WebCore::readySQLStatement):
   6194         (WebCore::IconDatabase::setIconURLForPageURLInSQLDatabase):
   6195         (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
   6196         (WebCore::IconDatabase::removePageURLFromSQLDatabase):
   6197         (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
   6198         (WebCore::IconDatabase::addIconURLToSQLDatabase):
   6199         (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
   6200         (WebCore::IconDatabase::removeIconFromSQLDatabase):
   6201         (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
   6202 
   6203 2007-09-20  Mike Fenton  <mike (a] staikos.net>
   6204 
   6205         Reviewed by George Staikos.
   6206 
   6207         Implement gradients and more of canvas for Qt.  Style changes and some
   6208         of the stroking fixes by George.
   6209 
   6210         * html/CanvasGradient.cpp:
   6211         (WebCore::CanvasGradient::CanvasGradient):
   6212         (WebCore::CanvasGradient::~CanvasGradient):
   6213         (WebCore::CanvasGradient::addColorStop):
   6214         (WebCore::CanvasGradient::platformShading):
   6215         * html/CanvasGradient.h:
   6216         * html/CanvasRenderingContext2D.cpp:
   6217         (WebCore::CanvasRenderingContext2D::fill):
   6218         (WebCore::CanvasRenderingContext2D::stroke):
   6219         (WebCore::CanvasRenderingContext2D::fillRect):
   6220         (WebCore::CanvasRenderingContext2D::applyFillPattern):
   6221 
   6222 2007-09-20  Rob Buis  <buis (a] kde.org>
   6223 
   6224         Reviewed by Mitz.
   6225 
   6226         http://bugs.webkit.org/show_bug.cgi?id=15235
   6227         Options can not be removed from a Select element with OptGroup's using JavaScript
   6228         <rdar://problem/5494123>
   6229 
   6230         Remove HTMLOptionElement children against the proper parent node.
   6231 
   6232         * html/HTMLSelectElement.cpp:
   6233         (WebCore::HTMLSelectElement::remove):
   6234 
   6235 2007-09-19  John Sullivan  <sullivan (a] apple.com>
   6236 
   6237         Reviewed by Darin Adler.
   6238         
   6239         - WebCore part of speculative fix for <rdar://problem/5490627>, about crashes constructing a
   6240           String using the values filled in by checkSpellingOfString()
   6241 
   6242         * editing/Editor.cpp:
   6243         (WebCore::findFirstMisspellingInRange):
   6244         initialize out parameters the way we do elsewhere; add many assertions for improper results
   6245         from checkSpellingOfString(); don't create a String at all until we've checked all the ways
   6246         that checkSpellingOfString() results could indicate invalid string, even the unexpected ones;
   6247         as an optimization, don't construct a String at all when looping through to mark all instances.
   6248 
   6249 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6250 
   6251         Reviewed by Adam.
   6252 
   6253         There is no need to have FTPDirectoryDocument stubs. We can
   6254         compile FTPDirectoryDocument.cpp and FTPDirectoryTokenizer.cpp
   6255         instead.
   6256 
   6257         * WebCore.pro:
   6258         * platform/gdk/TemporaryLinkStubs.cpp:
   6259         * platform/qt/TemporaryLinkStubs.cpp:
   6260 
   6261 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6262 
   6263         Reviewed by Adam.
   6264 
   6265         Remove includes that are not needed.
   6266 
   6267         * platform/gdk/TemporaryLinkStubs.cpp:
   6268 
   6269 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6270 
   6271         Reviewed by Adam.
   6272 
   6273         Move the Pasteboard stubs to PasteboardGdk.cpp.
   6274 
   6275         * WebCore.pro:
   6276         * platform/gdk/PasteboardGdk.cpp: Added.
   6277         (WebCore::Pasteboard::generalPasteboard):
   6278         (WebCore::Pasteboard::writeSelection):
   6279         (WebCore::Pasteboard::writeURL):
   6280         (WebCore::Pasteboard::writeImage):
   6281         (WebCore::Pasteboard::clear):
   6282         (WebCore::Pasteboard::canSmartReplace):
   6283         (WebCore::Pasteboard::documentFragment):
   6284         (WebCore::Pasteboard::plainText):
   6285         (WebCore::Pasteboard::Pasteboard):
   6286         * platform/gdk/TemporaryLinkStubs.cpp:
   6287 
   6288 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6289 
   6290         Reviewed by Adam.
   6291 
   6292         Move the Icon stubs to IconGdk.cpp
   6293 
   6294         * WebCore.pro:
   6295         * platform/gdk/TemporaryLinkStubs.cpp:
   6296         * platform/graphics/gdk/IconGdk.cpp: Added.
   6297         (WebCore::Icon::Icon):
   6298         (WebCore::Icon::~Icon):
   6299         (WebCore::Icon::newIconForFile):
   6300 
   6301 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6302 
   6303         Reviewed by Adam.
   6304 
   6305         Move the Font stubs to FontGdk.cpp
   6306 
   6307         * platform/gdk/FontGdk.cpp:
   6308         (WebCore::Font::drawComplexText):
   6309         (WebCore::Font::floatWidthForComplexText):
   6310         (WebCore::Font::offsetForPositionForComplexText):
   6311         (WebCore::Font::selectionRectForComplexText):
   6312         * platform/gdk/TemporaryLinkStubs.cpp:
   6313 
   6314 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6315 
   6316         Reviewed by Adam.
   6317 
   6318         Move the SearchPopupMenu stubs to SearchPopupMenuGdk.cpp
   6319 
   6320         * WebCore.pro:
   6321         * platform/gdk/SearchPopupMenuGdk.cpp: Added.
   6322         (WebCore::SearchPopupMenu::SearchPopupMenu):
   6323         (WebCore::SearchPopupMenu::saveRecentSearches):
   6324         (WebCore::SearchPopupMenu::loadRecentSearches):
   6325         (WebCore::SearchPopupMenu::enabled):
   6326         * platform/gdk/TemporaryLinkStubs.cpp:
   6327 
   6328 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6329 
   6330         Reviewed by Adam.
   6331 
   6332         Move the ContextMenu and ContextMenuItem stubs to
   6333         ContextMenuGdk.cpp and ContextMenuItemGdk.cpp.
   6334 
   6335         * WebCore.pro:
   6336         * platform/gdk/ContextMenuGdk.cpp: Added.
   6337         (WebCore::ContextMenu::ContextMenu):
   6338         (WebCore::ContextMenu::~ContextMenu):
   6339         (WebCore::ContextMenu::appendItem):
   6340         (WebCore::ContextMenu::setPlatformDescription):
   6341         (WebCore::ContextMenu::platformDescription):
   6342         (WebCore::ContextMenu::releasePlatformDescription):
   6343         * platform/gdk/ContextMenuItemGdk.cpp: Added.
   6344         (WebCore::ContextMenuItem::ContextMenuItem):
   6345         (WebCore::ContextMenuItem::~ContextMenuItem):
   6346         (WebCore::ContextMenuItem::releasePlatformDescription):
   6347         (WebCore::ContextMenuItem::type):
   6348         (WebCore::ContextMenuItem::setType):
   6349         (WebCore::ContextMenuItem::action):
   6350         (WebCore::ContextMenuItem::setAction):
   6351         (WebCore::ContextMenuItem::title):
   6352         (WebCore::ContextMenuItem::setTitle):
   6353         (WebCore::ContextMenuItem::platformSubMenu):
   6354         (WebCore::ContextMenuItem::setSubMenu):
   6355         (WebCore::ContextMenuItem::setChecked):
   6356         * platform/gdk/TemporaryLinkStubs.cpp:
   6357 
   6358 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6359 
   6360         Reviewed by Adam.
   6361 
   6362         Implement the WebCore::fileSize function using g_stat.
   6363 
   6364         * platform/gdk/FileSystemGdk.cpp:
   6365         (WebCore::fileSize):
   6366         * platform/gdk/TemporaryLinkStubs.cpp:
   6367 
   6368 2007-09-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6369 
   6370         Reviewed by Adam.
   6371 
   6372         Move the ResourceHandle stubs from TemporaryLinkStubs
   6373         to the ResourceHandleCurl.cpp file. This affects the
   6374         Gtk+ and wx port as they share the curl implementation.
   6375 
   6376 
   6377         * platform/gdk/TemporaryLinkStubs.cpp:
   6378         * platform/network/curl/ResourceHandleCurl.cpp:
   6379         (WebCore::ResourceHandle::willLoadFromCache):
   6380         (WebCore::ResourceHandle::loadsBlocked):
   6381         * platform/wx/TemporaryLinkStubs.cpp:
   6382 
   6383 2007-09-17  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6384 
   6385         Reviewed by Mark.
   6386 
   6387         Take http://bugs.webkit.org/show_bug.cgi?id=15221 into account
   6388         and change the variable names from nameSystem to systemName and
   6389         change the name of the function to stringByAdoptingFileSystemRepresentation.
   6390 
   6391         * platform/gdk/FileChooserGdk.cpp:
   6392         (WebCore::stringByAdoptingFileSystemRepresentation):
   6393         (WebCore::FileChooser::basenameForWidth):
   6394 
   6395 2007-09-19  Sam Weinig  <sam (a] webkit.org>
   6396 
   6397         Reviewed by Geoff Garen.
   6398 
   6399         Fix <rdar://problem/5492141> Assertion in isdigit() on windows Safari
   6400 
   6401         Test: fast/css/hexColor-isDigit-assert.html
   6402 
   6403         * platform/DeprecatedString.cpp:
   6404         (WebCore::isCharacterAllowedInBase): Check that the character is ascii 
   6405         to avoid an assertions on Windows.
   6406 
   6407 2007-09-19  Anders Carlsson  <andersca (a] apple.com>
   6408 
   6409         Reviewed by Geoff.
   6410 
   6411         <rdar://problem/5489879>
   6412         Combination of real player with high connection quality in selecting player makes Safari quit.
   6413         
   6414         Prevent the Real Player plug-in from calling the window proc recursively.
   6415         
   6416         * plugins/win/PluginViewWin.cpp:
   6417         (WebCore::PluginViewWin::wndProc):
   6418         (WebCore::PluginViewWin::setNPWindowRect):
   6419         (WebCore::PluginViewWin::determineQuirks):
   6420         (WebCore::PluginViewWin::PluginViewWin):
   6421         * plugins/win/PluginViewWin.h:
   6422         (WebCore::):
   6423 
   6424 2007-09-18  Adele Peterson  <adele (a] apple.com>
   6425 
   6426         Reviewed by Maciej.
   6427 
   6428         Fix for <rdar://problem/5472062> -webkit-user-select: none makes selection difficult
   6429         and for <rdar://problem/5472056> REGRESSION: Cannot type into edit fields on a form (sccsheriff.org)
   6430 
   6431         Tests:
   6432 
   6433         This fix has a few steps:
   6434         1) Removes the ignore value for the -webkit-user-select property.  We now decide when to prevent selection from starting by calling canStartSelection on the node.
   6435         2) Implements canStartSelection which returns false for all elements that used to have -webkit-user-select:ignore set, true for content editable nodes, 
   6436            and walks up the tree to ask the parent before allowing selection to be started on any other nodes.
   6437         3) We used to disallow selection from starting within -webkit-user-select:none blocks, but now we only use canStartSelection for that.  This will allow easy selections
   6438            in cases like iChat where there's a mix of selectable and non-selectable content.
   6439         4) Makes -webkit-user-select inherited.  After removing the "ignore" value, -webkit-user-select would behave like it was inherited anyways since we already allowed the text value to override the none value.
   6440 
   6441 
   6442         * css/html4.css: Removed all usage of -webkit-user-select: ignore.  This is now handled internally with canStartSelection().
   6443           Now -webkit-user-select won't be unintentionally overridden by nodes that don't want to allow selection to be started, but do want to honor the -webkit-user-select to
   6444           determine whether or not selection is allowed at all.
   6445 
   6446         * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll):
   6447           Don't try to determine whether selection is allowed inside the root node here.  VisiblePosition and Selection creation will keep Selection endpoints out of -webkit-user-select:none regions.
   6448         
   6449         * dom/Node.h:
   6450         * dom/Node.cpp: (WebCore::Node::canStartSelection): Added. Always allows selection to be started in a content editable node.  If there's a parent, ask the parent if starting a selection is allowed.
   6451           If there's no parent, default to allowing selection.
   6452         * html/HTMLAnchorElement.h:
   6453         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::canStartSelection): Added. If its not a link, then calls the base class. Disallows selection for non-editable links.
   6454           Allows selection for editable links.
   6455           This logic used to be done in CSSStyleSelector by changing the user-select property.
   6456         * html/HTMLButtonElement.h: (WebCore::HTMLButtonElement::canStartSelection): Added. Disallows selection from starting in buttons.
   6457         * html/HTMLImageElement.h: (WebCore::HTMLImageElement::canStartSelection): Added. Disallows selection from starting in images.
   6458         * html/HTMLInputElement.h:
   6459         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::canStartSelection): Added. Disallows selection from anything that's not a text field.  Text fields call up to the base class.
   6460           When they're editable, text controls will always be selectable because of the case for content editable content. Otherwise, they'll respect their parent element's decision about starting a selection. 
   6461         * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::canStartSelection): Added. Disallows selection from starting in popup buttons.
   6462 
   6463         * page/EventHandler.cpp:
   6464         (WebCore::EventHandler::selectClosestWordFromMouseEvent): Use canMouseDownStartSelect instead of the ambiguously named shouldSelect().
   6465         (WebCore::EventHandler::handleMousePressEventTripleClick): ditto.
   6466         (WebCore::EventHandler::handleMousePressEventSingleClick): ditto.
   6467         (WebCore::EventHandler::updateSelectionForMouseDrag): Use canMouseDragExtendSelect.
   6468         (WebCore::EventHandler::selectCursor): Paint an ibeam in any region that allows you to click to create a selection.
   6469         (WebCore::EventHandler::canMouseDownStartSelect): Now fires the selectStart event, and calls canStartSelection instead of checking the user-select property.
   6470         (WebCore::EventHandler::canMouseDragExtendSelect): This is identical to canMouseDownStartSelect because of 12823, even though it seems strange that we would fire the selectStart event here.
   6471         * page/EventHandler.h:
   6472         * page/FocusController.cpp: (WebCore::clearSelectionIfNeeded): Calls canStartSelection instead of checking the user-select property to decide when to prevent selection creation. 
   6473         * rendering/RenderObject.cpp: (WebCore::RenderObject::draggableNode): ditto.
   6474         * rendering/RenderObject.h: Removed helper methods that are no longer needed.
   6475 
   6476         * rendering/RenderStyle.h: Made userSelect inherited.  After removing the "ignore" value, -webkit-user-select would behave like it was inherited 
   6477           anyways since we already allowed the text value to override the none value.
   6478           Removed the SELECT_AUTO and SELECT_IGNORE values since they're no longer used.
   6479         (WebCore::):
   6480         (WebCore::RenderStyle::userSelect):
   6481         (WebCore::RenderStyle::setUserSelect):
   6482         (WebCore::RenderStyle::initialUserSelect):
   6483         * rendering/RenderStyle.cpp:
   6484         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   6485         (WebCore::StyleRareNonInheritedData::operator==):
   6486         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
   6487         (WebCore::StyleRareInheritedData::operator==):
   6488         (WebCore::RenderStyle::diff):
   6489 
   6490         * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Remove case for SELECT_AUTO and SELECT_IGNORE
   6491         * css/CSSStyleSelector.cpp:
   6492         (WebCore::CSSStyleSelector::adjustRenderStyle):  Remove adjustment for links.  This is now handled in HTMLAnchorElement::canStartSelection.
   6493         (WebCore::CSSStyleSelector::applyProperty): Map CSS_VAL_AUTO to SELECT_TEXT.  Remove CSS_VAL_IGNORE.
   6494 
   6495 2007-09-18  Timothy Hatcher  <timothy (a] apple.com>
   6496 
   6497         Reviewed by Darin.
   6498 
   6499         <rdar://problem/5478250> REGRESSION: After pasting text copied from Mail subject and typing return, the cursor disappears because of negative left margin
   6500 
   6501         When pasting text from the Mail subject line, the RTF pasteboard contains text that has a first line negative indent along with a
   6502         paragraph indent that has a counteracting positive indent. This results in the first line being flush left justified, and the remaining
   6503         wrapped lines being indented. When this is converted to a DOM fragment, AppKit makes a block element with a margin-left and a negative
   6504         text-indent that matches the RTF. So far this is all correct behavior.
   6505 
   6506         When this content is pasted on the line of an existing paragraph that has content, ReplaceSelectionCommand will decided to merge the paragraphs.
   6507         This will convert the block element to a style span that has all inherited style properties. These inherited properties will still contain block
   6508         properties that have no affect on inline elements. These block properties will hang around on the style span and will get cloned to new block
   6509         elements if the user hit return on that line. The new block elements would then have the text-indent but not the margin-left, so the text would be
   6510         hidden off the left edge of the page.
   6511 
   6512         In the end, we should never hang on to block-only properties in our style spans. This cuts out meaningless properties and prevents properties
   6513         from magically affecting blocks later if the style is cloned for a new block element during a future editing operation.
   6514 
   6515         * editing/ReplaceSelectionCommand.cpp:
   6516         (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Remove any inherited block properties that are now in the span's style.
   6517         * editing/markup.cpp:
   6518         (WebCore::createMarkup): Ditto.
   6519 
   6520 2007-09-18  Dave Hyatt  <hyatt (a] apple.com>
   6521 
   6522         Land a UnicodeRange helper class (ported from Mozilla) that we are going to use to prepare for making
   6523         language-sensitive fallback choices for fonts.
   6524 
   6525         Reviewed by olliej
   6526 
   6527         * WebCore.vcproj/WebCore.vcproj:
   6528         * platform/UnicodeRange.cpp: Added.
   6529         (WebCore::):
   6530         (WebCore::findCharUnicodeRange):
   6531         (WebCore::langGroupFromUnicodeRange):
   6532         * platform/UnicodeRange.h: Added.
   6533 
   6534 2007-09-18  Dave Hyatt  <hyatt (a] apple.com>
   6535 
   6536         Fix a bug in my previous patch.  Make sure to select the old font back into the HDC and to also release the HDC.
   6537        
   6538         Reviewed by aroben
   6539 
   6540         * platform/win/FontCacheWin.cpp:
   6541         (WebCore::FontCache::getFontDataForCharacters):
   6542 
   6543 2007-09-18  Sam Weinig  <sam (a] webkit.org>
   6544 
   6545         Reviewed by Darin.
   6546 
   6547         Patch for <rdar://problem/5488478> Safari crashes when passing null to Range.insertNode()
   6548 
   6549         Test: fast/dom/Range-insertNode-crash.html
   6550 
   6551         * dom/Range.cpp:
   6552         (WebCore::Range::insertNode): Null check the passed in node to insert.
   6553 
   6554 2007-09-18  Mike Fenton  <mike (a] staikos.net>
   6555 
   6556         Reviewed by George Staikos.
   6557 
   6558         Retain the pen properties when changing one aspect of the pen.
   6559 
   6560         * html/CanvasStyle.cpp:
   6561         (WebCore::CanvasStyle::applyStrokeColor):
   6562 
   6563 2007-09-18  Mike Fenton  <mike (a] staikos.net>
   6564 
   6565         Reviewed by George Staikos.
   6566 
   6567         Make <canvas> work in more cases by restarting the painter after we
   6568         finish painting, and restoring the pen and opacity.
   6569 
   6570         * html/HTMLCanvasElement.cpp:
   6571         (WebCore::HTMLCanvasElement::paint):
   6572 
   6573 2007-09-18  Mitz Pettel  <mitz (a] webkit.org>
   6574 
   6575         Reviewed by Darin.
   6576 
   6577         - fix http://bugs.webkit.org/show_bug.cgi?id=15169
   6578           Freeze on Google maps using the "Dig a hole" tool
   6579           <rdar://problem/5477414>
   6580 
   6581         Test: fast/dom/CSSStyleDeclaration-empty-string-property.html
   6582 
   6583         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   6584         (WebCore::cssPropertyName): Added an early return if the property name
   6585         is the empty string, thus avoiding a loop that is not prepared for that
   6586         case.
   6587 
   6588 2007-09-19  Darin Adler <darin (a] apple.com>
   6589 
   6590         Reviewed by Adam.
   6591 
   6592         - fix <rdar://problem/5415734> <select> draws incorrectly if size of menu options
   6593           is changed after it pops up once
   6594 
   6595         * platform/win/PopupMenuWin.cpp:
   6596         (WebCore::PopupMenu::PopupMenu): Removed unnecessary initialization of IntRect.
   6597         (WebCore::PopupMenu::show): Check that the clientRect is empty instead of checking
   6598         the entire windowRect -- this fixes a bug where we pop up a tiny 2-pixel high black
   6599         box when you click on an empty menu.
   6600         (WebCore::PopupMenu::visibleItems): Base the number of items on the client rect
   6601         instead of the window rect. Rounding down means this would have worked anyway, but
   6602         it's more correct to do it this way.
   6603         (WebCore::PopupMenu::paint): Deallocate the bitmap so it gets reallocated if it
   6604         has the wrong width or height (or if GetObject returns false, which should not
   6605         happen in practice).
   6606 
   6607 2007-09-18  David Harrison  <harrison (a] apple.com>
   6608 
   6609         Reviewed by Darin.
   6610 
   6611         <rdar://problem/5486974> REGRESSION(r25373): 1/4 second to doubleclick word in GMail when using Kotoeri IM, also slow in other IMs (15163)
   6612 
   6613         Updated tests:
   6614         * fast/dom/Window/window-xy-properties-expected.txt:
   6615         * fast/dom/plugin-attributes-enumeration-expected.txt:
   6616         * fast/events/onerror-bubbling-expected.txt:
   6617         * fast/events/related-target-expected.txt:
   6618         * fast/forms/select-namedItem-expected.txt:
   6619         * fast/table/incomplete-table-in-fragment-2-expected.txt:
   6620         * fast/table/incomplete-table-in-fragment-hang-expected.txt:
   6621         * fast/table/large-rowspan-crash-expected.txt:
   6622         * plugins/embed-attributes-setting-expected.txt:
   6623 
   6624         * editing/TextIterator.cpp:
   6625         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
   6626         Avoid VisiblePosition check if the current node is a descendant
   6627         of the start container and the start offset was 0. In that case
   6628         we already had enough context to correctly decide whether to emit
   6629         a newline after a preceding block. We chose not to emit
   6630         (m_haveEmitted is false), so don't second guess that.
   6631             
   6632         (WebCore::TextIterator::exitNode):
   6633         Changed some comments.
   6634 
   6635 2007-09-17  Geoffrey Garen  <ggaren (a] apple.com>
   6636 
   6637         Reviewed by Darin Adler.
   6638 
   6639         Speculative fix for <rdar://problem/5479443> REGRESSION: Hang due to 
   6640         infinite JS recursion on close @ engadget.com (onunload-based ad)
   6641         
   6642         If page is NULL, shouldInterruptScript now returns true, so you can't 
   6643         get stuck in a state in which a script executes forever without putting 
   6644         up a UI to ask if it should stop.
   6645 
   6646         * bindings/js/kjs_binding.cpp:
   6647         (KJS::ScriptInterpreter::shouldInterruptScript):
   6648 
   6649 2007-09-17  Dave Hyatt  <hyatt (a] apple.com>
   6650 
   6651         Fix for bug 14743, missing glyphs on many international sites because of MLang's tiny cache.
   6652         
   6653         Bypass Mlang's cache entirely.  Get the mapped font from MLang, obtain the font name, and then feed
   6654         the name back into our own system so that it gets created and cached again without MLang being involved.
   6655         Then free up the font obtained from MLang immediately so that its cache just remains empty.
   6656            
   6657         Reviewed by aroben
   6658 
   6659         * platform/FontData.h:
   6660         (WebCore::FontData::isSystemFont):
   6661         * platform/win/FontCacheWin.cpp:
   6662         (WebCore::FontCache::getFontDataForCharacters):
   6663         * platform/win/FontDataWin.cpp:
   6664         (WebCore::FontData::platformInit):
   6665         (WebCore::FontData::platformDestroy):
   6666         * platform/win/UniscribeController.cpp:
   6667         (WebCore::UniscribeController::shapeAndPlaceItem):
   6668         
   6669 2007-09-17  Adam Roben  <aroben (a] apple.com>
   6670 
   6671         Fix <rdar://5423441> Should get focus ring color from SafariTheme
   6672 
   6673         Reviewed by Hyatt.
   6674 
   6675         No regression test possible.
   6676 
   6677         * WebCore.vcproj/WebCore.vcproj: Added ColorSafari.cpp.
   6678         * platform/graphics/win/ColorSafari.cpp: Added.
   6679         (WebCore::makeRGBAFromCGColor): Added.
   6680         (WebCore::focusRingColor): Added. Gets the focus ring color from
   6681         SafariTheme if SafariTheme has support for it.
   6682         (WebCore::setFocusRingColorChangeFunction): Added.
   6683         * platform/win/TemporaryLinkStubs.cpp: Removed focus ring color
   6684         functions.
   6685 
   6686 2007-09-17  Anders Carlsson  <andersca (a] apple.com>
   6687 
   6688         Fix Windows build.
   6689 
   6690         * WebCore.vcproj/WebCore.vcproj:
   6691         * loader/NetscapePlugInStreamLoader.h:
   6692 
   6693 2007-09-17  Anders Carlsson  <andersca (a] apple.com>
   6694 
   6695         Fix Mac build.
   6696         
   6697         * loader/NetscapePlugInStreamLoader.cpp:
   6698         * loader/NetscapePlugInStreamLoader.h:
   6699         * loader/win/NetscapePlugInStreamLoaderWin.cpp: Copied from loader/NetscapePlugInStreamLoader.cpp.
   6700 
   6701 2007-09-17  Anders Carlsson  <andersca (a] apple.com>
   6702 
   6703         Reviewed by Adam.
   6704 
   6705         <rdar://problem/5483346>
   6706         crash at vw.com WebCore::PluginViewWin::disconnectStream.
   6707         
   6708         The following events would lead to this crash:
   6709         
   6710         1. a plug-in stream finishes loading and calls NPP_DestroyStream.
   6711         2. the DestroyStream handler calls NPN_Evaluate, submitting a form through JavaScript.
   6712         3. A new page is going to be loaded and DocumentLoader::stopLoading is called.
   6713         4. DocumentLoader::stopLoading will stop all loader, including the one that is done loading!
   6714         
   6715         The fix is to port NetscapePluginStreamLoader over from the Mac code and use it instead. This fixes the crash
   6716         because it disassociates the stream loader with the document loader _before_ calling NPP_DestroyStream, whereas
   6717         SubresourceLoader does this _after_ calling NPP_DestroyStream. 
   6718         
   6719         * loader/NetscapePlugInStreamLoader.cpp:
   6720         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
   6721         (WebCore::NetscapePlugInStreamLoader::~NetscapePlugInStreamLoader):
   6722         (WebCore::NetscapePlugInStreamLoader::create):
   6723         (WebCore::NetscapePlugInStreamLoader::isDone):
   6724         (WebCore::NetscapePlugInStreamLoader::releaseResources):
   6725         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
   6726         (WebCore::NetscapePlugInStreamLoader::didReceiveData):
   6727         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
   6728         (WebCore::NetscapePlugInStreamLoader::didFail):
   6729         (WebCore::NetscapePlugInStreamLoader::didCancel):
   6730         * loader/NetscapePlugInStreamLoader.h:
   6731         (WebCore::NetscapePlugInStreamLoaderClient::didFinishLoading):
   6732         * plugins/win/PluginStreamWin.cpp:
   6733         (WebCore::PluginStreamWin::start):
   6734         (WebCore::PluginStreamWin::didReceiveResponse):
   6735         (WebCore::PluginStreamWin::didReceiveData):
   6736         (WebCore::PluginStreamWin::didFail):
   6737         (WebCore::PluginStreamWin::didFinishLoading):
   6738         * plugins/win/PluginStreamWin.h:
   6739         * plugins/win/PluginViewWin.cpp:
   6740         (WebCore::PluginViewWin::load):
   6741 
   6742 2007-09-17  Anders Carlsson  <andersca (a] apple.com>
   6743 
   6744         Reviewed by Adam.
   6745 
   6746         <rdar://problem/5483839>
   6747         Crash loading http://www.microsoft.com if Silverlight 1.0 is installed.
   6748         
   6749         Work around a problem in our NPRuntime implementation by never unloading the silverlight plug-in dll.
   6750         
   6751         * plugins/win/PluginViewWin.cpp:
   6752         (WebCore::PluginViewWin::~PluginViewWin):
   6753         (WebCore::PluginViewWin::determineQuirks):
   6754         * plugins/win/PluginViewWin.h:
   6755         (WebCore::):
   6756 
   6757 2007-09-17  Brady Eidson  <beidson (a] apple.com>
   6758 
   6759         Reviewed by John Sullivan
   6760 
   6761         Fix for http://bugs.webkit.org/show_bug.cgi?id=15178
   6762         and
   6763         <rdar://problem/5474001>
   6764 
   6765         The stress test proves that this was an overzealous ASSERT.  It is very possible to mark an icon
   6766         for addition to the on-disk database and then mark it for removal before it is ever written out.  
   6767         This is not an error and was already handled gracefully
   6768 
   6769         * loader/icon/IconDatabase.cpp:
   6770         (WebCore::IconDatabase::removeIconFromSQLDatabase): Don't ASSERT of log if the icon wasn't on disk
   6771 
   6772 2007-09-17  Brady Eidson  <beidson (a] apple.com>
   6773 
   6774         Reviewed by Oliver
   6775 
   6776         <rdar://problem/5487048> - ASSERT in stress test in IconDatabase
   6777 
   6778         If a PageURLRecord went away, it never clears its URL from the IconRecord it retained.
   6779 
   6780         * loader/icon/PageURLRecord.cpp:
   6781         (WebCore::PageURLRecord::~PageURLRecord): Set the icon record to 0, clearing the page url
   6782         * loader/icon/PageURLRecord.h: Add the destructor
   6783 
   6784 2007-09-17  Antti Koivisto  <antti (a] apple.com>
   6785 
   6786         Reviewed by Darin.
   6787         
   6788         Fix <rdar://problem/5480050>
   6789         Leopard9A551 with Dashcode 112: Dashcode crash when dragging image into canvas.
   6790         
   6791         If @import stylesheet was modified through CSS DOM style selector would not get updated. This
   6792         could lead to crashes.
   6793 
   6794         Test: fast/css/import-style-update.html
   6795 
   6796         * css/CSSStyleSheet.cpp:
   6797         (WebCore::CSSStyleSheet::styleSheetChanged):
   6798 
   6799 2007-09-17  Anders Carlsson  <andersca (a] apple.com>
   6800 
   6801         Reviewed by Adam.
   6802 
   6803         <rdar://problem/5421997>
   6804         http://bugs.webkit.org/show_bug.cgi?id=14247
   6805         Display problem with Flash - image does not stop changing
   6806         
   6807         Port the manual load code over from the Mac version.
   6808 
   6809         * plugins/win/PluginDatabaseWin.cpp:
   6810         (WebCore::PluginDatabaseWin::createPluginView):
   6811         * plugins/win/PluginDatabaseWin.h:
   6812         Add load manually parameter.
   6813         
   6814         * plugins/win/PluginStreamWin.cpp:
   6815         (WebCore::PluginStreamWin::stop):
   6816         If we're loading manually, cancel the main resource load.
   6817          
   6818         (WebCore::PluginStreamWin::destroyStream):
   6819         Don't disconnect the stream if we're loading manually.
   6820         
   6821         * plugins/win/PluginViewWin.cpp:
   6822         (WebCore::PluginViewWin::setFrameGeometry):
   6823         Always call updateWindow()
   6824         
   6825         (WebCore::PluginViewWin::PluginViewWin):
   6826         Initialize loadManually.
   6827         
   6828         (WebCore::PluginViewWin::init):
   6829         Don't set the width and height of the window here since it will make the plug-in HWND show briefly
   6830         before it's been positioned.
   6831         
   6832         (WebCore::PluginViewWin::didReceiveResponse):
   6833         Create the manual stream.
   6834         
   6835         (WebCore::PluginViewWin::didReceiveData):
   6836         (WebCore::PluginViewWin::didFinishLoading):
   6837         (WebCore::PluginViewWin::didFail):
   6838         Call through to the manual stream.
   6839         
   6840         * plugins/win/PluginViewWin.h:
   6841 
   6842 2007-09-16  Sam Weinig  <sam (a] webkit.org>
   6843 
   6844         Reviewed by Maciej.
   6845 
   6846         Fix for http://bugs.webkit.org/show_bug.cgi?id=14693
   6847         document.width/height doesn't force layout
   6848 
   6849         Test: fast/dom/document-width-height-force-layout.html
   6850 
   6851         * html/HTMLDocument.cpp:
   6852         (WebCore::HTMLDocument::width): Force layout.
   6853         (WebCore::HTMLDocument::height): ditto.
   6854         * html/HTMLDocument.h:
   6855 
   6856 2007-09-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6857 
   6858         Reviewed by Mark.
   6859 
   6860         Convert the filenames from WebCore::String to the filesystem encoding
   6861         and vice versa using g_filename_{from,to}_utf8 functions. Also add the needed NULL
   6862         checks for the return values where glib and gtk+ can return NULL.
   6863 
   6864         * platform/gdk/FileChooserGdk.cpp:
   6865         (WebCore::convertToStringByAdoptingTheFilesystemRepresentation):
   6866         (WebCore::FileChooser::openFileChooser):
   6867         (WebCore::FileChooser::basenameForWidth):
   6868 
   6869 2007-09-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6870 
   6871         Reviewed by Mark.
   6872 
   6873         Use the new WebCore::String::fromUTF8 function to create
   6874         the labels.
   6875 
   6876         * platform/gdk/LocalizedStringsGdk.cpp:
   6877         (WebCore::submitButtonDefaultLabel):
   6878         (WebCore::inputElementAltText):
   6879         (WebCore::resetButtonDefaultLabel):
   6880         (WebCore::searchableIndexIntroduction):
   6881         (WebCore::fileButtonChooseFileLabel):
   6882         (WebCore::fileButtonNoFileSelectedLabel):
   6883         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   6884         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   6885         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   6886         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   6887         (WebCore::contextMenuItemTagDownloadImageToDisk):
   6888         (WebCore::contextMenuItemTagCopyImageToClipboard):
   6889         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   6890         (WebCore::contextMenuItemTagCopy):
   6891         (WebCore::contextMenuItemTagGoBack):
   6892         (WebCore::contextMenuItemTagGoForward):
   6893         (WebCore::contextMenuItemTagStop):
   6894         (WebCore::contextMenuItemTagReload):
   6895         (WebCore::contextMenuItemTagCut):
   6896         (WebCore::contextMenuItemTagPaste):
   6897         (WebCore::contextMenuItemTagNoGuessesFound):
   6898         (WebCore::contextMenuItemTagIgnoreSpelling):
   6899         (WebCore::contextMenuItemTagLearnSpelling):
   6900         (WebCore::contextMenuItemTagSearchWeb):
   6901         (WebCore::contextMenuItemTagLookUpInDictionary):
   6902         (WebCore::contextMenuItemTagOpenLink):
   6903         (WebCore::contextMenuItemTagIgnoreGrammar):
   6904         (WebCore::contextMenuItemTagSpellingMenu):
   6905         (WebCore::contextMenuItemTagShowSpellingPanel):
   6906         (WebCore::contextMenuItemTagCheckSpelling):
   6907         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   6908         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   6909         (WebCore::contextMenuItemTagFontMenu):
   6910         (WebCore::contextMenuItemTagBold):
   6911         (WebCore::contextMenuItemTagItalic):
   6912         (WebCore::contextMenuItemTagUnderline):
   6913         (WebCore::contextMenuItemTagOutline):
   6914         (WebCore::contextMenuItemTagWritingDirectionMenu):
   6915         (WebCore::contextMenuItemTagDefaultDirection):
   6916         (WebCore::contextMenuItemTagLeftToRight):
   6917         (WebCore::contextMenuItemTagRightToLeft):
   6918         (WebCore::contextMenuItemTagInspectElement):
   6919         (WebCore::searchMenuNoRecentSearchesText):
   6920         (WebCore::searchMenuRecentSearchesText):
   6921         (WebCore::searchMenuClearRecentSearchesText):
   6922 
   6923 2007-09-15  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6924 
   6925         Reviewed by Mark.
   6926 
   6927         Add WebCore::String::fromUTF8 to convert from UTF-8
   6928         to a WebCore::String. This is meant to be used by
   6929         the Gtk+ port and the signature and implementation
   6930         is similiar to the one of DeprecatedString.
   6931 
   6932         * platform/PlatformString.h:
   6933         * platform/String.cpp:
   6934         (WebCore::String::fromUTF8):
   6935 
   6936 2007-09-13  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   6937 
   6938         Reviewed by Anders.
   6939 
   6940         Implement the fileExists and deleteFile functions
   6941         using glib.
   6942 
   6943         * WebCore.pro:
   6944         * platform/gdk/FileSystemGdk.cpp: Added.
   6945         (WebCore::fileExists):
   6946         * platform/gdk/TemporaryLinkStubs.cpp:
   6947 
   6948 2007-09-16  David Harrison  <harrison (a] apple.com>
   6949 
   6950         Reviewed by Darin.
   6951 
   6952         <rdar://problem/5472125> REGRESSION (9A535-9A548): No VO cursor shown when navigating in a mail message body
   6953 
   6954         The problem was that the visible units code was mishandling non-editable content, generating null
   6955         VisiblePositions instead of the actual boundary VisiblePositions.
   6956         
   6957         Updated tests:
   6958         * fast/dom/Window/window-xy-properties-expected.txt:
   6959         * fast/dom/plugin-attributes-enumeration-expected.txt:
   6960         * fast/events/onerror-bubbling-expected.txt:
   6961         * fast/events/related-target-expected.txt:
   6962         * fast/forms/select-namedItem-expected.txt:
   6963         * fast/table/incomplete-table-in-fragment-2-expected.txt:
   6964         * fast/table/incomplete-table-in-fragment-hang-expected.txt:
   6965         * fast/table/large-rowspan-crash-expected.txt:
   6966         * plugins/embed-attributes-setting-expected.txt:
   6967        
   6968         Source Changes:
   6969         * editing/VisiblePosition.cpp:
   6970         (WebCore::VisiblePosition::next):
   6971         (WebCore::VisiblePosition::previous):
   6972         (WebCore::VisiblePosition::honorEditableBoundaryAtOrBefore):
   6973         (WebCore::VisiblePosition::honorEditableBoundaryAtOrAfter):
   6974         Rename firstEditablePositionAtOrAfter to honorEditableBoundaryAtOrAfter.
   6975         Rename firstEditablePositionAtOrBefore to honorEditableBoundaryAtOrBefore.
   6976         Changed these two functions to handle non-editable positions.
   6977         
   6978         * editing/VisiblePosition.h:
   6979         * editing/visible_units.cpp:
   6980         (WebCore::previousWordPosition):
   6981         (WebCore::nextWordPosition):
   6982         (WebCore::positionAvoidingFirstPositionInTable):
   6983         (WebCore::startPositionForLine):
   6984         (WebCore::startOfLine):
   6985         (WebCore::endOfLine):
   6986         (WebCore::previousSentencePosition):
   6987         (WebCore::nextSentencePosition):
   6988         Rename firstEditablePositionAtOrAfter to honorEditableBoundaryAtOrAfter.
   6989         Rename firstEditablePositionAtOrBefore to honorEditableBoundaryAtOrBefore.
   6990         Also, startOfLine() now calls positionAvoidingFirstPositionInTable() in the empty block early return case.
   6991         positionAvoidingFirstPositionInTable() was the logic startOfLine() used in the normal case. Now in a reusable function.
   6992 
   6993 2007-09-14  Oliver Hunt  <oliver (a] apple.com>
   6994 
   6995         Reviewed by Adam.
   6996 
   6997         Mac doesn't have any kind of not implemented macro, so we'll actually implement
   6998         fileSize.
   6999 
   7000         * platform/mac/FileSystemMac.mm:
   7001         (WebCore::fileSize):
   7002 
   7003 2007-09-14  Timothy Hatcher  <timothy (a] apple.com>
   7004 
   7005         Initialize m_dialogArguments to 0. Fixes the newly crashing layout tests.
   7006 
   7007         * bindings/js/kjs_window.cpp:
   7008         (KJS::WindowPrivate::WindowPrivate):
   7009 
   7010 2007-09-14  Oliver Hunt  <oliver (a] apple.com>
   7011 
   7012         Reviewed by Brady, John H.
   7013 
   7014         <rdar://problem/5483632> File system operation wrappers are unimplemented on windows
   7015         
   7016         Implement Windows versions of fileExists and deleteFile. 
   7017         Also corrects fileSize to use a 64-bit version of stat.
   7018 
   7019         * platform/win/FileSystemWin.cpp:
   7020         (WebCore::fileSize):  
   7021           Renamed argument to be more consistent with others.
   7022           And converted to _stat32i64 to allow 64-bit filesizes
   7023         (WebCore::fileExists):
   7024         (WebCore::deleteFile):
   7025         * platform/win/TemporaryLinkStubs.cpp:
   7026 
   7027 2007-09-14  Oliver Hunt  <oliver (a] apple.com>
   7028 
   7029         Reviewed by Sam and Geoff.
   7030 
   7031         <rdar://problem/5333272> Cannot upload files when path contains 
   7032         non-ascii/multibyte characters
   7033 
   7034         We can't use _stat to determine file size on Windows as it may not 
   7035         correctly handle multibyte characters, so we have to use _wstat.
   7036         
   7037         In deference to the fact that we may one day use the FormDataStreamCFNet.cpp
   7038         on Mac i've wrapped the call to _wstat with a generic fileSize
   7039         method in FileSystem.h
   7040 
   7041         * WebCore.vcproj/WebCore.vcproj:
   7042         * platform/FileSystem.h:
   7043         * platform/network/cf/FormDataStreamCFNet.cpp:
   7044         * platform/win/FileSystemWin.cpp: Added.
   7045         (WebCore::setHTTPBody):
   7046         * platform/gdk/TemporaryLinkStubs.cpp:
   7047         * platform/mac/FileSystemMac.mm:
   7048         (WebCore::fileSize):
   7049         * platform/qt/TemporaryLinkStubs.cpp:
   7050 
   7051 2007-09-14  Timothy Hatcher  <timothy (a] apple.com>
   7052 
   7053         Reviewed by Sam.
   7054 
   7055         <rdar://problem/5472970> REGRESSION (r24276): TinyMCE popups show an empty window with no content
   7056 
   7057         Accessing the document of a window before the load finished would cause the window
   7058         object to hold onto the initial empty document, and never switch over to the real document
   7059         once the load finished. This regression was caused by r24276 which added a check to prevent
   7060         clearing the window object when the load finished. The absence of this clear allowed the
   7061         dialogArguments set with showModalDialog to persist on the window after the load. However,
   7062         not clearing the window would keep other properties (and the empty document object) around.
   7063 
   7064         So the fix is to store away the dialog arguments that were passed to showModalDialog and
   7065         put them back on the window object in the dialogArguments property each time
   7066         the window is cleared.
   7067 
   7068         * bindings/js/kjs_window.cpp:
   7069         (KJS::createWindow): No longer put dialogArguments on the window here.
   7070         (KJS::showModalDialog): Put dialogArguments on the window and call
   7071         setDialogArgumentsAndReturnValueSlot to remember the arguments.
   7072         (KJS::Window::clear): Put m_dialogArguments back on the window as dialogArguments.
   7073         (KJS::WindowFunc::callAsFunction): Call the new setDialogArgumentsAndReturnValue.
   7074         (KJS::Window::setDialogArgumentsAndReturnValue): Store the arguments in m_dialogArguments.
   7075         * bindings/js/kjs_window.h: Rename setReturnValueSlot to setDialogArgumentsAndReturnValueSlot.
   7076         * manual-tests/modal-dialog-arguments.html: Confirmed that this test still passes.
   7077 
   7078         Reverted r24276 which was all the changes in FrameLoader.cpp and FrameLoader.h.
   7079 
   7080         * loader/FrameLoader.cpp:
   7081         (WebCore::FrameLoader::FrameLoader): Remove m_shouldClearWindowProperties.
   7082         (WebCore::FrameLoader::createWindow): Remove the call to setShouldClearWindowProperties.
   7083         (WebCore::FrameLoader::clear): No longer check m_shouldClearWindowProperties, clear the
   7084         window whenever clearWindowProperties is set.
   7085         (WebCore::FrameLoader::begin): Remove m_shouldClearWindowProperties.
   7086         (WebCore::FrameLoader::open): Ditto.
   7087         * loader/FrameLoader.h: Remove m_shouldClearWindowProperties.
   7088 
   7089 2007-09-14  Brady Eidson  <beidson (a] apple.com>
   7090 
   7091         How about a build fix that works on *all* platforms?
   7092 
   7093         * platform/Threading.h:
   7094         (WebCore::initializeThreading):
   7095 
   7096 2007-09-14  Brady Eidson  <beidson (a] apple.com>
   7097 
   7098         Roll out my previous build fix and just make the stupid thing inline
   7099         (I knew there was something easier but oh boy, no coffee yet... weinig?)
   7100 
   7101 2007-09-14  Brady Eidson  <beidson (a] apple.com>
   7102 
   7103         Rubberstamped by Mark Rowe
   7104 
   7105         Add the logging channel I just created to the initialize list on Mac
   7106 
   7107         * platform/mac/LoggingMac.mm:
   7108         (WebCore::InitializeLoggingChannelsIfNecessary):
   7109 
   7110 2007-09-14  Brady Eidson  <beidson (a] apple.com>
   7111 
   7112         Build fix
   7113 
   7114         That method can't go in the header, apparently
   7115 
   7116         * platform/Threading.h:
   7117         * platform/gdk/TemporaryLinkStubs.cpp:
   7118         (WebCore::initializeThreading):
   7119         * platform/mac/Threading.mm:
   7120         (WebCore::initializeThreading):
   7121         * platform/qt/TemporaryLinkStubs.cpp:
   7122         (WebCore::initializeThreading):
   7123 
   7124 2007-09-14  Brady Eidson  <beidson (a] apple.com>
   7125 
   7126         Reviewed by Darin
   7127 
   7128         -Add callOnMainThread() implementation to Windows
   7129 
   7130         * WebCore.vcproj/WebCore.vcproj:
   7131         
   7132         * loader/icon/IconDatabase.cpp:
   7133         (WebCore::IconDatabase::open): Call initializeThreading() from the main thread before kicking off the secondary thread
   7134         
   7135         * platform/Logging.cpp: Added Threading logging channel
   7136         (WebCore::):
   7137         * platform/Logging.h: Ditto
   7138         
   7139         * platform/Threading.h:
   7140         (WebCore::initializeThreading): Added - only needs Windows impl for now
   7141         * platform/win/ThreadingWin.cpp: Added.
   7142         (WebCore::callFunctionsOnMainThread): Calls each function currently in the main-thread queue
   7143         (WebCore::ThreadingWindowWndProc):
   7144         (WebCore::initializeThreading): Creates a message-only window to use for callOnMainThread()
   7145         (WebCore::callOnMainThread): Queues the function to be called and posts a message to the threading
   7146           window such that the function-call-queue can be addressed
   7147         
   7148         * platform/win/TemporaryLinkStubs.cpp:
   7149         (WebCore::signedPublicKeyAndChallengeString):
   7150         
   7151 2007-09-14  Anders Carlsson  <andersca (a] apple.com>
   7152 
   7153         Reviewed by Adam.
   7154 
   7155         <rdar://problem/5316743>
   7156         Safari does not handle filename parameter of content-disposition
   7157         
   7158         Use CFURLResponseCopySuggestedFilename instead of our own hand-rolled implementation. 
   7159         
   7160         While we do return the correct filename in all cases I've tried, using CFNetwork is better because
   7161         it might handle corner cases that we don't.
   7162         
   7163         * platform/network/cf/ResourceResponseCFNet.cpp:
   7164         (WebCore::ResourceResponse::doUpdateResourceResponse):
   7165         
   7166 2007-09-14  Geoffrey Garen  <ggaren (a] apple.com>
   7167 
   7168         Reviewed by Adam Roben.
   7169 
   7170         Fixed http://bugs.webkit.org/show_bug.cgi?id=15209
   7171         Sometimes removing an iframe from the DOM does not remove its frame 
   7172         from the page
   7173 
   7174         * loader/FrameLoader.cpp:
   7175         (WebCore::FrameLoader::requestFrame): Use the contentFrame pointer
   7176         directly instead of searching for a frame by the frame element's name, 
   7177         because the frame element's name may have changed. (Another reason to do
   7178         this is that it's just plain more straight-forward and efficient.)
   7179 
   7180 2007-09-14  Darin Adler  <darin (a] apple.com>
   7181 
   7182         Reviewed by Mitz and Kevin Decker.
   7183 
   7184         - fix http://bugs.webkit.org/show_bug.cgi?id=15197
   7185           <rdar://problem/5478271> REGRESSION: Some Yahoo text entry fields
   7186           render as lines rather than text entry boxes
   7187 
   7188         Test: fast/forms/textarea-rows-cols.html
   7189 
   7190         * html/HTMLTextAreaElement.cpp:
   7191         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Use constants for the default number
   7192         of rows and columns.
   7193         (WebCore::HTMLTextAreaElement::parseMappedAttribute): If rows/cols attribute has a value
   7194         that's missing, non-numeric, or zero, then use the default value. Also check for the
   7195         case where the effective value of the attribute isn't changing.
   7196 
   7197 2007-09-14  Sven Herzberg  <sven (a] imendio.com>
   7198 
   7199         Reviewed by George.
   7200 
   7201         Don't maintain obsolete code, fixes:
   7202         http://bugs.webkit.org/show_bug.cgi?id=15215
   7203 
   7204         * platform/gdk/FontPlatformData.cpp: remove static
   7205         FontPlatformData::list() (isn't used at any place)
   7206 
   7207 2007-09-14  Sven Herzberg  <sven (a] imendio.com>
   7208 
   7209         Reviewed by Adam Roben.
   7210 
   7211         Don't use fontconfig types if necessary, fixes:
   7212         http://bugs.webkit.org/show_bug.cgi?id=15203
   7213 
   7214         * platform/gdk/FontPlatformData.cpp: don't use an FcBool to store the
   7215         initialized state, use a plain c++ bool instead
   7216 
   7217 2007-09-13  Brady Eidson  <beidson (a] apple.com>
   7218 
   7219         Reviewed by Maciej
   7220 
   7221         <rdar://problem/5480437> - No site icon at launch and related error messages
   7222 
   7223         The error message was actually indicative of a larger bug that might've resulted in icons getting
   7224         improperly pruned because they were never added to the set of retained page URLs.
   7225 
   7226         To solve the no-icon-at-launch problem, we send the "didReceiveIcon:" delegate call for every page 
   7227         load that has an icon, whether the icon comes in from network, from disk, or was already in ram
   7228 
   7229         * loader/FrameLoader.cpp:
   7230         (WebCore::FrameLoader::startIconLoader): Always send the didReceiveIcon delegate call when an icon's 
   7231           image data is known
   7232 
   7233         * loader/icon/IconDatabase.cpp:
   7234         (WebCore::IconDatabase::retainIconForPageURL): Much more accurately track the set of retained pages by
   7235           adding them when their retain count moves from 0 to 1
   7236 
   7237         * loader/icon/PageURLRecord.h:
   7238         (WebCore::PageURLRecord::retain): Correctly distinguish the "retain count just went from 0 to 1" case
   7239           in the return value
   7240 
   7241 2007-09-13  Brady Eidson  <beidson (a] apple.com>
   7242 
   7243         Rubberstamped by Geoff and Maciej
   7244 
   7245         Fix MSVC build warning due to out of range data in a char array
   7246 
   7247         * loader/icon/IconDatabase.cpp:
   7248         (WebCore::IconDatabase::defaultIcon): The buffer is now unsigned data
   7249 
   7250         * platform/SharedBuffer.cpp:
   7251         (WebCore::SharedBuffer::SharedBuffer): Add the "unsigned char*" c'tor
   7252         * platform/SharedBuffer.h:
   7253 
   7254 2007-09-13  Darin Adler  <darin (a] apple.com>
   7255 
   7256         Reviewed by Oliver.
   7257 
   7258         - fix <rdar://problem/5470457> REGRESSION: Input method inline hole is mishandled in text
   7259           <input> elements with maxlength limit
   7260 
   7261         * editing/Editor.h: Moved MarkedTextUnderline here and renamed it CompositionUnderline.
   7262         Moved the rest of the marked text API here and used the term that will be more familiar
   7263         to those on platforms other than Macintosh, "composition". This helps prevent confusion
   7264         with the other kinds of mark -- the emacs "mark" and spelling/grammar marks. Also
   7265         cleaned up the conditionals a bit for the Macintosh-specific parts of this header.
   7266 
   7267         * editing/Editor.cpp:
   7268         (WebCore::Editor::Editor): Updated for name change.
   7269         (WebCore::Editor::clear): Added. To be called by FrameLoader::clear().
   7270         (WebCore::Editor::insertTextWithoutSendingTextEvent): Removed code to make inserted
   7271         text replace the marked text range -- we now deal with this explicitly by not
   7272         calling this function to replace marked text. Also removed unneeded code that was
   7273         specific to the use of this to replace the marked text.
   7274         (WebCore::Editor::selectComposition): Renamed from selectMarkedText. Updated since
   7275         the composition range is not stored as a Range.
   7276         (WebCore::Editor::confirmComposition): Added. To be called when changing a composition
   7277         into actual text. Unlike the old code path, deletes the composition first, then inserts
   7278         the text, triggering the normal insertion code path and events. This is helpful because
   7279         it means the inserted text will be truncated by the <input> element, for example.
   7280         (WebCore::Editor::confirmCompositionWithoutDisturbingSelection): Added.
   7281         (WebCore::Editor::setComposition): Added. To be called when changing the composition.
   7282         Takes parameters for the underlines and selection. Unlike the old code path, this passes
   7283         a flag down that indicates the inserted text is part of a composition. This is helpful
   7284         because we don't send the event that will cause the <input> element to do truncation.
   7285         It's also a better API for future improvements to our input method handling.
   7286         (WebCore::Editor::revealSelectionAfterEditingOperation): Updated for name change.
   7287         (WebCore::Editor::setIgnoreCompositionSelectionChange): Ditto.
   7288         (WebCore::Editor::compositionRange): Added. Needed now that the composition is not
   7289         stored as a Range.
   7290         (WebCore::Editor::getCompositionSelection): Added.
   7291 
   7292         * editing/TypingCommand.h:
   7293         * editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText):
   7294         Added an insertedTextIsComposition parameter, and don't send the BeforeTextInsertedEvent
   7295         if it's true.
   7296 
   7297         * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Replaced the Macintosh-specific
   7298         call to setMarkedTextRange with a call to the new Editor::clear().
   7299 
   7300         * page/Frame.h:
   7301         * page/Frame.cpp:
   7302         * page/FramePrivate.h:
   7303         * page/mac/FrameMac.mm:
   7304         Removed the marked text code. It was streamlined and moved to Editor, except for the
   7305         Mac-specific code, which was moved into WebKit.
   7306 
   7307         * page/mac/WebCoreFrameBridge.h:
   7308         * page/mac/WebCoreFrameBridge.mm: Removed some now-unneeded marked text code.
   7309         (-[WebCoreFrameBridge markedTextNSRange]): Updated for name/API change.
   7310 
   7311         * rendering/InlineTextBox.h:
   7312         * rendering/InlineTextBox.cpp:
   7313         (WebCore::InlineTextBox::paint): Updated marked text code for name changes, and also
   7314         streamlined the code a bit for the case where there is no composition.
   7315         (WebCore::InlineTextBox::paintCompositionBackground): Name change.
   7316         (WebCore::InlineTextBox::paintCompositionUnderline): Ditto.
   7317 
   7318         * rendering/RenderTextControl.h:
   7319         * rendering/RenderTextControl.cpp:
   7320         (WebCore::RenderTextControl::finishText): Added. Helper function shared by the
   7321         (WebCore::RenderTextControl::text):
   7322         (WebCore::getNextSoftBreak):
   7323         (WebCore::RenderTextControl::textWithHardLineBreaks):
   7324 
   7325         * platform/CharacterNames.h: Added newlineCharacter.
   7326 
   7327         * dom/Range.h: Remove the now-unneeded version of toString that converts <br>
   7328         elements into newlines.
   7329         * dom/Range.cpp:
   7330         (WebCore::Range::toString): Changed this to use a Vector<UChar> instead of
   7331         a String so it will not have pathological reallocation performance, and removed
   7332         the <br> feature.
   7333         (WebCore::Range::pastEndNode): Made this return 0 when there is no start node.
   7334         This bit of extra robustness guarantees you can't do a null dereference if the
   7335         start node is 0 and the end node is not. Not sure this case really exists.
   7336 
   7337         * page/ContextMenuController.cpp: (ContextMenuController::contextMenuItemSelected):
   7338         Removed a semi-bogus use of Range::toString(true). The right function to use here
   7339         is plainText().
   7340 
   7341         * bridge/EditorClient.h: Removed obsolete markedTextAbandoned function.
   7342 
   7343         * WebCore.exp: Updated for above changes. 
   7344 
   7345 2007-09-13  Anders Carlsson  <andersca (a] apple.com>
   7346 
   7347         Reviewed by Adam and Geoff.
   7348 
   7349         <rdar://problem/5304000>
   7350         Windows Safari doesn't always call NPP_SetWindow() for NPAPI plugins.
   7351         
   7352         This does two things:
   7353         
   7354         1. Makes sure that the plug-in get the correct initial size.
   7355         
   7356         2. Always updates the size of the HWND, even if the widget size didn't change. This is because
   7357         the widget size can be different before the HWND has been created.
   7358         
   7359         * plugins/win/PluginDatabaseWin.cpp:
   7360         (WebCore::PluginDatabaseWin::createPluginView):
   7361         * plugins/win/PluginDatabaseWin.h:
   7362         * plugins/win/PluginViewWin.cpp:
   7363         (WebCore::PluginViewWin::setFrameGeometry):
   7364         (WebCore::PluginViewWin::PluginViewWin):
   7365         * plugins/win/PluginViewWin.h:
   7366 
   7367 2007-09-13  Kevin McCullough  <kmccullough (a] apple.com>
   7368 
   7369         Reviewed by Geof, Sam, Adam, Hyatt, Darin.
   7370 
   7371         - <rdar://problem/5480234> JS setTimeout function requires a second argument
   7372         - Removed check for number of arguments in setTimeout to behave like other browsers.
   7373         - Added layoutTest setTimeout-no-arguments.html
   7374 
   7375         * bindings/js/kjs_window.cpp:
   7376         (KJS::WindowFunc::callAsFunction):
   7377 
   7378 2007-09-13   Dave Hyatt  <hyatt (a] apple.com>
   7379 
   7380         Some minor Windows font improvements before I make the larger changes.
   7381         
   7382         Reviewed by aroben, weinig
   7383 
   7384         * platform/win/FontCacheWin.cpp:
   7385         (WebCore::FontCache::getFontDataForCharacters):
   7386         Don't use the currently selected font in the HDC when passing priority code pages to MLANG.  Make
   7387         sure to use ACP code pages instead so that there won't be any confusion regarding traditional vs.
   7388         simplified chinese, etc.
   7389 
   7390         * platform/win/FontDataWin.cpp:
   7391         (WebCore::FontData::containsCharacters):
   7392         Rewrite containsCharacters so that it isn't glyph-dependent (since CG doesn't shape, this call is
   7393         rejecting fonts that it shouldn't).  Re-implement this method in terms of MLang and use code page
   7394         testing.
   7395         
   7396         * platform/win/UniscribeController.cpp:
   7397         (WebCore::UniscribeController::itemizeShapeAndPlace):
   7398         Add some comments to explain the additional item in the items array.
   7399        
   7400         (WebCore::UniscribeController::shape):
   7401         Fix up the missing glyph check when doing uniscribe shaping.  Only wgDefault matters as far as doing
   7402         font fallback.
   7403         
   7404 2007-09-13  kuchhal  <kuchhal (a] yahoo.com>
   7405 
   7406         Reviewed, tweaked and landed by Anders.
   7407 
   7408         <rdar://problem/5461153> 
   7409         http://bugs.webkit.org/show_bug.cgi?id=15143
   7410         Crash seen on Windows
   7411         
   7412         Null check frame before calling Frame::settings.
   7413         
   7414         * loader/PluginDocument.cpp:
   7415         (WebCore::PluginTokenizer::writeRawData):
   7416 
   7417 2007-09-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   7418 
   7419         Reviewed by Mark.
   7420 
   7421         Implement the FileChooser for the WebKit/Gtk+ port by using
   7422         the GtkFileChooserDialog and g_path_get_basename to get the
   7423         basename for the current filename.
   7424 
   7425 
   7426         * WebCore.pro:
   7427         * platform/gdk/FileChooserGdk.cpp: Added.
   7428         (WebCore::FileChooser::FileChooser):
   7429         (WebCore::FileChooser::~FileChooser):
   7430         (WebCore::FileChooser::openFileChooser):
   7431         (WebCore::FileChooser::basenameForWidth):
   7432         * platform/gdk/TemporaryLinkStubs.cpp:
   7433 
   7434 2007-09-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   7435 
   7436         Reviewed by Mark.
   7437 
   7438         Move the "string" functions from the TemporaryLinkStubs.cpp
   7439         to LocalizedStringsGdk.cpp and implement them using the text
   7440         from the win port and glib-i18n (gettext).
   7441 
   7442         * platform/gdk/LocalizedStringsGdk.cpp: Added.
   7443         (WebCore::submitButtonDefaultLabel):
   7444         (WebCore::inputElementAltText):
   7445         (WebCore::resetButtonDefaultLabel):
   7446         (WebCore::searchableIndexIntroduction):
   7447         (WebCore::fileButtonChooseFileLabel):
   7448         (WebCore::fileButtonNoFileSelectedLabel):
   7449         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   7450         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   7451         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   7452         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   7453         (WebCore::contextMenuItemTagDownloadImageToDisk):
   7454         (WebCore::contextMenuItemTagCopyImageToClipboard):
   7455         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   7456         (WebCore::contextMenuItemTagCopy):
   7457         (WebCore::contextMenuItemTagGoBack):
   7458         (WebCore::contextMenuItemTagGoForward):
   7459         (WebCore::contextMenuItemTagStop):
   7460         (WebCore::contextMenuItemTagReload):
   7461         (WebCore::contextMenuItemTagCut):
   7462         (WebCore::contextMenuItemTagPaste):
   7463         (WebCore::contextMenuItemTagNoGuessesFound):
   7464         (WebCore::contextMenuItemTagIgnoreSpelling):
   7465         (WebCore::contextMenuItemTagLearnSpelling):
   7466         (WebCore::contextMenuItemTagSearchWeb):
   7467         (WebCore::contextMenuItemTagLookUpInDictionary):
   7468         (WebCore::contextMenuItemTagOpenLink):
   7469         (WebCore::contextMenuItemTagIgnoreGrammar):
   7470         (WebCore::contextMenuItemTagSpellingMenu):
   7471         (WebCore::contextMenuItemTagShowSpellingPanel):
   7472         (WebCore::contextMenuItemTagCheckSpelling):
   7473         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   7474         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   7475         (WebCore::contextMenuItemTagFontMenu):
   7476         (WebCore::contextMenuItemTagBold):
   7477         (WebCore::contextMenuItemTagItalic):
   7478         (WebCore::contextMenuItemTagUnderline):
   7479         (WebCore::contextMenuItemTagOutline):
   7480         (WebCore::contextMenuItemTagWritingDirectionMenu):
   7481         (WebCore::contextMenuItemTagDefaultDirection):
   7482         (WebCore::contextMenuItemTagLeftToRight):
   7483         (WebCore::contextMenuItemTagRightToLeft):
   7484         (WebCore::contextMenuItemTagInspectElement):
   7485         (WebCore::searchMenuNoRecentSearchesText):
   7486         (WebCore::searchMenuRecentSearchesText):
   7487         (WebCore::searchMenuClearRecentSearchesText):
   7488         (WebCore::unknownFileSizeText):
   7489         * platform/gdk/TemporaryLinkStubs.cpp:
   7490 
   7491 2007-09-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   7492 
   7493         Reviewed by Mark.
   7494 
   7495         EventHandlerGdk::createDraggingClipboard must succeed otherwise an
   7496         ASSERT is hit. Add Clipboard stubs for the Gdk/Gtk+ port and
   7497         instantiate ClipboardGdk from the EventHandlerGdk to make the ASSERT
   7498         go away. In contrast to the Windows and Mac port this clipboard is not
   7499         inheriting CachedResourceClient. This was proposed by Oliver.
   7500 
   7501         * WebCore.pro:
   7502         * page/gdk/EventHandlerGdk.cpp:
   7503         * platform/gdk/ClipboardGdk.cpp: Added.
   7504         (WebCore::ClipboardGdk::ClipboardGdk):
   7505         (WebCore::ClipboardGdk::~ClipboardGdk):
   7506         (WebCore::ClipboardGdk::clearData):
   7507         (WebCore::ClipboardGdk::clearAllData):
   7508         (WebCore::ClipboardGdk::getData):
   7509         (WebCore::ClipboardGdk::setData):
   7510         (WebCore::ClipboardGdk::types):
   7511         (WebCore::ClipboardGdk::dragLocation):
   7512         (WebCore::ClipboardGdk::dragImage):
   7513         (WebCore::ClipboardGdk::setDragImage):
   7514         (WebCore::ClipboardGdk::dragImageElement):
   7515         (WebCore::ClipboardGdk::setDragImageElement):
   7516         (WebCore::ClipboardGdk::createDragImage):
   7517         (WebCore::ClipboardGdk::declareAndWriteDragImage):
   7518         (WebCore::ClipboardGdk::writeURL):
   7519         (WebCore::ClipboardGdk::writeRange):
   7520         (WebCore::ClipboardGdk::hasData):
   7521         * platform/gdk/ClipboardGdk.h: Added.
   7522 
   7523 2007-09-12  Oliver Hunt  <oliver (a] apple.com>
   7524 
   7525         Reviewed by Adam.
   7526 
   7527         Corrections missed in previous revision
   7528 
   7529         * platform/Cursor.h:
   7530         * platform/win/CursorWin.cpp:
   7531         (WebCore::loadCursorByName):
   7532 
   7533 2007-09-12  Oliver Hunt  <oliver (a] apple.com>
   7534 
   7535         Reviewed by Adam.
   7536 
   7537         Fixing 
   7538             <rdar://problem/5018591> Windows doesn't have a standard vertical text cursor
   7539             <rdar://problem/5224996> Add zoom in and zoom out cursors
   7540 
   7541         Added SharedCursor for CursorWin so we can correctly track lifetime of custom/image
   7542         based cursors, such as the vertical text and zooming cursors.
   7543 
   7544         * platform/Cursor.h:
   7545         (WebCore::SharedCursor::SharedCursor):
   7546         (WebCore::SharedCursor::~SharedCursor):
   7547         (WebCore::SharedCursor::nativeCursor):
   7548         * platform/win/CursorWin.cpp:
   7549         (WebCore::Cursor::Cursor):
   7550         (WebCore::loadCursorByName):
   7551         (WebCore::loadSharedCursor):
   7552         (WebCore::pointerCursor):
   7553         (WebCore::crossCursor):
   7554         (WebCore::handCursor):
   7555         (WebCore::iBeamCursor):
   7556         (WebCore::waitCursor):
   7557         (WebCore::helpCursor):
   7558         (WebCore::eastResizeCursor):
   7559         (WebCore::northResizeCursor):
   7560         (WebCore::northEastResizeCursor):
   7561         (WebCore::northWestResizeCursor):
   7562         (WebCore::southResizeCursor):
   7563         (WebCore::southEastResizeCursor):
   7564         (WebCore::southWestResizeCursor):
   7565         (WebCore::westResizeCursor):
   7566         (WebCore::northSouthResizeCursor):
   7567         (WebCore::eastWestResizeCursor):
   7568         (WebCore::northEastSouthWestResizeCursor):
   7569         (WebCore::northWestSouthEastResizeCursor):
   7570         (WebCore::columnResizeCursor):
   7571         (WebCore::rowResizeCursor):
   7572         (WebCore::moveCursor):
   7573         (WebCore::verticalTextCursor):
   7574         (WebCore::progressCursor):
   7575         (WebCore::notAllowedCursor):
   7576         (WebCore::zoomInCursor):
   7577         (WebCore::zoomOutCursor):
   7578         * platform/win/WidgetWin.cpp:
   7579         (WebCore::Widget::setCursor):
   7580 
   7581 2007-09-12  Brady Eidson  <beidson (a] apple.com>
   7582 
   7583         Reviewed by Geoff Garen
   7584 
   7585         <rdar://problem/5478577> - Further improve cold launch time with Icon Database changes
   7586 
   7587         * loader/icon/IconDatabase.cpp:
   7588         (WebCore::IconDatabase::open): Store the directory and full path for later usage and access in the API, respectively
   7589           Move the makeAllDirectories() call to the background thread.
   7590         (WebCore::IconDatabase::IconDatabase): Don't set up the timer here...
   7591         (WebCore::IconDatabase::scheduleOrDeferSyncTimer): Create the timer on demand
   7592         (WebCore::IconDatabase::iconDatabaseSyncThread): makeAllDirectories() here where it's not as expensive
   7593         (WebCore::IconDatabase::cleanupSyncThread): Cleanup the directory as well as full path
   7594 
   7595         * loader/icon/IconDatabase.h: m_syncTimer becomes an OwnPtr, and we add the database directory
   7596           as a member to set it on the main thread and act with it on the background thread
   7597 
   7598 2007-09-12  Justin Garcia  <justin.garcia (a] apple.com>
   7599 
   7600         Reviewed by Tristan.
   7601 
   7602         <rdar://problem/5469868> 
   7603         GoogleDocs: A hang occurs when applying list styling to a selection in a <table>
   7604         
   7605         When list insertion moves selected paragraphs into list items, it relies on 
   7606         the selection preservation code inside moveParagraphs to iterate over the 
   7607         selected paragraphs.  If a selection is ever restored incorrectly (before
   7608         the original, or inside the original) list insertion will go into an infinite loop.
   7609         
   7610         In this hang, a table was selected and the selection preservation code incorrectly
   7611         restored a selection, placing it inside the table.
   7612         
   7613         The bug was that a TextIterator, when being used for selection preservation, must
   7614         emit a character between every VisiblePosition in the Range used to create the
   7615         iterator.
   7616         
   7617         * editing/TextIterator.cpp:
   7618         (WebCore::TextIterator::TextIterator): Renamed the boolean that we use for 
   7619         selection preservation.  It used to be m_emitForReplacedElements because
   7620         we believed that replaced elements were the only case where TextIterators
   7621         should have emitted differently when used for selection preservation.
   7622         (WebCore::TextIterator::handleReplacedElement): Ditto.
   7623         (WebCore::TextIterator::shouldRepresentNodeOffsetZero): Represent the 
   7624         position before block tables, but only if we are emitting for selection 
   7625         preservation.
   7626         (WebCore::TextIterator::shouldEmitSpaceBeforeAndAfterNode): We should emit 
   7627         a space before and after block tables if we are emitting for selection 
   7628         preservation (because we have VisiblePositions before and after them).
   7629         (WebCore::TextIterator::handleNonTextNode): Use a renamed variable.
   7630         * editing/TextIterator.h: Made shouldEmitSpaceBeforeAndAfterNode a member
   7631         function, because whether or not we emit spaces before and after a block
   7632         table depends we're emitting for selection preservation.
   7633 
   7634 2007-09-12  Beth Dakin  <bdakin (a] apple.com>
   7635 
   7636         Reviewed by Hyatt.
   7637 
   7638         Fix for <rdar://problem/5464998> REGRESSION (9A543): Using Sort 
   7639         options takes you back to search screen on zappos.com
   7640 
   7641         The current mechanism for preserving form elements across removes 
   7642         did not work in the case where the input was moved by the parser to 
   7643         be out of scope of the form. This fixes that problem by having the 
   7644         parser keep track of the preserve boolean rather than the current 
   7645         form element.
   7646 
   7647         * dom/Tokenizer.h:
   7648         (WebCore::Tokenizer::isHTMLTokenizer): New function.
   7649         * html/HTMLFormElement.cpp:
   7650         (WebCore::HTMLFormElement::HTMLFormElement): Get rid of 
   7651         m_preserveAcrossRemove.
   7652         * html/HTMLFormElement.h:
   7653         (WebCore::HTMLFormElement::isMalformed): Get rid of 
   7654         m_preserveAcrossRemove.
   7655         * html/HTMLGenericFormElement.cpp:
   7656         (WebCore::HTMLGenericFormElement::removedFromTree): Ask the parser 
   7657         if it is currently handling residual style rather than asking the 
   7658         form if it wants to preserveAcrossRemove.
   7659         * html/HTMLParser.cpp:
   7660         (WebCore::HTMLParser::HTMLParser): New boolean to initialize.
   7661         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Set 
   7662         m_handlingResidualStyleAcrossBlocks to true at the beginning and 
   7663         false at the end.
   7664         * html/HTMLParser.h:
   7665         (WebCore::HTMLParser::isHandlingResidualStyleAcrossBlocks):
   7666         * html/HTMLTokenizer.h:
   7667         (WebCore::HTMLTokenizer::isHTMLTokenizer):
   7668         (WebCore::HTMLTokenizer::htmlParser):
   7669 
   7670 2007-09-12  George Staikos  <staikos (a] kde.org>
   7671 
   7672         Fix compilation in some configurations for patch I reviewed and missed
   7673         this option on.
   7674 
   7675         * platform/qt/CursorQt.cpp:
   7676         (WebCore::Cursor::Cursor):
   7677 
   7678 2007-09-12  Brady Eidson  <beidson (a] apple.com>
   7679 
   7680         Reviewed by Tim Hatcher and Kevin Decker
   7681 
   7682         <rdar://problem/5367045> - Launch time regression due to accessing resource from a different bundle
   7683 
   7684         When the default icon was moved from WebKit to WebCore, we had to access an entirely new bundle on launch which
   7685         measurably increased time during launch accessing the disk.
   7686 
   7687         Instead of moving it back to the WebKit bundle, lets make launch time even faster by compiling in the icon.
   7688 
   7689         * Resources/urlIcon.tiff: Removed.
   7690 
   7691         * WebCore.xcodeproj/project.pbxproj: Removed urlIcon.tiff
   7692 
   7693         * loader/icon/IconDatabase.cpp:
   7694         (WebCore::IconDatabase::defaultIcon): Compile in the icon data here.
   7695 
   7696 2007-09-12  Adam Roben  <aroben (a] apple.com>
   7697 
   7698         Always specify that slider thumbs are small when painting with SafariTheme
   7699 
   7700         This is the only size we support.
   7701 
   7702         Reviewed by Sam.
   7703 
   7704         * rendering/RenderThemeSafari.cpp:
   7705         (WebCore::RenderThemeSafari::paintSliderThumb):
   7706 
   7707 2007-09-12  Brady Eidson  <beidson (a] apple.com>
   7708 
   7709         Reviewed by Darin
   7710 
   7711         <rdar://problem/5474753> - ASSERT in IconDatabase ReadySQLStatement
   7712 
   7713         * loader/icon/IconDatabase.cpp:
   7714         (WebCore::readySQLStatement): This is a LOG_ERROR situation, not really an ASSERT situation
   7715 
   7716 2007-09-12  Adam Roben  <aroben (a] apple.com>
   7717 
   7718         Don't ask SafariTheme to draw focus rings around text controls
   7719 
   7720         We do this ourselves.
   7721 
   7722         Reviewed by Oliver.
   7723 
   7724         * rendering/RenderThemeSafari.cpp:
   7725 
   7726 2007-09-11  Brady Eidson  <beidson (a] apple.com>
   7727 
   7728         Reviewed by Darin
   7729 
   7730         <rdar://problem/5475639> and http://bugs.webkit.org/show_bug.cgi?id=15185 -
   7731         Prevent two WebKits from fighting over the database schema in the future in case it ever changes again
   7732 
   7733         By telling the "older schema" WebKit to simply close itself and not bother to do any icon related stuff
   7734         if the database schema is newer, we prevent the possibility of an older webkit run side-by-side with a newer
   7735         WebKit causing icon database issues.
   7736 
   7737         * loader/icon/IconDatabase.cpp:
   7738         (WebCore::IconDatabase::defaultDatabaseFilename): Rev the icon database filename to be "WebpageIcons.db"  The name is
   7739           more appropriate for what is actually stored in the file, and since we're already not converting v5 to v6 icons, 
   7740           making this leap now makes sense and gives us a good "future-proof" baseline
   7741         (WebCore::isValidDatabase): Change the validity check to be "less then" instead of "not equal to" - the
   7742           "greater than" case is now handled in performOpenInitialization()
   7743         (WebCore::IconDatabase::performOpenInitialization): If the schema version is greater than the current, then
   7744           close the database as to not conflict with the newer version.  Also noted that the integrity check failure 
   7745           should actually close the sql database, not the icondatabase
   7746         (WebCore::IconDatabase::syncThreadMainLoop): If termination has already been requested, skip straight to cleanup
   7747         (WebCore::IconDatabase::cleanupSyncThread): More correctly set the "sync thread running" flag to false here,
   7748           as the thread can now decide to exit on its own
   7749 
   7750 2007-09-12  Mike Fenton <mike (a] staikos.net>
   7751 
   7752         Reviewed by George Staikos.
   7753 
   7754         Patch from Mike Fenton to allow custom cursors.
   7755 
   7756         * platform/qt/CursorQt.cpp:
   7757 
   7758 2007-09-11  Kevin Decker <kdecker (a] apple.com>
   7759 
   7760         Reviewed by Oliver Hunt.
   7761 
   7762         Fixed: <rdar://problem/5472402> crash due to infinite recursion in expandUseElementsInShadowTree on SVG from wikipedia
   7763 
   7764         * ksvg2/svg/SVGUseElement.cpp: Added SVG_EXPERIMENTAL #ifdef for expandUseElementsInShadowTree().
   7765         (WebCore::SVGUseElement::buildPendingResource): Ditto.
   7766         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements): Tweaked an ASSERT to not fire on non-experimental builds.
   7767         * ksvg2/svg/SVGUseElement.h: Added SVG_EXPERIMENTAL #ifdef for expandUseElementsInShadowTree().
   7768 
   7769 2007-09-11  Brady Eidson  <beidson (a] apple.com>
   7770 
   7771         Reviewed by Maciej
   7772 
   7773         Fix for <rdar://problem/5473046> - Crash when resetting all icons
   7774 
   7775         Originally I'd written the "reset all icons" to be synchronous on the main thread, but it
   7776         was decided that it should be async since it involved I/O.  Turns out it needs to be... both!
   7777         Synchronous removal of all in-memory records of icons, and then continue and clean up the 
   7778         on-disk database on the background thread.
   7779 
   7780         Also, it turns out that resetting all the page url retain counts should *not* be part of 
   7781         "reset all icons" because it breaks various contracts the API makes about maintaining retain counts.
   7782 
   7783         The problem that occured here was removing all the icons, then all the history items that were 
   7784         removed as part of "Reset Safari..." would try to release their icon, but their icon doesn't exist
   7785         anymore.
   7786 
   7787         We get around this by simply leaving the in-memory page url records and retain counts alone - they
   7788         are still wiped from disk.
   7789 
   7790         * loader/icon/IconDatabase.cpp:
   7791         (WebCore::IconDatabase::removeAllIcons): Clear in-memory records of all icons then tell the thread to
   7792           wipe the on-disk tables
   7793         (WebCore::IconDatabase::removeAllIconsOnThread): Only do the disk cleanup - in-memory maintenance is
   7794           handled on the main thread
   7795         (WebCore::IconDatabase::cleanupSyncThread): Now that it's possible for new "icons to be written to disk"
   7796           to appear while on-disk deleting is occuring, let the cleanup procedure perform 1 final write *after*
   7797           it does the remove all icons
   7798         * loader/icon/IconDatabase.h: Removed unused lock and condition
   7799 
   7800         * loader/icon/PageURLRecord.cpp:
   7801         (WebCore::PageURLRecord::setIconRecord): Allow setting a NULL icon record, so a PageURLRecord can be
   7802           cleared as part of removeAllIcons()
   7803 
   7804 2007-09-11  Tristan O'Tierney  <tristan (a] apple.com>
   7805 
   7806         Reviewed by David Harrison.
   7807         
   7808         <rdar://problem/5467203> CrashTracer: [USER] 1 crash in Mail at <unknown binary>: WebCore::Range::startContainer const
   7809 
   7810         * editing/SelectionController.cpp:
   7811         (WebCore::SelectionController::addRange):
   7812         (WebCore::SelectionController::setSelectedRange):
   7813         Added a check to make sure the passed in Range* value is not null
   7814         before performing operations on it.
   7815 
   7816 2007-09-11  Justin Garcia  <justin.garcia (a] apple.com>
   7817 
   7818         Reviewed by Maciej.
   7819         
   7820         <rdar://problem/5458246> 
   7821         GoogleDocs: A hang occurs when applying list styling to selection that contains a <HR>
   7822         
   7823         List insertion moves selected paragraphs into list items, and relies on the selection
   7824         preservation code inside moveParagraphs to iterate over the selected paragraphs.
   7825         When list insertion would try to listify a paragraph that came after a list item 
   7826         containing an <hr>, the selection preservation code would set an incorrect ending 
   7827         selection because of a TextIterator bug, and we would try to listify the same 
   7828         paragraph over and over.
   7829         
   7830         * editing/CompositeEditCommand.cpp:
   7831         (WebCore::CompositeEditCommand::moveParagraphs): Pass range compliant equivalents to
   7832         the Range constructor here.  The position [hr, 0] is not a valid DOM Range endpoint 
   7833         for example.
   7834         * editing/TextIterator.cpp:
   7835         (WebCore::shouldEmitSpaceForNode): Added.
   7836         (WebCore::TextIterator::handleNonTextNode): Emit a space to represent a horizontal rule,
   7837         since it has VisiblePositions before and after it, but only for TextIterators used for
   7838         selection preservation, so innerText will be unaffected.
   7839 
   7840 2007-09-11  Ada Chan  <adachan (a] apple.com>
   7841 
   7842         <rdar://problem/5472130> Support NTLM authentication via CFNetwork.
   7843 
   7844         Reviewed by Darin.
   7845 
   7846         * platform/network/ProtectionSpace.h:
   7847         (WebCore::):
   7848         * platform/network/cf/AuthenticationCF.cpp:
   7849         (WebCore::createCF):
   7850         (WebCore::core):
   7851 
   7852 2007-09-11  Darin Adler  <darin (a] apple.com>
   7853 
   7854         Rubber-stamped by Dave Harrison.
   7855 
   7856         - fixed pasteboard types here to match WebKit and use constants instead of
   7857           WebKitSystemInterface
   7858 
   7859         * platform/mac/PasteboardMac.mm: Use constants for all pasteboard type strings.
   7860 
   7861         * platform/mac/WebCoreSystemInterface.h: Removed wkCreateURLPasteboardFlavorTypeName
   7862         and wkCreateURLNPasteboardFlavorTypeName.
   7863 
   7864 2007-09-11  Sven Herzberg  <sven (a] imendio.com>
   7865 
   7866         Reviewed by Mark.
   7867 
   7868         Remove unnecessary fields in FontPlatformData
   7869         http://bugs.webkit.org/show_bug.cgi?id=15177
   7870 
   7871         * platform/gdk/FontDataGdk.cpp: removed the destroy code of the fields
   7872         that have been removed
   7873         * platform/gdk/FontPlatformData.h: removed m_fontFace, m_fontMatrix
   7874         and m_options; hask on m_scaledFont
   7875         * platform/gdk/FontPlatformDataGdk.cpp: simplified setFont() by using
   7876         m_scaledFont only; turned the former struct members into local
   7877         variables
   7878 
   7879 2007-09-11  George Staikos  <staikos (a] kde.org>
   7880 
   7881         Reviewed by Anders.
   7882 
   7883         Work around gcc bug with some old gcc versions.
   7884 
   7885         * platform/qt/WidgetQt.cpp:
   7886         (WebCore::Widget::convertToContainingWindow):
   7887         (WebCore::Widget::convertFromContainingWindow):
   7888 
   7889 2007-09-10  Mitz Pettel  <mitz (a] webkit.org>
   7890 
   7891         Reviewed by Maciej Stachowiak.
   7892 
   7893         - fix http://bugs.webkit.org/show_bug.cgi?id=15157
   7894           Image defined in background-position: top center gets unexpectedly truncated
   7895           <rdar://problem/5469095>
   7896 
   7897         Test: fast/repaint/body-background-image.html
   7898 
   7899         * rendering/RenderBox.cpp:
   7900         (WebCore::RenderBox::imageChanged): Refined the logic for when the root takes
   7901         over painting the background, to match paintBoxDecorations(). In particular,
   7902         if the root has defined a background, the body should paint its own background.
   7903 
   7904 2007-09-10  David Harrison  <harrison (a] apple.com>
   7905 
   7906         Reviewed by Kevin and Tristan.
   7907 
   7908         Tests added:
   7909         * editing/pasteboard/paste-into-anchor-text.html: Added.
   7910         * editing/pasteboard/paste-table-cells.html: Added.
   7911 
   7912         Source changes:
   7913         * editing/CompositeEditCommand.cpp:
   7914         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
   7915         Nil check enclosingAnchor.
   7916         
   7917         * editing/ReplaceSelectionCommand.cpp:
   7918         (WebCore::ReplaceSelectionCommand::removeNodeAndPruneAncestors):
   7919         New. Keeps m_firstNodeInserted and m_lastLeafInserted updated.
   7920         
   7921         (WebCore::ReplaceSelectionCommand::negateStyleRulesThatAffectAppearance):
   7922         Added a comment.
   7923         
   7924         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
   7925         Let ReplaceSelectionCommand::removeNodeAndPruneAncestors() update the nodes.
   7926          
   7927         (WebCore::ReplaceSelectionCommand::doApply):
   7928         Pass originalVisPosBeforeEndBR to shouldRemoveEndBR()
   7929         
   7930         (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR):
   7931         Don't remove the br if nothing was inserted.
   7932         
   7933         * editing/ReplaceSelectionCommand.h:
   7934         Add VisiblePosition parameter to shouldRemoveEndBR()
   7935         
   7936         * editing/markup.cpp:
   7937         (WebCore::createMarkup):
   7938         Wrap orphan tr element with a table element, just like we were doing
   7939         for tobody elements.
   7940 
   7941 2007-09-10  David Kilzer  <ddkilzer (a] apple.com>
   7942 
   7943         Rubberstamped by Kevin Decker.
   7944 
   7945         No test required since there is no change in functionality.
   7946 
   7947         * history/BackForwardList.cpp:
   7948         (WebCore::BackForwardList::BackForwardList): Fix misspelling of DefaultCapacitiy to DefaultCapacity.
   7949 
   7950 2007-09-10  Mitz Pettel  <mitz (a] webkit.org>
   7951 
   7952         Reviewed by Adele Peterson.
   7953 
   7954         - fix http://bugs.webkit.org/show_bug.cgi?id=15156
   7955           REGRESSION (r24594-r24668): The bottom of styled <select> button text is clipped out
   7956           <rdar://problem/5464301>
   7957 
   7958         Test: fast/forms/menulist-clip.html
   7959 
   7960         * rendering/RenderMenuList.cpp:
   7961         (WebCore::RenderMenuList::controlClipRect): Use correct coordinates for
   7962         the inner block's content rect.
   7963 
   7964 2007-09-10  Brady Eidson  <beidson (a] apple.com>
   7965 
   7966         Reviewed by Darin, Sam, Oliver, Geoff, probably others - what a fun one to review!
   7967 
   7968         <rdar://problem/5471641> - URLs get the wrong icon
   7969 
   7970         Turns out sqlite3_reset() doesn't clear bindings, so previously bound icons were being
   7971         written out for pages without icons.  Easy fix!
   7972 
   7973         * loader/icon/IconDatabase.cpp:
   7974         (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase): For null icons, manually
   7975           bind NULL - otherwise, the previously bound icon will be written out to disk
   7976 
   7977         * loader/icon/SQLStatement.cpp:
   7978         (WebCore::SQLStatement::bindNull): Access to sqlite3_bind_null
   7979         * loader/icon/SQLStatement.h:
   7980 
   7981 2007-09-10  Anders Carlsson  <andersca (a] apple.com>
   7982 
   7983         Reviewed by Oliver and Darin.
   7984 
   7985         <rdar://problem/5468613>
   7986         Using shockwave pages first time after plugin install crashed safari in PluginPing.
   7987         
   7988         Only restore the window proc if the plugin didn't override it.
   7989         
   7990         * plugins/win/PluginViewWin.cpp:
   7991         (WebCore::PluginViewWin::stop):
   7992 
   7993 2007-09-10  Justin Garcia  <justin.garcia (a] apple.com>
   7994 
   7995         Reviewed by Darin.
   7996 
   7997         <rdar://problem/5467405> 
   7998         Revert back behavior of -webkit-user-select to fix widget selection problems
   7999         
   8000         Rolled out r25086 and r25057.  I will be re-opening:
   8001         <rdar://problem/5333725> -webkit-user-select: none makes selection difficult
   8002         Which we will either to defer or fix by introducing a new value of -webkit-user-select.
   8003         <rdar://problem/5370059> REGRESSION: Cannot type into edit fields on a form (sccsheriff.org)
   8004         Which we will either defer or fix with Adele's patch that doesn't involve making 
   8005         -webkit-user-select inherited.
   8006 
   8007         * css/CSSComputedStyleDeclaration.cpp:
   8008         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   8009         * css/CSSStyleSelector.cpp:
   8010         (WebCore::CSSStyleSelector::adjustRenderStyle):
   8011         (WebCore::CSSStyleSelector::applyProperty):
   8012         * editing/SelectionController.cpp:
   8013         (WebCore::SelectionController::selectAll):
   8014         * page/EventHandler.cpp:
   8015         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
   8016         (WebCore::EventHandler::handleMousePressEventTripleClick):
   8017         (WebCore::EventHandler::handleMousePressEventSingleClick):
   8018         (WebCore::EventHandler::updateSelectionForMouseDrag):
   8019         (WebCore::EventHandler::selectCursor):
   8020         (WebCore::EventHandler::canMouseDownStartSelect):
   8021         * page/EventHandler.h:
   8022         * rendering/RenderObject.cpp:
   8023         (WebCore::selectStartNode):
   8024         (WebCore::RenderObject::canSelect):
   8025         (WebCore::RenderObject::shouldSelect):
   8026         (WebCore::RenderObject::draggableNode):
   8027         * rendering/RenderObject.h:
   8028         * rendering/RenderStyle.cpp:
   8029         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   8030         (WebCore::StyleRareNonInheritedData::operator==):
   8031         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
   8032         (WebCore::StyleRareInheritedData::operator==):
   8033         (WebCore::RenderStyle::diff):
   8034         * rendering/RenderStyle.h:
   8035         (WebCore::):
   8036         (WebCore::RenderStyle::userSelect):
   8037         (WebCore::RenderStyle::setUserSelect):
   8038         (WebCore::RenderStyle::initialUserSelect):
   8039 
   8040 2007-09-10  Antti Koivisto  <antti (a] apple.com>
   8041 
   8042         Reviewed by Kevin.
   8043 
   8044         Fix <rdar://problem/5444866>
   8045         REGRESSION: missing text in Acrobat "Getting Started" screen due to change in load ordering of large resources
   8046         
   8047         Make external scripts loaded using file: wait until all style sheet loads have completed before executing. 
   8048         Fixes a class of problems where there is a dependency between script and stylesheet and results would effectively 
   8049         get randomized based on which order the resources arrived. In Tiger file loads were effectively serialized by
   8050         lower level components, which is why this regressed. 
   8051 
   8052         Test: http/tests/local/stylesheet-and-script-load-order.html
   8053 
   8054         * dom/Document.cpp:
   8055         (WebCore::Document::removePendingSheet):
   8056         * dom/Tokenizer.h:
   8057         (WebCore::Tokenizer::executeScriptsWaitingForStylesheets):
   8058         * html/HTMLTokenizer.cpp:
   8059         (WebCore::HTMLTokenizer::HTMLTokenizer):
   8060         (WebCore::HTMLTokenizer::begin):
   8061         (WebCore::HTMLTokenizer::executeScriptsWaitingForStylesheets):
   8062         (WebCore::HTMLTokenizer::notifyFinished):
   8063         * html/HTMLTokenizer.h:
   8064 
   8065 2007-09-08  David Smith  <catfish.man (a] gmail.com>
   8066 
   8067         Reviewed by Maciej Stachowiak.
   8068         
   8069         http://bugs.webkit.org/show_bug.cgi?id=15148
   8070         Bug 15148: Poor performance on crazy DOM raytracer
   8071         
   8072         Switch data structures to avoid quadratic behavior.
   8073 
   8074         * rendering/RenderBlock.cpp:
   8075         (WebCore::RenderBlock::layoutPositionedObjects): Update for ListHashSet
   8076         (WebCore::RenderBlock::markPositionedObjectsForLayout): Update for ListHashSet
   8077         (WebCore::RenderBlock::insertPositionedObject): Use ListHashSet to avoid expensive uniqueing
   8078         (WebCore::RenderBlock::removePositionedObject): Update for ListHashSet
   8079         (WebCore::RenderBlock::removePositionedObjects): Update for ListHashSet
   8080         (WebCore::RenderBlock::lowestPosition): Update for ListHashSet
   8081         (WebCore::RenderBlock::rightmostPosition): Update for ListHashSet
   8082         (WebCore::RenderBlock::leftmostPosition): Update for ListHashSet
   8083         (WebCore::RenderBlock::rightBottom): Update for ListHashSet
   8084         * rendering/RenderBlock.h: Change m_positionedObjects from DeprecatedPtrList to ListHashSet
   8085 
   8086 2007-09-09  Brady Eidson <beidson (a] apple.com>
   8087 
   8088         Rubberstamped by Darin
   8089 
   8090         pthread_main_np() is a Darwin thing, not a Mac thing
   8091 
   8092         * loader/icon/IconDatabase.cpp:
   8093         (WebCore::IconDatabase::IconDatabase):
   8094 
   8095 2007-09-09  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   8096 
   8097         Build fix for Gtk+ by adding WebCore::callOnMainThread to the TemporaryLinkStubs.
   8098 
   8099         * platform/gdk/TemporaryLinkStubs.cpp:
   8100         (WebCore::callOnMainThread):
   8101 
   8102 2007-09-08  George Staikos  <staikos (a] kde.org>
   8103 
   8104         Reviewed by Olliej.
   8105 
   8106         Separate out and implement FileSystem functions,  and stub out the
   8107         icondatabase function for future implementation.
   8108 
   8109         * WebCore.pro:
   8110         * platform/qt/FileSystemQt.cpp: Added.
   8111         (WebCore::fileExists):
   8112         (WebCore::deleteFile):
   8113         * platform/qt/TemporaryLinkStubs.cpp:
   8114         * platform/qt/ThreadingQt.cpp: Added.
   8115         (WebCore::callOnMainThread):
   8116 
   8117 2007-09-08  Mark Rowe  <mrowe (a] apple.com>
   8118 
   8119         Build fix for when ENABLE(ICONDATABASE) is not set.
   8120 
   8121         * loader/icon/IconDatabaseNone.cpp:
   8122         (WebCore::IconDatabase::~IconDatabase):
   8123 
   8124 2007-09-08  Mark Rowe  <mrowe (a] apple.com>
   8125 
   8126         More fixes for the Qt and Gtk builds.
   8127 
   8128         * WebCore.pro: Update for file changes.
   8129         * loader/icon/IconDatabase.cpp: Include errno.h for EDEADLK.
   8130         * loader/icon/PageURLRecord.h:
   8131 
   8132 2007-09-08  Justin Garcia  <justin.garcia (a] apple.com>
   8133 
   8134         Backing my change back in without the changes to VisiblePosition::next 
   8135         and previous that weren't necessary to fix the bug and were causing some
   8136         layout test failures.  Most of the failures appeared to be fixes but I
   8137         want more time to investigate and have to move to on to another task.
   8138 
   8139         * editing/Selection.cpp:
   8140         (WebCore::Selection::validate):
   8141         * editing/visible_units.cpp:
   8142         (WebCore::endOfWord):
   8143 
   8144 2007-09-08  Brady Eidson  <beidson (a] apple.com>
   8145 
   8146         Reviewed by Mark Rowe
   8147 
   8148         Fix the _NSAutoreleaseNoPool() errors on launch - We were using NSFileManager on the secondary
   8149         thread with no NSAutoreleasePool in place
   8150 
   8151         * loader/icon/IconDatabase.cpp:
   8152         (WebCore::IconDatabase::iconDatabaseSyncThread):
   8153 
   8154 2007-09-08  Sam Weinig  <sam (a] webkit.org>
   8155 
   8156         Add fix to the correct file.
   8157 
   8158         * loader/icon/SQLDatabase.h:
   8159         * loader/icon/SQLStatement.h:
   8160 
   8161 2007-09-08  Sam Weinig  <sam (a] webkit.org>
   8162 
   8163         Fix Windows build.
   8164 
   8165         * loader/icon/SQLStatement.h: Disable boolean conversion warning.
   8166 
   8167 2007-09-08  Brady Eidson  <beidson (a] apple.com>
   8168 
   8169         Build fix for non-Mac platforms that use Icon Database
   8170 
   8171         * loader/icon/IconDatabase.cpp:
   8172         (WebCore::IconDatabase::IconDatabase): Apparently only Mac has the beauty that is pthread_main_np()
   8173 
   8174 2007-09-08  Mark Rowe  <mrowe (a] apple.com>
   8175 
   8176         Build fix.
   8177 
   8178         * WebCore.xcodeproj/project.pbxproj: Headers used up in WebKit need to be be "private" rather than "project".
   8179 
   8180 2007-09-08  Brady Eidson  <beidson (a] apple.com>
   8181 
   8182         Reviewed by Darin
   8183 
   8184         <rdar://problem/5434431> - Asynchronous Icon Database
   8185 
   8186         The IconDatabase API was originally designed to be fully asynchronous - if an icon wasn't read in from disk
   8187         when you asked for it, you would be notified when it was.
   8188 
   8189         Safari 2 did writes on a background thread, but reads blocked the main thread.
   8190 
   8191         The current WebCore implementation using SQLite attempted to get rid of the background thread by defering expensive 
   8192         writes via timers, but falls short in moderate to extreme usage cases
   8193 
   8194         Time to make the IconDatabase live up to it's fully asynchronous destiny.
   8195 
   8196         This should -
   8197         - Make the browser instantly usable while converting Safari 2 icons in the background occurs
   8198         - Remedy any UI slowness/blocking when on slow network home directories
   8199         - Remedy random UI slowness, pauses, and stutters do to random I/O occurring at the exact wrong time or under heavy
   8200           disk usage from swapping or other apps on the system
   8201         - Allow certain long-running procedures to be interruptible (Safari 2 import, reading icons in from disk when trying to quit, etc)
   8202 
   8203         This will have a noticeable effect on current Safari 2 and Safari 3 beta browsers, including icons not appearing in bookmarks, history,
   8204         or the location field the first time they're asked for, as current released Safari's don't properly listen for these async notifations.  
   8205         The second time such a menu or view is brought up, the icon should be there.
   8206 
   8207         Additionally this includes a SQLite schema change which will be a lot more efficient but will result in the loss of current SQLite icons.
   8208         Converting from Safari 2 style icons will still work.
   8209 
   8210         WebCore, welcome to multi-threadedness
   8211 
   8212         * WebCore.exp:
   8213         * WebCore.xcodeproj/project.pbxproj:
   8214         * WebCore.vcproj/WebCore.vcproj:
   8215 
   8216         * loader/DocumentLoader.cpp:
   8217         (WebCore::DocumentLoader::iconLoadDecisionAvailable): Called when an Icon becomes available that was requested by this 
   8218           DocumentLoader (to support the webView:didReceiveIcon: delegate call in WebKit)
   8219         * loader/DocumentLoader.h:
   8220 
   8221         * loader/FrameLoader.cpp:
   8222         (WebCore::FrameLoader::iconLoadDecisionAvailable): Called from the DocumentLoaders who get notified - if the FrameLoader 
   8223           ends up not caring because the WebView has transitioned to a new page, nothing occurs.  Otherwise, the FrameLoader possibly
   8224           starts it Icon Loader and possibly sends the webView:didReceiveIcon: delegate call
   8225         (WebCore::FrameLoader::startIconLoader): Instead of "Yes, load the icon now" or "No, don't load it" there is a third possibility -
   8226           "You might be asked to load your icon later."  Add supporting logic for receiving this state, and being called a second time
   8227           when the load decision is finally available.
   8228         * loader/FrameLoader.h:
   8229 
   8230         * loader/FrameLoaderClient.h: Added "registerForIconNotification" which is a way to tell WebViews "The icon you are interested in might
   8231           become available via the generic WebIconDatabaseDidAddIconNotification instead of a targeted delegate call"
   8232           A WebView can then receive the generic notification and pass on it's own targeted delegate call.
   8233 
   8234         * loader/icon/IconDataCache.cpp: Removed.
   8235         * loader/icon/IconDataCache.h: Removed.
   8236 
   8237         * loader/icon/IconDatabase.cpp:
   8238         (WebCore::urlForLogging): Cut a URL down in length for sane logging and debugging
   8239         (WebCore::defaultClient): Return the default, empty IconDatabaseClient incase the API doesn't set one.
   8240 
   8241         Following block of methods are for the Main thread's usage -
   8242         (WebCore::IconDatabase::setClient):
   8243         (WebCore::makeAllDirectories): Small optimization that checks to see if the entire path exists already, and doesn't try to loop
   8244           through each patch component if the full path is already present
   8245         (WebCore::IconDatabase::open): Makes all directories to the target path and kicks off the background thread - nothing more.
   8246         (WebCore::IconDatabase::close): Signals the thread to quit and waits for it to do so
   8247         (WebCore::IconDatabase::removeAllIcons): Purge the icon database
   8248         (WebCore::IconDatabase::iconForPageURL):
   8249         (WebCore::IconDatabase::readIconForPageURLFromDisk):
   8250         (WebCore::IconDatabase::iconURLForPageURL):
   8251         (WebCore::IconDatabase::defaultIcon):
   8252         (WebCore::IconDatabase::retainIconForPageURL):
   8253         (WebCore::IconDatabase::releaseIconForPageURL):
   8254         (WebCore::IconDatabase::setIconDataForIconURL):
   8255         (WebCore::IconDatabase::setIconURLForPageURL):
   8256         (WebCore::IconDatabase::loadDecisionForIconURL): Determine if an icon loader should load now.  If the decision is "maybe later", then
   8257           mark the DocumentLoader to be notified later when the final decision is available.
   8258         (WebCore::IconDatabase::iconDataKnownForIconURL): Determine if the actual image data has been read from disk (or set from the loader) for 
   8259           icon URL in question
   8260         (WebCore::IconDatabase::setEnabled):
   8261         (WebCore::IconDatabase::isEnabled):
   8262         (WebCore::IconDatabase::setPrivateBrowsingEnabled):
   8263         (WebCore::IconDatabase::isPrivateBrowsingEnabled):
   8264         (WebCore::IconDatabase::delayDatabaseCleanup): Restore this method from a year ago, as asynchronous pruning of icons can now occur on a 
   8265           background thread.
   8266         (WebCore::IconDatabase::allowDatabaseCleanup):
   8267         (WebCore::IconDatabase::checkIntegrityBeforeOpening):
   8268         (WebCore::IconDatabase::pageURLMappingCount):
   8269         (WebCore::IconDatabase::retainedPageURLCount):
   8270         (WebCore::IconDatabase::iconRecordCount):
   8271         (WebCore::IconDatabase::iconRecordCountWithData):
   8272         (WebCore::IconDatabase::IconDatabase):
   8273         (WebCore::IconDatabase::~IconDatabase):
   8274         (WebCore::IconDatabase::notifyPendingLoadDecisions): Tell all the registered DocumentLoaders "Hey, we've read in all URL mappings from disk,
   8275           so check to see if you are interested in any of them"
   8276         (WebCore::IconDatabase::notifyPendingLoadDecisionsInternal):
   8277         (WebCore::IconDatabase::wakeSyncThread): Wake the sync thread, if it is idle
   8278         (WebCore::IconDatabase::scheduleOrDeferSyncTimer): Even though we're on a background thread, we still defer writing out to disk during
   8279           periods of high activity
   8280         (WebCore::IconDatabase::syncTimerFired): Call wakeSyncThread()
   8281 
   8282         Following block of methods may be used by either thread -
   8283         (WebCore::IconDatabase::isOpen):
   8284         (WebCore::IconDatabase::databasePath):
   8285         (WebCore::IconDatabase::defaultDatabaseFilename):
   8286         (WebCore::IconDatabase::getOrCreateIconRecord):
   8287         (WebCore::IconDatabase::getOrCreatePageURLRecord):
   8288 
   8289         Following block of methods are used by the secondary thread only -
   8290         (WebCore::IconDatabase::importIconURLForPageURL): For the Safari 2 import procedure - write a URL mapping directly out to disk
   8291         (WebCore::IconDatabase::importIconDataForIconURL): For the Safari 2 import procedure - write an Icon directly out to disk
   8292         (WebCore::IconDatabase::shouldStopThreadActivity): To check and see if the thread should stop what it is doing now to do something
   8293           more important (such as quit, or delete all icons)
   8294         (WebCore::IconDatabase::iconDatabaseSyncThreadStart):
   8295         (WebCore::IconDatabase::iconDatabaseSyncThread): Entry point for the background thread
   8296         (WebCore::databaseVersionNumber):
   8297         (WebCore::isValidDatabase):
   8298         (WebCore::createDatabaseTables):
   8299         (WebCore::IconDatabase::performOpenInitialization): Open and validate the SQLite database, making sure it's schema jives with what
   8300           is expected
   8301         (WebCore::IconDatabase::checkIntegrity):
   8302         (WebCore::IconDatabase::performURLImport): Import all the Page URL -> Icon URL mappings from the database.  Done "1st thing" on startup,
   8303           this is necessary to be able to give the loader decisions about whether or not it should load icons from the network
   8304         (WebCore::IconDatabase::syncThreadMainLoop): Main loop - sleeps until woken up, then does a read cycle and a write cycle until both cycles
   8305           do no work - then it goes back to sleep.
   8306         (WebCore::IconDatabase::readFromDatabase): Reads icons from the database that clients are waiting on
   8307         (WebCore::IconDatabase::writeToDatabase): Writes any changes page -> icon url mappings to disk, as well as any new image data that has 
   8308           been received from the loader
   8309         (WebCore::IconDatabase::pruneUnretainedIcons): Done only once, and only after the first write to the database, this procedure removes all
   8310           icons and page URLs from disk that haven't been retained by any client.  Note that the prune can be delayed by utilizing delayDatabaseCleanup()
   8311         (WebCore::IconDatabase::checkForDanglingPageURLs): Usually part of the prune procedure, prunes any pages who point to icons that no longer exist 
   8312           in the database
   8313         (WebCore::IconDatabase::removeAllIconsOnThread): Completely purge both the on-disk and in memory records of all icons
   8314         (WebCore::IconDatabase::deleteAllPreparedStatements): Part of removeAllIcons and the thread cleanup procedure
   8315         (WebCore::IconDatabase::cleanupSyncThread): Write out any last remaining writes to disk, close the database, and then end the thread
   8316         (WebCore::IconDatabase::imported): Checks the DB to see if the Safari 2 import has occured
   8317         (WebCore::IconDatabase::setImported): Sets the "Safari 2 imported" flag
   8318         (WebCore::readySQLStatement):
   8319         (WebCore::IconDatabase::setIconURLForPageURLInSQLDatabase): This and the following "SQLDatabase" suffixed methods are pretty self explanatory
   8320         (WebCore::IconDatabase::setIconIDForPageURLInSQLDatabase):
   8321         (WebCore::IconDatabase::removePageURLFromSQLDatabase):
   8322         (WebCore::IconDatabase::getIconIDForIconURLFromSQLDatabase):
   8323         (WebCore::IconDatabase::addIconURLToSQLDatabase):
   8324         (WebCore::IconDatabase::getImageDataForIconURLFromSQLDatabase):
   8325         (WebCore::IconDatabase::removeIconFromSQLDatabase):
   8326         (WebCore::IconDatabase::writeIconSnapshotToSQLDatabase):
   8327         * loader/icon/IconDatabase.h:
   8328 
   8329         * loader/icon/IconDatabaseClient.h: Added.
   8330         (WebCore::IconDatabaseClient::~IconDatabaseClient):
   8331         (WebCore::IconDatabaseClient::performImport): Perform the Safari 2 import, implemented by WebKit
   8332         (WebCore::IconDatabaseClient::dispatchDidRemoveAllIcons): Send the API notification
   8333         (WebCore::IconDatabaseClient::dispatchDidAddIconForPageURL): Ditto
   8334 
   8335         * loader/icon/IconDatabaseNone.cpp: Best attempt to keep non icon-DB platforms building
   8336         (WebCore::IconDatabase::defaultDatabaseFilename):
   8337         (WebCore::IconDatabase::readIconForPageURLFromDisk):
   8338         (WebCore::IconDatabase::loadDecisionForIconURL):
   8339         (WebCore::IconDatabase::iconDataKnownForIconURL):
   8340         (WebCore::IconDatabase::setIconURLForPageURL):
   8341         (WebCore::IconDatabase::isEnabled):
   8342         (WebCore::IconDatabase::delayDatabaseCleanup):
   8343         (WebCore::IconDatabase::allowDatabaseCleanup):
   8344         (WebCore::IconDatabase::setClient):
   8345 
   8346         * loader/icon/IconRecord.cpp: Added.
   8347         (WebCore::IconRecord::IconRecord): IconRecord used to be "IconDataCache" - it is merely a container for the url, timestamp, and image for a site icon.
   8348           It is Shared, and therefore ref counted - PageURLRecords are the owning containers.  This is a tricky way to track how many page urls are retaining 
   8349           an IconRecord and therefore tracking when we should try to get rid of one.
   8350         (WebCore::IconRecord::~IconRecord):
   8351         (WebCore::IconRecord::image):
   8352         (WebCore::IconRecord::setImageData):
   8353         (WebCore::IconRecord::loadImageFromResource):
   8354         (WebCore::IconRecord::imageDataStatus): Return whether the image data hasn't been read yet, exists in memory, or is absent (site with no icon)
   8355         (WebCore::IconRecord::snapshot): Returns a snapshot of the icon's data - url, timestamp, and image data - to be written to disk
   8356         * loader/icon/IconRecord.h: Added.
   8357         (WebCore::IconSnapshot::IconSnapshot):
   8358         (WebCore::IconRecord::getTimestamp):
   8359         (WebCore::IconRecord::setTimestamp):
   8360         (WebCore::IconRecord::iconURL):
   8361         (WebCore::IconRecord::retainingPageURLs):
   8362 
   8363         * loader/icon/PageURLRecord.cpp: Added.
   8364         (WebCore::PageURLRecord::PageURLRecord): PageURLRecord is fundamentally a pairing of a Page URL to an Icon.  It has manual ref counting for the sake
   8365           of "retainIconForPageURL" and "releaseIconForPageURL", and can provide a quick snapshot of it's Page URL -> Icon URL mapping for writing to
   8366           the database
   8367         (WebCore::PageURLRecord::setIconRecord):
   8368         (WebCore::PageURLRecord::snapshot):
   8369         * loader/icon/PageURLRecord.h: Added.
   8370         (WebCore::PageURLSnapshot::PageURLSnapshot):
   8371         (WebCore::PageURLRecord::url):
   8372         (WebCore::PageURLRecord::PageURLRecord::iconRecord):
   8373         (WebCore::PageURLRecord::retain):
   8374         (WebCore::PageURLRecord::release):
   8375         (WebCore::PageURLRecord::retainCount):
   8376 
   8377         * platform/SharedBuffer.cpp:
   8378         (WebCore::SharedBuffer::copy): Added a deep copy method for the purposes of handing icon data across the thread boundary into the icon database
   8379         * platform/SharedBuffer.h:
   8380 
   8381         * platform/graphics/svg/SVGImageEmptyClients.h:
   8382         (WebCore::SVGEmptyFrameLoaderClient::registerForIconNotification):
   8383 
   8384         * platform/win/TemporaryLinkStubs.cpp:
   8385         (WebCore::callOnMainThread): Only other IconDatabase utilizing platform - keep their build going
   8386 
   8387 2007-09-07  David Kilzer  <ddkilzer (a] apple.com>
   8388 
   8389         Reviewed by Timothy Hatcher.
   8390 
   8391         Housekeeping.  No test required.
   8392 
   8393         * bindings/objc/WebScriptObjectInternal.h: Removed unused file.
   8394         * bindings/objc/WebScriptObjectPrivate.h: Updated copyright statement.
   8395 
   8396 2007-09-07  Justin Garcia  <justin.garcia (a] apple.com>
   8397         
   8398         Rolling out my changes from r25421 while I investigate the layout test failures
   8399         they caused.
   8400         
   8401         * editing/Selection.cpp:
   8402         (WebCore::Selection::validate):
   8403         * editing/VisiblePosition.cpp:
   8404         (WebCore::VisiblePosition::next):
   8405         (WebCore::VisiblePosition::previous):
   8406         (WebCore::VisiblePosition::lastEditablePositionAtOrBefore):
   8407         (WebCore::VisiblePosition::firstEditablePositionAtOrAfter):
   8408         * editing/VisiblePosition.h:
   8409         * editing/visible_units.cpp:
   8410         (WebCore::endOfWord):
   8411         (WebCore::previousWordPosition):
   8412         (WebCore::nextWordPosition):
   8413         (WebCore::startOfLine):
   8414         (WebCore::endOfLine):
   8415         (WebCore::previousSentencePosition):
   8416         (WebCore::nextSentencePosition):
   8417 
   8418 2007-09-05  Geoffrey Garen  <ggaren (a] apple.com>
   8419 
   8420         Reviewed by Darin Adler, Maciej Stachowiak, Mark Rowe, Tim Hatcher.
   8421         
   8422         Fixed <rdar://problem/5326009> Make non-browser WebKit clients have no 
   8423         memory cache, or a very tiny one
   8424 
   8425         Added a client callback to notify WebKit when the first navigation has
   8426         taken place. "Navigation" here means a transition from one page to 
   8427         another that ends up in the back/forward list.
   8428         
   8429         WebKit Mac uses this notification to grow its cache model under certain
   8430         circumstances.
   8431         
   8432         * loader/FrameLoader.cpp:
   8433         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget):
   8434         * loader/FrameLoaderClient.h:
   8435 
   8436         * platform/graphics/svg/SVGImageEmptyClients.h:
   8437         (WebCore::SVGEmptyFrameLoaderClient::didPerformFirstNavigation): Ah, 
   8438         SVGEmptyFrameLoaderClient, my old friend. 
   8439 
   8440 2007-09-07  Adele Peterson  <adele (a] apple.com>
   8441 
   8442         Reviewed by Dave Harrison.
   8443 
   8444         Fix for <rdar://problem/5428427> Wrong characters are re-converted after doing reconversion with Kotoeri
   8445 
   8446         Revert change for<rdar://problem/5279521> and add nil checks for the result of TextIterator::rangeFromLocationAndLength
   8447         TextIterator::exitNode shouldn't require the m_lastTextNode to be true, but we can't change that without making the logic in _web_attributedStringFromRange match.
   8448         We'll get that for free when we switch to use TextIterator in _web_attributedStringFromRange.
   8449 
   8450         * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyBlockStyle): Added nil checks.
   8451         * editing/IndentOutdentCommand.cpp: (WebCore::IndentOutdentCommand::indentRegion): ditto.
   8452         * editing/TextIterator.cpp: (WebCore::TextIterator::exitNode): Re-added check for m_lastTextNode before emitting newline.
   8453 
   8454 2007-09-07  Ada Chan  <adachan (a] apple.com>
   8455 
   8456         <rdar://problem/5395928> Need to be able to handle context menu item selection by index
   8457         
   8458         Reviewed by Beth.
   8459 
   8460         * platform/ContextMenu.h: Added method to retrieve context menu item by index
   8461         * platform/win/ContextMenuWin.cpp:
   8462         (WebCore::ContextMenu::ContextMenu): call setPlatformDescription() since that will handle
   8463         adding the MNS_NOTIFYBYPOS style to the context menu.
   8464         (WebCore::contextMenuItemByIdOrPosition): helper method so we don't have to duplicate code
   8465         between itemWithAction() and itemAtIndex().
   8466         (WebCore::ContextMenu::itemWithAction):
   8467         (WebCore::ContextMenu::itemAtIndex):
   8468         (WebCore::ContextMenu::setPlatformDescription): add MNS_NOTIFYBYPOS style to the context menu
   8469         so we will get notified by menu position through WM_MENUCOMMAND when the item is selected.
   8470 
   8471 2007-09-07  Justin Garcia  <justin.garcia (a] apple.com>
   8472 
   8473         Reviewed by Darin.
   8474         
   8475         <rdar://problem/5057506> Double-clicking after ToDo content doesn't select the paragraph break
   8476         
   8477         * editing/Selection.cpp:
   8478         (WebCore::Selection::validate):
   8479         Moved the code that moves across a paragraph boundary
   8480         when expanding selections by word granularity from
   8481         endOfWord to here.
   8482         In the word and paragraph granularity cases, if the 
   8483         end of the selection is at the end of the last paragraph 
   8484         in the last cell of a block table, expand it so that 
   8485         it ends at the start of the paragraph after the table, 
   8486         instead of just after the table, so that ToDo content 
   8487         gets the same double/tripled click behavior that normal 
   8488         paragraphs get (added two testcases).
   8489         When expanding the selection to include paragraph
   8490         breaks, pass VisiblePosition::next true so that it
   8491         doesn't change editability.
   8492         * editing/VisiblePosition.cpp:
   8493         (WebCore::VisiblePosition::next): Renamed the bool because it's now also
   8494         used to keep non-editable positions non-editable.
   8495         (WebCore::VisiblePosition::previous): Ditto.
   8496         (WebCore::VisiblePosition::lastPositionWithSameEditabilityAtOrBefore):
   8497         Renamed this function and made it also work with non-editable positions.
   8498         (WebCore::VisiblePosition::firstPositionWithSameEditabilityAtOrAfter):
   8499         Ditto.
   8500         * editing/VisiblePosition.h:
   8501         * editing/visible_units.cpp:
   8502         (WebCore::endOfWord): Called the renamed function.
   8503         (WebCore::previousWordPosition): Ditto.
   8504         (WebCore::nextWordPosition): Ditto.
   8505         (WebCore::startOfLine): Ditto.
   8506         (WebCore::endOfLine): Ditto.
   8507         (WebCore::previousSentencePosition): Ditto.
   8508         (WebCore::nextSentencePosition): Ditto.
   8509 
   8510 2007-09-07  Brady Eidson  <beidson (a] apple.com>
   8511 
   8512         Reviewed by Sam
   8513 
   8514         <rdar://problem/5089241> - ASSERT and other funky effects in IconLoader with large 404 pages
   8515 
   8516         There were two problems:
   8517         1 - I originally didn't expect SubresourceLoader to keep pulling in data after it received a 404 response,
   8518             but if the server sends back a complex 404 page, the loader did just that.  That could result in the 
   8519             IconLoader "finishing" twice
   8520         2 - In this case, the long messy 404 page would be committed to the database as image data.  This would 
   8521             result in wasted space on disk, wasted space in RAM, and wasting processor time trying to parse 50k+
   8522             of HTML as image data
   8523 
   8524         Fix is two parts - 1, monitor the "m_loadIsInProgress" flag and 2, make ::finishLoading() take an actual 
   8525         SharedBuffer argument that is what should be committed to the database so the ResourceHandle is unnecessary
   8526 
   8527         * loader/icon/IconLoader.cpp:
   8528         (WebCore::IconLoader::didReceiveResponse): If the response is not valid, commit null data 
   8529         (WebCore::IconLoader::didFail): If we've already finished loading once (the 404 response), don't
   8530           finish again!
   8531         (WebCore::IconLoader::didFinishLoading): Ditto
   8532         (WebCore::IconLoader::finishLoading): Take a SharedBuffer argumnt as the actual data to commit
   8533         * loader/icon/IconLoader.h: Add a SharedBuffer arg to ::finishLoading()
   8534 
   8535 2007-09-07  Brady Eidson  <beidson (a] apple.com>
   8536 
   8537         Reviewed by Darin
   8538 
   8539         Inline the in-header definitions for non-Mac platforms
   8540 
   8541         * platform/AutodrainedPool.h:
   8542         (WebCore::AutodrainedPool::AutodrainedPool):
   8543         (WebCore::AutodrainedPool::~AutodrainedPool):
   8544         (WebCore::AutodrainedPool::cycle):
   8545 
   8546 2007-09-07  Brady Eidson  <beidson (a] apple.com>
   8547 
   8548         Reviewed by Darin
   8549 
   8550         Add some AutoreleasePool and Threading utilities in preparation for the multi-threaded
   8551         fix for <rdar://problem/5434431>
   8552 
   8553         AutodrainedPool wraps an NSAutoreleasePool and tracks a "cycle" count.  This allows clients
   8554         in WebCore to simply call ::cycle() and after a preset number of iterations the pool will drain
   8555         and recreate the underlying NSAutoreleasePool
   8556    
   8557         Threading utilities include C++ wrappers for pthread mutexes and conditions, as well as a generic
   8558         "callOnMainThread()" function for any non-main thread to use.
   8559 
   8560         * platform/AutodrainedPool.h: Added.  
   8561         (WebCore::AutodrainedPool::AutodrainedPool): Empty implementations for all non-mac platforms
   8562         (WebCore::AutodrainedPool::~AutodrainedPool): ditto
   8563         (WebCore::AutodrainedPool::cycle): ditto
   8564         * platform/mac/AutodrainedPool.mm: Added.
   8565         (WebCore::AutodrainedPool::AutodrainedPool): 
   8566         (WebCore::AutodrainedPool::~AutodrainedPool):
   8567         (WebCore::AutodrainedPool::cycle): Keep track of number of cycles, and drain/recreate the pool if the
   8568           cycle limit is hit
   8569 
   8570         * platform/Threading.h: Added.
   8571         (WebCore::Mutex::Mutex): C++ wrapper for pthread_mutex
   8572         (WebCore::Mutex::~Mutex):
   8573         (WebCore::Mutex::lock):
   8574         (WebCore::Mutex::tryLock):
   8575         (WebCore::Mutex::unlock):
   8576         (WebCore::MutexLocker::MutexLocker): Handles automatically locking/unlocking a Mutex (for early returns
   8577           from a function, for example)
   8578         (WebCore::MutexLocker::~MutexLocker):
   8579         (WebCore::ThreadCondition::ThreadCondition): C++ wrapper for pthread_condition
   8580         (WebCore::ThreadCondition::~ThreadCondition):
   8581         (WebCore::ThreadCondition::wait):
   8582         (WebCore::ThreadCondition::signal):
   8583         (WebCore::ThreadCondition::broadcast):
   8584         * platform/mac/Threading.mm: Added.
   8585         (-[WebCoreFunctionWrapper initWithFunction:]): Obj-C implementation of "callOnMainThread"
   8586         (-[WebCoreFunctionWrapper _call]):
   8587         (WebCore::callOnMainThread):
   8588 
   8589 2007-09-07  George Staikos  <staikos (a] kde.org>
   8590 
   8591         Fix typo.
   8592 
   8593         * loader/ProgressTracker.h:
   8594         (WebCore::ProgressTracker::totalPageAndResourceBytesToLoad):
   8595 
   8596 2007-09-07  Qing Zhao  <qing (a] staikos.net>
   8597 
   8598         Reviewed by Anders and George.
   8599 
   8600         Add accessors for these two variables.
   8601 
   8602         * loader/ProgressTracker.h:
   8603         (WebCore::ProgressTracker::totalPageAndResourseBytesToLoad):
   8604         (WebCore::ProgressTracker::totalBytesReceived):
   8605 
   8606 2007-09-06  Tristan O'Tierney  <tristan (a] apple.com>
   8607 
   8608         Reviewed by Maciej Stachowiak.
   8609         
   8610         <rdar://problem/5333496> Back button stopped working on sfgate.com (14957)
   8611         
   8612         This fix is specifically targted to address sfgate.com and reuters.com with minimal
   8613         impact to other areas of the frameloader.  It does not cause any regression tests to fail.
   8614         I've added two layout tests: One to detect this particular bug, and one to address
   8615         a secondary issue: if an iframe navigation occurs during onload by a timeout an
   8616         additional history item is added, similarly to firefox.  We tried to match firefox
   8617         more than IE with this fix but did gain a little bit of IE compatability.
   8618 
   8619         Tests: http/tests/navigation/onload-navigation-iframe-timeout.html
   8620                http/tests/navigation/onload-navigation-iframe.html
   8621 
   8622         * dom/Document.h:
   8623         (WebCore::Document::processingLoadEvent):
   8624         Return the m_processingLoadEvent boolean so FrameLoader knows
   8625         that the document is in the middle of calling <body onload>
   8626         
   8627         * html/HTMLFrameOwnerElement.cpp:
   8628         (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement):
   8629         * html/HTMLFrameOwnerElement.h:
   8630         (WebCore::HTMLFrameOwnerElement::createdByParser):
   8631         (WebCore::HTMLFrameOwnerElement::setCreatedByParser):
   8632         Added support for a new member variable of frame elements: m_createdByParser.
   8633         This lets us specifically target the fix to only iframes created via JS
   8634         and not in-document.
   8635         
   8636         * loader/FrameLoader.cpp:
   8637         (WebCore::FrameLoader::FrameLoader):
   8638         Initialize m_navigationDuringLoad to false
   8639         
   8640         (WebCore::FrameLoader::provisionalLoadStarted):
   8641         Determine if the load we're about to start is occuring during
   8642         an onload.
   8643         
   8644         (WebCore::FrameLoader::updateHistoryForStandardLoad):
   8645         If the current frameloader is for a child frame, and the navigation is occuring
   8646         during an onload update the current history item rather than adding a new one.
   8647         
   8648         * loader/FrameLoader.h:
   8649         Added a new member variable, m_navigationDuringLoad to track
   8650         the navigation status during the on load, rather than trying to determine
   8651         the status after (which is nearly impossible due to a new runloop spin).
   8652 
   8653 2007-09-06  David Kilzer  <ddkilzer (a] apple.com>
   8654 
   8655         Reviewed by Darin.
   8656 
   8657         The implementation of BackForwardList::clearPageCache() was removed in r21793.
   8658         It's now safe to remove it from the header.
   8659 
   8660         * history/BackForwardList.h: Removed clearPageCache().
   8661 
   8662 2007-09-06  Anders Carlsson  <andersca (a] apple.com>
   8663 
   8664         Reviewed by Ada.
   8665 
   8666         <rdar://problem/5457844>
   8667         Crash when using mouse wheel with plug-ins disabled.
   8668 
   8669         Null check the widget.
   8670 
   8671         * page/EventHandler.cpp:
   8672         (WebCore::EventHandler::handleWheelEvent):
   8673 
   8674 2007-09-06  Anders Carlsson  <andersca (a] apple.com>
   8675 
   8676         Reviewed by Mitz.
   8677 
   8678         Small tweak.
   8679         
   8680         * plugins/win/PluginStreamWin.cpp:
   8681         (WebCore::PluginStreamWin::startStream):
   8682 
   8683 2007-09-06  Anders Carlsson  <andersca (a] apple.com>
   8684 
   8685         Reviewed by Adam and Steve.
   8686 
   8687         <rdar://problem/5459321>
   8688         ADOBE: Safari 3 on Windows is passing bogus values in stream->headers in NPP_NewStream, causing Flash Player to crash.
   8689         
   8690         Serialize the headers into a stream and pass it to NPP_NewStream in stream->headers.
   8691         
   8692         * plugins/win/PluginStreamWin.cpp:
   8693         (WebCore::PluginStreamWin::startStream):
   8694         * plugins/win/PluginStreamWin.h:
   8695 
   8696 2007-09-06  Darin Adler  <darin (a] apple.com>
   8697 
   8698         Reviewed by Hyatt.
   8699 
   8700         - fix http://bugs.webkit.org/show_bug.cgi?id=15153
   8701           REGRESSION: Assertion failure in FrameView::scheduleRelayout() (m_frame->view() == this)
   8702 
   8703         Back out the willRemove() part of the previous patch.
   8704         It was incorrect and not needed to fix the bug anyway.
   8705 
   8706         * dom/Document.cpp: (WebCore::Document::detach): Remove willRemove().
   8707 
   8708         * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Put the willRemove() call
   8709         back here where it was originally before the previous fix.
   8710 
   8711         * history/CachedPage.cpp: (WebCore::CachedPage::clear):
   8712         * page/Frame.cpp:
   8713         (WebCore::Frame::setView):
   8714         (WebCore::Frame::setDocument):
   8715         Added FIXMEs about the fact that we call detach() on the document but not willRemove().
   8716 
   8717 2007-09-05  Timothy Hatcher  <timothy (a] apple.com>
   8718 
   8719         Reviewed by Darin.
   8720 
   8721         Changed the blocked exception log message to match AppKit's blocked exception message.
   8722 
   8723         * platform/mac/BlockExceptions.mm:
   8724         (ReportBlockedObjCException):
   8725 
   8726 2007-09-06  Darin Adler  <darin (a] apple.com>
   8727 
   8728         Reviewed by Hyatt.
   8729 
   8730         - <rdar://problem/5457865> REGRESSION (9A527): Safari crashes when opening a page
   8731           that immediately redirects to a PDF
   8732 
   8733         I don't know how to make an automated test that trips over this.
   8734 
   8735         The immediate cause of this regression was making a back/forward list entry in
   8736         this case. Earlier, the quick redirect would not results in a separate entry.
   8737         That's possibly a bug too, but it's better to fix the crash first.
   8738 
   8739         The page cache was putting the document into a strange state: Still attached but
   8740         with the renderer set to 0. There was no good reason to do this, so got rid of it.
   8741         Moved the responsibility to the caller of not calling detach() when moving into
   8742         the page cache. This is more of a frame loader thing than a document thing.
   8743 
   8744         * dom/Document.cpp: (WebCore::Document::detach): Added assertions that this is
   8745         only called on a document that's attached and not in the page cache. Also moved
   8746         the call to willRemove in here, so that callers can't make the mistake of not
   8747         calling that function. Removed the incorrectly-positioned code that made this
   8748         function do less if it was called on a document in the page cache.
   8749 
   8750         * history/CachedPage.cpp: (WebCore::CachedPage::clear): Removed the code to handle
   8751         a document with a renderer of 0. There was no need to put the document into this
   8752         state. Any document in the page cache will always be "attached".
   8753 
   8754         * loader/FrameLoader.cpp: (WebCore::FrameLoader::clear): Added a check to prevent
   8755         from calling an unnecessary cancelParsing() on a document that's in the page cache
   8756         and guard the call to detach() with a check of attached(), like all other calls to
   8757         detach() on DOM objects.
   8758 
   8759         * page/Frame.cpp:
   8760         (WebCore::Frame::setView): Added a missing check of attached(), like all other
   8761         calls to detach() on DOM objects. Also added code to not call detach() on the
   8762         document when it's in the page cache.
   8763         (WebCore::Frame::setDocument): This call site already had the attached() check,
   8764         but was missing the page cache check.
   8765 
   8766 2007-09-05  David Harrison  <harrison (a] apple.com>
   8767 
   8768         Reviewed by Darin.
   8769 
   8770         Follow up on my fix for <rdar://problem/5306171>.
   8771         My first patch (r25373) broke svg/custom/stroke-width-click.svg.
   8772 
   8773         * editing/TextIterator.cpp:
   8774         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
   8775         Add currPos.isNotNull() check because positions in non-html content (like svg)
   8776         do not have visible positions, and we don't want to emit for them either.
   8777 
   8778 2007-09-06  Mitz Pettel  <mitz (a] webkit.org>
   8779 
   8780         Reviewed by Adam Roben.
   8781 
   8782         - fix http://bugs.webkit.org/show_bug.cgi?id=14685
   8783           <rdar://problem/5349755> text-align affects <select> button but not its drop-down menu
   8784 
   8785         * platform/PlatformString.h:
   8786         (WebCore::String::defaultWritingDirection):
   8787         * platform/StringImpl.cpp:
   8788         (WebCore::StringImpl::defaultWritingDirection): Moved textDirectionForParagraph()
   8789         from RenderMenuList.cpp here.
   8790         * platform/StringImpl.h:
   8791         * platform/win/PopupMenuWin.cpp:
   8792         (WebCore::PopupMenu::itemWritingDirectionIsNatural): Changed to return 'true'.
   8793         (WebCore::PopupMenu::paint): Changed to use natural directionality for menu
   8794         items.
   8795         * rendering/RenderMenuList.cpp:
   8796         (WebCore::RenderMenuList::adjustInnerStyle): Use defaultWritingDirection.
   8797 
   8798 2007-09-06  Maciej Stachowiak  <mjs (a] apple.com>
   8799 
   8800         Reviewed by Oliver Hunt.
   8801 
   8802         - fixed <rdar://problem/5455457> REGRESSION (9A527-9A535): Colloquy crash on launch in WebCoreScriptDebugger initWithDelegate (with announce.js plug-in installed)
   8803 
   8804         * page/mac/FrameMac.mm:
   8805         (WebCore::Frame::windowScriptObject): Ensure that -[WebView
   8806         windowScriptObject] and -[WebFrame windowObject] return null until
   8807         the windowScriptObjectAvailable: delegate method is sent.
   8808 
   8809 2007-09-05  David Harrison  <harrison (a] apple.com>
   8810 
   8811         Reviewed by Kevin Decker.
   8812 
   8813         <rdar://problem/5306171> Mail: The first return after an attachment in multipart/mixed message is lost
   8814 
   8815         Test added: editing/selection/toString-1.html
   8816         
   8817         Source changes:
   8818         * editing/TextIterator.cpp:
   8819         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
   8820         - Remove outdated and erroneous check for m_lastTextNode.
   8821         - Fix VisiblePosition check to look for line diff. Simple position diff gives the
   8822         wrong answer when the start is table/0 and the current is the first position
   8823         inside the content of the table.
   8824 
   8825 2007-09-04  Brett Wilson  <brettw (a] chromium.org>
   8826 
   8827         Reviewed by Maciej Stachowiak.
   8828 
   8829         http://bugs.webkit.org/show_bug.cgi?id=15072
   8830         Bug 15072: Fix ImageDecoder.cpp to not copy incoming data
   8831 
   8832         Change ImageDecoder::setData to take a SharedBuffer*.
   8833 
   8834         * platform/graphics/cairo/ImageSourceCairo.cpp:
   8835         (WebCore::ImageSource::setData):
   8836         * platform/image-decoders/ImageDecoder.h:
   8837         (WebCore::RGBA32Buffer::bytes):
   8838         (WebCore::RGBA32Buffer::height):
   8839         (WebCore::ImageDecoder::setData):
   8840         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   8841         (WebCore::GIFImageDecoder::setData):
   8842         (WebCore::GIFImageDecoder::frameCount):
   8843         (WebCore::GIFImageDecoder::decode):
   8844         (WebCore::GIFImageDecoder::decodingHalted):
   8845         (WebCore::GIFImageDecoder::initFrameBuffer):
   8846         * platform/image-decoders/gif/GIFImageDecoder.h:
   8847         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   8848         (WebCore::JPEGImageDecoder::setData):
   8849         (WebCore::JPEGImageDecoder::decode):
   8850         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
   8851         * platform/image-decoders/png/PNGImageDecoder.cpp:
   8852         (WebCore::PNGImageDecoder::setData):
   8853         (WebCore::PNGImageDecoder::decode):
   8854         (WebCore::PNGImageDecoder::headerAvailable):
   8855         (WebCore::PNGImageDecoder::rowAvailable):
   8856         * platform/image-decoders/png/PNGImageDecoder.h:
   8857 
   8858 2007-09-04  David Hyatt  <hyatt (a] apple.com>
   8859 
   8860         Fix for <rdar://problem/5271213>, resizing iChat window is slower than in
   8861         Tiger. This patch implements a fast scaling mode that can be used by
   8862         WebViews, e.g., during window resizing.
   8863 
   8864         Reviewed by John Sullivan
   8865 
   8866         * WebCore.exp:
   8867         * WebCore.xcodeproj/project.pbxproj:
   8868         * page/Frame.cpp:
   8869         (WebCore::FramePrivate::FramePrivate):
   8870         * page/Page.cpp:
   8871         (WebCore::Page::Page):
   8872         (WebCore::Page::inLowQualityImageInterpolationMode):
   8873         (WebCore::Page::setInLowQualityImageInterpolationMode):
   8874         * page/Page.h:
   8875         * platform/graphics/GraphicsContext.cpp:
   8876         (WebCore::GraphicsContext::drawImage):
   8877         * platform/graphics/GraphicsContext.h:
   8878         (WebCore::GraphicsContext::setUseLowQualityImageInterpolation):
   8879         (WebCore::GraphicsContext::useLowQualityImageInterpolation):
   8880         * platform/graphics/cg/GraphicsContextCG.cpp:
   8881         (WebCore::GraphicsContext::setUseLowQualityImageInterpolation):
   8882         (WebCore::GraphicsContext::useLowQualityImageInterpolation):
   8883         * rendering/RenderImage.cpp:
   8884         (WebCore::RenderImage::paint):
   8885 
   8886 2007-09-04  Brady Eidson  <beidson (a] apple.com>
   8887 
   8888         Reviewed by Adam
   8889 
   8890         Some SQLite tweaks for debugging
   8891         -In debug builds, track the thread that opened the database and enforce that any statements
   8892          that operate on the SQLDatabase do so from the thread that opened it
   8893         -Track whether or not a transaction is in progress for the SQLDatabase to find cases where
   8894          someone opens a new transaction while there is still one outstanding (a SQLite logic error)
   8895 
   8896         * loader/icon/SQLDatabase.cpp:
   8897         (WebCore::SQLDatabase::SQLDatabase): 
   8898         (WebCore::SQLDatabase::open): Track the opening thread.  Also, return false if the DB failed to
   8899           open instead of trying to run a PRAGMA on it!
   8900         (WebCore::SQLDatabase::close): Reset the opening thread
   8901         * loader/icon/SQLDatabase.h:
   8902         (WebCore::SQLDatabase::transactionInProgress): 
   8903         (WebCore::SQLDatabase::sqlite3Handle): For access to the raw sqlite3* handle to do a thread
   8904           safety check
   8905 
   8906         * loader/icon/SQLStatement.cpp:
   8907         (WebCore::SQLStatement::prepare): Use the new sqlite3Handle accessor
   8908         (WebCore::SQLStatement::step): Ditto
   8909 
   8910         * loader/icon/SQLTransaction.cpp:
   8911         (WebCore::SQLTransaction::SQLTransaction): Removed the c'tor form that could automatically
   8912           begin the transaction - never used and shouldn't be in practice!
   8913         (WebCore::SQLTransaction::begin): Maintain the transaction-in-progress flag on the DB
   8914         (WebCore::SQLTransaction::commit): Ditto
   8915         (WebCore::SQLTransaction::rollback): Ditto
   8916         * loader/icon/SQLTransaction.h:
   8917 
   8918 2007-09-04  David Harrison  <harrison (a] apple.com>
   8919 
   8920         Reviewed by Maciej and John.
   8921 
   8922         <rdar://problem/5452675> CrashTracer: [USER] 10 crashes in Mail at com.apple.WebCore: WebCore::Node::nodeIndex const + 6
   8923 
   8924         * editing/InsertParagraphSeparatorCommand.cpp:
   8925         (WebCore::InsertParagraphSeparatorCommand::doApply):
   8926         Adjust pos to pos.downstream() after the refNode is calculated, but before the insertion. Doing it earlier
   8927         undid the logic of positionAvoidingSpecialElementBoundary(). The downstream is still needed just to set the
   8928         ending selection.
   8929 
   8930 2007-09-04  Antti Koivisto  <antti (a] apple.com>
   8931 
   8932         Reviewed by Maciej.
   8933         
   8934         Fix <rdar://problem/5452112>
   8935         REGRESSION: Initially focused textfield on www.mac.com login page has no insertion point, and doesn't accept typed characters
   8936         
   8937         Use updateLayoutIgnorePendingStylesheets() instead of updateLayout(). We need to have rendering to set input focus.
   8938 
   8939         Test: fast/forms/focus-style-pending.html
   8940 
   8941         * dom/Element.cpp:
   8942         (WebCore::Element::focus):
   8943 
   8944 2007-09-04  Girish Ramakrishnan  <girish (a] trolltech.com>
   8945 
   8946         Reviewed by Simon.
   8947 
   8948         Fixed Qt build on Windows
   8949 
   8950         * html/HTMLFormElement.cpp:
   8951         (WebCore::pathGetFilename):
   8952 
   8953 2007-09-03  David Harrison  <harrison (a] apple.com>
   8954 
   8955         Reviewed by Kevin Decker.
   8956 
   8957         <rdar://problem/5456785> REGRESSION (r15963-r15970): Heading text not placed in VoiceOver Item Chooser (15132)
   8958 
   8959         * bridge/mac/WebCoreAXObject.mm:
   8960         (-[WebCoreAXObject title]):
   8961         For headings, return the text under the element instead of nil.
   8962 
   8963 2007-08-20  Oleg Sukhodolsky <son.two (a] gmail.com>
   8964 
   8965         Reviewed by Mark.
   8966 
   8967         WebKitQt/WebCoreSupport should not be added to INCLUDEPATH for gdk-port
   8968 
   8969         * WebCore.pro:
   8970 
   8971 2007-09-03  Mark Rowe  <mrowe (a] apple.com>
   8972 
   8973         Reviewed by Tim Hatcher.
   8974 
   8975         <rdar://problem/5452164> Production build with in symbols directory has no debug info
   8976 
   8977         Enable debug symbol generation on all build configurations.  Production builds are stripped
   8978         of symbols by Xcode during deployment post-processing.
   8979 
   8980         * Configurations/Base.xcconfig:
   8981         * WebCore.xcodeproj/project.pbxproj:
   8982 
   8983 2007-09-02  Brady Eidson  <beidson (a] apple.com>
   8984 
   8985         Reviewed by John Sullivan and Mark Rowe
   8986 
   8987         Groundwork for support for monitoring IconDatabase in-memory statistics
   8988 
   8989         * WebCore.exp:
   8990         * loader/icon/IconDatabase.cpp:
   8991         (WebCore::IconDatabase::pageURLMappingCount): Stub for now
   8992         (WebCore::IconDatabase::retainedPageURLCount): Ditto
   8993         (WebCore::IconDatabase::iconRecordCount): Ditto
   8994         (WebCore::IconDatabase::iconRecordCountWithData): Ditto
   8995         * loader/icon/IconDatabase.h:
   8996 
   8997 2007-09-02  Mark Rowe  <mrowe (a] apple.com>
   8998 
   8999         Reviewed by Antti.
   9000 
   9001         <rdar://problem/5454704> WebKit seems to get too-narrow widths for "Monotype Corsiva", so lays out incorrectly
   9002 
   9003         * platform/mac/FontDataMac.mm:
   9004         (WebCore::FontData::determinePitch): Work around NSFont incorrectly reporting Monotype Corsiva as fixed pitch.
   9005 
   9006 2007-09-01  Darin Adler  <darin (a] apple.com>
   9007 
   9008         - rolled out fix for bug 12988 because it broke getElementById in a layout test
   9009           I'm working on a new fix.
   9010 
   9011         * dom/Document.cpp: Rolled out.
   9012 
   9013 2007-09-01  Oliver Hunt  <oliver (a] apple.com>
   9014 
   9015         Reviewed by Sam.
   9016 
   9017         <rdar://problem/5344848> IME is incorrectly used for key events when on non-editable regions
   9018 
   9019         Adding a new EditorClient method so it is possible to inform WebKit of focus changes.
   9020         Also added new virtual method Node::shouldUseInputMethod to allow us to trivially check
   9021         whether an input method should be used when processing input for the currently focused
   9022         Node.
   9023 
   9024         * bridge/EditorClient.h:
   9025         * dom/Node.cpp:
   9026         (WebCore::Node::shouldUseInputMethod):
   9027         * dom/Node.h:
   9028         * html/HTMLInputElement.cpp:
   9029         (WebCore::HTMLInputElement::shouldUseInputMethod):
   9030         * html/HTMLInputElement.h:
   9031         * html/HTMLTextAreaElement.cpp:
   9032         (WebCore::HTMLTextAreaElement::shouldUseInputMethod):
   9033         * html/HTMLTextAreaElement.h:
   9034         * page/FocusController.cpp:
   9035         (WebCore::FocusController::setFocusedNode):
   9036         * platform/graphics/svg/SVGImageEmptyClients.h:
   9037         (WebCore::SVGEmptyEditorClient::setInputMethodState):
   9038 
   9039 2007-09-01  Rob Buis  <buis (a] kde.org>
   9040 
   9041         Reviewed by Darin.
   9042 
   9043         http://bugs.webkit.org/show_bug.cgi?id=12988
   9044         First element (in document order) is not returned when other duplicate ID-ed elements were created first
   9045 
   9046         Reset the element id cache when id's are added or removed and there
   9047         are duplicates for that id.
   9048 
   9049         Tests: fast/dom/duplicate-ids-document-order.html
   9050 
   9051         * dom/Document.cpp:
   9052         (WebCore::Document::getElementById):
   9053         (WebCore::Document::addElementById):
   9054         (WebCore::Document::removeElementById):
   9055 
   9056 2007-09-01  Rob Buis  <buis (a] kde.org>
   9057 
   9058         Reviewed by Darin.
   9059 
   9060         http://bugs.webkit.org/show_bug.cgi?id=15083
   9061         Some symbols in WebKit do not need to be exported
   9062 
   9063         Do not export these symbols.
   9064 
   9065         * dom/QualifiedName.cpp:
   9066         (WebCore::hashComponents):
   9067         * dom/XMLTokenizer.cpp:
   9068         (WebCore::toString):
   9069         (WebCore::getTokenizer):
   9070         * history/HistoryItem.cpp:
   9071         (WebCore::defaultNotifyHistoryItemChanged):
   9072         * platform/Arena.cpp:
   9073         (WebCore::CeilingLog2):
   9074         * platform/graphics/Color.cpp:
   9075         (WebCore::calcHue):
   9076         * platform/graphics/Path.cpp:
   9077         (WebCore::pathLengthApplierFunction):
   9078         * platform/graphics/cg/PathCG.cpp:
   9079         (WebCore::CGPathToCFStringApplierFunction):
   9080         (WebCore::CFStringFromCGPath):
   9081         * rendering/RenderText.cpp:
   9082         (WebCore::isSpaceAccordingToStyle):
   9083 
   9084 2007-08-31  Alice Liu  <alice.liu (a] apple.com>
   9085 
   9086         Reviewed by Tim Hatcher.
   9087 
   9088         Fixed <rdar://problem/5420682> Mail crashes at WebCore::InsertLineBreakCommand::doApply() after dropping a selected image over container's close box
   9089 
   9090         * editing/DeleteButtonController.cpp:
   9091         (WebCore::DeleteButtonController::show):
   9092         Factored out the code in ::show() that created and styled the elements of the Deletion UI
   9093 
   9094         (WebCore::DeleteButtonController::createDeletionUI):
   9095         Neglecting to move the append of the deletionUI elements into the same clause that handles the creation
   9096         of them ended up creating multiple elements at were repeatedly appended to the target, resulting in a 
   9097         bloated table deletion UI which was slow to show and hide. 
   9098 
   9099         * editing/DeleteButtonController.h:
   9100         (WebCore::DeleteButtonController::enabled):
   9101         Restore this function to how it used to be pre-r25305, sans asserts
   9102 
   9103         * editing/EditCommand.cpp:
   9104         Add disable/enable sandwich when undoing/redoing commands too
   9105         (WebCore::EditCommand::unapply):
   9106         (WebCore::EditCommand::reapply):
   9107 
   9108 2007-08-31  Antti Koivisto  <antti (a] apple.com>
   9109 
   9110         Reviewed by Anders.
   9111 
   9112         Fix <rdar://problem/5452943>
   9113         REGRESSION (r25283): Reproducible crash in HTMLObjectElement::getInstance under guard malloc
   9114         
   9115         Calling updateLayoutIgnorePendingStylesheets() may do arbitrary things to render tree so
   9116         no RenderObjects can be cached over it.
   9117 
   9118         * html/HTMLEmbedElement.cpp:
   9119         (WebCore::findWidgetRenderer):
   9120         (WebCore::HTMLEmbedElement::getInstance):
   9121         * html/HTMLObjectElement.cpp:
   9122         (WebCore::HTMLObjectElement::getInstance):
   9123 
   9124 2007-08-31  Anders Carlsson  <andersca (a] apple.com>
   9125 
   9126         Reviewed by Mitz.
   9127 
   9128         <rdar://problem/5443936>
   9129         Crash after QT movie completes playback at apple.com/imac
   9130         
   9131         If the plug-in or one of its children have focus, set it to NULL to prevent the web view window from getting the focus, 
   9132         which can cause a layout to happen while in HTMLObjectElement::detach. (This is what we do on the Mac).
   9133         
   9134         * plugins/win/PluginViewWin.cpp:
   9135         (WebCore::PluginViewWin::setParent):
   9136 
   9137 2007-08-30  Adele Peterson  <adele (a] apple.com>
   9138 
   9139         Reviewed by Justin.
   9140 
   9141         Fix for <rdar://problem/5450600> REGRESSION: can't paste in textfield if its in a body that has user-select:none set (affects widgets)
   9142 
   9143         Test: editing/pasteboard/paste-plaintext-user-select-none.html
   9144 
   9145         * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::insertFragmentForTestRendering):
   9146           Copy the user-select style from the current selection node and apply it so it is considered during the test rendering.
   9147           This is important since we recently changed user-select to be inherited.  When we consider valid VisiblePositions for the test rendering,
   9148           we need to have the correct user-select value that will actually be used for the real insertion.
   9149 
   9150 2007-08-31  Anders Carlsson  <andersca (a] apple.com>
   9151 
   9152         Reviewed by Oliver.
   9153 
   9154         <rdar://problem/5423939>
   9155         http://bugs.webkit.org/show_bug.cgi?id=15013
   9156         ASSERTION FAILED !m_inDestructor in WebCore::Shared<WebCore::PluginStreamWin>::ref() on Windows
   9157         
   9158         Protect the stream in case it's destroyed by the plug-in.
   9159         
   9160         * plugins/win/PluginStreamWin.cpp:
   9161         (WebCore::PluginStreamWin::didReceiveData):
   9162 
   9163 a2007-08-31  Darin Adler  <darin (a] apple.com>
   9164 
   9165         Reviewed by Anders.
   9166 
   9167         - http://bugs.webkit.org/show_bug.cgi?id=15122
   9168 
   9169         * editing/htmlediting.cpp: (WebCore::avoidIntersectionWithNode):
   9170         Change assertion so that it only fires when actually modifying the selection.
   9171         This isn't nearly as helpful, because the old assertion could catch potential
   9172         problems in more cases, but it's not obvious how to do better.
   9173 
   9174 2007-08-30  Oliver Hunt  <oliver (a] apple.com>
   9175 
   9176         Reviewed by Adam.
   9177         
   9178         <rdar://problem/5430772> REGRESSION(303-310A5) list items do not show with mouse over on istweb.apple.com/quack.apple.com
   9179         
   9180         VC++ treats bitfields as signed members, so Node::m_styleChange would be
   9181         sign extended if it was assigned the value FullStyleChange.  This caused
   9182         style recalculation to stop propagating.  
   9183         
   9184         We work around this VC++ oddity by storing the enum as an unsigned, and
   9185         casting back to StyleChangeType in the getter.
   9186                 
   9187         Test: fast/css/hover-affects-child.html
   9188 
   9189         * dom/Node.h:
   9190         (WebCore::Node::styleChangeType):
   9191 
   9192 2007-08-29  Justin Garcia  <justin.garcia (a] apple.com>
   9193 
   9194         Reviewed by Darin.
   9195 
   9196         <rdar://problem/5368833> 
   9197         REGRESSION: Pasting a triple-clicked line of quoted text at the top of a message adds an extra, quoted line
   9198 
   9199         * editing/CompositeEditCommand.cpp:
   9200         (WebCore::CompositeEditCommand::insertParagraphSeparator): Added an option for
   9201         using a plain div to hold the new paragraph, instead of a clone of the previous
   9202         block.
   9203         * editing/CompositeEditCommand.h:
   9204         * editing/InsertParagraphSeparatorCommand.cpp: Ditto.
   9205         (WebCore::InsertParagraphSeparatorCommand::InsertParagraphSeparatorCommand): Ditto.
   9206         (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
   9207         * editing/InsertParagraphSeparatorCommand.h:
   9208         * editing/ReplaceSelectionCommand.cpp:
   9209         (WebCore::ReplaceSelectionCommand::doApply): Use a default block element when creating
   9210         new paragraphs, so that empty paragraphs don't contain the block style of the previous
   9211         one.
   9212         Don't expand collapsed brs at the end of inserted content, this was the root of the bug.
   9213         We'd copy <blockquote>hello<br></blockquote><br class="Apple-interchange-newline">
   9214         and get an extra paragraph.  The removed code used to make sure that if the copied 
   9215         selection ends with a paragraph break that is represented in the copied markup by a 
   9216         regular br (not an interchange newline br), that that paragraph break appears in the 
   9217         pasted content, but shouldMergeEnd, which was introduced after this code was written, 
   9218         now takes care of that.
   9219         (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): Inserted content should always
   9220         displace placeholder brs, even if that inserted content ends with a br.
   9221         * editing/markup.cpp:
   9222         (WebCore::needInterchangeNewlineAfter): This code failed to add an interchange newline
   9223         if the user copied <div>hello</div><br>, only don't add an interchange newline when
   9224         copying ^hello<br>^<br>, because then the copied paragraph break will already be 
   9225         represented in the copied markup by a br.
   9226         (WebCore::createMarkup):
   9227 
   9228 2007-08-30  David Harrison  <harrison (a] apple.com>
   9229 
   9230         Reviewed by Darin.
   9231 
   9232         <rdar://problem/5423900> Seed: safari crashes on submit feedback page in -[WebCoreAXObject isAttachment]
   9233 
   9234         * bridge/mac/WebCoreAXObject.mm:
   9235         (-[WebCoreAXObject isAttachment]):
   9236         Add nil check since element could be detached.
   9237 
   9238 2007-08-30  Mitz Pettel  <mitz (a] webkit.org>
   9239 
   9240         Reviewed by Dave Hyatt.
   9241 
   9242         - fix http://bugs.webkit.org/show_bug.cgi?id=13282
   9243           <rdar://problem/5126392> REGRESSION (NativePopUp): Rightmost character cut off in pop-up menu
   9244 
   9245         * rendering/RenderMenuList.cpp:
   9246         (WebCore::RenderMenuList::updateOptionsWidth): When measuring option text, use
   9247         the same WebCore run rounding behavior that is used to draw it in the popup button.
   9248 
   9249 2007-08-30  Riku Voipio  <riku.voipio (a] iki.fi>
   9250 
   9251         Reviewed by Dave Kilzer.
   9252 
   9253         Better ARM defines.
   9254 
   9255         * platform/DeprecatedString.h: Update comments to reflect the
   9256         change and update test to fit changes to Platform.h.
   9257 
   9258 2007-08-30  Darin Adler  <darin (a] apple.com>
   9259 
   9260         Reviewed by Tim Hatcher.
   9261 
   9262         - fix http://bugs.webkig.org/show_bug.cgi?id=14981
   9263           DEBUG builds of WebKit hang videwing Yahoo! Mail messages
   9264           with ~5 MB text attachment
   9265 
   9266         * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::checkConsistency):
   9267         * rendering/RenderFlow.cpp: (WebCore::RenderFlow::checkConsistency):
   9268         * rendering/RenderText.cpp: (WebCore::RenderText::checkConsistency):
   9269         Put the actual consistency check inside an ifdef. If you need it you can
   9270         turn it on. There's still some function call overhead in builds that don't
   9271         have NDEBUG defined, but that's worth it so we can turn this on and off
   9272         without recompiling the world.
   9273 
   9274         - small code style improvement to recently changed function
   9275 
   9276         * editing/TextIterator.cpp: (WebCore::plainTextToMallocAllocatedBuffer):
   9277         Use a typedef and make_pair to make the code dealing with the pair simpler to read.
   9278 
   9279 2007-08-30  Simon Hausmann  <hausmann (a] kde.org>
   9280 
   9281         Reviewed by Zack.
   9282 
   9283         Fix Qt/Gdk build. gcc on Linux at least doesn't like initializing
   9284         variables between jumps with goto ("jump to label foo crosses
   9285         initialization of bar").
   9286 
   9287         * editing/TextIterator.cpp:
   9288         (WebCore::plainTextToMallocAllocatedBuffer):
   9289 
   9290 2007-08-30  Darin Adler  <darin (a] apple.com>
   9291 
   9292         Reviewed by Antti.
   9293  
   9294         - fix <rdar://problem/5423270> CrashTracer: [USER] 1 crash in Safari at com.apple.WebCore:
   9295           WebCore::plainTextToMallocAllocatedBuffer + 762
   9296 
   9297         * editing/TextIterator.cpp: (WebCore::plainTextToMallocAllocatedBuffer):
   9298         Check for a malloc failure and exit the function if it failed.
   9299 
   9300 2007-08-29  Anders Carlsson  <andersca (a] apple.com>
   9301 
   9302         Reviewed by Oliver.
   9303 
   9304         <rdar://problem/5404329>
   9305         Plugin content starves WM_TIMER events on UI thread (affects idle behavior of app) on http://www.vincent-vella.com/, http://www.sagmeister.com/
   9306         
   9307         Add a tiny delay to invalidation timer to prevent it from starving other timers.
   9308         
   9309         * plugins/win/PluginViewWin.cpp:
   9310         (WebCore::PluginViewWin::invalidateRect):
   9311 
   9312 2007-08-29  Darin Adler  <darin (a] apple.com>
   9313 
   9314         Reviewed by Adele.
   9315 
   9316         * editing/htmlediting.cpp: (WebCore::avoidIntersectionWithNode):
   9317         Fix an assert that was firing for me all the time when doing editing operations.
   9318 
   9319 2007-08-29  Anders Carlsson <andersca (a] apple.com>
   9320 
   9321         Reviewed by Adam.
   9322 
   9323         <rdar://problem/5386098>
   9324         Repro hang with some Flash plugin content (http://dougmccune.com/blog/2007/07/25/coming-to-flexcamp-at-adobe/)
   9325         
   9326         In some cases, Flash ends up starving the main loop by sending a lot of WM_USER + 1 messages. Throttle these
   9327         messages so they won't end up hanging the web browser.
   9328         
   9329         * plugins/win/PluginViewWin.cpp:
   9330         (WebCore::PluginMessageThrottlerWin::PluginMessageThrottlerWin):
   9331         (WebCore::PluginMessageThrottlerWin::~PluginMessageThrottlerWin):
   9332         (WebCore::PluginMessageThrottlerWin::appendMessage):
   9333         (WebCore::PluginMessageThrottlerWin::messageThrottleTimerFired):
   9334         (WebCore::PluginMessageThrottlerWin::allocateMessage):
   9335         (WebCore::PluginMessageThrottlerWin::isInlineMessage):
   9336         (WebCore::PluginMessageThrottlerWin::freeMessage):
   9337         (WebCore::PluginViewWndProc):
   9338         (WebCore::PluginViewWin::wndProc):
   9339         (WebCore::PluginViewWin::determineQuirks):
   9340         * plugins/win/PluginViewWin.h:
   9341         (WebCore::):
   9342         (WebCore::PluginViewWin::pluginWndProc):
   9343 
   9344 2007-08-29  Beth Dakin  <bdakin (a] apple.com>
   9345 
   9346         Reviewed by Hyatt.
   9347 
   9348         Fix for <rdar://problem/5436800> REGRESSION: PLT is 1.5% slower due 
   9349         to r24593 and r25098
   9350 
   9351         In r25098, we only called setCreatedByParser for XML! This patch 
   9352         calls it for HTML too, and takes care of the performance 
   9353         regression.
   9354 
   9355         * html/HTMLElementFactory.cpp:
   9356         (WebCore::styleConstructor):
   9357 
   9358 2007-08-29  Antti Koivisto  <antti (a] apple.com>
   9359 
   9360         Reviewed by Mitz.
   9361         
   9362         Fix <rdar://problem/5425951>
   9363         REGRESSION: change to updateLayoutIgnorePendingStylesheets causes SAP Portal page to render wrong
   9364         
   9365         If new nodes have been added or style recalc has been done with style sheets still pending, some nodes 
   9366         may not have had their real style calculated yet. Normally this state gets cleaned when style sheets arrive 
   9367         but in updateLayoutIgnorePendingStylesheets() we need to do full style recalc to get up-to-date style immediatly.
   9368         
   9369         Added a document flag to track if there are any nodes that did not have their real style calculated due to
   9370         pending stylesheets.
   9371 
   9372         Test: fast/dynamic/style-access-late-stylesheet-load.html
   9373 
   9374         * css/CSSStyleSelector.cpp:
   9375         (WebCore::CSSStyleSelector::styleForElement):
   9376         * dom/Document.cpp:
   9377         (WebCore::Document::Document):
   9378         (WebCore::Document::recalcStyle):
   9379         (WebCore::Document::updateLayoutIgnorePendingStylesheets):
   9380         * dom/Document.h:
   9381         (WebCore::Document::setHasNodesWithPlaceholderStyle):
   9382 
   9383 2007-08-29  Alice Liu  <alice.liu (a] apple.com>
   9384 
   9385         Reviewed by Maciej.
   9386 
   9387         We disable the DeleteButton UI before applying any editing commands.
   9388         This patch simply moves those disable/enable calls to a more correct place, closer to the actual application of the editing command. 
   9389 
   9390         * editing/EditCommand.cpp:
   9391         (WebCore::EditCommand::apply):
   9392         (WebCore::applyCommand):
   9393 
   9394 2007-08-28  Alice Liu  <alice.liu (a] apple.com>
   9395 
   9396         fixed <rdar://problem/5420682> Mail crashes at WebCore::InsertLineBreakCommand::doApply() 
   9397                                        after dropping a selected image over container's close box
   9398 
   9399         Reviewed by Darin and Maciej.
   9400 
   9401         * editing/DeleteButtonController.cpp:
   9402         (WebCore::DeleteButtonController::show):
   9403         (WebCore::DeleteButtonController::hide):
   9404         * editing/DeleteButtonController.h:
   9405         (WebCore::DeleteButtonController::enabled):
   9406         General changes made to DeleteButtonController: when hiding, it's not necessary to clear out 
   9407         the m_containerElement and m_target, especially since to fix this bug we need to keep 
   9408         their values around.  It's sufficient to just detach the container from target.
   9409 
   9410         * editing/EditCommand.cpp:
   9411         (WebCore::EditCommand::EditCommand):
   9412         Move the selection out of the deletion UI since we don't want to expose the deletion UI to any editing.
   9413 
   9414         * editing/Editor.cpp:
   9415         (WebCore::Editor::rangeForPoint):
   9416         Move the range out of the deletion UI since we don't want to expose the deletion UI to any editing.
   9417 
   9418         * editing/htmlediting.cpp:
   9419         * editing/htmlediting.h:
   9420         (WebCore::avoidIntersectionWithNode):
   9421         Moved function that operates on Range from markup.cpp to here
   9422         Added new implementation for function that operates on Selection
   9423 
   9424         * editing/markup.cpp:
   9425         (WebCore::createMarkup):
   9426         Moved function out of this file to htmlediting.cpp, and renamed to avoidIntersectionWithNode
   9427 
   9428 2007-08-29  David Hyatt  <hyatt (a] apple.com>
   9429 
   9430         Fix for 5441281, remove our dependency on cursor rects and drag margins
   9431         in AppKit for a large performance boost on the PLT and iBench.
   9432 
   9433         Reviewed by darin
   9434 
   9435         * platform/mac/WidgetMac.mm:
   9436         (WebCore::safeRemoveFromSuperview):
   9437         (WebCore::Widget::addToSuperview):
   9438         Suppress the resetting of drag margins when views are added and removed.
   9439 
   9440         (WebCore::Widget::setCursor):
   9441         Just use NSCursor's set method to immediately set the cursor.  We no longer
   9442         rely on NSScrollView/NSClipView setDocumentCursor, since that is implemented
   9443         using cursor rects.
   9444 
   9445 2007-08-29  Rick  <rick (a] writhe.org.uk>
   9446 
   9447         Reviewed by Tim Hatcher.
   9448 
   9449         Fix http://bugs.webkit.org/show_bug.cgi?id=14853
   9450         Bug 14853: Incorrect implementation of ArrayImpl's equality operator
   9451 
   9452         * platform/ArrayImpl.cpp:
   9453         (WebCore::ArrayImpl::operator==):
   9454         Fixed typo so that correct variable is used in equality comparison.
   9455 
   9456 2007-08-29  Peter Kasting  <pkasting (a] google.com>
   9457 
   9458         Reviewed by Maciej.
   9459 
   9460         - fix http://bugs.webkit.org/show_bug.cgi?id=15096
   9461         Move the GIF frame duration minimum check into the various
   9462         ImageSource*.cpp backends and use the same values as
   9463         ImageSourceCG.cpp.
   9464 
   9465         * platform/graphics/cairo/ImageSourceCairo.cpp:
   9466         (WebCore::ImageSource::frameDurationAtIndex):
   9467         * platform/graphics/qt/ImageSourceQt.cpp:
   9468         (WebCore::ImageSource::frameDurationAtIndex):
   9469         * platform/image-decoders/gif/GIFImageReader.cpp:
   9470         (GIFImageReader::read):
   9471 
   9472 2007-08-29  Peter Kasting  <pkasting (a] google.com>
   9473 
   9474         Reviewed by Maciej.
   9475 
   9476         - fix http://bugs.webkit.org/show_bug.cgi?id=15097
   9477         Make PNGImageDecoder.cpp size its frame buffer vector in its
   9478         constructor, so it never throws decoded image data away no matter
   9479         what order its functions are called in.
   9480 
   9481         * platform/image-decoders/png/PNGImageDecoder.cpp:
   9482         (WebCore::PNGImageDecoder::PNGImageDecoder):
   9483         (WebCore::PNGImageDecoder::frameBufferAtIndex):
   9484         (WebCore::PNGImageDecoder::decode):
   9485         (WebCore::PNGImageDecoder::rowAvailable):
   9486         (WebCore::PNGImageDecoder::pngComplete):
   9487 
   9488 2007-08-29  Peter Kasting  <pkasting (a] google.com>
   9489 
   9490         Reviewed by Maciej.
   9491 
   9492         - fix http://bugs.webkit.org/show_bug.cgi?id=15104
   9493         Don't double-compensate for sizeof(unsigned) when making a buffer
   9494         overflow check in the GIF decoder.  Now interlaced GIFs don't
   9495         sometimes get nothing/garbage in some of the bottom rows.
   9496 
   9497         * platform/image-decoders/gif/GIFImageDecoder.cpp:
   9498         (WebCore::GIFImageDecoder::haveDecodedRow):
   9499 
   9500 2007-08-28  Sam Weinig  <sam (a] webkit.org>
   9501 
   9502         Reviewed by Darin.
   9503 
   9504         Update fix landed in r25249 to account for XMLHttpRequest, which can also be EventTargets.
   9505 
   9506         Tests: http/tests/security/listener/xss-XMLHttpRequest-addEventListener.html
   9507                http/tests/security/listener/xss-XMLHttpRequest-shortcut.html
   9508 
   9509         * bindings/js/JSXMLHttpRequest.cpp:
   9510         (KJS::JSXMLHttpRequest::putValueProperty): Use the Window object associated with document's frame, not the active Window.
   9511         (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction): ditto
   9512         * xml/XMLHttpRequest.h:
   9513         (WebCore::XMLHttpRequest::document): Expose Document member so bindings can access the correct frame.
   9514 
   9515 2007-08-28  Anders Carlsson  <andersca (a] apple.com>
   9516 
   9517         Reviewed by Darin.
   9518 
   9519         <rdar://problem/5424866> Bottom portion of any Web Clip widget appears transparent
   9520 
   9521         Restore the previous behavior, creating plug-ins on attach, for WebKit plug-ins. Netscape plug-ins
   9522         are still created during the first layout.
   9523         
   9524         * html/HTMLEmbedElement.cpp:
   9525         (WebCore::HTMLEmbedElement::getInstance):
   9526         Only call layout if the renderer doesn't have a widget.
   9527         
   9528         * html/HTMLObjectElement.cpp:
   9529         (WebCore::HTMLObjectElement::getInstance):
   9530         Likewise.
   9531         
   9532         * loader/FrameLoader.cpp:
   9533         (WebCore::FrameLoader::shouldUsePlugin):
   9534         Update for enum change.
   9535         
   9536         * loader/FrameLoaderTypes.h:
   9537         Add ObjectContentNetscapePlugin and ObjectContentOtherPlugin.
   9538         
   9539         * page/mac/WebCoreFrameBridge.h:
   9540         Get rid of the enum here, we can use the one in FrameLoaderTypes.h
   9541         
   9542         * rendering/RenderPartObject.cpp:
   9543         (WebCore::RenderPartObject::updateWidget):
   9544         Only create the plug-in if it's not a Netscape plug-in.
   9545         
   9546         (WebCore::RenderPartObject::layout):
   9547         Fix indentation.
   9548         
   9549 2007-08-28  David Harrison  <harrison (a] apple.com>
   9550 
   9551         Reviewed by Darin.
   9552 
   9553         <rdar://problem/5415006> Command Left in a To Do causes caret to disappear
   9554 
   9555         The selection was ending up inside non-editable content at the To Do Options
   9556         arrow image, rather then at the editable position just to the left of that image.
   9557         The problem was that startPositionForLine looked only at line boxes, and there
   9558         is no linebox for the editable position at the far left of a To Do, which is
   9559         a table. Addressed by having startPositionForLine use table offset 0 instead
   9560         of the first VisiblePosition inside the table.
   9561         
   9562         Found and fixed the similar case with option-left (move by word position).
   9563         
   9564         Test cases:
   9565         * editing/selection/mixed-editability-8.html: Added.
   9566         * editing/selection/mixed-editability-9.html: Added.
   9567 
   9568         Source changes:
   9569         * editing/SelectionController.cpp:
   9570         (WebCore::SelectionController::modifyMovingLeftBackward):
   9571         
   9572         * editing/VisiblePosition.cpp:
   9573         (WebCore::VisiblePosition::next):
   9574         (WebCore::VisiblePosition::previous):
   9575         (WebCore::VisiblePosition::stayInEditableContentLeft):
   9576         (WebCore::VisiblePosition::stayInEditableContentRight):
   9577         Factored stayInEditableContentLeft() and stayInEditableContentRight()
   9578         out of previous() and next().
   9579         
   9580         * editing/VisiblePosition.h:
   9581         Declare stayInEditableContentLeft() and stayInEditableContentRight().
   9582 
   9583         * editing/visible_units.cpp:
   9584         (WebCore::previousWordPosition):
   9585         (WebCore::nextWordPosition):
   9586         (WebCore::startOfLine):
   9587         (WebCore::endOfLine):
   9588         (WebCore::previousSentencePosition):
   9589         (WebCore::nextSentencePosition):
   9590         Call stayInEditableContentLeft() or stayInEditableContentRight(), as 
   9591         appropriate, so prevent crossing from editable content into
   9592         uneditable content.
   9593         
   9594         (WebCore::startPositionForLine):
   9595         Use table offset 0 instead of the first VisiblePosition in the table.
   9596         
   9597 2007-08-28  Mark Rowe  <mrowe (a] apple.com>
   9598 
   9599         Reviewed by Darin Adler.
   9600 
   9601         <rdar://problem/5443453> Decreasing history expiration time from 1 year to 1 week can lead to long hang while icon database syncs
   9602 
   9603         Perform the sync inside a SQLite transaction.  This drops the time taken for the sync from over 90s to under half a second in the
   9604         extreme case of over 90,000 URLs being pruned.
   9605 
   9606         * loader/icon/IconDatabase.cpp:
   9607         (WebCore::IconDatabase::syncDatabase):
   9608 
   9609 2007-08-28  Mark Rowe  <mrowe (a] apple.com>
   9610 
   9611         Reviewed by Darin Adler.
   9612 
   9613         <rdar://problem/5437983> Loading history containing 100,000 entries adds 20s to Safari's startup
   9614 
   9615         Add a new constructor for HistoryItem that initializes the alternate title.  This prevents WebHistoryItem
   9616         in WebKit from having explicitly set the display title, which triggers a history item changed notification
   9617         to be posted, for each history item loaded.
   9618 
   9619         * WebCore.exp:
   9620         * history/HistoryItem.cpp:
   9621         (WebCore::HistoryItem::HistoryItem):
   9622         * history/HistoryItem.h:
   9623 
   9624 2007-08-28  Anders Carlsson  <andersca (a] apple.com>
   9625 
   9626         Reviewed by Darin.
   9627 
   9628         <rdar://problem/5298296> XMLHttpRequest readyState 3 & responseText buffer issues
   9629         
   9630         Add a shouldContentSniff flag to ResourceLoader and ResourceHandle and have XMLHttpRequest 
   9631         pass in false when creating its subresource loader.
   9632         
   9633         * WebCore.exp:
   9634         * loader/MainResourceLoader.cpp:
   9635         (WebCore::MainResourceLoader::MainResourceLoader):
   9636         (WebCore::MainResourceLoader::loadNow):
   9637         * loader/ResourceLoader.cpp:
   9638         (WebCore::ResourceLoader::ResourceLoader):
   9639         (WebCore::ResourceLoader::load):
   9640         * loader/ResourceLoader.h:
   9641         * loader/SubresourceLoader.cpp:
   9642         (WebCore::SubresourceLoader::SubresourceLoader):
   9643         (WebCore::SubresourceLoader::create):
   9644         * loader/SubresourceLoader.h:
   9645         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
   9646         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
   9647         * platform/mac/WebCoreSystemInterface.h:
   9648         * platform/mac/WebCoreSystemInterface.mm:
   9649         * platform/network/ResourceHandle.cpp:
   9650         (WebCore::ResourceHandle::ResourceHandle):
   9651         (WebCore::ResourceHandle::create):
   9652         * platform/network/ResourceHandle.h:
   9653         * platform/network/ResourceHandleInternal.h:
   9654         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   9655         * platform/network/mac/ResourceHandleMac.mm:
   9656         (WebCore::ResourceHandle::start):
   9657         * xml/XMLHttpRequest.cpp:
   9658         (WebCore::XMLHttpRequest::send):
   9659 
   9660 2007-08-27  Steve Falkenburg  <sfalken (a] apple.com>
   9661 
   9662         Added getter for committedFirstRealDocumentLoad.
   9663         
   9664         Reviewed by Maciej.
   9665 
   9666         * loader/FrameLoader.h: Added committedFirstRealDocumentLoad.
   9667         (WebCore::FrameLoader::committedFirstRealDocumentLoad): Added.
   9668 
   9669 2007-08-27  Antti Koivisto  <antti (a] apple.com>
   9670 
   9671         Reviewed by Maciej.
   9672         
   9673         Fix <rdar://problem/5433144>
   9674         REGRESSION: Unable to click "Select" link at Expedia for car rentals
   9675         
   9676         javascript: URLs need special handling when serializing. Escaping them like
   9677         normal attribute values can do bad things. Try hard to not escape anything,
   9678         escape quote characters only if really necessary. Try to match Firefox.
   9679 
   9680         Test: fast/innerHTML/javascript-url.html
   9681 
   9682         * editing/markup.cpp:
   9683         (WebCore::urlAttributeToQuotedString):
   9684         (WebCore::startMarkup):
   9685 
   9686 2007-08-27  David Hyatt  <hyatt (a] apple.com>
   9687 
   9688         Fix for 5441224, micro-optimizations to improve the PLT by 1%.
   9689 
   9690         Reviewed by Darin
   9691 
   9692         * css/CSSStyleSelector.cpp:
   9693         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   9694         * platform/mac/FontMac.mm:
   9695         (WebCore::Font::drawGlyphs):
   9696         * rendering/RenderInline.cpp:
   9697         (WebCore::RenderInline::requiresLayer):
   9698         * rendering/RenderObject.cpp:
   9699         (WebCore::RenderObject::isBody):
   9700         * rendering/RenderObject.h:
   9701         (WebCore::RenderObject::renderArena):
   9702         (WebCore::RenderObject::isRoot):
   9703 
   9704 2007-08-27  Mitz Pettel  <mitz (a] webkit.org>
   9705 
   9706         Reviewed by Darin.
   9707 
   9708         - fix http://bugs.webkit.org/show_bug.cgi?id=15091
   9709           Crash in RenderBlock::skipWhitespace during layout <rdar://problem/5439631> 
   9710 
   9711         Test: fast/replaced/applet-disabled-positioned.html
   9712 
   9713         * html/HTMLAppletElement.cpp:
   9714         (WebCore::HTMLAppletElement::createRenderer): Changed to call
   9715         RenderObject::createObject(), which accounts for style.
   9716 
   9717 2007-08-26  Antti Koivisto  <antti (a] apple.com>
   9718 
   9719         Reviewed by Darin.
   9720         
   9721         Fix for <rdar://problem/5433726>
   9722         Mail crash at WebCore::Frame::styleForSelectionStart() when deleting a selection in a HTML message (http://www.yahoo.com/)
   9723 
   9724         Test: editing/style/temporary-span-crash.html
   9725 
   9726         * page/Frame.cpp:
   9727         (WebCore::Frame::styleForSelectionStart):
   9728         Temporary span created here might not have renderer if document has style sheet that makes it display:none.
   9729         Set display:inline explicitly in spans style attribute. This temporary span does not need to get its display 
   9730         value from actual document style sheets. Null check the renderer too to be sure.
   9731 
   9732 
   9733 2007-08-24  Sam Weinig  <sam (a] webkit.org>
   9734 
   9735         Reviewed by Adele.
   9736 
   9737         Fix for <rdar://problem/5426142>
   9738 
   9739         Use the EventTarget's frame when creating the EventListener.
   9740 
   9741         Tests: http/tests/security/listener/xss-JSTargetNode-onclick-addEventListener.html
   9742                http/tests/security/listener/xss-JSTargetNode-onclick-shortcut.html
   9743                http/tests/security/listener/xss-window-onclick-addEventListener.html
   9744                http/tests/security/listener/xss-window-onclick-shortcut.html
   9745 
   9746         * bindings/js/JSEventTargetNode.cpp:
   9747         (WebCore::JSEventTargetNode::setListener):
   9748         (WebCore::JSEventTargetNodePrototypeFunction::callAsFunction):
   9749         * bindings/js/kjs_window.cpp:
   9750         (KJS::WindowFunc::callAsFunction):
   9751 
   9752 2007-08-25  Mitz Pettel  <mitz (a] webkit.org>
   9753 
   9754         Reviewed by Sam Weinig.
   9755 
   9756         - fix http://bugs.webkit.org/show_bug.cgi?id=15077
   9757           REGRESSION: Cannot drag selected text out of a background window
   9758 
   9759         * manual-tests/drag-out-of-background-window.html: Added.
   9760         * page/EventHandler.cpp:
   9761         (WebCore::EventHandler::eventMayStartDrag): Added missing coordinate
   9762         conversion.
   9763 
   9764 2007-08-25  Rob Buis  <buis (a] kde.org>
   9765 
   9766         Reviewed by Darin.
   9767 
   9768         http://bugs.webkit.org/show_bug.cgi?id=14848
   9769         DOM table rules are not updated when changed
   9770 
   9771         On a dynamic rules attr change, mark the table cells and
   9772         their ancestors (up to and including the table tag) as
   9773         changed.
   9774 
   9775         Tests: fast/table/rules-attr-dynchange1.html
   9776                fast/table/rules-attr-dynchange2.html
   9777 
   9778         * html/HTMLTableElement.cpp:
   9779         (WebCore::isTableCellAncestor):
   9780         (WebCore::setTableCellsChanged):
   9781         (WebCore::HTMLTableElement::parseMappedAttribute):
   9782 
   9783 2007-08-25  Adele Peterson  <adele (a] apple.com>
   9784 
   9785         Reviewed by Mitz.
   9786 
   9787         Fix for http://bugs.webkit.org/show_bug.cgi?id=15073
   9788         <rdar://problem/5426557> REGRESSION: Can no longer drag text from textareas
   9789         
   9790         Test: fast/forms/drag-out-of-textarea.html
   9791 
   9792         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControlInnerBlock::nodeAtPoint):
   9793           Only restricts hit testing if the placeholder text is visible.
   9794         * rendering/RenderTextControl.h: (WebCore::RenderTextControl::placeholderIsVisible): Added. 
   9795 
   9796 2007-08-25  Peter Kasting  <pkasting (a] google.com>
   9797 
   9798         Reviewed by Sam Weinig.
   9799 
   9800         Part 2 of http://bugs.webkit.org/show_bug.cgi?id=14967.
   9801         Eliminate all remaining implicit conversions of wtf::Vector<T> to T*.  Where code was
   9802         previously checking that the Vector's data pointer was non-NULL, check !Vector::isEmpty()
   9803         instead.
   9804 
   9805         * bindings/js/kjs_navigator.cpp:
   9806         (KJS::PluginBase::cachePluginDataIfNecessary):
   9807         * loader/mac/LoaderNSURLExtras.m:
   9808         (suggestedFilenameWithMIMEType):
   9809         * page/FrameView.cpp:
   9810         (WebCore::FrameView::~FrameView):
   9811         (WebCore::FrameView::pauseScheduledEvents):
   9812         (WebCore::FrameView::resumeScheduledEvents):
   9813         (WebCore::FrameView::dispatchScheduledEvents):
   9814         * platform/mac/PlugInInfoStoreMac.mm:
   9815         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
   9816 
   9817 2007-08-25  Mitz Pettel  <mitz (a] webkit.org>
   9818 
   9819         Rubber-stamped by Adam Roben
   9820 
   9821         - remove unused file
   9822 
   9823         * platform/win/MouseEventWin.cpp: Removed.
   9824 
   9825 2007-08-25  Jasper Bryant-Greene  <m (a] ni.ac.nz>
   9826 
   9827         Reviewed by Oliver Hunt.
   9828 
   9829         Set paintingDisabled to true in Cairo's GraphicsContext constructor
   9830         when passed a null PlatformGraphicsContext.
   9831 
   9832         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   9833         (WebCore::GraphicsContext::GraphicsContext):
   9834 
   9835 2007-08-25  Mitz Pettel  <mitz (a] webkit.org>
   9836 
   9837         Reviewed by Dave Hyatt.
   9838 
   9839         - fix http://bugs.webkit.org/show_bug.cgi?id=15056
   9840           REGRESSION (r21472): Digg Podcasts Episodes Render "Digg" counter incorrectly
   9841 
   9842         Covered by fast/parser/residual-style-close-across-n-blocks.html
   9843 
   9844         * html/HTMLParser.cpp:
   9845         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): If the
   9846         residual style was closed before anything else in the block (so it does
   9847         not apply to anything inside the block) avoid creating an empty element for
   9848         it inside the block.
   9849 
   9850 2007-08-25  Mitz Pettel  <mitz (a] webkit.org>
   9851 
   9852         Reviewed by Dave Hyatt.
   9853 
   9854         - fix http://bugs.webkit.org/show_bug.cgi?id=14972
   9855           Moving cursor down in contentEditable section fails if styled line-height:1em
   9856 
   9857         Test: editing/selection/move-by-line-003.html
   9858 
   9859         * rendering/RenderText.cpp:
   9860         (WebCore::RenderText::positionForCoordinates): Changed hit testing so that each
   9861         line is tested for hits between its overflow top and the next line's overflow top.
   9862         This matches RenderBlock::positionForCoordinates.
   9863 
   9864 2007-08-25  Mitz Pettel  <mitz (a] webkit.org>
   9865 
   9866         Reviewed by Justin.
   9867 
   9868         - fix http://bugs.webkit.org/show_bug.cgi?id=14792
   9869           <rdar://problem/5367763> REGRESSION: Copy inserts carriage return in middle of selection
   9870 
   9871         Test: editing/pasteboard/newlines-around-floating-or-positioned.html
   9872 
   9873         * editing/TextIterator.cpp:
   9874         (WebCore::shouldEmitNewlinesBeforeAndAfterNode): Do not emit newlines around
   9875         floating or positioned blocks. This behavior seems to match WinIE's.
   9876 
   9877 2007-08-23  Justin Garcia  <justin.garcia (a] apple.com>
   9878 
   9879         Reviewed by Darin.
   9880         
   9881         <rdar://problem/5432254> GoogleDocs: A hang occurs when applying list style to selected table
   9882         
   9883         * editing/DeleteSelectionCommand.cpp:
   9884         (WebCore::DeleteSelectionCommand::handleGeneralDelete): If the position
   9885         that marked the start of the range to delete has been removed from the
   9886         document, and it was inside the node that holds the position that marks
   9887         the end of the range to delete, don't remove any children of that node,
   9888         because we don't know how many to remove.  For example, if the end is
   9889         [a, 5] and the start was in some descendant of a and was removed, don't
   9890         remove any of the children of a.  We will now refuse to remove some content
   9891         incorrectly, but that's less dangerous than removing content incorrectly.
   9892         Long term we need to update these positions as we remove content from the 
   9893         document, but that seems like a more risky change.  Added a testcase.
   9894         * editing/InsertListCommand.cpp:
   9895         (WebCore::InsertListCommand::modifyRange): If the end of the selection to 
   9896         modify is just after a table, and if the start of the selection is inside 
   9897         that table, the last paragraph that we'll want modify is the last one inside 
   9898         the table, not the paragraph that contains the table itself. Adjust 
   9899         startOfLastParagraph here to avoid infinite recursion.
   9900 
   9901 2007-08-24  Anders Carlsson  <andersca (a] apple.com>
   9902 
   9903         Reviewed by Geoff.
   9904 
   9905         <rdar://problem/5430165>
   9906         REGRESSION: Dynamically loaded images fail to load
   9907 
   9908         * html/HTMLImageLoader.cpp:
   9909         (WebCore::HTMLImageLoader::HTMLImageLoader):
   9910         Initialize the m_elementIsProtected member.
   9911 
   9912         (WebCore::HTMLImageLoader::~HTMLImageLoader):
   9913         Assert that the element is not protected.
   9914         
   9915         (WebCore::HTMLImageLoader::setLoadingImage):
   9916         If the image is not null, protect the element. Otherwise, unprotect it.
   9917         
   9918         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   9919         Unprotect the element here.
   9920 
   9921         (WebCore::HTMLImageLoader::protectElement):
   9922         (WebCore::HTMLImageLoader::unprotectElement):
   9923         New methods which protect and unprotect the element.
   9924         
   9925         * html/HTMLImageLoader.h:
   9926 
   9927 2007-08-24  Kevin McCullough  <kmccullough (a] apple.com>
   9928 
   9929         - Updated ChangeLog
   9930 
   9931 2007-08-24  Beth Dakin  <bdakin (a] apple.com>
   9932 
   9933         Reviewed by Hyatt and Adele.
   9934 
   9935         Fix for <rdar://problem/5417203> Google Gmail 1.0 widget - unread 
   9936         count is missing
   9937 
   9938         * rendering/FixedTableLayout.cpp:
   9939         (WebCore::FixedTableLayout::calcWidthArray): Calc pref widths for 
   9940         our cells, if needed.
   9941 
   9942 2007-08-24  Kevin McCullough  <kmccullough (a] apple.com>
   9943 
   9944         Reviewed by Darin.
   9945 
   9946         <rdar://problem/5437038> 1 credential object leaked for each call to credentialWithUser:password:persistence
   9947         - Use initWithUser instead of credentialWithUser because credentialWithUser leaks.
   9948 
   9949         * platform/network/mac/AuthenticationMac.mm:
   9950         (WebCore::mac):
   9951         * platform/network/mac/ResourceHandleMac.mm:
   9952         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
   9953         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]):
   9954 
   9955 2007-08-24  Jon Honeycutt  <jhoneycutt (a] apple.com>
   9956 
   9957         Reviewed by Darin.
   9958 
   9959         <rdar://problem/5433236> Print preview of empty txt file crashes Safari
   9960         Fix: Adjust computePageRectsForFrame to always return at least one 
   9961         page rect, even if document height is zero.
   9962 
   9963         * WebCore.vcproj/WebCore.vcproj:
   9964         * bridge/win/FrameWin.h: Added Vector& parameter to 
   9965         computePagesRectsForFrame; changed its return type to void.
   9966         * bridge/win/FrameWin.cpp:
   9967         (WebCore::computePageRectsForFrame): Reordered the loop that inserts
   9968         rects into the vector.
   9969 
   9970 2007-08-24  Antti Koivisto  <antti (a] apple.com>
   9971 
   9972         Reviewed by Oliver
   9973 
   9974         Fix <rdar://problem/5393758>
   9975         Crash in WebCore::FontData::platformInit
   9976         
   9977         Null check glyph page. 
   9978         
   9979         If font has somehow failed to initialize it is possible to have null glyph page. Based on
   9980         crash dumps this seems to occasionally happen when running Mail under guard malloc. 
   9981         
   9982         No test case, I don't know how to get to this state.
   9983 
   9984         * platform/FontData.cpp:
   9985         (WebCore::FontData::FontData):
   9986         * platform/mac/FontDataMac.mm:
   9987         (WebCore::FontData::platformInit):
   9988 
   9989 2007-08-24  George Wright  <george.wright (a] collabora.co.uk>
   9990 
   9991         Reviewed by Oliver.
   9992 
   9993         http://bugs.webkit.org/show_bug.cgi?id=15071
   9994         [cairo] SVG skews are incorrect
   9995 
   9996         Fix Cairo implementation of AffineTransform::shear so that shearing is
   9997         done in the correct direction.
   9998 
   9999         * platform/graphics/cairo/AffineTransformCairo.cpp:
   10000         (WebCore::AffineTransform::shear):
   10001 
   10002 2007-08-23  Anders Carlsson  <andersca (a] apple.com>
   10003 
   10004         Reviewed by Steve.
   10005 
   10006         If necessary, re-set the window proc after each call to NPP_SetWindow. This is to ensure that
   10007         our window proc is always run even if a plug-in subclasses the window and replaces the window proc.
   10008         
   10009         Also, make sure that the default window proc is of type ASCII so we can eliminate the 
   10010         * plugins/win/PluginViewWin.cpp:
   10011         (WebCore::registerPluginView):
   10012         (WebCore::PluginViewWndProc):
   10013         (WebCore::PluginViewWin::setNPWindowRect):
   10014         (WebCore::PluginViewWin::stop):
   10015         (WebCore::PluginViewWin::determineQuirks):
   10016         (WebCore::PluginViewWin::PluginViewWin):
   10017         (WebCore::PluginViewWin::init):
   10018         * plugins/win/PluginViewWin.h:
   10019         (WebCore::):
   10020         (WebCore::PluginViewWin::pluginWndProc):
   10021 
   10022 2007-08-23  Justin Garcia  <justin.garcia (a] apple.com>
   10023 
   10024         Reviewed by Adele.
   10025 
   10026         <rdar://problem/5156801> REGRESSION: Crash at DeleteSelectionCommand::doApply() when deleting table content
   10027 
   10028         * editing/DeleteSelectionCommand.cpp:
   10029         (WebCore::DeleteSelectionCommand::handleGeneralDelete): Use a RefPtr
   10030         for node.  If the node to be removed contains the selection, and if
   10031         the next node to be removed (nextNode) is inside the deletion UI,
   10032         removing node will remove nextNode from the document.  nextNode is
   10033         a RefPtr, but node isn't and when nextNode falls out of scope the node
   10034         that node points to will be destroyed and we'll end up using a stale pointer.
   10035         Long term we should probably just disable the deletion UI before editing 
   10036         operations because the undo of the removal of node in the situation 
   10037         described above relies on the presence of the deletion UI, but it isn't 
   10038         present because its added and removed in a non-undoable way.
   10039 
   10040 2007-08-23  Mitz Pettel  <mitz (a] webkit.org>
   10041 
   10042         Reviewed by Darin.
   10043 
   10044         - fix http://bugs.webkit.org/show_bug.cgi?id=14899
   10045           !d->m_view->needsLayout() in Frame::paint() (Causes assert)
   10046 
   10047         WebKit copies the width and height attributes of an <embed> to its
   10048         nearest <object> ancestor. This used to be done in updateWidget(), but
   10049         that could lead to the document being dirty right after layout and
   10050         before painting. The patch moves the copying of the attributes to when
   10051         the <embed> is inserted into the document or its attributes change.
   10052 
   10053         * html/HTMLEmbedElement.cpp:
   10054         (WebCore::HTMLEmbedElement::insertedIntoDocument):
   10055         (WebCore::HTMLEmbedElement::attributeChanged):
   10056         * html/HTMLEmbedElement.h:
   10057         * manual-tests/bugzilla-14899.html: Added.
   10058         * rendering/RenderPartObject.cpp:
   10059         (WebCore::RenderPartObject::updateWidget):
   10060 
   10061 2007-08-22  Anders Carlsson  <andersca (a] apple.com>
   10062 
   10063         Reviewed by Darin and Oliver.
   10064 
   10065         <rdar://problem/5422410>
   10066         http://bugs.webkit.org/show_bug.cgi?id=15019
   10067         REGRESSION (r25124-r25140): New posts and hot topics won't show at mobile01.com
   10068 
   10069         Remove the call to checkCallImplicitClose(). Calling it in loadPlugin is bad for two reasons:
   10070         
   10071         1. It could cause onload to be dispatched even when the page has subresources that are still
   10072         loading, such as images.
   10073         
   10074         2. Now that loadPlugin is called during layout, it could cause onload to be dispatched during
   10075         layout, which can execute javascript and do pretty much anything while the render tree is in an
   10076         inconsistent state.
   10077         
   10078         * loader/FrameLoader.cpp:
   10079         (WebCore::FrameLoader::loadPlugin):
   10080 
   10081 2007-08-22  Anders Carlsson  <andersca (a] apple.com>
   10082 
   10083         Reviewed by Adam.
   10084 
   10085         <rdar://problem/5430584>
   10086         http://bugs.webkit.org/show_bug.cgi?id=15053        
   10087         WebKit does not check Windows Registry HKEY_CURRENT_USER for NPAPI plugin locations
   10088         
   10089         * plugins/win/PluginDatabaseWin.cpp:
   10090         (WebCore::addPluginsFromRegistry):
   10091         (WebCore::PluginDatabaseWin::getPluginsInPaths):
   10092 
   10093 2007-08-22  Justin Garcia  <justin.garcia (a] apple.com>
   10094 
   10095         Reviewed by Adam.
   10096         
   10097         <rdar://problem/5418891> CrashTracer: [USER] 1 crash in Mail at -[WebViewEditor webView:shouldInsertText:replacingDOMRange:givenAction:]
   10098 
   10099         * editing/BreakBlockquoteCommand.cpp:
   10100         (WebCore::BreakBlockquoteCommand::doApply): We're reusing the topBlockquote
   10101         variable.  Null it out first.  If there is no new topBlockquote and we don't null
   10102         it out first, we'll assume that there was a new one and crash.
   10103 
   10104 2007-08-22  Kevin McCullough  <kmccullough (a] apple.com>
   10105 
   10106         Reviewed by Adele.
   10107 
   10108         - rdar:5423067 Reapplyingthe change but only when the text area is in focus.
   10109 
   10110         * html/HTMLTextAreaElement.cpp:
   10111         (WebCore::HTMLTextAreaElement::setValue):
   10112 
   10113 2007-08-21  David Hyatt  <hyatt (a] apple.com>
   10114 
   10115         Fix for <rdar://problem/5249757> Painting of JPGs in WebKit is too slow.
   10116 
   10117         Use a new Leopard API for fast tiling of images.  We only use this API
   10118         when the whole image is being tiled and when the current CGImageRef to tile
   10119         has a size that matches the size of the whole image.
   10120 
   10121         We can optimize border-image in the future by adding a cache of the 9
   10122         sub-images.
   10123 
   10124         Reviewed by darin
   10125 
   10126         * platform/graphics/cg/ImageCG.cpp:
   10127         (WebCore::Image::drawPattern):
   10128 
   10129 2007-08-22  Kevin McCullough  <kmccullough (a] apple.com>
   10130 
   10131         - Rolling back since I need to update some layouttests this change breaks.
   10132 
   10133         * html/HTMLTextAreaElement.cpp:
   10134         (WebCore::HTMLTextAreaElement::setValue):
   10135 
   10136 2007-08-21  Kevin McCullough  <kmccullough (a] apple.com>
   10137 
   10138         Reviewed by Geof, Adam, Hyatt, Maciej and Oliver.
   10139 
   10140         - In order to match the behavior of the other major browsers, selection is moved to the end of the text value when a change occurs to the contents of a text area instead of remembering the location of the selection.
   10141         - <rdar://problem/5423067> gmail is super annoying when trying to add a new name to the TO, CC or BCC fields
   10142 
   10143         * html/HTMLTextAreaElement.cpp:
   10144         (WebCore::HTMLTextAreaElement::setValue):
   10145 
   10146 2007-08-21  Adam Roben  <aroben (a] apple.com>
   10147 
   10148         Build fix for Mac
   10149 
   10150         Keep FrameView::layoutIfNeededRecursive Windows- and Gtk-only for now
   10151         (sadly). This will have to wait until we merge ScrollView and FrameView.
   10152 
   10153         Reviewed by NOBODY.
   10154 
   10155         * page/FrameView.cpp:
   10156         * page/FrameView.h:
   10157 
   10158 2007-08-21  Adam Roben  <aroben (a] apple.com>
   10159 
   10160         Fix an ASSERT when using Find in Page
   10161 
   10162         Reviewed by Darin.
   10163 
   10164         No test possible.
   10165 
   10166         * bridge/win/FrameWin.cpp:
   10167         (WebCore::imageFromSelection): Make sure to update layout before
   10168         painting so we don't hit an ASSERT in painting code (Frame::selectionImage
   10169         in FrameMac.mm does this as well).
   10170 
   10171 2007-08-21  Adam Roben  <aroben (a] apple.com>
   10172 
   10173         Made FrameView::layoutIfNeededRecursive available to all platforms
   10174 
   10175         Currently it's only used on Gtk+ and Windows.
   10176 
   10177         Reviewed by Darin.
   10178 
   10179         * page/FrameView.cpp: Removed #ifdef.
   10180         * page/FrameView.h: Ditto.
   10181 
   10182 2007-08-21  Adele Peterson  <adele (a] apple.com>
   10183 
   10184         Build fix for release build.
   10185 
   10186         * rendering/AutoTableLayout.cpp:
   10187         (WebCore::AutoTableLayout::calcEffectiveWidth):
   10188         (WebCore::AutoTableLayout::layout):
   10189 
   10190 2007-08-21  Mitz Pettel  <mitz (a] webkit.org>
   10191 
   10192         Reviewed by Darin.
   10193 
   10194         - fix http://bugs.webkit.org/show_bug.cgi?id=15010
   10195           <rdar://problem/5423956> REGRESSION (r25000-r25065): Table rendering broken by a recent nightly
   10196 
   10197         Test: fast/table/max-width-integer-overflow.html
   10198 
   10199         Avoid integer overflows when dealing with maximum widths by
   10200         1) using floating point arithmetic when summing or multiplying column max widths
   10201         2) capping max widths at INT_MAX / 2
   10202 
   10203         * rendering/AutoTableLayout.cpp:
   10204         (WebCore::AutoTableLayout::calcPrefWidths):
   10205         (WebCore::AutoTableLayout::calcEffectiveWidth):
   10206         (WebCore::AutoTableLayout::layout):
   10207 
   10208 2007-08-20  John Sullivan  <sullivan (a] apple.com>
   10209 
   10210         Reviewed by Adam Roben
   10211 
   10212         WebCore part of fix for: 
   10213         <rdar://problem/5417777> WebKit focus ring color no longer matches system focus rings
   10214         
   10215         Adele wrote the first version of this patch. No test cases added because I made sure the 
   10216         layout tests are unaffected. Two additional bug fixes were made in passing, but neither 
   10217         of them had any effect on any known real-world case, and both were too difficult to write 
   10218         test cases for to be worthwhile.
   10219 
   10220         * WebCore.exp:
   10221         added symbols for these new functions so WebKit can call them
   10222         
   10223         * WebCore.xcodeproj/project.pbxproj:
   10224         updated for new file
   10225         
   10226         * platform/graphics/mac/ColorMac.h: Added.
   10227         New file to hold the increasing amount of Mac-specific color stuff.
   10228         
   10229         * platform/graphics/Color.h:
   10230         removed #if PLATFORM(MAC) code, which is now in ColorMac.h
   10231         
   10232         * platform/graphics/mac/ColorMac.mm:
   10233         (WebCore::makeRGBAFromNSColor):
   10234         new static function to convert an NSColor object to an RGBA32 struct
   10235         (WebCore::colorFromNSColor):
   10236         new public function to convert an NSColor object to a WebCore-style Color object
   10237         (WebCore::focusRingColor):
   10238         Uses (cached) systemFocusRingColor instead of hardwired values, unless usesTestModeFocusRingColor is true,
   10239         in which case it uses the old hardwired color
   10240         (WebCore::usesTestModeFocusRingColor):
   10241         returns value of global var
   10242         (WebCore::setUsesTestModeFocusRingColor):
   10243         sets value of global var
   10244         (+[WebCoreControlTintObserver controlTintDidChange]):
   10245         Uses [NSColor keyboardFocusIndicatorColor] to set systemFocusRingColor; don't compile if COLORMATCH_EVERYTHING
   10246         is set since we don't know what it would take to satisfy this state.
   10247 
   10248         * bindings/objc/DOMRGBColor.mm:
   10249         now includes ColorMac.h to account for moved declarations
   10250         * bridge/mac/WebCoreAXObject.mm:
   10251         ditto
   10252         
   10253         * page/mac/FrameMac.mm:
   10254         (WebCore::convertAttributesToUnderlines):
   10255         now uses new colorFromNSColor. The old code was swapping G & B, but it didn't matter in practice because
   10256         this function is only used to convert the color of an input manager's marked text underline, which is always black
   10257         
   10258         * page/mac/WebCoreFrameBridge.mm:
   10259         (-[WebCoreFrameBridge setBaseBackgroundColor:]):
   10260         now uses new colorFromNSColor. The old code was swapping G & B, but it didn't matter in practice because
   10261         this function is only called with a grayscale color perhaps containing an alpha value
   10262                 
   10263         * rendering/RenderView.cpp:
   10264         (WebCore::RenderView::paintBoxDecorations):
   10265         just updated a comment
   10266 
   10267 2007-08-20  Mitz Pettel  <mitz (a] webkit.org>
   10268 
   10269         Reviewed by Dave Hyatt.
   10270 
   10271         - fix http://bugs.webkit.org/show_bug.cgi?id=15023
   10272           REGRESSION (r21113-r21143): JavaScript tooltip rendering bug
   10273 
   10274         Test: fast/repaint/layer-visibility.html
   10275 
   10276         * rendering/RenderLayer.cpp:
   10277         (WebCore::RenderLayer::setHasVisibleContent): Cache the layer's
   10278         rects when it changes to visible.
   10279 
   10280 2007-08-20  Kevin Decker <kdecker (a] apple.com>
   10281 
   10282         Reviewed by Anders.
   10283 
   10284         Fixed: <rdar://problem/5325262> REGRESSION (Tiger-Leopard): PictureTalk plug-in doesn't work
   10285 
   10286         The problem was that this particular plug-in handles "text/ptf", but WebCore wasn't giving the plug-in a chance to load
   10287         any type with "text/"
   10288 
   10289         * dom/DOMImplementation.cpp:
   10290         (WebCore::DOMImplementation::createDocument): Allow plug-ins to once again use "text/" MIME types, but only if the MIME
   10291         type is not "text/plain". Disallowing plug-ins to use text/plain prevents plug-ins from hijacking a fundamental type 
   10292         that the browser is expected to handle, and also serves as an optimization to prevent loading the plug-in database in 
   10293         the common case.
   10294 
   10295 2007-08-20  Adam Roben  <aroben (a] apple.com>
   10296 
   10297         Remove workarounds for <rdar://problem/5386894> now that it's been fixed
   10298 
   10299         Reviewed by Darin.
   10300 
   10301         Tests: fast/loader/local-svg-parsed-as-svg.svg
   10302                fast/loader/local-xhtml-parsed-as-xhtml.xhtml
   10303 
   10304         * platform/network/cf/ResourceResponseCFNet.cpp:
   10305         (WebCore::ResourceResponse::doUpdateResourceResponse): Removed hackish
   10306         workaround.
   10307 
   10308 2007-08-20  Anders Carlsson  <andersca (a] apple.com>
   10309 
   10310         Reviewed by Adam.
   10311 
   10312         <rdar://problem/5412988>
   10313         Crash when visiting http://www.rockonflash.com/blog/?p=58
   10314         
   10315         * plugins/win/PluginViewWin.cpp:
   10316         (WebCore::PluginViewWin::updateWindow):
   10317         Just return if the plugin view hasn't been inserted in the hierarchy yet.
   10318 
   10319 2007-08-20  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   10320 
   10321         Reviewed by Zack.
   10322 
   10323         Do not define svg as ImageMIMEType if we can use ksvg2.
   10324 
   10325         * platform/MIMETypeRegistry.cpp:
   10326         (WebCore::initialiseSupportedImageMIMETypes):
   10327 
   10328 2007-08-19  Adam Roben  <aroben (a] apple.com>
   10329 
   10330         Gtk+ build fix.
   10331 
   10332         * platform/gdk/TemporaryLinkStubs.cpp: Removed const.
   10333 
   10334 2007-08-19  Adam Roben  <aroben (a] apple.com>
   10335 
   10336         Fix <rdar://5395835> REGRESSION (r24527): Context menu for edit fields is missing "Font & Writing Direction"
   10337 
   10338         The problem was that ContextMenuItem::setSubMenu was just copying the
   10339         HMENU from the ContextMenu passed in on Windows, but that HMENU was
   10340         later getting destroyed when the ContextMenu went out of scope.
   10341 
   10342         I added a new ContextMenu::releasePlatformDescription method that is
   10343         used in setSubMenu instead. I think an ultimately better design would
   10344         be for setSubMenu to take ownership of the ContextMenu that's passed in
   10345         (as should insertItem and appendItem), but I decided to be conservative
   10346         and just make the changes needed to fix the bug.
   10347 
   10348         Reviewed by Darin.
   10349 
   10350         No test possible.
   10351 
   10352         * platform/ContextMenu.h: Added releasePlatformDescription.
   10353         * platform/gdk/TemporaryLinkStubs.cpp: Added stub implementation.
   10354         * platform/mac/ContextMenuMac.mm:
   10355         (WebCore::ContextMenu::releasePlatformDescription): Implemented, though
   10356         it's never called on this platform.
   10357         * platform/qt/ContextMenuQt.cpp:
   10358         (WebCore::ContextMenu::releasePlatformDescription): Ditto.
   10359         * platform/win/ContextMenuItemWin.cpp:
   10360         (WebCore::ContextMenuItem::setSubMenu): Call releasePlatformDescription
   10361         since we need to take ownership of the HMENU.
   10362         * platform/win/ContextMenuWin.cpp:
   10363         (WebCore::ContextMenu::releasePlatformDescription): Implemented.
   10364 
   10365 2007-08-18  Maciej Stachowiak  <mjs (a] apple.com>
   10366 
   10367         Reviewed by Darin.
   10368 
   10369         - fixed <rdar://problem/5198272> REGRESSION: PLT 1.5% slower due to r21367 (change to start frames with empty documents)
   10370         
   10371         There were three main cuases of extra time due to creating the initial empty document:
   10372         
   10373         1) Creating an extra WebHTMLView and swapping it for a new one for each frame created.
   10374         2) Parsing the minimal markup for the initial document's contents.
   10375         3) Clearing the Window object an extra time and dispatching the corresponding delegate method.
   10376         
   10377         The WebCore part of the fixes addresses 2 and 3.
   10378         
   10379         * loader/FrameLoader.cpp:
   10380         (WebCore::FrameLoader::init): Don't parse "<html><body>" for the initial
   10381         empty document; it turns out not to be needed.
   10382         (WebCore::FrameLoader::dispatchWindowObjectAvailable): Don't 
   10383         dispatch the delegate if we haven't created a ScriptInterpreter yet.
   10384         * bindings/js/kjs_proxy.cpp:
   10385         (WebCore::KJSProxy::initScriptIfNeeded): Dispatch the window object
   10386         delegate when we first create the interpreter, since that is now done
   10387         lazily.
   10388         * loader/FrameLoader.h:
   10389         (WebCore::FrameLoader::committingFirstRealLoad): Helper for WebKit
   10390         to know when to reuse a WebHTMLView.
   10391 
   10392 2007-08-19  Mitz Pettel  <mitz (a] webkit.org>
   10393 
   10394         Reviewed by Adam Roben.
   10395 
   10396         - fix http://bugs.webkit.org/show_bug.cgi?id=15008
   10397           ASSERTION FAILED: !firstLineBox() == !lastLineBox() setting content on image
   10398 
   10399         Test: fast/images/text-content-crash-2.html
   10400 
   10401         * html/HTMLImageLoader.cpp:
   10402         (WebCore::HTMLImageLoader::setImage): Added a check that the renderer is an
   10403         image.
   10404         (WebCore::HTMLImageLoader::updateFromElement): Ditto.
   10405         (WebCore::HTMLImageLoader::notifyFinished): Ditto.
   10406 
   10407 2007-08-17  Maciej Stachowiak  <mjs (a] apple.com>
   10408 
   10409         Reviewed by Darin.
   10410 
   10411         - WebCore part of fix to scrollbar suppression hack for Leopard
   10412 
   10413         * loader/FrameLoader.cpp:
   10414         (WebCore::FrameLoader::transitionToCommitted): Suppress scrollbars earlier, so it happens
   10415         before any potential view swap.
   10416 
   10417 2007-08-17  Antti Koivisto  <antti (a] apple.com>
   10418 
   10419         Reviewed by Hyatt.
   10420         
   10421         Fix <rdar://problem/5403773>
   10422         CrashTracer: [USER] 88 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::paint + 846
   10423 
   10424         * rendering/RenderBlock.cpp:
   10425         (WebCore::RenderBlock::removePositionedObjects):
   10426         
   10427         Fix crash in http://www.infobae.com/interior/home.html
   10428         Positioned objects removed from m_positionedObjects would in some cases not get added back to any 
   10429         positioned objects list. Adding objects happens in block layout but since layout was not invalidated 
   10430         correctly in removePositionedObjects() it would not get invoked. As a result some positioned objects 
   10431         would stay in layout dirty state leading to crashes and other bad things.
   10432         
   10433         * rendering/RenderTableSection.cpp:
   10434         (WebCore::RenderTableSection::paint):
   10435         
   10436         Add needLayout() guard to eliminate this class of crashes from release builds. 
   10437         Assert commented out for now since one existing layout test can't handle it.
   10438 
   10439 2007-08-17  Kevin Decker <kdecker (a] apple.com>
   10440 
   10441         Code change by Darin, landed and reviewed by me.
   10442 
   10443         Fixed: <rdar://problem/5252836> Adobe Help Viewer: Japanese characters in the Help Tree structure are shown as garbage
   10444         Added fast/encoding/namespace-tolerance.html test.
   10445 
   10446         * loader/TextResourceDecoder.cpp:
   10447         (WebCore::TextResourceDecoder::checkForHeadCharset): Slightly loosen the charset decoder heuristic by tweaking it
   10448         to ignore namespaces. This restores compatibility to documents which (1) use namespace prefixes on HTML elements
   10449         (2) specify a non-latin charset and (3) contain non-latin characters.
   10450         
   10451         Added fast/encoding/namespace-tolerance.html test.
   10452         
   10453 2007-08-17  Anders Carlsson  <andersca (a] apple.com>
   10454 
   10455         Reviewed by Dave Hyatt.
   10456         
   10457         <rdar://problem/5379040>
   10458         REGRESSION (Tiger-Leopard): ADOBE: Safari calls NPP_SetWindow with bad values sometimes
   10459 
   10460         Instantiate plug-ins during the first layout instead of doing so when creating the renderer.
   10461         This ensures that the plug-in widget will have a correct initial size.
   10462         
   10463         * html/HTMLEmbedElement.cpp:
   10464         (WebCore::HTMLEmbedElement::getInstance):
   10465         Force a layout if the plug-in doesn't have an instance.
   10466         
   10467         (WebCore::HTMLEmbedElement::attach):
   10468         Pass true to updateWidget, causing it to only create a widget if it won't be a plug-in.
   10469         
   10470         * html/HTMLIFrameElement.cpp:        
   10471         (WebCore::HTMLIFrameElement::attach):
   10472         Pass false to updateWidget, this will only create subframes anyway.
   10473         
   10474         * html/HTMLObjectElement.cpp:
   10475         (WebCore::HTMLObjectElement::getInstance):
   10476         Force a layout if the plug-in doesn't have an instance.
   10477         
   10478         (WebCore::HTMLObjectElement::attach):
   10479         Pass true to updateWidget, causing it to only create a widget if it won't be a plug-in.
   10480         
   10481         * loader/FrameLoader.cpp:
   10482         (WebCore::FrameLoader::loadPlugin):
   10483         Get the size from the renderer and pass it to the client.
   10484         
   10485         * loader/FrameLoaderClient.h:
   10486         * page/mac/WebCoreFrameBridge.h:
   10487         * platform/graphics/svg/SVGImageEmptyClients.h:
   10488         (WebCore::SVGEmptyFrameLoaderClient::createPlugin):
   10489         Update declarations.
   10490         
   10491         * rendering/RenderPart.cpp:
   10492         (WebCore::RenderPart::setWidget):
   10493         No need to mark the renderer as dirty here.
   10494         
   10495         * rendering/RenderPartObject.h:
   10496         * rendering/RenderPartObject.cpp:
   10497         (WebCore::RenderPartObject::updateWidget):
   10498         Add a parameter, onlyCreateNonPlugins. If this is true the widget 
   10499         will only be created if it's not a plug-in.
   10500         
   10501         (WebCore::RenderPartObject::layout):
   10502         Call updateWidget here if m_widget is 0, causing the plug-in to be instantiated.
   10503         
   10504 2007-08-17  Oliver Hunt  <oliver (a] apple.com>
   10505 
   10506         Reviewed by Maciej.
   10507 
   10508         http://bugs.webkit.org/show_bug.cgi?id=14189
   10509         <rdar://problem/5319511> REPRODUCIBLE CRASH: Canvas createPattern(canvas, ...) crashes on Windows (14189)
   10510 
   10511         Ensure that we actually retain the CG pattern correctly.
   10512 
   10513         Credit to Henry Mason <hmason (a] mac.com> for finding the cause of this.
   10514 
   10515         * html/CanvasPattern.cpp:
   10516         (WebCore::CanvasPattern::~CanvasPattern):
   10517         (WebCore::CanvasPattern::createPattern):
   10518         * html/CanvasPattern.h:
   10519         (WebCore::CanvasPattern::platformImage):
   10520 
   10521 2007-08-16  Geoffrey Garen  <ggaren (a] apple.com>
   10522 
   10523         Build fix. (Maybe?)
   10524         
   10525         * loader/Cache.cpp:
   10526         (WebCore::Cache::pruneLiveResources):
   10527         (WebCore::Cache::pruneDeadResources):
   10528 
   10529 2007-08-16  Justin Garcia  <justin.garcia (a] apple.com>
   10530 
   10531         Reviewed by Harrison.
   10532 
   10533         <rdar://problem/5378473> 
   10534         REGRESSION: Undoing a deletion that is part of an open typing command fails to reinsert the caret
   10535         
   10536         We recently made Undo of a series of deletes select all of the 
   10537         characters that were deleted, not just the most recently deleted
   10538         character.  But the code that did this set a new starting selection 
   10539         after every delete, even those that were part of an open typing 
   10540         command that started with character insertions or forward deletes, 
   10541         operations that when undone, remove the starting selection being 
   10542         set from the document.
   10543         
   10544         After this change we only set a new starting selection if the open typing
   10545         command was opened by a backward delete. The new behavior matches TextEdit.  
   10546         We don't do something similar or forward deletes because TextEdit opens 
   10547         and closes a new typing command on forward delete (added a FIXME about this).
   10548 
   10549         * editing/TypingCommand.cpp:
   10550         (WebCore::TypingCommand::TypingCommand): Initialize 
   10551         m_openedByBackwardDelete.
   10552         (WebCore::TypingCommand::forwardDeleteKeyPressed): Added a FIXME about
   10553         how in TextEdit, forward deletes open and close a new typing command.
   10554         (WebCore::TypingCommand::doApply): Set m_openedByBackwardDelete
   10555         appropriately.
   10556         (WebCore::TypingCommand::deleteKeyPressed): Only set the starting
   10557         selection if this delete is the first one in an open typing command
   10558         or one in a series of deletes that opened the typing command.
   10559         * editing/TypingCommand.h: Added m_openedByBackwardDelete.
   10560 
   10561 2007-08-13  Geoffrey Garen  <ggaren (a] apple.com>
   10562 
   10563         Reviewed by Dave Hyatt.
   10564         
   10565         Tweaked the cache eviction model to better balance between live and 
   10566         dead resources.
   10567         
   10568         For the sake of avoiding evictions during the PLT, the old model 
   10569         required the sum of dead and live resources to grow to twice the cache 
   10570         capacity before evicting, and would then evict dead or live down to 0 
   10571         if necessary. This was a too-high high water mark, which would nullify 
   10572         much of the value of eviction, and a too-low low water mark, which 
   10573         would nullify much of the value of the LRU-SP strategy.
   10574         
   10575         This patch changes the model in 3 ways.
   10576         
   10577         1. The new model for dead resources is a flexible window with a fixed 
   10578         minimum and maximum. The dead resource window is big when live resource 
   10579         pressure is small, and vice versa. This has the immediate advantage of
   10580         cutting the high water mark by up to 50%. It also enables the following
   10581         tunable optimizations in future patches:
   10582             a. A dead resource limit of 0 for clients who want that. (Just set
   10583             the fixed maximum to 0.)
   10584             b. A much higher low water mark. (Just set the fixed minimum to, 
   10585             say, 25% of the cache's capacity.)
   10586             c. A much lower high water mark for users who browse simple pages
   10587             in one tab. (Just set the fixed maximum to, say, 50% of the cache's
   10588             capacity.)
   10589         
   10590         I plan to make the changes that actually take advantage of these 
   10591         tunable optimizations in another check-in.
   10592 
   10593         The new model won't hurt the PLT because it will notice the PLT's low
   10594         live resource size, and up the dead resource capacity in response. For
   10595         the same reason, the new model should establish a good balance in 
   10596         real-world use.
   10597         
   10598         2. Live resource eviction is now based on size(), not encodedSize().
   10599         So, a page with lots of large, encoded images will start evicting 
   10600         resources, if necessary, even before all the images paint. This allows 
   10601         you to more accurately stipulate an exact high water mark.
   10602         
   10603         3. When pruning, prune to a small percentage below capacity, to avoid
   10604         just having to prune again immediately.
   10605 
   10606         Layout tests pass. PLT shows no regression.
   10607 
   10608         * history/PageCache.cpp:
   10609         (WebCore::PageCache::releaseAutoreleasedPagesNow): Updated for rename.
   10610 
   10611         * loader/Cache.cpp: Implemented the algorithm explained above.
   10612         * loader/Cache.h: Removed explicit tracking of decoded data size, since
   10613         it was unused.
   10614 
   10615         * loader/CachedResource.cpp: ditto on tracking of decoded data size
   10616 
   10617 2007-08-16  Darin Adler  <darin (a] apple.com>
   10618 
   10619         Reviewed by Tim Hatcher.
   10620 
   10621         - fix <rdar://problem/5415029> In Mail, a crash occurs at WebCore::Node::isDescendantOf()
   10622           when attempting to delete a selection in a table
   10623 
   10624         The bug was caused by createMarkup trying to operate on a range that
   10625         has an endpoint in the delete button DOM, because it removes that DOM
   10626         during its operation! Still working on a regression test -- it's hard
   10627         to make the kind of bad selection that's needed with the DOM, so I might
   10628         have to use the eventSender.
   10629 
   10630         * editing/DeleteButtonController.h: Made some of the identifiers private.
   10631         We can make them public if we need to use them. Added a getter function
   10632         for the container element so we can figure out if a given node is inside
   10633         the DOM added for the delete button.
   10634 
   10635         * editing/markup.cpp:
   10636         (WebCore::moveEndpointsBeforeNode): Added. General purpose helper function
   10637         that moves endpoints of a range to before a given node -- we do this before
   10638         removing the delete button, so the endpoint is where the delete button was,
   10639         rather than having an endpoint that's not in the document.
   10640         (WebCore::createMarkup): Always return empty string, not null string.
   10641         Get the document by calling ownerDocument on the range rather than getting
   10642         the document of the commonAncestorContainer. That's because we need to
   10643         get at the delete button before calling commonAncestorContainer. Call
   10644         moveEndpointsBeforeNode to move the range endpoints out of the delete
   10645         button interface before calling disable() which will remove it from the
   10646         DOM if it's in there. Added an early return for the case where commonAncestor
   10647         is non-0. If this happens, we would crash later because pastEndNode would
   10648         not be in the tree. This change alone would prevent the crash, but we'd get
   10649         bad markup, so we need the moveEndpointsBeforeNode fix. Added null checks
   10650         for the frame to the range version as in the single-node version so this
   10651         won't crash immediately on documents that are not in a frame. For the
   10652         single-node version, added a check if a ndoe of 0 and a node inside the
   10653         delete button user interface, and return the empty string for those cases.
   10654 
   10655 2007-08-16  Justin Garcia  <justin.garcia (a] apple.com>
   10656 
   10657         Reviewed by Maciej.
   10658         
   10659         <rdar://problem/5378847> After creating and removing a ToDo, the caret disappears as soon as I start to type
   10660         
   10661         * editing/InsertTextCommand.cpp:
   10662         (WebCore::InsertTextCommand::input): A whitespace text node inserted by Mail
   10663         when a ToDo is removed is completely removed by deleteInsignificantWhitespace,
   10664         and since it contains the text insertion position, insertion fails.
   10665         Save the position before the node where text insertion will occur,
   10666         and if that node is removed, use the saved position for insertion.
   10667 
   10668 2007-08-16  Darin Adler  <darin (a] apple.com>
   10669 
   10670         Reviewed by Adele.
   10671 
   10672         - fix <rdar://problem/5413488> REGRESSION: every DOM element is about 40
   10673           bytes bigger because it has a Timer
   10674 
   10675         Moved the timer to the document from the element.
   10676 
   10677         * dom/Document.h: Made frame() inline. Added updateFocusApperanceSoon(),
   10678         cancelFocusAppearanceUpdate(), m_updateFocusAppearanceTimer,
   10679         clearXMLVersion(), and updateFocusAppearanceTimerFired(). Also made
   10680         everything that was previously protected be private instead.
   10681         * dom/Document.cpp:
   10682         (WebCore::Document::Document): Initialize m_updateFocusAppearanceTimer.
   10683         (WebCore::Document::updateFocusAppearanceSoon): Added. Starts timer.
   10684         (WebCore::Document::cancelFocusAppearanceUpdate): Added. Stops timer.
   10685         (WebCore::Document::updateFocusAppearanceTimerFired): Added. If the
   10686         focused node is a focusable element, then calls
   10687         updateFocusAppearance(false) on it.
   10688 
   10689         * dom/Element.h: Removed default value of the boolean parameter to
   10690         updateFocusAppareance. Removed needsFocusAppearanceUpdate(),
   10691         setNeedsFocusAppearanceUpdate(), updateFocusAppearanceTimerFired(),
   10692         stopUpdateFocusAppearanceTimer(), m_updateFocusAppearanceTimer, and
   10693         m_needsFocusAppearanceUpdate. Added
   10694         updateFocusAppearanceSoonAfterAttach() and cancelFocusAppearanceUpdate().
   10695         * dom/Element.cpp:
   10696         (WebCore::ElementRareData::ElementRareData): Added initializer for
   10697         m_needsFocusAppearanceUpdateSoonAfterAttach.
   10698         (WebCore::Element::Element): Removed initializers for
   10699         m_updateFocusAppearanceTimer and m_needsFocusAppearanceUpdate.
   10700         (WebCore::Element::attach): Updated code that starts the focus
   10701         appearance timer to instead call updateFocusAppearanceSoon() on the
   10702         document.
   10703         (WebCore::Element::detach): Replaced call to
   10704         stopUpdateFocusAppearanceTimer with call to cancelFocusAppearanceUpdate.
   10705         (WebCore::Element::focus): Added check for node that's already focused,
   10706         to match the logic that's in the derived classes. This makes it safe for
   10707         us to remove the override in the derived classes. Also replaced the code
   10708         that called setNeedsFocusAppearanceUpdate(true) with code to set the
   10709         rare data flag m_needsFocusAppearanceUpdateSoonAfterAttach and added a
   10710         call to cancelFocusAppearanceUpdate() in the case where there's no focus
   10711         appearance update.
   10712         (WebCore::Element::blur): Replaced call to
   10713         stopUpdateFocusAppearanceTimer with call to cancelFocusAppearanceUpdate.
   10714         (WebCore::Element::cancelFocusAppearanceUpdate): Added. Sets
   10715         m_needsFocusAppearanceUpdateSoonAfterAttach to false, and then calls
   10716         cancelFocusAppearanceUpdate() on the document, but only if the element
   10717         is the focused node of the document.
   10718 
   10719         * html/HTMLDocument.cpp:
   10720         (WebCore::HTMLDocument::HTMLDocument): Replaced code that sets
   10721         m_xmlVersion directly with a call to a new inline clearXMLVersion()
   10722         function.
   10723         (WebCore::HTMLDocument::setCookie): Replaced use of m_policyBaseURL with
   10724         policyBaseURL().
   10725         (WebCore::HTMLDocument::createTokenizer): Replaced uses of m_frame with
   10726         frame().
   10727         (WebCore::HTMLDocument::determineParseMode): Replaced code that sets
   10728         pMode and hMode directly with calls to setParseMode and setHTMLMode.
   10729         Replaced use of m_styleSelector with styleSelector().
   10730 
   10731         * html/HTMLInputElement.h: Removed now-unneed override of focus().
   10732         Removed default value of the boolean parameter to updateFocusAppareance.
   10733         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::updateFocusAppearance):
   10734         Pass the restorePreviousSelection boolean through -- while it's ignored,
   10735         it no longer has a default value.
   10736 
   10737         * html/HTMLTextAreaElement.h: Removed now-unneed override of focus().
   10738         Removed default value of the boolean parameter to updateFocusAppareance.
   10739         * html/HTMLTextAreaElement.cpp: Ditto.
   10740 
   10741         * WebCore.exp: Removed the Document::frame() symbol, since it's now inline.
   10742 
   10743 2007-08-15  Antti Koivisto  <antti (a] apple.com>
   10744 
   10745         Reviewed by Maciej.
   10746         
   10747         Fix <rdar://problem/5388936>
   10748         Crash while setting display:none for a table cell with selection
   10749         
   10750         Super class destroy() could (through some selection code in removeChild()) trigger section recalc 
   10751         in middle of RenderTableCell::destroy(), cleaning section dirty bit. This would later crash in 
   10752         layout since cell grid would still have refence to the dead cell.
   10753         
   10754         Ensure table sections are dirty when leaving destroy method.
   10755         
   10756         I can't figure out tests for row and section changes but they look like
   10757         they could crash in similar way as cell.
   10758 
   10759         * rendering/RenderTableCell.cpp:
   10760         (WebCore::RenderTableCell::destroy):
   10761         * rendering/RenderTableRow.cpp:
   10762         (WebCore::RenderTableRow::destroy):
   10763         * rendering/RenderTableSection.cpp:
   10764         (WebCore::RenderTableSection::destroy):
   10765 
   10766 2007-08-15  Maciej Stachowiak  <mjs (a] apple.com>
   10767 
   10768         Reviewed by Geoff.
   10769 
   10770         <rdar://problem/5389696> leak of 32-byte NSData object (and more?) in WebIconDatabase code path with each refresh of http://www.apple.com
   10771         
   10772         * platform/graphics/BitmapImage.h: Use RetainPtr for m_nsImage and m_tiffRep
   10773         * platform/graphics/mac/ImageMac.mm:
   10774         (WebCore::BitmapImage::initPlatformData): No need to do anything now
   10775         (WebCore::BitmapImage::invalidatePlatformData): Simplify
   10776         (WebCore::BitmapImage::getTIFFRepresentation): Use RetainPtr to avoid leaks
   10777         (WebCore::BitmapImage::getNSImage): Use RetainPtr to avoid leaks
   10778 
   10779 2007-08-15  Darin Adler  <darin (a] apple.com>
   10780 
   10781         Reviewed by Anders.
   10782 
   10783         - fix <rdar://problem/5094895> REGRESSION (r19094): JavaScript timers don't
   10784           work inside showModalDialog; caret also doesn't blink
   10785 
   10786         * platform/Timer.h: Added fireTimersInNestedEventLoop.
   10787         * platform/Timer.cpp:
   10788         (WebCore::TimerBase::fireTimers): Added code to exit if the timersReadyToFire
   10789         is cleared. This indicates that someone fired the timers in the nested event
   10790         loop, so we should not fire any more timers ourselves.
   10791         (WebCore::TimerBase::fireTimersInNestedEventLoop): Added. Sets timersReadyToFire
   10792         to 0 so we won't return early and do nothing if the shared timer first. Then
   10793         calls updateSharedTimer() so the shared timer will get scheduled as needed based
   10794         on any pending timers.
   10795 
   10796         * page/Chrome.cpp: (WebCore::Chrome::runModal): Call
   10797         fireTimersInNestedEventLoop before calling runModal on the client.
   10798 
   10799         * manual-tests/modal-dialog.html: Added a test that uses a timeout.
   10800         * manual-tests/show-modal-dialog-test.html: Fixed a typo.
   10801 
   10802 2007-08-15  Justin Garcia  <justin.garcia (a] apple.com>
   10803 
   10804         Reviewed by Darin.
   10805         
   10806         http://bugs.webkit.org/show_bug.cgi?id=14971
   10807         REGRESSION: cannot select reporter's e-mail in bugzilla
   10808 
   10809         * page/EventHandler.cpp:
   10810         (WebCore::EventHandler::canMouseDragExtendSelect): Allow drag-selecting inside
   10811         a -webkit-user-select:ignore region.
   10812 
   10813 2007-08-15  Beth Dakin  <bdakin (a] apple.com>
   10814 
   10815         Reviewed by Hyatt.
   10816 
   10817         Rolling back in. I made a silly mistake in XMLTokenizer that caused 
   10818         this patch to crash SVG tests. It's fixed now!
   10819 
   10820         Refactor of change for <rdar://problem/5404899> REGRESSION: Mail 
   10821         crash in WebCore::FontFallbackList::fontDataAt() after dragging 
   10822         image into text multiple times
   10823 
   10824         The original fix that I made last night prevents the pending style 
   10825         sheet count from being incremented until the element is in the 
   10826         document. This fix prevents the style sheet from loading at all 
   10827         until it is in the document.
   10828 
   10829         Here is the fix.
   10830         * dom/StyleElement.cpp:
   10831         (WebCore::StyleElement::insertedIntoDocument): Call process.
   10832         (WebCore::StyleElement::removedFromDocument): This can be reverted 
   10833         to its original state before my patch last night.
   10834         (WebCore::StyleElement::process): childrenChanged is now called 
   10835         process. Return early if your not in the document.
   10836         (WebCore::StyleElement::createSheet): Revert change from last 
   10837         night. The inDocument check is now in caller childrenChanged.
   10838         * dom/StyleElement.h: insertedIntoDocument() must now accept an 
   10839         element in addition to a document.
   10840 
   10841         This is an optimization to prevent calling updateStyleSelector() 
   10842         too frequently.
   10843         * dom/XMLTokenizer.cpp:
   10844         (WebCore::XMLTokenizer::startElementNs):
   10845         * html/HTMLStyleElement.cpp:
   10846         (WebCore::HTMLStyleElement::HTMLStyleElement):
   10847         (WebCore::HTMLStyleElement::finishedParsing):
   10848         (WebCore::HTMLStyleElement::insertedIntoDocument):
   10849         (WebCore::HTMLStyleElement::childrenChanged):
   10850         (WebCore::HTMLStyleElement::sheetLoaded):
   10851         * html/HTMLStyleElement.h:
   10852         * ksvg2/svg/SVGStyleElement.cpp:
   10853         (WebCore::SVGStyleElement::SVGStyleElement):
   10854         (WebCore::SVGStyleElement::finishedParsing):
   10855         (WebCore::SVGStyleElement::insertedIntoDocument):
   10856         (WebCore::SVGStyleElement::childrenChanged):
   10857         (WebCore::SVGStyleElement::sheetLoaded):
   10858         * ksvg2/svg/SVGStyleElement.h:
   10859         (WebCore::SVGStyleElement::setCreatedByParser):
   10860 
   10861         This is a name change. Document::stylesheetLoaded() 
   10862         is now Document::removePendingSheet()
   10863         * dom/Document.cpp:
   10864         (WebCore::Document::removePendingSheet):
   10865         * dom/Document.h:
   10866         * dom/ProcessingInstruction.cpp:
   10867         (WebCore::ProcessingInstruction::sheetLoaded):
   10868         * html/HTMLLinkElement.cpp:
   10869         (WebCore::HTMLLinkElement::~HTMLLinkElement):
   10870         (WebCore::HTMLLinkElement::setDisabledState):
   10871         (WebCore::HTMLLinkElement::process):
   10872         (WebCore::HTMLLinkElement::sheetLoaded):
   10873         * page/Frame.cpp:
   10874         (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
   10875         (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
   10876 
   10877         This is another name change. closeRenderer() is now 
   10878         finishedParsing()
   10879         * dom/Node.h:
   10880         (WebCore::Node::finishedParsing):
   10881         * dom/XMLTokenizer.cpp:
   10882         (WebCore::XMLTokenizer::endElementNs):
   10883         (WebCore::):
   10884         * html/HTMLAppletElement.cpp:
   10885         (WebCore::HTMLAppletElement::finishedParsing):
   10886         * html/HTMLAppletElement.h:
   10887         * html/HTMLGenericFormElement.cpp:
   10888         (WebCore::HTMLFormControlElementWithState::finishedParsing):
   10889         * html/HTMLGenericFormElement.h:
   10890         * html/HTMLObjectElement.cpp:
   10891         (WebCore::HTMLObjectElement::finishedParsing):
   10892         * html/HTMLObjectElement.h:
   10893         * html/HTMLParser.cpp:
   10894         (WebCore::HTMLParser::insertNode):
   10895         (WebCore::HTMLParser::popOneBlockCommon):
   10896         * html/HTMLScriptElement.cpp:
   10897         (WebCore::HTMLScriptElement::finishedParsing):
   10898         * html/HTMLScriptElement.h:
   10899         (WebCore::HTMLStyleElement::setCreatedByParser):
   10900         * ksvg2/svg/SVGAnimationElement.cpp:
   10901         (WebCore::SVGAnimationElement::finishedParsing):
   10902         * ksvg2/svg/SVGAnimationElement.h:
   10903         * ksvg2/svg/SVGElement.cpp:
   10904         (WebCore::SVGElement::finishedParsing):
   10905         * ksvg2/svg/SVGElement.h:
   10906 
   10907 2007-08-15  David Harrison  <harrison (a] apple.com>
   10908 
   10909         Reviewed by Antti Koivisto.
   10910 
   10911         <rdar://problem/5411803> Bumpercar crashes when loading a partial URL (FrameLoader::receivedMainResourceError())
   10912 
   10913         * loader/MainResourceLoader.cpp:
   10914         (WebCore::MainResourceLoader::receivedError):
   10915         Nil check for the FrameLoader.
   10916 
   10917 2007-08-14  Steve Falkenburg  <sfalken (a] apple.com>
   10918 
   10919         <rdar://problem/5411482> Windows user agent language always returns "en"
   10920         
   10921         Implement defaultLanguage().
   10922 
   10923         Reviewed by Oliver.
   10924 
   10925         * WebCore.vcproj/WebCore.vcproj: Added Language.cpp.
   10926         * platform/win/Language.cpp: Added.
   10927         (WebCore::localeInfo): Added.
   10928         (WebCore::defaultLanguage): Added.
   10929         * platform/win/TemporaryLinkStubs.cpp: Remove defaultLanguage stub.
   10930 
   10931 2007-08-14  Sam Weinig  <sam (a] webkit.org>
   10932 
   10933         Reviewed by Geoff and Oliver.
   10934 
   10935         Fix for <rdar://problem/5267870>
   10936         Mangleme: Reproducible assertion failure in -[WebCoreFrameBridge installInFrame:]
   10937 
   10938         - Change embed/plugin code path to detach the frame on willRemove instead of detach.
   10939           This matches what frame and iframe do.
   10940 
   10941         Test: http/tests/misc/embedCrasher.html
   10942 
   10943         * html/HTMLPlugInElement.cpp:
   10944         (WebCore::HTMLPlugInElement::willRemove):
   10945         * html/HTMLPlugInElement.h:
   10946 
   10947 2007-08-14  Adele Peterson  <adele (a] apple.com>
   10948 
   10949         Reviewed by Maciej.
   10950 
   10951         Fix for <rdar://problem/5370059> REGRESSION: Cannot type into edit fields on a form (sccsheriff.org)
   10952 
   10953         This change makes -webkit-user-select an inherited css property.  For "user-select: none" we were already 
   10954         acting like it was an inheritable property, where we let user-select:text on the children override its parent's user-select:none.
   10955         By making user-select really inherited (instead of inherited for some values), we eliminate the need for crawling up the tree to see 
   10956         if an ancestor has user-select ignore set.
   10957 
   10958         * page/EventHandler.cpp: (WebCore::EventHandler::canMouseDownStartSelect):
   10959           Now that user-select is inherited, you don't need to walk up the render tree looking for ancestors with user-select:ignore set.
   10960 
   10961         * css/CSSStyleSelector.cpp: Eliminate SELECT_AUTO.
   10962         (WebCore::CSSStyleSelector::adjustRenderStyle):
   10963         (WebCore::CSSStyleSelector::applyProperty):
   10964         * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   10965 
   10966         * rendering/RenderStyle.h:
   10967         (WebCore::): Eliminate SELECT_AUTO.  Make userSelect inherited.
   10968         (WebCore::RenderStyle::userSelect):
   10969         (WebCore::RenderStyle::setUserSelect):
   10970         (WebCore::RenderStyle::initialUserSelect):
   10971         * rendering/RenderStyle.cpp:
   10972         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   10973         (WebCore::StyleRareNonInheritedData::operator==):
   10974         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
   10975         (WebCore::StyleRareInheritedData::operator==):
   10976         (WebCore::RenderStyle::diff):
   10977 
   10978 2007-08-15  Peter Kasting  <pkasting (a] google.com>
   10979 
   10980         Reviewed by Darin.
   10981         
   10982         http://bugs.webkit.org/show_bug.cgi?id=14967 part 1 - Eliminate most implicit
   10983         conversions of wtf::Vector<T> to T* by explicitly calling .data()
   10984 
   10985         * html/HTMLSelectElement.cpp:
   10986         (WebCore::HTMLSelectElement::saveState):
   10987         * platform/KURL.cpp:
   10988         (WebCore::KURL::KURL):
   10989         (WebCore::KURL::init):
   10990         (WebCore::KURL::decode_string):
   10991         (WebCore::KURL::parse):
   10992         (WebCore::KURL::encode_string):
   10993         * platform/cf/KURLCFNet.cpp:
   10994         (WebCore::KURL::KURL):
   10995         * platform/mac/KURLMac.mm:
   10996         (WebCore::KURL::KURL):
   10997         * rendering/RenderFrameSet.cpp:
   10998         (WebCore::RenderFrameSet::layOutAxis):
   10999 
   11000 2007-08-14  Ricci Adams  <iccir (a] apple.com>
   11001 
   11002         Reviewed by Darin, Hyatt.
   11003 
   11004         - fix <rdar://problem/5407795> -apple-line-clamp should never display less than one line
   11005 
   11006         * rendering/RenderFlexibleBox.cpp:(WebCore::RenderFlexibleBox::layoutVerticalBox): Use
   11007         max to make sure it never computes a minimum of less than one line.
   11008 
   11009 2007-08-14  Brady Eidson  <beidson (a] apple.com>
   11010 
   11011         Reviewed by Darin, John, Maciej, Oliver, and Tim
   11012 
   11013         <rdar://problem/5394708> - Crash on launch with corrupt icon database
   11014 
   11015         The main part of the fix is to not disable SQLite's default level of protection - to leave the sync options at their normal,
   11016         mostly safe levels.  
   11017 
   11018         But in case lightning strikes at the exact right moment and someone ends up with a corrupt database, add some support code to
   11019         detect that condition and recover from it.  
   11020 
   11021         This is mainly accomplished by exposing the "PRAGMA integrity_check;" facilities of sqlite through IconDatabase SPI as well as
   11022         running that integrity check if a journal file is detected at launch (a strong indication that the last quit was not clean).
   11023         There's also a method exposed to allow clients to tell the icon database "I suspect something bad happened, please check integrity"
   11024 
   11025         * loader/icon/IconDatabase.cpp:
   11026         (WebCore::IconDatabase::checkIntegrityBeforeOpening): Allow clients to suggest an integrity check
   11027         (WebCore::IconDatabase::open): Add a check to see if the journal file for the database exists.  If it does, run the integrity
   11028           check.  Also run the check if a client has suggested it to be necessary.
   11029           If the integrity-check fails, we sadly have to destroy the database and recreate from scratch.
   11030           Also - quite importantly - do not adjust the default sync preferences for the SQLDatabase.  They were an optimization that 
   11031           might have been valid at one time but no longer affects any benchmarks we care about.
   11032         (WebCore::IconDatabase::checkIntegrity): Perform the SQLite integrity_check pragma
   11033         * loader/icon/IconDatabase.h:
   11034 
   11035         * loader/icon/IconDatabaseNone.cpp:
   11036         (WebCore::IconDatabase::checkIntegrity): Keep IconDatabaseNone users building
   11037         (WebCore::IconDatabase::checkIntegrityBeforeOpening): Ditto
   11038 
   11039         * loader/icon/SQLDatabase.cpp:
   11040         (WebCore::SQLDatabase::open): Make a copy of the path string so we don't accidentally mutate anyone else's string on ::close()
   11041 
   11042         * platform/FileSystem.h: Added. Begin a long-needed platform file system abstraction
   11043         * platform/mac/FileSystemMac.mm: Added.
   11044         (WebCore::fileExists): Check if a file exists
   11045         (WebCore::deleteFile): Delete a file
   11046 
   11047         * platform/gdk/TemporaryLinkStubs.cpp:
   11048         (WebCore::fileExists):
   11049         (WebCore::deleteFile):
   11050         * platform/qt/TemporaryLinkStubs.cpp:
   11051         (WebCore::fileExists):
   11052         (WebCore::deleteFile):
   11053         * platform/win/TemporaryLinkStubs.cpp:
   11054         (WebCore::fileExists):
   11055         (WebCore::deleteFile):
   11056 
   11057         * WebCore.exp:
   11058         * WebCore.xcodeproj/project.pbxproj:
   11059 
   11060 2007-08-14  Jon Honeycutt  <jhoneycutt (a] apple.com>
   11061 
   11062         Reviewed by Steve.
   11063 
   11064         Build fix for Windows.
   11065 
   11066         * html/HTMLFormElement.cpp:
   11067 
   11068 2007-08-14  George Staikos  <staikos (a] kde.org>
   11069 
   11070         Only connect the menu signal once.
   11071 
   11072         * platform/qt/ContextMenuQt.cpp:
   11073         (WebCore::ContextMenu::ContextMenu):
   11074         (WebCore::ContextMenu::insertItem):
   11075 
   11076 2007-08-14  Justin Garcia  <justin.garcia (a] apple.com>
   11077 
   11078         Reviewed by Tim.
   11079 
   11080         <rdar://problem/5408255> REGRESSION: In Mail, clicking the containing element's UI closebox doesn't delete element
   11081 
   11082         * editing/DeleteButtonController.cpp:
   11083         (WebCore::DeleteButtonController::show): Use -webkit-user-select:ignore for
   11084         the deletion UI.
   11085 
   11086 2007-08-14  Antti Koivisto  <antti (a] apple.com>
   11087 
   11088         Reviewed by Darin.
   11089         
   11090         Fix <rdar://problem/5143183>
   11091         Air Mail postmark shows up wrong in Firefox due to use of CSS background-position-x/y
   11092         
   11093         Safari was using non-standard background-position-x/y properties when serializing style, both normal 
   11094         and computed. As a result Safari generated CSS would not render correctly in Firefox. 
   11095         
   11096         Use standard background-position property instead.
   11097 
   11098         * css/CSSComputedStyleDeclaration.cpp:
   11099         (WebCore::):
   11100         * css/CSSMutableStyleDeclaration.cpp:
   11101         (WebCore::CSSMutableStyleDeclaration::cssText):
   11102 
   11103 2007-08-14  Sam Weinig  <sam (a] webkit.org>
   11104 
   11105         Reviewed by Brady and Dr. Harrison.
   11106 
   11107         Fix typo.  'whitespace' property is spelled 'white-space'.
   11108 
   11109         * page/inspector/inspector.css:
   11110 
   11111 2007-08-13  Beth Dakin  <bdakin (a] apple.com>
   11112 
   11113         Reviewed by Maciej.
   11114 
   11115         Fix for <rdar://problem/5404899> REGRESSION: Mail crash in 
   11116         WebCore::FontFallbackList::fontDataAt() after dragging image into 
   11117         text multiple times
   11118 
   11119         We were crashing because style information was not up-to-date. This 
   11120         patch fixes the problem in two ways:
   11121 
   11122         Style information was not up to date at the time of the crash 
   11123         because the document thought there was still a pending style sheet. 
   11124         The pending style sheet counter was incremented when a call to 
   11125         cloneNode from Mail cloned a style node with an imported style 
   11126         sheet. Because Mail disables the cache, the style sheet did not 
   11127         load immediately for the cloned node, and we do not check again to 
   11128         see if it has loaded in time to decrement the pending style sheet 
   11129         counter before the crash point. The fix here is only to increment 
   11130         the pending style sheet counter for elements that are already in 
   11131         the document.
   11132         * dom/StyleElement.cpp:
   11133         (WebCore::StyleElement::insertedIntoDocument): If we have a CSS 
   11134         style sheet that is currently loading, increment the pending style 
   11135         sheet counter. This should keep the counter accurate in the case 
   11136         where a style node is cloned and then immediately inserted into the 
   11137         document.
   11138         (WebCore::StyleElement::removedFromDocument): If we have a CSS 
   11139         style sheet that is currently loading, decrement the pending style 
   11140         sheet count. This is required to keep the correct balance, given 
   11141         the change above.
   11142         (WebCore::StyleElement::createSheet): Only addPendingSheet() and 
   11143         checkLoaded() if we are in the document.
   11144 
   11145         Here is Darin's original fix. It seems worth keeping this fix too. 
   11146         Font style information should not cause a crash if there are still 
   11147         pending style sheets. This is good belt-and-suspenders in case 
   11148         there is another way to run into this bug with a wacky timing 
   11149         issue.
   11150         * css/CSSStyleSelector.cpp:
   11151         (WebCore::CSSStyleSelector::styleForElement): Update the font.
   11152 
   11153 2007-08-13  Alexey Proskuryakov  <ap (a] webkit.org>
   11154 
   11155         Reviewed by Darin.
   11156 
   11157         http://bugs.webkit.org/show_bug.cgi?id=14635
   11158         rdar://problem/5340188
   11159         Uploading file with non-ASCII character in path fails
   11160 
   11161         File upload cannot be tested in DumpRenderTree.
   11162 
   11163         * html/HTMLFormElement.cpp:
   11164         (WebCore::pathGetFilename): A cross-platform helper that extracts a file name from a path.
   11165         (WebCore::HTMLFormElement::formData): Use the above helper instead of code that doesn't
   11166         work on Windows.
   11167 
   11168 2007-08-13  Alexey Proskuryakov  <ap (a] webkit.org>
   11169 
   11170         Reviewed by Darin.
   11171 
   11172         http://bugs.webkit.org/show_bug.cgi?id=14951
   11173         REGRESSION: page interpreted as UTF-8 because of stray <?xml> after <head>
   11174 
   11175         Test: fast/encoding/misplaced-xml-declaration.html
   11176 
   11177         * loader/TextResourceDecoder.cpp:
   11178         (WebCore::TextResourceDecoder::checkForHeadCharset): Only honor XML declaration
   11179         at the very beginning of the file.
   11180 
   11181 2007-08-13  Oliver Hunt  <oliver (a] apple.com>
   11182 
   11183         rs=sam
   11184 
   11185         Correct accidentally modified code.
   11186 
   11187         * platform/mac/FontDataMac.mm:
   11188         (WebCore::FontData::platformInit):
   11189 
   11190 2007-08-13  Adele Peterson  <adele (a] apple.com>
   11191 
   11192         Reviewed by Brady.
   11193 
   11194         Fix for http://bugs.webkit.org/show_bug.cgi?id=14746
   11195         <rdar://problem/5401041> REGRESSION: Form state not saved for forms that submit via HTTPS even if they do not contain a password field
   11196 
   11197         * loader/FrameLoader.cpp: (WebCore::FrameLoader::saveDocumentState): Restore our old behavior that will save form state for secure forms.
   11198           This will also match Firefox behavior.
   11199 
   11200         * dom/Document.cpp: Removed secureFormAdded(), secureFormRemoved(), hasSecureForm() which are no longer used.
   11201         * dom/Document.h:
   11202         * html/HTMLFormElement.cpp:
   11203         (WebCore::HTMLFormElement::attach):
   11204         (WebCore::HTMLFormElement::parseMappedAttribute):
   11205 
   11206 2007-08-13  Oliver Hunt  <oliver (a] apple.com>
   11207 
   11208         Reviewed by Maciej.
   11209 
   11210         <rdar://problem/5386183> REGRESSION (9A504-9A508): Underline of inline hole is too thin 
   11211         on Japanese DotMac page
   11212         
   11213         Hack the line metrics for the Hiragino font families so that they always allow space for
   11214         the marked text underline.
   11215         
   11216         * platform/mac/FontDataMac.mm:
   11217         (WebCore::FontData::platformInit):
   11218 
   11219 2007-08-13  David Hyatt  <hyatt (a] apple.com>
   11220 
   11221         Reviewed by aroben
   11222  
   11223         <rdar://problem/5400446> messed up content on calendar.yahoo.com and my.yahoo.com
   11224 
   11225         Fix some more bad assumptions about <html> being the first child of the document now that we
   11226         properly support HTML5's model (where a comment node preceding <html> will in fact be its sibling).
   11227 
   11228         * html/HTMLParser.cpp:
   11229         (WebCore::HTMLParser::handleError):
   11230         (WebCore::HTMLParser::createHead):
   11231 
   11232 2007-08-13  Justin Garcia  <justin.garcia (a] apple.com>
   11233 
   11234         Reviewed by Darin.
   11235         
   11236         <rdar://problem/5333725> -webkit-user-select: none makes selection difficult
   11237         
   11238         Let users create selections if they mouse down in a -webkit-user-select:none
   11239         region, just (continue to) disallow selection endpoints in those regions, and
   11240         don't paint those regions as selected if they are fully enclosed by a selection. 
   11241         For example, in xxyyyxx where x is -webkit-user-select:none, a user can mouse down
   11242         between the first two xs and drag across yyy to the second two xs to create a 
   11243         selection xx^yyy^xx.
   11244         
   11245         * editing/SelectionController.cpp:
   11246         (WebCore::SelectionController::selectAll): Allow selectAll inside a root
   11247         that has -webkit-user-select:none, because it may contain content that
   11248         is selectable (VisiblePosition and Selection creation will keep Selection
   11249         endpoints out of -webkit-user-select:none regions).
   11250         * page/EventHandler.cpp:
   11251         (WebCore::EventHandler::selectClosestWordFromMouseEvent): Use canMouseDownStartSelect
   11252         instead of the ambiguously named shouldSelect().
   11253         (WebCore::EventHandler::handleMousePressEventTripleClick): Ditto.
   11254         (WebCore::EventHandler::handleMousePressEventSingleClick): Ditto.
   11255         (WebCore::EventHandler::updateSelectionForMouseDrag): Use canMouseDragExtendSelect.
   11256         (WebCore::EventHandler::selectCursor): Paint an ibeam in -webkit-user-select:none regions,
   11257         because you can click in those regions to create a selection.
   11258         (WebCore::EventHandler::canMouseDownStartSelect): Now fires the selectStart event, and
   11259         returns true in -webkit-user-select: none regions.
   11260         (WebCore::EventHandler::canMouseDragExtendSelect): This is identical to 
   11261         canMouseDownStartSelect because of 12823, even though it seems strange that we would fire 
   11262         the selectStart event here.
   11263         * page/EventHandler.h:
   11264         * rendering/RenderObject.cpp:
   11265         (WebCore::RenderObject::draggableNode): Only -webkit-user-select:ignore regions will
   11266         prevent selection creation.
   11267         * rendering/RenderObject.h:
   11268 
   11269 2007-08-13  Anders Carlsson  <andersca (a] apple.com>
   11270 
   11271         Reviewed by Maciej.
   11272 
   11273         <rdar://problem/5360748>
   11274         REGRESSION (r21002-r21003): Flash widget sniffer doesn't work (affects iWeb)
   11275 
   11276         Don't check whether the document is being parsed or not, because the node list
   11277         could be accessed after the document has finished parsing.
   11278         
   11279         * dom/Node.cpp:
   11280         (WebCore::Node::registerNodeList):
   11281 
   11282 2007-08-13  Lars Knoll  <lars (a] trolltech.com>
   11283 
   11284         Reviewed by Simon.
   11285 
   11286         no need to update regions that are not visible on the webpage.
   11287 
   11288         * platform/qt/ScrollViewQt.cpp:
   11289         (WebCore::ScrollView::updateContents):
   11290 
   11291 2007-08-12  Maciej Stachowiak  <mjs (a] apple.com>
   11292 
   11293         Reviewed by Darin and Sam.
   11294         
   11295         <rdar://problem/5395213> cross-domain access to individual components of location object should be denied.
   11296 
   11297         * bindings/js/kjs_window.cpp:
   11298         (KJS::Location::put): Add the appropriate cross-domain access checks.
   11299 
   11300 2007-08-12  Darin Adler  <darin (a] apple.com>
   11301 
   11302         Reviewed by John Sullivan.
   11303 
   11304         - fix <rdar://problem/5403724> REGRESSION: text inputs are not scrolled to make inline input visible (14912)
   11305 
   11306         * editing/Editor.h: Made setIgnoreMarkedTextSelectionChange no longer inline.
   11307         It now has a side effect of revealing the selection when you set it to false.
   11308         Added private revealSelectionAfterEditingOperation helper.
   11309         * editing/Editor.cpp:
   11310         (WebCore::Editor::deleteRange): Calls revealSelectionAfterEditingOperation instead
   11311         of calling m_frame->revealSelection directly.
   11312         (WebCore::Editor::replaceSelectionWithFragment): Ditto.
   11313         (WebCore::Editor::insertOrderedList): Ditto.
   11314         (WebCore::Editor::insertUnorderedList): Ditto.
   11315         (WebCore::Editor::increaseSelectionListLevel): Ditto.
   11316         (WebCore::Editor::increaseSelectionListLevelOrdered): Ditto.
   11317         (WebCore::Editor::increaseSelectionListLevelUnordered): Ditto.
   11318         (WebCore::Editor::decreaseSelectionListLevel): Ditto.
   11319         (WebCore::Editor::insertLineBreak): Ditto.
   11320         (WebCore::Editor::insertParagraphSeparator): Ditto.
   11321         (WebCore::Editor::replaceMarkedText): Ditto.
   11322         (WebCore::Editor::revealSelectionAfterEditingOperation): Added. Calls revealSelection,
   11323         unless we are in the ignoreMarkedTextSelectionChange state. If we are in that state,
   11324         we're in the middle of a composite editing operation and we shouldn't try to scroll
   11325         to reveal the selection until the operation is done.
   11326         (WebCore::Editor::setIgnoreMarkedTextSelectionChange): Made no longer inline. If
   11327         changing the state from true to false, then calls revealSelectionAfterEditingOperation.
   11328 
   11329         * WebCore.exp: Add new entry point for no-longer-inline setter function.
   11330 
   11331 2007-08-12  Geoffrey Garen  <ggaren (a] apple.com>
   11332 
   11333         Reviewed by Maciej Stachowiak, Dave Hyatt.
   11334         
   11335         Changed the dead resource LRU-SP algorithm to measure an object's
   11336         total size, not just its encoded size. This will allow us to make 
   11337         better decisions about what data to evict when the cache is small. For 
   11338         example, the PLT can now run with a 16MB cache without fully evicting
   11339         any resources.
   11340         
   11341         (Previously, we had assumed that decoded size would be an OK estimate
   11342         of encoded size, but that is not true of GIF, whose decoded size can be 
   11343         orders of magnitude greater than its encoded size.)
   11344         
   11345         Subtly, destroying a resource's decoded data now increases its recency 
   11346         by moving it to the head of a smaller LRU list. This is slightly odd,
   11347         but, since all resources get the same treatment, it shouldn't hurt 
   11348         the eviction algorithm.
   11349 
   11350         * history/PageCache.cpp:
   11351         (WebCore::PageCache::releaseAutoreleasedPagesNow): Make sure that a
   11352         dead resource eviction doesn't happen until we've released all of our
   11353         dead pages. Otherwise, the cache will make terrible decisions about 
   11354         what to evict because all of our dead resources will seem live.
   11355 
   11356         * loader/Cache.cpp:
   11357         (WebCore::Cache::Cache):
   11358         (WebCore::Cache::pruneLiveResources):
   11359         (WebCore::Cache::pruneDeadResources): Removed call to 
   11360         removeFromLiveDecodedResourcesList because this happens automatically
   11361         now as a part of the process of changing the resource's decoded size.
   11362         (WebCore::Cache::lruListFor): *** The key change. *** Compute the 
   11363         appropriate LRU list based on total size, not encoded size.
   11364         (WebCore::Cache::dumpLRULists): Added debug logging function to help
   11365         visualize the cache.
   11366 
   11367         * loader/Cache.h:
   11368         (WebCore::Cache::setDeadResourcePruneEnabled):
   11369         (WebCore::Cache::deadResourcePruneEnabled):
   11370 
   11371         * loader/CachedImage.cpp: Moved decoded size tracking code from here
   11372         up into the base class. Currently, only CachedImage has a use for that
   11373         functionality, but other subclasses might need it in the future, and
   11374         the base class is already responsible for similar code related to 
   11375         encoded size tracking.
   11376         (WebCore::CachedImage::decodedSizeChanged):
   11377         * loader/CachedImage.h:
   11378 
   11379         * loader/CachedResource.cpp:
   11380         (WebCore::CachedResource::CachedResource):
   11381         (WebCore::CachedResource::setDecodedSize): Move us in the LRU-SP list
   11382         just like setEncodedSize does, since decoded size counts now, too.
   11383         (WebCore::CachedResource::setEncodedSize): Changed slightly to match
   11384         the style of setDecodedSize.
   11385 
   11386         * loader/CachedResource.h:
   11387         (WebCore::CachedResource::decodedSize):
   11388 
   11389 2007-08-11  Mitz Pettel  <mitz (a] webkit.org>
   11390 
   11391         Reviewed by Darin.
   11392 
   11393         - fix http://bugs.webkit.org/show_bug.cgi?id=13670
   11394           <rdar://problem/5399619> Table misrender when one of the TDs has width=100%
   11395 
   11396         Tests: fast/table/100-percent-cell-width.html
   11397                fast/table/percent-widths-stretch.html
   11398 
   11399         * rendering/AutoTableLayout.cpp:
   11400         (WebCore::AutoTableLayout::calcPrefWidths): Changed the value used instead of
   11401         0% to avoid division by zero from 1% to less than 0.01%. Removed code that
   11402         added 0.5px to non-percent widths when calculating the scaling factor. The
   11403         latter change is covered by the percent-widths-stretch test, where the new
   11404         results match both WinIE 7 and Firefox 3.
   11405 
   11406 2007-08-11  Darin Adler  <darin (a] apple.com>
   11407 
   11408         Reviewed by Antti.
   11409 
   11410         - fix <rdar://problem/5266535> REGRESSION: <img> inside <map> no longer allowed in strict mode
   11411           (breaks chemicalelements.com)
   11412 
   11413         Test: fast/parser/strict-img-in-map.html
   11414 
   11415         * html/HTMLMapElement.cpp: (WebCore::HTMLMapElement::checkDTD): Removed FIXME saying this
   11416         code is strange, since this code matches the HTML 4 specification almost exactly. Made
   11417         <img> elements allowed even in strict mode and added small comments to clarify what comes
   11418         from the DTD and what is non-standard.
   11419 
   11420 2007-08-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11421 
   11422         Reviewed by Anders.
   11423 
   11424         Implement passing events to a subframe. The code is copied from
   11425         the windows port and passSubframeEventToSubframe was removed as it
   11426         is not called and it is not avilable in the windows port as well.
   11427 
   11428         * page/gdk/EventHandlerGdk.cpp:
   11429         (WebCore::EventHandler::passMousePressEventToSubframe):
   11430         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   11431         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
   11432 
   11433 2007-08-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11434 
   11435         Reviewed by Lars.
   11436 
   11437         GdkEventKey::string is not supposed to be used. The length
   11438         of this string is zero for non ascii characters. Use the
   11439         gdk_unicode_to_keyval to convert the keyval to a UChar and construct
   11440         a String. This change makes it possible to input non ascii
   11441         characters.
   11442 
   11443         * platform/gdk/KeyEventGdk.cpp:
   11444         (WebCore::keyIdentifierForGdkKeyCode):
   11445         (WebCore::singleCharacterString):
   11446         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   11447 
   11448 2007-08-11  Andrew Wellington  <proton (a] wiretapped.net>
   11449 
   11450         Reviewed by Mark Rowe.
   11451         
   11452         Fix http://bugs.webkit.org/show_bug.cgi?id=14645
   11453         getPropertyValue should be case insensitive
   11454         
   11455         When we get the propertyID for a given string we convert to lowercase.
   11456         
   11457         This also applies to setProperty, removeProperty and others.
   11458         
   11459         * css/CSSStyleDeclaration.cpp:
   11460         (WebCore::propertyID):
   11461 
   11462 2007-08-11  Mark Rowe  <mrowe (a] apple.com>
   11463 
   11464         Build fix.  Change "#ifdef PLATFORM(GDK)" to "#if PLATFORM(GDK)".
   11465 
   11466         * page/FrameView.cpp:
   11467         * page/FrameView.h:
   11468 
   11469 2007-08-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11470 
   11471         Reviewed by Adam.
   11472 
   11473         Copy the WebFrame::layoutIfNeededRecursive method of the windows port
   11474         to FrameView to be used by the Gtk+ port. Simplify the implementation due
   11475         moving it to the FrameView class.
   11476 
   11477         Implement the ScrollView::children() method for the Gtk+ port and make it
   11478         available to the FrameView as children() is used within the layoutIfNeededRecursive method.
   11479 
   11480         * page/FrameView.cpp:
   11481         (WebCore::FrameView::layoutIfNeededRecursive):
   11482         * page/FrameView.h:
   11483         * platform/ScrollView.h:
   11484         * platform/gdk/ScrollViewGdk.cpp:
   11485 
   11486 2007-08-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11487 
   11488         Reviewed by Adam.
   11489 
   11490         To fix text selection make the PlatformMouseEvent set the pressed
   11491         button even when moving the mouse.
   11492         
   11493         Add building of the WebKit::DragClient stubs as they are needed to
   11494         make text selection work.
   11495 
   11496         * WebCore.pro:
   11497         * platform/gdk/MouseEventGdk.cpp:
   11498         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   11499 
   11500 2007-08-10  Anders Carlsson  <andersca (a] apple.com>
   11501 
   11502         Reviewed by Darin and Maciej.
   11503 
   11504         <rdar://problem/5360748>
   11505         REGRESSION(r21002-r21003) Flash widget sniffer doesn't work
   11506         
   11507         Add a per-document NodeList counter. When parsing, only call notifyNodeListsChildrenChanged
   11508         if the document has node lists. Also, make sure to reset the cache when the node list count has 
   11509         been 0 and a new node list is registered to avoid any stale cache information.
   11510         
   11511         * dom/ContainerNode.cpp:
   11512         (WebCore::ContainerNode::addChild):
   11513         * dom/Document.cpp:
   11514         (WebCore::Document::Document):
   11515         * dom/Document.h:
   11516         (WebCore::Document::addNodeList):
   11517         (WebCore::Document::removeNodeList):
   11518         (WebCore::Document::hasNodeLists):
   11519         * dom/Node.cpp:
   11520         (WebCore::Node::registerNodeList):
   11521         (WebCore::Node::unregisterNodeList):
   11522 
   11523 2007-08-10  Timothy Hatcher  <timothy (a] apple.com>
   11524 
   11525         Reviewed by Adam.
   11526 
   11527         <rdar://problem/5394449> Stop using some Carbon UI APIs for 64 bit
   11528 
   11529         Disable NPObject use in 64-bit on Mac OS X.
   11530 
   11531         * Configurations/WebCore.xcconfig: Add a framework search path to the sub-framworks of Carbon.
   11532         * WebCore.xcodeproj/project.pbxproj: Filter out the Frame::windowScriptNPObject() symbol in 64-bit.
   11533         * bindings/objc/DOM.mm:
   11534         (-[DOMElement _NPObject]): Return null in 64-bit.
   11535         * config.h: Set WTF_USE_NPOBJECT to 0 in 64-bit Mac OS X.
   11536         * page/Frame.cpp:
   11537         (WebCore::Frame::cleanupScriptObjects): Add more #if USE(NPOBJECT) blocks where needed.
   11538         * page/Frame.h: Ditto.
   11539         * page/mac/FrameMac.mm:
   11540         (WebCore::Frame::createScriptInstanceForWidget): Ditto.
   11541         * page/mac/WebCoreFrameBridge.h: Ditto.
   11542         * page/mac/WebCoreFrameBridge.mm: Ditto.
   11543 
   11544 2007-08-10  Mitz Pettel  <mitz (a] webkit.org>
   11545 
   11546         Reviewed by Justin.
   11547 
   11548         - fix <rdar://problem/5397344> http://bugs.webkit.org/show_bug.cgi?id=14911
   11549           REGRESSION: Clicking in pasted text doesn't position the insertion point correctly
   11550 
   11551         Test: editing/selection/inline-closest-leaf-child.html
   11552 
   11553         * rendering/RootInlineBox.cpp:
   11554         (WebCore::RootInlineBox::closestLeafChildForXPos): Return the last leaf if
   11555         it's the closest match, or if no other leaf matches (for example if all
   11556         leaves are list markers or non-editable where editable is required).
   11557 
   11558 2007-08-10  Anders Carlsson  <andersca (a] apple.com>
   11559 
   11560         Reviewed by Geoff.
   11561 
   11562         <rdar://problem/5390568> 
   11563         REGRESSION: -[WebFrame loadHTMLString:baseURL:] leaks the data source.
   11564         
   11565         Revert the fix for <rdar://problem/5133420> which caused us to not cancel 
   11566         substitute data loads. It's better to remove the assertion in the WebKit layer.
   11567         
   11568         * loader/ResourceLoader.cpp:
   11569         (WebCore::ResourceLoader::didCancel):
   11570 
   11571 2007-08-10  Sam Weinig  <sam (a] webkit.org>
   11572 
   11573         Rubber-stamped by Adam Roben.
   11574 
   11575         Fix Windows, Qt and Gtk build.
   11576 
   11577         * WebCore.pro:
   11578         * WebCore.vcproj/WebCore.vcproj:
   11579 
   11580 2007-08-09  Sam Weinig  <sam (a] webkit.org>
   11581 
   11582         Reviewed by Maciej.
   11583 
   11584         Fix for <rdar://problem/5395618>
   11585 
   11586         Use checkNodeSecurity when setting the 'src' or 'location' attribute of an
   11587         iframe or frame element.  
   11588 
   11589         * WebCore.xcodeproj/project.pbxproj:
   11590         * bindings/js/JSAttrCustom.cpp: Added.
   11591         (WebCore::JSAttr::setValue): Call checkNodeSecurity for attributes with a current iframe or frame
   11592         ownerElement when setting src to a javascript: URL.
   11593         * bindings/js/JSElementCustom.cpp: Added.
   11594         (WebCore::allowSettingSrcToJavascriptURL):
   11595         (WebCore::JSElement::setAttribute): Call checkNodeSecurity when element is a frame or iframe and 
   11596         setting he src attribute to a javascript: URL.
   11597         (WebCore::JSElement::setAttributeNode): Ditto.
   11598         (WebCore::JSElement::setAttributeNS): Ditto.
   11599         (WebCore::JSElement::setAttributeNodeNS): Ditto.
   11600         * bindings/js/JSHTMLFrameElementCustom.cpp: Added.
   11601         (WebCore::allowSettingJavascriptURL):
   11602         (WebCore::JSHTMLFrameElement::setSrc): Call checkNodeSecurity when setting to a javascript: URL.
   11603         (WebCore::JSHTMLFrameElement::setLocation): Ditto.
   11604         * bindings/js/JSHTMLIFrameElementCustom.cpp: Added.
   11605         (WebCore::JSHTMLIFrameElement::setSrc): Call checkNodeSecurity when setting to a javascript: URL.
   11606         * bindings/scripts/CodeGeneratorJS.pm: Add support for [CustomGetter] and [CustomSetter]
   11607         * dom/Attr.idl:
   11608         * dom/Element.idl:
   11609         * html/HTMLFrameElement.idl:
   11610         * html/HTMLIFrameElement.idl:
   11611 
   11612 2007-08-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11613 
   11614         Reviewed by Anders.
   11615 
   11616         Make the containingWindow a GtkContainer and make use of the
   11617         GtkWidget::window instead of the GtkLayout::bin_window.
   11618 
   11619         * platform/Widget.h:
   11620         * platform/gdk/PlatformScreenGdk.cpp:
   11621         (WebCore::screenDepth):
   11622         * platform/gdk/ScrollViewGdk.cpp:
   11623         (WebCore::ScrollView::updateContents):
   11624         (WebCore::ScrollView::update):
   11625         * platform/gdk/WidgetGdk.cpp:
   11626         (WebCore::Widget::setContainingWindow):
   11627         (WebCore::Widget::setCursor):
   11628 
   11629 2007-08-10  Simon Hausmann  <hausmann (a] kde.org>
   11630 
   11631         Reviewed by Lars.
   11632 
   11633         Revert r24699 as it broke timers. The precision of QTime::toTime_t() is just seconds, which is not good enough. Revert back
   11634         to the old implementation and use the simple implementation of currentTime() from win/ for the Qt/Windows build (fingers crossed :)
   11635 
   11636         * WebCore.pro:
   11637         * platform/qt/SystemTimeQt.cpp:
   11638         (WebCore::currentTime):
   11639 
   11640 2007-08-10  Simon Hausmann  <hausmann (a] kde.org>
   11641 
   11642         Reviewed by Lars.
   11643 
   11644         Recognize .htm as valid extension for text/html.
   11645 
   11646         * platform/qt/MIMETypeRegistryQt.cpp:
   11647         (WebCore::):
   11648 
   11649 2007-08-10  Lars Knoll  <lars (a] trolltech.com>
   11650 
   11651         Reviewed by Simon.
   11652 
   11653         remove an assertion that leads to crashes. The whole design of WidgetQt and ScrollViewQt needs to be reevaluated soon anyways.
   11654 
   11655         * platform/qt/ScrollViewQt.cpp:
   11656 
   11657 2007-08-10  Mark Rowe  <mrowe (a] apple.com>
   11658 
   11659         Fix the Mac build.
   11660 
   11661         * ForwardingHeaders/bindings/runtime_object.h: Added.
   11662 
   11663 2007-08-10  Simon Hausmann  <hausmann (a] kde.org>
   11664 
   11665         Reviewed by Lars.
   11666 
   11667         Make sure -fno-strict-aliasing is also added for mkspecs like linux-g++-64.
   11668 
   11669         * WebCore.pro:
   11670 
   11671 2007-08-10  Simon Hausmann  <hausmann (a] kde.org>
   11672 
   11673         Reviewed by Lars.
   11674 
   11675         Enable JavaScript bindings for HTML Object/Applet elements in the Qt port.
   11676 
   11677         * WebCore.pro:
   11678         * bindings/js/kjs_dom.cpp:
   11679         * html/HTMLAppletElement.h:
   11680         * html/HTMLEmbedElement.h:
   11681         * page/qt/FrameQt.cpp:
   11682         (WebCore::Frame::createScriptInstanceForWidget):
   11683 
   11684 2007-08-10  Mitz Pettel  <mitz (a] webkit.org>
   11685 
   11686         Reviewed by Dave Hyatt.
   11687 
   11688         - fix http://bugs.webkit.org/show_bug.cgi?id=14798
   11689           Incorrect bidi reordering of neutrals and digits after RTL embed
   11690           and other bugs in the bidi algorithm.
   11691 
   11692         Test: fast/text/international/bidi-neutral-run.html
   11693 
   11694         Fixed several bugs in resolving the embedding level of runs of neutral
   11695         characters. Changed the logic to rely on the eor direction only for
   11696         the number types, and otherwise consider the last strong type.
   11697 
   11698         * platform/BidiContext.h:
   11699         (WebCore::BidiContext::BidiContext): Added an ASSERT.
   11700         * platform/BidiResolver.h:
   11701         (WebCore::::embed):
   11702         (WebCore::::createBidiRunsForLine):
   11703         * platform/graphics/GraphicsContext.cpp:
   11704         (WebCore::TextRunIterator::atEnd): Changed to return true instead of
   11705         crashing when called on the empty iterator.
   11706 
   11707 2007-08-09  Mark Rowe  <mrowe (a] apple.com>
   11708 
   11709         Reviewed by Antti.
   11710 
   11711         <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
   11712 
   11713         * Configurations/Version.xcconfig:
   11714         * WebCore.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
   11715         Version.xcconfig and Info.plist explicit to Xcode.
   11716 
   11717 2007-08-09  Mitz Pettel  <mitz (a] webkit.org>
   11718 
   11719         Reviewed by Justin Garcia.
   11720 
   11721         - fix http://bugs.webkit.org/show_bug.cgi?id=14347
   11722           REGRESSION (r21291): Initiating a drag near the edge of a selection deselects it
   11723 
   11724         Test: editing/selection/contains-boundaries.html
   11725 
   11726         * editing/SelectionController.cpp:
   11727         (WebCore::SelectionController::contains): Changed to return true for the
   11728         selection boundaries too.
   11729 
   11730 2007-08-09  Mitz Pettel  <mitz (a] webkit.org>
   11731 
   11732         Reviewed by Dave Hyatt.
   11733 
   11734         - fix http://bugs.webkit.org/show_bug.cgi?id=14742
   11735           Document::recalcStyle(Force) called for every updateStyleIgnorePendingStylesheets while waiting for stylesheets
   11736           <rdar://problem/5376306>
   11737 
   11738         updateStyleSelector() is normally called when something changes that factors
   11739         into the style selector. However, updateLayoutIgnorePendingStylesheets() calls it for
   11740         a different reason, namely to account for all the preceding changes that were ignored
   11741         because of the early return in updateStyleSelector(). After that, the early return
   11742         can no longer occur, so changes are accounted for as they happen, and
   11743         updateLayoutIgnorePendingStylesheets() does not need to call updateStyleSelector()
   11744         again.
   11745 
   11746         * dom/Document.cpp:
   11747         (WebCore::Document::updateLayoutIgnorePendingStylesheets): Call updateStyleSelector()
   11748         only before the first layout.
   11749 
   11750 2007-08-09  Mitz Pettel  <mitz (a] webkit.org>
   11751 
   11752         Reviewed by Adam Roben.
   11753 
   11754         - fix http://bugs.webkit.org/show_bug.cgi?id=14362
   11755           Opening a select list always highlights first element in list
   11756 
   11757         * platform/win/PopupMenuWin.cpp:
   11758         (WebCore::PopupWndProc): Track the mouse only inside the popup.
   11759 
   11760 2007-08-09  Mitz Pettel  <mitz (a] webkit.org>
   11761 
   11762         Reviewed by Dave Hyatt.
   11763 
   11764         - fix http://bugs.webkit.org/show_bug.cgi?id=14875
   11765           Textarea with nowrap - left/right nav, Up/down nav both hide text
   11766 
   11767         Test: fast/layers/scroll-rect-to-visible.html
   11768 
   11769         * rendering/RenderLayer.cpp:
   11770         (WebCore::RenderLayer::scrollRectToVisible): Account for borders and scroll bars.
   11771 
   11772 2007-08-09  Geoffrey Garen  <ggaren (a] apple.com>
   11773 
   11774         Reviewed by Dave Hyatt.
   11775         
   11776         Refactored live decoded resource eviction to be more modular / 
   11777         encapsulated. 
   11778         
   11779         This fixes one known place where we forgot to hook into the live 
   11780         decoded eviction mechanism -- canvas. There might be other, unknown 
   11781         places. In a canvas test page, which I broke off from the Safari 
   11782         pageout test, I saw an RPRVT reduction of ~10MB.
   11783         
   11784         A few renames:
   11785         - "m_lastLiveAccessTime" => "m_lastDecodedAccessTime" because the data
   11786         point we're recording is access to the resource in decoded form.
   11787         
   11788         - "liveResourceAccessed" => "didAccessDecodedData" for the same reason.
   11789 
   11790         - "pruneAllResources" => "pruneDeadResources" because this function 
   11791         does not prune live resources.
   11792         
   11793         And the fix:
   11794         Instead of updating cache metadata at the call site whenver drawing an 
   11795         image, just have an image notify its observer whenever it draws. The 
   11796         observer, which is a CachedResource, can then update the metadata.
   11797         
   11798         * loader/Cache.cpp: Renames
   11799         * loader/Cache.h: Removed stale declarations, updated comments
   11800         * loader/CachedImage.cpp:
   11801         (WebCore::CachedImage::didDraw): Implemented didDraw to update cache
   11802         metadata whenever our image draws.
   11803         * loader/CachedImage.h: Grouped parts of the ImageObserver interface.
   11804         * loader/CachedResource.cpp:
   11805         (WebCore::CachedResource::CachedResource):
   11806         (WebCore::CachedResource::deref):
   11807         (WebCore::CachedResource::didAccessDecodedData): Made this function
   11808         slightly more modular by allowing the caller to provide a time stamp.
   11809         In theory, not all CachedResources will necessarily want to use the 
   11810         current paint time stamp.
   11811         * platform/graphics/cg/ImageCG.cpp:
   11812         (WebCore::BitmapImage::draw): Notify our observer that we drew.
   11813         (WebCore::Image::drawPattern): ditto
   11814         * platform/graphics/cg/PDFDocumentImage.cpp:
   11815         (WebCore::PDFDocumentImage::draw): ditto
   11816         * platform/graphics/svg/SVGImage.cpp:
   11817         (WebCore::SVGImage::draw): ditto
   11818         
   11819         Removed old code at image drawing call sites:
   11820         
   11821         * rendering/RenderBox.cpp:
   11822         (WebCore::RenderBox::paintBackgroundExtended):
   11823         * rendering/RenderImage.cpp:
   11824         (WebCore::RenderImage::paint):
   11825         * rendering/RenderListMarker.cpp:
   11826         (WebCore::RenderListMarker::paint):
   11827         * rendering/RenderObject.cpp:
   11828         (WebCore::RenderObject::paintBorderImage):
   11829 
   11830 2007-08-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11831 
   11832         Reviewed by Adam.
   11833 
   11834         Move the various *ClientGdk.{h,cpp} away from the WebCore directory as
   11835         of http://bugs.webkit.org/show_bug.cgi?id=14727.
   11836 
   11837         * WebCore.pro:
   11838         * platform/gdk/TemporaryLinkStubs.cpp:
   11839 
   11840 2007-08-09  Anders Carlsson  <andersca (a] apple.com>
   11841 
   11842         Reviewed by Maciej.
   11843 
   11844         <rdar://problem/5400029> iframes with an image src rarely load image
   11845         
   11846         Don't try to shrink standalone images in subframes. The resize event is not 
   11847         sent for subframes which screws up the shrink-to-fit logic.
   11848         
   11849         * loader/ImageDocument.cpp:
   11850         (WebCore::ImageDocument::createDocumentStructure):
   11851         (WebCore::ImageDocument::imageChanged):
   11852         (WebCore::ImageDocument::shouldShrinkToFit):
   11853         * loader/ImageDocument.h:
   11854 
   11855 2007-08-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11856 
   11857         Reviewed by Adam.
   11858 
   11859         Implement FrameLoaderClientGdk::createFrame mostly by copying
   11860         the windows implementation. A method similiar to WebFrame::loadURLIntoChild
   11861         was not introduced instead we have a simplified version similiar to the
   11862         one of the Qt port.
   11863 
   11864         Remove building of WebKit/gtk/webkitgtkframedata.{cpp,h}.
   11865 
   11866         * WebCore.pro:
   11867         * loader/gdk/FrameLoaderClientGdk.cpp:
   11868         (WebCore::FrameLoaderClientGdk::createFrame):
   11869 
   11870 2007-08-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   11871 
   11872         Reviewed by Adam.
   11873 
   11874         Use the ScrollView/Widget design of the Windows port to only use one
   11875         native window for the whole page. This will make it possible to implement
   11876         FrameLoaderClientGdk::createFrame.
   11877 
   11878         In contrast to the windows port the ScrollBars are GtkWidgets. To paint them
   11879         at the right position we need to position them correctly. To not scroll the
   11880         ScrollBar's belonging to the ScrollView a ScrollViewScrollbar is introduced with
   11881         a different geometryChanged method.
   11882 
   11883         To allow the Gtk+ way of scrolling the ScrollView allows to get GtkAdjustments
   11884         set. In this case no ScrollViewScrollbar will be created.
   11885 
   11886 
   11887         * platform/ScrollView.h:
   11888         * platform/Widget.h:
   11889         * platform/gdk/PlatformScreenGdk.cpp:
   11890         (WebCore::screenDepth):
   11891         * platform/gdk/PlatformScrollBar.h:
   11892         * platform/gdk/PlatformScrollBarGdk.cpp:
   11893         (PlatformScrollbar::PlatformScrollbar):
   11894         (PlatformScrollbar::~PlatformScrollbar):
   11895         (PlatformScrollbar::setRect):
   11896         (PlatformScrollbar::geometryChanged):
   11897         * platform/gdk/ScrollViewGdk.cpp:
   11898         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   11899         (WebCore::ScrollView::ScrollViewPrivate::~ScrollViewPrivate):
   11900         (WebCore::ScrollViewScrollbar::ScrollViewScrollbar):
   11901         (WebCore::ScrollViewScrollbar::geometryChanged):
   11902         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   11903         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   11904         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   11905         (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
   11906         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   11907         (WebCore::ScrollView::ScrollViewPrivate::windowClipRect):
   11908         (WebCore::ScrollView::setGtkAdjustments):
   11909         (WebCore::ScrollView::updateContents):
   11910         (WebCore::ScrollView::update):
   11911         (WebCore::ScrollView::visibleWidth):
   11912         (WebCore::ScrollView::resizeContents):
   11913         (WebCore::ScrollView::contentsX):
   11914         (WebCore::ScrollView::scrollOffset):
   11915         (WebCore::ScrollView::maximumScroll):
   11916         (WebCore::ScrollView::scrollBy):
   11917         (WebCore::ScrollView::suppressScrollbars):
   11918         (WebCore::ScrollView::setHScrollbarMode):
   11919         (WebCore::ScrollView::setVScrollbarMode):
   11920         (WebCore::ScrollView::setScrollbarsMode):
   11921         (WebCore::ScrollView::setFrameGeometry):
   11922         (WebCore::ScrollView::addChild):
   11923         (WebCore::ScrollView::removeChild):
   11924         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   11925         (WebCore::ScrollView::wheelEvent):
   11926         (WebCore::ScrollView::updateScrollbars):
   11927         (WebCore::ScrollView::windowToContents):
   11928         (WebCore::ScrollView::contentsToWindow):
   11929         (WebCore::ScrollView::scrollbarUnderMouse):
   11930         (WebCore::ScrollView::convertChildToSelf):
   11931         (WebCore::ScrollView::convertSelfToChild):
   11932         (WebCore::ScrollView::paint):
   11933         (WebCore::ScrollView::geometryChanged):
   11934         (WebCore::ScrollView::scroll):
   11935         (WebCore::ScrollView::addToDirtyRegion):
   11936         (WebCore::ScrollView::scrollBackingStore):
   11937         (WebCore::ScrollView::updateBackingStore):
   11938         * platform/gdk/WidgetGdk.cpp:
   11939         (WebCore::WidgetPrivate::gdkDrawable):
   11940         (WebCore::Widget::Widget):
   11941         (WebCore::Widget::setContainingWindow):
   11942         (WebCore::Widget::containingWindow):
   11943         (WebCore::Widget::frameGeometry):
   11944         (WebCore::Widget::setFrameGeometry):
   11945         (WebCore::Widget::setParent):
   11946         (WebCore::Widget::parent):
   11947         (WebCore::Widget::setCursor):
   11948         (WebCore::Widget::show):
   11949         (WebCore::Widget::hide):
   11950         (WebCore::Widget::removeFromParent):
   11951         (WebCore::Widget::paint):
   11952         (WebCore::Widget::invalidate):
   11953         (WebCore::Widget::invalidateRect):
   11954         (WebCore::Widget::convertToContainingWindow):
   11955         (WebCore::Widget::convertFromContainingWindow):
   11956         (WebCore::Widget::convertChildToSelf):
   11957         (WebCore::Widget::convertSelfToChild):
   11958         (WebCore::Widget::suppressInvalidation):
   11959         (WebCore::Widget::setSuppressInvalidation):
   11960 
   11961 2007-08-09  Adele Peterson  <adele (a] apple.com>
   11962 
   11963         Fix by Brady, reviewed by me.
   11964 
   11965         Fix for <rdar://problem/5380697> connection:willSendRequest:redirectResponse: is called on every NSURLConnection
   11966 
   11967         * platform/network/mac/ResourceHandleMac.mm: (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
   11968           Work around a behavior change in CFNetwork where willSendRequest gets called more often by returning early.
   11969 
   11970 2007-08-09  Darin Adler  <darin (a] apple.com>
   11971 
   11972         Reviewed by Antti.
   11973 
   11974         - fix <rdar://problem/4889753> REGRESSION: Selection doesn't continue with drag selecting
   11975           when autoscrolling vertically (in Notes as well as Safari)
   11976 
   11977         The bug doesn't happen inside DumpRenderTree, so I was unable to make an automated
   11978         regression test.
   11979 
   11980         * manual-tests/autoscroll-when-outside-window.html: Added.
   11981 
   11982         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::autoscroll): Removed unneeded null
   11983         check for the layer's renderer and the document, neither of which can be null. Call
   11984         the new updateSelectionForMouseDrag instead of doing selection updating here.
   11985 
   11986         * page/EventHandler.h:
   11987         * page/EventHandler.cpp:
   11988         (WebCore::EventHandler::handleMouseDraggedEvent): Refactored most of the logic
   11989         about updating the selection into updateSelectionForMouseDrag.
   11990         (WebCore::EventHandler::updateSelectionForMouseDrag): Added. The public version of
   11991         this function takes no parameters, and is for use from auto-scrolling code. The
   11992         private version of this function takes node and point parameters and contains the
   11993         shared code, including everything from updateSelectionForMouseDragOverPosition.
   11994         Aside from the code motion, variable name changes, and sharing more code, this
   11995         differs from the old code in RenderLayer::autoscroll in the following ways:
   11996 
   11997           1) The old code did hit testing only in the layer that was auto-scrolling,
   11998              and the new code instead starts the hit testing at the root layer, which is
   11999              better because it's the same thing we do for mouse moved events. Further,
   12000              the code to do this by calling convertToLayerCoords had a bug  because the
   12001              x and y variables were uninitialized.
   12002           2) The old code passed false for active to HitTestRequest, which was wrong.
   12003              The new code passes true. This flag needs to be true for hit testing done
   12004              while the mouse is down and false for hit testing done while the mouse is up.
   12005           3) The old code did not have the SVG-specific logic to match the mouse moved case.
   12006           4) The old code wouldn't do any selection updating if the return value from hitTest
   12007              was false, which is incorrect. The new code ignores the return value as it should.
   12008 
   12009 2007-08-08  Beth Dakin  <bdakin (a] apple.com>
   12010 
   12011         Reviewed by Geoff Garen.
   12012 
   12013         Fx for <rdar://problem/5286443>, http://bugs.webkit.org/
   12014         show_bug.cgi?id=14268 REGRESSION: Radio buttons don't stay selected 
   12015         due to unclosed <label> tags
   12016 
   12017         This patch maintains the behavior that allows <label> tags to nest. 
   12018         This matches WinIE, and appears to match the spec, since the spec 
   12019         does not explicitly say that they cannot nest. It fixes the bug 
   12020         instead by calling setDefaultHandled() in two places it should have 
   12021         been called anyway. This keeps the appropriate button checked as 
   12022         the event bubbles.
   12023 
   12024         * html/HTMLInputElement.cpp:
   12025         (WebCore::HTMLInputElement::postDispatchEventHandler):
   12026         * html/HTMLLabelElement.cpp:
   12027         (WebCore::HTMLLabelElement::defaultEventHandler):
   12028 
   12029 2007-08-08  Justin Garcia  <justin.garcia (a] apple.com>
   12030 
   12031         Reviewed by Oliver.
   12032 
   12033         <rdar://problem/5387578> Crash at ReplaceSelectionCommand::doApply() when pasting just after table cell content
   12034         
   12035         ReplaceSelectionCommand::doApply() inserts a line break before insertion
   12036         to prevent block nesting.  InsertLineBreakCommand::doApply was accidently
   12037         destroying a text node when it removed insignificant whitespace and then
   12038         setting a nil endingSelection().
   12039 
   12040         * editing/InsertLineBreakCommand.cpp:
   12041         (WebCore::InsertLineBreakCommand::doApply): If insignificant whitespace
   12042         removal removes textNode from the document, insert a text node containing
   12043         the non-breaking space we were attempting to insert and then insert it
   12044         at the position that the removed textNode occupied.
   12045 
   12046 2007-08-08  Geoffrey Garen  <ggaren (a] apple.com>
   12047 
   12048         Reviewed by Maciej Stachowiak.
   12049 
   12050         Added a thrash check to live decoded resource eviction.
   12051         
   12052         Here's the strategy: Stamp every image with its paint time. Don't evict 
   12053         a live decoded resource until another resource paints with a reasonably
   12054         (1 second) larger time stamp. 
   12055         
   12056         If no other resource paints, or another resource paints, but very soon 
   12057         after the resource in question, the resource in question is very likely 
   12058         to paint again soon. In fact, it's probably still on screen. So we 
   12059         leave it alone. (Previously, we evicted it on a timer, but that would 
   12060         evict a resource that was still on screen, hurting speed without 
   12061         helping memory use.)
   12062 
   12063         In theory, this algorithm allows a single large resource or closely 
   12064         related set of resources to linger in the live decoded cache even 
   12065         though the cache is over its limit. However, that can only happen as 
   12066         long as no other resource ever paints again, which guarantees an 
   12067         absolute cap on cache memory usage from then on. Also, the resources 
   12068         will only linger as long as they remain live. Upon going dead, they 
   12069         will flush. Also, these circumstances are so rare that they are almost 
   12070         impossible to encounter in the wild. So don't sweat it.
   12071         
   12072         Stop evicting if the next resource painted too recently:
   12073         
   12074         * loader/Cache.cpp:
   12075         (WebCore::Cache::pruneLiveResources):
   12076         * loader/CachedResource.cpp:
   12077         (WebCore::CachedResource::CachedResource):
   12078         (WebCore::CachedResource::liveResourceAccessed):
   12079         * loader/CachedResource.h:
   12080 
   12081         Track the paint time stamp in Frame. We do this to give a consistent
   12082         stamp to all resources painted in a single paint operation (in case the
   12083         operation takes a significant amount of time), and to avoid excessive 
   12084         calls to system time functions, which hurt the PLT:
   12085 
   12086         * page/Frame.cpp:
   12087         (WebCore::Frame::paint):
   12088         * page/Frame.h:
   12089         (WebCore::Frame::currentPaintTimeStamp):
   12090 
   12091 2007-08-08  Sam Weinig  <sam (a] webkit.org>
   12092 
   12093         Reviewed by Adam Roben.
   12094 
   12095         Update project file to reflect the moving of character-sets.txt
   12096         and make-charset-table.pl to platform/mac a while ago.
   12097 
   12098         * WebCore.xcodeproj/project.pbxproj:
   12099 
   12100 2007-08-08  Justin Garcia  <justin.garcia (a] apple.com>
   12101 
   12102         Reviewed by Harrison.
   12103 
   12104         <rdar://problem/5390681> WebKit asserts when deleting To Do content selected with a double-click
   12105         
   12106         * dom/Position.cpp:
   12107         (WebCore::Position::trailingWhitespacePosition): Use VisiblePosition::characterAfter
   12108         to look for a trailing space.  The old code would incorrectly return a position before
   12109         a non-editable space if it had a collapsed space before it.
   12110 
   12111 2007-08-08  Sam Weinig  <sam (a] webkit.org>
   12112 
   12113         Reviewed by Brady.
   12114 
   12115         Make protocol and host compares case-insensitive.
   12116 
   12117         * bindings/js/kjs_window.cpp:
   12118         (KJS::Window::isSafeScript):
   12119         * dom/Document.cpp:
   12120         (WebCore::Document::initSecurityPolicyURL):
   12121         * platform/DeprecatedString.cpp:
   12122         (WebCore::equalIgnoringCase):
   12123         * platform/DeprecatedString.h:
   12124         (WebCore::equalIgnoringCase):
   12125 
   12126 2007-08-08  Justin Garcia  <justin.garcia (a] apple.com>
   12127 
   12128         Reviewed by Harrison.
   12129 
   12130         <rdar://problem/5390681> WebKit asserts when deleting To Do content selected with a double-click
   12131 
   12132         * dom/Position.cpp:
   12133         (WebCore::Position::leadingWhitespacePosition): Added checks to prevent expansion across editable an boundary.
   12134         (WebCore::Position::trailingWhitespacePosition): Ditto.
   12135 
   12136 2007-08-08  Adele Peterson  <adele (a] apple.com>
   12137 
   12138         Reviewed by John.
   12139 
   12140         Fix for <rdar://problem/5393798> 100% reproducible crash in WebCore::Scrollbar::setValue
   12141 
   12142         * page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEvent):
   12143           If the hit testing originally determined the event was in a scrollbar, 
   12144           refetch the MouseEventWithHitTestResults in case the scrollbar widget was destroyed when the mouse event was handled.
   12145 
   12146 2007-08-08  Sam Weinig  <sam (a] webkit.org>
   12147 
   12148         Reviewed by Geoff Garen.
   12149 
   12150         Fix for <rdar://problem/5354635>
   12151 
   12152         Match Firefox's model for data: URLs by not allowing them script access
   12153         to any frames other then itself.
   12154 
   12155         * bindings/js/kjs_window.cpp:
   12156         (KJS::Window::isSafeScript):
   12157         * dom/Document.cpp:
   12158         (WebCore::Document::initSecurityPolicyURL):
   12159 
   12160 2007-08-08  Darin Adler  <darin (a] apple.com>
   12161 
   12162         Reviewed by Kevin Decker.
   12163 
   12164         - fix for <rdar://problem/5390708> CrashTracer: [USER] 27 crashes in Safari at
   12165           com.apple.WebCore: WTF::HashMap<etc>::set + 68, beneath pruneUnretainedIconsAtStartup
   12166 
   12167         * loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
   12168         Eliminate an unnecessary HashMap from the implementation; we can just use the
   12169         m_pageURLToRetainCount map directly. This simplifies the code and allows us to handle
   12170         the empty string, which otherwise poses a problem for HashMap.
   12171 
   12172 2007-08-08  Antti Koivisto  <antti (a] apple.com>
   12173 
   12174         Reviewed by Darin.
   12175         
   12176         Fix for <rdar://problem/5391576>
   12177         Malformed table innerHTML causes Safari to crash in HTMLParser::handleError (14894)
   12178         
   12179         Add null checks to protect against 
   12180         
   12181         e.innerHTML = "<tr>text</tr>";
   12182         
   12183         type cases. Normal assumptions about document tree structure don't hold when parsing 
   12184         fragments. Results don't match Firefox in all cases. It seems to have some sort of 
   12185         anything-goes fragment parsing mode.
   12186         
   12187         * html/HTMLParser.cpp:
   12188         (WebCore::HTMLParser::handleError):
   12189 
   12190 2007-08-07  Kevin McCullough  <kmccullough (a] apple.com>
   12191 
   12192         Reviewed by Maciej and Hyatt.
   12193 
   12194         - <rdar://problem/4976879> REGRESSION: Safari doesn't work with Zimbra enhanced login.
   12195         - Reverting a previous change, and modifying how documents are created so that we better match other browsers behavior with respect to namespaceURIs.
   12196 
   12197         * WebCore.xcodeproj/project.pbxproj:
   12198         * dom/DOMImplementation.cpp:
   12199         (WebCore::DOMImplementation::createDocument):
   12200         * dom/Document.cpp:
   12201         (WebCore::Document::Document):
   12202         (WebCore::Document::createElement):
   12203         * dom/Document.h:
   12204         * html/HTMLDocument.cpp:
   12205         (WebCore::HTMLDocument::createElement):
   12206         * html/HTMLDocument.h:
   12207 
   12208 2007-08-08  Cameron Zwarich  <cwzwarich (a] uwaterloo.ca>
   12209 
   12210         Reviewed and landed by Brady
   12211 
   12212         Fixes <http://bugs.webkit.org/show_bug.cgi?id=13422>
   12213 
   12214         Bug 13422: REGRESSION: Page reload loses page position
   12215 
   12216         * loader/FrameLoader.cpp:
   12217         (WebCore::FrameLoader::updateHistoryForReload):
   12218 
   12219 2007-08-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12220 
   12221         Reviewed by Niko.
   12222 
   12223         Be paranoid and disconnect from the signal before going away.
   12224 
   12225         * platform/gdk/PlatformScrollBarGdk.cpp:
   12226         (PlatformScrollbar::~PlatformScrollbar):
   12227 
   12228 2007-08-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12229 
   12230         Reviewed by Niko.
   12231 
   12232         Use GraphicsContext::translatePoint in RenderThemeGdk to paint at the
   12233         right position.
   12234         This is needed as the Gtk+ theming code does not know about the translation
   12235         of the GraphicsContext.
   12236 
   12237         * platform/gdk/RenderThemeGdk.cpp:
   12238         (WebCore::RenderThemeGdk::paintCheckbox):
   12239         (WebCore::RenderThemeGdk::paintRadio):
   12240         (WebCore::RenderThemeGdk::paintButton):
   12241 
   12242 2007-08-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12243 
   12244         Reviewed by Niko.
   12245 
   12246         Implement Widget::paint for the Gtk port. This is needed to paint
   12247         Widgets in z-order. The original GdkEventExpose is stored within the
   12248         GraphicsContext and then used to draw the children. This is similiar
   12249         to gtk_container_propagate_expose but we try to honor the GraphicsConntext
   12250         translation.
   12251 
   12252         * platform/gdk/WidgetGdk.cpp:
   12253         (WebCore::Widget::paint):
   12254         * platform/graphics/GraphicsContext.h:
   12255         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   12256         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   12257         (WebCore::GraphicsContext::setGdkExposeEvent):
   12258         (WebCore::GraphicsContext::gdkExposeEvent):
   12259         (WebCore::GraphicsContext::gdkDrawable):
   12260         (WebCore::GraphicsContext::translatePoint):
   12261 
   12262 2007-08-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12263 
   12264         Reviewed by Oliver Hunt.
   12265 
   12266         Implement PlatformScrollbar by calling ScrollBar::setValue from 
   12267         gtkValueChange connected to the value-changed signal of the
   12268         GtkAdjustment.
   12269         Update 'value' of the GtkAdjustment in updateThumbPosition and
   12270         set upper, page-increment, step-increment and page_size in
   12271         updateThumbProportion.
   12272 
   12273         This is from bug http://bugs.webkit.org/show_bug.cgi?id=14795.
   12274 
   12275         * platform/gdk/PlatformScrollBar.h:
   12276         * platform/gdk/PlatformScrollBarGdk.cpp:
   12277         (PlatformScrollbar::PlatformScrollbar):
   12278         (PlatformScrollbar::updateThumbPosition):
   12279         (PlatformScrollbar::updateThumbProportion):
   12280         (PlatformScrollbar::gtkValueChanged):
   12281 
   12282 2007-08-07  Geoffrey Garen  <ggaren (a] apple.com>
   12283 
   12284         Reviewed by Maciej Stachowiak. Based on earlier review from Dave Hyatt.
   12285 
   12286         First chunk of work for <rdar://problem/5326009> Make non-browser 
   12287         WebKit clients have no memory cache, or a very tiny one
   12288         
   12289         Layout tests pass.
   12290         
   12291         Removed decodedSizeWillChange mechanism because my last patch to
   12292         change the live resources list to a strict LRU model made that code
   12293         vestigial.
   12294         
   12295         Renamed "liveResourcesList" and related stuff => 
   12296         "liveDecodedResourcesList" because only live resources with decoded 
   12297         data are kept in the list.
   12298 
   12299         * loader/CachedImage.cpp:
   12300         (WebCore::CachedImage::decodedSizeChanged): Only add ourselves to the
   12301         list if we're live, our decoded size has grown, and we're not in the 
   12302         list already. (Otherwise, either we're not live, we're not decoded,
   12303         or we're already in the list.)
   12304 
   12305         * loader/CachedResource.cpp:
   12306         (WebCore::CachedResource::liveResourceAccessed): Only re-insert
   12307         ourselves into the list if we're already there. (In theory, this should
   12308         be always, but it's a little more clear to check.)
   12309 
   12310 2007-08-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12311 
   12312         Reviewed by Adam.
   12313 
   12314         Kill class FrameGdk and move the stubs to page/gdk/FrameGdk.cpp and the
   12315         remainings into WebKitGtkFrame.
   12316         The DRT functionality of class FrameGdk is currently lost.
   12317 
   12318         * WebCore.pro:
   12319         * loader/gdk/FrameLoaderClientGdk.cpp:
   12320         * loader/gdk/FrameLoaderClientGdk.h:
   12321         * page/gdk/FrameGdk.cpp: Renamed from WebCore/platform/gdk/FrameGdk.cpp.
   12322         (WebCore::Frame::issueTransposeCommand):
   12323         (WebCore::Frame::cleanupPlatformScriptObjects):
   12324         (WebCore::Frame::dragImageForSelection):
   12325         (WebCore::Frame::dashboardRegionsChanged):
   12326         * platform/gdk/FrameGdk.h: Removed.
   12327         * platform/gdk/TemporaryLinkStubs.cpp: Removed Frame stub, added the loadResourceIntoArray stub
   12328         * platform/gdk/WidgetGdk.cpp:
   12329 
   12330 2007-08-08  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12331 
   12332         Reviewed by Adam.
   12333 
   12334         Remove the event handling code and move it to WebKit/gtk/Api/webkitgtkpage.cpp
   12335 
   12336         * platform/gdk/FrameGdk.cpp:
   12337         * platform/gdk/FrameGdk.h:
   12338 
   12339 2007-08-07  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   12340 
   12341         Reviewed by Niko.
   12342 
   12343         Switch from the generic union GdkEvent to the specific struct GdkEvent*. This is needed
   12344         to make WebKitGtkPage handle the events by reimplementing the default handlers in the near
   12345         future.
   12346 
   12347         * platform/PlatformKeyboardEvent.h:
   12348         * platform/PlatformMouseEvent.h:
   12349         * platform/PlatformWheelEvent.h:
   12350         * platform/gdk/FrameGdk.cpp:
   12351         (WebCore::FrameGdk::handleGdkEvent):
   12352         * platform/gdk/KeyEventGdk.cpp:
   12353         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   12354         * platform/gdk/MouseEventGdk.cpp:
   12355         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   12356         * platform/gdk/WheelEventGdk.cpp:
   12357         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   12358 
   12359 2007-08-07  George Staikos  <staikos (a] kde.org>
   12360 
   12361         Some QStyles don't handle negative maximum well (crash)
   12362 
   12363         * platform/qt/PlatformScrollBarQt.cpp:
   12364         (WebCore::PlatformScrollbar::paint):
   12365 
   12366 2007-08-07  Antti Koivisto  <antti (a] apple.com>
   12367 
   12368         Reviewed by Hyatt.
   12369 
   12370         Fix <rdar://problem/5102553>
   12371         Mail spins trying to display or edit a specific long plain text message in WebCore::TimerBase::...
   12372 
   12373         Calling removeLeftoverAnonymousBoxes() from RenderBlock::addChildToFlow() made adding children
   12374         O(n^2) in simple cases (repeated <div><div></div></div> for example).
   12375         
   12376         I couldn't find any limited fix so here is a more complete one. It removes iterating/recursing 
   12377         removeLeftoverAnonymousBoxes() method altogether. Instead of hunting around wildly, just get 
   12378         rid of anonymous boxes with block children when they occur.
   12379 
   12380         * rendering/RenderBlock.cpp:
   12381         (WebCore::RenderBlock::addChildToFlow):
   12382         * rendering/RenderButton.h:
   12383         (WebCore::RenderButton::removeLeftoverAnonymousBlock):
   12384         * rendering/RenderContainer.cpp:
   12385         (WebCore::RenderContainer::removeLeftoverAnonymousBlock):
   12386         * rendering/RenderContainer.h:
   12387         * rendering/RenderObject.cpp:
   12388         (WebCore::RenderObject::handleDynamicFloatPositionChange):
   12389         (WebCore::RenderObject::removeLeftoverAnonymousBlock):
   12390         * rendering/RenderObject.h:
   12391         * rendering/RenderTextControl.h:
   12392         (WebCore::RenderTextControl::removeLeftoverAnonymousBlock):
   12393 
   12394 2007-08-06  Sam Weinig  <sam (a] webkit.org>
   12395 
   12396         Reviewed by Maciej.
   12397 
   12398         Fix for <rdar://problem/5354689>
   12399 
   12400         - Use document variable to determine permissions instead
   12401           of traversing the frame tree. 
   12402 
   12403         * bindings/js/kjs_window.cpp:
   12404         (KJS::Window::isSafeScript):
   12405         * dom/Document.cpp:
   12406         (WebCore::Document::Document):
   12407         (WebCore::Document::initSecurityPolicyURL):
   12408         * dom/Document.h:
   12409         (WebCore::Document::securityPolicyURL):
   12410         * loader/FrameLoader.cpp:
   12411         (WebCore::FrameLoader::setOpener): We must re-initialize the
   12412         safeScript URL when setting the opener because the opener was
   12413         not known at Document construction.
   12414 
   12415 2007-08-06  David Hyatt  <hyatt (a] apple.com>
   12416 
   12417         Make sure to clear out the parent of the ellipsis box so that it doesn't
   12418         trigger the consistency check for line boxes.
   12419 
   12420         Reviewed by darin
   12421 
   12422         * ChangeLog:
   12423         * rendering/RootInlineBox.cpp:
   12424         (WebCore::RootInlineBox::detachEllipsisBox):
   12425 
   12426 2007-08-06  David Hyatt  <hyatt (a] apple.com>
   12427 
   12428         Back out fix for <rdar://problem/5366582> and replace it with the correct
   12429         fix.  Make sure to delete the line box tree before splitting an inline flow
   12430         into a continuation.  The added layout test for the original checkin covers
   12431         the problem.
   12432 
   12433         Reviewed by beth
   12434 
   12435         * rendering/RenderBlock.cpp:
   12436         (WebCore::RenderBlock::makeChildrenNonInline):
   12437         Back out fix.
   12438 
   12439         * rendering/RenderFlow.cpp:
   12440         (WebCore::RenderFlow::destroy):
   12441         Back out fix.
   12442 
   12443         * rendering/RenderInline.cpp:
   12444         (WebCore::RenderInline::splitFlow):
   12445         Here's the new fix.
   12446 
   12447 2007-08-06  Geoffrey Garen  <ggaren (a] apple.com>
   12448 
   12449         Reviewed by Darin Adler.
   12450         
   12451         Touching a file to force a re-build.
   12452 
   12453 2007-08-06  Darin Adler  <darin (a] apple.com>
   12454 
   12455         - fix release build
   12456 
   12457         * rendering/RenderText.h: (WebCore::RenderText::checkConsistency):
   12458         Add missing const.
   12459 
   12460 2007-08-06  Darin Adler  <darin (a] apple.com>
   12461 
   12462         Reviewed by Maciej.
   12463 
   12464         - fix <rdar://problem/5366582> crash on it.eurosport.yahoo.com page
   12465 
   12466         Test: fast/dynamic/inline-to-block-crash.html
   12467 
   12468         I added some consistency checks for the line box tree, which helped me figure out
   12469         what was going on with this bug pretty quickly.
   12470 
   12471         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::makeChildrenNonInline):
   12472         This is the actual fix. If the block needs layout, then don't try to delete the line
   12473         box tree because it's going to be rebuilt as part of layout. More importantly, the
   12474         child list in the tree is no good, so we will crash if we try to delete here.
   12475 
   12476         * rendering/RenderFlow.cpp: (WebCore::RenderFlow::destroy):
   12477         Here's a second fix. We have the same issue in the code that handles anonymous
   12478         blocks -- if it's already running as part of layout, we can't walk through the
   12479         already partly destroyed line box tree. This crashed in one of the layout tests.
   12480 
   12481         * rendering/InlineBox.h: Made more fields private, since I wanted to do a bit more
   12482         work in setters. Made setNextOnLine() and setPrevOnLine() assert that the box has a
   12483         parent. Made parent() assert that the parent is good. Also removed the unused
   12484         isChildOfParent() function.
   12485         * rendering/InlineBox.cpp: (WebCore::InlineBox::~InlineBox): At destruction time, if
   12486         we are still attached to a parent, tag that parent as having a "bad" child list.
   12487 
   12488         * rendering/InlineFlowBox.h: Added m_reasonForBadChildList, checkConsistency(),
   12489         setHasBadChildList(), and hasBadChildList(). Also changed firstChild() and lastChild() so
   12490         they call checkConsistency() and made all the fields private instead of protected.
   12491         * rendering/InlineFlowBox.cpp:
   12492         (WebCore::InlineFlowBox::addToLine): Added consistency checks before and after adding a
   12493         box to the line. Also checked that next and prev start out as 0. Changed manipulation of
   12494         next and prev to use accessor functions.
   12495         (WebCore::InlineFlowBox::removeChild): Added consistency checks before and after removing
   12496         the box from the line.
   12497         (WebCore::InlineFlowBox::deleteLine): Use firstChild() instead of getting at m_firstChild
   12498         directly so we get a consistency check. Also set the parent to 0 before destroying so that
   12499         the assertion in ~InlineBox will work properly.
   12500         (WebCore::InlineFlowBox::extractLine): Ditto.
   12501         (WebCore::InlineFlowBox::attachLine): Ditto.
   12502         (WebCore::InlineFlowBox::adjustPosition): Ditto.
   12503         (WebCore::InlineFlowBox::checkConsistency): Added. Checks consistency of the child list by
   12504         looking at the parent, next, and prev pointers. Also asserts that we are not yet in the
   12505         "bad" child list state, which happens if one of our children is destroyed without removing
   12506         it from our list; that's normal, but once it happens we can't look at our child list again.
   12507 
   12508         * rendering/InlineTextBox.h:
   12509         * rendering/InlineTextBox.cpp: Remove unnneeded destroy/new/delete functions -- these are
   12510         inherited from the InlineBox base class and don't need to be defined again.
   12511 
   12512         * rendering/RenderFlow.h:
   12513         * rendering/RenderFlow.cpp:
   12514         (WebCore::RenderFlow::~RenderFlow): Assert that there are no children to confirm that we
   12515         didn't leak something.
   12516         (WebCore::RenderFlow::extractLineBox): Added consistency checks before and after removing
   12517         a run of boxes from the list.
   12518         (WebCore::RenderFlow::attachLineBox): Added consistency checks before and after adding
   12519         a box to the list.
   12520         (WebCore::RenderFlow::removeLineBox): Added consistency checks before and after removing
   12521         a box from the list.
   12522         (WebCore::RenderFlow::createInlineBox): Added consistency checks before and after adding
   12523         a box to the list.
   12524         (WebCore::RenderFlow::checkConsistency): Added.
   12525 
   12526         * rendering/RenderText.h:
   12527         * rendering/RenderText.cpp:
   12528         (WebCore::RenderText::~RenderText): Assert that there are no children to confirm that we
   12529         didn't leak something.
   12530         (WebCore::RenderText::extractTextBox): Added consistency checks before and after removing
   12531         a run of boxes from the list.
   12532         (WebCore::RenderText::attachTextBox): Added consistency checks before and after adding
   12533         a box to the list.
   12534         (WebCore::RenderText::removeTextBox): Added consistency checks before and after removing
   12535         a box from the list.
   12536         (WebCore::RenderText::deleteTextBoxes): Added code to call setHasBadChildList since this
   12537         destroys line boxes without informing the parent.
   12538         (WebCore::RenderText::checkConsistency): Added.
   12539 
   12540 2007-08-06  Adele Peterson  <adele (a] apple.com>
   12541 
   12542         Reviewed by Darin.
   12543 
   12544         Fix for <rdar://problem/5382483> REGRESSION: <select> element's text is clipped when a CSS line-height is specified
   12545 
   12546         Don't honor line-height for styled popup buttons.  We already don't honor line-height for unstyled popups
   12547         and since IE and FF don't honor it at all for popups, we shouldn't either.
   12548 
   12549         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
   12550         * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::adjustMenuListButtonStyle):
   12551 
   12552 2007-08-06  Antti  <antti (a] apple.com>
   12553 
   12554         Reviewed by Darin.
   12555 
   12556         Fix <rdar://problem/5378214>
   12557         Mail crashes at RenderLayer::paintLayer() when dragging a selection over To Do text
   12558         
   12559         ObjC interface does not guarantee that Document::updateRendering() gets called after
   12560         modification are made to document. This can lead to situation where paint()
   12561         is invoked with document still dirty which can then crash in number of interesting ways.
   12562         
   12563         - add hasChangedChild() as needsLayout() condition. layout() will then call recalcStyle() 
   12564           catching most cases and making sure document is not dirty when entering painting.
   12565         - protect recalcStyle() and layout() from being executed during painting. There are some
   12566           cases needsLayout() protection does not cover.
   12567         
   12568         No layout test, these states are very hard or impossible to reach using Javascript interface
   12569         (which generally guarantees that updateRendering() is done right after execution).
   12570 
   12571         * dom/Document.cpp:
   12572         (WebCore::Document::recalcStyle):
   12573         * page/Frame.cpp:
   12574         (WebCore::Frame::paint):
   12575         (WebCore::Frame::setPaintRestriction):
   12576         (WebCore::Frame::isPainting):
   12577         (WebCore::FramePrivate::FramePrivate):
   12578         * page/Frame.h:
   12579         * page/FramePrivate.h:
   12580         * page/FrameView.cpp:
   12581         (WebCore::FrameView::layout):
   12582         (WebCore::FrameView::needsLayout):
   12583 
   12584 2007-08-05  Maciej Stachowiak  <mjs (a] apple.com>
   12585 
   12586         Reviewed by Darin Adler.
   12587         
   12588         <rdar://problem/5369110> CrashTracer: [USER] reproducible crash opening particular mail messages
   12589 
   12590         * platform/network/mac/ResourceHandleMac.mm:
   12591         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]): Make sure to retain
   12592         self for the body of this method. Otherwise, the willSendRequest could trigger events which will
   12593         cancel the connection, and we access ivars after this point.
   12594         (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): retain and release
   12595         in the right order.
   12596 
   12597 2007-08-04  Adam Roben  <aroben (a] apple.com>
   12598 
   12599         Another workaround for <rdar://problem/5386894>
   12600 
   12601         Reviewed by Sam.
   12602 
   12603         This fixed ~150 failing tests.
   12604 
   12605         * platform/network/cf/ResourceResponseCFNet.cpp:
   12606         (WebCore::ResourceResponse::doUpdateResourceResponse): Hardcode the
   12607         MIME type for .svg files as well.
   12608 
   12609 2007-08-04  Adam Roben  <aroben (a] apple.com>
   12610 
   12611         Workaround for <rdar://problem/5386894> CFURLResponseGetMIMEType returns "text/html" for local .xhtml and .xml files
   12612 
   12613         Reviewed by Sam.
   12614 
   12615         This fixes ~350 failing tests.
   12616 
   12617         * platform/network/cf/ResourceResponseCFNet.cpp:
   12618         (WebCore::ResourceResponse::doUpdateResourceResponse): Use a workaround
   12619         identical to the one in ResourceResponseMac.mm, but include .xml files
   12620         as well.
   12621 
   12622 2007-08-04  David Kilzer  <ddkilzer (a] webkit.org>
   12623 
   12624         Reviewed by Oliver.
   12625 
   12626         - fix for http://bugs.webkit.org/show_bug.cgi?id=14882
   12627           <rdar://problem/5386550> REGRESSION (r24866): text/plain documents are always downloaded
   12628 
   12629         The supportedNonImageMimeTypes list is used to determine which MIME types may be viewed
   12630         within the web browser (e.g., plug-ins add their own MIME types to the list during
   12631         initialization), so we must add "text/plain" and "text/" back to the list.  Since
   12632         this change would then break DOMImplementation::isTextMIMEType(), that method was reverted
   12633         to its original form and MIMETypeRegistry::shouldTreatAsText() was removed.
   12634 
   12635         * dom/DOMImplementation.cpp:
   12636         (WebCore::DOMImplementation::isTextMIMEType): Revert to previous version.
   12637         * platform/MIMETypeRegistry.cpp:
   12638         (WebCore::initialiseSupportedNonImageMimeTypes): Added back "text/plain" and "text/" to the list.
   12639         (WebCore::MIMETypeRegistry::shouldTreatAsText): Removed.
   12640         * platform/MIMETypeRegistry.h:
   12641 
   12642 2007-08-03  Brady Eidson  <beidson (a] apple.com>
   12643 
   12644         Reviewed by Oliver
   12645 
   12646         Fix for http://bugs.webkit.org/show_bug.cgi?id=14824 and <rdar://problem/5372989>
   12647 
   12648         Two issues - 
   12649         1 - The WebCore MIMEType registry was designed assuming the list of types would never change
   12650             That is false, as WebKit has API and SPI calls which directly mutate the MIMETypeRegistry
   12651         2 - DOMImplementation didn't consult the registry for any MIMEType that started with "text/", 
   12652             instead maintaining it's own hard coded rules
   12653 
   12654         * dom/DOMImplementation.cpp:
   12655         (WebCore::DOMImplementation::isTextMIMEType): For now, call through to the MIMETypeRegistry
   12656           until we decided a different fate for this function
   12657 
   12658         * platform/MIMETypeRegistry.cpp:
   12659         (WebCore::initialiseSupportedNonImageMimeTypes):  "SupportedNonImageMIMETypes" is really a misnomer for 
   12660           "MIMETypes we should show as HTML" but that line has slowly been blurred since Tiger.  In an attempt
   12661           to start to unblur it, remove "text/" and "text/plain"
   12662         (WebCore::MIMETypeRegistry::shouldTreatAsText):  The decision is very close to the old DOMImplementation 
   12663           method, except we don't automatically hand off "text/" types as true if they are in the set of supported
   12664           MIMETypes
   12665         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes): Non-const (can be changed!)
   12666         (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes): Non-const (can be changed!)
   12667         (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes): Non-const (can be changed!)
   12668         * platform/MIMETypeRegistry.h:
   12669 
   12670 2007-08-03  Adele Peterson  <adele (a] apple.com>
   12671 
   12672         Reviewed by Adam.
   12673 
   12674         Fix for <rdar://problem/5345862> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::Frame::isContentEditable const + 10
   12675 
   12676         Couldn't reproduce the problem, but a nil check for the frame should fix this.
   12677 
   12678         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle):
   12679 
   12680 2007-08-03  Anders Carlsson  <andersca (a] apple.com>
   12681 
   12682         Reviewed by Oliver.
   12683 
   12684         <rdar://problem/5383286>
   12685         XMLHTTPRequest does not return 401 when user cancels authentication dialog (affects .Mac)
   12686         
   12687         * loader/ResourceLoader.h:
   12688         Make receivedCancellation virtual.
   12689         
   12690         * loader/SubresourceLoader.cpp:
   12691         (WebCore::SubresourceLoader::receivedCancellation):
   12692         Call SubresourceLoaderClient::receivedCancellation.
   12693         
   12694         * xml/XMLHttpRequest.cpp:
   12695         (WebCore::XMLHttpRequest::receivedCancellation):
   12696         Save the failure response.
   12697 
   12698 2007-08-03  Anders Carlsson  <andersca (a] apple.com>
   12699 
   12700         Reviewed by Geoff.
   12701 
   12702         <rdar://problem/5374393> 
   12703         Image change on disk not noticed by WebView; -[WebCache setDisabled:] used to cause a reload every time
   12704         
   12705         This is essentially a better fix for the crash in <rdar://problem/5362783>.
   12706         
   12707         * loader/DocLoader.cpp:
   12708         (WebCore::DocLoader::requestResource):
   12709         If the resource already exists in the m_docResources map, remove it and disassociate it from the doc loader.
   12710 
   12711 2007-08-03  Oliver Hunt  <oliver (a] apple.com>
   12712 
   12713         Reviewed by Geoff.
   12714 
   12715         <rdar://problem/5375190> Mail crashed in WebCore::CachedImage::imageSize() const when viewing a particular message
   12716 
   12717         Fix the uncached load path to confirm that the type of resource being 
   12718         returned actually matches the type that was requested.
   12719 
   12720         Also make sure we never create a resource in the Cache for invalid urls.
   12721 
   12722         * loader/Cache.cpp:
   12723         (WebCore::Cache::requestResource):
   12724         * loader/DocLoader.cpp:
   12725         (WebCore::DocLoader::requestResource):
   12726 
   12727 2007-08-03  Mitz Pettel  <mitz (a] webkit.org>
   12728 
   12729         Reviewed by Adele.
   12730 
   12731         - fix http://bugs.webkit.org/show_bug.cgi?id=14879
   12732           REGRESSION: First item in select (pop-up menu) is displayed even if another item was selected via JavaScript
   12733 
   12734         Test: fast/forms/menulist-deselect-update.html
   12735 
   12736         * html/HTMLOptionElement.cpp:
   12737         (WebCore::HTMLOptionElement::setSelected): Reordered to allow setSelectedIndex() to call setChanged().
   12738 
   12739 2007-08-03  Anders Carlsson  <andersca (a] apple.com>
   12740 
   12741         Reviewed by Darin.
   12742 
   12743         <rdar://problem/5286444>
   12744         http://bugs.webkit.org/show_bug.cgi?id=14269
   12745         REGRESSION: Gmail links stop working after computer sleep
   12746         
   12747         Add a PowerNotifier object that takes care of resetting and firing the shared timer when coming
   12748         back from sleep.
   12749         
   12750         * platform/mac/SharedTimerMac.cpp:
   12751         (-[PowerNotifier init]):
   12752         (-[PowerNotifier didWake:]):
   12753         (WebCore::setSharedTimerFireTime):
   12754 
   12755 2007-08-04  Mark Rowe  <mrowe (a] apple.com>
   12756 
   12757         Windows build fix.
   12758 
   12759         * rendering/RenderTextControl.cpp: Don't use the same name for two arguments.
   12760 
   12761 2007-08-03  Mitz Pettel  <mitz (a] webkit.org>
   12762 
   12763         Reviewed by Darin.
   12764 
   12765         - fix http://bugs.webkit.org/show_bug.cgi?id=14653
   12766           REGRESSION (r23994): No caret is drawn after clicking a search field's placeholder text
   12767           <rdar://problem/5383841>
   12768 
   12769         Test: fast/forms/search-click-in-placeholder.html
   12770 
   12771         Defined a subclass of RenderBlock that never hit-tests children for use in
   12772         text controls. This avoids returning placeholder text as the hit node.
   12773         Since text controls cannot contain inline elements, there is no harm in
   12774         doing that unconditionally, and not just in the case that the field is
   12775         showing placeholder text.
   12776 
   12777         * rendering/RenderTextControl.cpp:
   12778         (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock):
   12779         (WebCore::RenderTextControlInnerBlock::~RenderTextControlInnerBlock):
   12780         (WebCore::RenderTextControlInnerBlock::nodeAtPoint):
   12781         (WebCore::RenderTextControl::createSubtreeIfNeeded):
   12782 
   12783 2007-08-02  Oliver Hunt  <oliver (a] apple.com>
   12784 
   12785         Reviewed by Geoff
   12786 
   12787         Fix for <rdar://problem/5369332> Xcode crashes while selecting a hyperlink within a AppleScript dictionary (WebCore::Font::drawGlyphBuffer)
   12788 
   12789         There were many places where we were not correctly retaining/releasing the
   12790         NSFont object stored in the C++ PlatformFontData object, this resulted in
   12791         the GC incorrectly collecting the NSFont.
   12792 
   12793         This patch fixes the problem by prevent direct modification of the PlatformFontData
   12794         font pointer, allowing us to enforce correct CFRetain/Release behaviour.
   12795 
   12796         * platform/FontData.h:
   12797         (WebCore::FontData::getNSFont):
   12798         * platform/mac/FontCacheMac.mm:
   12799         (WebCore::FontCache::getFontDataForCharacters):
   12800         (WebCore::FontCache::createFontPlatformData):
   12801         * platform/mac/FontDataMac.mm:
   12802         (WebCore::initFontData):
   12803         (WebCore::FontData::platformInit):
   12804         (WebCore::FontData::platformDestroy):
   12805         (WebCore::FontData::smallCapsFontData):
   12806         (WebCore::FontData::containsCharacters):
   12807         (WebCore::FontData::determinePitch):
   12808         (WebCore::FontData::platformWidthForGlyph):
   12809         (WebCore::FontData::checkShapesArabic):
   12810         * platform/mac/FontMac.mm:
   12811         (WebCore::initializeATSUStyle):
   12812         (WebCore::overrideLayoutOperation):
   12813         (WebCore::Font::drawGlyphs):
   12814         * platform/mac/FontPlatformData.h:
   12815         (WebCore::FontPlatformData::FontPlatformData):
   12816         (WebCore::FontPlatformData::~FontPlatformData):
   12817         (WebCore::FontPlatformData::hash):
   12818         (WebCore::FontPlatformData::operator==):
   12819         (WebCore::FontPlatformData::font):
   12820         (WebCore::FontPlatformData::setFont):
   12821 
   12822 2007-08-03  Antti Koivisto  <antti (a] apple.com>
   12823 
   12824         Oops, this change wasn't supposed to be commited.
   12825 
   12826         * page/mac/WebCoreFrameBridge.mm:
   12827         (-[WebCoreFrameBridge setBaseBackgroundColor:]):
   12828 
   12829 2007-08-02  Antti Koivisto  <antti (a] apple.com>
   12830 
   12831         Reviewed by Darin.
   12832 
   12833         <rdar://problem/5355951>
   12834         plainText() fragments TCMalloc heap badly on large pages
   12835         
   12836         also likely fixes some cases of
   12837         <rdar://problem/5335382>
   12838         CrashTracer: [REGRESSION] 73 crashes in Safari at com.apple.WebCore: WebCore::DeprecatedStringData::increaseUnicodeSize + 52
   12839         
   12840         If you load http://dscoder.com/test.txt with WebKit build with TCMalloc and system malloc you see that
   12841         Safari RPRVT with TCMalloc is 118.8MB
   12842         Safari RPRVT with system malloc is 69.7MB
   12843         
   12844         Difference is almost entirely caused by heap fragmentation from a full document plainText() call (for indexing purposes).
   12845         
   12846         The patch helps in two ways:
   12847         - construct plainText string in pieces to avoid O(n^2) reallocs
   12848         - allocate buffers using system malloc so they can be returned back to OS and don't fragment and grow TCMalloc heap
   12849     
   12850         This shrinks http://dscoder.com/test.txt RPRVT to 79.0MB and makes full document plainText() take 50ms instead of 500ms.
   12851         The benefits are not limited to extreme cases, web pages above ~200kB can show substantial improvement in RPRVT.
   12852 
   12853         * editing/TextIterator.cpp:
   12854         (WebCore::plainTextToMallocAllocatedBuffer):
   12855         (WebCore::plainText):
   12856         * editing/TextIterator.h:
   12857         * page/mac/WebCoreFrameBridge.mm:
   12858         (-[WebCoreFrameBridge selectedString]):
   12859         (-[WebCoreFrameBridge stringForRange:]):
   12860 
   12861 2007-08-02  David Hyatt  <hyatt (a] apple.com>
   12862 
   12863         Fix for 5374437, allow comment nodes to be the child of a document.
   12864         Refine the check to always make a root element to check documentElement()
   12865         rather than firstChild(), since a comment node could be present as the
   12866         firstChild() now.
   12867 
   12868         Reviewed by Tim Hatcher
   12869 
   12870         * html/HTMLDocument.cpp:
   12871         (WebCore::HTMLDocument::childAllowed):
   12872         * html/HTMLParser.cpp:
   12873         (WebCore::HTMLParser::finished):
   12874 
   12875 2007-08-02  Antti Koivisto  <antti (a] apple.com>
   12876 
   12877         Reviewed by Darin.
   12878         
   12879         <rdar://problem/5228138>
   12880         REGRESSION(Leopard): test failures: tests that test Georgian numbering
   12881 
   12882         Fix to Georgian number tables to get CSS2.1 test results right. Font has relevant characters now 
   12883         which revealed that results were actually wrong. 
   12884 
   12885         * rendering/RenderListMarker.cpp:
   12886         (WebCore::toGeorgian):
   12887 
   12888 2007-08-02  Ada Chan  <adachan (a] apple.com>
   12889 
   12890         Reviewed by Steve.
   12891 
   12892         <rdar://problem/5079175> Added parameters headerHeight and footerHeight to 
   12893         computePageRectsForFrame() so we can account for the header and footer when
   12894         calculating page heights for this frame.
   12895 
   12896         * bridge/win/FrameWin.cpp:
   12897         (WebCore::computePageRectsForFrame):
   12898         * bridge/win/FrameWin.h:
   12899 
   12900 2007-08-02  Alice Liu  <alice.liu (a] apple.com>
   12901 
   12902         Reviewed by Kevin McCullough.
   12903 
   12904         fixed <rdar://problem/5310312> REGRESSION: javascript is mis-escaped at http://labs.zarate.org/passwd causing bookmarklet to break
   12905         
   12906         * WebCore.exp:
   12907         expose some calls for WebKit to call. 
   12908         * manual-tests/JavaScript-bookmarklets.html: Added.
   12909 
   12910 2007-08-01  Adam Treat  <treat (a] kde.org>
   12911 
   12912         Reviewed by George Staikos.
   12913 
   12914         Add an interface to manage global history for clients
   12915 
   12916         * WebCore.pro:
   12917         * platform/qt/TemporaryLinkStubs.cpp:
   12918 
   12919 2007-08-01  Adam Treat  <treat (a] kde.org>
   12920 
   12921         Reviewed by George Staikos.
   12922 
   12923         Do not call update or paint from inside a paint event.
   12924 
   12925         * platform/qt/ScrollViewQt.cpp:
   12926         (WebCore::ScrollView::updateContents):
   12927         * platform/qt/WidgetQt.cpp:
   12928         (WebCore::Widget::invalidateRect):
   12929 
   12930 2007-08-01  Timothy Hatcher  <timothy (a] apple.com>
   12931 
   12932         Reviewed by Justin.
   12933 
   12934         <rdar://problem/5376156> Mail crash in DeleteButtonController::hide() when dropping selected image on DIV's border
   12935 
   12936         Add the container element back so the selection can not touch the deletion UI nodes. The container
   12937         has style to prevent user selection, user drag and user modification.
   12938 
   12939         * editing/DeleteButtonController.cpp:
   12940         (WebCore::DeleteButtonController::show): Make the container node, and append the button and outline elements.
   12941         (WebCore::DeleteButtonController::hide): Remove the container elements and null out the other nodes.
   12942         * editing/DeleteButtonController.h:
   12943 
   12944 2007-08-01  Steve Falkenburg  <sfalken (a] apple.com>
   12945 
   12946         Build mod: Fix sln to match configs in vcproj.
   12947         
   12948         Reviewed by Adam.
   12949 
   12950         * WebCore.vcproj/WebCore.make:
   12951 
   12952 2007-07-31  David Harrison  <harrison (a] apple.com>
   12953 
   12954         Reviewed by Justin.
   12955 
   12956         <rdar://problem/5362659> CrashTracer: [USER] 11 crashes in Mail at WebCore::InsertLineBreakCommand::doApply()
   12957 
   12958         The problem was that deleting with the X control leaves the selection inside the fragment that was deleted.
   12959 
   12960         * editing/DeleteButtonController.cpp:
   12961         (WebCore::DeleteButtonController::deleteTarget):
   12962         Because the deletion UI only appears when the selection is entirely
   12963         within the target, we unconditionally update the selection to be
   12964         a caret where the target had been.
   12965 
   12966 2007-07-31  Adele Peterson  <adele (a] apple.com>
   12967 
   12968         Reviewed by Hyatt.
   12969 
   12970          Fix for <rdar://problem/5339395> REGRESSION:http://sudokucraving.com does not render grid correctly
   12971 
   12972         * rendering/RenderTextControl.h: (WebCore::RenderTextControl::hasControlClip): Clip for search fields.
   12973         * rendering/RenderTextControl.cpp:
   12974         (WebCore::RenderTextControl::controlClipRect): Added a control clip so the search field's cancel button and magnifier glass
   12975          never draw outside the control's bounds.
   12976         (WebCore::RenderTextControl::calcPrefWidths): Only include the inner box's padding when calculating the min/max width without using calcContentBoxWidth.
   12977          Our old behavior was causing that inner padding to get counted twice.  Also, no need to add in the border
   12978          for an inner box that can't be controlled from outside this class.
   12979         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::calcPrefWidths): ditto.
   12980 
   12981 2007-07-31  Anders Carlsson  <andersca (a] apple.com>
   12982 
   12983         Reviewed by Geoff.
   12984 
   12985         Speculative fix for <rdar://problem/5359695> 
   12986         REGRESSION (Tiger Beta): Multiple crashes in WebCore::Widget::getView() const + 6
   12987                 
   12988         * page/EventHandler.cpp:
   12989         (WebCore::EventHandler::updateDragAndDrop):
   12990         Null check the frame view.
   12991 
   12992 2007-07-31  Timothy Hatcher  <timothy (a] apple.com>
   12993 
   12994         Reviewed by Oliver and Beth.
   12995 
   12996         <rdar://problem/5211271> ADOBE Leopard 9A410: At the first Launching InDesign after deactivate, EULA page gets blanked.
   12997 
   12998         Rename needsAcrobatFrameReloadingQuirk to needsAdobeFrameReloadingQuirk, since this now applies to more Adobe applications.
   12999 
   13000         * WebCore.exp:
   13001         * page/Settings.cpp:
   13002         (WebCore::Settings::Settings):
   13003         (WebCore::Settings::setNeedsAdobeFrameReloadingQuirk):
   13004         * page/Settings.h:
   13005         (WebCore::Settings::needsAcrobatFrameReloadingQuirk):
   13006 
   13007 2007-07-31  Matt Perry  <mpComplete (a] gmail.com>
   13008 
   13009         Reviewed by Brady and Darin, tweaked by Brady, landed by Brady
   13010 
   13011         Fix for http://bugs.webkit.org/show_bug.cgi?id=14757 and <rdar://problem/5364692>
   13012         HTMLTokenizer::processingData implementation is incorrect
   13013 
   13014         * html/HTMLTokenizer.cpp:
   13015         (WebCore::HTMLTokenizer::processingData): Made it also return true if the HTMLTokenizer was inside the write() call.
   13016         * loader/FrameLoader.cpp:
   13017         (WebCore::FrameLoader::FrameLoader):
   13018         (WebCore::FrameLoader::checkLoadCompleteTimerFired):
   13019         (WebCore::FrameLoader::scheduleCheckLoadComplete):
   13020         (WebCore::FrameLoader::stopForUserCancel): Changed a call to checkLoadComplete to be asynchronous, since
   13021         stopForUserCancel can be called while parsing.
   13022         * loader/FrameLoader.h:
   13023 
   13024 2007-07-31  Anders Carlsson  <andersca (a] apple.com>
   13025 
   13026         Reviewed by Geoff.
   13027 
   13028         <rdar://problem/5371582>
   13029         REGRESSION: PLT .5% slower due to r24451 (copying HTMLCollection objects)
   13030         
   13031         Make the hash maps store CollectionInfo pointers to reduce amount of copying when
   13032         inserting/rehashing etc.
   13033         
   13034         * dom/Document.cpp:
   13035         (WebCore::Document::~Document):
   13036         (WebCore::Document::nameCollectionInfo):
   13037         * dom/Document.h:
   13038 
   13039 2007-07-31  Sam Weinig  <sam (a] webkit.org>
   13040 
   13041         Reviewed by Mitz.
   13042 
   13043         Fix for http://bugs.webkit.org/show_bug.cgi?id=14825
   13044         Non-integer hsl() colours are ignored
   13045 
   13046         * css/CSSParser.cpp:
   13047         (WebCore::CSSParser::parseHSLParameters): Parse hue as a Number,
   13048         not an Integer. 
   13049 
   13050 2007-07-30  Justin Garcia  <justin.garcia (a] apple.com>
   13051 
   13052         Reviewed by Darin.
   13053 
   13054         <rdar://problem/5369009> Crash due to infinite recursion in moveParagraphs on delete
   13055         
   13056         After the delete, we moved content into the previous block, and a style
   13057         rule turned a style span in the moved content into a block, throwing
   13058         moveParagraphs into infinite recursion, as it continually tried and failed
   13059         to get the style span into the same paragraph as the content just before it.
   13060         
   13061         Added a method to ReplaceSelectionCommand to keep inserted style spans 
   13062         from turning into blocks because of style rules.  Will add code to prevent
   13063         other kinds of content from changing appearance because of style rules,
   13064         post-Leopard (5371536). Also added a bool to ReplaceSelectionCommand's 
   13065         constructor to guard against infinite recursion.
   13066 
   13067         * editing/CompositeEditCommand.cpp:
   13068         (WebCore::CompositeEditCommand::moveParagraphs):
   13069         * editing/JSEditor.cpp:
   13070         * editing/ReplaceSelectionCommand.cpp:
   13071         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
   13072         (WebCore::ReplaceSelectionCommand::negateStyleRulesThatEffectAppearance):
   13073         (WebCore::ReplaceSelectionCommand::doApply):
   13074         * editing/ReplaceSelectionCommand.h:
   13075 
   13076 2007-07-30  Anders Carlsson  <andersca (a] apple.com>
   13077 
   13078         Reviewed by Brady.
   13079 
   13080         <rdar://problem/5371515>
   13081         BitmapImage::getTIFFRepresentation() bug results in favicons not working at many sites
   13082 
   13083         Don't bail out if a single frame is invalid.
   13084         
   13085         * platform/graphics/mac/ImageMac.mm:
   13086         (WebCore::BitmapImage::getTIFFRepresentation):
   13087 
   13088 2007-07-30  Adele Peterson  <adele (a] apple.com>
   13089 
   13090         Reviewed by Darin.
   13091 
   13092         Fix for <rdar://problem/5274937> Safari 3 breaks Missing Sync's WebKit code by crashing
   13093 
   13094         * loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::continueAfterContentPolicy): Nil check for the FrameLoader.
   13095 
   13096 2007-07-30  Anders Carlsson  <andersca (a] apple.com>
   13097 
   13098         Reviewed by Darin.
   13099 
   13100         <rdar://problem/5370710> 
   13101         REGRESSION: After switching from Bookmark view, the Find Banner won't appear while displaying a PDF file
   13102 
   13103         Add a hasHTMLView to FrameLoaderClient. This is only useful for clients who can show different views for different
   13104         MIME types and URL schemes.
   13105         
   13106         * loader/FrameLoader.cpp:
   13107         (WebCore::FrameLoader::transitionToCommitted):
   13108         Call delegate methods here if the current view is not a HTML view.
   13109         
   13110         * loader/FrameLoaderClient.h:
   13111         (WebCore::FrameLoaderClient::hasHTMLView):
   13112 
   13113 2007-07-30  Sam Weinig  <sam (a] webkit.org>
   13114 
   13115         Reviewed by Maciej.
   13116 
   13117         Fix for <rdar://problem/5363896>
   13118         REGRESSION: Setting document.domain does not override port-based cross-frame security checks -- breaks SAP NetWeaver
   13119 
   13120         Updates the results for:
   13121             http/tests/security/cross-frame-access-port-explicit-domain.html
   13122             http/tests/security/cross-frame-access-protocol-explicit-domain.html
   13123 
   13124         * bindings/js/kjs_window.cpp:
   13125         (KJS::createWindow): Use the new setDomainInternal method.
   13126         (KJS::Window::isSafeScript): Don't set check the port or protocol 
   13127         if both documents have explicitly set document.domain in the DOM
   13128         and the those domains are equal.
   13129         * dom/Document.cpp:
   13130         (WebCore::Document::Document):
   13131         (WebCore::Document::setDomain): Remove force parameter and change 
   13132         all calls that relied on it use the new setDomainInternal method
   13133         which does the same thing.
   13134         (WebCore::Document::setDomainInternal): 
   13135         * dom/Document.h: Add new m_domainWasSetInDOM variable and accessor.
   13136         (WebCore::Document::domainWasSetInDOM):
   13137         * loader/FrameLoader.cpp:
   13138         (WebCore::FrameLoader::checkCallImplicitClose): Use the new setDomainInternal method. 
   13139 
   13140 2007-07-30  Justin Garcia  <justin.garcia (a] apple.com>
   13141 
   13142         Reviewed by Tristan.
   13143         
   13144         <rdar://problem/5098931> Attachments are lost when they are moved into a ToDo after a delete
   13145         
   13146         Added an editor client method for asking whether or not it is
   13147         OK to merge content after a delete.
   13148 
   13149         * bridge/EditorClient.h:
   13150         * editing/DeleteSelectionCommand.cpp:
   13151         (WebCore::DeleteSelectionCommand::mergeParagraphs): Ask if the 
   13152         merge is allowed.
   13153         * platform/gdk/EditorClientGdk.cpp: 
   13154         (WebCore::EditorClientGdk::shouldMoveRangeAfterDelete): Added a method stub.
   13155         * platform/gdk/EditorClientGdk.h:
   13156         * platform/graphics/svg/SVGImageEmptyClients.h: 
   13157         (WebCore::SVGEmptyEditorClient::shouldMoveRangeAfterDelete): Ditto.
   13158 
   13159 2007-07-30  Alexey Proskuryakov  <ap (a] webkit.org>
   13160 
   13161         Reviewed by Anders.
   13162 
   13163         <rdar://problem/5352526>
   13164         http://bugs.webkit.org/show_bug.cgi?id=14704
   13165         REGRESSION: sync XMLHttpRequest.send() raises an exception for failed authentication
   13166 
   13167         Test: http/tests/xmlhttprequest/failed-auth.html
   13168 
   13169         * platform/network/mac/ResourceHandleMac.mm:
   13170         (WebCore::ResourceHandle::loadResourceSynchronously): Make the fake response better match the real one
   13171         in case of failed authentication. Unfortunately, NSURLConnection doesn't give us the real response.
   13172 
   13173         * xml/XMLHttpRequest.cpp:
   13174         (WebCore::XMLHttpRequest::send): If the response has an HTTP code in it, then the error wasn't
   13175         a network one, and an exception shouldn't be raised.
   13176 
   13177 2007-07-30  Anders Carlsson  <andersca (a] apple.com>
   13178 
   13179         Reviewed by Darin.
   13180 
   13181         <rdar://problem/4942372> REGRESSION: Anchor links in Mail don't work anymore
   13182         
   13183         Make it possible for KURL to handle addig fragments to non-hierarchical URLs
   13184         such as mailto: and cid:.
   13185     
   13186         * platform/KURL.cpp:
   13187         (WebCore::KURL::init):
   13188         If the base URL is not hierarchical but the relative URL is a fragment, then 
   13189         allow parsing it.
   13190         
   13191         (WebCore::KURL::parse):
   13192         If the URL is not hierarchical, set the fragment start and end positions correctly.
   13193 
   13194 2007-07-30  Simon Hausmann  <hausmann (a] kde.org>
   13195 
   13196         Reviewed by Lars.
   13197 
   13198         On Windows make sure the dll also ends up in $$OUTPUT_DIR/bin, so that QtLauncher can find it.
   13199 
   13200         * WebCore.pro:
   13201 
   13202 2007-07-30  Simon Hausmann  <hausmann (a] kde.org>
   13203 
   13204         Reviewed by Lars.
   13205 
   13206         Removed the __BUILDING_QT ifdef in JSStringRef.h and changed UChar for the Qt build to use wchar_t on Windows.
   13207 
   13208         * platform/TextEncoding.cpp:
   13209         (WebCore::TextEncoding::encode):
   13210 
   13211 2007-07-30  Simon Hausmann  <hausmann (a] kde.org>
   13212 
   13213         Reviewed by Lars.
   13214 
   13215         Don't link against libxml/libxslt unless we really need it.
   13216 
   13217         * WebCore.pro:
   13218 
   13219 2007-07-29  Tristan O'Tierney  <tristan (a] apple.com>
   13220 
   13221         Reviewed by Oliver Hunt.
   13222 
   13223         <rdar://problem/5369282> REGRESSION: DOMHTMLInput throwing exception due to missing _isEdited method
   13224 
   13225         * bindings/objc/DOMHTML.mm:
   13226         (-[DOMHTMLInputElement _isEdited]):
   13227         (-[DOMHTMLTextAreaElement _isEdited]):
   13228         * bindings/objc/DOMPrivate.h:
   13229         Renamed _isUserEdited to _isEdited.
   13230 
   13231 2007-07-29  Adam Treat  <treat (a] kde.org>
   13232 
   13233         Reviewed by George Staikos.
   13234 
   13235         Correctly set the update rect for the scrollbars when they are invalidated.
   13236         Do not paint entire page for each scroll delta.  Cache the dirty regions
   13237         when webkit calls ScrollView::updateContents as webkit expects the paint
   13238         routine to use the dirty regions bounding rect.
   13239 
   13240         These changes greatly reduce the cpu load as we are no longer painting the
   13241         entire page for each 1px scroll :P
   13242 
   13243         * platform/qt/ScrollViewQt.cpp:
   13244         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   13245         (WebCore::ScrollView::updateContents):
   13246         (WebCore::ScrollView::paint):
   13247         * platform/qt/WidgetQt.cpp:
   13248         (WebCore::Widget::invalidateRect):
   13249 
   13250 2007-07-29  Adele Peterson  <adele (a] apple.com>
   13251 
   13252         Reviewed by John.
   13253 
   13254         WebCore part of fix for <rdar://problem/5102522> REGRESSION: Can't tab to webview that doesn't have editable content (affects Safari, preview pane in Mail)
   13255 
   13256         * WebCore.exp:
   13257         * page/FocusController.cpp:
   13258         (WebCore::FocusController::setInitialFocus): Added.
   13259         (WebCore::FocusController::advanceFocus): Don't give the focus back to the chrome if this is the initial focus.
   13260         * page/FocusController.h:
   13261 
   13262 2007-07-29  Adam Treat  <treat (a] kde.org>
   13263 
   13264         Reviewed by Alexey Proskuryakov.
   13265 
   13266         WebCore::Widget::setParent should be virtual.
   13267         It is reimplemented in ScrollViewQt for instance.
   13268 
   13269         * platform/Widget.h:
   13270 
   13271 2007-07-29  Alp Toker  <alp.toker (a] collabora.co.uk>
   13272 
   13273         Reviewed by bdash.
   13274 
   13275         http://bugs.webkit.org/show_bug.cgi?id=14711 (revisited)
   13276         RenderThemeGdk's buttons are state-agnostic (pressed, hovered)
   13277 
   13278         Generalize shadow state into a function.
   13279         use a GtkHBox to work around a theme bug (thanks to Nigel Tao).
   13280 
   13281         * platform/gdk/RenderThemeGdk.cpp:
   13282         (WebCore::RenderThemeGdk::determineShadow):
   13283         (WebCore::RenderThemeGdk::paintCheckbox):
   13284         (WebCore::RenderThemeGdk::paintRadio):
   13285         (WebCore::RenderThemeGdk::paintButton):
   13286         (WebCore::RenderThemeGdk::gtkWindowContainer):
   13287         * platform/gdk/RenderThemeGdk.h:
   13288 
   13289 2007-07-27  Adele Peterson  <adele (a] apple.com>
   13290 
   13291         Reviewed by Darin. 
   13292 
   13293         Temporary fix for Windows to prevent crashing on all frame pages.  Darin
   13294         is working on a more permanent fix.
   13295 
   13296         * loader/FrameLoader.cpp:
   13297 
   13298 2007-07-27  Adam Treat  <treat (a] kde.org>
   13299 
   13300         Reviewed by David Hyatt.
   13301 
   13302         Fix crash when using QtWebKit canvas support.
   13303 
   13304         * ChangeLog:
   13305         * html/HTMLCanvasElement.cpp:
   13306         (WebCore::HTMLCanvasElement::reset):
   13307 
   13308 2007-07-27  Darin Adler  <darin (a] apple.com>
   13309 
   13310         * rendering/RenderLayer.cpp: Rolled out accidentally-checked-in code.
   13311 
   13312 2007-07-27  Darin Adler  <darin (a] apple.com>
   13313 
   13314         Reviewed by John Sullivan.
   13315 
   13316         - fix <rdar://problem/5261393> In Mail the plain text alternatives to messages with attachments show weird little OBJ thingies
   13317 
   13318         The "weird little thingies" are U+FFFC characters. It's good to render them as zero-width, the way we do
   13319         with control characters -- helps Mail and doesn't hurt web browsing.
   13320 
   13321         Test: fast/text/zero-width-characters.html
   13322 
   13323         * platform/CharacterNames.h: Add names for leftToRightMark, rightToLeftMark, and objectReplacementCharacter.
   13324         * platform/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::initializePage): Give objectReplacementCharacter
   13325         zero width in the same way we do it for the various other characters.
   13326 
   13327 2007-07-27  Lars Knoll <lars (a] trolltech.com>
   13328 
   13329         Reviewed by Zack
   13330 
   13331         Enable XSLT support for the gtk port.
   13332 
   13333         * WebCore.pro:
   13334 
   13335 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13336 
   13337         Reviewed by Zack and Lars.
   13338 
   13339         Premature end after finishing parsing is a fatal error.
   13340 
   13341         * dom/XMLTokenizer.cpp:
   13342         (WebCore::XMLTokenizer::end):
   13343 
   13344 2007-07-27  Lars Knoll  <lars (a] trolltech.com>
   13345 
   13346         Reviewed by Zack and Lars.
   13347 
   13348         Simplify conversions that go from a QStringRef to a WebCore::String to not use a temporary QString.
   13349 
   13350         * dom/XMLTokenizer.cpp:
   13351         (WebCore::):
   13352 
   13353 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13354 
   13355         Reviewed by Zack and Lars.
   13356 
   13357         Fix entity handling in the main document content (attributes still broken)
   13358 
   13359         * dom/XMLTokenizer.cpp:
   13360         (WebCore::):
   13361 
   13362 2007-07-27  Lars Knoll  <lars (a] trolltech.com>
   13363 
   13364         Reviewed by Zack and Lars.
   13365 
   13366         Correctly convert a null QString into a null WebCore::String. Add a String(const QStringRef&) constructor so that we can avoid converting QStringRef via QString to WebCore::String.
   13367 
   13368         * dom/XMLTokenizer.cpp:
   13369         (WebCore::):
   13370         * platform/PlatformString.h:
   13371         * platform/qt/StringQt.cpp:
   13372         (WebCore::String::String):
   13373 
   13374 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13375 
   13376         Reviewed by Zack and Lars.
   13377 
   13378         Parse version and encoding of the xml document.
   13379 
   13380         * dom/XMLTokenizer.cpp:
   13381         (WebCore::XMLTokenizer::write):
   13382 
   13383 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13384 
   13385         Reviewed by Zack and Lars.
   13386 
   13387         Correctly or semi-correctly parse the public and system id.
   13388 
   13389         Patch from Lars.
   13390 
   13391         * dom/XMLTokenizer.cpp:
   13392         (WebCore::):
   13393 
   13394 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13395 
   13396         Reviewed by Zack and Lars.
   13397 
   13398         Fix uri parsing for attributes.
   13399 
   13400         * dom/XMLTokenizer.cpp:
   13401         (WebCore::):
   13402 
   13403 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13404 
   13405         Reviewed by Zack and Lars.
   13406 
   13407         Fixing qualified name parsing - from Lars.
   13408 
   13409         * dom/XMLTokenizer.cpp:
   13410         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   13411         (WebCore::):
   13412 
   13413 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13414 
   13415         Reviewed by Zack and Lars.
   13416 
   13417         Parse dtd's
   13418 
   13419         * dom/XMLTokenizer.cpp:
   13420         (WebCore::XMLTokenizer::resumeParsing):
   13421         (WebCore::):
   13422         * dom/XMLTokenizer.h:
   13423 
   13424 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13425 
   13426         Reviewed by Zack and Lars.
   13427 
   13428         Implement error handling.
   13429 
   13430         Add our copyrights
   13431 
   13432         * dom/XMLTokenizer.cpp:
   13433         (WebCore::XMLTokenizer::handleError):
   13434         (WebCore::XMLTokenizer::end):
   13435         (WebCore::):
   13436         * dom/XMLTokenizer.h:
   13437 
   13438 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13439 
   13440         Reviewed by Zack and Lars.
   13441 
   13442         Making the stylesheets work (plus everything else basically)
   13443 
   13444         * dom/XMLTokenizer.cpp:
   13445         (WebCore::XMLTokenizer::write):
   13446         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   13447         (WebCore::):
   13448         * dom/XMLTokenizer.h:
   13449 
   13450 2007-07-27  Zack Rusin  <zack (a] kde.org>
   13451 
   13452         Reviewed by Zack and Lars.
   13453 
   13454         Remove the libxml dependency when not compiling with XSLT.
   13455 
   13456         Just ifdefing, displaying xml doesn't work.
   13457 
   13458         * WebCore.pro:
   13459         * dom/XMLTokenizer.cpp:
   13460         (WebCore::XMLTokenizer::XMLTokenizer):
   13461         (WebCore::XMLTokenizer::write):
   13462         (WebCore::XMLTokenizer::startElementNs):
   13463         (WebCore::XMLTokenizer::enterText):
   13464         (WebCore::XMLTokenizer::exitText):
   13465         (WebCore::XMLTokenizer::initializeParserContext):
   13466         (WebCore::XMLTokenizer::end):
   13467         (WebCore::XMLTokenizer::lineNumber):
   13468         (WebCore::XMLTokenizer::columnNumber):
   13469         (WebCore::XMLTokenizer::stopParsing):
   13470         (WebCore::XMLTokenizer::resumeParsing):
   13471         (WebCore::):
   13472         * dom/XMLTokenizer.h:
   13473 
   13474 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13475 
   13476         Reviewed by Zack.
   13477 
   13478         Work around bug in the moc when used as preprocessor for generating the bindings. -DFOO=1 is needed instead of -DFOO
   13479         to make the <hash>if FOO conditional match.
   13480 
   13481         * WebCore.pro:
   13482 
   13483 2007-07-27  Patrick Hanna  <phanna (a] email.unc.edu>
   13484 
   13485         Reviewed by Darin Adler.
   13486 
   13487         Change PluginBase::refresh to be static and update PluginsFunc::callAsFunction accordingly. Now we no longer
   13488         allocate an instance of a JSObject subclass on the stack which could lead to a crash during garbage collection.
   13489 
   13490         * bindings/js/kjs_navigator.cpp:
   13491         (KJS::PluginsFunc::callAsFunction):
   13492 
   13493 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13494 
   13495         Done with and reviewed by Lars and Zack.
   13496 
   13497         Fix snprintf hack for the Qt/Windows build with mingw-gcc. MingW has snprintf, so we don't need this helper function.
   13498 
   13499         * page/FrameTree.cpp:
   13500         * platform/DeprecatedString.cpp:
   13501         (WebCore::DeprecatedString::format):
   13502         * platform/String.cpp:
   13503         (WebCore::String::format):
   13504 
   13505 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13506 
   13507         Done with and reviewed by Lars and Zack.
   13508 
   13509         Make the DocTypeStrings.cpp generation work with MingW. Cleaned it up to be a regular extra compiler at the same time.
   13510 
   13511         * WebCore.pro:
   13512 
   13513 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13514 
   13515         Done with and reviewed by Lars and Zack.
   13516 
   13517         MingW build fixes: Do the "OBJECTS_TRAILING_SLASH" trick not only for win32-msvc but for all win32 mkspecs. Added LIB/INCLUDE hack from Qt to make us pick up 3rdparty libraries such as libxml from these environment variables.
   13518 
   13519         * WebCore.pro:
   13520 
   13521 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13522 
   13523         Done with and reviewed by Lars and Zack.
   13524 
   13525         Use $(MOVE) instead of mv to eliminated the shell dependency and replaced the long shell line to call bison and modify the css grammar file with a few lines of portable perl code.
   13526 
   13527         * WebCore.pro:
   13528         * css/makegrammar.pl: Added.
   13529 
   13530 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13531 
   13532         Done with and reviewed by Lars and Zack.
   13533 
   13534         On make install on Windows copy the dll into the bin dir.
   13535 
   13536         * WebCore.pro:
   13537 
   13538 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13539 
   13540         Done with and reviewed by Lars and Zack.
   13541 
   13542         Link in libxml and libxslt on Windows.
   13543 
   13544         * WebCore.pro:
   13545 
   13546 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13547 
   13548         Done with and reviewed by Lars and Zack.
   13549 
   13550         Temporarily disable the ICO support for the Qt build on Windows.
   13551 
   13552         * WebCore.pro:
   13553         * platform/graphics/qt/ImageDecoderQt.cpp:
   13554 
   13555 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13556 
   13557         Done with and reviewed by Lars and Zack.
   13558 
   13559         Fix evaluation with ActiveState Perl 5.6. Somehow it tried to treat nameEntries as array.
   13560 
   13561         * bindings/scripts/CodeGeneratorJS.pm:
   13562 
   13563 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13564 
   13565         Done with and reviewed by Lars and Zack.
   13566 
   13567         Fix compilation with MSVC in the Qt build (missing header files).
   13568 
   13569         * loader/icon/IconDatabaseNone.cpp:
   13570         * platform/graphics/svg/SVGImage.cpp:
   13571 
   13572 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13573 
   13574         Done with and reviewed by Lars and Zack.
   13575 
   13576         Disable the favicon database on Windows for now, to eliminate the sqlite dependency.
   13577 
   13578         * WebCore.pro:
   13579 
   13580 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13581 
   13582         Done with and reviewed by Lars and Zack.
   13583 
   13584         Added custom preprocessor support to make_names.pl and use the moc for it in the Qt build.
   13585 
   13586         * WebCore.pro:
   13587         * ksvg2/scripts/make_names.pl:
   13588 
   13589 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13590 
   13591         Done with and reviewed by Lars and Zack.
   13592 
   13593         Disable the batch mode for nmake to work around the clash of Node.c and Node.cpp both mapping to Node.obj
   13594 
   13595         * WebCore.pro:
   13596 
   13597 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13598 
   13599         Done with and reviewed by Lars and Zack.
   13600 
   13601         Fix compilation under Windows (removed sys/time.h dependency, use Qt instead).
   13602 
   13603         * platform/qt/SystemTimeQt.cpp:
   13604 
   13605 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13606 
   13607         Done with and reviewed by Lars and Zack.
   13608 
   13609         Fix compilation on Windows.
   13610 
   13611         * platform/graphics/qt/PathQt.cpp:
   13612 
   13613 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13614 
   13615         Done with and reviewed by Lars and Zack.
   13616 
   13617         Fix generation of ColorData.c on Windows.
   13618 
   13619         * WebCore.pro:
   13620 
   13621 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13622 
   13623         Done with and reviewed by Lars and Zack.
   13624 
   13625         Fix compilation under Qt/Windows.
   13626 
   13627         * loader/icon/IconDatabase.cpp:
   13628         (WebCore::IconDatabase::open):
   13629 
   13630 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13631 
   13632         Done with and reviewed by Lars and Zack.
   13633 
   13634         Changed extendedAttributes to be a variable instead of a hash directly. Required to work with ActiveState perl.
   13635 
   13636         * bindings/scripts/IDLStructure.pm:
   13637 
   13638 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13639 
   13640         Done with and reviewed by Lars and Zack.
   13641 
   13642         Fix header guard generation for CSSGrammar.h under Windows
   13643 
   13644         * WebCore.pro:
   13645 
   13646 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13647 
   13648         Done with and reviewed by Lars and Zack.
   13649 
   13650         Fix build with moc as preprocessor. Don't rely the preprocessor preserving whitespace at the beginning of lines.
   13651 
   13652         * bindings/scripts/IDLParser.pm:
   13653 
   13654 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13655 
   13656         Done with and reviewed by Lars and Zack.
   13657 
   13658         Make make-css-file-arrays.pl work on Windows by not calling /usr/bin/gcc as preprocessor for the Qt build.
   13659 
   13660         * WebCore.pro:
   13661         * css/make-css-file-arrays.pl:
   13662 
   13663 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13664 
   13665         Done with and reviewed by Lars and Zack.
   13666 
   13667         More gperf commandline fixes for Windows.
   13668 
   13669         * WebCore.pro:
   13670 
   13671 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13672 
   13673         Done with and reviewed by Lars and Zack.
   13674 
   13675         More quoting fixes for perl under Windows.
   13676 
   13677         * WebCore.pro:
   13678 
   13679 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13680 
   13681         Done with and reviewed by Lars and Zack.
   13682 
   13683         Fix command quoting under Windows
   13684 
   13685         * WebCore.pro:
   13686 
   13687 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13688 
   13689         Done with and reviewed by Lars and Zack.
   13690 
   13691         Fix cssmakeprops and cssmakevalue scripts to work on Windows without cygwin perl. Avoid inplace substitutions and direct invocation of /bin/sh. Also call gperf with arguments that GnuWin32's gperf understands.
   13692 
   13693         * ksvg2/scripts/cssmakeprops:
   13694         * ksvg2/scripts/cssmakevalues:
   13695 
   13696 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13697 
   13698         Done with and reviewed by Lars and Zack.
   13699 
   13700         Beautiful hacks to make more of the extra compiler magic work under Windows outside of cygwin.
   13701 
   13702         * WebCore.pro:
   13703 
   13704 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13705 
   13706         Done with and reviewed by Lars and Zack.
   13707 
   13708         Correctly propagate the custom preprocessor option through the idl parser and the codegenerator.
   13709 
   13710         * bindings/scripts/CodeGenerator.pm:
   13711         * bindings/scripts/generate-bindings.pl:
   13712 
   13713 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13714 
   13715         Done with and reviewed by Lars and Zack.
   13716 
   13717         When constructing the absolute path when searching for IDL files in the list of search paths don't prepend a slash if $SOURCEROOT as environment variable is not set. In the Qt build we pass absolute search paths already and we don't set SOURCEROOT. Under Unix that gives a double slash for the directory which works fine, under Windows we get /c:\webkit\foo which of course does not work.
   13718 
   13719         * bindings/scripts/CodeGenerator.pm:
   13720 
   13721 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13722 
   13723         Done with and reviewed by Lars and Zack.
   13724 
   13725         Relax the regular expression that tries to find constant declarations in the IDL source to not require leading whitespace. This makes it work with preprocessors that happen to eliminate leading whitespace.
   13726 
   13727         * bindings/scripts/IDLParser.pm:
   13728 
   13729 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13730 
   13731         Done with and reviewed by Lars and Zack.
   13732 
   13733         Try to use the moc as preprocessor for the IDL bindings generator
   13734 
   13735         * WebCore.pro:
   13736 
   13737 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13738 
   13739         Done with and reviewed by Lars and Zack.
   13740 
   13741         Make it possible to specify the preprocessor the bindings generator uses instead of hardcoding /usr/bin/gcc (which is of course no option on Windows). Also try to use a more portable and Windows friendly way of opening the reading pipe to the preprocessor.
   13742 
   13743         * bindings/scripts/IDLParser.pm:
   13744         * bindings/scripts/generate-bindings.pl:
   13745 
   13746 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13747 
   13748         Done with and reviewed by Lars and Zack.
   13749 
   13750         Don't use stdout redirection for make_names.pl as it doesn't work under Windows perl (outside cygwin).
   13751 
   13752         * ksvg2/scripts/make_names.pl:
   13753 
   13754 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13755 
   13756         Done with and reviewed by Lars and Zack.
   13757 
   13758         Fix DocTypeStrings.cpp generation to work on Windows with cmd.exe
   13759 
   13760         * WebCore.pro:
   13761 
   13762 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13763 
   13764         Reviewed by Lars.
   13765 
   13766         Work around aliasing bugs in WebCore by compiling with -fno-strict-aliasing for gcc builds for now.
   13767 
   13768         * WebCore.pro:
   13769 
   13770 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13771 
   13772         Reviewed by Lars.
   13773 
   13774         Use -Wreturn-type only when compiling with g++
   13775 
   13776         * WebCore.pro:
   13777 
   13778 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13779 
   13780         Reviewed by Zack.
   13781 
   13782         Don't use pkg-config on Windows for the Qt build
   13783 
   13784         * WebCore.pro:
   13785 
   13786 2007-07-27  Simon Hausmann  <hausmann (a] kde.org>
   13787 
   13788         Reviewed by Zack.
   13789 
   13790         Fix compilation with MSVC.
   13791 
   13792         * platform/graphics/qt/ImageDecoderQt.cpp:
   13793 
   13794 2007-07-26  Tristan O'Tierney  <tristan (a] apple.com>
   13795 
   13796         Reviewed by Anders Carlsson.
   13797 
   13798         <rdar://problem/5350019> REGRESSION: Pages on milliyet.com are added to Back list when visited, causing Back button to just reload
   13799 
   13800         * loader/FrameLoader.cpp:
   13801         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   13802         If the policy action is FrameLoadTypeRedirectLockHistory, don't add the frame load url to the history.
   13803 
   13804 2007-07-26  Anders Carlsson  <andersca (a] apple.com>
   13805 
   13806         Reviewed by Geoff.
   13807 
   13808         Add a FIXME about caching pages with plug-ins that have outstanding NPObjects.
   13809         
   13810         * loader/FrameLoader.cpp:
   13811         (WebCore::FrameLoader::canCachePage):
   13812 
   13813 2007-07-26  David Hyatt  <hyatt (a] apple.com>
   13814 
   13815         FIx for <rdar://problem/5289721> CrashTracer: [REGRESSION] 2658 crashes in Safari at com.apple.WebCore: WebCore::RenderInline::height const + 16
   13816 
   13817         Adding a null check for now and an assert.  We don't know how/why this
   13818         bug happens, but hopefully the assert will help people to reproduce.
   13819 
   13820         Reviewed by kevin
   13821 
   13822         * rendering/RenderInline.cpp:
   13823         (WebCore::RenderInline::height):
   13824 
   13825 2007-07-26  Anders Carlsson  <andersca (a] apple.com>
   13826 
   13827         Reviewed by Oliver.
   13828 
   13829         <rdar://problem/5362783>
   13830         In Mail, a crash occurs at WTF::fastMalloc() when attempting to create a new HTML message from http://nytimes.com/
   13831         
   13832         If the cache is disabled and there is already a resource with the given URL, return it instead of creating a new one.
   13833         
   13834         * loader/DocLoader.cpp:
   13835         (WebCore::DocLoader::requestResource):
   13836 
   13837 2007-07-26  Adele Peterson  <adele (a] apple.com>
   13838 
   13839         Reviewed by Geoff. 
   13840 
   13841         Build fix.
   13842 
   13843         * platform/network/cf/ResourceRequest.h:
   13844 
   13845 2007-07-26  Anders Carlsson  <andersca (a] apple.com>
   13846 
   13847         Reviewed by John Sullivan.
   13848 
   13849         <rdar://problem/5349389> 
   13850         Some frame load delegate methods not called when loading a page from the BF cache
   13851         
   13852         These calls were moved to FrameLoader::begin, which is never called for pages loaded
   13853         from the BF cache. This happened in revision 24490.
   13854          
   13855         * loader/FrameLoader.cpp:
   13856         (WebCore::FrameLoader::transitionToCommitted):
   13857         Call delegate methods if the load is from the BF cache.
   13858 
   13859 2007-07-26  Kevin McCullough  <kmccullough (a] apple.com>
   13860 
   13861         Reviewed by Darin, Geoff and Sam.
   13862 
   13863         - <rdar://problem/5150461> Resizing the window larger than the screen causes no resize.
   13864         - We now better match the behavior of other browsers.
   13865 
   13866         * bindings/js/kjs_window.cpp:
   13867         (KJS::constrainToVisible):
   13868         (KJS::WindowFunc::callAsFunction):
   13869 
   13870 2007-07-26  Tristan O'Tierney  <tristan (a] apple.com>
   13871 
   13872         Reviewed by Adele Peterson.
   13873         
   13874         <rdar://problem/5359921> WebCore should maintain a dirty flag for confirmation on unsaved changes
   13875 
   13876         * bindings/objc/DOMHTML.mm:
   13877         (-[DOMHTMLInputElement _isUserEdited]):
   13878         (-[DOMHTMLTextAreaElement _isUserEdited]):
   13879         Renamed _isEdited to _isUserEdited since the functionality is now different
   13880         
   13881         * bindings/objc/DOMPrivate.h:
   13882         Renamed _isEdited to _isUserEdited.
   13883         
   13884         * rendering/RenderTextControl.cpp:
   13885         (WebCore::RenderTextControl::RenderTextControl):
   13886         Defaulted m_userEdited to false
   13887         
   13888         (WebCore::RenderTextControl::updateFromElement):
   13889         Set m_userEdited to false, since the change wasn't triggered first by an edit
   13890         
   13891         (WebCore::RenderTextControl::subtreeHasChanged):
   13892         Set m_userEdited to true, since it has been touched by the user
   13893         
   13894         * rendering/RenderTextControl.h:
   13895         (WebCore::RenderTextControl::isUserEdited):
   13896         (WebCore::RenderTextControl::setUserEdited):
   13897         Added two new methods to set/return the userEdited boolean value.
   13898         
   13899 2007-07-26  Geoffrey Garen  <ggaren (a] apple.com>
   13900 
   13901         Reviewed by Beth Dakin.
   13902 
   13903         Fixed NULL-dereference crash seen on buildbot.
   13904         
   13905         No bug filed because this is a part of <rdar://problem/5241167>.
   13906 
   13907         * history/PageCache.h:
   13908         (WebCore::PageCache::get): NULL-check HistoryItems passed to get()
   13909         and remove(), to match the old semantics of HashMap. For clarity,
   13910         ASSERT that add() is not called with NULL arguments.
   13911 
   13912 2007-07-26  Anders Carlsson  <andersca (a] apple.com>
   13913 
   13914         Reviewed by Oliver Hunt.
   13915 
   13916         <rdar://problem/5361106> Crash in user style sheet when loading webpage
   13917 
   13918         Null check m_frame.
   13919         
   13920         * dom/Document.cpp:
   13921         (WebCore::Document::stylesheetLoaded):
   13922 
   13923 2007-07-26  Geoffrey Garen  <ggaren (a] apple.com>
   13924 
   13925         Used `svn merge -r24646:24645' to revert project changes I accidentally
   13926         checked in.
   13927 
   13928         * WebCore.xcodeproj/project.pbxproj:
   13929 
   13930 2007-07-26  Geoffrey Garen  <ggaren (a] apple.com>
   13931 
   13932         Reviewed by Darin Adler.
   13933 
   13934         Fixed <rdar://problem/5241167> REGRESSION: PLT 1% slower due to r21793 
   13935         (global page cache cap)
   13936         
   13937         I just measured a .1%-.2% regression in PLT average, but a .4% win in 
   13938         PLT fastest run, so I think this regression is licked.
   13939 
   13940         Surprisingly, the combination of wtf data structures I originally used 
   13941         for PageCache turned out to be too slow, so I reworked PageCache to use
   13942         a hand-crafted linked list for LRU tracking (instead of ListHashSet), 
   13943         to store its CachedPages in the HistoryItems to which they corresponded 
   13944         (instead of using a HashMap), and to ref/deref HistoryItems manually
   13945         (instead of using RefPtr, which would ref once for every reference in 
   13946         the linked list).
   13947 
   13948         * history/HistoryItem.h: Added data members for PageCache data. Made
   13949         PageCache a friend so it could access them. Ideally (from an 
   13950         encapsulation perspective), we would store this data an independent 
   13951         structure, but that's just too slow.
   13952 
   13953         * history/PageCache.cpp: Added a hand-crafted linked list for LRU 
   13954         tracking.
   13955         (WebCore::PageCache::PageCache):
   13956         (WebCore::PageCache::add): Adopt the HistoryItem's ref when it's added.
   13957         (WebCore::PageCache::remove): deref() the Historyitem when it's 
   13958         removed.
   13959         (WebCore::PageCache::prune):
   13960         (WebCore::PageCache::addToLRUList):
   13961         (WebCore::PageCache::removeFromLRUList):
   13962 
   13963         * history/PageCache.h:
   13964         (WebCore::PageCache::get): Inlined just in case.
   13965 
   13966 2007-07-26  Adam Treat  <treat (a] kde.org>
   13967 
   13968         Reviewed by George Staikos.
   13969 
   13970         Launch the context menu in the right place.
   13971 
   13972         * platform/qt/ContextMenuQt.cpp:
   13973         (WebCore::ContextMenu::setPlatformDescription):
   13974 
   13975 2007-07-25  Maciej Stachowiak  <mjs (a] apple.com>
   13976 
   13977         Reviewed by Mark.
   13978 
   13979         - follow-up to previous change to avoid assertion failures in debug
   13980         
   13981         * xml/XMLHttpRequest.cpp:
   13982         (WebCore::XMLHttpRequest::getResponseText): hold JSLock when needed
   13983         (WebCore::XMLHttpRequest::open): ditto
   13984         (WebCore::XMLHttpRequest::didFinishLoading): ditto
   13985         (WebCore::XMLHttpRequest::didReceiveData): ditto
   13986         * xml/XMLHttpRequest.h:
   13987 
   13988 2007-07-25  Anders Carlsson  <andersca (a] apple.com>
   13989 
   13990         Reviewed by Darin.
   13991 
   13992         <rdar://problem/5327912> 
   13993         iDisk: Web iDisk & main iDisk appear blank
   13994         
   13995         Prepend any remaining text that scripts might have written.
   13996         
   13997         * html/HTMLTokenizer.cpp:
   13998         (WebCore::HTMLTokenizer::scriptExecution):
   13999 
   14000 2007-07-25  Kevin McCullough  <kmccullough (a] apple.com>
   14001 
   14002         Reviewed by Tim, Darin, Oliver.
   14003 
   14004         - <rdar://problem/5329440> REGRESSION: Clicking links with the feed:// protocol in Safari 3 does nothing
   14005         - Check for file:// urls when clicking links, not block all schemes that are treated as local.
   14006 
   14007         * loader/FrameLoader.cpp:
   14008         (WebCore::FrameLoader::load):
   14009 
   14010 2007-07-25  Maciej Stachowiak  <mjs (a] apple.com>
   14011 
   14012         Reviewed by Darin.
   14013 
   14014         - fixed <rdar://problem/5300291> Optimize GC to reclaim big, temporary objects (like XMLHttpRequest.responseXML) quickly
   14015         
   14016         With this plus related JavaScriptCore changes, a number of XMLHttpRequest situations that
   14017         result in huge data sets are addressed, including a single huge responseXML on an XMR done
   14018         repeatedly, or accessing responseText repeatedly during loading of a single large XHR.
   14019         
   14020         In addition to the GC changes in JavaScriptCore, I changed responseText to be stored as a
   14021         KJS::UString instead of a WebCore::String so that the JavaScript responseText value can
   14022         share the buffer (indeed multiple intermediate responseTexts can share its buffer).
   14023 
   14024         
   14025         First of all, here's some manual test cases that will each blow out the process VM without this fix,
   14026         but will settle into decent steady state with.
   14027         
   14028         * manual-tests/memory: Added.
   14029         * manual-tests/memory/MessageUidsAlreadyDownloaded2: Added.
   14030         * manual-tests/memory/string-growth.html: Added.
   14031         * manual-tests/memory/xhr-multiple-requests-responseText.html: Added.
   14032         * manual-tests/memory/xhr-multiple-requests-responseXML.html: Added.
   14033         * manual-tests/memory/xhr-multiple-requests.html: Added.
   14034         * manual-tests/memory/xhr-repeated-string-access.xml: Added.
   14035 
   14036         And here's the actual code changes:
   14037         
   14038         * WebCore.xcodeproj/project.pbxproj:
   14039         * bindings/js/JSDocumentCustom.cpp:
   14040         (WebCore::toJS): Record extra cost if the document is frameless (counting the nodes
   14041         doesn't make a measurable performance difference here in any case I could find)
   14042         * bindings/js/JSXMLHttpRequest.cpp:
   14043         (KJS::JSXMLHttpRequest::getValueProperty): Adjust for the fact that ressponseText
   14044         is now stored as a UString.
   14045         * bindings/js/kjs_binding.cpp:
   14046         (KJS::jsOwnedStringOrNull): New helper.
   14047         * bindings/js/kjs_binding.h:
   14048         * xml/XMLHttpRequest.cpp:
   14049         (WebCore::XMLHttpRequest::getResponseText): It's a UString!
   14050         (WebCore::XMLHttpRequest::getResponseXML): handle the fact that m_responseText
   14051         is a UString.
   14052         (WebCore::XMLHttpRequest::XMLHttpRequest): ditto.
   14053         (WebCore::XMLHttpRequest::abort): call dropProtection
   14054         (WebCore::XMLHttpRequest::didFinishLoading): call dropProtection
   14055         (WebCore::XMLHttpRequest::dropProtection): after removing our GC protection,
   14056         report extra cost of this XHR's responseText buffer.
   14057         * xml/XMLHttpRequest.h:
   14058 
   14059 2007-07-25  Timothy Hatcher  <timothy (a] apple.com>
   14060 
   14061         Reviewed by Brady.
   14062 
   14063         <rdar://problem/4796657> table deletion outline does not always follow the table size as editing occurs inside
   14064 
   14065         Change the outline element to position itself automaticlly using the top, left, bottom and right CSS properties.
   14066         This made the container element redundant, so it has been removed. Now the outline element and the delete button
   14067         both get appended to the target element and positioned based on that container element. This removes the need
   14068         to update the width and height when the target contents changed.
   14069 
   14070         * editing/DeleteButtonController.cpp:
   14071         (WebCore::DeleteButtonController::show): Change the style properties and remove the container element.
   14072         (WebCore::DeleteButtonController::hide): Remove the button and outline from the target element.
   14073         * editing/DeleteButtonController.h: Removed updateOutlineStyle, respondToChangedContents and m_containerElement.
   14074         * editing/Editor.cpp:
   14075         (WebCore::Editor::respondToChangedContents): Remove the call to DeleteButtonController respondToChangedContents.
   14076 
   14077 2007-07-25  Anders Carlsson  <andersca (a] apple.com>
   14078 
   14079         Reviewed by Darin.
   14080 
   14081         <rdar://problem/5344471>
   14082         CrashTracer: [USER] 1 crash in Mail at WebCore::PluginTokenizer::writeRawData(char const*, int)
   14083         
   14084         Make sure to layout so we'll have a renderer. Also null-check the renderer for extra safety.
   14085         
   14086         * loader/PluginDocument.cpp:
   14087         (WebCore::PluginTokenizer::writeRawData):
   14088 
   14089 2007-07-25  Brett Wilson  <brettw (a] chromium.org>
   14090 
   14091         Reviewed by Maciej, Darin.
   14092 
   14093         - http://bugs.webkit.org/show_bug.cgi?id=14030
   14094 
   14095         Add ResourceHandle::setClient to resolve some messiness with handle
   14096         releasing. Clear the client when ResourceLoader is going to release
   14097         the handle to prevent crashes in the case where somebody still holds a
   14098         reference (this doesn't seem to currently happen in practice). Add
   14099         NULL-checking for ResourceHandle implementations using the client.
   14100 
   14101         * loader/ResourceLoader.cpp:
   14102         (WebCore::ResourceLoader::releaseResources):
   14103         * platform/network/ResourceHandle.cpp:
   14104         (WebCore::ResourceHandle::fireBlockedFailure):
   14105         (WebCore::ResourceHandle::setClient):
   14106         * platform/network/ResourceHandle.h:
   14107         * platform/network/cf/ResourceHandleCFNet.cpp:
   14108         (WebCore::willSendRequest):
   14109         (WebCore::didReceiveResponse):
   14110         (WebCore::didReceiveData):
   14111         (WebCore::didFinishLoading):
   14112         (WebCore::didFail):
   14113         (WebCore::willCacheResponse):
   14114         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   14115         (WebCore::ResourceHandle::receivedCancellation):
   14116         * platform/network/mac/ResourceHandleMac.mm:
   14117         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   14118         (WebCore::ResourceHandle::didCancelAuthenticationChallenge):
   14119         (WebCore::ResourceHandle::receivedCancellation):
   14120         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
   14121         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
   14122         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
   14123         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
   14124         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
   14125         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
   14126         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   14127 
   14128 2007-07-25  Maxime Britto  <mbritto (a] pleyo.com>
   14129 
   14130         Reviewed by Darin.
   14131 
   14132         - fix http://bugs.webkit.org/show_bug.cgi?id=11756
   14133           REGRESSION: link targeting a frame in another window does not work
   14134           <rdar://problem/5286420>
   14135 
   14136         Test: http/tests/navigation/target-frame-from-window.html
   14137 
   14138         Fix a typo error to really compare the present domain to the domain of the parent of the targeted frame.
   14139 
   14140         * loader/FrameLoader.cpp: (WebCore::FrameLoader::canTarget):
   14141 
   14142 2007-07-25  Mitz Pettel  <mitz (a] webkit.org>
   14143 
   14144         Reviewed by Darin.
   14145 
   14146         - fix http://bugs.webkit.org/show_bug.cgi?id=14758
   14147           REGRESSION: Repeated text after line break on facebook.com
   14148 
   14149         Test: fast/text/reset-emptyRun.html
   14150 
   14151         * platform/BidiResolver.h:
   14152         (WebCore::::deleteRuns): Re-add a line that was removed for no reason at all
   14153         during refactoring in r24485.
   14154         * rendering/bidi.cpp:
   14155         (WebCore::BidiState::deleteRuns): Ditto.
   14156 
   14157 2007-07-24  Oliver Hunt  <oliver (a] apple.com>
   14158 
   14159         Reviewed by Adam and Justin.
   14160 
   14161         <rdar://problem/5141779> WebView editableDOMRangeForPoint: & moveDragCaretToPoint: returns last position in DOMText range
   14162 
   14163         Remove bridge implementation for editableDOMRangeForPoint: and moveDragCaretToPoint:. 
   14164         Now use cross-platform code Editor::rangeForPoint and DragController::placeDragCaret instead.
   14165         This required lifting local code from DragController.cpp into the shared methods
   14166         Frame::visiblePositionForPoint and Frame::documentAtPoint.
   14167 
   14168         * WebCore.exp:
   14169         * editing/Editor.cpp:
   14170         (WebCore::Editor::rangeForPoint):
   14171         * editing/Editor.h:
   14172         * page/DragController.cpp:
   14173         (WebCore::DragController::dragEnded):
   14174         (WebCore::DragController::performDrag):
   14175         (WebCore::DragController::dragEnteredOrUpdated):
   14176         (WebCore::DragController::tryDocumentDrag):
   14177         (WebCore::DragController::operationForLoad):
   14178         (WebCore::setSelectionToDragCaret):
   14179         (WebCore::DragController::concludeDrag):
   14180         (WebCore::DragController::placeDragCaret):
   14181         * page/DragController.h:
   14182         * page/Frame.cpp:
   14183         (WebCore::Frame::visiblePositionForPoint):
   14184         (WebCore::Frame::documentAtPoint):
   14185         * page/Frame.h:
   14186         * page/mac/WebCoreFrameBridge.h:
   14187         * page/mac/WebCoreFrameBridge.mm:
   14188 
   14189 2007-07-24  Sam Weinig  <sam (a] webkit.org>
   14190 
   14191         Rubber-stamped by Adam Roben.
   14192 
   14193         Remove unused .strip files.
   14194 
   14195         * WebCore.xcodeproj/project.pbxproj:
   14196 
   14197 2007-07-24  Adele Peterson  <adele (a] apple.com>
   14198 
   14199         Reviewed by Hyatt.
   14200 
   14201         Fix for <rdar://problem/5308492> Computed width for elements with box-sizing: border-box is not equal to the width set in the CSS
   14202 
   14203         Test: fast/css/getComputedStyle-border-box.html
   14204 
   14205         * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   14206           For the width and height properties, when you get the value from the renderer, use the renderer's box sizing value to determine the size.
   14207 
   14208 2007-07-24  Anders Carlsson  <andersca (a] apple.com>
   14209 
   14210         Reviewed by Kevin Decker.
   14211 
   14212         <rdar://problem/5355781>
   14213         REGRESSION: reproducible crash in CoreFoundation!CFRunLoopFinished on Flash pages
   14214         
   14215         Null check the loader.
   14216         
   14217         * plugins/win/PluginStreamWin.cpp:
   14218         (WebCore::PluginStreamWin::start):
   14219 
   14220 2007-07-24  Adele Peterson  <adele (a] apple.com>
   14221 
   14222         Reviewed by Hyatt and Adam.
   14223 
   14224         Fix for <rdar://problem/5130590> REGRESSION: style="width:1px" on <select> element no longer hides the element
   14225 
   14226         Removed hack that forced large padding on popup buttons.  Now we put that padding in the inner block, so that
   14227         the specified width will be honored.
   14228 
   14229         * rendering/RenderMenuList.cpp:
   14230         (WebCore::RenderMenuList::adjustInnerStyle): Set the padding on the inner block based on the metrics provided by the theme.
   14231         (WebCore::RenderMenuList::controlClipRect): Clip to the intersection of the inner content box and the outer content box.
   14232          This will leave room for the arrows which sit in the inner box padding, and if the inner box ever spills out of the outer box, 
   14233          that will get clipped too.
   14234         (WebCore::RenderMenuList::calcPrefWidths):  Add in the inner box's padding and border to the pref widths.
   14235 
   14236         * rendering/RenderThemeMac.mm:
   14237         (WebCore::RenderThemeMac::paintMenuList): Only inflate the rect for the shadow if the rect is big enough to fit the whole control.
   14238          Also, on Leopard, the NSCell will draw outside of a small rect, so add a clip for that case.
   14239         (WebCore::RenderThemeMac::paintMenuListButton): Restrict font scale to make sure the arrows will actually fit in the bounds vertically.
   14240          Don't draw the arrows if they won't fit horizontally.  Reset padding.  Since WinIE doesn't honor padding for popups, its not critical to
   14241          support padding at this time.
   14242         (WebCore::RenderThemeMac::adjustMenuListStyle): Don't set the padding here.  Instead, we're going to set the padding on the inner block of the select.
   14243         (WebCore::RenderThemeMac::adjustMenuListButtonStyle): ditto.
   14244         (WebCore::RenderThemeMac::popupInternalPaddingLeft): Added.  Provides internal padding values for RenderMenuList.
   14245         (WebCore::RenderThemeMac::popupInternalPaddingRight): ditto.
   14246         (WebCore::RenderThemeMac::popupInternalPaddingTop): ditto.
   14247         (WebCore::RenderThemeMac::popupInternalPaddingBottom): ditto.
   14248         * rendering/RenderThemeMac.h:
   14249 
   14250         * rendering/RenderThemeSafari.cpp:  The same changes that were made to RenderThemeMac were made here, with variations for the arrow differences.
   14251           This code should be refactored and shared, but now did not seem like the right time to do that refactoring.
   14252         (WebCore::RenderThemeSafari::paintMenuList):
   14253         (WebCore::RenderThemeSafari::paintMenuListButton):
   14254         (WebCore::RenderThemeSafari::adjustMenuListStyle):
   14255         (WebCore::RenderThemeSafari::popupInternalPaddingLeft):
   14256         (WebCore::RenderThemeSafari::popupInternalPaddingRight):
   14257         (WebCore::RenderThemeSafari::popupInternalPaddingTop):
   14258         (WebCore::RenderThemeSafari::popupInternalPaddingBottom):
   14259         (WebCore::RenderThemeSafari::adjustMenuListButtonStyle):
   14260         * rendering/RenderThemeSafari.h:
   14261 
   14262         * rendering/RenderTheme.h: Added to provide internal padding values for RenderMenuList.
   14263         (WebCore::RenderTheme::popupInternalPaddingLeft):
   14264         (WebCore::RenderTheme::popupInternalPaddingRight):
   14265         (WebCore::RenderTheme::popupInternalPaddingTop):
   14266         (WebCore::RenderTheme::popupInternalPaddingBottom):
   14267 
   14268 2007-07-24  Lars Knoll  <lars (a] trolltech.com>
   14269 
   14270         Reviewed by Adam Roben & David Kilzer.
   14271 
   14272         replace the makeprop and makevalues shell scripts by equivalent perl versions. This is required to remove the last shell dependency when building QtWebKit on Windows.
   14273 
   14274         * DerivedSources.make:
   14275         * WebCore.pro:
   14276         * WebCore.xcodeproj/project.pbxproj:
   14277         * css/makeprop: Added.
   14278         * css/makeprop.pl: Removed.
   14279         * css/makevalues: Added.
   14280         * css/makevalues.pl: Removed.
   14281 
   14282 2007-07-24  Beth Dakin  <bdakin (a] apple.com>
   14283 
   14284         Reviewed by Darin.
   14285 
   14286         Fix for http://bugs.webkit.org/show_bug.cgi?id=14714 REGRESSION: 
   14287         ASSERTION FAILED: i < size() in Vector.h:401 on negative -webkit-
   14288         column-width
   14289         - and -
   14290         http://bugs.webkit.org/show_bug.cgi?id=14718 REGRESSION: ASSERTION 
   14291         FAILED: i < size() in Vector.h:401 on zero -webkit-column-count
   14292 
   14293         * rendering/RenderBlock.cpp:
   14294         (WebCore::RenderBlock::calcColumnWidth): Make 1 the minimum value 
   14295         for column-width and column-count. Since the spec does not address 
   14296         what to do with negative values for these properties, we are 
   14297         patching the rendering code instead of the parser.
   14298 
   14299 2007-07-24  Anders Carlsson  <andersca (a] apple.com>
   14300 
   14301         Reviewed by Steve.
   14302         
   14303         <rdar://problem/5355403>
   14304         REGRESSION: 303A2 does not display pdf files with AdobeReader 8.1
   14305         
   14306         Close the file before handing off the file name to the plug-in.
   14307         
   14308         * plugins/win/PluginStreamWin.cpp:
   14309         (WebCore::PluginStreamWin::destroyStream):
   14310 
   14311 2007-07-24  Alp Toker  <alp.toker (a] collabora.co.uk>
   14312 
   14313         Reviewed by Adam.
   14314 
   14315         http://bugs.webkit.org/show_bug.cgi?id=14711
   14316         RenderThemeGdk's buttons are state-agnostic (pressed, hovered)
   14317 
   14318         Remove unnecessary label from widget instances.
   14319         Render check and radio widgets correctly.
   14320         Determine the widget state and render it appropriately.
   14321 
   14322         * platform/gdk/RenderThemeGdk.cpp:
   14323         (WebCore::RenderThemeGdk::determineState):
   14324         (WebCore::RenderThemeGdk::paintCheckbox):
   14325         (WebCore::RenderThemeGdk::paintRadio):
   14326         (WebCore::RenderThemeGdk::paintButton):
   14327         (WebCore::RenderThemeGdk::gtkButton):
   14328         (WebCore::RenderThemeGdk::gtkCheckbox):
   14329         (WebCore::RenderThemeGdk::gtkRadioButton):
   14330         * platform/gdk/RenderThemeGdk.h:
   14331 
   14332 2007-07-24  Mark Rowe  <mrowe (a] apple.com>
   14333 
   14334         Reviewed by Antti.
   14335 
   14336         <rdar://problem/5356666> NSMenuItem's seen leaking on buildbot
   14337 
   14338         * platform/mac/ContextMenuItemMac.mm:
   14339         (WebCore::ContextMenuItem::releasePlatformDescription): Transfer ownership from the RetainPtr's CF-based retain
   14340         count to the Foundation retain count so that callers of releasePlatformDescription can use -[NSObject release]
   14341         to dispose of it in a manner that won't leak under Obj-C GC.
   14342         * platform/mac/ContextMenuMac.mm:
   14343         (WebCore::ContextMenu::appendItem): Release platformItem as we were transferred its ownership by releasePlatformDescription.
   14344         (WebCore::ContextMenu::insertItem): ditto.
   14345 
   14346 2007-07-24  Mitz Pettel  <mitz (a] webkit.org>
   14347 
   14348         Reviewed by Darin.
   14349 
   14350         - fix http://bugs.webkit.org/show_bug.cgi?id=14684
   14351           Hebrew text in Safari chrome is reversed (LTR instead of RTL)
   14352 
   14353         Test: fast/text/drawBidiText.html
   14354 
   14355         * WebCore.pro:
   14356         * WebCore.vcproj/WebCore.vcproj:
   14357         * WebCore.xcodeproj/project.pbxproj:
   14358         * WebCoreSources.bkl:
   14359         * manual-tests/chrome-bidi-text.html: Added.
   14360         * manual-tests/resources/chrome-bidi-text-window.html: Added.
   14361         * platform/BidiReorderCharacters.cpp: Removed.
   14362         * platform/BidiReorderCharacters.h: Removed.
   14363         * platform/BidiResolver.h:
   14364         (WebCore::BidiCharacterRun::start): Added accessor method.
   14365         (WebCore::BidiCharacterRun::stop): Ditto.
   14366         (WebCore::BidiCharacterRun::level): Ditto.
   14367         (WebCore::BidiCharacterRun::next): Ditto.
   14368         (WebCore::::appendRun): Added default implementation.
   14369         * platform/TextStyle.h:
   14370         (WebCore::TextStyle::setDirectionalOverride): Added accessor method.
   14371         * platform/graphics/GraphicsContext.cpp:
   14372         (WebCore::TextRunIterator::TextRunIterator): Added. A BidiResolver-
   14373         compliant iterator over the characters in a TextRun.
   14374         (WebCore::TextRunIterator::offset):
   14375         (WebCore::TextRunIterator::increment):
   14376         (WebCore::TextRunIterator::atEnd):
   14377         (WebCore::TextRunIterator::current):
   14378         (WebCore::TextRunIterator::direction):
   14379         (WebCore::TextRunIterator::operator==):
   14380         (WebCore::TextRunIterator::operator!=):
   14381         (WebCore::GraphicsContext::drawBidiText): Added. Applies the Unicode
   14382         Bidi Algorithm to the text and draws the resulting unidirectional runs
   14383         in the right order and with the right directionality.
   14384         * platform/graphics/GraphicsContext.h:
   14385         * platform/win/PopupMenuWin.cpp:
   14386         (WebCore::PopupMenu::paint): Replaced the use of a character buffer
   14387         and BidiReorderCharacters with calling to drawBidiText(). Removed special
   14388         handling of '-webkit-rtl-ordering:visual' because that CSS property is an
   14389         implementation detail of WebCore's visual Hebrew support, and the UA stylesheet
   14390         sets it to 'logical' for this form control. Authors can specify the ordering
   14391         using the 'direction' and 'unicode-bidi' properties.
   14392         * platform/win/WebCoreTextRenderer.cpp:
   14393         (WebCore::isOneLeftToRightRun): Added. Checks if the text consists of
   14394         a single left-to-right run, in which case it requires no bidi processing.
   14395         (WebCore::doDrawTextAtPoint): Changed to call drawBidiText if the text
   14396         is not entirely left-to-right.
   14397         * rendering/RenderFileUploadControl.cpp:
   14398         (WebCore::RenderFileUploadControl::paintObject): Replaced the use of a
   14399         character buffer in BidiReorderCharacters with calling to drawBidiText().
   14400         Removed special handling of '-webkit-rtl-ordering:visual' for the same reason
   14401         stated above.
   14402         * rendering/RenderListBox.cpp:
   14403         (WebCore::RenderListBox::paintItemForeground): Ditto. Also changed the
   14404         run-rounding modes used when drawing to match those used when measuring.
   14405 
   14406 2007-07-23  Oliver Hunt  <oliver (a] apple.com>
   14407 
   14408         Reviewed by Steve.
   14409 
   14410         Windows build fix, remove superfluous !
   14411 
   14412         * page/EventHandler.cpp:
   14413         (WebCore::EventHandler::keyEvent):
   14414 
   14415 2007-07-23  Adam Roben  <aroben (a] apple.com>
   14416 
   14417         Add an assignment operator for BString that takes a BSTR
   14418 
   14419         Reviewed by Geoff and Oliver.
   14420 
   14421         * platform/win/BString.cpp:
   14422         (WebCore::BString::operator=):
   14423         * platform/win/BString.h:
   14424 
   14425 2007-07-23  Justin Garcia  <justin.garcia (a] apple.com>
   14426 
   14427         Reviewed by Geoff.
   14428         
   14429         <rdar://problem/5354455> Word selection when right-clicking can be confusing (14728)
   14430 
   14431         * page/EventHandler.cpp:
   14432         (WebCore::EventHandler::sendContextMenuEvent): In non-editable content,
   14433         only do word selection over text.  In editable content, we will continue
   14434         to select images, line breaks and other elements on right-clicks, to match 
   14435         TextEdit.  For now, in editable content, we'll live with the cases where 
   14436         positionForPoint creates selections that aren't underneath the mouse.  These
   14437         aren't regressions because we've always done word selection on right clicks
   14438         in editable content.
   14439 
   14440 2007-07-23  Anders Carlsson  <andersca (a] apple.com>
   14441 
   14442         Reviewed by Oliver.
   14443 
   14444         <rdar://problem/5335354>
   14445         REGRESSION(r21359-r21368): Can't edit inside RTEF editable region
   14446         
   14447         If Document::open is called and there's a pending load that has not yet started,
   14448         that load should be cancelled.
   14449         
   14450         * dom/Document.cpp:
   14451         (WebCore::Document::open):
   14452 
   14453 2007-07-23  Timothy Hatcher  <timothy (a] apple.com>
   14454 
   14455         Reviewed by Hyatt.
   14456 
   14457         <rdar://problem/5242145> REGRESSION: Clicking on symbol in documentation often doesn't scroll to symbol
   14458 
   14459         A renderer for the anchor wasn't always available at the time parsing finished. So we need
   14460         to bail out of gotoAnchor if stylesheets are pending and remember to call gotoAnchor later
   14461         once all of the pending stylesheets load.
   14462 
   14463         * dom/Document.cpp:
   14464         (WebCore::Document::Document): Initialize m_gotoAnchorNeededAfterStylesheetsLoad to false.
   14465         (WebCore::Document::stylesheetLoaded): If we have no more pending stylesheets, call gotoAnchor if needed.
   14466         * dom/Document.h:
   14467         (WebCore::Document::gotoAnchorNeededAfterStylesheetsLoad): New method.
   14468         (WebCore::Document::setGotoAnchorNeededAfterStylesheetsLoad): Ditto.
   14469         * loader/FrameLoader.cpp:
   14470         (WebCore::FrameLoader::gotoAnchor): Bail early if the document still has pending stylesheets.
   14471         * loader/FrameLoader.h: Make gotoAnchor() public.
   14472 
   14473 2007-07-23  John Sullivan  <sullivan (a] apple.com>
   14474 
   14475         Reviewed by Darin
   14476         
   14477         - fixed <rdar://problem/5327887> Printing Mail note (or Safari page) with misspelled word prints red underline
   14478 
   14479         * rendering/InlineTextBox.cpp:
   14480         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   14481         When printing, bail out without doing any work. Also moved a couple of lines down below another early
   14482         bailout since they were pointless above it.
   14483 
   14484 2007-07-23  Oliver Hunt  <oliver (a] apple.com>
   14485 
   14486         Reviewed by Darin.
   14487         
   14488         <rdar://problem/5353577> WebKit key event behaviour needs to better match other browsers keyevent behaviour
   14489         <rdar://problem/5352152> REGRESSION (24399-24479): Pressing Enter in a search field at apple.com no longer starts a search with Korean IM
   14490         <rdar://problem/5352649> WebKit should send keyDown event on autorepeat keyDowns
   14491         http://bugs.webkit.org/show_bug.cgi?id=14690
   14492 
   14493         Perform Input Method call first so that our behaviour is determined by whether or not 
   14494         the input method has actually handle the event, rather than by making guesses based 
   14495         on the existences of marked text.  This fixes issues with IMs that have side effects
   14496         even on events they do not handle.
   14497 
   14498         Refactored the code in order to improve clarity given the hoisting required by performing
   14499         the IM call earlier.
   14500 
   14501         * page/EventHandler.cpp:
   14502         (WebCore::EventHandler::keyEvent):
   14503 
   14504 2007-07-23  Anders Carlsson  <andersca (a] apple.com>
   14505 
   14506         Reviewed by Darin.
   14507 
   14508         <rdar://problem/5045711> 
   14509         http://bugs.webkit.org/show_bug.cgi?id=12938
   14510         Google calendar settings page crashes
   14511         
   14512         Move handling of checked radio buttons to a new class, HTMLFormElement::CheckedRadioButtons. 
   14513         Each <form> element has an instance of this class. For radio buttons without a containing 
   14514         form, the document has an instance of HTMLFormElement::CheckedRadioButtons where the
   14515         state of those radio buttons will be stored.
   14516         be stored.
   14517         
   14518         This also fixes another bug where removing a checked radio button that does not have a
   14519         containing form would not remove the radio button from the checked radio buttons map,
   14520         which could lead to a crash due to a dangling pointer.
   14521         
   14522         * dom/Document.cpp:
   14523         (WebCore::Document::~Document):
   14524         * dom/Document.h:
   14525         (WebCore::Document::checkedRadioButtons):
   14526         * html/HTMLFormElement.cpp:
   14527         (WebCore::HTMLFormElement::registerFormElement):
   14528         (WebCore::HTMLFormElement::removeFormElement):
   14529         (WebCore::HTMLFormElement::CheckedRadioButtons::didCheckButton):
   14530         (WebCore::HTMLFormElement::CheckedRadioButtons::checkedButtonForGroup):
   14531         (WebCore::HTMLFormElement::CheckedRadioButtons::removeButtonIfChecked):
   14532         * html/HTMLFormElement.h:
   14533         (WebCore::HTMLFormElement::checkedRadioButtons):
   14534         * html/HTMLGenericFormElement.cpp:
   14535         (WebCore::HTMLGenericFormElement::insertedIntoTree):
   14536         * html/HTMLInputElement.cpp:
   14537         (WebCore::HTMLInputElement::~HTMLInputElement):
   14538         (WebCore::checkedRadioButtons):
   14539         (WebCore::HTMLInputElement::isKeyboardFocusable):
   14540         (WebCore::HTMLInputElement::setInputType):
   14541         (WebCore::HTMLInputElement::parseMappedAttribute):
   14542         (WebCore::HTMLInputElement::setChecked):
   14543         (WebCore::HTMLInputElement::preDispatchEventHandler):
   14544         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
   14545         * manual-tests/remove-form-node-with-radio-buttons-crash.html: Added.
   14546 
   14547 2007-07-23  David Hyatt  <hyatt (a] apple.com>
   14548 
   14549         Fix for 5350587, hang in iExploder text 8101.  The code that painted outlines for continuations was buggy
   14550         in that it assumed the chain was always inline-block-inline, but this is only true for the innermost chained
   14551         continuation.  To make this more robust, we always just use the inline's containing block's containing block,
   14552         which should be guaranteed to enclose all renderers in the continuation chain.  In addition, there is now a
   14553         null check (to guarantee no more hangs) and an assert (to check if we hit this situation again where the block
   14554         used to paint does not properly enclose the continuation chain).
   14555 
   14556         Reviewed by beth
   14557 
   14558         fast/inline/outline-continuation.html
   14559 
   14560         * rendering/RenderBlock.cpp:
   14561         (WebCore::RenderBlock::paintContinuationOutlines):
   14562         * rendering/InlineFlowBox.cpp:
   14563         (WebCore::RenderInline::paint):
   14564 
   14565 2007-07-22  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   14566 
   14567         Reviewed by Adam.
   14568 
   14569         WARNING: NO TEST CASES ADDED OR CHANGED
   14570 
   14571         Add the WebKit/Gtk API to the buildsystem, ask qmake to create a
   14572         pkg-config file and install headers and libraries.
   14573 
   14574         Start to emit signals from FrameLoaderClientGdk, hide the kit Frame
   14575         inside the the FrameLoaderClientGdk.
   14576 
   14577         Move ChromeClientGdk to WebKit/gtk/WebCoreSupport
   14578 
   14579         * WebCore.pro:
   14580         * loader/gdk/FrameLoaderClientGdk.cpp:
   14581         * loader/gdk/FrameLoaderClientGdk.h:
   14582         * platform/gdk/ChromeClientGdk.h: Removed.
   14583         * platform/gdk/FrameGdk.cpp: Remove code not belonging here
   14584         * platform/gdk/FrameGdk.h:
   14585         * platform/gdk/ScrollViewGdk.cpp: The gdkDrawable won't exist at that time and it is fine
   14586         * platform/gdk/TemporaryLinkStubs.cpp: Removed ChromeClientGdk stubs
   14587 
   14588 2007-07-22  Maciej Stachowiak  <mjs (a] apple.com>
   14589 
   14590         Reviewed by Adam.
   14591 
   14592         <rdar://problem/5353174> REGRESSION: 1% JavaScript performance regression fro Window refactoring (14717)
   14593         http://bugs.webkit.org/show_bug.cgi?id=14717
   14594         
   14595         * bindings/js/kjs_window.cpp:
   14596         * bindings/js/kjs_window.h:
   14597         (KJS::Window::impl): inlined
   14598         * page/DOMWindow.cpp:
   14599         * page/DOMWindow.h:
   14600         (WebCore::DOMWindow::frame): inlined
   14601 
   14602 2007-07-22  Darin Adler  <darin (a] apple.com>
   14603 
   14604         * platform/ContextMenu.cpp: Added missing include.
   14605 
   14606 2007-07-22  Sam Weinig  <sam (a] webkit.org>
   14607 
   14608         Reviewed by Darin.
   14609 
   14610         Fix for http://bugs.webkit.org/show_bug.cgi?id=14682
   14611         REGRESSION(24285-24399): alerts do not appear at W3C RTL test page
   14612 
   14613         Test: fast/dom/Window/window-function-name-getter-precedence.html
   14614 
   14615         * bindings/js/JSDOMWindowCustom.cpp:
   14616         (WebCore::JSDOMWindow::customGetOwnPropertySlot): Make sure to return functions
   14617         before the custom name getter.
   14618 
   14619 2007-07-22  Darin Adler  <darin (a] apple.com>
   14620 
   14621         Reviewed by Adam.
   14622 
   14623         - fix <rdar://problem/5353263> ContextMenuItem and ContextMenu objects leaking (seen on buildbot)
   14624 
   14625         * platform/ContextMenu.cpp:
   14626         (WebCore::separatorItem): Return an auto_ptr instead of a raw pointer, since this function
   14627         creates an object that's the caller's responsibility to delete.
   14628         (WebCore::createAndAppendFontSubMenu): Create the context menu on the stack, not the heap,
   14629         since setSubMenu does not take ownership, and hence the objects were leaking.
   14630         (WebCore::createAndAppendSpellingAndGrammarSubMenu): Ditto.
   14631         (WebCore::createAndAppendSpellingSubMenu): Ditto.
   14632         (WebCore::createAndAppendSpeechSubMenu): Ditto.
   14633         (WebCore::createAndAppendWritingDirectionSubMenu): Ditto.
   14634 
   14635 2007-07-22  Darin Adler  <darin (a] apple.com>
   14636 
   14637         Reviewed by Kevin Decker.
   14638 
   14639         - fix <rdar://problem/5126394> REGRESSION: Crash after clicking back button in test application (13250)
   14640           http://bugs.webkit.org/show_bug.cgi?id=13250
   14641 
   14642         * bindings/objc/WebScriptObject.mm:
   14643         (_didExecute): Removed unnecessary check for isValid() since the _rootObject method already
   14644         takes care of that check.
   14645         (-[WebScriptObject _imp]): Made this return 0 if there is not a valid rootObject.
   14646         (-[WebScriptObject _isSafeScript]): Made this always return false if there is not a valid
   14647         rootObject, eliminating the need to check _rootObject for nil if the code is checking _isSafeScript.
   14648         (-[WebScriptObject callWebScriptMethod:withArguments:]): Removed check of _rootObject, since it's
   14649         immediately followed by a check of _isSafeScript. Removed awkward conversion of name from NSString *
   14650         to KJS::Identifier and did it using WebCore::String instead -- makes it clear that there's no
   14651         arbitrary JavaScript execution after _isSafeScript and before _imp, so we don't need to null-check
   14652         the _imp pointer. Added a second check of _isSafeScript after calling get to get the function
   14653         object, since arbitrary changes could occur in there, including navigation to a new frame.
   14654         This also takes care of null checking the second call to _imp.
   14655         (-[WebScriptObject evaluateWebScript:]): Removed check of _rootObject, since it's
   14656         immediately followed by a check of _isSafeScript. Removed awkward conversion of script from NSString *
   14657         to KJS::Identifier and did it using WebCore::String instead -- makes it clear that there's no
   14658         arbitrary JavaScript execution after _isSafeScript and before _imp, so we don't need to null-check
   14659         the _imp pointer.
   14660         (-[WebScriptObject setValue:forKey:]): Removed check of _rootObject, since it's
   14661         immediately followed by a check of _isSafeScript. Removed awkward conversion of key from NSString *
   14662         to KJS::Identifier and did it using WebCore::String instead -- makes it clear that there's no
   14663         arbitrary JavaScript execution after _isSafeScript and before _imp, so we don't need to null-check
   14664         the _imp pointer.
   14665         (-[WebScriptObject valueForKey:]): Ditto.
   14666         (-[WebScriptObject removeWebScriptKey:]): Ditto.
   14667         (-[WebScriptObject stringRepresentation]): Removed check of _rootObject, since it's
   14668         immediately followed by a check of _isSafeScript. Removed unnecessary local variable
   14669         and const_cast from the call to the _imp method.
   14670         (-[WebScriptObject webScriptValueAtIndex:]): Removed check of _rootObject, since it's
   14671         immediately followed by a check of _isSafeScript.
   14672         (-[WebScriptObject setWebScriptValueAtIndex:value:]): Ditto.
   14673         (-[WebScriptObject JSObject]): Ditto.
   14674 
   14675 2007-07-22  Darin Adler  <darin (a] apple.com>
   14676 
   14677         Reviewed by Anders Carlsson and John Sullivan.
   14678 
   14679         - speculative fix for <rdar://problem/5337500> CrashTracer: [USER] 4 crashes in Mail
   14680           at WebCore::HTMLImageElement::isURLAttribute(WebCore::Attribute*) const
   14681 
   14682         * editing/markup.cpp: Added AttributeChange class.
   14683         (WebCore::completeURLs): Changed function so that all the URL completion is done in
   14684         a separate pass after finding all the URL attributes. This is safer, since actually
   14685         applying an attribute change could have any arbitrary effect on the document; it's
   14686         tricky to iterate a document while it's being modified and we don't have the checks
   14687         here that would be needed to make that work in pathological cases.
   14688 
   14689 2007-07-18  Darin Adler  <darin (a] apple.com>
   14690 
   14691         Reviewed by Adam.
   14692 
   14693         - fix <rdar://problem/5350604> REGRESSION: Crash in inspector controller code after
   14694           clicking back button in test application (14337)
   14695 
   14696         * page/InspectorController.cpp: (WebCore::InspectorController::addScriptResource):
   14697         Replace an assertion that was firing with some code that at least doesn't immediately crash.
   14698 
   14699 2007-07-22  Darin Adler  <darin (a] apple.com>
   14700 
   14701         Reviewed by Anders.
   14702 
   14703         - improve the fix for <rdar://problem/5298816> Crash redirecting message,
   14704           in -[SharedBufferData initWithSharedBuffer:]; fixes a crash seen on the buildbot
   14705 
   14706         * loader/DocLoader.cpp: (WebCore::DocLoader::~DocLoader): Call setDocLoader(0) on all
   14707         the resources so they don't try to use a stale DocLoader pointer later.
   14708 
   14709 2007-07-21  Mitz Pettel  <mitz (a] webkit.org>
   14710 
   14711         Reviewed by Sam Weinig.
   14712 
   14713         - fixed typos and markup in the following manual tests
   14714 
   14715         * manual-tests/accidental-strict-mode.html:
   14716         * manual-tests/caretScrolling.html:
   14717         * manual-tests/close-on-closedWindow.html:
   14718 
   14719 2007-07-21  Sam Weinig  <sam (a] webkit.org>
   14720 
   14721         Reviewed by Mitz.
   14722 
   14723         Patch for <rdar://problem/5352013>
   14724         The computed style for background-position is wrong for the initial value
   14725 
   14726         - Set the initial value for background-position-x and background-position-y (and
   14727           therefore background-position) to 0% instead of 0px.
   14728 
   14729         * rendering/RenderStyle.cpp:
   14730         (WebCore::BackgroundLayer::BackgroundLayer):
   14731         * rendering/RenderStyle.h:
   14732         (WebCore::RenderStyle::initialBackgroundXPosition):
   14733         (WebCore::RenderStyle::initialBackgroundYPosition):
   14734 
   14735 2007-07-20  Brady Eidson  <beidson (a] apple.com>
   14736 
   14737         Reviewed by Adele and Andersca
   14738 
   14739         <rdar://problem/5336105> - WebBackForwardList created from scratch is unusable (always leads to crash)
   14740 
   14741         * WebCore.exp: Export the BackForwardList c'tor so WebKit can create one explicitly
   14742 
   14743 2007-07-20  Sam Weinig  <sam (a] webkit.org>
   14744 
   14745         Reviewed by Beth Dakin.
   14746 
   14747         Fix for <rdar://problem/5351901>
   14748         Computed value of border-position should return a CSSValueList, not a CSSPrimitiveValue
   14749 
   14750         - Return a space separated CSSValueList for background-position
   14751           instead of a CSSPrimitiveValue (string type).
   14752         - Remove the "else if (renderer)" case as it never returns a different
   14753           value than just calling length.value().
   14754         - Make background-position-x and background-position-y behave like
   14755           background-position.  Fix case of initial value return 'auto' instead
   14756           of 0.
   14757 
   14758         Test: fast/css/getComputedStyle-background-position.html
   14759 
   14760         * css/CSSComputedStyleDeclaration.cpp:
   14761         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   14762 
   14763 2007-07-20  Geoffrey Garen  <ggaren (a] apple.com>
   14764 
   14765         Build fix for non-Mac platforms.
   14766         
   14767         * bindings/js/GCController.cpp:
   14768 
   14769 2007-07-20  Anders Carlsson  <andersca (a] apple.com>
   14770 
   14771         Reviewed by Darin.
   14772 
   14773         If the style sheet requested is a user style sheet, don't store it in the DocLoader's resource map;
   14774         user style sheets can outlive their doc loaders.
   14775 
   14776         * loader/DocLoader.cpp:
   14777         (WebCore::DocLoader::requestCSSStyleSheet):
   14778 
   14779 2007-07-20  Justin Garcia  <justin.garcia (a] apple.com>
   14780 
   14781         Reviewed by Darin.
   14782 
   14783         <rdar://problem/5109817> Ctrl-click on word in non-editable text doesn't select it
   14784         
   14785         * bridge/EditorClient.h: Removed a client method for enabling/disabling
   14786         word selection on right clicks.
   14787         * editing/Editor.cpp: Ditto.
   14788         * editing/Editor.h:
   14789         * page/EventHandler.cpp:
   14790         (WebCore::EventHandler::sendContextMenuEvent): Select the
   14791         word underneath the mouse regardless of whether its editable.
   14792 
   14793 2007-07-20  Ada Chan  <adachan (a] apple.com>
   14794 
   14795         Reviewed by Darin and Adam.
   14796 
   14797         <rdar://problem/5338385> Fixed infinite loop in ScrollView::scrollRectIntoViewRecursively().
   14798         Also removed an unused local variable.
   14799 
   14800         * platform/win/ScrollViewWin.cpp:
   14801         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   14802 
   14803 2007-07-21  Antti  <antti (a] apple.com>
   14804 
   14805         Reviewed by Darin.
   14806         
   14807         Fix <rdar://problem/5305788>
   14808         REGRESSION: Safari sometimes loads IE-specific stylesheet on www.apaema.org
   14809         
   14810         Pick the preferred style sheet set based on document order even if the sheet is still loading. Previously 
   14811         the set was chosen based on which stylesheet happened to arrive first. Just fix the problem at hand 
   14812         and resist urge to start refactoring this function.
   14813 
   14814         * dom/Document.cpp:
   14815         (WebCore::Document::recalcStyleSelector):
   14816 
   14817 2007-07-20  Sam Weinig  <sam (a] webkit.org>
   14818 
   14819         Reviewed by Darin.
   14820 
   14821         Fix for <rdar://problem/5351252>
   14822         Computed value for -webkit-background-size and border-spacing
   14823         should be space separated CSSValueLists.
   14824 
   14825         * css/CSSComputedStyleDeclaration.cpp:
   14826         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   14827 
   14828 2007-07-20  Geoffrey Garen  <ggaren (a] apple.com>
   14829 
   14830         Suggested by Darin Adler.
   14831         
   14832         Slight tweak to my last commit: changed gcController() to return a 
   14833         reference instead of a pointer.
   14834 
   14835 2007-07-20  Geoffrey Garen  <ggaren (a] apple.com>
   14836 
   14837         Reviewed by Darin Adler.
   14838         
   14839         Fixed http://bugs.webkit.org/show_bug.cgi?id=12900 Page tear-down 
   14840         forces garbage collection once per frame
   14841 
   14842         Also fixed <rdar://problem/5286989> GC on window close does not always 
   14843         bring the JS object count down to 0
   14844         
   14845         Implemented a 0-delay GC timer in WebCore. Instead of forcing GC
   14846         immediately, code that thinks it has created a lot of garbage starts
   14847         the timer. This has two advantages: 
   14848 
   14849         1) Multiple GCs can coalesce. In my pathological test case, this 
   14850         improves performance by an order of magnitude. 
   14851         
   14852         2) Conservative marking is less likely to keep alive important dead
   14853         objects, like the window object, because the stack is small and free of
   14854         JS processing when the timer fires.
   14855 
   14856         Added GCController.h/.cpp, sometimes blindly:
   14857         * WebCore.pro:
   14858         * WebCore.vcproj/WebCore.vcproj:
   14859         * WebCore.xcodeproj/project.pbxproj:
   14860         * WebCoreSources.bkl:
   14861 
   14862         Added singleton that implements GC on a 0-delay timer:
   14863         * bindings/js/GCController.h: Added.
   14864         * bindings/js/GCController.cpp: Added.
   14865         
   14866         Changed Collector::collect() calls below to call to the singleton:
   14867         * bindings/js/kjs_proxy.cpp:
   14868         (WebCore::KJSProxy::~KJSProxy):
   14869         * bindings/js/kjs_window.cpp:
   14870         (KJS::Window::clear):
   14871         * history/CachedPage.cpp:
   14872         (WebCore::CachedPage::clear):
   14873         
   14874         * page/Frame.cpp:
   14875         (WebCore::Frame::~Frame): Removed previous slightly hackish attempt to
   14876         avoid conservative marking of the window object.
   14877 
   14878 2007-07-20  Anders Carlsson  <andersca (a] apple.com>
   14879     
   14880         Reviewed by Darin.
   14881 
   14882         <rdar://problem/5298816> Crash redirecting message, in -[SharedBufferData initWithSharedBuffer:]
   14883         
   14884         Have cached resources keep track of what DocLoader they belong to. This is so that they can remove themselves
   14885         from the DocLoader's resource map when they're destroyed when the cache is disabled.
   14886         
   14887         * html/HTMLImageLoader.cpp:
   14888         (WebCore::HTMLImageLoader::updateFromElement):
   14889         * loader/Cache.cpp:
   14890         (WebCore::Cache::requestResource):
   14891         * loader/CachedResource.cpp:
   14892         (WebCore::CachedResource::CachedResource):
   14893         (WebCore::CachedResource::~CachedResource):
   14894         * loader/CachedResource.h:
   14895         (WebCore::CachedResource::setDocLoader):
   14896 
   14897 2007-07-20  Brady Eidson  <beidson (a] apple.com>
   14898 
   14899         Reviewed by Darin
   14900 
   14901         <rdar://problem/5153021> and http://bugs.webkit.org/show_bug.cgi?id=13364
   14902 
   14903         The issue here was that if a document in a subframe was loaded from a URL, but then a script did 
   14904         document.open or document.write during parsing, we would overwrite the document's url and baseurl 
   14905         with the parent frame's url.  WRONG!
   14906 
   14907         * dom/Document.cpp:
   14908         (WebCore::Document::open): Only set the url and baseURL in document.open if they are still empty or about:blank
   14909 
   14910 2007-07-20  Maciej Stachowiak  <mjs (a] apple.com>
   14911 
   14912         Reviewed by Oliver.
   14913 
   14914         <rdar://problem/5326303> REGRESSION: blur event fires upon navigating away from a page with focused element
   14915 
   14916 
   14917         
   14918         The proximate cause was the recent change to keep focus on the
   14919         WebHTMLView when switching views. But the reason this happend was
   14920         that didCommitLoadForFrame got called at a time when the new view
   14921         was in place, but the old document was still there. This was a
   14922         longstanding problem with the delegate, and fixing it cleans it
   14923         up.
   14924 
   14925         * loader/FrameLoader.cpp:
   14926         (WebCore::FrameLoader::begin): Don't send dispatchWindowObjectAvailable if
   14927         caller asked not to (this is to allow order of delegates to be the same).
   14928         (WebCore::FrameLoader::transitionToCommitted): Don't emit didCommitLoadForFrame here.
   14929         (WebCore::FrameLoader::receivedFirstData): Instead do it here, after calling begin(),
   14930         so the new document is set up.
   14931         * loader/FrameLoader.h: Add new optional parameter to begin().
   14932 
   14933 2007-07-20  Sam Weinig  <sam (a] webkit.org>
   14934 
   14935         Reviewed by Beth Dakin.
   14936 
   14937         Update for fix for http://bugs.webkit.org/show_bug.cgi?id=14646
   14938         <rdar://problem/5340449>
   14939 
   14940         - Return a CSSValueList instead of CSSValue (with a Pair type) for
   14941           computed values of border radii.
   14942         - Add ability to CSSValueList to print out a space separated list
   14943           instead of a comma.
   14944         - Add border radii to list of computed styles that we create and can
   14945           iterate over.
   14946 
   14947         * css/CSSComputedStyleDeclaration.cpp:
   14948         (WebCore::):
   14949         (WebCore::getBorderRadiusCornerValue):
   14950         * css/CSSValueList.cpp:
   14951         (WebCore::CSSValueList::CSSValueList):
   14952         (WebCore::CSSValueList::cssText):
   14953         * css/CSSValueList.h:
   14954 
   14955 2007-07-20  Mitz Pettel  <mitz (a] webkit.org>
   14956 
   14957         Reviewed by Darin.
   14958 
   14959         - http://bugs.webkit.org/show_bug.cgi?id=14626
   14960           Make bidiReorderCharacters independent of RenderBlock
   14961 
   14962         No layout test possible because there is no change in functionality.
   14963 
   14964         This patch generalizes RenderBlock's implementation of the Unicode Bidi Algorithm
   14965         in the form of the BidiResolver class template. An instance of a BidiResolver class
   14966         can generate a sequence of runs with corresponding level and override attributes,
   14967         given a range specified by start and end iterators. The iterators can optionally
   14968         call back to the BidiResolver instance to push or pop explicit embedding levels.
   14969 
   14970         The patch replaces BidiState with a specialization of BidiResolver that uses
   14971         BidiIterators and generates BidiRuns. It also eliminates some of the file statics
   14972         in bidi.cpp, instead relying on BidiResolver data members.
   14973 
   14974         The patch makes the BidiContext part of BidiStatus, thus making BidiStatus the
   14975         entire state that needs to be saved and restored in order to restart the bidi
   14976         algorithm at a given point. Previously, you had to keep and pass around two
   14977         separate structures, namely the BidiContext and the BidiStatus.
   14978 
   14979         bidiReorderCharacters is implemented without relying on render objects, using
   14980         a BidiResolver specialization that uses simple character buffer iterators and
   14981         simple run structures.
   14982 
   14983         * WebCore.pro:
   14984         * WebCore.vcproj/WebCore.vcproj:
   14985         * WebCore.xcodeproj/project.pbxproj:
   14986         * WebCoreSources.bkl:
   14987         * platform/BidiContext.cpp: Added.
   14988         (WebCore::operator==):
   14989         * platform/BidiContext.h: Added.
   14990         (WebCore::BidiContext::BidiContext):
   14991         (WebCore::BidiContext::ref):
   14992         (WebCore::BidiContext::deref):
   14993         (WebCore::BidiContext::parent):
   14994         (WebCore::BidiContext::level):
   14995         (WebCore::BidiContext::dir):
   14996         (WebCore::BidiContext::override):
   14997         * platform/BidiReorderCharacters.cpp: Added.
   14998         (WebCore::CharacterBufferIterator::CharacterBufferIterator):
   14999         (WebCore::CharacterBufferIterator::offset):
   15000         (WebCore::CharacterBufferIterator::increment):
   15001         (WebCore::CharacterBufferIterator::atEnd):
   15002         (WebCore::CharacterBufferIterator::current):
   15003         (WebCore::CharacterBufferIterator::direction):
   15004         (WebCore::CharacterBufferIterator::operator==):
   15005         (WebCore::CharacterBufferIterator::operator!=):
   15006         (WebCore::::appendRun):
   15007         (WebCore::bidiReorderCharacters):
   15008         * platform/BidiReorderCharacters.h: Added.
   15009         * platform/BidiResolver.h: Added.
   15010         (WebCore::BidiStatus::BidiStatus):
   15011         (WebCore::operator==):
   15012         (WebCore::operator!=):
   15013         (WebCore::BidiCharacterRun::BidiCharacterRun):
   15014         (WebCore::BidiCharacterRun::reversed):
   15015         (WebCore::BidiCharacterRun::dirOverride):
   15016         (WebCore::BidiCharacterRun::next):
   15017         (WebCore::BidiResolver::):
   15018         (WebCore::BidiResolver::context):
   15019         (WebCore::BidiResolver::setContext):
   15020         (WebCore::BidiResolver::setLastDir):
   15021         (WebCore::BidiResolver::setLastStrongDir):
   15022         (WebCore::BidiResolver::setEorDir):
   15023         (WebCore::BidiResolver::dir):
   15024         (WebCore::BidiResolver::setDir):
   15025         (WebCore::BidiResolver::status):
   15026         (WebCore::BidiResolver::setStatus):
   15027         (WebCore::BidiResolver::adjustEmbedding):
   15028         (WebCore::BidiResolver::setAdjustEmbedding):
   15029         (WebCore::BidiResolver::firstRun):
   15030         (WebCore::BidiResolver::lastRun):
   15031         (WebCore::BidiResolver::runCount):
   15032         (WebCore::::embed):
   15033         (WebCore::::deleteRuns):
   15034         (WebCore::::reverseRuns):
   15035         (WebCore::::createBidiRunsForLine):
   15036         * platform/win/PopupMenuWin.cpp:
   15037         (WebCore::PopupMenu::paint):
   15038         * rendering/RenderBlock.h:
   15039         * rendering/RenderFileUploadControl.cpp:
   15040         (WebCore::RenderFileUploadControl::paintObject):
   15041         * rendering/RenderListBox.cpp:
   15042         (WebCore::RenderListBox::paintItemForeground):
   15043         * rendering/RootInlineBox.cpp:
   15044         (WebCore::RootInlineBox::childRemoved):
   15045         (WebCore::RootInlineBox::lineBreakBidiStatus):
   15046         (WebCore::RootInlineBox::setLineBreakInfo):
   15047         * rendering/RootInlineBox.h:
   15048         (WebCore::RootInlineBox::RootInlineBox):
   15049         * rendering/bidi.cpp:
   15050         (WebCore::BidiIterator::BidiIterator):
   15051         (WebCore::BidiState::deleteRuns):
   15052         (WebCore::operator==):
   15053         (WebCore::operator!=):
   15054         (WebCore::bidiNext):
   15055         (WebCore::bidiFirst):
   15056         (WebCore::BidiState::addRun):
   15057         (WebCore::appendRunsForObject):
   15058         (WebCore::BidiState::appendRun):
   15059         (WebCore::RenderBlock::constructLine):
   15060         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
   15061         (WebCore::RenderBlock::computeVerticalPositionsForLine):
   15062         (WebCore::RenderBlock::bidiReorderLine):
   15063         (WebCore::buildCompactRuns):
   15064         (WebCore::RenderBlock::layoutInlineChildren):
   15065         (WebCore::RenderBlock::determineStartPosition):
   15066         (WebCore::RenderBlock::determineEndPosition):
   15067         (WebCore::RenderBlock::matchedEndLine):
   15068         (WebCore::RenderBlock::skipWhitespace):
   15069         * rendering/bidi.h:
   15070         (WebCore::BidiRun::BidiRun):
   15071         (WebCore::BidiRun::next):
   15072 
   15073 2007-07-20  Darin Adler  <darin (a] apple.com>
   15074 
   15075         Reviewed by John Sullivan.
   15076 
   15077         - fix for <rdar://problem/5331723> <rdar://problem/5331723> Safari gives error
   15078           103 for URLs that Adobe Lightroom's Preview feature produces, with ":1" in the hostname
   15079 
   15080         Test: fast/loader/file-URL-with-port-number.html
   15081 
   15082         * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::portAllowed):
   15083         Don't do any port blocking for file URLs.
   15084 
   15085 2007-07-20  Mitz Pettel  <mitz (a] webkit.org>
   15086 
   15087         Reviewed by Darin.
   15088 
   15089         - fix http://bugs.webkit.org/show_bug.cgi?id=14689
   15090           REGRESSION (3.0.2-TOT): <select> menu items have incorrect background color
   15091 
   15092         * manual-tests/item-background.html: Added.
   15093         * platform/PopupMenuClient.h:
   15094         * platform/graphics/Color.cpp:
   15095         (WebCore::blendComponent): Renamed the static method blend() to this.
   15096         (WebCore::Color::blend): Added. Compositing (in "normal" or "source over"
   15097         blend mode) B.blend(C) over A is equivalent to compositing C over the
   15098         result of compositing B over A.
   15099         (WebCore::Color::blendWithWhite): Changed for the above rename.
   15100         * platform/graphics/Color.h:
   15101         * platform/win/PopupMenuWin.cpp:
   15102         (WebCore::PopupMenu::paint): Changed to use itemBackgroundColor().
   15103         * rendering/RenderMenuList.cpp:
   15104         (WebCore::RenderMenuList::itemBackgroundColor): Added. Returns the color
   15105         that would result from overlaying the item's background color over the
   15106         menu's background color over solid white. Note that clientStyle() cannot
   15107         be used for the menu's background color, since background color is not
   15108         inherited by the inner block (the regression resulted from changing
   15109         clientStyle() to return the inner block's style), and that the color
   15110         returned from this method is guaranteed to be opaque.
   15111         * rendering/RenderMenuList.h:
   15112         * rendering/RenderTextControl.cpp:
   15113         (WebCore::RenderTextControl::itemBackgroundColor): Added.
   15114         * rendering/RenderTextControl.h:
   15115 
   15116 2007-07-20  Rob Buis  <buis (a] kde.org>
   15117 
   15118         Reviewed by Darin.
   15119 
   15120         http://bugs.webkit.org/show_bug.cgi?id=14642
   15121         REGRESSION(r24064-24096): Reflection type effect in canvas tag broke
   15122 
   15123         Do not stop the fill/stroke operation when encountering an empty path.
   15124 
   15125         * html/CanvasRenderingContext2D.cpp:
   15126         (WebCore::CanvasRenderingContext2D::fill):
   15127         (WebCore::CanvasRenderingContext2D::stroke):
   15128 
   15129 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15130 
   15131         Reviewed by Simon.
   15132 
   15133         Remove some files that are not used anymore.
   15134 
   15135         * platform/qt/FontCacheQt.cpp: Removed.
   15136         * platform/qt/FontDataQt.cpp: Removed.
   15137         * platform/qt/FontPlatformData.h: Removed.
   15138         * platform/qt/FontPlatformDataQt.cpp: Removed.
   15139         * platform/qt/GlyphPageTreeNodeQt.cpp: Removed.
   15140 
   15141 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15142 
   15143         Reviewed by Simon.
   15144 
   15145         use the correct font for spaces.
   15146 
   15147         * platform/qt/FontQt.cpp:
   15148         (WebCore::generateComponents):
   15149 
   15150 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15151 
   15152         Reviewed by Simon.
   15153 
   15154         spaces where not correctly taken into account for both offsetForPosition and selectionRectForText. Because of that selections sort of worked in LTR text, but completely failed in RTL.
   15155 
   15156         * platform/qt/FontQt.cpp:
   15157         (WebCore::TextRunComponent::isSpace):
   15158         (WebCore::TextRunComponent::TextRunComponent):
   15159         (WebCore::generateComponents):
   15160         (WebCore::Font::drawText):
   15161         (WebCore::Font::offsetForPosition):
   15162         (WebCore::Font::selectionRectForText):
   15163 
   15164 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15165 
   15166         Reviewed by Simon.
   15167 
   15168         fix up some smaller issues in selection handling. It's still not perfect and selections in mixed rtl/ltr text are still broken, but it's getting there.
   15169 
   15170         * platform/qt/FontQt.cpp:
   15171         (WebCore::Font::offsetForPosition):
   15172         (WebCore::cursorToX):
   15173         (WebCore::Font::selectionRectForText):
   15174 
   15175 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15176 
   15177         Reviewed by Simon.
   15178 
   15179         make offsetForPosition and selectionRectForText work correctly with small caps.
   15180 
   15181         * platform/qt/FontQt.cpp:
   15182         (WebCore::Font::offsetForPosition):
   15183         (WebCore::cursorToX):
   15184         (WebCore::Font::selectionRectForText):
   15185 
   15186 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15187 
   15188         Reviewed by Simon.
   15189 
   15190         clip the drawn text correctly when needed.
   15191 
   15192         * platform/qt/FontQt.cpp:
   15193         (WebCore::Font::drawText):
   15194 
   15195 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15196 
   15197         Reviewed by Simon.
   15198 
   15199         Fix offsetForPosition and selectionRectForText methods.
   15200 
   15201         * platform/qt/FontQt.cpp:
   15202         (WebCore::Font::offsetForPosition):
   15203         (WebCore::cursorToX):
   15204         (WebCore::Font::selectionRectForText):
   15205 
   15206 2007-07-20  Lars Knoll  <lars (a] trolltech.com>
   15207 
   15208         Reviewed by Simon.
   15209 
   15210         fix BiDi text rendering.
   15211 
   15212         * platform/qt/FontQt.cpp:
   15213         (WebCore::TextRunComponent::TextRunComponent):
   15214         (WebCore::generateComponents):
   15215         (WebCore::Font::drawText):
   15216 
   15217 2007-07-20  Mark Rowe  <mrowe (a] apple.com>
   15218 
   15219         Reviewed by Maciej.
   15220 
   15221         Move FTPDirectoryTokenizer::m_templateDocumentData to be a function-scoped static
   15222         to avoid creating a global initializer.  This fixes the build for x86_64.
   15223 
   15224         * loader/FTPDirectoryDocument.cpp:
   15225         (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate):
   15226 
   15227 2007-07-19  Geoffrey Garen  <ggaren (a] apple.com>
   15228 
   15229         Reviewed by Maciej Stachowiak.
   15230         
   15231         Fixed <rdar://problem/5347849> Cache eviction of live decoded data is 
   15232         thrash-y
   15233         
   15234         The solution here is to evict live decoded data based on a strict LRU
   15235         model. This should work well as a "scrolling window."
   15236 
   15237         With this patch, I see a substantial reduction in CPU while scrolling
   15238         through a page with large images on a low memory system. Layout tests
   15239         pass.
   15240 
   15241         * loader/Cache.h: Changed from a size-based vector of LRU lists to a
   15242         single LRU list in order to implement strict LRU.
   15243         
   15244         * loader/CachedResource.h: Removed tracking of access count, since that
   15245         was the old cache eviction model.
   15246 
   15247 2007-07-19  Oliver Hunt  <oliver (a] apple.com>
   15248 
   15249         Reviewed by Maciej.
   15250 
   15251         <rdar://problem/5076807> REGRESSION: Can't undo conversion of inline text (by hitting ESC)
   15252         <rdar://problem/5346167> DOM key events triggered during IME composition differ in webkit/mac vs all windows browsers
   15253 
   15254         We now basically match the behaviour of IE/Windows. This means that during composition keydown and autorepeat
   15255         keys generate keydown events with a keyCode of 229, which correlates to the windows VK_PROCESSKEY message.
   15256         keyup events are generated with the keyCode of the actual key that was pressed.
   15257 
   15258         The only difference is on the first keydown of a composition, in which IE will use keyCode == 229, and we will
   15259         send an event with the keyCode for the actual key that was pressed.
   15260 
   15261         * page/EventHandler.cpp:
   15262         (WebCore::EventHandler::keyEvent):
   15263         * platform/PlatformKeyboardEvent.h:
   15264         (WebCore::PlatformKeyboardEvent::setWindowsKeyCode):
   15265 
   15266 2007-07-19  Brady Eidson  <beidson (a] apple.com>
   15267 
   15268         Reviewed by Sam
   15269 
   15270         <rdar://problem/5134929> REGRESSION: Colon detected as delimiting an empty port is stripped
   15271 
   15272         The fix for this was in KURL::parse() which had a slightly changed rule that would strip the colon if there
   15273         was no port.
   15274 
   15275         An additional canonicalization fix was made in window.location.host to match the expected behavior of leaving
   15276         the colon in place - before this fix, if the colon was there but no port was there, we'd see the port as 0.
   15277 
   15278         * bindings/js/kjs_window.cpp:
   15279         (KJS::Location::put): Call setHostAndPort instead of setHost and setPort seperately
   15280 
   15281         * manual-tests/location-host-canonicalization.html: Added.
   15282 
   15283         * platform/KURL.cpp:
   15284         (WebCore::KURL::setHostAndPort): Set the host and port as one string component then reparse the URL
   15285         (WebCore::KURL::parse): Change one line to consider the empty colon as part of the host name
   15286         * platform/KURL.h:
   15287 
   15288 2007-07-19  Anders Carlsson  <andersca (a] apple.com>
   15289 
   15290         Reviewed by Adam.
   15291 
   15292         <rdar://problem/5288617>
   15293         Crash playing a very large QuickTime movie in Safari
   15294         
   15295         <rdar://problem/5271174>
   15296         http://bugs.webkit.org/show_bug.cgi?id=14148
   15297         LEAK: Serious memory consumption and leak when loading QT movies.
   15298         
   15299         Don't keep plugin stream data in memory since some plugin resources (like QT movies)
   15300         can be really big. If a plug-in wants data in a file, create a file and write data to it 
   15301         as it's coming from the wire, instead of using a big buffer.
   15302         
   15303         * loader/ResourceLoader.cpp:
   15304         (WebCore::ResourceLoader::ResourceLoader):
   15305         (WebCore::ResourceLoader::addData):
   15306         (WebCore::ResourceLoader::willStopBufferingData):
   15307         * loader/ResourceLoader.h:
   15308         (WebCore::ResourceLoader::setShouldBufferData):
   15309         * plugins/win/PluginStreamWin.cpp:
   15310         (WebCore::PluginStreamWin::PluginStreamWin):
   15311         (WebCore::PluginStreamWin::start):
   15312         (WebCore::PluginStreamWin::startStream):
   15313         (WebCore::PluginStreamWin::destroyStream):
   15314         (WebCore::PluginStreamWin::didReceiveData):
   15315         (WebCore::PluginStreamWin::didFinishLoading):
   15316         * plugins/win/PluginStreamWin.h:
   15317 
   15318 2007-07-19  Geoffrey Garen  <ggaren (a] apple.com>
   15319 
   15320         Reviewed by Darin Adler.
   15321         
   15322         Fixed <rdar://problem/5348384> Restore old return value behavior of 
   15323         stringByEvaluatingJavaScriptFromString
   15324         
   15325         Return an empty string unless you have a string, boolean, or number
   15326         result.
   15327 
   15328         * WebCore.xcodeproj/project.pbxproj:
   15329         * page/mac/WebCoreFrameBridge.mm:
   15330         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
   15331 
   15332 2007-07-19  Darin Adler  <darin (a] apple.com>
   15333 
   15334         Reviewed by Alexey.
   15335 
   15336         - fix http://bugs.webkit.org/show_bug.cgi?id=14666
   15337           remove unused xxx-encodings.txt for all platforms other than Mac
   15338 
   15339         * platform/gdk/gdk-encodings.txt: Removed.
   15340         * platform/win/win-encodings.txt: Removed.
   15341         * platform/wx/wx-encodings.txt: Removed.
   15342 
   15343         * platform/character-sets.txt: Moved into mac subdirectory since it's only used for Mac; at some
   15344         point I hope to remove it completely.
   15345         * platform/make-charset-table.pl: Ditto.
   15346         * platform/mac/character-sets.txt: Copied from platform/character-sets.txt.
   15347         * platform/mac/make-charset-table.pl: Copied from platform/make-charset-table.pl.
   15348 
   15349         * DerivedSources.make: Moved CharsetData.cpp into the MACOS section.
   15350         Changed the build rule to use Mac-specific paths for everything and got rid of
   15351         make variables.
   15352 
   15353         * WebCore.vcproj/build-generated-files.sh: Removed code to set ENCODINGS_FILE and ENCODINGS_PREFIX.
   15354         * WebCore.xcodeproj/project.pbxproj: Ditto.
   15355         * make-generated-sources.sh: Ditto.
   15356 
   15357         * Projects/gdk/webcore-gdk.bkl: Removed code to pass gdk-encodings.txt to make-generated-sources.sh.
   15358         * Projects/wx/webcore-wx.bkl: Ditto, but for wx-encodings.txt.
   15359 
   15360 2007-07-19  Antti  <antti (a] apple.com>
   15361 
   15362         Reviewed by Darin.
   15363 
   15364         Fix <rdar://problem/5257371>
   15365         Dashcode Client crash when clicking on placemarks in Maps widget in WebCore::DeprecatedPtrListImpl::addIterator
   15366         
   15367         FlexibleBoxes should never have inline children. Don't move children out from last remaining anonymous block.
   15368 
   15369         * rendering/RenderBlock.cpp:
   15370         (WebCore::RenderBlock::removeChild): real fix
   15371         * rendering/RenderFlexibleBox.cpp:
   15372         (WebCore::RenderFlexibleBox::layoutVerticalBox): just to be sure, this is checked elsewhere too
   15373 
   15374 2007-07-19  Anders Carlsson  <andersca (a] apple.com>
   15375 
   15376         Reviewed by Darin.
   15377 
   15378         <rdar://problem/5322268>
   15379         Safari Crash at http://www.exlibrisgroup.com/sfx_openurl.htm
   15380         
   15381         Add a real copy constructor and assignment operator for CollectionInfo
   15382         so that the vectors in the cache maps will be copied correctly.
   15383         
   15384         * html/HTMLCollection.cpp:
   15385         (WebCore::HTMLCollection::CollectionInfo::CollectionInfo):
   15386         (WebCore::HTMLCollection::CollectionInfo::swap):
   15387         * html/HTMLCollection.h:
   15388         (WebCore::HTMLCollection::CollectionInfo::operator=):
   15389         (WebCore::HTMLCollection::CollectionInfo::copyCacheMap):
   15390 
   15391 2007-07-19  David Hyatt  <hyatt (a] apple.com>
   15392 
   15393         Fix for 5237574, Colloquy main view does not size correctly.  Make
   15394         sure to reset the baseilne when calculating a row's height/baseline, so
   15395         that old values don't stick around.
   15396 
   15397         Reviewed by Tim Hatcher
   15398 
   15399         * rendering/RenderTableSection.cpp:
   15400         (WebCore::RenderTableSection::calcRowHeight):
   15401 
   15402 2007-07-19  Antti  <antti (a] apple.com>
   15403 
   15404         Reviewed by John.
   15405         
   15406         Fix <rdar://problem/5346697>
   15407         REGRESSION(r23773): Visibile children on invisible layer are not painted (fast/layers/layer-visibility.html fails)
   15408         
   15409         Test m_hasVisibleContent instead of renderer()->style()->visibility(). 
   15410         This takes children into account too.
   15411 
   15412         Regression spotted by Mitz.
   15413 
   15414         * rendering/RenderLayer.cpp:
   15415         (WebCore::RenderLayer::paintLayer):
   15416 
   15417 2007-07-18  Oliver Hunt  <oliver (a] apple.com>
   15418 
   15419         Rubber stamped by maciej
   15420 
   15421         Rollout patch from r24437.
   15422 
   15423         * page/EventHandler.cpp:
   15424         (WebCore::EventHandler::keyEvent):
   15425 
   15426 2007-07-18  Oliver Hunt  <oliver (a] apple.com>
   15427 
   15428         Reviewed by Kevin M.
   15429 
   15430         Fix for <rdar://problem/5346167> DOM key events triggered during
   15431                 IME composition differ in webkit/mac vs all windows browsers
   15432 
   15433         We no longer send DOM key events during IME composition.  This behaviour 
   15434         matches the behaviour of WebKit/Win.
   15435 
   15436         * page/EventHandler.cpp:
   15437         (WebCore::EventHandler::keyEvent):
   15438 
   15439 2007-07-18  Sam Weinig  <sam (a] webkit.org>
   15440 
   15441         Reviewed by Oliver.
   15442 
   15443         Fix for http://bugs.webkit.org/show_bug.cgi?id=14646
   15444         WebKit border radius properties are unavailable via JavaScript
   15445 
   15446         Test: fast/dom/getComputedStyle-borderRadius.html
   15447 
   15448         * css/CSSComputedStyleDeclaration.cpp:
   15449         (WebCore::getBorderRadiusCornerValue): Helper function that returns a single value if
   15450         width and the height of the corner radius are equal, and otherwise a pair.
   15451         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   15452 
   15453 2007-07-18  Anders Carlsson  <andersca (a] apple.com>
   15454 
   15455         Reviewed by Darin.
   15456 
   15457         <rdar://problem/5262136> Double form repost alert going forward on britishairways.com
   15458         
   15459         When checking if the request has changed and a new policy callback needs to be sent, 
   15460         ignore the request headers. NSURLConnection in Leopard will always call willSendRequest,
   15461         with a request that was different from the one passed to -[NSURLConnection connectionWithRequest:]
   15462         (a few Accept headers are added).
   15463 
   15464         * loader/FrameLoader.cpp:
   15465         (WebCore::FrameLoader::checkNavigationPolicy):
   15466         * platform/network/ResourceRequestBase.cpp:
   15467         (WebCore::equalIgnoringHeaderFields):
   15468         (WebCore::operator==):
   15469         * platform/network/ResourceRequestBase.h:
   15470 
   15471 2007-07-18  Anders Carlsson  <andersca (a] apple.com>
   15472 
   15473         Reviewed by Darin.
   15474 
   15475         <rdar://problem/5340098>
   15476         http://bugs.webkit.org/show_bug.cgi?id=13366
   15477         REGRESSION (r10935): AOL beta music player doesn't play
   15478 
   15479         The AOL beta music player has a typo, causing it to create an <embed"> element inside of
   15480         an <object> element
   15481         Because of this, it will not be treated as an embed tag, so its name will not be added
   15482         to the document's named item map. Furthermore, since the <object> contains a child that
   15483         is not a <param>, the object's name won't be added either.
   15484         
   15485         The (somewhat ugly) fix is to add <object> to the named map only if it has <param> or
   15486         unknown elements as children.
   15487         
   15488         * html/HTMLObjectElement.cpp:
   15489         (WebCore::HTMLObjectElement::updateDocNamedItem):
   15490 
   15491 2007-07-18  Timothy Hatcher  <timothy (a] apple.com>
   15492 
   15493         Reviewed by Adam.
   15494 
   15495         <rdar://problem/5343767> Should have a way to disable the Web Inspector
   15496 
   15497         This change facilitates the ability to turn the Web Inspector on and off.
   15498 
   15499         Makes the InspectorClient be required to create a new Page. This also means that
   15500         InspectorController will never be NULL. Adds a new function on Page to test
   15501         if the inspector is enabled.
   15502 
   15503         * WebCore.exp: New symbol for the Page constructor.
   15504         * WebCore.pro: Add InspectorClientGdk.cpp.
   15505         * WebCoreSources.bkl: ditto.
   15506         * html/HTMLDocument.cpp:
   15507         (WebCore::HTMLDocument::createTokenizer):
   15508         * loader/FrameLoader.cpp:
   15509         (WebCore::FrameLoader::detachFromParent): Don't null check the InspectorCOntroller.
   15510         (WebCore::FrameLoader::dispatchDidCommitLoad): Ditto.
   15511         (WebCore::FrameLoader::dispatchAssignIdentifierToInitialRequest): Ditto.
   15512         (WebCore::FrameLoader::dispatchWillSendRequest): Ditto.
   15513         (WebCore::FrameLoader::dispatchDidReceiveResponse): Ditto.
   15514         (WebCore::FrameLoader::dispatchDidReceiveContentLength): Ditto.
   15515         (WebCore::FrameLoader::dispatchDidFinishLoading): Ditto.
   15516         (WebCore::FrameLoader::dispatchDidLoadResourceFromMemoryCache): Ditto.
   15517         * page/ContextMenuController.cpp:
   15518         (WebCore::ContextMenuController::handleContextMenuEvent): Ask the InspectorController if it is enabled.
   15519         (WebCore::ContextMenuController::contextMenuItemSelected): Ditto.
   15520         * page/InspectorController.cpp:
   15521         (WebCore::InspectorController::enabled): Ask the Page's settings if developer extras are enabled.
   15522         (WebCore::InspectorController::inspect): Check if the InspectorController is enabled.
   15523         (WebCore::InspectorController::focusNode): Ditto.
   15524         (WebCore::InspectorController::highlight): Ditto.
   15525         (WebCore::InspectorController::hideHighlight): Ditto.
   15526         (WebCore::InspectorController::addMessageToConsole): Ditto.
   15527         (WebCore::InspectorController::attachWindow): Ditto.
   15528         (WebCore::InspectorController::detachWindow): Ditto.
   15529         (WebCore::InspectorController::windowScriptObjectAvailable): Ditto.
   15530         (WebCore::InspectorController::didCommitLoad): Ditto.
   15531         (WebCore::InspectorController::frameDetachedFromParent): Ditto.
   15532         (WebCore::InspectorController::didLoadResourceFromMemoryCache): Ditto.
   15533         (WebCore::InspectorController::identifierForInitialRequest): Ditto.
   15534         (WebCore::InspectorController::willSendRequest): Ditto.
   15535         (WebCore::InspectorController::didReceiveResponse): Ditto.
   15536         (WebCore::InspectorController::didReceiveContentLength): Ditto.
   15537         (WebCore::InspectorController::didFinishLoading): Ditto.
   15538         (WebCore::InspectorController::didFailLoading): Ditto.
   15539         * page/InspectorController.h:
   15540         * page/Page.cpp:
   15541         (WebCore::Page::Page): Require an InspectorClient.
   15542         (WebCore::Page::~Page): Always call pageDestroyed on the InspectorController.
   15543         (WebCore::Page::inspectorEnabled): Check the WebCore settings if the developer extras are enabled.
   15544         * page/Page.h:
   15545         * page/gdk/InspectorClientGdk.cpp: Added.
   15546         (WebCore::InspectorClientGdk::inspectorDestroyed): Empty stub calling notImplemented.
   15547         (WebCore::InspectorClientGdk::createPage): Ditto.
   15548         (WebCore::InspectorClientGdk::showWindow): Ditto.
   15549         (WebCore::InspectorClientGdk::closeWindow): Ditto.
   15550         (WebCore::InspectorClientGdk::attachWindow): Ditto.
   15551         (WebCore::InspectorClientGdk::detachWindow): Ditto.
   15552         (WebCore::InspectorClientGdk::highlight): Ditto.
   15553         (WebCore::InspectorClientGdk::hideHighlight): Ditto.
   15554         (WebCore::InspectorClientGdk::inspectedURLChanged): Ditto.
   15555         * page/gdk/InspectorClientGdk.h: Added.
   15556         * platform/graphics/svg/SVGImage.cpp:
   15557         (WebCore::SVGImage::dataChanged): Pass in a dummy InspectorClient.
   15558         * platform/graphics/svg/SVGImageEmptyClients.h:
   15559         (WebCore::SVGEmptyInspectorClient::~SVGEmptyInspectorClient): Empty dummy implementation.
   15560         (WebCore::SVGEmptyInspectorClient::inspectorDestroyed): Ditto.
   15561         (WebCore::SVGEmptyInspectorClient::createPage): Ditto.
   15562         (WebCore::SVGEmptyInspectorClient::showWindow): Ditto.
   15563         (WebCore::SVGEmptyInspectorClient::closeWindow): Ditto.
   15564         (WebCore::SVGEmptyInspectorClient::attachWindow): Ditto.
   15565         (WebCore::SVGEmptyInspectorClient::detachWindow): Ditto.
   15566         (WebCore::SVGEmptyInspectorClient::highlight): Ditto.
   15567         (WebCore::SVGEmptyInspectorClient::hideHighlight): Ditto.
   15568         (WebCore::SVGEmptyInspectorClient::inspectedURLChanged): Ditto.
   15569 
   15570 2007-07-18  Anders Carlsson  <andersca (a] apple.com>
   15571 
   15572         Make some headers private instead of project.
   15573         
   15574         * WebCore.xcodeproj/project.pbxproj:
   15575 
   15576 2007-07-18  John Sullivan  <sullivan (a] apple.com>
   15577 
   15578         Reviewed by Maciej and Kevin Decker
   15579 
   15580         - fixed <rdar://problem/5315926> REGRESSION: ~.4% PLT regression from r23949 (canonicalization change)
   15581 
   15582         * loader/mac/LoaderNSURLExtras.m:
   15583         (canonicalURL):
   15584         Rolled out the fix for 5249730 that caused this regression. 5249730 is addressed a different way now.
   15585 
   15586 2007-07-18  Sam Weinig  <sam (a] webkit.org>
   15587 
   15588         Build fix.
   15589 
   15590         * WebCore.xcodeproj/project.pbxproj:
   15591         * loader/gdk/FrameLoaderClientGdk.cpp:
   15592         (WebCore::FrameLoaderClientGdk::objectContentType):
   15593         * platform/graphics/win/ImageWin.cpp:
   15594         * platform/network/cf/ResourceResponseCFNet.cpp:
   15595         * platform/win/ClipboardWin.cpp:
   15596         (WebCore::createGlobalImageFileDescriptor):
   15597 
   15598 2007-07-18  Sam Weinig  <sam (a] webkit.org>
   15599 
   15600         Rubber-stamped by Adam Roben.
   15601 
   15602         Rename MimeTypeRegistry to MIMETypeRegistry and xmlhttprequest to XMLHttpRequest
   15603 
   15604         * WebCore.exp:
   15605         * WebCore.pro:
   15606         * WebCore.vcproj/WebCore.vcproj:
   15607         * bindings/js/JSXMLHttpRequest.cpp:
   15608         * bindings/js/kjs_binding.cpp:
   15609         * bindings/js/kjs_dom.cpp:
   15610         * dom/Document.cpp:
   15611         * html/HTMLFormElement.cpp:
   15612         (WebCore::HTMLFormElement::formData):
   15613         * html/HTMLObjectElement.cpp:
   15614         (WebCore::HTMLObjectElement::containsJavaApplet):
   15615         * loader/FrameLoader.cpp:
   15616         (WebCore::FrameLoader::requestObject):
   15617         * loader/mac/LoaderNSURLExtras.m:
   15618         (suggestedFilenameWithMIMEType):
   15619         * platform/MIMETypeRegistry.cpp: Copied from platform/MimeTypeRegistry.cpp.
   15620         (WebCore::initialiseSupportedImageMIMETypes):
   15621         (WebCore::initialiseMIMETypeRegistry):
   15622         (WebCore::MIMETypeRegistry::getMIMETypeForPath):
   15623         (WebCore::MIMETypeRegistry::isSupportedImageMIMEType):
   15624         (WebCore::MIMETypeRegistry::isSupportedImageResourceMIMEType):
   15625         (WebCore::MIMETypeRegistry::isSupportedNonImageMIMEType):
   15626         (WebCore::MIMETypeRegistry::isJavaAppletMIMEType):
   15627         (WebCore::MIMETypeRegistry::getSupportedImageMIMETypes):
   15628         (WebCore::MIMETypeRegistry::getSupportedImageResourceMIMETypes):
   15629         (WebCore::MIMETypeRegistry::getSupportedNonImageMIMETypes):
   15630         * platform/MIMETypeRegistry.h: Copied from platform/MimeTypeRegistry.h.
   15631         * platform/MimeTypeRegistry.cpp: Removed.
   15632         * platform/MimeTypeRegistry.h: Removed.
   15633         * platform/gdk/MIMETypeRegistryGdk.cpp: Copied from platform/gdk/MimeTypeRegistryGdk.cpp.
   15634         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   15635         * platform/gdk/MimeTypeRegistryGdk.cpp: Removed.
   15636         * platform/graphics/BitmapImage.cpp:
   15637         * platform/graphics/Image.cpp:
   15638         (WebCore::Image::supportsType):
   15639         * platform/mac/DragDataMac.mm:
   15640         * platform/mac/MIMETypeRegistryMac.mm: Copied from platform/mac/MimeTypeRegistryMac.mm.
   15641         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   15642         (WebCore::MIMETypeRegistry::getExtensionsForMIMEType):
   15643         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
   15644         * platform/mac/MimeTypeRegistryMac.mm: Removed.
   15645         * platform/mac/PasteboardMac.mm:
   15646         (WebCore::Pasteboard::writeImage):
   15647         * platform/qt/MIMETypeRegistryQt.cpp: Copied from platform/qt/MimeTypeRegistryQt.cpp.
   15648         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   15649         * platform/qt/MimeTypeRegistryQt.cpp: Removed.
   15650         * platform/win/MIMETypeRegistryWin.cpp: Copied from platform/win/MimeTypeRegistryWin.cpp.
   15651         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
   15652         (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
   15653         * platform/win/MimeTypeRegistryWin.cpp: Removed.
   15654         * rendering/RenderPartObject.cpp:
   15655         (WebCore::RenderPartObject::updateWidget):
   15656         * xml/xmlhttprequest.cpp: Removed.
   15657         * xml/xmlhttprequest.h: Removed.
   15658         * xml/XMLHttpRequest.cpp: Copied from xml/xmlhttprequest.cpp.
   15659         * xml/XMLHttpRequest.h: Copied from xml/xmlhttprequest.h.
   15660 
   15661 2007-07-18  Sam Weinig  <sam (a] webkit.org>
   15662 
   15663         Rubber-stamped by Adam Roben.
   15664 
   15665         Rename csshelper.h, csshelper.cpp, cssparser.h, cssparser.cpp,
   15666         cssstyleselector.h, and cssstyleselector.cpp to be CamelCase.
   15667 
   15668         * WebCore.pro:
   15669         * WebCore.vcproj/WebCore.vcproj:
   15670         * bindings/objc/DOM.mm:
   15671         * bindings/objc/DOMHTML.mm:
   15672         * css/CSSGrammar.y:
   15673         * css/CSSMediaRule.cpp:
   15674         * css/CSSMutableStyleDeclaration.cpp:
   15675         * css/CSSPrimitiveValue.cpp:
   15676         * css/CSSStyleSheet.cpp:
   15677         * css/MediaList.cpp:
   15678         * css/MediaQueryExp.cpp:
   15679         * css/csshelper.cpp: Removed.
   15680         * css/csshelper.h: Removed.
   15681         * css/CSSHelper.cpp: Copied from css/csshelper.cpp.
   15682         * css/CSSHelper.h: Copied from css/csshelper.h.
   15683         * css/cssparser.cpp: Removed.
   15684         * css/cssparser.h: Removed.
   15685         * css/CSSParser.cpp: Copied from css/cssparser.cpp.
   15686         * css/CSSParser.h: Copied from css/cssparser.h.
   15687         * css/cssstyleselector.cpp: Removed.
   15688         * css/cssstyleselector.h: Removed.
   15689         * css/CSSStyleSelector.cpp: Copied from css/cssstyleselector.cpp.
   15690         * css/CSSStyleSelector.h: Copied from css/cssstyleselector.h.
   15691         * dom/Document.cpp:
   15692         * dom/Element.cpp:
   15693         * dom/StyledElement.cpp:
   15694         * editing/ApplyStyleCommand.cpp:
   15695         * editing/markup.cpp:
   15696         * html/CanvasGradient.cpp:
   15697         * html/CanvasRenderingContext2D.cpp:
   15698         * html/CanvasStyle.cpp:
   15699         * html/HTMLAnchorElement.cpp:
   15700         * html/HTMLBaseElement.cpp:
   15701         * html/HTMLBodyElement.cpp:
   15702         * html/HTMLDocument.cpp:
   15703         * html/HTMLEmbedElement.cpp:
   15704         * html/HTMLFormElement.cpp:
   15705         * html/HTMLFrameElementBase.cpp:
   15706         * html/HTMLImageElement.cpp:
   15707         * html/HTMLImageLoader.cpp:
   15708         * html/HTMLLinkElement.cpp:
   15709         * html/HTMLObjectElement.cpp:
   15710         * html/HTMLOptGroupElement.cpp:
   15711         * html/HTMLOptionElement.cpp:
   15712         * html/HTMLSelectElement.cpp:
   15713         * html/HTMLTableElement.cpp:
   15714         * html/HTMLTablePartElement.cpp:
   15715         * html/HTMLTokenizer.cpp:
   15716         * ksvg2/css/SVGCSSParser.cpp:
   15717         * ksvg2/css/SVGCSSStyleSelector.cpp:
   15718         * ksvg2/svg/SVGAElement.cpp:
   15719         * ksvg2/svg/SVGClipPathElement.cpp:
   15720         * ksvg2/svg/SVGGradientElement.cpp:
   15721         * ksvg2/svg/SVGLength.cpp:
   15722         * ksvg2/svg/SVGMaskElement.cpp:
   15723         * ksvg2/svg/SVGStyledElement.cpp:
   15724         * ksvg2/svg/SVGUseElement.cpp:
   15725         * page/DOMWindow.cpp:
   15726         * page/mac/FrameMac.mm:
   15727         * page/mac/WebCoreFrameBridge.mm:
   15728         * rendering/HitTestResult.cpp:
   15729         * rendering/RenderObject.cpp:
   15730         * rendering/RenderStyle.cpp:
   15731         * rendering/RenderThemeMac.mm:
   15732 
   15733 2007-07-18  Brady Eidson  <beidson (a] apple.com>
   15734 
   15735         Rubberstamped by Adam
   15736 
   15737         * platform/win/SharedBufferWin.cpp:
   15738         (WebCore::SharedBuffer::createWithContentsOfFile): Correct license on this newly checked in file from yesterday
   15739 
   15740 2007-07-18  Maciej Stachowiak  <mjs (a] apple.com>
   15741 
   15742         Reviewed by Oliver.
   15743 
   15744         - fixed <rdar://problem/5340603> REGRESSION: javascript being written to the screen in Safari
   15745 
   15746         Test Case: fast/tokenizer/badscript.html
   15747         
   15748         * html/HTMLTokenizer.cpp:
   15749         (WebCore::HTMLTokenizer::parseTag): Don't apply our self-closing
   15750         <script> quirk in cases where the / appears in a mangled attribtue
   15751         value.
   15752 
   15753 2007-07-17  Peter Kasting  <pkasting (a] google.com>
   15754 
   15755         Reviewed by Hyatt.
   15756 
   15757         http://bugs.webkit.org/show_bug.cgi?id=13618
   15758         Don't set link targets to "_blank" on middle-click; rely on the policy
   15759         delegate to do the right thing.
   15760 
   15761         * html/HTMLAnchorElement.cpp:
   15762         (WebCore::HTMLAnchorElement::defaultEventHandler):
   15763 
   15764 2007-07-17  Oliver Hunt  <oliver (a] apple.com>
   15765 
   15766         Reviewed by Maciej.
   15767 
   15768         Fix for <rdar://problem/4799967> Safari and other WebKit 
   15769         apps sometimes crash in WebCore::FontData::platformInit
   15770 
   15771         Always retain/release our font handle, instead of only retaining
   15772         in the presence of GC.
   15773 
   15774         * platform/mac/FontPlatformData.h:
   15775         (WebCore::FontPlatformData::FontPlatformData):
   15776         (WebCore::FontPlatformData::~FontPlatformData):
   15777 
   15778 2007-07-17  Sam Weinig  <sam (a] webkit.org>
   15779 
   15780         Reviewed by Geoff Garen.
   15781 
   15782         Fix for <rdar://problem/5333957>
   15783                 http://bugs.webkit.org/show_bug.cgi?id=14610
   15784 
   15785         Original patch by Feng Qian.
   15786 
   15787         - Clear the selection object when disconnecting a frame.
   15788 
   15789         Test: http/tests/security/cross-frame-access-selection.html
   15790 
   15791         * loader/FrameLoader.cpp:
   15792         (WebCore::FrameLoader::clear):
   15793         * page/DOMWindow.cpp:
   15794         (WebCore::DOMWindow::disconnectFrame):
   15795         (WebCore::DOMWindow::clear):
   15796         * page/DOMWindow.h:
   15797         * page/Frame.cpp:
   15798         (WebCore::Frame::clearScriptProxy):
   15799         (WebCore::Frame::clearDOMWindow):
   15800         * page/Frame.h:
   15801 
   15802 2007-07-17  Oliver Hunt  <oliver (a] apple.com>
   15803 
   15804         Reviewed by Sam.
   15805 
   15806         Fix for <rdar://problem/5154518> REGRESSION: Hitting return does
   15807         nothing in ruby terminal at http://tryruby.hobix.com/
   15808 
   15809         Calling event.preventDefault() during a keydown event should not 
   15810         prevent the keypress event from firing.
   15811 
   15812         * WebCore.xcodeproj/project.pbxproj:
   15813         * page/EventHandler.cpp:
   15814         (WebCore::EventHandler::keyEvent):
   15815         (WebCore::EventHandler::defaultKeyboardEventHandler):
   15816 
   15817 2007-07-17  Anders Carlsson  <andersca (a] apple.com>
   15818 
   15819         Reviewed by Geoff.
   15820 
   15821         <rdar://problem/4993463> 
   15822         http://bugs.webkit.org/show_bug.cgi?id=12732
   15823         REGRESSION: Comments fields on ircimages not showing up in nightly
   15824 
   15825         Postpone setting the frame name to just right before we request the frame. Otherwise, 
   15826         two calls to FrameTree::uniqueChildName will return the same frame name and in that case only
   15827         one Frame object will actually be created and multiple iframe elements will refer to it.
   15828         
   15829         * html/HTMLFrameElementBase.cpp:
   15830         (WebCore::HTMLFrameElementBase::openURL):
   15831         (WebCore::HTMLFrameElementBase::setNameAndOpenURL):
   15832         (WebCore::HTMLFrameElementBase::setNameAndOpenURLCallback):
   15833         (WebCore::HTMLFrameElementBase::insertedIntoDocument):
   15834         (WebCore::HTMLFrameElementBase::attach):
   15835         * html/HTMLFrameElementBase.h:
   15836 
   15837 2007-07-17  Brady Eidson  <beidson (a] apple.com>
   15838 
   15839         Reviewed by Steve
   15840 
   15841         Required for <rdar://problem/4516185> - FTP Directory Listings
   15842 
   15843         * WebCore.vcproj/WebCore.vcproj: Added SharedBufferWin
   15844         
   15845         * platform/SharedBuffer.cpp: Windows doesn't get the default empty resource anymore
   15846         * platform/win/SharedBufferWin.cpp: Added.
   15847         (WebCore::SharedBuffer::createWithContentsOfFile):
   15848 
   15849 2007-07-17  Brady Eidson  <beidson (a] apple.com>
   15850 
   15851         Reviewed by Tim Hatcher
   15852 
   15853         Tweak the class names we give to the icon table cell to make it easier to style
   15854 
   15855         * loader/FTPDirectoryDocument.cpp:
   15856           (WebCore::FTPDirectoryTokenizer::appendEntry): The the table cell a "IconCell" class name and
   15857           either a "FileType" or "DirectoryType" class name depending on the type
   15858 
   15859 2007-07-17  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   15860 
   15861         Reviewed by NOBODY.
   15862 
   15863         Build fix after r24366 add an additional ResourceRequest parameter to
   15864         the download method.
   15865 
   15866         * loader/gdk/FrameLoaderClientGdk.cpp:
   15867         (WebCore::FrameLoaderClientGdk::download):
   15868         * loader/gdk/FrameLoaderClientGdk.h:
   15869 
   15870 2007-07-17  Adam Roben  <aroben (a] apple.com>
   15871 
   15872         Fix Bug 14324: Cannot remove/customize the "Inspect Element" contextual menu item
   15873         http://bugs.webkit.org/show_bug.cgi?id=14324
   15874 
   15875         Reviewed by Tim.
   15876 
   15877         No regression test possible.
   15878 
   15879         * page/ContextMenuController.cpp:
   15880         (WebCore::ContextMenuController::handleContextMenuEvent): Add the
   15881         Inspect Element item to the menu before passing it to the
   15882         ContextMenuClient so that the UI delegate has a chance to
   15883         modify/remove the item.
   15884 
   15885 2007-07-17  Adam Roben  <aroben (a] apple.com>
   15886 
   15887         Remove ContextMenuClient::shouldIncludeInspectElementItem
   15888 
   15889         Reviewed by Tim.
   15890 
   15891         No regression test possible.
   15892 
   15893         * page/ContextMenuClient.h:
   15894         * page/ContextMenuController.cpp:
   15895         (WebCore::ContextMenuController::handleContextMenuEvent): Use Settings
   15896         to determine whether to include the Inspect Element item.
   15897         * page/gdk/ContextMenuClientGdk.cpp:
   15898         * page/gdk/ContextMenuClientGdk.h:
   15899         * platform/graphics/svg/SVGImageEmptyClients.h:
   15900 
   15901 2007-07-17  Adam Roben  <aroben (a] apple.com>
   15902 
   15903         Initialize ContextMenuController::m_page
   15904 
   15905         Somehow this variable had never been initialized before.
   15906 
   15907         Reviewed by Tim.
   15908 
   15909         * page/ContextMenuController.cpp:
   15910         (WebCore::ContextMenuController::ContextMenuController):
   15911         * page/ContextMenuController.h:
   15912         * page/Page.cpp:
   15913         (WebCore::Page::Page):
   15914 
   15915 2007-07-17  Adam Roben  <aroben (a] apple.com>
   15916 
   15917         Add Settings::developerExtrasEnabled
   15918 
   15919         Reviewed by Tim.
   15920 
   15921         * WebCore.exp:
   15922         * page/Settings.cpp:
   15923         * page/Settings.h:
   15924 
   15925 2007-07-17  Justin Garcia  <justin.garcia (a] apple.com>
   15926 
   15927         Reviewed by Antti.
   15928 
   15929         <rdar://problem/5206311> 
   15930         Whitespace can't be removed when editing text pasted into from web page
   15931         
   15932         The whitespace comes from table rows that aren't being removed after they are
   15933         emptied out during a deletion.
   15934 
   15935         * editing/DeleteSelectionCommand.cpp:
   15936         (WebCore::isTableCell):
   15937         (WebCore::isTableRow):
   15938         (WebCore::isTableCellEmpty):
   15939         (WebCore::isTableRowEmpty):
   15940         (WebCore::DeleteSelectionCommand::initializePositionData): Remember the table
   15941         rows that contained the start and end of the selection.
   15942         (WebCore::DeleteSelectionCommand::removePreviouslySelectedEmptyTableRows):
   15943         Remove table rows that come before the end of the selection
   15944         that was removed (except for the row that contained the start of the selection
   15945         and any before that).
   15946         Remove table rows that are come after the start of the selection
   15947         that was removed (except for the row that contained the end of the selection
   15948         and any after that).
   15949         (WebCore::DeleteSelectionCommand::doApply): Call the new function.
   15950         * editing/DeleteSelectionCommand.h:
   15951 
   15952 2007-07-17  Geoffrey Garen  <ggaren (a] apple.com>
   15953 
   15954         Reviewed by Kevin Decker.
   15955 
   15956         Removed ASSERT that was breaking the pageout test. It's trivial to
   15957         reproduce this ASSERT when navigating between pages that change their
   15958         names, but nothing bad seems to happen.
   15959 
   15960         * page/Page.cpp:
   15961         (WebCore::Page::goToItem):
   15962 
   15963 2007-07-17  Geoffrey Garen  <ggaren (a] apple.com>
   15964 
   15965         Build fix.
   15966         
   15967         * plugins/win/PluginViewWin.cpp: Pass false for lockHistory like we
   15968         do elsewhere.
   15969 
   15970 2007-07-17  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   15971 
   15972         Reviewed by Maciej.
   15973 
   15974         Implement the callback responsible for handling HTTP headers. This
   15975         callback gets called for every header.
   15976         We will add these headers to our ResourceResponse and on the 'end-of-header'
   15977         indicator we will update the ResourceResponse and dispatch it.
   15978 
   15979         This patch adds various set methods to ResourceResponse. This improves
   15980         the readability of the headerCallback and avoids storing a CURL handle inside
   15981         the ResourceResponse which would be needed to implement ResourceResponse::doUpdateResourceResponse
   15982 
   15983         Add a destructor for ResourceHandleManager which would free the resources and remove
   15984         a unused variable.
   15985 
   15986         * platform/network/ResourceHandleInternal.h:
   15987         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   15988         * platform/network/ResourceResponse.cpp:
   15989         (WebCore::ResourceResponse::setUrl):
   15990         (WebCore::ResourceResponse::setMimeType):
   15991         (WebCore::ResourceResponse::setExpectedContentLength):
   15992         (WebCore::ResourceResponse::setTextEncodingName):
   15993         (WebCore::ResourceResponse::setSuggestedFilename):
   15994         * platform/network/ResourceResponse.h:
   15995         * platform/network/curl/ResourceHandleCurl.cpp:
   15996         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   15997         * platform/network/curl/ResourceHandleManager.cpp:
   15998         (WebCore::ResourceHandleManager::~ResourceHandleManager):
   15999         (WebCore::ResourceHandleManager::sharedInstance):
   16000         (WebCore::headerCallback):
   16001         * platform/network/curl/ResourceHandleManager.h:
   16002 
   16003 2007-07-17  Sam Weinig  <sam (a] webkit.org>
   16004 
   16005         Reviewed by Adam Roben.
   16006 
   16007         Convert JS undefined to the empty string when calling alert, confirm, and prompt. 
   16008 
   16009         Test: fast/dom/Window/alert-undefined.html
   16010 
   16011         * page/DOMWindow.idl:
   16012 
   16013 2007-07-17  Geoffrey Garen  <ggaren (a] apple.com>
   16014 
   16015         Reviewed by Kevin McCulough.
   16016 
   16017         Fixed failing layout test.
   16018         
   16019         Renamed "FrameLoadTypeInternal" to "FrameLoadTypeRedirectWithLockedHistory".
   16020         This is almost certainly not a correct name for the original intent
   16021         of this load type, but it's a correct name for its current behavior.
   16022         
   16023         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory):
   16024         When history is supposed to be locked, and no current history item
   16025         exists, only add a new history item if you're the top-level frame.
   16026         
   16027         This rule, combined with the rule that setting iframe.src should not
   16028         create a history item, is pretty hackish. On the other hand, it
   16029         matches WinIE and doesn't cause any test regressions. So I'm OK with
   16030         it as a short-term solution until the solution described in 
   16031         <rdar://problem/5339292> can be implemented.
   16032 
   16033 2007-07-17  Tristan O'Tierney  <tristan (a] apple.com>
   16034 
   16035         Reviewed by Maciej Stachowiak.
   16036 
   16037         <rdar://problem/5294691> Source of file is misrepresented if downloaded by typing in URL in Safari address bar
   16038 
   16039         * loader/FrameLoaderClient.h:
   16040         * loader/MainResourceLoader.cpp:        
   16041         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   16042         Added an extra request parameter, initialRequest, to the download() method
   16043         by passing up the resource handle's request.
   16044         
   16045         * platform/graphics/svg/SVGImageEmptyClients.h:
   16046         (WebCore::SVGEmptyFrameLoaderClient::download):
   16047         Added an extra parameter to the empty SVG download method.
   16048         
   16049 2007-07-17  Antti  <antti (a] apple.com>
   16050 
   16051         Reviewed by home-bradee.
   16052 
   16053         <rdar://problem/5336372>
   16054         Icon database uses too much memory
   16055         
   16056         XRaying Safari startup memory consumption revealed that icon database is eating quite
   16057         a bit of RAM if Icon.db is large (which it probably is if it has been in use for a while, 
   16058         mine used for getting figures below was 2.6MB). 
   16059         
   16060         Note that the wins are less impressive with smaller Icon.db.
   16061         
   16062         This patch addresses three separate issues
   16063         
   16064         - SQLite fails to free the memory used by temporary tables. Icon database uses a temporary table
   16065           on startup for pruning unused page urls. This wastes around 1MB. Addressed by rewriting
   16066           pruning so it does not need a temporary table. The new method is also quite a bit faster speeding
   16067           up Safari launch time by around 100ms
   16068         - SQLite has it's own memory cache limited by default to 3MB. Icon database does not really need that much.
   16069           Dropped the cache size to 300kB saving ~1MB on startup. 
   16070           Smaller cache slows down startup by ~30ms (more than compensated by faster pruning above)
   16071         - Don't populate m_pageURLToIconURLMap with all urls from database on startup, instead let it get populated
   16072           when urls are accessed (user opens history menu for example). This shouldn't have any real performance impact 
   16073           as the accesses are icon loads that need to hit the database anyway. This saves ~700kB.
   16074           
   16075         All in all with this Icon.db these changes reduce allocated memory by around 2.7MB on startup. Release build
   16076         Safari RPRVT (empty start page) goes from 12.4MB to 10.4MB (TCMalloc pooling probably explaining why the win 
   16077         looks bit smaller here).
   16078 
   16079         * loader/icon/IconDatabase.cpp:
   16080         (WebCore::IconDatabase::IconDatabase):
   16081         (WebCore::IconDatabase::open):
   16082         (WebCore::IconDatabase::deleteAllPreparedStatements):
   16083         (WebCore::IconDatabase::retainIconForPageURL):
   16084         (WebCore::IconDatabase::releaseIconForPageURL):
   16085         (WebCore::IconDatabase::establishIconIDForIconURL):
   16086         (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
   16087         * loader/icon/IconDatabase.h:
   16088 
   16089 2007-07-17  Darin Adler  <darin (a] apple.com>
   16090 
   16091         Reviewed by Mitz.
   16092 
   16093         - fix http://bugs.webkit.org/show_bug.cgi?id=14569
   16094           Repro crash due to saved state not being cleared when select and textarea elements
   16095           are adopted by another document
   16096 
   16097         Test: fast/forms/saved-state-adoptNode-crash.html
   16098 
   16099         * dom/Document.h:
   16100         (WebCore::Document::registerFormElementWithState): Updated parameter type to be
   16101         HTMLFormControlElementWithState.
   16102         (WebCore::Document::unregisterFormElementWithState): Ditto.
   16103         Also removed isFormElementRegistered function and changed the type of the
   16104         m_formElementsWithState ListHashSet.
   16105         * dom/Document.cpp: (WebCore::Document::formElementsState): Updated to use new type,
   16106         for set contents and to use new saveState() function and only save state for elements
   16107         that return true.
   16108 
   16109         * html/HTMLGenericFormElement.h: Added HTMLFormControlElementWithState class,
   16110         derived from HTMLGenericFormElement, and moved down all the behavior related to
   16111         saving form control element state. Also removed the unnecessary default parameter
   16112         to the HTMLGenericFormElement constructor.
   16113         * html/HTMLGenericFormElement.cpp:
   16114         (WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState): Added.
   16115         Calls registerFormElementWithState.
   16116         (WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState): Added.
   16117         Calls unregisterFormElementWithState.
   16118         (WebCore::HTMLFormControlElementWithState::willMoveToNewOwnerDocument): Added.
   16119         Calls unregisterFormElementWithState.
   16120         (WebCore::HTMLFormControlElementWithState::didMoveToNewOwnerDocument): Added.
   16121         Calls registerFormElementWithState.
   16122         (WebCore::HTMLFormControlElementWithState::closeRenderer): Moved to this class from
   16123         the base class.
   16124 
   16125         * html/HTMLInputElement.h: Updated the base class name and overrode saveState instead
   16126         of stateValue.
   16127         * html/HTMLInputElement.cpp: Updated the base class name.
   16128         (WebCore::HTMLInputElement::init): Removed the call to registerFormElementWithState.
   16129         (WebCore::HTMLInputElement::~HTMLInputElement): Removed the call to
   16130         unregisterFormElementWithState. Also changed the code to only call the
   16131         unregisterForDidRestoreFromCacheCallback function for type PASSWORD (consistency
   16132         and efficiency).
   16133         (WebCore::HTMLInputElement::setInputType): Removed calls to registerFormElementWithState
   16134         and unregisterFormElementWithState; we now let the element stay registered and simply
   16135         don't save or restore state for password fields.
   16136         (WebCore::HTMLInputElement::saveState): Updated function name and signature to replace
   16137         the old stateValue function. Returns false for password fields.
   16138         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): Removed the call to
   16139         unregisterFormElementWithState.
   16140         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument): Removed the call to
   16141         registerFormElementWithState.
   16142 
   16143         * html/HTMLSelectElement.h: Updated the base class name and overrode saveState instead
   16144         of stateValue.
   16145         * html/HTMLSelectElement.cpp: Updated the base class name.
   16146         (WebCore::HTMLSelectElement::HTMLSelectElement): Removed the call to
   16147         registerFormElementWithState.
   16148         (WebCore::HTMLSelectElement::~HTMLSelectElement): Removed the call to
   16149         unregisterFormElementWithState.
   16150         (WebCore::HTMLSelectElement::saveState): Updated function name and signature to
   16151         replace the old stateValue function.
   16152         (WebCore::HTMLSelectElement::setLength): Updated to use document() instead of
   16153         ownerDocument(); the latter is just a slower virtual-function way of doing the
   16154         same thing in all cases except for Document and XPathNamespace.
   16155 
   16156         * html/HTMLTextAreaElement.h: Update the base class name, overrode saveState instead
   16157         of stateValue, and removed the now-unnecessary explicit destructor.
   16158         * html/HTMLTextAreaElement.cpp: Updated the base class name.
   16159         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Removed the call to
   16160         registerFormElementWithState.
   16161         (WebCore::HTMLTextAreaElement::saveState): Updated function name and signature to replace
   16162         the old stateValue function.
   16163 
   16164 2007-07-17  Sam Weinig  <sam (a] webkit.org>
   16165 
   16166         Reviewed by Darin.
   16167 
   16168         - Make HTMLFrameOwnerElement::contentWindow() return a DOMWindow instead of a Frame
   16169         - Remove the unnecessary hack in HTMLFrameElement.idl and HTMLIFrameElement.idl that
   16170           converted from Frame to Window now that it is not necessary.
   16171         - Remove now unused [NullCheck] extended attribute from CodeGeneratorJS.pm.
   16172 
   16173         * bindings/scripts/CodeGeneratorJS.pm:
   16174         * html/HTMLDocument.idl:
   16175         * html/HTMLFrameElement.idl:
   16176         * html/HTMLFrameOwnerElement.cpp:
   16177         (WebCore::HTMLFrameOwnerElement::contentWindow):
   16178         * html/HTMLFrameOwnerElement.h:
   16179         * html/HTMLIFrameElement.idl:
   16180 
   16181 2007-07-16  Sam Weinig  <sam (a] webkit.org>
   16182 
   16183         Reviewed by Adam Roben.
   16184 
   16185         Move self, opener, parent, top, window, and frames from kjs_window
   16186         to DOMWindow and auto-generate the bindings for them.
   16187 
   16188         * bindings/js/kjs_window.cpp:
   16189         (KJS::Window::getValueProperty):
   16190         * bindings/js/kjs_window.h:
   16191         (KJS::Window::):
   16192         * page/DOMWindow.cpp:
   16193         (WebCore::DOMWindow::self):
   16194         (WebCore::DOMWindow::opener):
   16195         (WebCore::DOMWindow::parent):
   16196         (WebCore::DOMWindow::top):
   16197         * page/DOMWindow.h:
   16198         (WebCore::DOMWindow::window):
   16199         (WebCore::DOMWindow::frames):
   16200         * page/DOMWindow.idl:
   16201 
   16202 2007-07-16  Geoffrey Garen  <ggaren (a] apple.com>
   16203 
   16204         Reviewed by Sam Weinig.
   16205         
   16206         Fixed <rdar://problem/5334483> REGRESSION: JavaScript-induced 
   16207         window.open loads not added to back/forward list
   16208         
   16209         I did an audit of our history rules in loading and tried to establish
   16210         some sane uniformity.
   16211         
   16212         The uniform rule is:
   16213             - HTTP redirects and HTTP redirects simulated by <meta http-equiv>
   16214             add a history item if and only if the redirect takes > 1 second.
   16215             - Other navigations, including JavaScript navigations, always
   16216             add a history item, except for location.replace navigations.
   16217 
   16218         In the future, we'll want to refine the second case to be more like the
   16219         first. I've filed <rdar://problem/5339292> about that.
   16220 
   16221         * bindings/js/JSHTMLDocumentCustom.cpp:
   16222         (WebCore::JSHTMLDocument::setLocation): Don't pass 'true' for 
   16223         userGesture unconditionally. userGesture is used to determine popup 
   16224         blocking, not history item creation.
   16225 
   16226         * bindings/js/kjs_window.cpp: Pass 'false' for lockHistory in all loads
   16227         except location.replace, which intends to lock history.
   16228 
   16229         * loader/FrameLoader.cpp: Distinguish between lockHistory and 
   16230         userGesture. The former determines whether a new history item gets
   16231         created. The latter determines whether JavaScript can open popup
   16232         windows. Start passing these variables in functions that used to
   16233         swallow or conflate them.
   16234         
   16235         (WebCore::FrameLoader::requestFrame): Pass 'true' for lockHistory here
   16236         because that's usually correct when setting the 'src' attribute of a
   16237         child frame, and we want to avoid regressing <rdar://problem/4921797>.
   16238 
   16239         (WebCore::FrameLoader::load): Use the lockHistory variable to determine
   16240         whether to start a history-creating load. Using userGesture for this
   16241         purpose is wrong, as explained above.
   16242 
   16243         * loader/FrameLoader.h: Renamed one variant of scheduleRedirection to
   16244         scheduleHTTPRedirection because the behavior there of measuring elapsed
   16245         time is specific to the HTTP redirection case.
   16246 
   16247         * page/ContextMenuController.cpp:
   16248         (WebCore::ContextMenuController::contextMenuItemSelected): lockHistory
   16249         can always be false here because this navigation is never the result of
   16250         a redirection.
   16251 
   16252 2007-07-16  Sam Weinig  <sam (a] webkit.org>
   16253 
   16254         Reviewed by Adam and Maciej.
   16255 
   16256         Move the frameElement attribute from kjs_window to DOMWindow and
   16257         auto-generate the bindings for it. 
   16258 
   16259         * bindings/js/kjs_window.cpp:
   16260         (KJS::Window::getValueProperty):
   16261         * bindings/js/kjs_window.h:
   16262         (KJS::Window::):
   16263         * bindings/scripts/CodeGeneratorJS.pm:
   16264         * page/DOMWindow.cpp:
   16265         (WebCore::DOMWindow::frameElement):
   16266         (WebCore::DOMWindow::devicePixelRatio):
   16267         * page/DOMWindow.h:
   16268         * page/DOMWindow.idl:
   16269 
   16270 2007-07-16  Sam Weinig  <sam (a] webkit.org>
   16271 
   16272         Reviewed by Adam.
   16273 
   16274         Move more functions from kjs_window to DOMWindow and auto-generate
   16275         the bindings for them.
   16276 
   16277         * bindings/js/kjs_window.cpp:
   16278         (KJS::WindowFunc::callAsFunction):
   16279         * bindings/js/kjs_window.h:
   16280         (KJS::Window::):
   16281         * page/DOMWindow.cpp:
   16282         (WebCore::DOMWindow::print):
   16283         (WebCore::DOMWindow::stop):
   16284         (WebCore::DOMWindow::alert):
   16285         (WebCore::DOMWindow::confirm):
   16286         (WebCore::DOMWindow::prompt):
   16287         (WebCore::DOMWindow::find):
   16288         * page/DOMWindow.h:
   16289         * page/DOMWindow.idl:
   16290 
   16291 2007-07-17  Mark Rowe  <mrowe (a] apple.com>
   16292 
   16293         Gdk build fix.
   16294 
   16295         * platform/gdk/ChromeClientGdk.h:
   16296 
   16297 2007-07-16  Brady Eidson  <beidson (a] apple.com>
   16298 
   16299         Reviewed by Adam
   16300 
   16301         Begin the arduous task of localizing FTP directory listings while removing a global initializer!
   16302 
   16303         * loader/FTPDirectoryDocument.cpp:
   16304         (WebCore::processFilesizeString):
   16305 
   16306         * page/mac/WebCoreViewFactory.h:
   16307 
   16308         * platform/LocalizedStrings.h:
   16309 
   16310         * platform/gdk/TemporaryLinkStubs.cpp:
   16311         (WebCore::unknownFileSizeText):
   16312 
   16313         * platform/mac/LocalizedStringsMac.mm:
   16314         (WebCore::unknownFileSizeText):
   16315 
   16316         * platform/qt/Localizations.cpp:
   16317         (WebCore::unknownFileSizeText):
   16318 
   16319 2007-07-16  Sam Weinig  <sam (a] webkit.org>
   16320 
   16321         Reviewed by Oliver.
   16322 
   16323         Remove more redundant isSafeScript checks.
   16324 
   16325         * bindings/js/kjs_window.cpp:
   16326         (KJS::Window::getOwnPropertySlot):
   16327 
   16328 2007-07-16  Sam Weinig  <sam (a] webkit.org>
   16329 
   16330         Reviewed by Oliver.
   16331 
   16332         Turn off -Wshorten-64-to-32 warning for 64-bit builds.
   16333 
   16334         * Configurations/Base.xcconfig:
   16335 
   16336 2007-07-16  Anders Carlsson  <andersca (a] apple.com>
   16337 
   16338         Reviewed by Oliver.
   16339 
   16340         <rdar://problem/5336276>
   16341         ASSERT(cs->accessCount() > 0) when instantiating widget templates in DashCode
   16342 
   16343         If the cache is disabled, accessCount will always be 0. Account for this in the assert.
   16344         
   16345         * html/HTMLTokenizer.cpp:
   16346         (WebCore::HTMLTokenizer::reset):
   16347         (WebCore::HTMLTokenizer::notifyFinished):
   16348 
   16349 2007-07-16  Brady Eidson  <beidson (a] apple.com>
   16350 
   16351         Reviewed by Darin.
   16352 
   16353         Append FTP row entries to the first TBODY instead of the TABLE element itself, 
   16354         as many TABLE elements end up with an implicit TBODY and that's where most people would
   16355         expect it to be added.
   16356 
   16357         * html/HTMLTableElement.h:
   16358         (WebCore::HTMLTableElement::firstTBody): Added this accessor
   16359 
   16360         * loader/FTPDirectoryDocument.cpp:
   16361         (WebCore::FTPDirectoryTokenizer::appendEntry): Add to the first tbody if it exists
   16362 
   16363 2007-07-16  Justin Garcia  <justin.garcia (a] apple.com>
   16364 
   16365         Reviewed by Adele.
   16366 
   16367         <rdar://problem/5240265> 
   16368         REGRESSION: Clicking a <button> clears the selection in contenteditable areas
   16369 
   16370         * page/FocusController.cpp:
   16371         (WebCore::clearSelectionIfNeeded): Don't clear the selection if
   16372         the mouse press that caused the focus shift occurred in 
   16373         a -webkit-user-select: ignore region.
   16374 
   16375 2007-07-16  David Hyatt  <hyatt (a] apple.com>
   16376 
   16377         Fix for 5335829, avoid creating a pathological # of FontData objects
   16378         on Windows.  The MLang service actually caches and reuses HFONTs, which
   16379         means it is safe to use our FontPlatformData -> FontData cache.
   16380 
   16381         Reviewed by olliej
   16382 
   16383         * platform/win/FontCacheWin.cpp:
   16384         (WebCore::FontCache::getFontDataForCharacters):
   16385 
   16386 2007-07-16  Adam Roben  <aroben (a] apple.com>
   16387 
   16388         Added a manual test to test calling window.print on a subframe.
   16389 
   16390         Reviewed by Darin.
   16391 
   16392         * manual-tests/resources/print-subframe.html: Added.
   16393         * manual-tests/window-print-subframe.html: Added.
   16394 
   16395 2007-07-16  Adam Roben  <aroben (a] apple.com>
   16396 
   16397         Replace Frame::print with Chrome::print
   16398 
   16399         This also adds a Frame* parameter to Chrome::print and
   16400         ChromeClient::print so that it knows which Frame to print.
   16401 
   16402         Reviewed by Darin.
   16403 
   16404         All tests pass.
   16405 
   16406         * bindings/js/kjs_window.cpp:
   16407         (KJS::WindowFunc::callAsFunction): Call Chrome::print.
   16408         * editing/JSEditor.cpp: Ditto.
   16409 
   16410         * bridge/win/FrameWin.cpp: Removed Frame::print.
   16411         * page/Frame.h: Ditto.
   16412         * page/mac/FrameMac.mm: Ditto.
   16413         * page/qt/FrameQt.cpp: Ditto.
   16414         * platform/gdk/FrameGdk.cpp: Ditto.
   16415         * page/mac/WebCoreFrameBridge.h: Removed -print.
   16416 
   16417         * page/Chrome.cpp: Added Frame* parameter to Chrome::print and pass it
   16418         up to the ChromeClient.
   16419         * page/Chrome.h: Ditto.
   16420         * page/ChromeClient.h: Ditto.
   16421         * platform/gdk/TemporaryLinkStubs.cpp: Ditto.
   16422         * platform/graphics/svg/SVGImageEmptyClients.h: Ditto.
   16423 
   16424 2007-07-16  Adele Peterson  <adele (a] apple.com>
   16425 
   16426         Reviewed by Brady.
   16427 
   16428         Fix for <rdar://problem/5321490> REGRESSION: visibility:hidden property doesn't hide parts of file input element and listbox
   16429         http://bugs.webkit.org/show_bug.cgi?id=14565
   16430 
   16431         Tests:
   16432         fast/forms/hidden-input-file.html
   16433         fast/forms/hidden-listbox.html
   16434 
   16435         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject):
   16436         Only paint if the control is supposed to be visible.
   16437         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintObject):
   16438         ditto.  We already had checks to prevent drawing the text that considered the option's style too, but if visibility: hidden
   16439         was just set on the listbox then a lot of extra work was being done, and the scrollbar was drawing too.  This change fixes that.
   16440 
   16441 2007-07-16  David Hyatt  <hyatt (a] apple.com>
   16442 
   16443         Fix for Radar 5338081, text-shadow should be reset on form controls so that
   16444         it doesn't inherit in when set e.g., on the <body>.
   16445 
   16446         Reviewed by beth
   16447 
   16448         * css/html4.css:
   16449 
   16450 2007-07-16  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   16451 
   16452         Reviewed by Niko.
   16453 
   16454         FrameView, PlatformScrollbar and changes to the way we draw
   16455 
   16456         Fix the lifetime of PlatformScrollbar, use a default width and
   16457         height and fix drawing of the PlatformScrollbar and other widgets
   16458         the following way: FrameGdk handles the expose events of the Frame
   16459         and will make the frame redraw and now it will draw the childrent of
   16460         the FrameView as well. This approach has the issue of honoring the
   16461         z-order of elements inside the RenderTree. Honoring the z-order will
   16462         be a bit more work
   16463 
   16464         Widget can now handle Widget::setGtkWidget call where the GtkWidget
   16465         has not yet a GdkWindow allocated. We will lazily set the GdkDrawable.
   16466 
   16467         In preparation of honoring the z-order of the RenderTree for RenderWidgets
   16468         it is started to store native objects inside the GraphicsContext. Doing this
   16469         nicely eliminates the need of RenderThemeGdk to do any drawing to a temporary
   16470         GdkPixmap. This should fix themes with rounded buttons.
   16471 
   16472         ScrollView implement add- and removeChild to get a working PlatformScrollbar
   16473 
   16474 
   16475         * platform/Widget.h:
   16476         * platform/gdk/FrameGdk.cpp:
   16477         (frame_gdk_expose_child): Will send the expose to all children
   16478         (WebCore::FrameGdk::handleGdkEvent): Painting changes, move to mouseMoved
   16479         * platform/gdk/PlatformScreenGdk.cpp:
   16480         (WebCore::screenDepth): gdkDrawable
   16481         * platform/gdk/PlatformScrollBarGdk.cpp:
   16482         (PlatformScrollbar::PlatformScrollbar): Fix ownership
   16483         (PlatformScrollbar::~PlatformScrollbar): Fix ownership
   16484         (PlatformScrollbar::paint): Widget::paint will do the right thing soon
   16485         * platform/gdk/RenderThemeGdk.cpp: No need for using a GdkPixmap, draw directly
   16486         (WebCore::RenderThemeGdk::paintCheckbox): No need for using a GdkPixmap, draw directly
   16487         (WebCore::RenderThemeGdk::paintRadio): No need for using a GdkPixmap, draw directly
   16488         (WebCore::RenderThemeGdk::paintButton): No need for using a GdkPixmap, draw directly
   16489         * platform/gdk/RenderThemeGdk.h: remove the copyContext call
   16490         * platform/gdk/ScrollViewGdk.cpp: gdkDrawable
   16491         (WebCore::ScrollView::updateView): gdkDrawable
   16492         (WebCore::ScrollView::update): clear the area to fix repainting issues
   16493         (WebCore::ScrollView::setGtkWidget): gdkDrawable
   16494         (WebCore::ScrollView::addChild): implement
   16495         (WebCore::ScrollView::removeChild): implement
   16496         * platform/gdk/TemporaryLinkStubs.cpp: Not needed header removed
   16497         * platform/gdk/WidgetGdk.cpp:
   16498         (WebCore::Widget::gdkDrawable): Renamed from drawable
   16499         (WebCore::Widget::setGtkWidget): use gdkDrawable
   16500         (WebCore::Widget::setCursor): gdkDrawable
   16501         (WebCore::Widget::show): gdkDrawable
   16502         (WebCore::Widget::hide): gdkDrawable
   16503         * platform/graphics/GraphicsContext.h: Allow to set the GdkDrawable, e.g. used inside a expose event
   16504         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   16505         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   16506         (WebCore::GraphicsContext::setGdkDrawable):
   16507         (WebCore::GraphicsContext::gdkDrawable):
   16508 
   16509 2007-07-16  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   16510 
   16511         Reviewed by Maciej.
   16512 
   16513         Lazily update the scrollbars (e.g. on loading a page) to
   16514         generate less expose events, which will lead to laying out less often
   16515          and will fix http://bugs.webkit.org/show_bug.cgi?id=14020.
   16516 
   16517         * platform/gdk/ScrollViewGdk.cpp:
   16518         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   16519         (WebCore::ScrollView::update):
   16520         (WebCore::ScrollView::resizeContents):
   16521         (WebCore::ScrollView::updateScrollbars):
   16522 
   16523 2007-07-16  Rob Buis  <buis (a] kde.org>
   16524 
   16525         Reviewed by Maciej.
   16526 
   16527         http://bugs.webkit.org/show_bug.cgi?id=14462
   16528         non empty <style> element doesn't work
   16529 
   16530         Return an empty sheet for empty <style> elements
   16531         instead of a null sheet. Clean up StyleElement a bit.
   16532 
   16533         * dom/StyleElement.cpp:
   16534         (WebCore::StyleElement::StyleElement):
   16535         (WebCore::StyleElement::sheet):
   16536         (WebCore::StyleElement::childrenChanged):
   16537         (WebCore::StyleElement::createSheet):
   16538         * dom/StyleElement.h:
   16539         (WebCore::StyleElement::setLoading):
   16540         * html/HTMLStyleElement.cpp:
   16541         (WebCore::HTMLStyleElement::HTMLStyleElement):
   16542         (WebCore::HTMLStyleElement::sheet):
   16543         * html/HTMLStyleElement.h:
   16544         (WebCore::HTMLStyleElement::setLoading):
   16545         * ksvg2/svg/SVGStyleElement.cpp:
   16546         (WebCore::SVGStyleElement::sheet):
   16547         (WebCore::SVGStyleElement::sheetLoaded):
   16548         * ksvg2/svg/SVGStyleElement.h:
   16549 
   16550 2007-07-15  Oliver Hunt  <oliver (a] apple.com>
   16551 
   16552         Reviewed by Adam.
   16553 
   16554         Fix for fix for <rdar://problem/5336602> REGRESSION: tab characters
   16555                         cannot be entered into text fields
   16556                         http://bugs.webkit.org/show_bug.cgi?id=14032
   16557 
   16558         Need to use UChar not char.
   16559 
   16560         * html/HTMLInputElement.cpp:
   16561         (WebCore::HTMLInputElement::constrainValue):
   16562 
   16563 2007-07-15  Sam Weinig  <sam (a] webkit.org>
   16564 
   16565         Reviewed by Geoff Garen.
   16566 
   16567         Remove redundant calls to isSafeScript()
   16568 
   16569         * bindings/js/JSDOMWindowCustom.cpp:
   16570         (WebCore::JSDOMWindow::customPut):
   16571         * bindings/js/kjs_window.cpp:
   16572         (KJS::Window::put):
   16573 
   16574 2007-07-15  Geoffrey Garen  <ggaren (a] apple.com>
   16575 
   16576         Reviewed by Maciej Stachowiak.
   16577         
   16578         Removed incorrect error log, seen while running layout tests.
   16579         
   16580         Perhaps at some point FrameLoadTypeInteral had a specific meaning
   16581         that prevented it from being used in non-child frame, non-redirect
   16582         situations. However, that meaning has been lost and nobody remembers
   16583         how to get it back.
   16584         
   16585         We currently use FrameLoadTypeInternal for any load that is not
   16586         initiated by a user gesture, so it's trivial to produce this error
   16587         log, even though nothing has gone wrong.
   16588 
   16589         * loader/FrameLoader.cpp:
   16590         (WebCore::FrameLoader::updateHistoryForInternalLoad):
   16591 
   16592 2007-07-15  Oliver Hunt  <oliver (a] apple.com>
   16593 
   16594         Reviewed by Maciej
   16595 
   16596         Fix for <rdar://problem/5336602> REGRESSION: tab characters cannot be entered into text fields
   16597                 http://bugs.webkit.org/show_bug.cgi?id=14032
   16598 
   16599         constrainValue attempted to block control characters from being inserted 
   16600         by a simple less than ' ' check, which prevent tab characters from being
   16601         inserted.  This patch adds an additional check to allow the tab character 
   16602         again
   16603 
   16604         * html/HTMLInputElement.cpp:
   16605         (WebCore::HTMLInputElement::constrainValue):
   16606 
   16607 2007-07-14  Brady Eidson  <beidson (a] apple.com>
   16608 
   16609         Third shot at blind Qt/GDK build fix
   16610 
   16611         * platform/gdk/TemporaryLinkStubs.cpp:
   16612         (FTPDirectoryDocument::createTokenizer):
   16613         * platform/qt/TemporaryLinkStubs.cpp:
   16614         (FTPDirectoryDocument::createTokenizer):
   16615 
   16616 2007-07-14  Brady Eidson  <beidson (a] apple.com>
   16617 
   16618         Reviewed by Sam
   16619 
   16620         Windows build fix
   16621 
   16622         * WebCore.vcproj/WebCore.vcproj:
   16623 
   16624 2007-07-14  Sam Weinig  <sam (a] webkit.org>
   16625 
   16626         Fix Tiger build.
   16627 
   16628         * config.h:
   16629 
   16630 2007-07-14  Brady Eidson  <beidson (a] apple.com>
   16631 
   16632         Blind attempt at (hopefully) fixing the Qt and GDK builds
   16633 
   16634         * platform/gdk/TemporaryLinkStubs.cpp:
   16635         (FTPDirectoryDocument::FTPDirectoryDocument):
   16636         * platform/qt/TemporaryLinkStubs.cpp:
   16637         (FTPDirectoryDocument::FTPDirectoryDocument):
   16638 
   16639 2007-07-14  Brady Eidson  <beidson (a] apple.com>
   16640 
   16641         Reviewed by Sam Weinig
   16642 
   16643         Initial check-in for <rdar://problem/3154486> - Supporting FTP directory listings in the browser
   16644 
   16645         Development has taken place on both Leopard and Windows (windows enabling patch will follow shortly)
   16646         Support will only exist on platforms whose network layers (ie, ResourceHandle) support piping the raw
   16647         FTP Directory data into the engine.  
   16648 
   16649         This is known to include Leopard, Windows, and CURL based platforms - probably others
   16650         Known incompatible platforms include Tiger.
   16651 
   16652         The FTP listing page is built in HTML.  An external HTML document can be provided as a template for the 
   16653         directory listing.  This document is parsed, and expected to have a <table> with a certain class in it.
   16654         As FTP directory listings come in, each entry is added to this table as a row.
   16655 
   16656         If no HTML template is provided to work with, a very basic empty document is hard coded that contains only 
   16657         this special table.
   16658 
   16659         Upgrades to the look and feel of the directory listings can take place largely in this HTML template which,
   16660         admittedly, is conspicuously absent in this initial checkin
   16661 
   16662         * WebCore.exp: New Settings symbols for WebKit
   16663         * WebCore.xcodeproj/project.pbxproj:
   16664 
   16665         * config.h: If BUILDING_ON_TIGER, disable FTP directory listing support
   16666 
   16667         * dom/DOMImplementation.cpp:
   16668         (WebCore::DOMImplementation::createDocument): Create an FTPDirectoryDocument if the mime type is 
   16669           "application/x-ftp-directory"
   16670 
   16671         * loader/FTPDirectoryDocument.cpp: Added.
   16672         (WebCore::FTPDirectoryTokenizer::isWaitingForScripts):
   16673         (WebCore::FTPDirectoryTokenizer::checkBuffer):
   16674         (WebCore::FTPDirectoryTokenizer::FTPDirectoryTokenizer): Building on HTML tokenizer, this facilitates 
   16675           parsing FTP Directory listings in the engine
   16676         (WebCore::FTPDirectoryTokenizer::appendEntry): Add a table row for a directory listing to the document
   16677         (WebCore::FTPDirectoryTokenizer::createTDForFilename): Create the TD for the filename with the anchor in it
   16678 
   16679         (WebCore::processFilesizeString): Prettify the filesize
   16680         (WebCore::wasLastDayOfMonth):
   16681         (WebCore::processFileDateString): Prettify the date
   16682         (WebCore::FTPDirectoryTokenizer::parseAndAppendOneLine):
   16683         (WebCore::FTPDirectoryTokenizer::loadDocumentTemplate): Loads the HTML template that FTP directory listings
   16684           can build on top of
   16685         (WebCore::FTPDirectoryTokenizer::createBasicDocument): Creates a most basic document (body and one table) to
   16686           append the rows to in case the document template is not loaded and parsed
   16687         (WebCore::FTPDirectoryTokenizer::write): Add the FTP listing to the buffer and parse entries out of it
   16688         (WebCore::FTPDirectoryTokenizer::finish): 
   16689 
   16690         (WebCore::FTPDirectoryDocument::FTPDirectoryDocument): Special document-type for FTP directory listings
   16691         (WebCore::FTPDirectoryDocument::createTokenizer):
   16692         * loader/FTPDirectoryDocument.h: Added.
   16693         (WebCore::FTPDirectoryDocument::isImageDocument):
   16694         
   16695         * loader/FTPDirectoryParser.cpp: Added.
   16696         (WebCore::parseOneFTPLine): Adapted from ParseFTPList.cpp from Firefox - parses most known
   16697           FTP directory listing styles into discrete FTP directory entries
   16698         * loader/FTPDirectoryParser.h: Added.
   16699         (WebCore::ListState::ListState): Maintains FTP Parser state
   16700         (WebCore::ListResult::ListResult): Represents one FTP directory listing
   16701         (WebCore::ListResult::clear):
   16702 
   16703         * loader/FrameLoader.cpp:
   16704         (WebCore::FrameLoader::checkContentPolicy): If the Settings say to bypass the policy check for 
   16705           "application/x-ftp-directory", skip it.  This will allow people to test this feature even if their 
   16706           browser/WebKit app would otherwise not allow it
   16707 
   16708         * page/Settings.cpp:
   16709         (WebCore::Settings::Settings):
   16710         (WebCore::Settings::setFTPDirectoryTemplatePath): Set the path to the FTP listing document template
   16711         (WebCore::Settings::setForceFTPDirectoryListings): Set to bypass the policy delegate check for mime type
   16712           "application/x-ftp-directory"
   16713         * page/Settings.h:
   16714         (WebCore::Settings::ftpDirectoryTemplatePath):
   16715         (WebCore::Settings::forceFTPDirectoryListings):
   16716 
   16717         * platform/Logging.cpp: Add an "LogFTP" logging channel
   16718         * platform/Logging.h:
   16719         * platform/mac/LoggingMac.mm:
   16720         (WebCore::InitializeLoggingChannelsIfNecessary):
   16721 
   16722         * platform/MimeTypeRegistry.cpp:
   16723         (WebCore::initialiseSupportedNonImageMimeTypes): Add "application/x-ftp-directory"
   16724 
   16725         * platform/SharedBuffer.cpp:
   16726         (WebCore::SharedBuffer::createWithContentsOfFile): Stub for now
   16727         * platform/SharedBuffer.h:
   16728 
   16729         * platform/mac/SharedBufferMac.mm:
   16730         (WebCore::SharedBuffer::createWithContentsOfFile): Load contents of the file into an NSData, then
   16731           wrap that NSData
   16732 
   16733 2007-07-14  Alexey Proskuryakov  <ap (a] webkit.org>
   16734 
   16735         Reviewed by Darin.
   16736 
   16737         http://bugs.webkit.org/show_bug.cgi?id=14618
   16738         REGRESSION(13464): drivehq.com login form doesn't work
   16739 
   16740         Test: http/tests/misc/post-submit-button.html
   16741 
   16742         * html/HTMLInputElement.cpp:
   16743         (WebCore::HTMLInputElement::appendFormData): Append a submit even if its value is empty.
   16744 
   16745 2007-07-13  Oliver Hunt  <oliver (a] apple.com>
   16746 
   16747         Reviewed by Sam.
   16748 
   16749         Fix for 
   16750             <rdar://problem/5335265> REGRESSION: WebCore::DragController crashes if WebDragSourceActionDHTML cleared
   16751             http://bugs.webkit.org/show_bug.cgi?id=13652
   16752 
   16753         Reorder logic for drag initiation: we can always preflight the clipboard, regardless as to whether 
   16754         we are performing any dhtml drag handling    
   16755 
   16756         * page/EventHandler.cpp:
   16757         (WebCore::EventHandler::handleDrag):
   16758 
   16759 2007-07-13  Matt Lilek  <pewtermoose (a] gmail.com>
   16760 
   16761         Reviewed by Tim Hatcher.
   16762 
   16763         Bug 14401: Semi-regression: Can no longer copy anything from the inspector
   16764         http://bugs.webkit.org/show_bug.cgi?id=14401
   16765 
   16766         * page/inspector/inspector.css:
   16767 
   16768 2007-07-13  Beth Dakin  <bdakin (a] apple.com>
   16769 
   16770         Reviewed by Hyatt.
   16771 
   16772         Fix for <rdar://problem/5304742> A hang occurs when attempting to 
   16773         display web clip banner at http://www.signonsandiego.com/sports/
   16774         chargers/index.html
   16775 
   16776         Here is the actual fix. 
   16777         * rendering/RenderInline.cpp:
   16778         (WebCore::RenderInline::absoluteRects): Set topLevel to 
   16779         false when we recurse to get our children's absoluteRects.
   16780         * rendering/RenderInline.h: New boolean parameter 
   16781         topLevel that defaults to true.
   16782         * rendering/RenderObject.cpp:
   16783         (WebCore::RenderObject::absoluteRects):
   16784         * rendering/RenderObject.h:
   16785 
   16786         And these are just other implementations/declarations of this 
   16787         (virtual) function that have to add the parameter. No behavior 
   16788         change here.
   16789         * rendering/RenderPath.cpp:
   16790         (WebCore::RenderPath::absoluteRects):
   16791         * rendering/RenderPath.h:
   16792         * rendering/RenderSVGContainer.cpp:
   16793         (WebCore::RenderSVGContainer::absoluteRects):
   16794         * rendering/RenderSVGContainer.h:
   16795         * rendering/RenderSVGHiddenContainer.cpp:
   16796         (WebCore::RenderSVGHiddenContainer::absoluteRects):
   16797         * rendering/RenderSVGHiddenContainer.h:
   16798         * rendering/RenderSVGImage.cpp:
   16799         (WebCore::RenderSVGImage::absoluteRects):
   16800         * rendering/RenderSVGImage.h:
   16801         * rendering/RenderSVGInlineText.cpp:
   16802         (WebCore::RenderSVGInlineText::absoluteRects):
   16803         * rendering/RenderSVGInlineText.h:
   16804         * rendering/RenderSVGTSpan.cpp:
   16805         (WebCore::RenderSVGTSpan::absoluteRects):
   16806         * rendering/RenderSVGTSpan.h:
   16807         * rendering/RenderSVGText.cpp:
   16808         (WebCore::RenderSVGText::absoluteRects):
   16809         * rendering/RenderSVGText.h:
   16810         * rendering/RenderText.cpp:
   16811         (WebCore::RenderText::absoluteRects):
   16812         * rendering/RenderText.h:
   16813         * rendering/RenderView.cpp:
   16814         (WebCore::RenderView::absoluteRects):
   16815         * rendering/RenderView.h:
   16816 
   16817 2007-07-13  Mitz Pettel  <mitz (a] webkit.org>
   16818 
   16819         Reviewed by Hyatt.
   16820 
   16821         - fix http://bugs.webkit.org/show_bug.cgi?id=13438 <rdar://problem/5153030>
   16822               Run rounding makes word-break:break-all/word not functional
   16823 
   16824         Test: fast/text/word-break-run-rounding.html
   16825 
   16826         * rendering/RenderText.cpp:
   16827         (WebCore::RenderText::calcPrefWidths): Update the maximum width only on word
   16828         boundaries to avoid rounding errors.
   16829         * rendering/bidi.cpp:
   16830         (WebCore::RenderBlock::findNextLineBreak): Integrated breakAll with the
   16831         midWordBreak/wrapW mechanism. Also made the wrapW upper bound more accurate
   16832         by resetting it when tmpW is committed.
   16833 
   16834 2007-07-13  Sam Weinig  <sam (a] webkit.org>
   16835 
   16836         Reviewed by Geoff Garen.
   16837 
   16838         Patch for <rdar://problem/5318394>
   16839         http site can read/write content of https site in same domain
   16840 
   16841         Add protocol and port checks in isSafeScript.
   16842 
   16843         * bindings/js/kjs_window.cpp:
   16844         (KJS::Window::isSafeScript):
   16845 
   16846 2007-07-13  Anders Carlsson  <andersca (a] apple.com>
   16847 
   16848         Reviewed by Mitz Pettel.
   16849 
   16850         <rdar://problem/5298870> 
   16851         REGRESSION: In Yahoo Mail modal dialog, OK and Cancel buttons do not work, and descriptive text is missing (14327)
   16852         
   16853         http://bugs.webkit.org/show_bug.cgi?id=14327
   16854         REGRESSION (r21367): dialogArguments not set in window generated by showModalDialog
   16855 
   16856         When creating popup windows/dialogs, prevent the window properties from being cleared by the initial frame load.
   16857         
   16858         * loader/FrameLoader.cpp:
   16859         (WebCore::FrameLoader::FrameLoader):
   16860         (WebCore::FrameLoader::createWindow):
   16861         (WebCore::FrameLoader::clear):
   16862         (WebCore::FrameLoader::begin):
   16863         (WebCore::FrameLoader::open):
   16864         * loader/FrameLoader.h:
   16865         (WebCore::FrameLoader::setShouldClearWindowProperties):
   16866         * manual-tests/modal-dialog-arguments.html: Added.
   16867 
   16868 2007-07-13  Steve Falkenburg  <sfalken (a] apple.com>
   16869 
   16870         Update ResourceError related code to account for changes in CF interfaces.
   16871 
   16872         Reviewed by Darin, Ada.
   16873 
   16874         * platform/network/ResourceError.h: Change Mac conditionals to CF to share more code.
   16875         * platform/network/cf/ResourceErrorCF.cpp:
   16876         (WebCore::ResourceError::ResourceError): Modified based on CFErrorRef changes
   16877         (WebCore::ResourceError::unpackPlatformError): Ported from ResourceErrorMac.mm.
   16878         (WebCore::ResourceError::operator CFErrorRef): Ported from ResourceErrorMac.mm.
   16879         (WebCore::ResourceError::operator CFStreamError): Modified based on CFErrorRef changes.
   16880 
   16881 2007-07-13  Antti Koivisto  <antti (a] apple.com>
   16882 
   16883         Reviewed by Adele.
   16884         
   16885         Fix <rdar://problem/5192256>
   16886         click() in onchange handler causes another change event (causes hang at http://forums.whirlpool.net.au/)
   16887         
   16888         Guard against generating a simulated event from within a simulated event in the same node. Try to
   16889         match Firefox behavior.
   16890 
   16891         * dom/EventTargetNode.cpp:
   16892         (WebCore::EventTargetNode::dispatchSimulatedMouseEvent):
   16893         (WebCore::EventTargetNode::dispatchSimulatedClick):
   16894         * dom/Node.cpp:
   16895         (WebCore::Node::Node):
   16896         * dom/Node.h:
   16897 
   16898 2007-07-13  Antti Koivisto  <antti (a] apple.com>
   16899 
   16900         Reviewed by Darin.
   16901         
   16902         Fix <rdar://problem/5333387>
   16903         Combination of selection and click() on checkbox crashes
   16904         
   16905         Ensure there is no pending style update before doing synchronous paint. Under certain
   16906         circumstances this ends up doing style recalc in middle of paint() which may
   16907         for example tear down the rendering tree being painted, with bad results.
   16908 
   16909         * dom/ContainerNode.cpp:
   16910         (WebCore::ContainerNode::setActive):
   16911 
   16912 2007-07-13  Antti Koivisto  <antti (a] apple.com>
   16913 
   16914         Reviewed by Adele.
   16915         
   16916         Fix <rdar://problem/5333365>
   16917         Calling click() is very slow
   16918         
   16919         There is a 100ms delay in ContainerNode::setActive() to do an activation effect. It is used for
   16920         simulated mouse activations (using keyboard for example). However, it shouldn't be done when calling from javascript 
   16921         (through click() interface) since it hangs script execution.
   16922 
   16923         * html/HTMLElement.cpp:
   16924         (WebCore::HTMLElement::click):
   16925 
   16926 2007-07-13  Mitz Pettel  <mitz (a] webkit.org>
   16927 
   16928         Reviewed by Dave Hyatt.
   16929 
   16930         - fix http://bugs.webkit.org/show_bug.cgi?id=13873
   16931           Incomplete repaint of replaced element's box shadow
   16932 
   16933         Tests: fast/repaint/box-shadow-h.html
   16934                fast/repaint/box-shadow-v.html
   16935 
   16936         * rendering/RenderHTMLCanvas.cpp:
   16937         (WebCore::RenderHTMLCanvas::layout): Added a call to adjustOverflowForBoxShadow().
   16938         * rendering/RenderImage.cpp:
   16939         (WebCore::RenderImage::layout): Ditto.
   16940         * rendering/RenderPartObject.cpp:
   16941         (WebCore::RenderPartObject::layout): Ditto.
   16942         * rendering/RenderReplaced.cpp:
   16943         (WebCore::RenderReplaced::RenderReplaced): Initialize m_hasOverflow.
   16944         (WebCore::RenderReplaced::~RenderReplaced): Added. Removes this object from the
   16945         overflow rect map if it has overflow.
   16946         (WebCore::RenderReplaced::shouldPaint): Account for overflow.
   16947         (WebCore::RenderReplaced::adjustOverflowForBoxShadow): Added. Creates or
   16948         removes an entry for this object in the global overflow rect map.
   16949         (WebCore::RenderReplaced::overflowHeight): Added.
   16950         (WebCore::RenderReplaced::overflowWidth): Added.
   16951         (WebCore::RenderReplaced::overflowLeft): Added.
   16952         (WebCore::RenderReplaced::overflowTop): Added.
   16953         (WebCore::RenderReplaced::overflowRect): Added.
   16954         * rendering/RenderReplaced.h:
   16955 
   16956 2007-07-13  Mitz Pettel  <mitz (a] webkit.org>
   16957 
   16958         Reviewed by Dave Hyatt.
   16959 
   16960         - fix http://bugs.webkit.org/show_bug.cgi?id=14395
   16961           When a <p> is inside <li> two <BR>s are rendered
   16962 
   16963         Test: fast/lists/marker-before-empty-inline.html
   16964 
   16965         * rendering/RenderBlock.h:
   16966         * rendering/RenderListItem.cpp:
   16967         (WebCore::getParentOfFirstLineBox): Changed to skip empty inline flows that
   16968         do not actually generate any line boxes. Limited the nested lists quirk to
   16969         the case where the list is a child of the list item, to match Firefox.
   16970         * rendering/bidi.cpp:
   16971         (WebCore::requiresLineBox): Added. Factored out of skipWhitespace.
   16972         (WebCore::RenderBlock::generatesLineBoxesForInlineChild): Added. Checkes
   16973         whether the child or any of its siblings following it will generate a line
   16974         box in the flow.
   16975         (WebCore::RenderBlock::skipWhitespace):
   16976 
   16977 2007-07-13  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   16978 
   16979         Reviewed by Alexey.
   16980 
   16981         Move HTTP methods to parse Content-Type from xmlhttprequest.cpp
   16982         which is LGPL to HTTPParsers.cpp. As both files were written by the
   16983         same author and the advice to move them came from him I think this move
   16984         is what is meant to be done.
   16985 
   16986         Move filenameFromHTTPContentDisposition to HTTPParsers as well. This parse
   16987         function uses Vector<String>::split and doesn't honor quoting. This needs
   16988         to be fixed in later versions.
   16989 
   16990         http://bugs.webkit.org/show_bug.cgi?id=5954 and http://bugs.webkit.org/show_bug.cgi?id=14059
   16991         benefit from this change.
   16992 
   16993         * platform/network/HTTPParsers.cpp:
   16994         (WebCore::filenameFromHTTPContentDisposition):
   16995         (WebCore::extractMIMETypeFromMediaType):
   16996         (WebCore::extractCharsetFromMediaType):
   16997         * platform/network/HTTPParsers.h:
   16998         * platform/network/cf/ResourceResponseCFNet.cpp:
   16999         * xml/xmlhttprequest.cpp:
   17000         (WebCore::XMLHttpRequest::responseMIMEType):
   17001         (WebCore::XMLHttpRequest::didReceiveResponse):
   17002 
   17003 2007-07-13  Mark Rowe  <mrowe (a] apple.com>
   17004 
   17005         Reviewed by Mitz.
   17006 
   17007         Build fix.  Stub out ChromeClientGdk::print and SVGEmptyChromeClient::print.
   17008 
   17009         * platform/gdk/ChromeClientGdk.h:
   17010         * platform/gdk/TemporaryLinkStubs.cpp:
   17011         (ChromeClientGdk::print):
   17012         * platform/graphics/svg/SVGImageEmptyClients.h:
   17013         (WebCore::SVGEmptyChromeClient::print):
   17014 
   17015 2007-07-12  Alice Liu  <alice.liu (a] apple.com>
   17016 
   17017         Reviewed by Maciej and Steve.
   17018 
   17019         fixed <rdar://4982432> window.print() needs to be implemented
   17020 
   17021         * bridge/win/FrameWin.cpp:
   17022         (WebCore::Frame::print):
   17023         * page/Chrome.cpp:
   17024         (WebCore::Chrome::print):
   17025         * page/Chrome.h:
   17026         * page/ChromeClient.h:
   17027         * platform/win/TemporaryLinkStubs.cpp:
   17028 
   17029 2007-07-11  Justin Garcia  <justin.garcia (a] apple.com>
   17030 
   17031         Reviewed by Harrison.
   17032         
   17033         <rdar://problem/5300379> Mail hung on option-delete
   17034         
   17035         We were starting backward iteration at [container, 0] and
   17036         emitting for container over and over.
   17037 
   17038         * editing/TextIterator.cpp:
   17039         (WebCore::SimplifiedBackwardsTextIterator::advance): Don't 
   17040         emit characters for a node if we're starting iteration at 
   17041         [container, 0].  Don't emit characters for exiting containers
   17042         if we've already done so.
   17043 
   17044 2007-07-12  Kevin Decker  <kdecker (a] apple.com>
   17045 
   17046         Reviewed by Mark Rowe.
   17047 
   17048         <rdar://problem/5039463> find a good gray that works well for full frame plug-ins; consistent look for plugins
   17049 
   17050         * loader/PluginDocument.cpp:
   17051         (WebCore::PluginTokenizer::createDocumentStructure): Changed values to a darker gray, per request from the HI team.
   17052 
   17053 2007-07-11  Sam Weinig  <sam (a] webkit.org>
   17054 
   17055         Reviewed by Maciej.
   17056 
   17057         Patch for <rdar://problem/5329841>
   17058         Calling window.closed on a closed window causes Safari to crash
   17059 
   17060         - Replaces the Frame member variable in KJS::Window for more appropriate DOMWindow
   17061         - Adds additional new null checks as necessary
   17062         - Removes bogus toBoolean method
   17063         - Removes unused scheduleClose method
   17064 
   17065         Test: fast/dom/Window/window-closed-crash.html
   17066 
   17067         * bindings/js/JSCustomXPathNSResolver.cpp:
   17068         (WebCore::JSCustomXPathNSResolver::create):
   17069         * bindings/js/JSDOMWindowCustom.cpp:
   17070         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   17071         (WebCore::JSDOMWindow::customPut):
   17072         * bindings/js/JSXMLHttpRequest.cpp:
   17073         (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
   17074         * bindings/js/kjs_events.cpp:
   17075         (WebCore::JSAbstractEventListener::handleEvent):
   17076         (WebCore::JSLazyEventListener::parseCode):
   17077         * bindings/js/kjs_window.cpp:
   17078         (KJS::Window::Window):
   17079         (KJS::Window::impl):
   17080         (KJS::Window::interpreter):
   17081         (KJS::Window::location):
   17082         (KJS::Window::find):
   17083         (KJS::allowPopUp):
   17084         (KJS::createWindow):
   17085         (KJS::canShowModalDialog):
   17086         (KJS::canShowModalDialogNow):
   17087         (KJS::showModalDialog):
   17088         (KJS::Window::getValueProperty):
   17089         (KJS::Window::childFrameGetter):
   17090         (KJS::Window::indexGetter):
   17091         (KJS::Window::namedItemGetter):
   17092         (KJS::Window::getOwnPropertySlot):
   17093         (KJS::Window::put):
   17094         (KJS::Window::isSafeScript):
   17095         (KJS::Window::setListener):
   17096         (KJS::Window::getListener):
   17097         (KJS::Window::clear):
   17098         (KJS::WindowFunc::callAsFunction):
   17099         (KJS::Window::updateLayout):
   17100         (KJS::ScheduledAction::execute):
   17101         (KJS::Window::disconnectFrame):
   17102         (KJS::Location::put):
   17103         (KJS::LocationFunc::callAsFunction):
   17104         * bindings/js/kjs_window.h:
   17105         * page/mac/WebCoreFrameBridge.mm:
   17106         (updateRenderingForBindings):
   17107 
   17108 2007-07-12  Mark Rowe  <mrowe (a] apple.com>
   17109 
   17110         Reviewed by Ada.
   17111 
   17112         <rdar://problem/5329877> REGRESSION: Document::setTransformSource leaks an xmlDocPtr if called more than once per document
   17113 
   17114         * dom/Document.cpp:
   17115         (WebCore::Document::setTransformSource): Free any existing m_transformSource before overwriting it, rather than simply leaking it.
   17116         * dom/Document.h:
   17117 
   17118 2007-07-12  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   17119 
   17120         Reviewed by Mark Rowe.
   17121 
   17122         Fix compilation of the CURL backend after the removing of accessors from ResourceHandle in r24202
   17123 
   17124         * platform/network/curl/ResourceHandleManager.cpp:
   17125         (WebCore::ResourceHandleManager::setupPOST):
   17126         (WebCore::ResourceHandleManager::startJob):
   17127 
   17128 2007-07-12  Mark Rowe  <mrowe (a] apple.com>
   17129 
   17130         Reviewed by Darin.
   17131 
   17132         <rdar://problem/5327189> Logic error in DeprecatedString::to{,U}Int{,64} can lead to reading past end of buffer
   17133 
   17134         The fix for reading past the end of the buffer is to verify we are not at the end of the string before checking
   17135         for a leading '+' character.  Rather than fixing the logic error in four nearly-identical functions I chose to
   17136         extract the common functionality into the toIntegralType helper function which the four functions call through to.
   17137 
   17138         * platform/DeprecatedString.cpp:
   17139         (WebCore::isCharacterAllowedInBase):
   17140         (WebCore::toIntegralType):
   17141         (WebCore::DeprecatedString::toInt):
   17142         (WebCore::DeprecatedString::toInt64):
   17143         (WebCore::DeprecatedString::toUInt):
   17144         (WebCore::DeprecatedString::toUInt64):
   17145 
   17146 2007-07-12  George Staikos  <staikos (a] kde.org>
   17147 
   17148         Reviewed by Alexey.
   17149 
   17150         Remove unused variables and fix rendering of comoboxes.
   17151 
   17152         * platform/graphics/qt/ImageQt.cpp:
   17153         (WebCore::BitmapImage::draw):
   17154         * platform/qt/RenderThemeQt.cpp:
   17155         (WebCore::RenderThemeQt::paintMenuList):
   17156 
   17157 2007-07-11  Oliver Hunt  <oliver (a] apple.com>
   17158 
   17159         Reviewed by Maciej
   17160 
   17161         Fix for <rdar://problem/5329712> GMail crash when trying to compose new message
   17162 
   17163         * platform/win/FontDataWin.cpp:
   17164         (WebCore::FontData::containsCharacters):
   17165 
   17166 2007-07-11  Alexey Proskuryakov  <ap (a] webkit.org>
   17167 
   17168         Reviewed by Darin.
   17169 
   17170         http://bugs.webkit.org/show_bug.cgi?id=14584
   17171         XMLHttpRequest treats null login/password incorrectly
   17172 
   17173         Test: http/tests/xmlhttprequest/null-auth.php
   17174 
   17175         * xml/xmlhttprequest.cpp:
   17176         (WebCore::XMLHttpRequest::open):
   17177         * xml/xmlhttprequest.h:
   17178         Split the open() method into three to distinguish between missing and null credentials.
   17179 
   17180         * bindings/js/JSXMLHttpRequest.cpp:
   17181         (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction): Call the appropriate open().
   17182 
   17183 2007-07-11  Oliver Hunt  <oliver (a] apple.com>
   17184 
   17185         Build fix for windows
   17186 
   17187         * page/Frame.cpp:
   17188         (WebCore::Frame::firstRectForRange):
   17189 
   17190 2007-07-11  Oliver Hunt  <oliver (a] apple.com>
   17191 
   17192         Reviewed by Maciej.
   17193 
   17194         Fix <rdar://problem/5329481> Character range rect code for IME support needs to be crossplatform
   17195 
   17196         Move -[WebCoreFrameBridge firstRectForDOMRange:] to Frame::firstRectForRange
   17197 
   17198         * page/Frame.cpp:
   17199         (WebCore::Frame::firstRectForRange):
   17200         * page/Frame.h:
   17201         * page/mac/WebCoreFrameBridge.mm:
   17202         (-[WebCoreFrameBridge firstRectForDOMRange:]):
   17203 
   17204 2007-07-11  Steve Falkenburg  <sfalken (a] apple.com>
   17205 
   17206         Static analysis build fix.
   17207         
   17208         Only specify /analyze (PREfast) if it is available.
   17209         Prevents entire project from rebuilding each time.        
   17210 
   17211         Reviewed by Hyatt.
   17212 
   17213         * WebCore.vcproj/WebCore.vcproj:
   17214 
   17215 2007-07-11  George Staikos  <staikos (a] kde.org>
   17216 
   17217         Reviewed by Olliej.
   17218 
   17219         Make comboboxes update when the current item is changed.
   17220 
   17221         * platform/qt/PopupMenuQt.cpp:
   17222         (WebCore::PopupMenu::updateFromElement):
   17223         * platform/qt/QWebPopup.cpp:
   17224         (WebCore::QWebPopup::activeChanged):
   17225 
   17226 2007-07-11  George Staikos  <staikos (a] kde.org>
   17227 
   17228         Reviewed by Brady.
   17229 
   17230         Add a destructor to cleanup the SQL handle.
   17231 
   17232         * loader/icon/SQLDatabase.h:
   17233         (WebCore::SQLDatabase::~SQLDatabase):
   17234 
   17235 2007-07-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   17236 
   17237         Reviewed by Darin.
   17238 
   17239         As of http://bugs.webkit.org/show_bug.cgi?id=14527 move the
   17240         WebCore/ForwardingHeader/JavaScriptCore to JavaScriptCore
   17241 
   17242         * ForwardingHeaders/JavaScriptCore: Removed.
   17243         * ForwardingHeaders/JavaScriptCore/APICast.h: Removed.
   17244         * ForwardingHeaders/JavaScriptCore/JSBase.h: Removed.
   17245         * ForwardingHeaders/JavaScriptCore/JSContextRef.h: Removed.
   17246         * ForwardingHeaders/JavaScriptCore/JSLock.h: Removed.
   17247         * ForwardingHeaders/JavaScriptCore/JSObjectRef.h: Removed.
   17248         * ForwardingHeaders/JavaScriptCore/JSStringRef.h: Removed.
   17249         * ForwardingHeaders/JavaScriptCore/JSStringRefCF.h: Removed.
   17250         * ForwardingHeaders/JavaScriptCore/JSValueRef.h: Removed.
   17251         * ForwardingHeaders/JavaScriptCore/JavaScriptCore.h: Removed.
   17252 
   17253 2007-07-11  Anders Carlsson  <andersca (a] apple.com>
   17254 
   17255         Fix build.
   17256         
   17257         * platform/network/cf/ResourceHandleCFNet.cpp:
   17258         (WebCore::willSendRequest):
   17259         (WebCore::didReceiveResponse):
   17260         (WebCore::didReceiveData):
   17261         (WebCore::didFinishLoading):
   17262         (WebCore::didFail):
   17263         (WebCore::didReceiveChallenge):
   17264 
   17265 2007-07-11  George Staikos  <staikos (a] kde.org>
   17266 
   17267         Repair the build.
   17268 
   17269         * platform/network/qt/ResourceHandleQt.cpp:
   17270         (WebCore::ResourceHandle::start):
   17271 
   17272 2007-07-11  Adele Peterson  <adele (a] apple.com>
   17273 
   17274         Reviewed by Darin.
   17275 
   17276         Fix for <rdar://problem/5230188> REGRESSION: Active/inactive marked text is not distinguished in textfields and textareas
   17277 
   17278         We were previously trying to leave room for 1px of space between the text and the underline.
   17279         This change removes that requirement so that if we don't have room for the extra space, we still draw the thick underline
   17280         touching the text.
   17281 
   17282         * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paintMarkedTextUnderline):
   17283 
   17284 2007-07-11  Anders Carlsson  <andersca (a] apple.com>
   17285 
   17286         Reviewed by Darin and Geoff.
   17287 
   17288         <rdar://problem/5313508>
   17289         REGRESSION (Leopard): http/tests/xmlhttprequest/basic-auth.html hangs
   17290         
   17291         Leopard Foundation now ignores credentials passed in as part of the URL so we need to pass them ourselves.
   17292         
   17293         For the asynchronous case, we simply keep track of the URL and if it has a user name and password, we
   17294         pass those if we're asked to authenticate.
   17295                 
   17296         For the synchronous case, implement a new connection delegate and run it in a separate mode so 
   17297         no other sources will fire.
   17298 
   17299         * platform/network/mac/ResourceHandleMac.mm:
   17300         (WebCore::ResourceHandle::loadResourceSynchronously):
   17301         (-[WebCoreResourceHandleAsDelegate dealloc]):
   17302         (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
   17303         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
   17304         (-[WebCoreSynchronousLoader _isDone]):
   17305         (-[WebCoreSynchronousLoader dealloc]):
   17306         (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]):
   17307         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]):
   17308         (-[WebCoreSynchronousLoader connection:didReceiveResponse:]):
   17309         (-[WebCoreSynchronousLoader connection:didReceiveData:]):
   17310         (-[WebCoreSynchronousLoader connectionDidFinishLoading:]):
   17311         (-[WebCoreSynchronousLoader connection:didFailWithError:]):
   17312         (-[WebCoreSynchronousLoader _data]):
   17313         (-[WebCoreSynchronousLoader _response]):
   17314         (-[WebCoreSynchronousLoader _error]):
   17315         (+[WebCoreSynchronousLoader loadRequest:returningResponse:error:]):
   17316 
   17317 2007-07-11  Darin Adler  <darin (a] apple.com>
   17318 
   17319         Reviewed by Sam Weinig.
   17320 
   17321         - fix <rdar://problem/5315265> REGRESSION: Leopard launch time -
   17322           there are about 190 stats of icudt36b files during launch
   17323 
   17324         * platform/TextEncodingRegistry.cpp: (WebCore::atomicCanonicalTextEncodingName):
   17325         Add a special case for the empty string so we don't load the extended text
   17326         encodings just so we can return 0 for that case.
   17327 
   17328 2007-07-11  Anders Carlsson  <andersca (a] apple.com>
   17329 
   17330         Reviewed by Darin.
   17331 
   17332         Remove a bunch of unneeded accessors from ResourceHandle.
   17333         
   17334         * loader/icon/IconLoader.cpp:
   17335         (WebCore::IconLoader::didReceiveResponse):
   17336         (WebCore::IconLoader::didFail):
   17337         (WebCore::IconLoader::didFinishLoading):
   17338         * platform/network/ResourceHandle.cpp:
   17339         * platform/network/ResourceHandle.h:
   17340 
   17341 2007-07-09  Justin Garcia  <justin.garcia (a] apple.com>
   17342 
   17343         Reviewed by Darin.
   17344         
   17345         <rdar://problem/5234383> REGRESSION: Sentence breaker method returning entire document length
   17346         
   17347         The functions for moving the caret to the next/previous sentence boundary
   17348         were in many cases moving to the beginning/end of the document.  The functions that 
   17349         should move the caret to an equivalent position in the next/previous sentence behaved
   17350         like the aforementioned functions ought to.  Put the code from the second two functions
   17351         in the first and made sure that the second two are properly FIXMEd.  They're rarely 
   17352         used (filed 5323691).
   17353         
   17354         * editing/SelectionController.cpp:
   17355         (WebCore::SelectionController::modify): Added an option for sentenceBoundary granularity,
   17356         so that we can test the functions that were broken from JS.
   17357         * editing/visible_units.cpp:
   17358         (WebCore::startOfSentence): Removed the FIXME about 5234383.
   17359         (WebCore::endSentenceBoundary): Make this function do what nextSentencePositionBoundary
   17360         current does.
   17361         (WebCore::endOfSentence): Removed the FIXME about 5234383.
   17362         (WebCore::previousSentencePosition): Removed an incorrect FIXME.
   17363         (WebCore::nextSentencePositionBoundary): Tweaked FIXME.  This function is
   17364         identical, not close to endSentenceBoundary.
   17365         (WebCore::nextSentencePosition): Removed an incorrect FIXME.
   17366 
   17367 2007-07-11  Rob Buis  <buis (a] kde.org>
   17368 
   17369         Reviewed by Darin.
   17370 
   17371         http://bugs.webkit.org/show_bug.cgi?id=14453
   17372         REGRESSION: www.nzherald.co.nz almost all the formating is gone
   17373  
   17374         Be less strict for the hex color definition.
   17375 
   17376         * css/CSSGrammar.y:
   17377         * css/cssparser.cpp:
   17378         (WebCore::CSSParser::lex):
   17379         (WebCore::CSSParser::text):
   17380         * css/tokenizer.flex:
   17381 
   17382 2007-07-11  Rob Buis  <buis (a] kde.org>
   17383 
   17384         Reviewed by Oliver.
   17385 
   17386         Forgot to commit this as part of commit r24146. Now we are sure
   17387         createElement creates elements in the xhtml namespace only.
   17388 
   17389         * ksvg2/svg/SVGDocument.cpp:
   17390         * ksvg2/svg/SVGDocument.h:
   17391 
   17392 2007-07-10  Sam Weinig  <sam (a] webkit.org>
   17393 
   17394         Reviewed by Oliver.
   17395 
   17396         Move more attributes from the pure JS bindings in KJS::Window
   17397         to the implementation in DOMWindow and autogenerate the new bindings
   17398 
   17399         Test: fast/dom/Window/get-set-properties.html
   17400 
   17401         * bindings/js/JSDOMWindowCustom.cpp:
   17402         (WebCore::JSDOMWindow::customGetOwnPropertySlot): Change to use propHashTable in
   17403         JSDOMWindow instead of KJS::Window
   17404         * bindings/js/kjs_window.cpp:
   17405         (KJS::Window::getValueProperty):
   17406         (KJS::Window::put):
   17407         * bindings/js/kjs_window.h:
   17408         (KJS::Window::):
   17409         * bindings/scripts/CodeGeneratorJS.pm: Cleanup getValueProperty and put generation
   17410         to reduce code duplication. 
   17411         * page/DOMWindow.cpp:
   17412         (WebCore::DOMWindow::closed):
   17413         (WebCore::DOMWindow::length):
   17414         (WebCore::DOMWindow::name):
   17415         (WebCore::DOMWindow::setName):
   17416         (WebCore::DOMWindow::status):
   17417         (WebCore::DOMWindow::setStatus):
   17418         (WebCore::DOMWindow::defaultStatus):
   17419         (WebCore::DOMWindow::setDefaultStatus):
   17420         * page/DOMWindow.h:
   17421         (WebCore::DOMWindow::defaultstatus):
   17422         (WebCore::DOMWindow::setDefaultstatus):
   17423         * page/DOMWindow.idl:
   17424 
   17425 2007-07-10  Sam Weinig  <sam (a] webkit.org>
   17426 
   17427         Reviewed by Geoff.
   17428 
   17429         Fix for <rdar://problem/5326791> XSS vulnerability: ability to set window.defaultStatus,
   17430         window.defaultstatus and window.status cross domains
   17431 
   17432         Test: http/tests/security/cross-frame-access-put.html
   17433 
   17434         * bindings/js/kjs_window.cpp:
   17435         (KJS::Window::put): Adds isSafeScript check for defaultStatus,
   17436         defaultstatus and status cases.
   17437 
   17438 2007-07-10  Sam Weinig  <sam (a] webkit.org>
   17439 
   17440         Fix build for BuildBot.
   17441 
   17442         * page/DOMWindow.cpp:
   17443         (WebCore::DOMWindow::outerHeight):
   17444         (WebCore::DOMWindow::outerWidth):
   17445         (WebCore::DOMWindow::screenX):
   17446         (WebCore::DOMWindow::screenY):
   17447 
   17448 2007-07-10  Brady Eidson  <beidson (a] apple.com>
   17449 
   17450         Reviewed by Sam
   17451 
   17452         <rdar://problem/5326653> - REGRESSION: [WebBackForwardList forwardListCount] might return incorrect result
   17453 
   17454         No layout test because this is an API issue that can't be tested in DRT or the browser
   17455 
   17456         * history/BackForwardList.cpp:
   17457         (WebCore::BackForwardList::forwardListCount): If the index is NoCurrentItemIndex, return 0
   17458 
   17459 2007-07-10  Sam Weinig  <sam (a] webkit.org>
   17460 
   17461         Reviewed by Darin.
   17462 
   17463         Move more readonly attributes from pure JS bindings in KJS::Window
   17464         to the implementation in DOMWindow and autogenerate the new bindings.
   17465 
   17466         * bindings/js/kjs_window.cpp:
   17467         (KJS::Window::getValueProperty):  Sort the hashmap comment into categories
   17468         to make further migration easier.
   17469         * bindings/js/kjs_window.h: Sort the enum into categories to make further
   17470         migration easier.
   17471         (KJS::Window::):
   17472         * page/DOMWindow.cpp: Add new methods.
   17473         (WebCore::DOMWindow::focus):
   17474         (WebCore::DOMWindow::blur):
   17475         (WebCore::DOMWindow::offscreenBuffering):
   17476         (WebCore::DOMWindow::outerHeight):
   17477         (WebCore::DOMWindow::outerWidth):
   17478         (WebCore::DOMWindow::innerHeight):
   17479         (WebCore::DOMWindow::innerWidth):
   17480         (WebCore::DOMWindow::screenX):
   17481         (WebCore::DOMWindow::screenY):
   17482         (WebCore::DOMWindow::scrollX):
   17483         (WebCore::DOMWindow::scrollY):
   17484         (WebCore::DOMWindow::getComputedStyle):
   17485         (WebCore::DOMWindow::getMatchedCSSRules): Add null Document assertion.
   17486         (WebCore::DOMWindow::devicePixelRatio): Add null Frame and Page checks.
   17487         * page/DOMWindow.h:
   17488         (WebCore::DOMWindow::screenLeft):
   17489         (WebCore::DOMWindow::screenTop):
   17490         (WebCore::DOMWindow::pageXOffset):
   17491         (WebCore::DOMWindow::pageYOffset):
   17492         * page/DOMWindow.idl:
   17493 
   17494 2007-07-10  Oliver Hunt  <oliver (a] apple.com>
   17495 
   17496         Reviewed by Maciej.
   17497 
   17498         Fix for <rdar://problem/5326417> Editor::unmarkText needs to be crossplatform
   17499 
   17500         Missed this in earlier patch to make text marking platform independent.
   17501 
   17502         * editing/Editor.cpp:
   17503         (WebCore::Editor::unmarkText):
   17504            Add platform independent impl
   17505         * editing/mac/EditorMac.mm:
   17506            Remove the old mac path.
   17507 
   17508 2007-07-10  Geoffrey Garen  <ggaren (a] apple.com>
   17509 
   17510         Reviewed by Tim Hatcher.
   17511 
   17512         Added a Page counter. This helped me while investigating 
   17513         <rdar://problem/5314463> 40MB of WebKit memory still allocated after 
   17514         closing large email in Mail
   17515 
   17516         * WebCore.xcodeproj/project.pbxproj:
   17517         * page/Page.cpp:
   17518         (WebCore::):
   17519         (WebCore::PageCounter::~PageCounter):
   17520         (WebCore::Page::Page):
   17521         (WebCore::Page::~Page):
   17522 
   17523 2007-07-10  Timothy Hatcher  <timothy (a] apple.com>
   17524 
   17525         Reviewed by Geoff.
   17526 
   17527         <rdar://problem/5326126> InspectorResource holds onto more data than it needs
   17528 
   17529         Reduces the fixed size of InspectorResource from 630 bytes to 224 bytes. Now
   17530         selectively pick out parts of the ResourceRequest and ResourceResponse objects
   17531         for the info needed and store that directly in InspectorResource.
   17532 
   17533         The ResourceRequest and ResourceResponse objects hold a reference to the original
   17534         NSURL object, so almost double the data was being kept around. So the struct size
   17535         reduction is just the tip of the ice burg on what this really saves.
   17536 
   17537         In a test of 100,000 XMLHTTPRequests using a 85 byte long data URL, I see ~21 MB less
   17538         RSIZE compared to Safari running without this change.
   17539 
   17540         * page/InspectorController.cpp:
   17541         (WebCore::InspectorResource::InspectorResource):
   17542         (WebCore::InspectorResource::type):
   17543         (WebCore::addSourceToFrame):
   17544         (WebCore::scriptObjectForRequest):
   17545         (WebCore::scriptObjectForResponse):
   17546         (WebCore::InspectorController::addScriptResource):
   17547         (WebCore::InspectorController::addAndUpdateScriptResource):
   17548         (WebCore::updateResourceRequest):
   17549         (WebCore::updateResourceResponse):
   17550         (WebCore::InspectorController::updateScriptResourceRequest):
   17551         (WebCore::InspectorController::updateScriptResourceResponse):
   17552         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
   17553         (WebCore::InspectorController::identifierForInitialRequest):
   17554         (WebCore::InspectorController::willSendRequest):
   17555         (WebCore::InspectorController::didReceiveResponse):
   17556         (WebCore::InspectorController::didFailLoading):
   17557         * page/InspectorController.h:
   17558 
   17559 2007-07-10  Darin Adler  <darin (a] apple.com>
   17560 
   17561         Reviewed by Brady.
   17562 
   17563         - fix crash introduced by my patch for 5318732, only seen in release builds
   17564 
   17565         * page/Page.cpp: (WebCore::Page::~Page): Added a missing null check.
   17566 
   17567 2007-07-10  Andrea Cavalli  <amc82 (a] cam.ac.uk>
   17568 
   17569         Reviewed by George Staikos.
   17570 
   17571         Fixed render theme for text field.
   17572 
   17573         * platform/qt/RenderThemeQt.cpp:
   17574         (WebCore::RenderThemeQt::paintTextField):
   17575 
   17576 2007-07-10  Qing Zhao  <qing (a] staikos.net>
   17577 
   17578         Reviewed by George Staikos.
   17579 
   17580         Draw focus rings for nodes that are not rendered by QStyle.
   17581 
   17582         * platform/graphics/qt/GraphicsContextQt.cpp:
   17583         (WebCore::focusRingColor):
   17584         (WebCore::GraphicsContext::drawFocusRing):
   17585         * platform/qt/RenderThemeQt.cpp:
   17586         (WebCore::RenderThemeQt::supportsFocusRing):
   17587         (WebCore::RenderThemeQt::supportsFocus):
   17588 
   17589 2007-07-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   17590 
   17591         Reviewed by Geoff.
   17592 
   17593         Fix 'unsigned int' overflow in CodeGeneratorJS.pm.
   17594         This fixes hashing of "SVG_FEBLEND_MODE_NORMAL". Its hashvalue exceeded 2^32, which
   17595         is no problem in perl but in the cpp code. Emulate C/C++ behaviour by using "% 2^32" in
   17596         the perl code. Testcase available in feature-branch soon (js-svg-constructors.svg).
   17597 
   17598         * bindings/scripts/CodeGeneratorJS.pm:
   17599 
   17600 2007-07-10  Geoffrey Garen  <ggaren (a] apple.com>
   17601 
   17602         Reviewed by Maciej Stachowiak.
   17603 
   17604         Disabled Arena recycling in RenderArena. PLT shows no regression 
   17605         (possibly a small speedup), and this can reduce allocated memory in 
   17606         WebKit clients by about 120K (4K per Arena * 30 Arenas).
   17607         
   17608         I happened upon this optimization while investigating 
   17609         <rdar://problem/5314463> WebKit hangs on to 40MB RAM after closing 
   17610         large email in Mail (appears to be render tree arena allocator), 
   17611         although I don't think it will come close to fixing that bug 
   17612         completely.
   17613 
   17614         * rendering/RenderArena.cpp:
   17615         (WebCore::RenderArena::~RenderArena): Use FinishArenaPool, which frees
   17616         the ArenaPool's Arenas immediately.
   17617 
   17618 2007-07-10  Mitz Pettel  <mitz (a] webkit.org>
   17619 
   17620         Reviewed by Hyatt.
   17621 
   17622         - fix http://bugs.webkit.org/show_bug.cgi?id=14449
   17623           REGRESSION (r14345-r14375): Absolutely positioned image does not scale to containing element's height
   17624 
   17625         Test: fast/replaced/absolute-position-percentage-height.html
   17626 
   17627         * rendering/RenderBox.cpp:
   17628         (WebCore::RenderBox::calcReplacedHeightUsing): For positioned elements, evaluate
   17629         the percentage with respect to the container's final height.
   17630 
   17631 2007-07-10  Brady Eidson  <beidson (a] apple.com>
   17632 
   17633         Reviewed by Mark Rowe
   17634 
   17635         Add 64-bit integer converters to our string classes for future work
   17636 
   17637         * platform/DeprecatedString.cpp:
   17638         (WebCore::DeprecatedString::toInt64):
   17639         (WebCore::DeprecatedString::toUInt64):
   17640         * platform/DeprecatedString.h:
   17641 
   17642         * platform/PlatformString.h:
   17643         * platform/String.cpp:
   17644         (WebCore::String::toInt64):
   17645         (WebCore::String::toUInt64):
   17646 
   17647         * platform/StringImpl.cpp:
   17648         (WebCore::StringImpl::toInt64):
   17649         (WebCore::StringImpl::toUInt64):
   17650         * platform/StringImpl.h:
   17651 
   17652 2007-07-10  Darin Adler  <darin (a] apple.com>
   17653 
   17654         Reviewed by Anders.
   17655 
   17656         - fix <rdar://problem/5318732> REGRESSION: In Mail, a crash occurs when attempting to send
   17657           a HTML based message (nytimes.com, washingtonpost.com, latimes.com)
   17658 
   17659         Did an audit of calls to get the inspector and most other uses of Page* and added null
   17660         checks since Frame* can outlast its Page*.
   17661 
   17662         * loader/FrameLoader.cpp:
   17663         (WebCore::FrameLoader::createWindow): Added null check.
   17664         (WebCore::FrameLoader::loadSubframe): Ditto.
   17665         (WebCore::FrameLoader::load): Ditto.
   17666         (WebCore::FrameLoader::transitionToCommitted): Ditto.
   17667         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Ditto.
   17668         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Ditto.
   17669         (WebCore::FrameLoader::addExtraFieldsToRequest): Ditto.
   17670         (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
   17671         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Ditto.
   17672         (WebCore::FrameLoader::requestFromDelegate): Ditto.
   17673         (WebCore::FrameLoader::canGoBackOrForward): Ditto.
   17674         (WebCore::FrameLoader::getHistoryLength): Ditto.
   17675         (WebCore::FrameLoader::historyURL): Ditto.
   17676         (WebCore::FrameLoader::cachePageForHistoryItem): Ditto.
   17677         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget): Ditto.
   17678         (WebCore::FrameLoader::goToItem): Ditto.
   17679         (WebCore::FrameLoader::dispatchWindowObjectAvailable): Ditto.
   17680         (WebCore::FrameLoader::dispatchDidCommitLoad): Ditto.
   17681         (WebCore::FrameLoader::dispatchAssignIdentifierToInitialRequest): Ditto.
   17682         (WebCore::FrameLoader::dispatchWillSendRequest): Ditto.
   17683         (WebCore::FrameLoader::dispatchDidReceiveResponse): Ditto.
   17684         (WebCore::FrameLoader::dispatchDidReceiveContentLength): Ditto.
   17685         (WebCore::FrameLoader::dispatchDidFinishLoading): Ditto.
   17686         (WebCore::FrameLoader::dispatchDidLoadResourceFromMemoryCache): Ditto.
   17687 
   17688         * page/ContextMenuController.h:
   17689         * page/ContextMenuController.cpp:
   17690         (WebCore::ContextMenuController::ContextMenuController): Removed unneeded and
   17691         unused Page* parameter.
   17692         (WebCore::openNewWindow): Added null check.
   17693         (WebCore::ContextMenuController::contextMenuItemSelected): Ditto.
   17694 
   17695         * page/InspectorController.h:
   17696         (WebCore::InspectorController::pageDestroyed): Added. Since this object is
   17697         owned by the Page and has a back-pointer to it, it needs an explicit disconnect.
   17698         There's already a higher-level one, but this is more reliable than that.
   17699         * page/InspectorController.cpp:
   17700         (WebCore::InspectorController::windowScriptObjectAvailable): Added null check.
   17701         (WebCore::InspectorController::windowUnloading): Ditto.
   17702 
   17703         * page/Page.cpp:
   17704         (WebCore::Page::Page): Updated for change in parameters of ContextMenuController 
   17705         constructor.
   17706         (WebCore::Page::~Page): Added call to InspectorController pageDestroyed().
   17707 
   17708         * page/Chrome.cpp: Updated includes.
   17709         * page/DragController.cpp: Ditto.
   17710 
   17711 2007-07-10  Adam Treat  <adam (a] staikos.net>
   17712 
   17713         Reviewed by George Staikos.
   17714 
   17715         Bring scroll wheel out of Ludicrous Speed.
   17716 
   17717         * platform/qt/WheelEventQt.cpp:
   17718         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   17719 
   17720 2007-07-09  Geoffrey Garen  <ggaren (a] apple.com>
   17721 
   17722         Reviewed by Maciej Stachowiak.
   17723 
   17724         Fixed http://bugs.webkit.org/show_bug.cgi?id=13241 | <rdar://problem/5126396>
   17725         onload fires before content is finished loading (woot.com)
   17726         
   17727         * dom/Document.cpp:
   17728         (WebCore::Document::close): Try to go through the normal "Am I done loading?"
   17729         machinery before dispatching the load event. As the comment indicates, 
   17730         we can't do this in all cases, so the fix isn't perfect. However, a perfect 
   17731         solution would require much riskier sweeping changes to the loader, which 
   17732         are best left for later, I think.
   17733 
   17734         * xml/XSLTProcessor.cpp:
   17735         (WebCore::XSLTProcessor::createDocumentFromSource): Removed a slightly
   17736         worse solution to the same problem.
   17737 
   17738 2007-07-10  Rob Buis  <buis (a] kde.org>
   17739 
   17740         Reviewed by Maciej.
   17741 
   17742         http://bugs.webkit.org/show_bug.cgi?id=8007
   17743         createElement() and XHTML (A dynamically created table not rendered as such)
   17744 
   17745         Follow the HTML5 rules of making the name lowercase and then
   17746         creating the element in the xhtml namespace.
   17747 
   17748         * dom/Document.cpp:
   17749         (WebCore::Document::createElement):
   17750         * dom/Document.h:
   17751         * html/HTMLDocument.cpp:
   17752         * html/HTMLDocument.h:
   17753 
   17754 2007-07-09  Qing Zhao  <qing (a] staikos.net>
   17755 
   17756         Reviewed by George Staikos.
   17757 
   17758         Add qt context menu support.
   17759 
   17760         * WebCore.pro:
   17761         * platform/ContextMenu.h:
   17762         * platform/ContextMenuItem.h:
   17763         (WebCore::PlatformMenuItemDescriptionType::PlatformMenuItemDescriptionType):
   17764         * platform/qt/ContextMenuItemQt.cpp:
   17765         (WebCore::ContextMenuItem::ContextMenuItem):
   17766         (WebCore::ContextMenuItem::~ContextMenuItem):
   17767         (WebCore::ContextMenuItem::releasePlatformDescription):
   17768         (WebCore::ContextMenuItem::type):
   17769         (WebCore::ContextMenuItem::setType):
   17770         (WebCore::ContextMenuItem::action):
   17771         (WebCore::ContextMenuItem::setAction):
   17772         (WebCore::ContextMenuItem::title):
   17773         (WebCore::ContextMenuItem::setTitle):
   17774         (WebCore::ContextMenuItem::platformSubMenu):
   17775         (WebCore::ContextMenuItem::setSubMenu):
   17776         (WebCore::ContextMenuItem::setChecked):
   17777         (WebCore::ContextMenuItem::setEnabled):
   17778         (WebCore::ContextMenuItem::enabled):
   17779         * platform/qt/ContextMenuQt.cpp:
   17780         (WebCore::ContextMenu::ContextMenu):
   17781         (WebCore::ContextMenu::~ContextMenu):
   17782         (WebCore::ContextMenu::appendItem):
   17783         (WebCore::ContextMenu::itemCount):
   17784         (WebCore::ContextMenu::insertItem):
   17785         (WebCore::ContextMenu::setPlatformDescription):
   17786         (WebCore::ContextMenu::platformDescription):
   17787 
   17788 2007-07-09  Anders Carlsson  <andersca (a] apple.com>
   17789 
   17790         Build fix.
   17791         
   17792         * plugins/win/PluginViewWin.cpp:
   17793         (WebCore::PluginViewWin::performRequest):
   17794 
   17795 2007-07-09  Anders Carlsson  <andersca (a] apple.com>
   17796 
   17797         Reviewed by Geoff.
   17798 
   17799         Get rid of the node argument in our various script execution functions.
   17800         
   17801         * bindings/js/kjs_proxy.cpp:
   17802         (WebCore::KJSProxy::evaluate):
   17803         * bindings/js/kjs_proxy.h:
   17804         * bindings/js/kjs_window.cpp:
   17805         (KJS::ScheduledAction::execute):
   17806         * dom/XMLTokenizer.cpp:
   17807         (WebCore::XMLTokenizer::endElementNs):
   17808         (WebCore::XMLTokenizer::notifyFinished):
   17809         * html/HTMLScriptElement.cpp:
   17810         (WebCore::HTMLScriptElement::evaluateScript):
   17811         * html/HTMLTokenizer.cpp:
   17812         (WebCore::HTMLTokenizer::scriptExecution):
   17813         * loader/FrameLoader.cpp:
   17814         (WebCore::FrameLoader::changeLocation):
   17815         (WebCore::FrameLoader::urlSelected):
   17816         (WebCore::FrameLoader::submitForm):
   17817         (WebCore::FrameLoader::replaceContentsWithScriptResult):
   17818         (WebCore::FrameLoader::executeScript):
   17819         * loader/FrameLoader.h:
   17820         * page/mac/WebCoreFrameBridge.mm:
   17821         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
   17822         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
   17823 
   17824 2007-07-09  Justin Garcia  <justin.garcia (a] apple.com>
   17825 
   17826         Rolling the fix for 5290534 back in now that 5310404 has been fixed in Mail.
   17827 
   17828         * editing/DeleteSelectionCommand.cpp:
   17829         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   17830 
   17831 2007-07-09  Geoffrey Garen  <ggaren (a] apple.com>
   17832 
   17833         Reviewed by Anders Carlsson.
   17834 
   17835         A little more FrameLoader cleanup while working on <rdar://problem/5126396>.
   17836         
   17837         Rename: "checkEmitLoadEvent" => "checkCallImplicitClose" because the function
   17838         doesn't emit the load event; it just calls implicitClose.
   17839         
   17840         Rename: "m_wasLoadEventEmitted" => "m_didCallImplicitClose" because the variable
   17841         tracks whether implicitClose was called.
   17842 
   17843         * dom/Document.cpp:
   17844         (WebCore::Document::implicitClose): Turned 12 lines of code into 6, adding ASSERT.
   17845         * loader/FrameLoader.h: Removed bogus declaration of non-existent emitLoadEvent().
   17846 
   17847 2007-07-09  Justin Garcia  <justin.garcia (a] apple.com>
   17848 
   17849         Reviewed by John.
   17850         
   17851         REGRESSION: Crash when deleting table content in Leopard Mail
   17852 
   17853         * editing/DeleteSelectionCommand.cpp:
   17854         (WebCore::DeleteSelectionCommand::handleGeneralDelete): Use a RefPtr
   17855         for the next node to delete, in case it is destroyed when the
   17856         current node is deleted.  In the crash reported in the radar, we
   17857         crash because the next node is the div that holds the delete button
   17858         and it's destroyed when the node that contains the selection is removed.
   17859 
   17860 2007-07-09  Adam Treat  <adam (a] staikos.net>
   17861 
   17862         Reviewed by George Staikos.
   17863 
   17864         Convert QWebFrame from a QFrame to a pure QObject to eliminate all
   17865         traces of widgets.
   17866 
   17867         * page/qt/EventHandlerQt.cpp:
   17868         (WebCore::EventHandler::passSubframeEventToSubframe):
   17869         * platform/ScrollView.h:
   17870         * platform/Widget.h:
   17871         * platform/qt/PlatformScrollBarQt.cpp:
   17872         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   17873         (WebCore::PlatformScrollbar::handleMousePressEvent):
   17874         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   17875         * platform/qt/PopupMenuQt.cpp:
   17876         (WebCore::PopupMenu::show):
   17877         * platform/qt/ScrollViewQt.cpp:
   17878         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   17879         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   17880         (WebCore::ScrollView::ScrollViewPrivate::windowClipRect):
   17881         (WebCore::ScrollView::updateContents):
   17882         (WebCore::ScrollView::update):
   17883         (WebCore::ScrollView::geometryChanged):
   17884         (WebCore::ScrollView::windowToContents):
   17885         (WebCore::ScrollView::contentsToWindow):
   17886         (WebCore::ScrollView::convertChildToSelf):
   17887         (WebCore::ScrollView::convertSelfToChild):
   17888         (WebCore::ScrollView::scrollbarUnderMouse):
   17889         (WebCore::ScrollView::addChild):
   17890         (WebCore::ScrollView::paint):
   17891         * platform/qt/WidgetQt.cpp:
   17892         (WebCore::WidgetPrivate::WidgetPrivate):
   17893         (WebCore::WidgetPrivate::~WidgetPrivate):
   17894         (WebCore::WidgetPrivate::setGeometry):
   17895         (WebCore::WidgetPrivate::geometry):
   17896         (WebCore::Widget::frameGeometry):
   17897         (WebCore::Widget::setFocus):
   17898         (WebCore::Widget::setCursor):
   17899         (WebCore::Widget::show):
   17900         (WebCore::Widget::hide):
   17901         (WebCore::Widget::qwebframe):
   17902         (WebCore::Widget::setQWebFrame):
   17903         (WebCore::Widget::qwidget):
   17904         (WebCore::Widget::setQWidget):
   17905         (WebCore::Widget::setFrameGeometry):
   17906         (WebCore::Widget::isEnabled):
   17907         (WebCore::Widget::setEnabled):
   17908         (WebCore::Widget::setIsSelected):
   17909         (WebCore::Widget::invalidate):
   17910         (WebCore::Widget::invalidateRect):
   17911         (WebCore::Widget::removeFromParent):
   17912         (WebCore::Widget::geometryChanged):
   17913         (WebCore::Widget::convertToContainingWindow):
   17914         (WebCore::Widget::convertFromContainingWindow):
   17915         (WebCore::Widget::convertChildToSelf):
   17916         (WebCore::Widget::convertSelfToChild):
   17917         (WebCore::Widget::containingWindow):
   17918 
   17919 2007-07-09  Anders Carlsson  <andersca (a] apple.com>
   17920 
   17921         Reviewed by Oliver.
   17922 
   17923         Add DocumentLoader::isLoadingMainResource.
   17924 
   17925         * WebCore.exp:
   17926 
   17927 2007-07-09  John Sullivan  <sullivan (a] apple.com>
   17928 
   17929         Reviewed by Darin
   17930 
   17931         * WebCore.exp:
   17932         * WebCore.xcodeproj/project.pbxproj:
   17933         exported String::createCFString, needed for <rdar://problem/5320208>
   17934 
   17935 2007-07-09  Mitz Pettel  <mitz (a] webkit.org>
   17936 
   17937         Reviewed by Maciej.
   17938 
   17939         Test case for the bug below, which is http://bugs.webkit.org/show_bug.cgi?id=14207
   17940 
   17941         * manual-tests/flash-unload-tab.html: Added.
   17942 
   17943 2007-07-09  Maciej Stachowiak  <mjs (a] apple.com>
   17944 
   17945         Reviewed by Oliver.
   17946 
   17947         <rdar://problem/5295734> Repro crash closing tab/window @ maps.google.com in
   17948         WTF::HashSet<KJS::RuntimeObjectImp*, WTF::PtrHash<KJS::RuntimeObjectImp*>,
   17949         WTF::HashTraits<KJS::RuntimeObjectImp*> >::add + 11
   17950         
   17951         Automated test case is not possible. Did not bother with manual test this time.
   17952 
   17953         * bindings/js/kjs_dom.cpp:
   17954         (WebCore::getRuntimeObject): Check that runtime root isn't null, as well as instance;
   17955         this should cover the case where the plugin is already shut down and onunload time.
   17956 
   17957 2007-07-08  Maciej Stachowiak  <mjs (a] apple.com>
   17958 
   17959         Reviewed by Sam.
   17960 
   17961         - fixed <rdar://problem/5220706> REGRESSION (TOT): repro crash in -[WebView(WebViewInternal) _addObject:forIdentifier:] [14425]
   17962         http://bugs.webkit.org/show_bug.cgi?id=14425
   17963 
   17964         * bindings/js/kjs_window.cpp:
   17965         (KJS::createWindow): No longer take an immediate argument - always do immediate loads
   17966         on a newly created Window. Also, do a load of "" to make sure that the right info makes
   17967         it to the app.
   17968         (KJS::showModalDialog): Updated for above.
   17969         (KJS::WindowFunc::callAsFunction): Updated for above.
   17970         * dom/Document.cpp:
   17971         (WebCore::Document::shouldBeAllowedToLoadLocalResources): If our URL is about:blank,
   17972         we're allowed if our opener is (since the opener must have written the contents).
   17973         * loader/FrameLoader.cpp:
   17974         (WebCore::FrameLoader::changeLocation): Add a variant which takes a KURL, which it
   17975         expects to be pre-completed. This is to avoid completing "" to the opener URL.
   17976         (WebCore::FrameLoader::urlSelected): Allow loading empty URLs.
   17977         * loader/FrameLoader.h:
   17978         
   17979         Test case is manual only, since it takes particular app behavior to reproduce:
   17980         
   17981         * manual-tests/new-window-subresource-crash.html: Added.
   17982 
   17983 2007-07-08  Mitz Pettel  <mitz (a] webkit.org>
   17984 
   17985         Reviewed by Maciej.
   17986 
   17987         - fix leaks introduced in r24099
   17988 
   17989         * dom/Element.cpp:
   17990         (WebCore::Element::~Element): Do not delete the cached computed style here.
   17991         (WebCore::Element::detach): Delete the computed style here instead.
   17992         (WebCore::Element::computedStyle): Removed a redundant ref() which was
   17993         causing the leak. Changed to return 0 if the element is not attached,
   17994         because in that case there is currently no way to tell when to delete the computed
   17995         style.
   17996 
   17997 2007-07-08  Mitz Pettel  <mitz (a] webkit.org>
   17998 
   17999         Reviewed by Darin.
   18000 
   18001         - fix http://bugs.webkit.org/show_bug.cgi?id=12384
   18002           getComputedStyle with td.style.display='none' reports '' for all properties except display
   18003 
   18004         Test: fast/css/computed-style-without-renderer.html
   18005 
   18006         Implement rich computed style for elements that do not have a renderer.
   18007 
   18008         * css/CSSComputedStyleDeclaration.cpp:
   18009         (WebCore::getPositionOffsetValue): Changed to take a RenderStyle instead of
   18010         a RenderObject.
   18011         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed to
   18012         use the computed style returned by the node instead of going through the
   18013         renderer. Changed properties that compute by measuring the renderer to
   18014         fall back on returning the length from the RenderStyle if a renderer does
   18015         not exist.
   18016         (WebCore::CSSComputedStyleDeclaration::length): Changed to return the number
   18017         of properties we can compute even if the element has no renderer.
   18018         (WebCore::CSSComputedStyleDeclaration::copyInheritableProperties): Changed
   18019         to use the computed style returned by the node instead of going through the
   18020         renderer.
   18021         * dom/Element.cpp:
   18022         (WebCore::ElementRareData::ElementRareData): Added a computed style member,
   18023         used to cache computed style for elements that do not have a renderer.
   18024         (WebCore::ElementRareData::resetComputedStyle): Added.
   18025         (WebCore::Element::~Element): Delete the cached computed style.
   18026         (WebCore::Element::recalcStyle): Added code to delete the cached computed
   18027         style when necessary.
   18028         (WebCore::Element::computedStyle): Added. Returns the style used in rendering
   18029         the element, if available. Otherwise uses the style selector to compute style
   18030         for the element.
   18031         * dom/Element.h:
   18032         * dom/Node.cpp:
   18033         (WebCore::Node::computedStyle): Added. This method returns either the style
   18034         used in rendering the node, or the style that would be used if the node
   18035         had a renderer.
   18036         * dom/Node.h:
   18037 
   18038 2007-07-08  Mitz Pettel  <mitz (a] webkit.org>
   18039 
   18040         Reviewed by Darin.
   18041 
   18042         - fix http://bugs.webkit.org/show_bug.cgi?id=14544
   18043           Scroll wheel events are ignored when the cursor is over an iframe's border
   18044 
   18045         * page/mac/EventHandlerMac.mm:
   18046         (WebCore::EventHandler::passWheelEventToWidget): Changed to return false if
   18047         the event coordinates are not inside the widget's NSView hierarchy.
   18048 
   18049 2007-07-08  Rob Buis  <buis (a] kde.org>
   18050 
   18051         Reviewed by Mitz.
   18052 
   18053         http://bugs.webkit.org/show_bug.cgi?id=10752
   18054         The inspector should not respond to Make Text Smaller/Bigger commands
   18055 
   18056         Use the -webkit-text-size-adjust property to ignore text sizing        
   18057         and do not take the zoom factor into account for line height when
   18058         -webkit-text-size-adjust is set to none.
   18059 
   18060         * css/cssstyleselector.cpp:
   18061         (WebCore::CSSStyleSelector::applyProperty):
   18062         * page/inspector/inspector.css:
   18063 
   18064 2007-07-08  Darin Adler  <darin (a] apple.com>
   18065 
   18066         Reviewed by Maciej.
   18067 
   18068         - fix <rdar://problem/5318994> Integer overflow in WebCore's Base64.cpp:base64Encode
   18069 
   18070         * platform/Base64.cpp:
   18071         (WebCore::base64Encode): Check against a maximum size.
   18072         (WebCore::base64Decode): Ditto.
   18073 
   18074 2007-07-08  Darin Adler  <darin (a] apple.com>
   18075 
   18076         Reviewed by Maciej.
   18077 
   18078         - fix <rdar://problem/5124665> WebCore secondary-thread assertion should use linked-on-or-after check instead of building on Tiger check
   18079 
   18080         * platform/ThreadCheck.h: Renamed _WebCoreThreadViolationCheck to reportThreadViolation
   18081         since it's in the WebCore namespace and also we shouldn't use leading underscores since
   18082         those are reserved for the compiler and standard library. Added a new function named
   18083         setDefaultThreadViolationBehavior and an enum for the parameter. Removed the
   18084         threadViolationIsException parameter from WebCoreReportThreadViolation since we use
   18085         a global variable for it now. Got rid of the unnecessary use of do while (0) in the
   18086         WebCoreThreadViolationCheck macro -- since it's only a single function call it's already
   18087         a statement and doesn't need to be turned into one with the do while (0) trick.
   18088 
   18089         * platform/mac/ThreadCheck.mm:
   18090         (WebCore::readThreadViolationBehaviorFromUserDefaults): Moved the code to read from
   18091         NSUserDefaults into this helper function. Changed it to use stringForKey instead of
   18092         objectForKey so we don't get a "method not found" if someone puts something other than
   18093         a string in there. Updated to use the new globals.
   18094         (WebCore::setDefaultThreadViolationBehavior): Added.
   18095         (WebCore::reportThreadViolation): Simplified, now that most of the work is in the
   18096         readThreadViolationBehaviorFromUserDefaults function.
   18097         (WebCoreReportThreadViolation): Changed to use a global variable instead of parameter
   18098         to determine how to report a violation. Added LogOnFirstThreadViolation, which will
   18099         log only once for each function that violates.
   18100 
   18101         * WebCore.exp: Updated for above changes.
   18102 
   18103 2007-07-08  Mitz Pettel  <mitz (a] webkit.org>
   18104 
   18105         Reviewed by Darin.
   18106 
   18107         - fix http://bugs.webkit.org/show_bug.cgi?id=14221
   18108           Repro crash (ASSERTION FAILED: oldText in RenderBlock::updateFirstLetter() during relayout of :before content with first-letter style)
   18109 
   18110         Test: fast/css-generated-content/before-with-first-letter.html
   18111 
   18112         * rendering/RenderContainer.cpp:
   18113         (WebCore::RenderContainer::updateBeforeAfterContentForContainer): If a child
   18114         of the existing 'before' container is not text, do not assume that it is an
   18115         image, since it can also be an inline wrapping a first-letter. In that case,
   18116         do not update its style (so in particular, keep it a FIRST_LETTER type style)
   18117         and leave it to updateFirstLetter() to take care of.
   18118 
   18119 2007-07-07  Sam Weinig  <sam (a] webkit.org>
   18120 
   18121         Reviewed by Oliver Hunt.
   18122 
   18123         Bailout early in Window::put() if attribute is readonly to avoid
   18124         extra calls to isSafeScript().
   18125 
   18126         * bindings/js/kjs_window.cpp:
   18127         (KJS::Window::put):
   18128 
   18129 2007-07-07  Darin Adler  <darin (a] apple.com>
   18130 
   18131         Reviewed by Oliver Hunt.
   18132 
   18133         - fix <rdar://problem/5292364> REGRESSION: ZX Spectrum 3.0 widget - graphic anomalies in widget window frame
   18134 
   18135         Updated Dashboard quirk so it affects fill, stroke, and clip, rather than just stroke.
   18136 
   18137         Test: fast/canvas/fill-stroke-clip-reset-path.html
   18138 
   18139         * html/CanvasRenderingContext2D.h: Added clearPathForDashboardBackwardCompatibilityMode.
   18140         * html/CanvasRenderingContext2D.cpp:
   18141         (WebCore::CanvasRenderingContext2D::clearPathForDashboardBackwardCompatibilityMode): Added.
   18142         (WebCore::CanvasRenderingContext2D::fill): Call the new function.
   18143         (WebCore::CanvasRenderingContext2D::stroke): Replaced in-line code with a call to the new function.
   18144         (WebCore::CanvasRenderingContext2D::clip): Call the new function.
   18145 
   18146 2007-07-07  Rob Buis  <buis (a] kde.org>
   18147 
   18148         Reviewed and tweaked by Darin.
   18149 
   18150         http://bugs.webkit.org/show_bug.cgi?id=8994
   18151         Canvas doesn't reset on resize
   18152 
   18153         Also reset the rendering context when resetting the canvas.
   18154 
   18155         * html/HTMLCanvasElement.cpp:
   18156         (WebCore::HTMLCanvasElement::reset):
   18157         (WebCore::HTMLCanvasElement::drawingContext):
   18158 
   18159 2007-07-07  Alexey Proskuryakov  <ap (a] webkit.org>
   18160 
   18161         Reviewed by Maciej.
   18162 
   18163         http://bugs.webkit.org/show_bug.cgi?id=14525
   18164         Support exslt:node-set()
   18165 
   18166         Test: fast/xsl/exslt-node-set.xml
   18167 
   18168         * xml/XSLTExtensions.cpp: Added.
   18169         (WebCore::exsltNodeSetFunction): A copy of exslt:node-set() implementation
   18170         from libexslt 1.1.11 (shipped with Tiger).
   18171         (WebCore::registerXSLTExtensions): This function registers any WebCore-provided
   18172         extensions on a context. Currently, the only extension is exslt:node-set().
   18173         * xml/XSLTExtensions.h: Added.
   18174 
   18175         * xml/XSLTProcessor.cpp:
   18176         (WebCore::XSLTProcessor::transformToString):
   18177         Register extensions when creating a context.
   18178 
   18179         * WebCore.pro:
   18180         * WebCore.vcproj/WebCore.vcproj:
   18181         * WebCore.xcodeproj/project.pbxproj:
   18182         * WebCoreSources.bkl:
   18183         Add XSLTExtensions.{h,cpp} to projects.
   18184 
   18185 2007-07-06  Maciej Stachowiak  <mjs (a] apple.com>
   18186 
   18187         Reviewed by Oliver.
   18188 
   18189         - fixed <rdar://problem/5133420> ASSERT in WebDocumentLoaderMac::decreaseLoadCount() un-discarding Gmail message
   18190         
   18191         test case: fast/loader/early-load-cancel.html
   18192 
   18193         * loader/ResourceLoader.cpp:
   18194         (WebCore::ResourceLoader::didCancel): Don't send cancel-related client callbacks
   18195         if we never even sent willSendRequest because we were deferred.
   18196 
   18197 2007-07-06  Oliver Hunt  <oliver (a] apple.com>
   18198 
   18199         Reviewed by Maciej.
   18200 
   18201         Pulled a number of methods from WebKit and WebCoreFrameBridge into 
   18202         C++ objects.
   18203 
   18204         * WebCore.exp:
   18205         * WebCore.xcodeproj/project.pbxproj:
   18206         * editing/Editor.cpp:
   18207         (WebCore::Editor::replaceMarkedText):
   18208             From -[WebCoreFrameBridge replaceMarkedTextWithText:]
   18209         * editing/Editor.h:
   18210         * page/Frame.cpp:
   18211         (WebCore::Frame::setMarkedTextRange):
   18212             Pulled platform independent logic from Mac specific implementation
   18213         (WebCore::Frame::selectRangeInMarkedText):
   18214             Converted from -[WebHTMLView _selectRangeInMarkedText:]
   18215         * page/Frame.h:
   18216         * page/mac/FrameMac.mm:
   18217         (WebCore::Frame::setMarkedTextRange):
   18218             Now only does Mac specific logic when manipulating initial
   18219             NSAttributedString
   18220         * page/mac/WebCoreFrameBridge.h:
   18221         * page/mac/WebCoreFrameBridge.mm:
   18222             Removed -[WebCoreFrameBridge replaceMarkedTextWithText:]
   18223 
   18224 2007-07-06  Mitz Pettel  <mitz (a] webkit.org>
   18225 
   18226         Reviewed by Darin.
   18227 
   18228         - fix http://bugs.webkit.org/show_bug.cgi?id=14545
   18229           REGRESSION (r21854-r21869): Repro crash in RenderBlock::updateFirstLetter @ nola.com/rose/
   18230 
   18231         Test: fast/css/first-letter-capitalized.html
   18232 
   18233         * rendering/RenderBlock.cpp:
   18234         (WebCore::RenderBlock::updateFirstLetter): Moved the call to setFirstLetter
   18235         further down so that the first letter is not destroyed if a text transform
   18236         is applied to the remaining text fragment when it is add to the render tree.
   18237         * rendering/RenderText.cpp:
   18238         (WebCore::RenderText::previousCharacter): Factored out of setTextInternal.
   18239         (WebCore::RenderText::setTextInternal): Changed to call previousCharacter().
   18240         * rendering/RenderText.h:
   18241         * rendering/RenderTextFragment.cpp:
   18242         (WebCore::RenderTextFragment::previousCharacter): Override to return the
   18243         character in the original string before the start of the fragment. 
   18244         * rendering/RenderTextFragment.h:
   18245 
   18246 2007-07-06  Mitz Pettel  <mitz (a] webkit.org>
   18247 
   18248         Reviewed by Beth.
   18249 
   18250         - fix http://bugs.webkit.org/show_bug.cgi?id=14536
   18251           Unnecessary layout done when mousing down in text field
   18252 
   18253         No test possible because there is no change in functionality.
   18254 
   18255         * rendering/RenderTextControl.cpp:
   18256         (WebCore::RenderTextControl::setStyle): Reset the height and the width in
   18257         the old style to avoid getting a layout hint as a result of having mutated
   18258         the old style during layout.
   18259         (WebCore::RenderTextControl::layout): Update children's layout if an inner
   18260         block's dimensions should change. This need for layout was previously masked
   18261         by the bug.
   18262 
   18263 2007-07-06  Brady Eidson  <beidson (a] apple.com>
   18264 
   18265         Fix builds that use IconDatabaseNone.cpp - better, this time
   18266 
   18267         * loader/icon/IconDatabaseNone.cpp:
   18268         (WebCore::IconDatabase::isOpen):
   18269 
   18270 2007-07-06  Brady Eidson  <beidson (a] apple.com>
   18271 
   18272         Fix builds that use IconDatabaseNone.cpp
   18273 
   18274         * loader/icon/IconDatabaseNone.cpp:
   18275         (WebCore::IconDatabase::databasePath): 
   18276 
   18277 2007-07-06  John Sullivan  <sullivan (a] apple.com>
   18278 
   18279         Reviewed by Brady
   18280         
   18281         - WebCore part of fix for: 
   18282           <rdar://problem/5310739> Time Machine shouldn't back up WebKit's icon database files
   18283         
   18284         * loader/icon/IconDatabase.h:
   18285         * loader/icon/IconDatabase.cpp:
   18286         (WebCore::IconDatabase::isOpen): 
   18287         made this method const (necessary to make IconDatabase::databasePath const)
   18288         (WebCore::IconDatabase::databasePath): 
   18289         new method, returns SQLDatabase's path if open, otherwise empty string
   18290         
   18291         * loader/icon/SQLDatabase.cpp:
   18292         (WebCore::SQLDatabase::open):
   18293         don't append a null character to the m_path ivar. The appended null character was making the path()
   18294         method return a String with a trailing null, which is bad. However, there were no callers to the
   18295         path() method until now. Instead of appending a null character to the ivar, use charactersWithNullTermination()
   18296         instead of characters() when opening the database.
   18297         
   18298         * loader/icon/SQLDatabase.h:
   18299         (WebCore::SQLDatabase::isOpen):
   18300         made this method const (necessary to make IconDatabase::databasePath const)
   18301         (WebCore::SQLDatabase::path):
   18302         made this method const (not required for these changes, but seemed worth doing at the same time)
   18303 
   18304         * WebCore.exp:
   18305         added symbol for IconDatabase::databasePath
   18306 
   18307 2007-07-06  George Staikos  <staikos (a] kde.org>
   18308 
   18309         No real functional change - just move the localizations out and
   18310         stick some placeholder text in.
   18311 
   18312         * platform/qt/Localizations.cpp: Added.
   18313         (WebCore::submitButtonDefaultLabel):
   18314         (WebCore::inputElementAltText):
   18315         (WebCore::resetButtonDefaultLabel):
   18316         (WebCore::defaultLanguage):
   18317         (WebCore::searchableIndexIntroduction):
   18318         (WebCore::fileButtonChooseFileLabel):
   18319         (WebCore::fileButtonNoFileSelectedLabel):
   18320         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   18321         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   18322         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   18323         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   18324         (WebCore::contextMenuItemTagDownloadImageToDisk):
   18325         (WebCore::contextMenuItemTagCopyImageToClipboard):
   18326         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   18327         (WebCore::contextMenuItemTagCopy):
   18328         (WebCore::contextMenuItemTagGoBack):
   18329         (WebCore::contextMenuItemTagGoForward):
   18330         (WebCore::contextMenuItemTagStop):
   18331         (WebCore::contextMenuItemTagReload):
   18332         (WebCore::contextMenuItemTagCut):
   18333         (WebCore::contextMenuItemTagPaste):
   18334         (WebCore::contextMenuItemTagNoGuessesFound):
   18335         (WebCore::contextMenuItemTagIgnoreSpelling):
   18336         (WebCore::contextMenuItemTagLearnSpelling):
   18337         (WebCore::contextMenuItemTagSearchWeb):
   18338         (WebCore::contextMenuItemTagLookUpInDictionary):
   18339         (WebCore::contextMenuItemTagOpenLink):
   18340         (WebCore::contextMenuItemTagIgnoreGrammar):
   18341         (WebCore::contextMenuItemTagSpellingMenu):
   18342         (WebCore::contextMenuItemTagShowSpellingPanel):
   18343         (WebCore::contextMenuItemTagCheckSpelling):
   18344         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   18345         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   18346         (WebCore::contextMenuItemTagFontMenu):
   18347         (WebCore::contextMenuItemTagBold):
   18348         (WebCore::contextMenuItemTagItalic):
   18349         (WebCore::contextMenuItemTagUnderline):
   18350         (WebCore::contextMenuItemTagOutline):
   18351         (WebCore::contextMenuItemTagWritingDirectionMenu):
   18352         (WebCore::contextMenuItemTagDefaultDirection):
   18353         (WebCore::contextMenuItemTagLeftToRight):
   18354         (WebCore::contextMenuItemTagRightToLeft):
   18355         (WebCore::contextMenuItemTagInspectElement):
   18356         (WebCore::searchMenuNoRecentSearchesText):
   18357         (WebCore::searchMenuRecentSearchesText):
   18358         (WebCore::searchMenuClearRecentSearchesText):
   18359         (WebCore::AXWebAreaText):
   18360         (WebCore::AXLinkText):
   18361         (WebCore::AXListMarkerText):
   18362         (WebCore::AXImageMapText):
   18363         (WebCore::AXHeadingText):
   18364         * platform/qt/TemporaryLinkStubs.cpp:
   18365 
   18366 2007-07-06  Geoffrey Garen  <ggaren (a] apple.com>
   18367 
   18368         Reviewed by Anders Carlsson.
   18369 
   18370         A little more FrameLoader cleanup while working on <rdar://problem/5126396>.
   18371         
   18372         Moved url() and URL() methods next to each other to highlight their subtlety.
   18373 
   18374         * loader/FrameLoader.cpp:
   18375         (WebCore::FrameLoader::url):
   18376         * loader/FrameLoader.h:
   18377 
   18378 2007-07-06  Geoffrey Garen  <ggaren (a] apple.com>
   18379 
   18380         Reviewed by Anders Carlsson.
   18381 
   18382         A little FrameLoader cleanup while working on <rdar://problem/5126396>.
   18383         
   18384         Renamed endIfNotLoading() to endIfNotLoadingMainResource() because "loading"
   18385         and "loadingMainResource" have distinct meanings and this function
   18386         honors the latter.
   18387 
   18388         (WebCore::FrameLoader::endIfNotLoadingMainResource): Protect after the
   18389         early return to avoid ref count churn.
   18390         * loader/FrameLoader.h:
   18391         (WebCore::FrameLoader::isLoadingMainResource): Inlined this function.
   18392 
   18393 2007-07-06  Adam Treat  <adam (a] staikos.net>
   18394 
   18395         Reviewed by George Staikos.
   18396 
   18397         Convert QWebFrame to a QFrame from a scroll area.
   18398 
   18399         * page/qt/EventHandlerQt.cpp:
   18400         (WebCore::EventHandler::passSubframeEventToSubframe):
   18401         (WebCore::EventHandler::passWheelEventToWidget):
   18402         (WebCore::EventHandler::createDraggingClipboard):
   18403         (WebCore::EventHandler::passMousePressEventToScrollbar):
   18404         * platform/ScrollView.h:
   18405         * platform/Widget.h:
   18406         * platform/qt/PlatformScrollBar.h:
   18407         * platform/qt/PlatformScrollBarQt.cpp:
   18408         (WebCore::PlatformScrollbar::setRect):
   18409         (WebCore::PlatformScrollbar::frameGeometry):
   18410         (WebCore::PlatformScrollbar::setFrameGeometry):
   18411         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   18412         (WebCore::PlatformScrollbar::handleMousePressEvent):
   18413         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   18414         * platform/qt/ScrollViewQt.cpp:
   18415         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   18416         (WebCore::ScrollView::ScrollViewPrivate::~ScrollViewPrivate):
   18417         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   18418         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   18419         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   18420         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   18421         (WebCore::ScrollView::ScrollViewPrivate::windowClipRect):
   18422         (WebCore::ScrollView::ScrollView):
   18423         (WebCore::ScrollView::~ScrollView):
   18424         (WebCore::ScrollView::setScrollArea):
   18425         (WebCore::ScrollView::horizontalScrollBar):
   18426         (WebCore::ScrollView::verticalScrollBar):
   18427         (WebCore::ScrollView::updateContents):
   18428         (WebCore::ScrollView::update):
   18429         (WebCore::ScrollView::visibleWidth):
   18430         (WebCore::ScrollView::visibleHeight):
   18431         (WebCore::ScrollView::visibleContentRect):
   18432         (WebCore::ScrollView::setContentsPos):
   18433         (WebCore::ScrollView::resizeContents):
   18434         (WebCore::ScrollView::setFrameGeometry):
   18435         (WebCore::ScrollView::geometryChanged):
   18436         (WebCore::ScrollView::contentsX):
   18437         (WebCore::ScrollView::contentsY):
   18438         (WebCore::ScrollView::contentsWidth):
   18439         (WebCore::ScrollView::contentsHeight):
   18440         (WebCore::ScrollView::windowToContents):
   18441         (WebCore::ScrollView::contentsToWindow):
   18442         (WebCore::ScrollView::scrollOffset):
   18443         (WebCore::ScrollView::maximumScroll):
   18444         (WebCore::ScrollView::scrollBy):
   18445         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   18446         (WebCore::ScrollView::hScrollbarMode):
   18447         (WebCore::ScrollView::vScrollbarMode):
   18448         (WebCore::ScrollView::suppressScrollbars):
   18449         (WebCore::ScrollView::setHScrollbarMode):
   18450         (WebCore::ScrollView::setVScrollbarMode):
   18451         (WebCore::ScrollView::setScrollbarsMode):
   18452         (WebCore::ScrollView::setStaticBackground):
   18453         (WebCore::ScrollView::inWindow):
   18454         (WebCore::ScrollView::updateScrollbars):
   18455         (WebCore::ScrollView::scrollbarUnderMouse):
   18456         (WebCore::ScrollView::addChild):
   18457         (WebCore::ScrollView::removeChild):
   18458         (WebCore::ScrollView::paint):
   18459         (WebCore::ScrollView::wheelEvent):
   18460         (WebCore::ScrollView::scroll):
   18461         (WebCore::ScrollView::windowResizerRect):
   18462         (WebCore::ScrollView::resizerOverlapsContent):
   18463         (WebCore::ScrollView::adjustOverlappingScrollbarCount):
   18464         (WebCore::ScrollView::setParent):
   18465         (WebCore::ScrollView::addToDirtyRegion):
   18466         (WebCore::ScrollView::scrollBackingStore):
   18467         (WebCore::ScrollView::updateBackingStore):
   18468         * platform/qt/WidgetQt.cpp:
   18469         (WebCore::WidgetPrivate::canvas):
   18470         (WebCore::WidgetPrivate::setGeometry):
   18471         (WebCore::WidgetPrivate::geometry):
   18472         (WebCore::Widget::setQWidget):
   18473         (WebCore::Widget::paint):
   18474         (WebCore::Widget::originalGeometry):
   18475         (WebCore::Widget::geometryChanged):
   18476 
   18477 2007-07-06  Anders Carlsson  <andersca (a] apple.com>
   18478 
   18479         Reviewed by Mitz.
   18480 
   18481         <rdar://problem/5280532> 
   18482         REGRESSION: Can't access nested embed by document.name if object is not immediate parent
   18483         
   18484         Traverse up the tree looking for an object element.
   18485         
   18486         * html/HTMLEmbedElement.cpp:
   18487         (WebCore::HTMLEmbedElement::getInstance):
   18488 
   18489 2007-07-06  George Staikos  <staikos (a] kde.org>
   18490 
   18491         Qt build fix: Don't clobber qmake variables that are already set.
   18492 
   18493         * WebCore.pro:
   18494 
   18495 2007-07-05  Maciej Stachowiak  <mjs (a] apple.com>
   18496 
   18497         Reviewed by Antti.
   18498 
   18499         - <rdar://problem/5311093> JavaScriptCore fails to build with strict-aliasing warnings
   18500 
   18501         * platform/StringHash.h:
   18502         (WTF::): Adapt to newer way to do storage types.
   18503 
   18504 2007-07-06  Bernhard Rosenkraenzer  <bero (a] arklinux.org>
   18505 
   18506         Reviewed by Sam.
   18507 
   18508         Fix for http://bugs.webkit.org/show_bug.cgi?id=13985
   18509         Bug 13985: WebCore/rendering/RenderTable.cpp fails to compile with gcc 4.2.x
   18510 
   18511         * rendering/RenderTable.cpp:
   18512         (WebKit::RenderTable::calcBorderLeft)
   18513         (WebKit::RenderTable::calcBorderRight)
   18514 
   18515 2007-07-06  Maxime Britto  <mbritto (a] pleyo.com>
   18516 
   18517         Reviewed by Maciej.
   18518 
   18519         Fix http://bugs.webkit.org/show_bug.cgi?id=13038
   18520         Bug 13038: ASSERTION FAILED: item->target().isEmpty() || m_mainFrame->tree()->find(item->target()) == m_mainFrame
   18521 
   18522         Modify an ASSERT in goToItem related to going back/forward in history.  We don't need to check the frameset if the target is _blank.
   18523         The attached test case is a manual one since it relies on having pages opened in tabs in Safari.
   18524 
   18525         * manual-tests/goBack-blank-tab-page.html: Added.
   18526         * manual-tests/resources/before-go-back.html: Added.
   18527         * manual-tests/resources/will-go-back.html: Added.
   18528         * page/Page.cpp:
   18529         (WebCore::Page::goToItem):
   18530 
   18531 2007-07-06  Mitz Pettel  <mitz (a] webkit.org>
   18532 
   18533         Reviewed by Maciej.
   18534 
   18535         - fix http://bugs.webkit.org/show_bug.cgi?id=14400
   18536           Assertion failure (SHOULD NEVER BE REACHED) going back on YouTube
   18537 
   18538         Test: fast/forms/button-state-restore.html
   18539 
   18540         * dom/Document.h:
   18541         (WebCore::Document::isFormElementRegistered): Added.
   18542         * html/HTMLGenericFormElement.cpp:
   18543         (WebCore::HTMLGenericFormElement::closeRenderer): Restore saved form
   18544         element state only if the element is registered with the document to
   18545         have its state saved.
   18546 
   18547 2007-07-06  Mitz Pettel  <mitz (a] webkit.org>
   18548 
   18549         Reviewed by Maciej.
   18550 
   18551         - fix http://bugs.webkit.org/show_bug.cgi?id=14487
   18552           Incomplete repaint of background and border of boxes with -webkit-border-fit:lines
   18553 
   18554         Test: fast/repaint/border-fit-lines.html
   18555 
   18556         * rendering/RenderObject.cpp:
   18557         (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Do a full repaint if
   18558         -webkit-border-fit:lines was specified.
   18559 
   18560 2007-07-06  Tony Chang  <idealisms (a] gmail.com>
   18561 
   18562         Reviewed by Maciej.
   18563 
   18564         http://bugs.webkit.org/show_bug.cgi?id=14516
   18565         Bug 14516: crash loading multipart/x-mixed-replace data on windows safari
   18566 
   18567         NULL check m_resourceData to prevent a crash in Safari on Windows.
   18568 
   18569         * loader/ResourceLoader.cpp:
   18570         (WebCore::ResourceLoader::clearResourceData):
   18571 
   18572 2007-07-06  Jungshik Shin  <jungshik.shin (a] gmail.com>
   18573 
   18574         Reviewed by Alexey.
   18575 
   18576         - Add UTF-32 encoding support 
   18577           http://bugs.webkit.org/show_bug.cgi?id=13415
   18578 
   18579         Test:
   18580          - fast/encoding/utf-32-big-endian-bom.html
   18581          - fast/encoding/utf-32-big-endian-nobom.xml
   18582          - fast/encoding/utf-32-little-endian-bom.html
   18583          - fast/encoding/utf-32-little-endian-nobom.xml
   18584 
   18585         * loader/TextResourceDecoder.cpp:
   18586         (WebCore::TextResourceDecoder::checkForBOM):
   18587         (WebCore::TextResourceDecoder::checkForHeadCharset):
   18588         * platform/TextDecoder.cpp:
   18589         (WebCore::TextDecoder::checkForBOM):
   18590         * platform/TextDecoder.h:
   18591         * platform/TextEncoding.cpp:
   18592         (WebCore::UTF32BigEndianEncoding):
   18593         (WebCore::UTF32LittleEndianEncoding):
   18594         * platform/TextEncoding.h:
   18595 
   18596 2007-07-06  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   18597 
   18598         Reviewed by Maciej.
   18599 
   18600         Start implementening RenderThemeGdk/Gtk using GtkStyle. The approach is
   18601         to allocate one native control for each widget type. And use margins, spacing,
   18602         style properties from the Widget. And for drawing use GtkStyle on the rect supplied.
   18603 
   18604         This should allow nice integration and be relative resource friendly. Mozilla is using
   18605         a similiar approach. They seem to share the GdkPixmap among several operations and this
   18606         will be an obvious candidate for improvements. Create a normally big enough GdkPixmap and
   18607         use that for drawing and then set clip regions for cairo to make sure to not go beyond the
   18608         width and height.
   18609 
   18610         The next steps will be to introduce states for the widgets, add more widgets, handle focus,
   18611         and various other style attributes, honor the size and margin and use that to propagate this
   18612         back to RenderStyle*.
   18613 
   18614         * platform/gdk/RenderThemeGdk.cpp:
   18615         (WebCore::RenderThemeGdk::RenderThemeGdk):
   18616         (WebCore::RenderThemeGdk::setCheckboxSize):
   18617         (WebCore::RenderThemeGdk::paintCheckbox):
   18618         (WebCore::RenderThemeGdk::setRadioSize):
   18619         (WebCore::RenderThemeGdk::paintRadio):
   18620         (WebCore::RenderThemeGdk::paintButton):
   18621         (WebCore::RenderThemeGdk::copyToContext):
   18622         (WebCore::RenderThemeGdk::gtkButton):
   18623         (WebCore::RenderThemeGdk::gtkCheckbox):
   18624         (WebCore::RenderThemeGdk::gtkRadioButton):
   18625         (WebCore::RenderThemeGdk::gtkWindowContainer):
   18626         * platform/gdk/RenderThemeGdk.h:
   18627 
   18628 2007-07-06  Rob Buis  <buis (a] kde.org>
   18629 
   18630         Reviewed by Adam.
   18631 
   18632         http://bugs.webkit.org/show_bug.cgi?id=14442
   18633         Adding a stop with value 1.0 to a gradient that has already been used has no effect
   18634 
   18635         Implement start and end stop handling differently so they are not
   18636         in the color stop array.
   18637 
   18638         * html/CanvasGradient.cpp:
   18639         (WebCore::compareStops):
   18640         (WebCore::CanvasGradient::getColor):
   18641         (WebCore::CanvasGradient::findStop):
   18642 
   18643 2007-07-06  Adam Roben  <aroben (a] apple.com>
   18644 
   18645         Fix <rdar://problem/5301994> Garbled text still showing on some sites
   18646 
   18647         Replace calls to GetGlyphIndices with wkGetGlyphs.
   18648 
   18649         Reviewed by Alice.
   18650 
   18651         * platform/win/GlyphPageTreeNodeWin.cpp:
   18652         (WebCore::GlyphPage::fill): Use wkGetGlyphs.
   18653         * platform/win/FontDataWin.cpp:
   18654         (WebCore::FontData::containsCharacters):
   18655 
   18656 2007-07-06  Matt Lilek  <pewtermoose (a] gmail.com>
   18657 
   18658         Not reviewed - Windows build fix.
   18659 
   18660         * bridge/win/FrameWin.cpp:
   18661         (WebCore::imageFromSelection):
   18662 
   18663 2007-07-06  George Staikos  <staikos (a] kde.org>
   18664 
   18665         Reviewed by Maciej.
   18666 
   18667         Switch USE(ICONDATABASE) to ENABLE(ICONDATABASE) and activate the
   18668         flag via the .pro file
   18669 
   18670         * WebCore.pro:
   18671         * loader/icon/IconDatabase.h:
   18672 
   18673 2007-07-05  John Sullivan  <sullivan (a] apple.com>
   18674 
   18675         Reviewed by Adam
   18676 
   18677         - WebCore part of fix for <rdar://problem/5315033>
   18678 
   18679         * rendering/RenderObject.h:
   18680         replaced PaintRestrictionSelectionOnlyWhiteText with PaintRestrictionSelectionOnlyBlackText
   18681         (WebCore::RenderObject::PaintInfo::PaintInfo):
   18682         replaced forceWhiteText with forceBlackText
   18683 
   18684         * rendering/RenderObject.cpp:
   18685         (WebCore::RenderObject::addLineBoxRects):
   18686         added a useSelectionHeight parameter, which defaults to false; this method is unimplemented
   18687         at this level so this has no effect.
   18688 
   18689         * rendering/RenderText.h:
   18690         * rendering/RenderText.cpp:
   18691         (WebCore::RenderText::addLineBoxRects):
   18692         added a useSelectionHeight parameter, which defaults to false. If true, use the vertical position
   18693         and height returned by selectionRect rather than replacing it with the more tight-fitting position
   18694         and height of the line box.
   18695 
   18696         * dom/Range.h:
   18697         * dom/Range.cpp:
   18698         (WebCore::Range::addLineBoxRects):
   18699         added a useSelectionHeight parameter, which defaults to false. Passes this along to RenderObject.        
   18700 
   18701         * page/Frame.h:
   18702         renamed parameter to selectionImage
   18703         * page/Frame.cpp:
   18704         (WebCore::Frame::selectionTextRects):
   18705         pass true for addLineBoxRects new useSelectionHeight parameter, so the rects returned by this new
   18706         method will match the height that the selection would be painted here
   18707         (WebCore::Frame::paint):
   18708         updated for white->black name changes
   18709         
   18710         * page/mac/FrameMac.mm:
   18711         (WebCore::Frame::selectionImage):
   18712         updated for white->black name changes
   18713         
   18714         * rendering/InlineFlowBox.cpp:
   18715         (WebCore::InlineFlowBox::paintTextDecorations):
   18716         updated for white->black name changes
   18717 
   18718         * rendering/RenderLayer.cpp:
   18719         (WebCore::RenderLayer::paintLayer):
   18720         updated for white->black name changes
   18721 
   18722         * rendering/InlineTextBox.cpp:
   18723         (WebCore::InlineTextBox::paint):
   18724         updated for white->black name changes, and actually use black instead of white. This was the goal
   18725         of all the name changes.
   18726 
   18727 2007-07-05  Anders Carlsson  <andersca (a] apple.com>
   18728 
   18729         Reviewed by Oliver.
   18730 
   18731         Fix layout test failures.
   18732         
   18733         * loader/FrameLoader.cpp:
   18734         (WebCore::FrameLoader::commitProvisionalLoad):
   18735         Don't make a representation if we're creating the initial document.
   18736 
   18737 2007-07-05  Alp Toker  <alp.toker (a] collabora.co.uk>
   18738 
   18739         Fix Bug 14388: Input in text fields limited to 1024 characters
   18740         http://bugs.webkit.org/show_bug.cgi?id=14388
   18741 
   18742         Slightly modified by Adam Roben.
   18743 
   18744         Reviewed by Adele.
   18745 
   18746         Tests: fast/forms/input-implicit-length-limit.html
   18747                fast/forms/input-maxlength.html
   18748 
   18749         * html/HTMLInputElement.cpp: Bump limit to 524288.
   18750         (WebCore::HTMLInputElement::init):
   18751         (WebCore::HTMLInputElement::parseMappedAttribute):
   18752         * html/HTMLInputElement.h:
   18753 
   18754 2007-07-05  Anders Carlsson  <andersca (a] apple.com>
   18755 
   18756         Build fix.
   18757         
   18758         * loader/FrameLoader.cpp:
   18759         (WebCore::FrameLoader::init):
   18760 
   18761 2007-07-05  Sam Weinig  <sam (a] webkit.org>
   18762 
   18763         Reviewed by Geoff.
   18764 
   18765         Add focus, blur and close functions to DOMWindow implementation class
   18766         and move bindings from Window to JSDOMWindow.
   18767 
   18768         * bindings/js/JSDOMWindowCustom.cpp:
   18769         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   18770         * bindings/js/kjs_window.cpp:
   18771         (KJS::Window::getOwnPropertySlot):
   18772         (KJS::WindowFunc::callAsFunction):
   18773         * bindings/js/kjs_window.h:
   18774         (KJS::Window::):
   18775         * bindings/scripts/CodeGeneratorJS.pm: Move prototype function declaration from
   18776         the implementation to the header.
   18777         * page/DOMWindow.cpp:
   18778         (WebCore::DOMWindow::focus):
   18779         (WebCore::DOMWindow::blur):
   18780         (WebCore::DOMWindow::close):
   18781         * page/DOMWindow.h:
   18782         * page/DOMWindow.idl:
   18783 
   18784 2007-07-05  Justin Garcia  <justin.garcia (a] apple.com>
   18785 
   18786         Reviewed by Harrison.
   18787 
   18788         <rdar://problem/5279521> REGRESSION: In Mail, a crash occurs at WebCore::Range::startPosition() when attempting to apply alignment to selected image/text in message body
   18789 
   18790         * editing/TextIterator.cpp:
   18791         (WebCore::TextIterator::exitNode): Previously emitted content shouldn't have
   18792         to come from a text node in order to emit a '\n' as we exit block containers.
   18793 
   18794 2007-07-05  Anders Carlsson  <andersca (a] apple.com>
   18795 
   18796         Reviewed by Geoff.
   18797 
   18798         <rdar://problem/5315284> REGRESSION: Leopard Launch Time - plugins are being accessed at startup.
   18799 
   18800         Set a response that has a MIME type of "text/html" on the document loader so WebKit won't refresh the 
   18801         plugin database looking for a plug-in that can handle the document's MIME type (which will be null anyway).
   18802                  
   18803         * loader/FrameLoader.cpp:
   18804         (WebCore::FrameLoader::init):
   18805 
   18806 2007-07-05  Anders Carlsson  <andersca (a] apple.com>
   18807 
   18808         Reviewed by Oliver.
   18809 
   18810         <rdar://problem/5106788>
   18811         WebKit loads user style sheets too late as seen in Mail (breaks DataDetectors; Mail flashes wrong font)
   18812 
   18813         Let the document know when the user style sheet is loading so that it try not to display anything
   18814         until the user style sheet has finished loading.
   18815         
   18816         * page/Frame.cpp:
   18817         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
   18818         (WebCore::UserStyleSheetLoader::~UserStyleSheetLoader):
   18819         (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
   18820         (WebCore::Frame::setUserStyleSheetLocation):
   18821 
   18822 2007-07-05  Sam Weinig  <sam (a] webkit.org>
   18823 
   18824         Reviewed by Darin.
   18825 
   18826         Move JSDOMWindow overriding getOwnPropertySlot logic from KJS::Window
   18827         up into JSDOMWindow.  No change in functionality so no testcase required. 
   18828 
   18829         * bindings/js/JSDOMWindowCustom.cpp:
   18830         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   18831         * bindings/js/kjs_window.cpp:
   18832         (KJS::Window::getOwnPropertySlot):
   18833         * bindings/js/kjs_window.h:
   18834 
   18835 2007-07-05  Mitz Pettel  <mitz (a] webkit.org>
   18836 
   18837         Reviewed and Landed by Sam.
   18838 
   18839         - fix bug 14465 for window.showModalDialog
   18840 
   18841         * bindings/js/kjs_window.cpp:
   18842         (KJS::parseModalDialogFeatures):
   18843         (KJS::showModalDialog):
   18844 
   18845 2007-07-05  Sam Weinig  <sam (a] webkit.org>
   18846 
   18847         Reviewed by Mitz.
   18848 
   18849         Patch for http://bugs.webkit.org/show_bug.cgi?id=14465
   18850         window.open() uses the literal "undefined" as the URL
   18851 
   18852         * bindings/js/kjs_window.cpp:
   18853         (KJS::WindowFunc::callAsFunction): add checks for undefined and null values when setting the url.
   18854         * manual-tests/open-url-undefined.html: Added.
   18855 
   18856 2007-07-05  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   18857 
   18858         Reviewed by Rob Buis.
   18859 
   18860         Rework FontData and FontPlatformData for the Gdk work to make valgrind
   18861         happy.
   18862 
   18863         Move destroying of FontConfig and Cairo objects held in FontPlatformData
   18864         to FontData::platformDestroy. The ownership of these objects is held by
   18865         FontData. This is following the Mac and Qt port at least.
   18866 
   18867         Currently it is possible that FontPlatformData will not create cairo resources
   18868         in this case at least make sure the variables are initialized to 0.
   18869         Initialize x,y of the cairo_glyph_t with zero to avoid extents.x_advance depending
   18870         on subtracing with not defined values.
   18871 
   18872         FontPlatformData::hash. Using FontDescription is a bad idea as we don't have a clue
   18873         about how it is packed, if holes are present, etc. The FcPattern and the m_fontMatrix
   18874         should be good enough to describe the Font. All other objects are created using these
   18875         variables
   18876 
   18877         Replace C-style casts with C++ casts, in this case reinterpret_cast.
   18878 
   18879         * platform/gdk/FontDataGdk.cpp:
   18880         (WebCore::FontData::platformInit): Don't assert
   18881         (WebCore::FontData::platformDestroy): Take over ownership
   18882         (WebCore::FontData::platformWidthForGlyph): initialize
   18883         (WebCore::FontData::setFont): be paranoid and assert
   18884         * platform/gdk/FontPlatformData.h:
   18885         (WebCore::FontPlatformData::FontPlatformData): Initialize everything
   18886         (WebCore::FontPlatformData::hash): make valgrind happy and don't use m_fontDescription
   18887         * platform/gdk/FontPlatformDataGdk.cpp:
   18888         (WebCore::FontPlatformData::FontPlatformData):
   18889         (WebCore::FontPlatformData::~FontPlatformData): FontData::platformDestroy will do this
   18890         (WebCore::FontPlatformData::list): Don't use C-style casts.
   18891         (WebCore::FontPlatformData::setFont): m_fontFace, m_fontMatrix, m_options might not be initialized
   18892         (WebCore::FontPlatformData::operator==): Don't use C-style casts.
   18893 
   18894 2007-07-05  Alp Toker  <alp.toker (a] collabora.co.uk>
   18895 
   18896         Reviewed by Mark Rowe.
   18897 
   18898         http://bugs.webkit.org/show_bug.cgi?id=14445
   18899         GraphicsContextCairo code style cleanup
   18900 
   18901         Follow the cr naming convention for cairo_t*.
   18902         Remove trailing whitespace.
   18903         Replace C casts with C++ casts.
   18904         Avoid needless casts.
   18905 
   18906         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   18907         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   18908         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
   18909         (WebCore::GraphicsContext::GraphicsContext):
   18910         (WebCore::GraphicsContext::platformContext):
   18911         (WebCore::GraphicsContext::savePlatformState):
   18912         (WebCore::GraphicsContext::restorePlatformState):
   18913         (WebCore::GraphicsContext::drawRect):
   18914         (WebCore::adjustLineToPixelBoundaries):
   18915         (WebCore::GraphicsContext::drawLine):
   18916         (WebCore::GraphicsContext::drawEllipse):
   18917         (WebCore::GraphicsContext::strokeArc): Save/restore the graphics state.
   18918         (WebCore::GraphicsContext::drawConvexPolygon):
   18919         (WebCore::GraphicsContext::fillRect):
   18920         (WebCore::GraphicsContext::clip):
   18921         (WebCore::GraphicsContext::drawFocusRing):
   18922         (WebCore::GraphicsContext::roundToDevicePixels):
   18923         (WebCore::GraphicsContext::translate):
   18924         (WebCore::GraphicsContext::origin):
   18925         (WebCore::GraphicsContext::setPlatformStrokeThickness):
   18926         (WebCore::GraphicsContext::setPlatformStrokeStyle):
   18927         (WebCore::GraphicsContext::setPlatformFont):
   18928         (WebCore::GraphicsContext::concatCTM):
   18929         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   18930         (WebCore::GraphicsContext::beginTransparencyLayer):
   18931         (WebCore::GraphicsContext::endTransparencyLayer):
   18932         (WebCore::GraphicsContext::clearRect):
   18933         (WebCore::GraphicsContext::setLineCap):
   18934         (WebCore::GraphicsContext::setLineJoin):
   18935         (WebCore::GraphicsContext::setMiterLimit):
   18936         (WebCore::GraphicsContext::setCompositeOperation):
   18937         (WebCore::GraphicsContext::beginPath):
   18938         (WebCore::GraphicsContext::addPath):
   18939         (WebCore::GraphicsContext::rotate):
   18940         (WebCore::GraphicsContext::scale):
   18941         * platform/graphics/cairo/ImageBufferCairo.cpp:
   18942         (WebCore::ImageBuffer::ImageBuffer):
   18943         * platform/graphics/cairo/ImageCairo.cpp: Avoid the confusing ctxt/context naming scheme.
   18944         (WebCore::BitmapImage::draw):
   18945         (WebCore::Image::drawPattern):
   18946 
   18947 2007-07-05  Alp Toker  <alp.toker (a] collabora.co.uk>
   18948 
   18949         Reviewed by Mark Rowe.
   18950 
   18951         http://bugs.webkit.org/show_bug.cgi?id=14531
   18952         Cairo SVGImage::nativeImageForCurrentFrame() has no return
   18953 
   18954         Return the Cairo surface from the frame cache.
   18955 
   18956         Also add a fall-through else macro with notImplemented() so that future
   18957         ports do not make the same mistake.
   18958 
   18959         * platform/graphics/svg/SVGImage.cpp:
   18960         (WebCore::SVGImage::nativeImageForCurrentFrame):
   18961 
   18962 2007-07-05  Alp Toker  <alp.toker (a] collabora.co.uk>
   18963 
   18964         Reviewed by Mark Rowe.
   18965 
   18966         http://bugs.webkit.org/show_bug.cgi?id=14513
   18967         Cairo animated GIF support is broken
   18968 
   18969         Implement ImageSource::frameIsCompleteAtIndex() to enable animated GIFs.
   18970 
   18971         * platform/graphics/cairo/ImageSourceCairo.cpp:
   18972         (WebCore::ImageSource::frameIsCompleteAtIndex):
   18973 
   18974 2007-07-04  Matt Perry  <mpComplete (a] gmail.com>
   18975 
   18976         Reviewed by Adam.
   18977 
   18978         Fix for http://bugs.webkit.org/show_bug.cgi?id=13400
   18979         Bug 13400: REGRESSION (r20809-20814): No back entry created for navigations created by assigning to document.location
   18980         <rdar://problem/5153025>
   18981 
   18982         Treat userGesture as always true for setLocation, forcing a back/forward
   18983         entry to be created.
   18984 
   18985         * bindings/js/JSHTMLDocumentCustom.cpp:
   18986         (WebCore::JSHTMLDocument::setLocation):
   18987 
   18988 2007-07-04  Adam Roben  <aroben (a] apple.com>
   18989 
   18990         Restore MouseEventWithHitTestResults::targetNode's old behavior
   18991 
   18992         Reviewed by Mark.
   18993 
   18994         Fixes fast/images/imagemap-case and fast/replace/image-map.
   18995 
   18996         * page/MouseEventWithHitTestResults.cpp:
   18997         (WebCore::MouseEventWithHitTestResults::targetNode): Use the inner
   18998         node, not the inner non-shared node.
   18999 
   19000 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19001 
   19002         Mac, Qt, and Gdk build fixes.
   19003 
   19004         * page/EventHandler.h:
   19005         * page/gdk/EventHandlerGdk.cpp:
   19006         * page/mac/EventHandlerMac.mm:
   19007         (WebCore::EventHandler::passSubframeEventToSubframe):
   19008         * page/qt/EventHandlerQt.cpp:
   19009 
   19010 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19011 
   19012         Fix the Qt/Gdk builds.
   19013 
   19014         * page/gdk/EventHandlerGdk.cpp:
   19015         * page/qt/EventHandlerQt.cpp:
   19016 
   19017 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19018 
   19019         Move tooltip logic down into WebCore so that it can be shared cross-platform
   19020 
   19021         Reviewed by Sam.
   19022 
   19023         * page/Chrome.cpp:
   19024         (WebCore::Chrome::setToolTip): Added.
   19025         * page/Chrome.h:
   19026         * page/ChromeClient.h:
   19027         * page/EventHandler.cpp:
   19028         (WebCore::EventHandler::mouseMoved): Call Chrome::setToolTip.
   19029         * platform/graphics/svg/SVGImageEmptyClients.h:
   19030 
   19031         Added stubs for Gdk:
   19032 
   19033         * platform/gdk/ChromeClientGdk.h:
   19034         * platform/gdk/TemporaryLinkStubs.cpp:
   19035         (ChromeClientGdk::setToolTip):
   19036 
   19037 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19038 
   19039         Add Settings::showsURLsInToolTips
   19040 
   19041         Reviewed by Sam.
   19042 
   19043         * WebCore.exp:
   19044         * page/Settings.cpp:
   19045         (WebCore::Settings::Settings):
   19046         * page/Settings.h:
   19047 
   19048 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19049 
   19050         Move logic for calling mouseDidMoveOverElement into WebCore
   19051 
   19052         Reviewed by Sam.
   19053 
   19054         * page/EventHandler.cpp:
   19055         (WebCore::EventHandler::mouseMoved): Added. Calls Chrome::mouseDidMoveOverElement.
   19056         (WebCore::EventHandler::handleMouseMoveEvent): Now takes an optional
   19057         HitTestResult* parameter which is used to communicate to the caller the
   19058         node the mouse is over.
   19059         * page/EventHandler.h:
   19060         * page/mac/EventHandlerMac.mm:
   19061         (WebCore::EventHandler::mouseMoved): Changed to call the overloaded
   19062         mouseMoved().
   19063         (WebCore::EventHandler::passMouseMoveEventToSubframe): Pass hoveredNode
   19064         through to the subframe so we can get the deepest node hovered, not
   19065         just the node's parent frame.
   19066         * page/win/EventHandlerWin.cpp:
   19067         (WebCore::EventHandler::passMouseMoveEventToSubframe): Ditto.
   19068 
   19069 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19070 
   19071         Add Chrome::mouseDidMoveOverElement
   19072 
   19073         This does the work of calling up to the ChromeClient (which will call
   19074         the UI delegate).
   19075 
   19076         Reviewed by Sam.
   19077 
   19078         * page/Chrome.cpp:
   19079         (WebCore::Chrome::mouseDidMoveOverElement): Added.
   19080         * page/Chrome.h:
   19081         * page/ChromeClient.h:
   19082         * platform/graphics/svg/SVGImageEmptyClients.h: Updated for change to
   19083         ChromeClient.
   19084         * platform/gdk/ChromeClientGdk.h:
   19085         * platform/gdk/TemporaryLinkStubs.cpp:
   19086         (ChromeClientGdk::mouseDidMoveOverElement):
   19087 
   19088 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19089 
   19090         Changed PlatformMouseEvent to store the modifier flags of the event
   19091 
   19092         Reviewed by Sam.
   19093 
   19094         * platform/PlatformMouseEvent.h:
   19095         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   19096         * platform/mac/PlatformMouseEventMac.mm:
   19097         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   19098         * platform/win/PlatformMouseEventWin.cpp:
   19099         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   19100 
   19101 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19102 
   19103         Add HitTestResult::setToNonShadowAncestor
   19104 
   19105         Reviewed by Sam.
   19106 
   19107         * page/EventHandler.cpp:
   19108         (WebCore::EventHandler::hitTestResultAtPoint): Moved logic into
   19109         HitTestResult::setToNonShadowAncestor.
   19110         * rendering/HitTestResult.cpp:
   19111         (WebCore::HitTestResult::setToNonShadowAncestor):
   19112         * rendering/HitTestResult.h:
   19113 
   19114 2007-07-04  Adam Roben  <aroben (a] apple.com>
   19115 
   19116         Change MouseEventWithHitTestResults to hold onto a HitTestResult
   19117 
   19118         Reviewed by Sam.
   19119 
   19120         * dom/Document.cpp:
   19121         (WebCore::Document::prepareMouseEvent):
   19122         * page/MouseEventWithHitTestResults.cpp:
   19123         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
   19124         (WebCore::MouseEventWithHitTestResults::targetNode):
   19125         (WebCore::MouseEventWithHitTestResults::localPoint):
   19126         (WebCore::MouseEventWithHitTestResults::scrollbar):
   19127         * page/MouseEventWithHitTestResults.h:
   19128         (WebCore::MouseEventWithHitTestResults::event):
   19129         (WebCore::MouseEventWithHitTestResults::hitTestResult):
   19130 
   19131 2007-07-04  Matt Lilek  <pewtermoose (a] gmail.com>
   19132 
   19133         Not reviewed, gdk build fix.
   19134 
   19135         * platform/gdk/FrameGdk.cpp:
   19136 
   19137 2007-07-05  Antti Koivisto  <antti (a] apple.com>
   19138 
   19139         Reviewed by John.
   19140         
   19141         Fix Repro crash due to infinite recursion in HTMLParser::handleError @ youos.com
   19142         <rdar://problem/5237811>
   19143         
   19144         It is possible to add table parts (thead etc) without table ancestor to a document fragment. If a new table element
   19145         was added to such a part, as in
   19146         
   19147         div.innerHTML = '<tbody><table>';
   19148         
   19149         the parser error handling code would try to pop the previous table as normal. However since
   19150         the table does not actually exist nothing would happen and parser would go to infinite recursion.
   19151         
   19152         Solution here is to pop table parts one by one when handling the error inside a fragment instead of trying to pop
   19153         the table straight away (as it might not exist).
   19154 
   19155         * html/HTMLParser.cpp:
   19156         (WebCore::HTMLParser::handleError):
   19157 
   19158 2007-07-04  Qing Zhao  <qing (a] staikos.net>
   19159 
   19160         Reviewed by George Staikos.
   19161 
   19162         Draw menulist (comboboxes) without text overlap on the button.
   19163 
   19164         * platform/qt/RenderThemeQt.cpp:
   19165         (WebCore::RenderThemeQt::setPopupPadding):
   19166 
   19167 2007-07-04  George Staikos  <staikos (a] kde.org>
   19168 
   19169         Compile
   19170 
   19171         * page/qt/FrameQt.cpp:
   19172         * WebCore.pro:
   19173 
   19174 2007-07-04  Sam Weinig  <sam (a] webkit.org>
   19175 
   19176         Reviewed by Mitz.
   19177 
   19178         Patch for http://bugs.webkit.org/show_bug.cgi?id=14504
   19179         REGRESSION (r23573): Amazon Book Excerpt can not be viewed in recent nightly
   19180 
   19181         - Made it possible (again) to shadow window properties with local variable names.
   19182 
   19183         Test: fast/dom/Window/window-property-shadowing.html
   19184 
   19185         * bindings/js/JSDOMWindowCustom.cpp:
   19186         (WebCore::JSDOMWindow::customPut):
   19187         * bindings/js/kjs_window.cpp:
   19188         (KJS::Window::put):
   19189         * bindings/scripts/CodeGeneratorJS.pm:
   19190         * page/DOMWindow.idl:
   19191 
   19192 2007-07-03  Alice Liu  <alice.liu (a] apple.com>
   19193 
   19194         Reviewed by Adam.
   19195 
   19196         Fixed <rdar://problem/5225119> support smart pasting on Windows
   19197 
   19198         * WebCore.vcproj/WebCore.vcproj:
   19199         * WebCore.xcodeproj/project.pbxproj:
   19200             Added new files
   19201         * editing/SmartReplace.cpp: Added.
   19202         (WebCore::isCharacterSmartReplaceExempt):
   19203             Added non-CF implementation placeholder
   19204         * editing/SmartReplace.h: Added.
   19205         * editing/SmartReplaceCF.cpp: Added.
   19206         (WebCore::getSmartSet):
   19207         (WebCore::isCharacterSmartReplaceExempt):
   19208             Added new implementation
   19209 
   19210         * bridge/win/FrameWin.cpp:
   19211         * page/Frame.h:
   19212         * page/mac/FrameMac.mm:
   19213             Removed old declaration and implementation
   19214 
   19215         * editing/ReplaceSelectionCommand.cpp:
   19216         (WebCore::ReplaceSelectionCommand::doApply):
   19217             Changed to call the new function instead of old
   19218 
   19219         * page/mac/WebCoreFrameBridge.h:
   19220         * page/mac/WebCoreFrameBridge.mm:
   19221             Removed old declaration and implementation
   19222         (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):
   19223             Changed to call the new function instead of old
   19224 
   19225         * platform/win/PasteboardWin.cpp:
   19226         (WebCore::Pasteboard::Pasteboard):
   19227             Register new clipboard format
   19228         (WebCore::Pasteboard::writeSelection):
   19229             Set data for smartpaste format on clipboard
   19230         (WebCore::Pasteboard::canSmartReplace):
   19231             Added non-stub implementation
   19232 
   19233 2007-07-04  Qing Zhao  <qing (a] staikos.net>
   19234 
   19235         Reviewed by George Staikos.
   19236 
   19237         Similar to the PlatformScrollbar fixes, adjust the painter to make the
   19238         styler draw all subcontrols, and in this case the focus rect, in the
   19239         proper location
   19240 
   19241         * platform/qt/RenderThemeQt.cpp:
   19242         (WebCore::RenderThemeQt::paintMenuList):
   19243 
   19244 2007-07-04  Mitz Pettel  <mitz (a] webkit.org>
   19245 
   19246         Reviewed by Maciej.
   19247 
   19248         - fix http://bugs.webkit.org/show_bug.cgi?id=14495
   19249           REGRESSION: Wrong cursor is displayed during drag and drop when text is selected
   19250           <rdar://problem/5312384>
   19251 
   19252         No test possible because DumpRenderTree cannot query the current cursor.
   19253 
   19254         * page/EventHandler.cpp:
   19255         (WebCore::EventHandler::selectCursor): Changed into a member function and
   19256         added that if the last mouse down event could not have started a
   19257         selection, then the cursor should not change to an I-beam unconditionally.
   19258         (WebCore::EventHandler::handleMouseMoveEvent):
   19259         * page/EventHandler.h:
   19260 
   19261 2007-07-04  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   19262 
   19263         Reviewed by Rob Buis.
   19264 
   19265         A little progress in tracking dependencies.
   19266 
   19267         * WebCore.pro: Add DEPENDPATH for the Gdk port.
   19268 
   19269 2007-07-03  Darin Adler  <darin (a] apple.com>
   19270 
   19271         Reviewed by Tim Hatcher.
   19272 
   19273         - fix <rdar://problem/5221297> Font family name in the cssText for a DOMCSSStyleDeclaration needs quotes
   19274 
   19275         Test: editing/style/font-family-with-space.html
   19276 
   19277         * css/FontFamilyValue.cpp:
   19278         (WebCore::isValidCSSIdentifier): Added. Implements the same rule that the CSS lexer does.
   19279         (WebCore::quoteStringIfNeeded): Changed to call isValidCSSIdentifier instead of just
   19280         checking for a leading "#" character.
   19281         * editing/markup.cpp:
   19282         (WebCore::escapeTextForMarkup): Changed to take a String parameter for better efficiency.
   19283         (WebCore::renderedText): Changed to return a String for better efficiency.
   19284         (WebCore::addNamespace): Updated to pass String to escapeTextForMarkup.
   19285         (WebCore::startMarkup): Updated to pass String to escapeTextForMarkup. Added missing call
   19286         to escapeTextForMarkup in the special case for the style property.
   19287         (WebCore::createMarkup): Changed from single quotes to double quotes and also added missing
   19288         call to escapeTextForMarkup in two special cases for the style property.
   19289 
   19290 2007-07-03  Sam Weinig  <sam (a] webkit.org>
   19291 
   19292         Reviewed by Darin.
   19293 
   19294         Twelfth round of fixes for implicit 64-32 bit conversion errors.
   19295         <rdar://problem/5292262>
   19296 
   19297         - Add casts and accompanying FIXMEs to avoid remaining compiler errors.
   19298 
   19299         * WebCore.xcodeproj/project.pbxproj:
   19300         * loader/FrameLoader.cpp:
   19301         (WebCore::FrameLoader::opened):
   19302         (WebCore::FrameLoader::sendRemainingDelegateMessages):
   19303         * loader/FrameLoader.h:
   19304         * loader/ResourceLoader.cpp:
   19305         (WebCore::ResourceLoader::didReceiveData):
   19306         * platform/network/mac/ResourceHandleMac.mm:
   19307         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
   19308         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
   19309         * platform/network/mac/ResourceResponseMac.mm:
   19310         (WebCore::ResourceResponse::nsURLResponse):
   19311 
   19312 2007-07-03  Anders Carlsson  <andersca (a] apple.com>
   19313 
   19314         Reviewed by Adam.
   19315 
   19316         <rdar://problem/5093862>
   19317         Nothing shown in plugin area when trying to play content using the DivX plugin
   19318         
   19319         Defer calling SetWindow for the DivX plugin, just like we do with the WMP plugin.
   19320                 
   19321         * plugins/win/PluginViewWin.cpp:
   19322         (WebCore::PluginViewWin::determineQuirks):
   19323 
   19324 2007-07-03  Sam Weinig  <sam (a] webkit.org>
   19325 
   19326         Reviewed by Brady Eidson.
   19327 
   19328         Ninth round of fixes for implicit 64-32 bit conversion errors.
   19329         <rdar://problem/5292262>
   19330 
   19331         - Fix function signature to use unsigned long instead of unsigned long long.
   19332 
   19333         * loader/ProgressTracker.cpp:
   19334         (WebCore::ProgressTracker::completeProgress):
   19335         * loader/ProgressTracker.h:
   19336 
   19337 2007-07-03  Sam Weinig  <sam (a] webkit.org>
   19338 
   19339         Reviewed by Oliver.
   19340 
   19341         Eighth round of fixes for implicit 64-32 bit conversion errors.
   19342         <rdar://problem/5292262>
   19343 
   19344         - Convert SVG implementation files to use floats instead of doubles
   19345           to match the spec/IDLs.
   19346 
   19347         * bindings/scripts/CodeGeneratorJS.pm:
   19348         * ksvg2/svg/SVGAngle.cpp:
   19349         * ksvg2/svg/SVGAnimatedTemplate.h:
   19350         * ksvg2/svg/SVGAnimationElement.cpp:
   19351         (WebCore::SVGAnimationElement::getEndTime):
   19352         (WebCore::SVGAnimationElement::getStartTime):
   19353         (WebCore::SVGAnimationElement::getCurrentTime):
   19354         (WebCore::SVGAnimationElement::getSimpleDuration):
   19355         * ksvg2/svg/SVGAnimationElement.h:
   19356         * ksvg2/svg/SVGFitToViewBox.cpp:
   19357         (WebCore::SVGFitToViewBox::parseViewBox):
   19358         * ksvg2/svg/SVGLength.cpp:
   19359         (WebCore::SVGLength::setValueAsString):
   19360         * ksvg2/svg/SVGLinearGradientElement.cpp:
   19361         (WebCore::SVGLinearGradientElement::buildGradient):
   19362         * ksvg2/svg/SVGMatrix.idl:
   19363         * ksvg2/svg/SVGNumber.idl:
   19364         * ksvg2/svg/SVGParserUtilities.cpp:
   19365         (WebCore::SVGPathParser::parseSVG):
   19366         (WebCore::SVGPathParser::calculateArc):
   19367         (WebCore::SVGPathParser::svgLineToHorizontal):
   19368         (WebCore::SVGPathParser::svgLineToVertical):
   19369         (WebCore::SVGPathParser::svgCurveToCubicSmooth):
   19370         (WebCore::SVGPathParser::svgCurveToQuadratic):
   19371         (WebCore::SVGPathParser::svgCurveToQuadraticSmooth):
   19372         (WebCore::SVGPathParser::svgArcTo):
   19373         * ksvg2/svg/SVGParserUtilities.h:
   19374         * ksvg2/svg/SVGPathElement.cpp:
   19375         (WebCore::SVGPathElement::SVGPathElement):
   19376         (WebCore::SVGPathElement::getTotalLength):
   19377         (WebCore::SVGPathElement::getPointAtLength):
   19378         (WebCore::SVGPathElement::getPathSegAtLength):
   19379         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
   19380         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
   19381         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
   19382         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
   19383         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
   19384         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
   19385         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
   19386         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
   19387         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
   19388         (WebCore::SVGPathElement::createSVGPathSegArcRel):
   19389         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
   19390         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
   19391         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
   19392         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
   19393         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
   19394         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
   19395         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
   19396         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
   19397         (WebCore::SVGPathElement::svgMoveTo):
   19398         (WebCore::SVGPathElement::svgLineTo):
   19399         (WebCore::SVGPathElement::svgLineToHorizontal):
   19400         (WebCore::SVGPathElement::svgLineToVertical):
   19401         (WebCore::SVGPathElement::svgCurveToCubic):
   19402         (WebCore::SVGPathElement::svgCurveToCubicSmooth):
   19403         (WebCore::SVGPathElement::svgCurveToQuadratic):
   19404         (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
   19405         (WebCore::SVGPathElement::svgArcTo):
   19406         (WebCore::SVGPathElement::parseMappedAttribute):
   19407         * ksvg2/svg/SVGPathElement.h:
   19408         * ksvg2/svg/SVGPathSegArc.cpp:
   19409         (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
   19410         (WebCore::SVGPathSegArcAbs::setX):
   19411         (WebCore::SVGPathSegArcAbs::x):
   19412         (WebCore::SVGPathSegArcAbs::setY):
   19413         (WebCore::SVGPathSegArcAbs::y):
   19414         (WebCore::SVGPathSegArcAbs::setR1):
   19415         (WebCore::SVGPathSegArcAbs::r1):
   19416         (WebCore::SVGPathSegArcAbs::setR2):
   19417         (WebCore::SVGPathSegArcAbs::r2):
   19418         (WebCore::SVGPathSegArcAbs::setAngle):
   19419         (WebCore::SVGPathSegArcAbs::angle):
   19420         (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
   19421         (WebCore::SVGPathSegArcRel::setX):
   19422         (WebCore::SVGPathSegArcRel::x):
   19423         (WebCore::SVGPathSegArcRel::setY):
   19424         (WebCore::SVGPathSegArcRel::y):
   19425         (WebCore::SVGPathSegArcRel::setR1):
   19426         (WebCore::SVGPathSegArcRel::r1):
   19427         (WebCore::SVGPathSegArcRel::setR2):
   19428         (WebCore::SVGPathSegArcRel::r2):
   19429         (WebCore::SVGPathSegArcRel::setAngle):
   19430         (WebCore::SVGPathSegArcRel::angle):
   19431         * ksvg2/svg/SVGPathSegArc.h:
   19432         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
   19433         (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
   19434         (WebCore::SVGPathSegCurvetoCubicAbs::setX):
   19435         (WebCore::SVGPathSegCurvetoCubicAbs::x):
   19436         (WebCore::SVGPathSegCurvetoCubicAbs::setY):
   19437         (WebCore::SVGPathSegCurvetoCubicAbs::y):
   19438         (WebCore::SVGPathSegCurvetoCubicAbs::setX1):
   19439         (WebCore::SVGPathSegCurvetoCubicAbs::x1):
   19440         (WebCore::SVGPathSegCurvetoCubicAbs::setY1):
   19441         (WebCore::SVGPathSegCurvetoCubicAbs::y1):
   19442         (WebCore::SVGPathSegCurvetoCubicAbs::setX2):
   19443         (WebCore::SVGPathSegCurvetoCubicAbs::x2):
   19444         (WebCore::SVGPathSegCurvetoCubicAbs::setY2):
   19445         (WebCore::SVGPathSegCurvetoCubicAbs::y2):
   19446         (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
   19447         (WebCore::SVGPathSegCurvetoCubicRel::setX):
   19448         (WebCore::SVGPathSegCurvetoCubicRel::x):
   19449         (WebCore::SVGPathSegCurvetoCubicRel::setY):
   19450         (WebCore::SVGPathSegCurvetoCubicRel::y):
   19451         (WebCore::SVGPathSegCurvetoCubicRel::setX1):
   19452         (WebCore::SVGPathSegCurvetoCubicRel::x1):
   19453         (WebCore::SVGPathSegCurvetoCubicRel::setY1):
   19454         (WebCore::SVGPathSegCurvetoCubicRel::y1):
   19455         (WebCore::SVGPathSegCurvetoCubicRel::setX2):
   19456         (WebCore::SVGPathSegCurvetoCubicRel::x2):
   19457         (WebCore::SVGPathSegCurvetoCubicRel::setY2):
   19458         (WebCore::SVGPathSegCurvetoCubicRel::y2):
   19459         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
   19460         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
   19461         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
   19462         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX):
   19463         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::x):
   19464         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY):
   19465         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::y):
   19466         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX2):
   19467         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::x2):
   19468         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY2):
   19469         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::y2):
   19470         (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
   19471         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX):
   19472         (WebCore::SVGPathSegCurvetoCubicSmoothRel::x):
   19473         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY):
   19474         (WebCore::SVGPathSegCurvetoCubicSmoothRel::y):
   19475         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX2):
   19476         (WebCore::SVGPathSegCurvetoCubicSmoothRel::x2):
   19477         (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY2):
   19478         (WebCore::SVGPathSegCurvetoCubicSmoothRel::y2):
   19479         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
   19480         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
   19481         (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
   19482         (WebCore::SVGPathSegCurvetoQuadraticAbs::setX):
   19483         (WebCore::SVGPathSegCurvetoQuadraticAbs::x):
   19484         (WebCore::SVGPathSegCurvetoQuadraticAbs::setY):
   19485         (WebCore::SVGPathSegCurvetoQuadraticAbs::y):
   19486         (WebCore::SVGPathSegCurvetoQuadraticAbs::setX1):
   19487         (WebCore::SVGPathSegCurvetoQuadraticAbs::x1):
   19488         (WebCore::SVGPathSegCurvetoQuadraticAbs::setY1):
   19489         (WebCore::SVGPathSegCurvetoQuadraticAbs::y1):
   19490         (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
   19491         (WebCore::SVGPathSegCurvetoQuadraticRel::setX):
   19492         (WebCore::SVGPathSegCurvetoQuadraticRel::x):
   19493         (WebCore::SVGPathSegCurvetoQuadraticRel::setY):
   19494         (WebCore::SVGPathSegCurvetoQuadraticRel::y):
   19495         (WebCore::SVGPathSegCurvetoQuadraticRel::setX1):
   19496         (WebCore::SVGPathSegCurvetoQuadraticRel::x1):
   19497         (WebCore::SVGPathSegCurvetoQuadraticRel::setY1):
   19498         (WebCore::SVGPathSegCurvetoQuadraticRel::y1):
   19499         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
   19500         (WebCore::SVGPathSegCurvetoQuadraticRel::toString):
   19501         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
   19502         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
   19503         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setX):
   19504         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::x):
   19505         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setY):
   19506         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::y):
   19507         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
   19508         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setX):
   19509         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::x):
   19510         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setY):
   19511         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::y):
   19512         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
   19513         * ksvg2/svg/SVGPathSegLineto.cpp:
   19514         (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
   19515         (WebCore::SVGPathSegLinetoAbs::setX):
   19516         (WebCore::SVGPathSegLinetoAbs::x):
   19517         (WebCore::SVGPathSegLinetoAbs::setY):
   19518         (WebCore::SVGPathSegLinetoAbs::y):
   19519         (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
   19520         (WebCore::SVGPathSegLinetoRel::setX):
   19521         (WebCore::SVGPathSegLinetoRel::x):
   19522         (WebCore::SVGPathSegLinetoRel::setY):
   19523         (WebCore::SVGPathSegLinetoRel::y):
   19524         * ksvg2/svg/SVGPathSegLineto.h:
   19525         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
   19526         (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
   19527         (WebCore::SVGPathSegLinetoHorizontalAbs::setX):
   19528         (WebCore::SVGPathSegLinetoHorizontalAbs::x):
   19529         (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
   19530         (WebCore::SVGPathSegLinetoHorizontalRel::setX):
   19531         (WebCore::SVGPathSegLinetoHorizontalRel::x):
   19532         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
   19533         * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
   19534         (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
   19535         (WebCore::SVGPathSegLinetoVerticalAbs::setY):
   19536         (WebCore::SVGPathSegLinetoVerticalAbs::y):
   19537         (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
   19538         (WebCore::SVGPathSegLinetoVerticalRel::setY):
   19539         (WebCore::SVGPathSegLinetoVerticalRel::y):
   19540         * ksvg2/svg/SVGPathSegLinetoVertical.h:
   19541         * ksvg2/svg/SVGPathSegList.cpp:
   19542         (WebCore::SVGPathSegList::getPathSegAtLength):
   19543         * ksvg2/svg/SVGPathSegList.h:
   19544         * ksvg2/svg/SVGPathSegMoveto.cpp:
   19545         (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
   19546         (WebCore::SVGPathSegMovetoAbs::setX):
   19547         (WebCore::SVGPathSegMovetoAbs::x):
   19548         (WebCore::SVGPathSegMovetoAbs::setY):
   19549         (WebCore::SVGPathSegMovetoAbs::y):
   19550         (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
   19551         (WebCore::SVGPathSegMovetoRel::setX):
   19552         (WebCore::SVGPathSegMovetoRel::x):
   19553         (WebCore::SVGPathSegMovetoRel::setY):
   19554         (WebCore::SVGPathSegMovetoRel::y):
   19555         * ksvg2/svg/SVGPathSegMoveto.h:
   19556         * ksvg2/svg/SVGPolyElement.cpp:
   19557         (WebCore::SVGPolyElement::svgPolyTo):
   19558         * ksvg2/svg/SVGRadialGradientElement.cpp:
   19559         (WebCore::SVGRadialGradientElement::buildGradient):
   19560         * ksvg2/svg/SVGSVGElement.cpp:
   19561         (WebCore::SVGSVGElement::viewport):
   19562         (WebCore::SVGSVGElement::getCurrentTime):
   19563         * ksvg2/svg/SVGStopElement.cpp:
   19564         (WebCore::SVGStopElement::SVGStopElement):
   19565         (WebCore::SVGStopElement::parseMappedAttribute):
   19566         * ksvg2/svg/SVGStopElement.h:
   19567         * ksvg2/svg/SVGTransform.cpp:
   19568         (SVGTransform::translate):
   19569         (SVGTransform::scale):
   19570         * ksvg2/svg/SVGTransformDistance.cpp:
   19571         (WebCore::SVGTransformDistance::addToSVGTransform):
   19572         (WebCore::SVGTransformDistance::distance):
   19573         * ksvg2/svg/SVGTransformable.cpp:
   19574         (WebCore::SVGTransformable::parseTransformAttribute):
   19575 
   19576 2007-07-03  Anders Carlsson  <andersca (a] apple.com>
   19577 
   19578         Reviewed by Darin.
   19579 
   19580         <rdar://problem/5289718>
   19581         http://bugs.webkit.org/show_bug.cgi?id=14437
   19582         CrashTracer: [REGRESSION] 76 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 6 (14437)
   19583         
   19584         Based on a patch from Maxime Britto.
   19585         
   19586         * page/mac/WebCoreFrameBridge.mm:
   19587         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
   19588         If the script caused the frame to go away, return nil. This can only happen if a plugin in a subframe destroys
   19589         its frame.
   19590 
   19591         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
   19592         ASSERT that this is only called on the main frame.
   19593 
   19594 2007-07-03  John Sullivan  <sullivan (a] apple.com>
   19595 
   19596         Written by Darin, reviewed by me
   19597         
   19598         - fixed <rdar://problem/5249730> REGRESSION (Leopard, around 9A464): Safari opens the same local 
   19599           documents more than once due to canonicalization change
   19600 
   19601         * loader/mac/LoaderNSURLExtras.m:
   19602         (canonicalURL):
   19603         pass URL through KURL so we get KURL's version of canonicalization as well as
   19604         NSURLProtocol's version of canonicalization
   19605 
   19606 2007-07-03  Sam Weinig  <sam (a] webkit.org>
   19607 
   19608         Reviewed by Darin.
   19609 
   19610         Seventh round of fixes for implicit 64-32 bit conversion errors.
   19611         <rdar://problem/5292262>
   19612 
   19613         - Adds more narrowPrecision functions to FloatPoint, FloatSize and FloatRect.
   19614         - Changes over more implicit conversions to use new functions.
   19615 
   19616         * bindings/js/kjs_window.cpp:
   19617         (KJS::WindowFunc::callAsFunction):
   19618         * platform/graphics/FloatPoint.cpp:
   19619         (WebCore::FloatPoint::matrixTransform):
   19620         (WebCore::FloatPoint::narrowPrecision):
   19621         * platform/graphics/FloatPoint.h:
   19622         * platform/graphics/FloatRect.cpp:
   19623         (WebCore::FloatRect::narrowPrecision):
   19624         * platform/graphics/FloatRect.h:
   19625         * platform/graphics/FloatSize.cpp:
   19626         (WebCore::FloatSize::narrowPrecision):
   19627         * platform/graphics/FloatSize.h:
   19628         * platform/graphics/Path.cpp:
   19629         (WebCore::Path::createRoundedRectangle):
   19630         (WebCore::Path::createRectangle):
   19631         (WebCore::Path::createEllipse):
   19632         * platform/graphics/mac/ColorMac.mm:
   19633         (WebCore::nsColor):
   19634         * platform/graphics/mac/IconMac.mm:
   19635         (WebCore::Icon::paint):
   19636         * platform/graphics/svg/cg/CgSupport.cpp:
   19637         (WebCore::applyStrokeStyleToContext):
   19638         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   19639         (WebCore::CGShadingRefForRadialGradient):
   19640         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
   19641         (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
   19642         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
   19643         (WebCore::applyLuminanceToAlphaFilter):
   19644         (WebCore::applyExpandAlphatoGrayscaleFilter):
   19645         (WebCore::transformImageIntoGrayscaleMask):
   19646         * platform/mac/WebCoreTextRenderer.mm:
   19647         (WebCoreDrawTextAtPoint):
   19648         * rendering/RenderPath.cpp:
   19649         (WebCore::RenderPath::mapAbsolutePointToLocal):
   19650         * rendering/RenderSVGContainer.cpp:
   19651         (WebCore::RenderSVGContainer::calcViewport):
   19652         * rendering/RenderSVGImage.cpp:
   19653         (WebCore::RenderSVGImage::nodeAtPoint):
   19654         * rendering/RenderSVGText.cpp:
   19655         (WebCore::RenderSVGText::relativeBBox):
   19656 
   19657 2007-07-03  Anders Carlsson  <andersca (a] apple.com>
   19658 
   19659         Reviewed by Adam.
   19660 
   19661         <rdar://problem/5261523>
   19662         Crash playing MP11 on cnbc.com
   19663         
   19664         The WMP Netscape plugin still creates a window even when windowless mode is turned on. Work around this by
   19665         always removing the "windowlessvideo" parameter before passing it to the plugin.
   19666         According to http://msdn2.microsoft.com/en-us/library/bb249373.aspx, "The windowlessVideo property is not 
   19667         supported for Netscape Navigator. Setting a value for this property in Navigator may yield unexpected results."
   19668         
   19669         * plugins/win/PluginViewWin.cpp:
   19670         (WebCore::PluginViewWndProc):
   19671         (WebCore::PluginViewWin::paint):
   19672         (WebCore::PluginViewWin::invalidateRect):
   19673         (WebCore::PluginViewWin::determineQuirks):
   19674         (WebCore::PluginViewWin::setParameters):
   19675         (WebCore::PluginViewWin::PluginViewWin):
   19676         (WebCore::PluginViewWin::init):
   19677         * plugins/win/PluginViewWin.h:
   19678         (WebCore::):
   19679 
   19680 2007-07-03  Qing Zhao  <qing (a] staikos.net>
   19681 
   19682         Reviewed by George Staikos.
   19683 
   19684         Only draw sunken state for appropriate widgets. Not, for example, for
   19685         lineedits.
   19686 
   19687         * platform/qt/RenderThemeQt.cpp:
   19688         (WebCore::RenderThemeQt::applyTheme):
   19689 
   19690 2007-07-03  Antti Koivisto  <antti (a] apple.com>
   19691 
   19692         Reviewed by Maciej.
   19693         
   19694         REGRESSION: misplaced selection ring remains after link is no longer focused.
   19695         <rdar://problem/5205580>
   19696         
   19697         Fix placement of selection ring when part of the ring is in a different layer.
   19698 
   19699         * rendering/RenderFlow.cpp:
   19700         (WebCore::RenderFlow::addFocusRingRects): Get coordinates right when moving to a different layer.
   19701         * rendering/RenderObject.cpp:
   19702         (WebCore::RenderObject::setStyle): 
   19703         Don't reset state variables when not necessary.  When repaint() was called at the end of setSyle() it would
   19704         get repaint rects wrong in some cases.
   19705 
   19706 2007-07-03  Antti Koivisto  <antti (a] apple.com>
   19707 
   19708         Reviewed by Maciej.
   19709 
   19710         Blind fix for CrashTracer: [USER] 25 crashes in Safari at com.apple.WebCore: WebCore::Frame::document const + 6
   19711         <rdar://problem/5263939>
   19712         
   19713         No one has managed to reproduce this but it looks like null check is needed here. There are plausible ways
   19714         m_frame could be null for a live FrameView object.
   19715 
   19716         * page/FrameView.cpp:
   19717         (WebCore::FrameView::needsLayout):
   19718 
   19719 2007-07-02  Oliver Hunt  <oliver (a] apple.com>
   19720 
   19721         Reviewed by Darin.
   19722 
   19723         Fix for <rdar://problem/5098378> single-pixel image optimization needs to be rewritten to not depend on floating point bitmap
   19724         Tested by fast/replaced/image-solid-color-with-alpha.html
   19725 
   19726         Switch from float to byte based bitmap when pulling the color from 1x1 pixel images so
   19727         that we can use the single pixel image optimisation in WebKit/win.
   19728 
   19729         * platform/graphics/cg/ImageCG.cpp:
   19730         (WebCore::BitmapImage::checkForSolidColor):
   19731 
   19732 2007-07-02  Adam Roben  <aroben (a] apple.com>
   19733 
   19734         Fix Bug 14498: RenderContainer::positionForCoordinates contains an order of operations error
   19735         http://bugs.webkit.org/show_bug.cgi?id=14498
   19736 
   19737         There were two bugs:
   19738         1) xPos/yPos were flipped
   19739         2) + binds tighter than ?:, so the order of operations was incorrect
   19740 
   19741         Reviewed by Darin.
   19742 
   19743         Test: fast/inline-block/14498-positionForCoordinates.html
   19744 
   19745         * rendering/RenderContainer.cpp:
   19746         (WebCore::RenderContainer::positionForCoordinates):
   19747 
   19748 2007-07-02  Darin Adler  <darin (a] apple.com>
   19749 
   19750         Reviewed by Kevin Decker and Tim Hatcher.
   19751 
   19752         - fix <rdar://problem/5307906> some classes need finalize methods because
   19753           of non-trivial work done in dealloc methods
   19754 
   19755         * bindings/objc/DOMRGBColor.mm:
   19756         (+[DOMRGBColor initialize]): Added. Tells finalizer to run on main thread,
   19757         which is needed because we are sharing a CFDictionary here with no locking.
   19758 
   19759         * bridge/mac/WebCoreAXObject.mm:
   19760         (+[WebCoreAXObject initialize]): Added. Tells finalizer to run on main thread.
   19761         (-[WebCoreAXObject finalize]): Added. Calls detach.
   19762 
   19763         * WebCore.xcodeproj/project.pbxproj: Let Xcode do what it wants to do.
   19764 
   19765 2007-07-02  Sam Weinig  <sam (a] webkit.org>
   19766 
   19767         Reviewed by Darin.
   19768 
   19769         Sixth round of fixes for implicit 64-32 bit conversion errors.
   19770         <rdar://problem/5292262>
   19771 
   19772         Use new narrowPrecisionToFloat() and narrowPrecisionToCGFloat() where
   19773         appropriate.
   19774 
   19775         * html/CanvasRenderingContext2D.cpp:
   19776         (WebCore::CanvasRenderingContext2D::setShadow):
   19777         (WebCore::CanvasRenderingContext2D::applyShadow):
   19778         * html/CanvasStyle.cpp:
   19779         (WebCore::CanvasStyle::applyStrokeColor):
   19780         (WebCore::CanvasStyle::applyFillColor):
   19781         * ksvg2/svg/SVGAngle.cpp:
   19782         * ksvg2/svg/SVGAnimationElement.cpp:
   19783         (WebCore::SVGAnimationElement::parseKeyNumbers):
   19784         (WebCore::parseKeySplines):
   19785         (WebCore::SVGAnimationElement::handleTimerEvent):
   19786         (WebCore::SVGAnimationElement::updateAnimatedValueForElapsedSeconds):
   19787         * ksvg2/svg/SVGPatternElement.cpp:
   19788         (WebCore::SVGPatternElement::buildPattern):
   19789         * ksvg2/svg/SVGRadialGradientElement.cpp:
   19790         (WebCore::SVGRadialGradientElement::buildGradient):
   19791         * platform/graphics/cg/AffineTransformCG.cpp:
   19792         (WebCore::AffineTransform::AffineTransform):
   19793         (WebCore::AffineTransform::setMatrix):
   19794         (WebCore::AffineTransform::map):
   19795         (WebCore::AffineTransform::setA):
   19796         (WebCore::AffineTransform::setB):
   19797         (WebCore::AffineTransform::setC):
   19798         (WebCore::AffineTransform::setD):
   19799         (WebCore::AffineTransform::setE):
   19800         (WebCore::AffineTransform::setF):
   19801         (WebCore::AffineTransform::scale):
   19802         (WebCore::AffineTransform::rotate):
   19803         (WebCore::AffineTransform::translate):
   19804         (WebCore::AffineTransform::shear):
   19805 
   19806 2007-07-02  John Sullivan  <sullivan (a] apple.com>
   19807 
   19808         * page/mac/WebCoreFrameBridge.mm:
   19809         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
   19810         added a comment
   19811 
   19812 2007-07-02  Sam Weinig  <sam (a] webkit.org>
   19813 
   19814         Rubberstamped by Darin.
   19815 
   19816         Rename FloatConversionUtilities.h to FloatConversion.h.
   19817         Fix Win32 build.
   19818 
   19819         * WebCore.vcproj/WebCore.vcproj:
   19820         * WebCore.xcodeproj/project.pbxproj:
   19821         * platform/DeprecatedString.cpp:
   19822         * platform/FloatConversion.h: Copied from platform/FloatConversionUtilities.h.
   19823         * platform/FloatConversionUtilities.h: Removed.
   19824         * platform/StringImpl.cpp:
   19825 
   19826 2007-07-02  Sam Weinig  <sam (a] webkit.org>
   19827 
   19828         Reviewed by Darin.
   19829 
   19830         Fifth round of fixes for implicit 64-32 bit conversion errors.
   19831         <rdar://problem/5292262>
   19832 
   19833         Add toFloat() method to string classes and use it where appropriate.
   19834 
   19835         * WebCore.xcodeproj/project.pbxproj:
   19836         * css/cssparser.cpp:
   19837         (WebCore::CSSParser::lex):
   19838         * ksvg2/svg/SVGAngle.cpp:
   19839         (WebCore::SVGAngle::setValueAsString):
   19840         * platform/AtomicString.h:
   19841         (WebCore::AtomicString::toFloat):
   19842         * platform/DeprecatedString.cpp:
   19843         (WebCore::DeprecatedString::toFloat):
   19844         * platform/DeprecatedString.h:
   19845         * platform/FloatConversionUtilities.h: Added.
   19846         (WebCore::narrowPrecisionToFloat):
   19847         (WebCore::narrowPrecisionToCGFloat):
   19848         * platform/PlatformString.h:
   19849         * platform/String.cpp:
   19850         (WebCore::String::toFloat):
   19851         * platform/StringImpl.cpp:
   19852         (WebCore::StringImpl::toFloat):
   19853         * platform/StringImpl.h:
   19854 
   19855 2007-07-02  Sam Weinig  <sam (a] webkit.org>
   19856 
   19857         Reviewed by Kevin McCullough.
   19858 
   19859         Fourth round of fixes for implicit 64-32 bit conversion errors.
   19860         <rdar://problem/5292262>
   19861 
   19862         Use new piDouble and piFloat constants instead of M_PI.
   19863 
   19864         * html/CanvasRenderingContext2D.cpp:
   19865         (WebCore::CanvasRenderingContext2D::rotate):
   19866         * ksvg2/svg/SVGParserUtilities.cpp:
   19867         (WebCore::SVGPathParser::calculateArc):
   19868         * platform/graphics/Path.cpp:
   19869         (WebCore::pathLengthApplierFunction):
   19870         (WebCore::Path::createEllipse):
   19871         * platform/graphics/cg/GraphicsContextCG.cpp:
   19872         (WebCore::GraphicsContext::drawEllipse):
   19873         (WebCore::GraphicsContext::strokeArc):
   19874         * platform/graphics/cg/PDFDocumentImage.cpp:
   19875         (WebCore::PDFDocumentImage::setCurrentPage):
   19876         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
   19877         * rendering/RenderPath.cpp:
   19878         (WebCore::drawMarkerWithData):
   19879 
   19880 2007-07-01  Adam Roben  <aroben (a] apple.com>
   19881 
   19882         Clarify/fix {Shadow,BorderImage}ParseContext's memory management
   19883 
   19884         Prefast emitted warnings that drew my attention to
   19885         {Shadow,BorderImage}ParseContext::failed().  It turned out that these
   19886         methods were actually correct, but rather confusing. "failed" really
   19887         meant "abort and clean up" rather than "did you fail?", which was
   19888         unclear. However, once I figured that out, the "and clean up" part was
   19889         still a bit confusing, because all failed() did was to set a flag that
   19890         would later cause the ParseContext's members to be deleted in the
   19891         destructor. To clear this up, I've gotten rid of the failed() method
   19892         altogether. It always returned false, so I've replaced all calls to
   19893         it with the value false.
   19894 
   19895         I also noticed that the lifetime management of the ParseContexts'
   19896         members was in all cases confusing, and in some cases wrong. The
   19897         m_border{Top,Right,Bottom,Left} members of BorderImageParseContext
   19898         were leaked whenever a border-image property was successfully parsed.
   19899         I fixed that by holding these members in OwnPtrs. The
   19900         CSSPrimitiveValue members of {Shadow,BorderImage}ParseContext, which
   19901         inherit from Shared, were being explicitly deleted, which is not a
   19902         safe way to manage the lifetime of objects that inherit from Shared.
   19903         To fix this, I put those members inside RefPtrs. These two changes
   19904         allowed me to remove the destructors entirely.
   19905 
   19906         Reviewed by Darin.
   19907 
   19908         All regression tests pass.
   19909 
   19910         * css/cssparser.cpp:
   19911         (WebCore::ShadowParseContext::commitValue): Use .release() to avoid
   19912         ref-count churn.
   19913         (WebCore::ShadowParseContext::commitLength): Use a RefPtr for the new
   19914         value to avoid a leak.
   19915         (WebCore::CSSParser::parseShadow): Use 'false' instead of
   19916         'context.failed()', and use .release() to avoid ref-count churn.
   19917         (WebCore::BorderImageParseContext::commitWidth): Updated to use
   19918         OwnPtr.
   19919         (WebCore::CSSParser::parseBorderImage): Use 'false' instead of
   19920         'context.failed'.
   19921 
   19922 2007-07-01  Anders Carlsson  <andersca (a] apple.com>
   19923 
   19924         Reviewed by John Sullivan.
   19925 
   19926         <rdar://problem/5297146>
   19927         Crash in Mail at WebCore::Frame::setUserStyleSheetLocation (reproducible w/ particular message)
   19928         
   19929         * loader/Cache.cpp:
   19930         (WebCore::Cache::requestResource):
   19931         Only insert the resource in the LRU list if the cache is enabled.
   19932         
   19933         (WebCore::Cache::insertInLRUList):
   19934         (WebCore::Cache::resourceAccessed):
   19935         Assert that the resource is in the cache.
   19936 
   19937 2007-07-01  Darin Adler  <darin (a] apple.com>
   19938 
   19939         * css/tokenizer.flex: Rolled out the fix for 14453.
   19940         The layout test wasn't passing. We'll try again.
   19941 
   19942 2007-07-01  Adam Roben  <aroben (a] apple.com>
   19943 
   19944         Fix a crash in ~PluginViewWin()
   19945 
   19946         This crash was introduced in r23827.
   19947 
   19948         Reviewed by Anders.
   19949 
   19950         Fixes dom/html/level2/html/HTMLAnchorElement01.html
   19951 
   19952         * plugins/win/PluginViewWin.cpp:
   19953         (WebCore::PluginViewWin::~PluginViewWin): Allow m_plugin to be null.
   19954 
   19955 2007-07-01  Rob Buis  <buis (a] kde.org>
   19956 
   19957         Reviewed by Darin.
   19958 
   19959         http://bugs.webkit.org/show_bug.cgi?id=14453
   19960         REGRESSION: www.nzherald.co.nz almost all the formating is gone
   19961  
   19962         * css/tokenizer.flex: Allow hex colors with 2, 4, or 5 hex digits.
   19963 
   19964 2007-07-01  Sam Weinig  <sam (a] webkit.org>
   19965 
   19966         Reviewed by Oliver.
   19967 
   19968         Third round of implicit 64-32 bit conversion errors fixes.
   19969         <rdar://problem/5292262>
   19970 
   19971         - Use new CSSPrimitiveValue::getDoubleValue() and CSSPrimitiveValue::getIntValue()
   19972           methods instead of CSSPrimitiveValue::getFloatValue() where appropriate.
   19973 
   19974         * css/CSSPrimitiveValue.cpp:
   19975         (WebCore::CSSPrimitiveValue::computeLengthInt):
   19976         (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
   19977         (WebCore::CSSPrimitiveValue::computeLengthShort):
   19978         (WebCore::CSSPrimitiveValue::computeLengthFloat):
   19979         (WebCore::CSSPrimitiveValue::computeLengthDouble):
   19980         (WebCore::CSSPrimitiveValue::getDoubleValue):
   19981         * css/CSSPrimitiveValue.h:
   19982         (WebCore::CSSPrimitiveValue::getDoubleValue):
   19983         (WebCore::CSSPrimitiveValue::getFloatValue):
   19984         (WebCore::CSSPrimitiveValue::getIntValue):
   19985         * css/Counter.h:
   19986         (WebCore::Counter::listStyleNumber):
   19987         * css/MediaQueryEvaluator.cpp:
   19988         (WebCore::parseAspectRatio):
   19989         * css/cssparser.cpp:
   19990         (WebCore::BorderImageParseContext::commitBorderImage):
   19991         * css/cssstyleselector.cpp:
   19992         (WebCore::convertToLength):
   19993         (WebCore::applyCounterList):
   19994         (WebCore::CSSStyleSelector::applyProperty):
   19995         (WebCore::CSSStyleSelector::mapBackgroundSize):
   19996         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
   19997         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
   19998         * html/HTMLTableElement.cpp:
   19999         (WebCore::HTMLTableElement::parseMappedAttribute):
   20000         * ksvg2/css/SVGCSSStyleSelector.cpp:
   20001         (WebCore::CSSStyleSelector::applySVGProperty):
   20002         * ksvg2/misc/KCanvasRenderingStyle.cpp:
   20003         (WebCore::KSVGPainterFactory::cssPrimitiveToLength):
   20004         (WebCore::KSVGPainterFactory::dashArrayFromRenderingStyle):
   20005 
   20006 2007-07-01  Pamela Greene  <pamg.bugs (a] gmail.com>
   20007 
   20008         Reviewed by Darin.
   20009 
   20010         Fix for <http://bugs.webkit.org/show_bug.cgi?id=14320>
   20011         Bug 14320: <canvas> gradient stops at identical offsets are applied in the wrong order
   20012         <rdar://problem/5290084>
   20013 
   20014         Use std::stable_sort() instead of qsort() to sort gradient stops.
   20015         Adjust the comparison function accordingly.
   20016 
   20017         * html/CanvasGradient.cpp:
   20018         (WebCore::compareStops):
   20019         (WebCore::CanvasGradient::findStop):
   20020 
   20021 2007-07-01  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   20022 
   20023         Reviewed by Darin.
   20024 
   20025         m_usesPageCache was not initialized. As the b/f cache is only
   20026         implemented in the Mac port and WebView.mm is taking care of calling
   20027         Settings::setUsesPageCache I decided to make it false by default.
   20028 
   20029         * page/Settings.cpp:
   20030         (WebCore::Settings::Settings): m_usesPageCache was not initialized
   20031 
   20032 2007-07-01  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   20033 
   20034         Reviewed by Darin.
   20035 
   20036         Inherited- and NonInheritedFlags is a bit field. But for comparsion
   20037         the other part of the union _iflags/_niflags is used for comparions.
   20038         This will compare 5 uninitialized bits of _iflags and 22 of _niflags.
   20039         Make sure the unused bits have a specified value.
   20040 
   20041         * ksvg2/css/SVGRenderStyle.h:
   20042         (WebCore::SVGRenderStyle::setBitDefaults): Make sure the unused bits
   20043         have a value as well.
   20044 
   20045 2007-06-30  Adam Roben  <aroben (a] apple.com>
   20046 
   20047         Compile WebCore with /W4 on Windows
   20048 
   20049         Some more warnings were disabled globally, including assignment within
   20050         a conditional, unused variable, and various warnings related to
   20051         inability to instantiate opaque structs.
   20052 
   20053         In addition, the "unreachable code" warning was turned off for
   20054         CSSGrammar.cpp and XPathGrammar.cpp.
   20055 
   20056         Reviewed by Oliver.
   20057 
   20058         * WebCore.vcproj/WebCore.vcproj:
   20059 
   20060 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20061 
   20062         Give CString an equality operator to fix a bug in HTMLFormElement::formData
   20063 
   20064         The bug was spotted by MSVC /W4. The problem was that we were comparing
   20065         a CString to a char* using ==, but CString had no equality operator.
   20066         The result was that the CString was being cast to a const char* and a
   20067         pointer comparison was being done, which would (essentially) always
   20068         return false.
   20069 
   20070         There are two parts to the fix: get rid of CString's const char*
   20071         casting operator, and add an equality operator. Previous uses of the
   20072         casting operator have been changed to use CString::data().
   20073 
   20074         Test: http/misc/isindex-formdata.html
   20075 
   20076         Reviewed by Oliver.
   20077 
   20078         * dom/XMLTokenizer.cpp:
   20079         (WebCore::parseXMLDocumentFragment):
   20080         * html/HTMLDocument.cpp:
   20081         (WebCore::HTMLDocument::determineParseMode):
   20082         * html/HTMLFormElement.cpp:
   20083         (WebCore::HTMLFormElement::formData):
   20084         * loader/TextResourceDecoder.cpp:
   20085         (WebCore::TextResourceDecoder::checkForCSSCharset):
   20086         * platform/CString.cpp:
   20087         (WebCore::operator==):
   20088         * platform/CString.h:
   20089         * platform/KURL.cpp:
   20090         (WebCore::encodeRelativeString):
   20091         * platform/StringImpl.cpp:
   20092         (WebCore::StringImpl::toDouble):
   20093         * platform/network/cf/FormDataStreamCFNet.cpp:
   20094         (WebCore::setHTTPBody):
   20095         * platform/network/mac/FormDataStreamMac.mm:
   20096         (WebCore::setHTTPBody):
   20097         * platform/win/ClipboardUtilitiesWin.cpp:
   20098         (WebCore::markupToCF_HTML):
   20099         * plugins/win/PluginPackageWin.cpp:
   20100         (WebCore::splitString):
   20101         * plugins/win/PluginStreamWin.cpp:
   20102         (WebCore::PluginStreamWin::startStream):
   20103         (WebCore::PluginStreamWin::destroyStream):
   20104         (WebCore::PluginStreamWin::sendJavaScriptStream):
   20105         (WebCore::PluginStreamWin::didFinishLoading):
   20106         * plugins/win/PluginViewWin.cpp:
   20107         (WebCore::PluginViewWin::start):
   20108         (WebCore::createUTF8String):
   20109         (WebCore::PluginViewWin::userAgent):
   20110         * xml/XSLStyleSheet.cpp:
   20111         (WebCore::XSLStyleSheet::locateStylesheetSubResource):
   20112         * xml/XSLTProcessor.cpp:
   20113         (WebCore::xsltParamArrayFromParameterMap):
   20114 
   20115 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20116 
   20117         Initialize two variables that MSVC /W4 isn't smart enough to realize always get initialized
   20118 
   20119         Reviewed by John.
   20120 
   20121         * editing/Editor.cpp:
   20122         (WebCore::Editor::advanceToNextMisspelling):
   20123         * html/HTMLParser.cpp:
   20124 
   20125 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20126 
   20127         Fix some possibly unitialized variables found by MSVC /W4
   20128 
   20129         Reviewed by John.
   20130 
   20131         * rendering/bidi.cpp:
   20132         (WebCore::RenderBlock::layoutInlineChildren):
   20133 
   20134 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20135 
   20136         Remove bogus cast found by MSVC /W4
   20137 
   20138         Reviewed by John and Oliver.
   20139 
   20140         * ksvg2/css/SVGCSSParser.cpp:
   20141         (WebCore::CSSParser::parseSVGValue):
   20142 
   20143 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20144 
   20145         Remove unused local functions uncovered by MSVC /W4
   20146 
   20147         Reviewed by John and Oliver.
   20148 
   20149         * platform/win/SearchPopupMenuWin.cpp:
   20150         * rendering/RenderText.cpp:
   20151 
   20152 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20153 
   20154         Don't take the address of temporary values to appease MSVC /W4
   20155 
   20156         Reviewed by Oliver.
   20157 
   20158         No regression test possible.
   20159 
   20160         * platform/win/PopupMenuWin.cpp:
   20161         (WebCore::PopupMenu::invalidateItem):
   20162         (WebCore::PopupMenu::valueChanged):
   20163         (WebCore::PopupWndProc):
   20164         * platform/win/ScrollViewWin.cpp:
   20165         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   20166         * platform/win/UniscribeController.cpp:
   20167         (WebCore::UniscribeController::shapeAndPlaceItem):
   20168         * platform/win/WidgetWin.cpp:
   20169         (WebCore::Widget::invalidateRect):
   20170 
   20171 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20172 
   20173         Make an int -> UINT conversion explicit that MSVC /W4 complains about
   20174 
   20175         Reviewed by John and Oliver.
   20176 
   20177         No regression test possible.
   20178 
   20179         * platform/win/SoundWin.cpp:
   20180 
   20181 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20182 
   20183         Remove unreachable code uncovered by MSVC /W4
   20184 
   20185         Reviewed by Oliver.
   20186 
   20187         No regression test possible.
   20188 
   20189         * html/CanvasRenderingContext2D.cpp:
   20190         (WebCore::CanvasRenderingContext2D::createPattern):
   20191         * html/HTMLAnchorElement.cpp:
   20192         (WebCore::HTMLAnchorElement::isLiveLink):
   20193         * html/HTMLElement.cpp:
   20194         (WebCore::HTMLElement::contentEditable):
   20195         * platform/DeprecatedString.cpp:
   20196         (WebCore::allocateHandle):
   20197         (WebCore::freeHandle):
   20198         * plugins/win/npapi.cpp:
   20199         (pluginViewForInstance):
   20200         * rendering/RenderImage.cpp:
   20201         (WebCore::RenderImage::isWidthSpecified):
   20202         (WebCore::RenderImage::isHeightSpecified):
   20203         * rendering/RenderTheme.cpp:
   20204         (WebCore::RenderTheme::isControlStyled):
   20205 
   20206 2007-06-29  John Sullivan  <sullivan (a] apple.com>
   20207 
   20208         Reviewed by Oliver Hunt.
   20209         
   20210         - WebCore support for accessing the set of rectangles that encompass the selected text
   20211         
   20212         * page/Frame.h:
   20213         * page/Frame.cpp:
   20214         (WebCore::Frame::selectionTextRects):
   20215         new function, fills in a passed Vector with the line box rects that represent the selected range
   20216 
   20217         * rendering/RenderText.cpp:
   20218         (WebCore::RenderText::addLineBoxRects):
   20219         fixed off-by-one bug involving use of the confusing function InlineTextBox::end()
   20220 
   20221         * WebCore.exp:
   20222         exported symbol for this new function
   20223 
   20224 2007-06-29  Justin Garcia  <justin.garcia (a] apple.com>
   20225 
   20226         Reviewed by Harrison.
   20227         
   20228         <rdar://problem/5299513> REGRESSION: In Mail, a crash occurs when attempting to undo a newly created To Do
   20229         
   20230         Rolled out a change made in r23787.
   20231         
   20232         * editing/DeleteSelectionCommand.cpp:
   20233         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
   20234 
   20235 2007-06-29  Geoffrey Garen  <ggaren (a] apple.com>
   20236 
   20237         Reviewed by Darin Adler, Anders Carlsson.
   20238         
   20239         Fixed <rdar://problem/5303567> REGRESSION: XMLHttpRequest.responseXML 
   20240         returns NULL if response MIME type is not XML -- breaks Wikipedia widget
   20241         
   20242         The spec says that responseXML must return null for any HTTP response
   20243         with a non-XML MIME type. Technically, that leaves non-HTTP responses
   20244         free to do whatever they want.
   20245 
   20246         * xml/xmlhttprequest.cpp:
   20247         (WebCore::XMLHttpRequest::getResponseXML): Only return null for non-XML
   20248         MIME types if the response was HTTP.
   20249 
   20250 2007-06-29  Sam Weinig  <sam (a] webkit.org>
   20251 
   20252         Reviewed by Darin.
   20253 
   20254         Second pass at fixing implicit 64-32 bit conversion errors.
   20255         <rdar://problem/5292262>
   20256 
   20257         - Use new JSValue::toFloat() method instead of toNumber() where
   20258           appropriate.
   20259 
   20260         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   20261         (WebCore::JSCanvasRenderingContext2D::setFillColor):
   20262         (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
   20263         (WebCore::JSCanvasRenderingContext2D::strokeRect):
   20264         (WebCore::JSCanvasRenderingContext2D::drawImage):
   20265         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
   20266         (WebCore::JSCanvasRenderingContext2D::setShadow):
   20267         * bindings/js/JSHTMLSelectElementCustom.cpp:
   20268         (WebCore::JSHTMLSelectElement::remove):
   20269         * bindings/js/JSSVGMatrixCustom.cpp:
   20270         (WebCore::JSSVGMatrix::rotateFromVector):
   20271         * bindings/js/kjs_events.cpp:
   20272         (KJS::JSClipboardPrototypeFunction::callAsFunction):
   20273         * bindings/scripts/CodeGeneratorJS.pm:
   20274         * ksvg2/svg/SVGScriptElement.cpp:
   20275         (WebCore::SVGScriptElement::executeScript):
   20276 
   20277 2007-06-29  Adele Peterson  <adele (a] apple.com>
   20278 
   20279         Rolling out fix for <rdar://problem/5301322> since it broke layout tests.
   20280 
   20281         * html/HTMLInputElement.h:
   20282         * html/HTMLTextAreaElement.h:
   20283 
   20284 2007-06-29  Geoffrey Garen  <ggaren (a] apple.com>
   20285 
   20286         Reviewed by Oliver Hunt.
   20287 
   20288         Fixed <rdar://problem/4962298> REGRESSION: Synchronous XHR for missing 
   20289         local file throws exception -- breaks Wikipedia widget
   20290 
   20291         * WebCore.xcodeproj/project.pbxproj:
   20292         * xml/xmlhttprequest.cpp:
   20293         (WebCore::XMLHttpRequest::send): Don't throw exceptions for local files.
   20294 
   20295 2007-06-29  Ada Chan  <adachan (a] apple.com>
   20296 
   20297         Reviewed by Adam.
   20298 
   20299         Fixed a previous fix to a signed/unsigned mismatch.
   20300 
   20301         * plugins/win/PluginPackageWin.cpp:
   20302         (WebCore::splitString):
   20303 
   20304 2007-06-29  Adele Peterson  <adele (a] apple.com>
   20305 
   20306         Reviewed by Ada and Kevin McCullough.
   20307 
   20308         Fix for <rdar://problem/5301322> REGRESSION: Select All selects the whole page when used in readonly textareas
   20309 
   20310         Implemented canSelectAll and selectAll for text fields and textareas, since they're special cases even when they're not editable.
   20311 
   20312         Tests:
   20313         fast/forms/input-readonly-select-all.html
   20314         fast/forms/textarea-readonly-select-all.html
   20315 
   20316         * html/HTMLInputElement.h:
   20317         (WebCore::HTMLInputElement::canSelectAll):
   20318         (WebCore::HTMLInputElement::selectAll):
   20319         * html/HTMLTextAreaElement.h:
   20320         (WebCore::HTMLTextAreaElement::canSelectAll):
   20321         (WebCore::HTMLTextAreaElement::selectAll):
   20322 
   20323 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20324 
   20325         Build fix
   20326 
   20327         This is what happens when you test your patch on two OSs and then
   20328         commit from the wrong one.
   20329 
   20330         * rendering/RenderTextControl.cpp:
   20331         (WebCore::RenderTextControl::valueChanged):
   20332         (WebCore::RenderTextControl::itemText):
   20333         (WebCore::RenderTextControl::itemIsSeparator):
   20334 
   20335 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20336 
   20337         Start compiling WebCore with /W3 under MSVC
   20338 
   20339         One warning was globally disabled: implicit conversion of int to bool.
   20340 
   20341         Reviewed by Darin.
   20342 
   20343         * WebCore.vcproj/WebCore.vcproj:
   20344 
   20345 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20346 
   20347         Turn DeprecatedStringData's copy constructor into a static method to appease MSVC /W3
   20348 
   20349         DeprecatedStringData now has no public copy constructor. The single
   20350         call to the old one has been replaced with a call to the new
   20351         DeprecatedStringData::createAndAdopt static method.
   20352 
   20353         Reviewed by Darin.
   20354 
   20355         All regression tests pass.
   20356 
   20357         * platform/DeprecatedString.cpp:
   20358         (WebCore::DeprecatedStringData::createAndAdopt):
   20359         (WebCore::DeprecatedStringData::adopt):
   20360         (WebCore::DeprecatedString::detachIfInternal):
   20361         * platform/DeprecatedString.h:
   20362 
   20363 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20364 
   20365         Fix more signed/unsigned mismatches uncovered by MSVC /W3
   20366 
   20367         Reviewed by John.
   20368 
   20369         No regression tests possible.
   20370 
   20371         * platform/network/cf/ResourceResponseCFNet.cpp:
   20372         (WebCore::filenameHasSaneExtension):
   20373         * platform/win/FontDataWin.cpp:
   20374         (WebCore::FontData::containsCharacters):
   20375         * platform/win/PlatformScrollBarSafari.cpp:
   20376         (WebCore::):
   20377         * platform/win/UniscribeController.cpp:
   20378         (WebCore::UniscribeController::advance):
   20379         (WebCore::UniscribeController::shapeAndPlaceItem):
   20380         * platform/win/WebCoreTextRenderer.cpp:
   20381         (WebCore::doDrawTextAtPoint):
   20382         * plugins/win/PluginDatabaseWin.cpp:
   20383         (WebCore::parseVersionString):
   20384         * plugins/win/PluginPackageWin.cpp:
   20385         (WebCore::splitString):
   20386         * plugins/win/PluginViewWin.cpp:
   20387         (WebCore::freeStringArray):
   20388         (WebCore::PluginViewWin::invalidateTimerFired):
   20389 
   20390 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20391 
   20392         Change PopupMenuClient::listSize to return an int to appease warnings from MSVC /W3
   20393 
   20394         Reviewed by John.
   20395 
   20396         No regression test possible.
   20397 
   20398         * html/HTMLSelectElement.cpp:
   20399         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
   20400         * platform/PopupMenuClient.h:
   20401         * platform/win/PopupMenuWin.cpp:
   20402         (WebCore::PopupMenu::calculatePositionAndSize):
   20403         (WebCore::PopupMenu::focusFirst):
   20404         (WebCore::PopupMenu::focusLast):
   20405         (WebCore::PopupMenu::down):
   20406         (WebCore::PopupMenu::up):
   20407         (WebCore::PopupMenu::paint):
   20408         * rendering/RenderMenuList.cpp:
   20409         * rendering/RenderMenuList.h:
   20410         * rendering/RenderTextControl.cpp:
   20411         * rendering/RenderTextControl.h:
   20412 
   20413 2007-06-29  Adam Roben  <aroben (a] apple.com>
   20414 
   20415         Fix two typos spotted by MSVC /W3
   20416 
   20417         Both typos were a semicolon following the condition of an if. This
   20418         would cause the intended body of the if to always execute.
   20419 
   20420         Unfortunately neither of these fixes are testable.
   20421         BackForwardList::goForward is only called from WebBackForwardList, and
   20422         the createDragImageFromImage bug would only manifest itself when
   20423         CreateCompatibleDC failed.
   20424 
   20425         Reviewed by Mark.
   20426 
   20427         * history/BackForwardList.cpp:
   20428         (WebCore::BackForwardList::goForward):
   20429         * platform/win/DragImageWin.cpp:
   20430         (WebCore::createDragImageFromImage):
   20431 
   20432 2007-06-29  Adam Treat  <adam (a] staikos.net>
   20433 
   20434         Reviewed by george Staikos.
   20435 
   20436         Support horizontal and vertical scroll, and set the right units.
   20437 
   20438         * platform/qt/WheelEventQt.cpp:
   20439         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   20440 
   20441 2007-06-28  Adam Roben  <aroben (a] apple.com>
   20442 
   20443         Get WebCore compiling with /W2 on Windows
   20444 
   20445         Reviewed by Steve.
   20446 
   20447         No regression tests affected.
   20448 
   20449         * WebCore.vcproj/WebCore.vcproj: Turn the warning level up to 2, and
   20450         disable two warnings: implicit int <=> float conversion, and class vs.
   20451         struct inconsistency.
   20452         * dom/CharacterData.cpp:
   20453         (WebCore::CharacterData::deleteData): Cast to int before negating.
   20454         * loader/Cache.cpp:
   20455         (WebCore::Cache::remove): Ditto.
   20456         * platform/graphics/Path.cpp:
   20457         (WebCore::pathLengthApplierFunction): Consistently use floats.
   20458         * platform/graphics/cg/GraphicsContextCG.cpp:
   20459         (WebCore::GraphicsContext::drawEllipse): Ditto.
   20460         * platform/win/GraphicsContextWin.cpp:
   20461         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar): Ditto.
   20462 
   20463 2007-06-28  Geoffrey Garen  <ggaren (a] apple.com>
   20464 
   20465         Reviewed by Maciej Stachowiak.
   20466         
   20467         Fixed <rdar://problem/5299005> DOM timers fire without a local autorelease 
   20468         pool => pathologically high high water mark
   20469         
   20470         I couldn't measure any performance problems with iBench HTML or PLT.
   20471 
   20472         * WebCore.xcodeproj/project.pbxproj: Changed .cpp file to be ObjC++.
   20473         * platform/mac/SharedTimerMac.cpp:
   20474         (WebCore::timerFired): Added autorelease pool.
   20475 
   20476 2007-06-28  Mitz Pettel  <mitz (a] webkit.org>
   20477 
   20478         Reviewed by Beth.
   20479 
   20480         - fix http://bugs.webkit.org/show_bug.cgi?id=14118
   20481           ASSERTION FAILED: !needsLayout() seen again
   20482 
   20483         Test: fast/dynamic/recursive-layout.html
   20484 
   20485         * page/FrameView.cpp:
   20486         (WebCore::FrameView::layout): Removed the midLayout guards around
   20487         the calls to invalidateSelection() and updateWidgetPositions(). Those
   20488         calls may dirty the layout, but in that case they also update it, so
   20489         they should be allowed to do it. Added an ASSERT to make sure that when
   20490         they return, the root is not marked for layout.
   20491 
   20492 2007-06-28  Sam Weinig  <sam (a] webkit.org>
   20493 
   20494         Rubberstamped by Adam Roben.
   20495 
   20496         Roll out r23861.  It caused the buildbot to fail on intel.
   20497 
   20498         * page/Page.cpp:
   20499         (WebCore::Page::goToItem):
   20500 
   20501 2007-06-26  Maxime Britto  <mbritto (a] pleyo.com>
   20502 
   20503         Reviewed by Geoff.
   20504 
   20505         Patch for http://bugs.webkit.org/show_bug.cgi?id=13038
   20506         ASSERTION FAILED: item->target().isEmpty() || m_mainFrame->tree()->find(item->target()) == m_mainFrame
   20507 
   20508         Modification of an ASSERT on goToItem related to go back/forward in
   20509         history.Don't need to check the frameset if the target is _blank.
   20510 
   20511          * page/Page.cpp:
   20512          (WebCore::Page::goToItem):
   20513 
   20514 2007-06-28  Anders Carlsson  <andersca (a] apple.com>
   20515 
   20516         Reviewed by Oliver.
   20517 
   20518         <rdar://problem/5234139>
   20519         <object> with PNG src rendered as image document.
   20520         
   20521         Complete the URL before passing it to the frame loader client.
   20522         
   20523         * html/HTMLObjectElement.cpp:
   20524         (WebCore::HTMLObjectElement::isImageType):
   20525 
   20526 2007-06-28  Rob Buis  <buis (a] kde.org>
   20527 
   20528         Reviewed by Maciej.
   20529 
   20530         http://bugs.webkit.org/show_bug.cgi?id=14373
   20531         CSS1: selectors (classes and IDs) cannot start with a dash or with a digit
   20532 
   20533         Make sure the id selector validates against the CSS2.1 identfier
   20534         definition, not the hexcolor/HASH definition.
   20535 
   20536         * css/CSSGrammar.y:
   20537         * css/cssparser.cpp:
   20538         (WebCore::CSSParser::lex):
   20539         (WebCore::CSSParser::text):
   20540         * css/tokenizer.flex:
   20541 
   20542 2007-06-28  Simon Hausmann  <hausmann (a] kde.org>
   20543 
   20544         Reviewed by Zack.
   20545 
   20546         Implemented PasteboardQt::writeSelection to copy the selected text into the Clipboard as well as PasteboardQt::plainText to retrieve plain text from the clipboard for pasting for example into form fields.
   20547 
   20548         * platform/qt/PasteboardQt.cpp:
   20549         (WebCore::Pasteboard::writeSelection):
   20550 
   20551 2007-06-28  Antti Koivisto  <antti (a] apple.com>
   20552 
   20553         Reviewed by Mitz.
   20554         
   20555         Fix http://bugs.webkit.org/show_bug.cgi?id=14332
   20556         Bug 14332: REGRESSION (r21145): <td> width ignored
   20557         <rdar://problem/5290123>
   20558         
   20559         Cells in table with non-zero cellpadding are not considered empty.
   20560 
   20561         * rendering/AutoTableLayout.cpp:
   20562         (WebCore::AutoTableLayout::recalcColumn):
   20563 
   20564 2007-06-28  Adam Roben  <aroben (a] apple.com>
   20565 
   20566         Fix <rdar://problem/5300455> Prefast: typo in RenderBlock::paintObject
   20567 
   20568         Reviewed by Hyatt.
   20569 
   20570         No layout test possible, as this bug didn't have any effect since
   20571         "bool & bool" has the same value as "bool && bool"
   20572 
   20573         * rendering/RenderBlock.cpp:
   20574         (WebCore::RenderBlock::paintObject): Changed & to &&.
   20575 
   20576 2007-06-28  Adam Roben  <aroben (a] apple.com>
   20577 
   20578         Fix <rdar://problem/5300443> word-break and -webkit-user-modify allow any value
   20579 
   20580         The bug was caused by two typos found by prefast.
   20581 
   20582         Reviewed by Hyatt.
   20583 
   20584         * css/cssparser.cpp:
   20585         (WebCore::CSSParser::parseValue): Fixed typos.
   20586 
   20587 2007-06-20  Matt Perry  <mpComplete (a] gmail.com>
   20588 
   20589         Reviewed by Adam.
   20590 
   20591         - Fix http://bugs.webkit.org/show_bug.cgi?id=14251:
   20592           onchange handler for select controls doesn't fire when changing via keyboard
   20593 
   20594         * html/HTMLSelectElement.cpp:
   20595         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Got rid of
   20596         a call to saveLastSelection in the "Enter" key handler for select
   20597         controls that was preventing onchange from firing.
   20598 
   20599 2007-06-27  Sam Weinig  <sam (a] webkit.org>
   20600 
   20601         Fix Gdk, Qt, and Win32 builds.
   20602 
   20603         * WebCore.pro:
   20604         * WebCore.vcproj/WebCore.vcproj:
   20605 
   20606 2007-06-27  Sam Weinig  <sam (a] webkit.org>
   20607 
   20608         Reviewed by Geoff.
   20609 
   20610         Patch for http://bugs.webkit.org/show_bug.cgi?id=14319
   20611         Move the Selection object out of the JS bindings
   20612 
   20613         - Renames JS Object Selection to DOMSelection to avoid a name
   20614           conflict.
   20615 
   20616         * DerivedSources.make:
   20617         * WebCore.xcodeproj/project.pbxproj:
   20618         * bindings/js/kjs_window.cpp:
   20619         (KJS::WindowPrivate::WindowPrivate):
   20620         (KJS::Window::mark):
   20621         (KJS::Window::clearHelperObjectProperties):
   20622         (KJS::WindowFunc::callAsFunction):
   20623         (KJS::Window::disconnectFrame):
   20624         * bindings/js/kjs_window.h:
   20625         (KJS::Window::):
   20626         * page/DOMSelection.cpp: Added.
   20627         (WebCore::DOMSelection::DOMSelection):
   20628         (WebCore::DOMSelection::frame):
   20629         (WebCore::DOMSelection::disconnectFrame):
   20630         (WebCore::DOMSelection::anchorNode):
   20631         (WebCore::DOMSelection::baseNode):
   20632         (WebCore::DOMSelection::anchorOffset):
   20633         (WebCore::DOMSelection::baseOffset):
   20634         (WebCore::DOMSelection::focusNode):
   20635         (WebCore::DOMSelection::extentNode):
   20636         (WebCore::DOMSelection::focusOffset):
   20637         (WebCore::DOMSelection::extentOffset):
   20638         (WebCore::DOMSelection::isCollapsed):
   20639         (WebCore::DOMSelection::type):
   20640         (WebCore::DOMSelection::rangeCount):
   20641         (WebCore::DOMSelection::collapse):
   20642         (WebCore::DOMSelection::collapseToEnd):
   20643         (WebCore::DOMSelection::collapseToStart):
   20644         (WebCore::DOMSelection::empty):
   20645         (WebCore::DOMSelection::setBaseAndExtent):
   20646         (WebCore::DOMSelection::setPosition):
   20647         (WebCore::DOMSelection::modify):
   20648         (WebCore::DOMSelection::getRangeAt):
   20649         (WebCore::DOMSelection::removeAllRanges):
   20650         (WebCore::DOMSelection::addRange):
   20651         (WebCore::DOMSelection::toString):
   20652         * page/DOMSelection.h: Added.
   20653         * page/DOMSelection.idl: Added.
   20654         * page/DOMWindow.cpp:
   20655         (WebCore::DOMWindow::disconnectFrame):
   20656         (WebCore::DOMWindow::getSelection):
   20657         * page/DOMWindow.h:
   20658         * page/DOMWindow.idl:
   20659 
   20660 2007-06-27  Sam Weinig  <sam (a] webkit.org>
   20661 
   20662         Reviewed by Maciej.
   20663 
   20664         2nd patch for http://bugs.webkit.org/show_bug.cgi?id=14111
   20665         Autogenerate Event JS binding
   20666 
   20667         - Cleanup kjs_events
   20668 
   20669         * bindings/js/kjs_events.cpp:
   20670         (WebCore::JSAbstractEventListener::JSAbstractEventListener):
   20671         (WebCore::JSAbstractEventListener::handleEvent):
   20672         (WebCore::JSAbstractEventListener::isHTMLEventListener):
   20673         (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
   20674         (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
   20675         (WebCore::JSUnprotectedEventListener::listenerObj):
   20676         (WebCore::JSUnprotectedEventListener::windowObj):
   20677         (WebCore::JSUnprotectedEventListener::clearWindowObj):
   20678         (WebCore::JSUnprotectedEventListener::mark):
   20679         (WebCore::JSEventListener::JSEventListener):
   20680         (WebCore::JSEventListener::~JSEventListener):
   20681         (WebCore::JSEventListener::listenerObj):
   20682         (WebCore::JSEventListener::windowObj):
   20683         (WebCore::JSEventListener::clearWindowObj):
   20684         (WebCore::JSLazyEventListener::JSLazyEventListener):
   20685         (WebCore::JSLazyEventListener::listenerObj):
   20686         (WebCore::JSLazyEventListener::parseCode):
   20687         (WebCore::getNodeEventListener):
   20688         (WebCore::JSClipboard::JSClipboard):
   20689         (WebCore::JSClipboard::getValueProperty):
   20690         (WebCore::JSClipboard::putValueProperty):
   20691         (WebCore::JSClipboardPrototypeFunction::callAsFunction):
   20692         (WebCore::toJS):
   20693         (WebCore::toClipboard):
   20694         * bindings/js/kjs_events.h:
   20695         (WebCore::JSClipboard::classInfo):
   20696         (WebCore::JSClipboard::impl):
   20697         * bindings/js/kjs_window.h:
   20698         * ksvg2/events/JSSVGLazyEventListener.h:
   20699 
   20700 2007-06-27  Sam Weinig  <sam (a] webkit.org>
   20701 
   20702         Reviewed by Adam Roben.
   20703 
   20704         Patch for http://bugs.webkit.org/show_bug.cgi?id=12045
   20705         Crash under gmalloc at WTF::RefPtr<WebCore::HTMLSliderThumbElement>::operator->
   20706         <rdar://problem/5286670>
   20707 
   20708         Test: fast/forms/thumbslider-no-parent-slider.html
   20709         Test: fast/forms/thumbslider-crash.html
   20710 
   20711         * rendering/RenderObject.h:
   20712         (WebCore::RenderObject::isSlider):
   20713         * rendering/RenderSlider.h:
   20714         (WebCore::RenderSlider::isSlider):
   20715         * rendering/RenderTheme.cpp:
   20716         (WebCore::RenderTheme::paint): Only paint thumbslider
   20717         if the parent renderer is a RenderSlider.
   20718         * rendering/RenderThemeMac.mm:
   20719         (WebCore::RenderThemeMac::paintSliderThumb):
   20720         * rendering/RenderThemeSafari.cpp:
   20721         (WebCore::RenderThemeSafari::paintSliderThumb):
   20722 
   20723 2007-06-27  George Staikos  <staikos (a] kde.org>
   20724 
   20725         Make Qt builds link when XSLT is turned off.
   20726 
   20727         * WebCore.pro:
   20728 
   20729 2007-06-27  Steve Falkenburg  <sfalken (a] apple.com>
   20730 
   20731         Turn on static code analysis (Windows only).
   20732 
   20733         Affects only folks that have Visual Studio Team Suite installed,
   20734         or who have replaced their compiler with the version shipping in the
   20735         Vista SDK.
   20736         
   20737         Reviewed by Oliver.
   20738 
   20739         * WebCore.vcproj/WebCore.vcproj:
   20740 
   20741 2007-06-27  George Staikos  <staikos (a] kde.org>
   20742 
   20743         Remove old commented out files that no-longer exist.
   20744 
   20745         * WebCore.pro:
   20746 
   20747 2007-06-27  Justin Garcia  <justin.garcia (a] apple.com>
   20748 
   20749         Reviewed by John.
   20750 
   20751         <rdar://problem/5247341> REGRESSION: Pasting sometimes leaves out trailing newline
   20752         
   20753         Pasting with a trailing interchange newline doesn't work when pasting
   20754         into an empty line.  Code that handles removing brs at the insertion
   20755         position tries to also handle trailing interchange newlines by re-using
   20756         those brs and fails.  Removed that code and handle all interchange
   20757         newlines with code later in doApply().
   20758 
   20759         * editing/ReplaceSelectionCommand.cpp:
   20760         (WebCore::ReplaceSelectionCommand::doApply): Don't try to re-use the
   20761         endBR when there's a trailing interchange newline.
   20762         
   20763 2007-06-27  Anders Carlsson  <andersca (a] apple.com>
   20764 
   20765         Reviewed by Oliver.
   20766 
   20767         <rdar://problem/5253950>
   20768         When Shockwave plugin has been loaded, exiting crashes Safari
   20769         
   20770         Add a "load count" for plugin packages. When the load count is zero, unload the plugin.
   20771         
   20772         * plugins/win/PluginPackageWin.cpp:
   20773         (WebCore::PluginPackageWin::PluginPackageWin):
   20774         (WebCore::PluginPackageWin::load):
   20775         (WebCore::PluginPackageWin::unload):
   20776         (WebCore::PluginPackageWin::unloadWithoutShutdown):
   20777         * plugins/win/PluginPackageWin.h:
   20778         
   20779         * plugins/win/PluginViewWin.cpp:
   20780         (WebCore::PluginViewWin::~PluginViewWin):
   20781         Make sure to unload the plugin package and clear any references to plugin script objects.
   20782 
   20783 2007-06-27  George Staikos  <staikos (a] kde.org>
   20784 
   20785         This was succeeding compile by luck.  Setup dependencies properly.
   20786 
   20787         * WebCore.pro:
   20788 
   20789 2007-06-27  Justin Garcia  <justin.garcia (a] apple.com>
   20790 
   20791         Reviewed by John.
   20792 
   20793         <rdar://problem/4580583> Breaking blockquoted list should not automatically renumber the second list
   20794         
   20795         When a quoted numbered list is broken in half, it's cloned
   20796         to make the second list. That second list needs its start attribute
   20797         set so that the numbers of the list items in it will be preserved.
   20798 
   20799         * editing/BreakBlockquoteCommand.cpp:
   20800         (WebCore::BreakBlockquoteCommand::doApply): Set the start attribute
   20801         of a cloned list to be the original number of the first list item in it.
   20802 
   20803 2007-06-27  Alexey Proskuryakov  <ap (a] webkit.org>
   20804 
   20805         Reviewed by Geoff.
   20806 
   20807         http://bugs.webkit.org/show_bug.cgi?id=14413
   20808         GIF animation throttling is different from MSIE
   20809 
   20810         * platform/graphics/cg/ImageSourceCG.cpp:
   20811         (WebCore::ImageSource::frameDurationAtIndex):
   20812         Change the cut-off value to 50ms to match MSIE.
   20813 
   20814 2007-06-27  Sam Weinig  <sam (a] webkit.org>
   20815 
   20816         Reviewed by Darin.
   20817 
   20818         First pass at fixing implicit 64-32 bit conversion errors.
   20819         <rdar://problem/5292262>
   20820 
   20821         - Add 'f' suffix where necessary.
   20822 
   20823         * bridge/mac/WebCoreAXObject.mm:
   20824         (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
   20825         * css/csshelper.h:
   20826         * css/cssstyleselector.cpp:
   20827         (WebCore::):
   20828         (WebCore::CSSStyleSelector::largerFontSize):
   20829         (WebCore::CSSStyleSelector::smallerFontSize):
   20830         * html/CanvasGradient.cpp:
   20831         (WebCore::CanvasGradient::addColorStop):
   20832         * html/CanvasPattern.cpp:
   20833         (WebCore::CanvasPattern::createPattern):
   20834         * ksvg2/css/SVGCSSStyleSelector.cpp:
   20835         (WebCore::CSSStyleSelector::applySVGProperty):
   20836         * ksvg2/css/SVGRenderStyle.h:
   20837         * ksvg2/events/SVGZoomEvent.cpp:
   20838         (WebCore::SVGZoomEvent::SVGZoomEvent):
   20839         * ksvg2/svg/SVGLength.cpp:
   20840         (WebCore::SVGLength::SVGLength):
   20841         (WebCore::SVGLength::value):
   20842         (WebCore::SVGLength::setValue):
   20843         (WebCore::SVGLength::valueAsPercentage):
   20844         (WebCore::SVGLength::PercentageOfViewport):
   20845         * ksvg2/svg/SVGSVGElement.cpp:
   20846         (WebCore::SVGSVGElement::pixelUnitToMillimeterX):
   20847         (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
   20848         (WebCore::SVGSVGElement::getScreenCTM):
   20849         * ksvg2/svg/SVGTextContentElement.cpp:
   20850         (WebCore::SVGTextContentElement::getComputedTextLength):
   20851         (WebCore::SVGTextContentElement::getSubStringLength):
   20852         (WebCore::SVGTextContentElement::getRotationOfChar):
   20853         * ksvg2/svg/SVGTransformDistance.cpp:
   20854         (WebCore::SVGTransformDistance::SVGTransformDistance):
   20855         (WebCore::SVGTransformDistance::distance):
   20856         * page/InspectorController.cpp:
   20857         (WebCore::InspectorResource::InspectorResource):
   20858         * platform/graphics/FloatPoint3D.cpp:
   20859         (WebCore::FloatPoint3D::normalize):
   20860         * platform/graphics/Path.cpp:
   20861         (WebCore::pathLengthApplierFunction):
   20862         (WebCore::Path::createRoundedRectangle):
   20863         * platform/graphics/cg/GraphicsContextCG.cpp:
   20864         (WebCore::GraphicsContext::drawLine):
   20865         (WebCore::GraphicsContext::strokeArc):
   20866         * platform/graphics/cg/ImageCG.cpp:
   20867         (WebCore::FrameData::clear):
   20868         * platform/graphics/cg/ImageSourceCG.cpp:
   20869         (WebCore::ImageSource::frameDurationAtIndex):
   20870         * platform/graphics/cg/PDFDocumentImage.cpp:
   20871         (WebCore::PDFDocumentImage::setCurrentPage):
   20872         * platform/graphics/svg/SVGPaintServerPattern.cpp:
   20873         (WebCore::SVGPaintServerPattern::externalRepresentation):
   20874         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp:
   20875         (WebCore::SVGPaintServerRadialGradient::SVGPaintServerRadialGradient):
   20876         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   20877         (WebCore::cgGradientCallback):
   20878         (WebCore::CGShadingRefForRadialGradient):
   20879         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
   20880         * platform/mac/FontDataMac.mm:
   20881         (WebCore::webFallbackFontFamily):
   20882         * platform/mac/PopupMenuMac.mm:
   20883         (WebCore::PopupMenu::show):
   20884         * rendering/InlineFlowBox.cpp:
   20885         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   20886         * rendering/RenderSlider.cpp:
   20887         (WebCore::RenderSlider::setValueForPosition):
   20888         (WebCore::RenderSlider::setPositionFromValue):
   20889 
   20890 2007-06-27  Alexey Proskuryakov  <ap (a] webkit.org>
   20891 
   20892         Reviewed by Geoff.
   20893 
   20894         http://bugs.webkit.org/show_bug.cgi?id=14288
   20895         XMLHttpRequest doesn't use a correct content type for file:// URLs
   20896 
   20897         Test: fast/dom/xmlhttprequest-html-response-encoding.html
   20898 
   20899         * xml/xmlhttprequest.cpp:
   20900         (WebCore::XMLHttpRequest::responseMIMEType): Use MIME type provided by
   20901         the network layer, since it provides it even for non-HTTP responses.
   20902 
   20903 2007-06-26  Alp Toker  <alp.toker (a] collabora.co.uk>
   20904 
   20905         Reviewed by Sam Weinig.
   20906 
   20907         http://bugs.webkit.org/show_bug.cgi?id=14061
   20908         Implement more of FrameLoaderClientGdk
   20909 
   20910         Make FrameLoaderClientGdk work properly when the MIME type is set.
   20911 
   20912         * loader/gdk/FrameLoaderClientGdk.cpp:
   20913         (WebCore::FrameLoaderClientGdk::objectContentType):
   20914         (WebCore::FrameLoaderClientGdk::canShowMIMEType):
   20915 
   20916 2007-06-26  Alp Toker  <alp.toker (a] collabora.co.uk>
   20917 
   20918         Reviewed by Maciej.
   20919 
   20920         http://bugs.webkit.org/show_bug.cgi?id=14058
   20921         Gdk font backend cleanup
   20922 
   20923         * platform/FontData.h: Remove obsolete function.
   20924         * platform/gdk/FontDataGdk.cpp:
   20925         (WebCore::FontData::containsCharacters): Lock/unlock only once.
   20926         (WebCore::FontData::platformWidthForGlyph): Remove needless cast.
   20927         * platform/gdk/FontPlatformData.h: Remove obsolete function.
   20928         * platform/gdk/FontPlatformDataGdk.cpp:
   20929         (WebCore::FontPlatformData::FontPlatformData): Pass the actual size,
   20930         not the pixel size.
   20931         (WebCore::FontPlatformData::~FontPlatformData): Free m_fontMatrix.
   20932         * platform/gdk/GlyphPageTreeNodeGdk.cpp:
   20933         (WebCore::GlyphPage::fill): Lock/unlock only once.
   20934 
   20935 2007-06-26  Mitz Pettel  <mitz (a] webkit.org>
   20936 
   20937         Reviewed by Hyatt.
   20938 
   20939         - fix http://bugs.webkit.org/show_bug.cgi?id=14406
   20940           <colgroup>'s borders are ignored when it has <col> children
   20941 
   20942         Covered by existing tests.
   20943 
   20944         * rendering/RenderTableCell.cpp:
   20945         (WebCore::RenderTableCell::collapsedLeftBorder):
   20946         (WebCore::RenderTableCell::collapsedRightBorder):
   20947         (WebCore::RenderTableCell::collapsedTopBorder):
   20948         (WebCore::RenderTableCell::collapsedBottomBorder):
   20949 
   20950 2007-06-26  Mitz Pettel  <mitz (a] webkit.org>
   20951 
   20952         Reviewed by Oliver.
   20953 
   20954         - fix http://bugs.webkit.org/show_bug.cgi?id=14329
   20955           REGRESSION: TEXTAREA - cannot drag-and-drop text at en.wikipedia.org/
   20956 
   20957         Test: fast/repaint/text-selection-rect-in-overflow-2.html
   20958 
   20959         * rendering/RenderObject.cpp:
   20960         (WebCore::RenderObject::computeAbsoluteRepaintRect): Added code to account
   20961         for overflow scroll and columns.
   20962         * rendering/RenderText.cpp:
   20963         (WebCore::RenderText::selectionRect): Adjust for columns only in the
   20964         non-clipped case, since RenderObject::absolutePosition() does not.
   20965 
   20966 2007-06-26  Mitz Pettel  <mitz (a] webkit.org>
   20967 
   20968         Reviewed by Sam.
   20969 
   20970         - http://bugs.webkit.org/show_bug.cgi?id=14415
   20971           Remove the unused method RenderObject::setTable()
   20972 
   20973         * rendering/RenderObject.h:
   20974 
   20975 2007-06-26  Darin Fisher  <darin (a] chromium.org>
   20976 
   20977         Reviewed by Maciej.
   20978 
   20979         Implement http://bugs.webkit.org/show_bug.cgi?id=14225
   20980         Bug 14225: Make it possible to define platform-specific ResourceRequest without #ifdefs
   20981 
   20982         This change moves the bulk of ResourceRequest into a base class named
   20983         ResourceRequestBase with all platform-specific bits pushed into
   20984         ResourceRequest.  This allows ports to easily add new members to a
   20985         ResourceRequest without having to #ifdef the code that is shared
   20986         between ports.
   20987 
   20988         * WebCore.exp:
   20989         * WebCore.pro:
   20990         * WebCore.vcproj/WebCore.vcproj:
   20991         * WebCore.xcodeproj/project.pbxproj:
   20992         * platform/network/ResourceRequest.cpp: Removed.
   20993         * platform/network/ResourceRequest.h: Removed.
   20994         * platform/network/ResourceRequestBase.cpp: Added.
   20995         (WebCore::ResourceRequestBase::asResourceRequest):
   20996         (WebCore::ResourceRequestBase::isEmpty):
   20997         (WebCore::ResourceRequestBase::isNull):
   20998         (WebCore::ResourceRequestBase::url):
   20999         (WebCore::ResourceRequestBase::setURL):
   21000         (WebCore::ResourceRequestBase::cachePolicy):
   21001         (WebCore::ResourceRequestBase::setCachePolicy):
   21002         (WebCore::ResourceRequestBase::timeoutInterval):
   21003         (WebCore::ResourceRequestBase::setTimeoutInterval):
   21004         (WebCore::ResourceRequestBase::mainDocumentURL):
   21005         (WebCore::ResourceRequestBase::setMainDocumentURL):
   21006         (WebCore::ResourceRequestBase::httpMethod):
   21007         (WebCore::ResourceRequestBase::setHTTPMethod):
   21008         (WebCore::ResourceRequestBase::httpHeaderFields):
   21009         (WebCore::ResourceRequestBase::httpHeaderField):
   21010         (WebCore::ResourceRequestBase::setHTTPHeaderField):
   21011         (WebCore::ResourceRequestBase::httpBody):
   21012         (WebCore::ResourceRequestBase::setHTTPBody):
   21013         (WebCore::ResourceRequestBase::allowHTTPCookies):
   21014         (WebCore::ResourceRequestBase::setAllowHTTPCookies):
   21015         (WebCore::ResourceRequestBase::addHTTPHeaderField):
   21016         (WebCore::ResourceRequestBase::addHTTPHeaderFields):
   21017         (WebCore::operator==):
   21018         (WebCore::ResourceRequestBase::isConditional):
   21019         (WebCore::ResourceRequestBase::updatePlatformRequest):
   21020         (WebCore::ResourceRequestBase::updateResourceRequest):
   21021         * platform/network/ResourceRequestBase.h: Added.
   21022         (WebCore::):
   21023         (WebCore::ResourceRequestBase::httpContentType):
   21024         (WebCore::ResourceRequestBase::setHTTPContentType):
   21025         (WebCore::ResourceRequestBase::httpReferrer):
   21026         (WebCore::ResourceRequestBase::setHTTPReferrer):
   21027         (WebCore::ResourceRequestBase::clearHTTPReferrer):
   21028         (WebCore::ResourceRequestBase::httpUserAgent):
   21029         (WebCore::ResourceRequestBase::setHTTPUserAgent):
   21030         (WebCore::ResourceRequestBase::httpAccept):
   21031         (WebCore::ResourceRequestBase::setHTTPAccept):
   21032         (WebCore::ResourceRequestBase::ResourceRequestBase):
   21033         (WebCore::operator!=):
   21034         * platform/network/cf/ResourceRequest.h: Added.
   21035         (WebCore::ResourceRequest::ResourceRequest):
   21036         * platform/network/curl/ResourceRequest.h: Added.
   21037         (WebCore::ResourceRequest::ResourceRequest):
   21038         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   21039         (WebCore::ResourceRequest::doUpdateResourceRequest):
   21040         * platform/network/mac/ResourceRequest.h: Added.
   21041         (WebCore::ResourceRequest::ResourceRequest):
   21042         * platform/network/qt/ResourceRequest.h: Added.
   21043         (WebCore::ResourceRequest::ResourceRequest):
   21044         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   21045         (WebCore::ResourceRequest::doUpdateResourceRequest):
   21046 
   21047 2007-06-26  Adam Roben  <aroben (a] apple.com>
   21048 
   21049         Add ChangeLog entries from the Windows merge.
   21050 
   21051         Reviewed by Maciej.
   21052 
   21053         * ChangeLog:
   21054 
   21055 2007-06-26  Sam Weinig  <sam (a] webkit.org>
   21056 
   21057         Reviewed by Maciej.
   21058 
   21059         Make sure not to enumerate the toString() function.
   21060         <rdar://problem/5297118>
   21061 
   21062         * bindings/js/kjs_window.cpp:
   21063         * bindings/scripts/CodeGeneratorJS.pm: Add support for [DontEnum].
   21064         * html/HTMLAnchorElement.idl:
   21065 
   21066 2007-06-26  Alp Toker  <alp.toker (a] collabora.co.uk>
   21067 
   21068         Reviewed by Mitz, landed by Anders.
   21069 
   21070         http://bugs.webkit.org/show_bug.cgi?id=14421
   21071         Implement GraphicsContext::clearRect()
   21072 
   21073         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   21074         (WebCore::GraphicsContext::clearRect):
   21075 
   21076 2007-06-26  Alp Toker  <alp.toker (a] collabora.co.uk>
   21077 
   21078         Reviewed and landed by Anders.
   21079 
   21080         http://bugs.webkit.org/show_bug.cgi?id=14416
   21081         Content does not render fully in some cases
   21082 
   21083         Fix mismatched calls to cairo_save/restore due to an early method return.
   21084 
   21085         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   21086         (WebCore::GraphicsContext::drawLine):
   21087 
   21088 2007-06-26  Tristan O'Tierney  <tristan (a] apple.com>
   21089 
   21090         Reviewed by John Sullivan.
   21091 
   21092         Added two accessor functions for <rdar://problem/4119138>
   21093 
   21094         * bindings/objc/DOMHTML.mm:
   21095         (-[DOMHTMLInputElement _isEdited]):
   21096         (-[DOMHTMLTextAreaElement _isEdited]):
   21097         Added an accessor to the isEdited value of a DOM node's render object
   21098 
   21099         * bindings/objc/DOMPrivate.h:
   21100         Added header definitions for _isEdited
   21101 
   21102 2007-06-26  Sam Weinig  <sam (a] webkit.org>
   21103 
   21104         Fix Win32 build.
   21105 
   21106         * WebCore.vcproj/WebCore.vcproj:
   21107 
   21108 2007-06-26  Sam Weinig  <sam (a] webkit.org>
   21109 
   21110         Fix Qt and Gdk builds.
   21111 
   21112         * WebCore.pro:
   21113 
   21114 2007-06-26  Sam Weinig  <sam (a] webkit.org>
   21115 
   21116         Reviewed by Geoff.
   21117 
   21118         Patch for http://bugs.webkit.org/show_bug.cgi?id=14111
   21119         Autogenerate Event JS binding
   21120 
   21121         - Moves the dataTransfer method into MouseEvent where it should be.
   21122 
   21123         * WebCore.xcodeproj/project.pbxproj:
   21124         * bindings/js/JSEventCustom.cpp: Added.
   21125         (WebCore::JSEvent::clipboardData):
   21126         (WebCore::toJS):
   21127         * bindings/js/JSEventTargetNode.cpp:
   21128         * bindings/js/JSXMLHttpRequest.cpp:
   21129         * bindings/js/kjs_events.cpp:
   21130         * bindings/js/kjs_events.h:
   21131         * bindings/objc/DOMUtility.mm:
   21132         (KJS::createDOMWrapper):
   21133         * bindings/scripts/CodeGeneratorJS.pm:
   21134         * dom/Event.h:
   21135         (WebCore::Event::returnValue):
   21136         (WebCore::Event::setReturnValue):
   21137         (WebCore::Event::clipboardData):
   21138         * dom/Event.idl:
   21139         * dom/MouseEvent.h:
   21140         (WebCore::MouseEvent::dataTransfer):
   21141         * dom/MouseEvent.idl:
   21142 
   21143 2007-06-26  Timothy Hatcher  <timothy (a] apple.com>
   21144 
   21145         Reviewed by Mark Rowe.
   21146 
   21147         Follow up fix for: Bug 14385: Web Inspector's computed style doesn't show implicitly set properties
   21148         http://bugs.webkit.org/show_bug.cgi?id=14385
   21149 
   21150         Correctly remember the "Show implicit properties" setting as you switch nodes.
   21151 
   21152         * page/inspector/ResourcePanel.js:
   21153 
   21154 2007-06-26  Justin Garcia  <justin.garcia (a] apple.com>
   21155 
   21156         Reviewed by John.
   21157 
   21158         <rdar://problem/5290534> Crash at RenderTextControl::calcHeight() after deleting text in a search field
   21159         
   21160         Editing removed a node that was part of a search field's internal
   21161         structure that should not be removed.
   21162 
   21163         * editing/DeleteSelectionCommand.cpp:
   21164         (WebCore::DeleteSelectionCommand::handleGeneralDelete): If the
   21165         selection to delete ends at [container, x], where x is the number
   21166         of children in container, don't remove container.  Special case
   21167         code elsewhere in this function will remove it if necessary.
   21168 
   21169 2007-06-25  Sam Weinig  <sam (a] webkit.org>
   21170 
   21171         Reviewed by Maciej.
   21172 
   21173         Patch for http://bugs.webkit.org/show_bug.cgi?id=11315
   21174         Mutating document.constructor.prototype mutates Object.prototype
   21175 
   21176         Test: fast/js/constructor.html
   21177 
   21178         * bindings/scripts/CodeGeneratorJS.pm: add constructor attribute to
   21179         classes with constructors.  It is an non-enumeratable, non-deletable,
   21180         readonly attribute.
   21181 
   21182 2007-06-26  George Staikos  <staikos (a] kde.org>
   21183 
   21184         Repair the OS X build.
   21185 
   21186         * WebCore.exp:
   21187 
   21188 2007-06-26  Adam Treat  <adam (a] staikos.net>
   21189 
   21190         Reviewed by Adam Roben.
   21191 
   21192         Make the SQLite icon database optional.
   21193 
   21194         * loader/icon/IconDatabase.cpp:
   21195         (WebCore::IconDatabase::isOpen):
   21196         (WebCore::IconDatabase::isPrivateBrowsingEnabled):
   21197         (WebCore::IconDatabase::enabled):
   21198         * loader/icon/IconDatabase.h:
   21199 
   21200 2007-06-25  Sam Weinig  <sam (a] webkit.org>
   21201 
   21202         Reviewed by Adam Roben.
   21203 
   21204         Patch for http://bugs.webkit.org/show_bug.cgi?id=14369
   21205         HTML syntax highlighting colors and DOM tree colors should be the same
   21206 
   21207         * css/view-source.css:
   21208         * page/inspector/ResourcePanel.js:
   21209         * page/inspector/inspector.css:
   21210         * page/inspector/inspector.js:
   21211         * page/inspector/utilities.js:
   21212 
   21213 2007-06-25  Adam Roben  <aroben (a] apple.com>
   21214 
   21215         Fix Bug 14402: Main resource of http://www.apple.com/safari/ is called "www.apple.com" instead of "safari"
   21216         http://bugs.webkit.org/show_bug.cgi?id=14402
   21217 
   21218         The solution was to make KURL::lastPathComponent ignore trailing
   21219         slashes, which is what -[NSURL lastPathComponent] does, too.
   21220 
   21221         Reviewed by Oliver.
   21222 
   21223         * platform/KURL.cpp:
   21224         (WebCore::KURL::lastPathComponent):
   21225 
   21226 2007-06-25  Sam Weinig  <sam (a] webkit.org>
   21227 
   21228         Reviewed by Adam Roben.
   21229 
   21230         Patch for http://bugs.webkit.org/show_bug.cgi?id=14257
   21231         Web Inspector lists favicon.ico as "other" instead of "image"
   21232 
   21233         * page/InspectorController.cpp:
   21234         (WebCore::InspectorResource::type):
   21235 
   21236 2007-06-25  Adele Peterson  <adele (a] apple.com>
   21237 
   21238         Reviewed by Hyatt.
   21239 
   21240         Fix for <rdar://problem/5286410> Scrollbar and resize corner for overflow area is not hidden with style "visibility: hidden;"
   21241         http://bugs.webkit.org/show_bug.cgi?id=14297
   21242 
   21243         Test: fast/overflow/hidden-scrollbar-resize.html
   21244 
   21245         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::paintLayer):
   21246         Updated our shouldPaint check to consider visibility.
   21247 
   21248 2007-06-25  Oliver Hunt  <oliver (a] apple.com>
   21249 
   21250         Reviewed by Darin.
   21251 
   21252         <rdar://problem/5293444> REGRESSION: Dragging plain text into a styled text region does not acquire the correct style info
   21253 
   21254         Fixing logic error in DragController
   21255 
   21256         * manual-tests/drop-text-acquires-style.html: Added.
   21257         * page/DragController.cpp:
   21258         (WebCore::documentFragmentFromDragData):
   21259 
   21260 2007-06-25  Sam Weinig  <sam (a] webkit.org>
   21261 
   21262         Reviewed by Adam Roben.
   21263 
   21264         Annotate prototypes by adding "Prototype" subtitle.
   21265 
   21266         * page/inspector/ResourcePanel.js:
   21267 
   21268 2007-06-25  George Staikos  <staikos (a] kde.org>
   21269 
   21270         Reviewed by Zack.
   21271 
   21272         Start to add proxy and SSL support to WebKitQt.  Proxying works.
   21273 
   21274         * platform/network/ResourceHandleInternal.h:
   21275         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   21276         * platform/network/qt/ResourceHandleQt.cpp:
   21277         (WebCore::ResourceHandle::start):
   21278 
   21279 2007-06-25  Alp Toker  <alp.toker (a] collabora.co.uk>
   21280 
   21281         Reviewed by Adam Roben.
   21282 
   21283         http://bugs.webkit.org/show_bug.cgi?id=14386
   21284         Gdk build fix
   21285 
   21286         * WebCore.pro: Fix gtk/gdk typo.
   21287 
   21288 2007-06-25  Timothy Hatcher  <timothy (a] apple.com>
   21289 
   21290         Reviewed by Anders.
   21291 
   21292         Bug 14385: Web Inspector's computed style doesn't show implicitly set properties
   21293         http://bugs.webkit.org/show_bug.cgi?id=14385
   21294 
   21295         Add a toggle to show implict computed properties.
   21296 
   21297         * page/inspector/ResourcePanel.js:
   21298         * page/inspector/inspector.css:
   21299         * page/inspector/inspector.js:
   21300 
   21301 2007-06-25  Alp Toker  <alp.toker (a] collabora.co.uk>
   21302 
   21303         Reviewed by Mark.
   21304 
   21305         http://bugs.webkit.org/show_bug.cgi?id=13975
   21306         Use system-provided libjpeg and libpng
   21307 
   21308         * WebCore.pro: Remove bundled libjpeg and libpng sources.
   21309         * platform/image-decoders/jpeg: Remove sources.
   21310         * platform/image-decoders/png: Remove sources.
   21311 
   21312 2007-06-25  Mitz Pettel  <mitz (a] webkit.org>
   21313 
   21314         Reviewed by Darin.
   21315 
   21316         - fix http://bugs.webkit.org/show_bug.cgi?id=14202
   21317           Table caption renders too narrow sometimes
   21318 
   21319         Test: fast/table/caption-relayout.html
   21320 
   21321         * rendering/RenderTable.cpp:
   21322         (WebCore::RenderTable::layout): Mark the caption for layout if the table
   21323         width changed.
   21324 
   21325 2007-06-25  Mitz Pettel  <mitz (a] webkit.org>
   21326 
   21327         Reviewed by Darin.
   21328 
   21329         - fix http://bugs.webkit.org/show_bug.cgi?id=14245
   21330           Underline painted under <br>, not repainted properly
   21331 
   21332         Test: fast/inline/br-text-decoration.html
   21333 
   21334         * platform/graphics/cg/GraphicsContextCG.cpp:
   21335         (WebCore::GraphicsContext::drawLineForText): Added an early return if the line width
   21336         is zero. Also changed the line stroke to a rect fill, so that lines with length shorter
   21337         than their thickness paint correctly.
   21338 
   21339 2007-06-25  Mitz Pettel  <mitz (a] webkit.org>
   21340 
   21341         Reviewed by Maciej.
   21342 
   21343         - fix http://bugs.webkit.org/show_bug.cgi?id=14341
   21344           rules="none" ignored in certain cases
   21345 
   21346         Covered by existing tests.
   21347 
   21348         * html/HTMLTableElement.cpp:
   21349         (WebCore::HTMLTableElement::getSharedCellDecl):
   21350 
   21351 2007-06-24  Sam Weinig  <sam (a] webkit.org>
   21352 
   21353         Reviewed by Mitz.
   21354 
   21355         Patch for http://bugs.webkit.org/show_bug.cgi?id=14379
   21356         Anchor elements show up as their href in the properties pane, not HTMLAnchorElement
   21357 
   21358         * page/inspector/ResourcePanel.js: make sure not to call an overriden
   21359         toString() by using Object.prototype.toString.call().
   21360 
   21361 2007-06-24  Adam Roben  <aroben (a] apple.com>
   21362 
   21363         Fix http://bugs.webkit.org/show_bug.cgi?id=14374
   21364         Bug 14374: Computed Style section should be expanded by default
   21365 
   21366         Reviewed by Sam.
   21367 
   21368         No regression test possible.
   21369 
   21370         * page/inspector/ResourcePanel.js: Expand all style sections.
   21371 
   21372 2007-06-24  Adam Roben  <aroben (a] apple.com>
   21373 
   21374         Unify the style of enums in the Inspector JS
   21375 
   21376         All our enums are now represented by an object with a property for
   21377         each enum value.
   21378 
   21379         Reviewed by Sam.
   21380 
   21381         No regression test possible.
   21382 
   21383         * page/inspector/ConsolePanel.js:
   21384         * page/inspector/Resource.js:
   21385         * page/inspector/ResourcePanel.js:
   21386         * page/inspector/inspector.js:
   21387 
   21388 2007-06-23  Sam Weinig  <sam (a] webkit.org>
   21389 
   21390         Reviewed by Mitz.
   21391 
   21392         Patch for http://bugs.webkit.org/show_bug.cgi?id=14321
   21393         getComputedStyle(...).zIndex returns string "normal"
   21394 
   21395         Test: fast/css/getComputedStyle-zIndex-auto.html
   21396 
   21397         * css/CSSComputedStyleDeclaration.cpp:
   21398         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return 'auto' instead of 'normal'.
   21399 
   21400 2007-06-24  Matt Lilek  <pewtermoose (a] gmail.com>
   21401 
   21402         Reviewed by Tim Hatcher.
   21403 
   21404         Bug 14265: Cannot resize columns in webinspector
   21405         http://bugs.webkit.org/show_bug.cgi?id=14265
   21406 
   21407         * page/inspector/inspector.css:
   21408         * page/inspector/inspector.html:
   21409         * page/inspector/inspector.js:
   21410 
   21411 2007-06-23  Adam Roben  <aroben (a] apple.com>
   21412 
   21413         Silence a build warning about not finding `num-cpus`
   21414 
   21415         Reviewed by Mark Rowe.
   21416 
   21417         * WebCore.vcproj/build-generated-files.sh: Look for num-cpus in its new
   21418         location.
   21419 
   21420 2007-06-22  Anders Carlsson  <andersca (a] apple.com>
   21421 
   21422         Reviewed by Darin.
   21423 
   21424         * plugins/win/PluginStreamWin.cpp:
   21425         (WebCore::PluginStreamWin::didFinishLoading):
   21426         No need to fetch the size from resourceData.
   21427 
   21428 2007-06-22  Anders Carlsson  <andersca (a] apple.com>
   21429 
   21430         Reviewed by Darin.
   21431 
   21432         <rdar://problem/5288617>
   21433         Crash playing a very large QuickTime movie inside Safari.
   21434 
   21435         Get rid of m_completeDeliveryData and use the loader's resource data instead. This reduces the memory usage for 
   21436         plug-ins which loads large files and use a transfer mode of NP_ASFILE or NP_ASFILEONLY.
   21437         
   21438         * plugins/win/PluginStreamWin.cpp:
   21439         (WebCore::PluginStreamWin::PluginStreamWin):
   21440         (WebCore::PluginStreamWin::~PluginStreamWin):
   21441         (WebCore::PluginStreamWin::didReceiveData):
   21442         (WebCore::PluginStreamWin::didFinishLoading):
   21443         * plugins/win/PluginStreamWin.h:
   21444 
   21445 2007-06-22  Beth Dakin  <bdakin (a] apple.com>
   21446 
   21447         Reviewed by Oliver and Darin.
   21448 
   21449         Fix for <rdar://problem/5266999> Loading page from MangleMe fuzz 
   21450         tester crashes in RenderTableRow::addChild (giant ROWSPAN)
   21451 
   21452         We already have code that tries to prevent allocating too-large 
   21453         rowspans. The rowspan in this test, however, was small enough that 
   21454         we thought it was okay in that code, even though clearly it was 
   21455         still too large. I did a bunch of testing in Firefox, and it seems 
   21456         that they set a hard limit on the maximum rowspan right in the DOM 
   21457         -- 8k. So that is what this patch implements. 
   21458 
   21459         * html/HTMLTableCellElement.cpp:
   21460         (WebCore::HTMLTableCellElement::parseMappedAttribute):
   21461 
   21462 2007-06-22  Justin Garcia  <justin.garcia (a] apple.com>
   21463 
   21464         Reviewed by Darin.
   21465         
   21466         <rdar://problem/5272440> Adding To Do via Note received in e-mail adds newlines on delete
   21467         
   21468         Deletion inserts a placeholder after it removes full paragraphs if
   21469         one doesn't already exist.  The code that looked for a pre-existing
   21470         placeholder didn't work because of a bug in enclosingNodeOfType.
   21471 
   21472         * editing/htmlediting.cpp:
   21473         (WebCore::enclosingNodeOfType): We start looking at node->parentNode(),
   21474         but don't go above an editing root.
   21475 
   21476 2007-06-22  Anders Carlsson  <andersca (a] apple.com>
   21477 
   21478         Reviewed by Maciej and Geoff.
   21479 
   21480         <rdar://problem/5244734>
   21481         WebKit shouldn't send delegate resource load methods for the user stylesheet (doing so causes assertions in Safari)
   21482         
   21483         Add a sendResourceLoadCallbacks argument to the ResourceLoader and only send resource load callbacks if it's true. Make it so that
   21484         loading the user style sheet creates a resource loader with sendResourceLoadCallbacks set to false (done by adding a sendResourceLoadCallbacks 
   21485         argument to a bunch of classes).
   21486         
   21487         * loader/Cache.cpp:
   21488         (WebCore::createResource):
   21489         (WebCore::Cache::requestResource):
   21490         * loader/Cache.h:
   21491         * loader/CachedCSSStyleSheet.cpp:
   21492         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
   21493         * loader/CachedCSSStyleSheet.h:
   21494         * loader/CachedResource.cpp:
   21495         (WebCore::CachedResource::CachedResource):
   21496         * loader/CachedResource.h:
   21497         (WebCore::CachedResource::sendResourceLoadCallbacks):
   21498         * loader/DocLoader.cpp:
   21499         (WebCore::DocLoader::requestCSSStyleSheet):
   21500         (WebCore::DocLoader::requestResource):
   21501         (WebCore::DocLoader::checkCacheObjectStatus):
   21502         * loader/DocLoader.h:
   21503         * loader/MainResourceLoader.cpp:
   21504         (WebCore::MainResourceLoader::MainResourceLoader):
   21505         * loader/Request.cpp:
   21506         (WebCore::Request::Request):
   21507         * loader/Request.h:
   21508         (WebCore::Request::sendResourceLoadCallbacks):
   21509         * loader/ResourceLoader.cpp:
   21510         (WebCore::ResourceLoader::ResourceLoader):
   21511         (WebCore::ResourceLoader::willSendRequest):
   21512         (WebCore::ResourceLoader::didReceiveResponse):
   21513         (WebCore::ResourceLoader::didReceiveData):
   21514         (WebCore::ResourceLoader::didFinishLoadingOnePart):
   21515         (WebCore::ResourceLoader::didFail):
   21516         (WebCore::ResourceLoader::didCancel):
   21517         * loader/ResourceLoader.h:
   21518         (WebCore::ResourceLoader::sendResourceLoadCallbacks):
   21519         * loader/SubresourceLoader.cpp:
   21520         (WebCore::SubresourceLoader::SubresourceLoader):
   21521         (WebCore::SubresourceLoader::create):
   21522         * loader/SubresourceLoader.h:
   21523         * loader/loader.cpp:
   21524         (WebCore::Loader::load):
   21525         (WebCore::Loader::servePendingRequests):
   21526         * loader/loader.h:
   21527         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
   21528         (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
   21529 
   21530 2007-06-21  Richard Connamacher  <rich (a] indieimage.com>
   21531 
   21532         Reviewed by Tim Hatcher.
   21533 
   21534         Bug 14305: Web Inspector marks local files with server-side compression tip
   21535         http://bugs.webkit.org/show_bug.cgi?id=14305
   21536 
   21537         * page/inspector/Resource.js:
   21538         (WebInspector.Resource._shouldCompress): Prevent server-side compression tip
   21539         from being given to local files
   21540 
   21541 2007-06-21  Mark Rowe  <mrowe (a] apple.com>
   21542 
   21543         Reviewed by Darin.
   21544 
   21545         Fix for <rdar://problem/5266928> REGRESSION: crash/assert failure beneath RenderFrameSet::layOutAxis when loading
   21546 
   21547         * platform/StringImpl.cpp:
   21548         (WebCore::StringImpl::toLengthArray): Simplify whitespace before checking for an empty string.  This avoids returning
   21549         a length of zero when the string is collapsed to empty by whitespace simplification.
   21550 
   21551 2007-06-21  Dave Hyatt  <hyatt (a] apple.com>
   21552 
   21553         Fix for <rdar://problem/5286978>, large font sizes crash Windows.
   21554         
   21555         Limit the maximum font size to 1,000,000 to avoid crashes and issues with platforms that
   21556         start failing to do anything useful if the font size is too big.
   21557         
   21558         Reviewed by olliej
   21559 
   21560         * css/cssstyleselector.cpp:
   21561         (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
   21562         
   21563 2007-06-21  Andrew Wellington  <proton (a] wiretapped.net>
   21564 
   21565         Reviewed by Timothy.
   21566 
   21567         Stop shift+scroll wheel performing a horizontal scroll in Web Inspector
   21568 
   21569         * page/inspector/inspector.css: Set body margin to 0
   21570 
   21571 2007-06-21  Adam Treat  <adam (a] staikos.net>
   21572 
   21573         Reviewed by George Staikos.
   21574 
   21575         Implement the default resources on Qt.
   21576 
   21577         * platform/graphics/BitmapImage.h:
   21578         * platform/graphics/Image.h:
   21579         * platform/graphics/qt/ImageQt.cpp:
   21580         (WebCore::Image::loadPlatformResource):
   21581         (WebCore::BitmapImage::BitmapImage):
   21582         (WebCore::BitmapImage::initPlatformData):
   21583         (WebCore::BitmapImage::invalidatePlatformData):
   21584         (WebCore::BitmapImage::getPixmap):
   21585         * platform/qt/TemporaryLinkStubs.cpp:
   21586 
   21587 2007-06-21  Oliver Hunt  <oliver (a] apple.com>
   21588 
   21589         Reviewed by Darin.
   21590 
   21591         Use RetainPtr for holding currentEvent.  This removes explicit HardRetain/Release calls
   21592         and makes reference handling simpler in advance of IME refactoring.
   21593 
   21594         * WebCore.xcodeproj/project.pbxproj:
   21595         * page/mac/EventHandlerMac.mm:
   21596         (WebCore::currentEvent):
   21597         (WebCore::EventHandler::currentNSEvent):
   21598         (WebCore::EventHandler::wheelEvent):
   21599         (WebCore::EventHandler::keyEvent):
   21600         (WebCore::lastEventIsMouseUp):
   21601         (WebCore::EventHandler::passMouseDownEventToWidget):
   21602         (WebCore::EventHandler::eventLoopHandleMouseDragged):
   21603         (WebCore::EventHandler::eventLoopHandleMouseUp):
   21604         (WebCore::EventHandler::passSubframeEventToSubframe):
   21605         (WebCore::EventHandler::passWheelEventToWidget):
   21606         (WebCore::EventHandler::mouseDown):
   21607         (WebCore::EventHandler::mouseDragged):
   21608         (WebCore::EventHandler::mouseUp):
   21609         (WebCore::EventHandler::mouseMoved):
   21610 
   21611 2007-06-21  George Staikos  <staikos (a] kde.org>
   21612 
   21613         Reviewed by George & Marius.
   21614 
   21615         Patch by me, revision by Marius, minor rev by me.  Adds rendered
   21616         and stylable scrollbars.
   21617 
   21618         * page/qt/EventHandlerQt.cpp:
   21619         (WebCore::EventHandler::passMousePressEventToScrollbar):
   21620         * platform/Widget.h:
   21621         * platform/qt/PlatformScrollBar.h:
   21622         (WebCore::PlatformScrollbar::isWidget):
   21623         * platform/qt/PlatformScrollBarQt.cpp:
   21624         (WebCore::PlatformScrollbar::PlatformScrollbar):
   21625         (WebCore::PlatformScrollbar::~PlatformScrollbar):
   21626         (WebCore::PlatformScrollbar::updateThumbPosition):
   21627         (WebCore::PlatformScrollbar::updateThumbProportion):
   21628         (WebCore::PlatformScrollbar::width):
   21629         (WebCore::PlatformScrollbar::height):
   21630         (WebCore::PlatformScrollbar::setRect):
   21631         (WebCore::PlatformScrollbar::isEnabled):
   21632         (WebCore::PlatformScrollbar::setEnabled):
   21633         (WebCore::PlatformScrollbar::paint):
   21634         (WebCore::PlatformScrollbar::thumbPosition):
   21635         (WebCore::PlatformScrollbar::thumbLength):
   21636         (WebCore::PlatformScrollbar::trackLength):
   21637         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   21638         (WebCore::PlatformScrollbar::handleMouseOutEvent):
   21639         (WebCore::PlatformScrollbar::handleMousePressEvent):
   21640         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   21641         (WebCore::PlatformScrollbar::startTimerIfNeeded):
   21642         (WebCore::PlatformScrollbar::stopTimerIfNeeded):
   21643         (WebCore::PlatformScrollbar::autoscrollPressedPart):
   21644         (WebCore::PlatformScrollbar::autoscrollTimerFired):
   21645         (WebCore::PlatformScrollbar::pressedPartScrollDirection):
   21646         (WebCore::PlatformScrollbar::pressedPartScrollGranularity):
   21647         (WebCore::PlatformScrollbar::thumbUnderMouse):
   21648         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
   21649         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
   21650         (WebCore::PlatformScrollbar::windowClipRect):
   21651         * platform/qt/ScrollViewQt.cpp:
   21652         (WebCore::ScrollView::addChild):
   21653         (WebCore::ScrollView::removeChild):
   21654         * platform/qt/WidgetQt.cpp:
   21655         (WebCore::WidgetPrivate::WidgetPrivate):
   21656         (WebCore::Widget::setQWidget):
   21657         (WebCore::Widget::invalidate):
   21658         (WebCore::Widget::invalidateRect):
   21659         (WebCore::Widget::setParent):
   21660         (WebCore::Widget::parent):
   21661 
   21662 2007-06-21  Geoffrey Garen  <ggaren (a] apple.com>
   21663 
   21664         Reviewed by Dave Hyatt.
   21665         
   21666         Fixed <rdar://problem/4977124> | http://bugs.webkit.org/show_bug.cgi?id=12646
   21667         REGRESSION: RapidWeaver's "Hello" HTML page doesn't display any DHTML 
   21668         effects when clicking on its links (12646)
   21669         
   21670         I'm rolling our r7703 for these reasons:
   21671 
   21672         1. It broke RapidWeaver.
   21673         
   21674         2. WebKit is now orders of magnitude faster when handling deep nesting
   21675         (5 seconds vs 3 minutes on my MBP in this particular case).
   21676 
   21677         3. Firefox, IE, and HTML5 all allow nested heading tags.
   21678         
   21679         4. Hyatt said so.
   21680 
   21681         * html/HTMLParser.cpp:
   21682         (WebCore::HTMLParser::parseToken):
   21683 
   21684 2007-06-21  Sam Weinig  <sam (a] webkit.org>
   21685 
   21686         Reviewed by Tim Hatcher.
   21687 
   21688         http://bugs.webkit.org/show_bug.cgi?id=14260
   21689         ASSERTION FAILED: m_mainResource->loader == loader going back in history on any page
   21690 
   21691         Remove assert for now as it is causing the back button to not
   21692         work in debug builds.
   21693 
   21694         * page/InspectorController.cpp:
   21695         (WebCore::InspectorController::didCommitLoad):
   21696 
   21697 2007-06-21  Lars Knoll <lars (a] trolltech.com>
   21698 
   21699         Remove some debug output.
   21700 
   21701         * platform/qt/FontQt.cpp:
   21702         (WebCore::generateComponents):
   21703         (WebCore::Font::width):
   21704 
   21705 2007-06-21  George Staikos  <staikos (a] kde.org>
   21706 
   21707         Repair Qt/Mac OS X build.
   21708 
   21709         * WebCore.pro:
   21710 
   21711 2007-06-21  Alexey Proskuryakov  <ap (a] webkit.org>
   21712 
   21713         Reviewed by Anders.
   21714 
   21715         http://bugs.webkit.org/show_bug.cgi?id=13905
   21716         REGRESSION: A Chinese dictionary widget has a problem with XMLHttpRequest response encoding
   21717 
   21718         Tiger WebKit accidentally looked at HTML Http-Equiv META to determine the response encoding
   21719         (regardless of the actual response MIME type). This was corrected a while ago to match other 
   21720         browsers and the draft XHR spec.
   21721 
   21722         Now restoring this functionality for "text/html", with spec editor's blessing.
   21723 
   21724         * xml/xmlhttprequest.cpp:
   21725         (WebCore::XMLHttpRequest::responseMIMEType):
   21726         (WebCore::XMLHttpRequest::responseIsXML):
   21727         (WebCore::XMLHttpRequest::didReceiveData):
   21728         * xml/xmlhttprequest.h:
   21729 
   21730 2007-06-21  Andrew Wellington  <proton (a] wiretapped.net>
   21731 
   21732         Mac build fix.
   21733 
   21734         * platform/Font.h:
   21735 
   21736 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21737 
   21738         Reviewed by Simon.
   21739 
   21740         another small fix for letter spacing
   21741 
   21742         * platform/qt/FontQt.cpp:
   21743         (WebCore::generateComponents):
   21744 
   21745 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21746 
   21747         Reviewed by Simon.
   21748 
   21749         fix word-spacing
   21750 
   21751         * platform/qt/FontQt.cpp:
   21752         (WebCore::generateComponents):
   21753         (WebCore::Font::width):
   21754 
   21755 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21756 
   21757         Reviewed by Simon.
   21758 
   21759         fix letterspacing and small caps.
   21760 
   21761         * platform/Font.h:
   21762         * platform/graphics/qt/GraphicsContextQt.cpp:
   21763         (WebCore::GraphicsContext::setPlatformFont):
   21764         * platform/qt/FileChooserQt.cpp:
   21765         * platform/qt/FontQt.cpp:
   21766         (WebCore::TextRunComponent::TextRunComponent):
   21767         (WebCore::Font::Font):
   21768         (WebCore::Font::operator=):
   21769         (WebCore::Font::update):
   21770         (WebCore::generateComponents):
   21771         (WebCore::Font::selectionRectForText):
   21772         * platform/qt/RenderThemeQt.cpp:
   21773 
   21774 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21775 
   21776         Reviewed by Simon.
   21777 
   21778         store the metrics and space width in the Font object
   21779 
   21780         * platform/Font.h:
   21781         * platform/qt/FontQt.cpp:
   21782         (WebCore::Font::Font):
   21783         (WebCore::Font::drawText):
   21784         (WebCore::Font::width):
   21785         (WebCore::Font::isFixedPitch):
   21786         (WebCore::Font::ascent):
   21787         (WebCore::Font::descent):
   21788         (WebCore::Font::lineSpacing):
   21789 
   21790 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21791 
   21792         Reviewed by Simon.
   21793 
   21794         simplify some codepaths
   21795 
   21796         * platform/qt/FontQt.cpp:
   21797         (WebCore::Font::drawText):
   21798         (WebCore::Font::width):
   21799 
   21800 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21801 
   21802         Reviewed by Simon.
   21803 
   21804         fix copyright header
   21805 
   21806         * platform/qt/FontQt.cpp:
   21807 
   21808 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21809 
   21810         Reviewed by Simon.
   21811 
   21812         correctly load fonts when a list of font families is given
   21813 
   21814         * platform/qt/FontQt.cpp:
   21815         (WebCore::Font::Font):
   21816 
   21817 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21818 
   21819         Reviewed by Simon.
   21820 
   21821         fix some more of the font support
   21822 
   21823         * platform/qt/FontQt.cpp:
   21824         (WebCore::Font::drawText):
   21825         (WebCore::Font::width):
   21826 
   21827 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21828 
   21829         Reviewed by Simon.
   21830 
   21831         Compile fixes
   21832 
   21833         * platform/Font.h:
   21834         (WebCore::Font::isRoundingHackCharacter):
   21835         * platform/qt/FontQt.cpp:
   21836         (WebCore::Font::drawText):
   21837 
   21838 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21839 
   21840         Reviewed by Simon.
   21841 
   21842         Some more work on the implementation of FontQt.
   21843 
   21844         * platform/qt/FontQt.cpp:
   21845         (WebCore::Font::Font):
   21846         (WebCore::Font::~Font):
   21847         (WebCore::Font::operator=):
   21848 
   21849 2007-06-21  Lars Knoll  <lars (a] trolltech.com>
   21850 
   21851         Reviewed by Simon.
   21852 
   21853         Started work on the new font infrastructure for the Qt port.
   21854 
   21855         * WebCore.pro:
   21856         * editing/Editor.cpp:
   21857         (WebCore::Editor::fontForSelection):
   21858         * platform/Font.h:
   21859         (WebCore::Font::treatAsSpace):
   21860         (WebCore::Font::treatAsZeroWidthSpace):
   21861         (WebCore::Font::isRoundingHackCharacter):
   21862         * platform/qt/FontQt.cpp:
   21863         (WebCore::Font::operator QFont):
   21864         * platform/qt/TemporaryLinkStubs.cpp:
   21865 
   21866 2007-06-21  Adam Roben  <aroben (a] apple.com>
   21867 
   21868         More Gdk build fixes.
   21869 
   21870         * page/gdk/ContextMenuClientGdk.cpp:
   21871         (WebCore::ContextMenuClientGdk::shouldIncludeInspectElementItem):
   21872         * page/gdk/ContextMenuClientGdk.h:
   21873         * platform/gdk/TemporaryLinkStubs.cpp:
   21874 
   21875 2007-06-21  Adam Roben  <aroben (a] apple.com>
   21876 
   21877         Speculative Gdk build fix.
   21878 
   21879         * page/InspectorController.h: Only include the JS headers we really
   21880         need to avoid pulling in ones like JSStringRefCF.h.
   21881 
   21882 2007-06-20  Adam Roben  <aroben (a] apple.com>
   21883 
   21884         Speculative Gdk build fix.
   21885 
   21886         * WebCore.pro: Don't try to build WebKitQt/Plugins on Gdk.
   21887 
   21888 2007-06-20  Adam Roben  <aroben (a] apple.com>
   21889 
   21890         Windows build fix.
   21891 
   21892         * WebCore.vcproj/WebCore.vcproj: Include ForwardingHeaders after
   21893         everything but $WebKitLibrariesDir so that we will pick up
   21894         JavaScriptCore headers directly.
   21895 
   21896 2007-06-15  George Staikos  <staikos (a] kde.org>
   21897 
   21898         Add missing symbol.
   21899 
   21900         * platform/qt/TemporaryLinkStubs.cpp:
   21901         (WebCore::contextMenuItemTagInspectElement):
   21902 
   21903 2007-06-20  Steve Falkenburg  <sfalken (a] apple.com>
   21904 
   21905         Reviewed by Maciej, Anders.
   21906         
   21907         <rdar://problem/5283789> Crash after dismissing JavaScript alert at end of test on http://lcamtuf.coredump.cx/ierace/
   21908 
   21909         Keep a reference to the Page (via the main frame) for the
   21910         load deferred pages.
   21911         
   21912         Reference is held via the frame since Page isn't refcounted.
   21913 
   21914         * page/Chrome.cpp:
   21915         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   21916         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   21917 
   21918 2007-06-15  Adam Treat <adam (a] staikos.net>
   21919 
   21920         Reviewed by George Staikos.
   21921 
   21922         Add ICO support to the Qt build.
   21923 
   21924         * WebCore.pro:
   21925         * platform/graphics/qt/ImageDecoderQt.cpp:
   21926         (Q_IMPORT_PLUGIN):
   21927 
   21928 2007-06-15  George Staikos  <staikos (a] kde.org>
   21929 
   21930         Fixing Qt build.
   21931 
   21932         * ForwardingHeaders/JavaScriptCore/APICast.h: Added.
   21933         * WebCore.pro:
   21934         * page/InspectorController.h:
   21935 
   21936 2007-06-20  Adam Roben  <aroben (a] apple.com>
   21937 
   21938         More speculative Qt/Gdk build fixes.
   21939 
   21940         * WebCore.pro: Add new files.
   21941 
   21942 2007-06-20  Adam Roben  <aroben (a] apple.com>
   21943 
   21944         Speculative Qt/Gdk build fix.
   21945 
   21946         Added forwarding headers for JavaScriptCore. We may eventually move
   21947         InspectorController off of the JSC API, but for now this is the
   21948         quickest way to a working build.
   21949 
   21950         * ForwardingHeaders/JavaScriptCore/JSBase.h: Added.
   21951         * ForwardingHeaders/JavaScriptCore/JSContextRef.h: Added.
   21952         * ForwardingHeaders/JavaScriptCore/JSObjectRef.h: Added.
   21953         * ForwardingHeaders/JavaScriptCore/JSStringRef.h: Added.
   21954         * ForwardingHeaders/JavaScriptCore/JSStringRefCF.h: Added.
   21955         * ForwardingHeaders/JavaScriptCore/JSValueRef.h: Added.
   21956         * ForwardingHeaders/JavaScriptCore/JavaScriptCore.h: Added.
   21957 
   21958 2007-06-20  Sam Weinig  <sam (a] webkit.org>
   21959 
   21960         Rubber stamped by Adam Roben.
   21961 
   21962         Add licenses.
   21963 
   21964         * page/inspector/ConsolePanel.js:
   21965         * page/inspector/NetworkPanel.js:
   21966         * page/inspector/Resource.js:
   21967         * page/inspector/ResourceCategory.js:
   21968         * page/inspector/ResourcePanel.js:
   21969 
   21970 2007-06-20  Mark Rowe  <mrowe (a] apple.com>
   21971 
   21972         Reviewed by Adam.
   21973 
   21974         * WebCore.exp: Export InspectorController::inspect so WebKit can see it.
   21975 
   21976 2007-06-20  Geoffrey Garen  <ggaren (a] apple.com>
   21977 
   21978         Reviewed by Adele Peterson, Oliver Hunt, Anders Carlsson.
   21979 
   21980         Fixed <rdar://problem/5222911> Leopard9A446 : VitalSource Bookshelf 4.5: 
   21981         Crashes when you click on sign in (stringByEvaluatingJavaScriptFromString 
   21982         returning nil instead of "")
   21983 
   21984         I'm basically rolling out the change for <rdar://problem/4782422> because
   21985         my testing shows that it was backwards.
   21986         
   21987         * html/HTMLElement.cpp:
   21988         (dumpInnerHTML): New debug-only function to work around gdb being 
   21989         perpetually suck-tastic.
   21990 
   21991         * page/mac/WebCoreFrameBridge.mm:
   21992         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
   21993         
   21994         Return "", not nil. This function never used to return nil, so let's not
   21995         start now. I've filed <rdar://problem/5283271> to cover the documentation bug,
   21996 
   21997 2007-06-20  Adam Roben  <aroben (a] apple.com>
   21998 
   21999         Addressed some of Geoff's comments.
   22000 
   22001         * page/ContextMenuController.cpp:
   22002         (WebCore::ContextMenuController::handleContextMenuEvent): Added a
   22003         FIXME.
   22004         * platform/ContextMenu.cpp:
   22005         (WebCore::ContextMenu::addInspectElementItem): Null-check
   22006         frame->page().
   22007 
   22008 2007-06-20  Adam Roben  <aroben (a] apple.com>
   22009 
   22010         Fix crash in fast/dom/dir-no-body.html
   22011 
   22012         Reviewed by Mark.
   22013 
   22014         * html/HTMLDocument.cpp:
   22015         (WebCore::HTMLDocument::createTokenizer): Don't assume we have a
   22016         Frame, since we won't if someone creates an HTMLDocument from JS.
   22017 
   22018 2007-06-20  Adam Roben  <aroben (a] apple.com>
   22019 
   22020         Land the new Inspector.
   22021 
   22022         Co-written with Tim Hatcher.
   22023 
   22024         Reviewed by Anders, Adele, Hyatt, and Sam.
   22025 
   22026         No regression tests possible.
   22027 
   22028         Add a new InspectorController that is in charge of the Inspector. It
   22029         has an InspectorClient that controls the Inspector's window and node
   22030         highlight.
   22031 
   22032         * page/InspectorClient.h: Added.
   22033         (WebCore::InspectorClient::~InspectorClient):
   22034         * page/InspectorController.cpp: Added.
   22035         (WebCore::ConsoleMessage::ConsoleMessage):
   22036         (WebCore::InspectorResource::): Represents a single resource that the
   22037         Inspector knows about.
   22038         (WebCore::InspectorResource::InspectorResource):
   22039         (WebCore::InspectorResource::~InspectorResource):
   22040         (WebCore::InspectorResource::type):
   22041         (WebCore::InspectorResource::setScriptObject):
   22042         (WebCore::addSourceToFrame): Callback available from JS.
   22043         (WebCore::getResourceDocumentNode): Ditto.
   22044         (WebCore::highlightDOMNode): Ditto.
   22045         (WebCore::hideDOMNodeHighlight): Ditto.
   22046         (WebCore::loaded): Ditto.
   22047         (WebCore::unloading): Ditto.
   22048         (WebCore::attach): Ditto.
   22049         (WebCore::detach): Ditto.
   22050         (WebCore::log): Ditto.
   22051         (WebCore::search): Ditto.
   22052         (WebCore::inspectedWindow): Ditto.
   22053         (WebCore::InspectorController::InspectorController):
   22054         (WebCore::InspectorController::~InspectorController):
   22055         (WebCore::InspectorController::inspect): Called by
   22056         ContextMenuController to inspect a node.
   22057         (WebCore::InspectorController::focusNode):
   22058         (WebCore::InspectorController::highlight):
   22059         (WebCore::InspectorController::hideHighlight):
   22060         (WebCore::InspectorController::windowVisible):
   22061         (WebCore::InspectorController::setWindowVisible):
   22062         (WebCore::InspectorController::addMessageToConsole):
   22063         (WebCore::InspectorController::attachWindow):
   22064         (WebCore::InspectorController::detachWindow):
   22065         (WebCore::InspectorController::windowScriptObjectAvailable):
   22066         (WebCore::InspectorController::scriptObjectReady):
   22067         (WebCore::InspectorController::windowUnloading):
   22068         (WebCore::addHeaders): Static helper function.
   22069         (WebCore::objectForRequest): Ditto.
   22070         (WebCore::objectForResponse): Ditto.
   22071         (WebCore::InspectorController::addScriptResource):
   22072         (WebCore::InspectorController::addAndUpdateScriptResource):
   22073         (WebCore::InspectorController::removeScriptResource):
   22074         (WebCore::InspectorController::updateScriptResource):
   22075         (WebCore::InspectorController::populateScriptResources):
   22076         (WebCore::InspectorController::addScriptConsoleMessage):
   22077         (WebCore::callClearFunction): Static helper function.
   22078         (WebCore::InspectorController::clearScriptResources):
   22079         (WebCore::InspectorController::clearScriptConsoleMessages):
   22080         (WebCore::InspectorController::clearNetworkTimeline):
   22081         (WebCore::InspectorController::pruneResources):
   22082         (WebCore::InspectorController::didCommitLoad): Callback from
   22083         FrameLoader.
   22084         (WebCore::InspectorController::frameDetachedFromParent): Ditto.
   22085         (WebCore::InspectorController::addResource): Ditto.
   22086         (WebCore::InspectorController::removeResource): Ditto.
   22087         (WebCore::InspectorController::didLoadResourceFromMemoryCache): Ditto.
   22088         (WebCore::InspectorController::identifierForInitialRequest): Ditto.
   22089         (WebCore::InspectorController::willSendRequest): Ditto.
   22090         (WebCore::InspectorController::didReceiveResponse): Ditto.
   22091         (WebCore::InspectorController::didReceiveContentLength): Ditto.
   22092         (WebCore::InspectorController::didFinishLoading): Ditto.
   22093         (WebCore::InspectorController::didFailLoading): Ditto.
   22094         * page/InspectorController.h: Added.
   22095         (WebCore::InspectorController::inspectedPage):
   22096         (WebCore::InspectorController::scriptContext):
   22097         (WebCore::InspectorController::setScriptContext):
   22098         (WebCore::InspectorController::resources):
   22099         (WebCore::InspectorController::removeAllResources):
   22100 
   22101         Add the JavaScript that defines most of the behavior of the Inspector.
   22102         
   22103         * page/inspector/ConsolePanel.js: Added.
   22104         * page/inspector/NetworkPanel.js: Added.
   22105         * page/inspector/Resource.js: Added.
   22106         * page/inspector/ResourceCategory.js: Added.
   22107         * page/inspector/ResourcePanel.js: Added.
   22108         * page/inspector/inspector.js: Added.
   22109         * page/inspector/treeoutline.js: Renamed from WebKit/WebInspector/webInspector/treeoutline.js.
   22110         * page/inspector/utilities.js: Added.
   22111 
   22112         Add the Inspector's CSS and HTML.
   22113 
   22114         * page/inspector/inspector.css: Added.
   22115         * page/inspector/inspector.html: Added.
   22116 
   22117         Hang the InspectorController off of Page. We only create an
   22118         InspectorController if an InspectorClient is given to the Page.
   22119 
   22120         * page/Page.cpp:
   22121         (WebCore::Page::Page):
   22122         * page/Page.h:
   22123         (WebCore::Page::inspectorController):
   22124 
   22125         Use FrameLoader to notify the InspectorController of resource loads.
   22126 
   22127         * loader/FrameLoader.cpp:
   22128         (WebCore::FrameLoader::begin):
   22129         (WebCore::FrameLoader::transitionToCommitted):
   22130         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm):
   22131         (WebCore::FrameLoader::detachFromParent):
   22132         (WebCore::FrameLoader::assignIdentifierToInitialRequest):
   22133         (WebCore::FrameLoader::willSendRequest):
   22134         (WebCore::FrameLoader::didReceiveResponse):
   22135         (WebCore::FrameLoader::didReceiveData):
   22136         (WebCore::FrameLoader::sendRemainingDelegateMessages):
   22137         (WebCore::FrameLoader::requestFromDelegate):
   22138         (WebCore::FrameLoader::didFinishLoad):
   22139         (WebCore::FrameLoader::dispatchWindowObjectAvailable):
   22140         (WebCore::FrameLoader::dispatchDidCommitLoad):
   22141         (WebCore::FrameLoader::dispatchAssignIdentifierToInitialRequest):
   22142         (WebCore::FrameLoader::dispatchWillSendRequest):
   22143         (WebCore::FrameLoader::dispatchDidReceiveResponse):
   22144         (WebCore::FrameLoader::dispatchDidReceiveContentLength):
   22145         (WebCore::FrameLoader::dispatchDidFinishLoading):
   22146         (WebCore::FrameLoader::dispatchDidLoadResourceFromMemoryCache):
   22147         * loader/FrameLoader.h:
   22148 
   22149         Send console messages to the InspectorController.
   22150 
   22151         * page/Chrome.cpp:
   22152         (WebCore::Chrome::addMessageToConsole): Send all console messages to
   22153         the InspectorController.
   22154         * page/Chrome.h: Add a new MessageLevel and MessageSource that are
   22155         used in the Inspector JS.
   22156 
   22157         Report HTML errors when the Inspector window is open.
   22158         We don't report errors when the window is closed because we don't want
   22159         to slow down the HTMLTokenizer.
   22160 
   22161         * html/HTMLDocument.cpp:
   22162         (WebCore::HTMLDocument::createTokenizer):
   22163         * html/HTMLParser.cpp:
   22164         (WebCore::HTMLParser::HTMLParser):
   22165         * html/HTMLParser.h:
   22166         * html/HTMLTokenizer.cpp:
   22167         (WebCore::HTMLTokenizer::HTMLTokenizer):
   22168         * html/HTMLTokenizer.h:
   22169 
   22170         Append the "Inspect Element" context menu item after passing the
   22171         context menu to the ContextMenuClient. This work used to be done in
   22172         WebKit.
   22173 
   22174         * page/ContextMenuClient.h:
   22175         * page/ContextMenuController.cpp:
   22176         (WebCore::ContextMenuController::handleContextMenuEvent): Add the
   22177         "Inspect Element" item.
   22178         (WebCore::ContextMenuController::contextMenuItemSelected): Handle the
   22179         "Inspect Element" item.
   22180         * platform/ContextMenu.cpp:
   22181         (WebCore::ContextMenu::addInspectElementItem):
   22182         (WebCore::ContextMenu::checkOrEnableIfNeeded): Updated for "Inspect
   22183         Element" item.
   22184         * platform/ContextMenu.h:
   22185         * platform/ContextMenuItem.h:
   22186         (WebCore::): Add ContextMenuItemTagInspectElement.
   22187         * platform/graphics/svg/SVGImageEmptyClients.h:
   22188         * page/mac/WebCoreViewFactory.h: Add the "Inspect Element" localized
   22189         string.
   22190         * platform/LocalizedStrings.h: Ditto.
   22191         * platform/mac/LocalizedStringsMac.mm:
   22192         (WebCore::contextMenuItemTagInspectElement): Ditto.
   22193 
   22194         Miscellaneous changes:
   22195 
   22196         * css/view-source.css: Add message bubble styles.
   22197         * loader/DocumentLoader.h: Add a frame getter.
   22198         * platform/win/ScrollViewWin.cpp:
   22199         (WebCore::ScrollView::updateScrollbars): Respect
   22200         Frame::prohibitsScrolling.
   22201 
   22202         Add new images needed for the Inspector.
   22203 
   22204         * page/inspector/Images/attachedShadow.png: Added.
   22205         * page/inspector/Images/bottomShadow.png: Added.
   22206         * page/inspector/Images/breadcrumbBackground.png: Added.
   22207         * page/inspector/Images/checker.png: Added.
   22208         * page/inspector/Images/console.png: Added.
   22209         * page/inspector/Images/darkShadow.png: Added.
   22210         * page/inspector/Images/disclosureDownPressed.png: Added.
   22211         * page/inspector/Images/disclosureRightDown.png: Added.
   22212         * page/inspector/Images/disclosureRightPressed.png: Added.
   22213         * page/inspector/Images/document.png: Added.
   22214         * page/inspector/Images/domViewButton.png: Added.
   22215         * page/inspector/Images/domViewButtonSelected.png: Added.
   22216         * page/inspector/Images/downTriangle.png: Added.
   22217         * page/inspector/Images/errorIcon.png: Added.
   22218         * page/inspector/Images/errorMediumIcon.png: Added.
   22219         * page/inspector/Images/folder.png: Added.
   22220         * page/inspector/Images/goArrow.png: Added.
   22221         * page/inspector/Images/gradient.png: Added.
   22222         * page/inspector/Images/gradientHighlight.png: Added.
   22223         * page/inspector/Images/gradientHighlightBottom.png: Added.
   22224         * page/inspector/Images/hideStatusWidget.png: Added.
   22225         * page/inspector/Images/hideStatusWidgetPressed.png: Added.
   22226         * page/inspector/Images/network.png: Added.
   22227         * page/inspector/Images/paneBottomGrow.png: Added.
   22228         * page/inspector/Images/paneBottomGrowActive.png: Added.
   22229         * page/inspector/Images/paneGrowHandleLine.png: Added.
   22230         * page/inspector/Images/paneHeader.png: Added.
   22231         * page/inspector/Images/paneHeaderActive.png: Added.
   22232         * page/inspector/Images/plainDocument.png: Added.
   22233         * page/inspector/Images/popupArrows.png: Added.
   22234         * page/inspector/Images/rightTriangle.png: Added.
   22235         * page/inspector/Images/segment.png: Added.
   22236         * page/inspector/Images/segmentEnd.png: Added.
   22237         * page/inspector/Images/segmentHover.png: Added.
   22238         * page/inspector/Images/segmentHoverEnd.png: Added.
   22239         * page/inspector/Images/segmentSelected.png: Added.
   22240         * page/inspector/Images/segmentSelectedEnd.png: Added.
   22241         * page/inspector/Images/showStatusWidget.png: Added.
   22242         * page/inspector/Images/showStatusWidgetPressed.png: Added.
   22243         * page/inspector/Images/sidbarItemBackground.png: Added.
   22244         * page/inspector/Images/sidebarActionWidget.png: Added.
   22245         * page/inspector/Images/sidebarActionWidgetPressed.png: Added.
   22246         * page/inspector/Images/sidebarAttachWidget.png: Added.
   22247         * page/inspector/Images/sidebarAttachWidgetPressed.png: Added.
   22248         * page/inspector/Images/sidebarDetachWidget.png: Added.
   22249         * page/inspector/Images/sidebarDetachWidgetPressed.png: Added.
   22250         * page/inspector/Images/sidebarResizeWidget.png: Added.
   22251         * page/inspector/Images/sidebarSelection.png: Added.
   22252         * page/inspector/Images/sidebarSelectionBlurred.png: Added.
   22253         * page/inspector/Images/sidebarSelectionBlurredTall.png: Added.
   22254         * page/inspector/Images/sidebarSelectionGray.png: Added.
   22255         * page/inspector/Images/sidebarSelectionGrayTall.png: Added.
   22256         * page/inspector/Images/sidebarSelectionTall.png: Added.
   22257         * page/inspector/Images/sidebarStatusAreaBackground.png: Added.
   22258         * page/inspector/Images/sourceViewButton.png: Added.
   22259         * page/inspector/Images/sourceViewButtonSelected.png: Added.
   22260         * page/inspector/Images/splitviewDimple.png: Added.
   22261         * page/inspector/Images/splitviewDividerBackground.png: Added.
   22262         * page/inspector/Images/tab.png: Added.
   22263         * page/inspector/Images/tabSelected.png: Added.
   22264         * page/inspector/Images/timelinePillBlue.png: Added.
   22265         * page/inspector/Images/timelinePillGray.png: Added.
   22266         * page/inspector/Images/timelinePillGreen.png: Added.
   22267         * page/inspector/Images/timelinePillOrange.png: Added.
   22268         * page/inspector/Images/timelinePillPurple.png: Added.
   22269         * page/inspector/Images/timelinePillRed.png: Added.
   22270         * page/inspector/Images/timelinePillYellow.png: Added.
   22271         * page/inspector/Images/tipBalloon.png: Added.
   22272         * page/inspector/Images/tipBalloonBottom.png: Added.
   22273         * page/inspector/Images/tipIcon.png: Added.
   22274         * page/inspector/Images/tipIconPressed.png: Added.
   22275         * page/inspector/Images/toggleDown.png: Added.
   22276         * page/inspector/Images/toggleUp.png: Added.
   22277         * page/inspector/Images/toolbarBackground.png: Added.
   22278         * page/inspector/Images/toolbarBackgroundInactive.png: Added.
   22279         * page/inspector/Images/toolbarButton.png: Added.
   22280         * page/inspector/Images/toolbarButtonInactive.png: Added.
   22281         * page/inspector/Images/toolbarButtonPressed.png: Added.
   22282         * page/inspector/Images/toolbarButtonPressedInactive.png: Added.
   22283         * page/inspector/Images/toolbarSplitButtonDivider.png: Added.
   22284         * page/inspector/Images/toolbarSplitButtonDividerInactive.png: Added.
   22285         * page/inspector/Images/treeDownTriangleBlack.png: Added.
   22286         * page/inspector/Images/treeDownTriangleWhite.png: Added.
   22287         * page/inspector/Images/treeLeftTriangleBlack.png: Added.
   22288         * page/inspector/Images/treeRightTriangleBlack.png: Added.
   22289         * page/inspector/Images/treeRightTriangleWhite.png: Added.
   22290         * page/inspector/Images/warningIcon.png: Added.
   22291         * page/inspector/Images/warningMediumIcon.png: Added.
   22292         * page/inspector/Images/warningsErrors.png: Added.
   22293 
   22294         Build-fu:
   22295 
   22296         * WebCore.exp: Added new symbols.
   22297         * WebCore.xcodeproj/project.pbxproj: Added new source files and
   22298         resources.
   22299         * WebCore.vcproj/WebCore.vcproj: Ditto, and copy the resources to
   22300         $WebKitOutputDir.
   22301 
   22302         Windows build fixes:
   22303 
   22304         * history/HistoryItem.h: ResourceRequest is a struct.
   22305         * loader/FrameLoaderClient.h: Ditto.
   22306 
   22307 2007-06-20  Mitz Pettel  <mitz (a] webkit.org>
   22308 
   22309         Reviewed by Beth.
   22310 
   22311         - fix http://bugs.webkit.org/show_bug.cgi?id=14056
   22312           REGRESSION (r21113-21143): TR background not repainted via style class change
   22313 
   22314         Test: fast/repaint/table-row.html
   22315 
   22316         * rendering/RenderTableRow.cpp:
   22317         (WebCore::RenderTableRow::layout): Added a repaint to make up for the case where the
   22318         table row also needs layout, so it doesn't get a repaint in setStyle().
   22319 
   22320 2007-06-20  Mitz Pettel  <mitz (a] webkit.org>
   22321 
   22322         Reviewed by Adele.
   22323 
   22324         - fix http://bugs.webkit.org/show_bug.cgi?id=14040
   22325           Top and bottom border images flipped when using -webkit-border-image when border end up tiled
   22326 
   22327         Test: fast/borders/border-image-01.html
   22328 
   22329         Correctly account for the fact that "pattern space" is flipped.
   22330 
   22331         * platform/graphics/Image.cpp: (WebCore::Image::drawTiled):
   22332         * platform/graphics/cg/ImageCG.cpp:
   22333         (WebCore::Image::drawPatternCallback):
   22334         (WebCore::Image::drawPattern):
   22335 
   22336 2007-06-20  Anders Carlsson  <andersca (a] apple.com>
   22337 
   22338         Reviewed by Darin.
   22339 
   22340         <rdar://problem/5245555> REGRESSION: HTTP header injection in XMLHttpRequest.setRequestHeader
   22341         
   22342         Check for either '\r' or '\n' in the header value.
   22343         
   22344         * xml/xmlhttprequest.cpp:
   22345         (WebCore::isValidHeaderValue):
   22346 
   22347 2007-06-20  Patti Hoa  <patti (a] apple.com>
   22348 
   22349         Reviewed by Geoffrey Garen.
   22350 
   22351         <rdar://problem/4882527> VO should speak URL of image links that lack tags
   22352         Add additional change from review
   22353         
   22354         * bridge/mac/WebCoreAXObject.mm:
   22355         (-[WebCoreAXObject accessibilityAttributeValue:]):
   22356         Check if the element has imgTag before asking for its url
   22357         
   22358 2007-06-20  Patti Hoa  <patti (a] apple.com>
   22359 
   22360         Reviewed by Tristan O'Tierney.
   22361 
   22362         <rdar://problem/4882527> VO should speak URL of image links that lack tags
   22363         
   22364         * bridge/mac/WebCoreAXObject.mm:
   22365         (-[WebCoreAXObject accessibilityAttributeNames]):
   22366         (-[WebCoreAXObject accessibilityAttributeValue:]):
   22367         Return the url of images.
   22368 
   22369 2007-06-19  Anders Carlsson  <andersca (a] apple.com>
   22370 
   22371         Reviewed by Kevin Decker.
   22372 
   22373         <rdar://problem/5266289> REGRESSION (Safari 3 Beta 1): Incoming iChat messages are delayed
   22374         
   22375         Add a new m_deferMainResourceDataLoad that can be used to control whether a data load should be deferred using a timer or not.
   22376         
   22377         * loader/DocumentLoader.cpp:
   22378         (WebCore::DocumentLoader::DocumentLoader):
   22379         * loader/DocumentLoader.h:
   22380         (WebCore::DocumentLoader::deferMainResourceDataLoad):
   22381         * loader/MainResourceLoader.cpp:
   22382         (WebCore::MainResourceLoader::handleDataLoadSoon):
   22383         (WebCore::MainResourceLoader::loadNow):
   22384         (WebCore::MainResourceLoader::setDefersLoading):
   22385 
   22386 2007-06-19  Patti Hoa <patti (a] apple.com>
   22387 
   22388         Reviewed by Justin Garcia.
   22389         
   22390         <rdar://problem/5237325> Incorrect AXLeftLineTextMarkerRangeForTextMarker/AXPreviousLineStartTextMarkerForTextMarker for non-editable text
   22391         
   22392         * editing/visible_units.cpp:
   22393         (WebCore::startPositionForLine):
   22394         (WebCore::startOfLine):
   22395         (WebCore::endPositionForLine):
   22396         (WebCore::endOfLine):
   22397         Break down the line routines to allow another try to ask for start/end of line if the returned position is not valid.
   22398         An example would be when lineStart/lineEnd at different line than the input position.
   22399         This can happen if the input position is before the space character at the end of a soft-wrapped non-editable line, 
   22400         specifically a line without webkit-line-break:after-white-space style.
   22401 
   22402 2007-06-19  Patti Hoa  <patti (a] apple.com>
   22403 
   22404         Reviewed by Justin Garcia.
   22405         
   22406         <rdar://problem/3992645> VO view bounds misplaced when reading text after a line wrap
   22407         
   22408         * bridge/mac/WebCoreAXObject.mm:
   22409         (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
   22410         Improve the accuracy of the bounds for a given range
   22411         
   22412 2007-06-19  Anders Carlsson  <andersca (a] apple.com>
   22413 
   22414         Reviewed by Darin.
   22415 
   22416         <rdar://problem/5130630>
   22417         XPath fails LayoutTests on Windows
   22418         
   22419         * xml/XPathPredicate.cpp:
   22420         Include MathExtras.h here so we get a version of fmod that works around a bug in the Microsoft CRT.
   22421         
   22422         * xml/XPathValue.cpp:
   22423         (WebCore::XPath::Value::toNumber):
   22424         Instead of using NAN, which isn't really the NaN value on Windows, use numeric_limits.
   22425         
   22426 2007-06-19  Geoffrey Garen  <ggaren (a] apple.com>
   22427 
   22428         Reviewed by Darin Adler.
   22429 
   22430         Fixed cross-frame access. <rdar://problem/5251309>. 
   22431 
   22432         * bindings/js/kjs_window.cpp:
   22433         (KJS::Window::getValueProperty):
   22434         * bindings/scripts/CodeGeneratorJS.pm:
   22435         * page/DOMWindow.idl:
   22436 
   22437 2007-06-19  Anders Carlsson  <andersca (a] apple.com>
   22438 
   22439         Build fix.
   22440         
   22441         * platform/win/PopupMenuWin.cpp:
   22442 
   22443 2007-06-19  Lars Knoll <lars (a] trolltech.com>
   22444 
   22445         Reviewed by Zack
   22446 
   22447         Implement these methods correctly.
   22448 
   22449         * platform/qt/PlatformScreenQt.cpp:
   22450         (WebCore::screenRect):
   22451         (WebCore::screenAvailableRect):
   22452 
   22453 2007-06-19  Sam Weinig  <sam (a] webkit.org>
   22454 
   22455         Reviewed by Geoff.
   22456 
   22457         Patch for http://bugs.webkit.org/show_bug.cgi?id=14226
   22458         Move the History object out of the JS bindings
   22459 
   22460         - Autogenerate JSHistory.
   22461 
   22462         * DerivedSources.make:
   22463         * WebCore.pro:
   22464         * WebCore.vcproj/WebCore.vcproj:
   22465         * WebCore.xcodeproj/project.pbxproj:
   22466         * bindings/js/kjs_window.cpp:
   22467         (KJS::WindowPrivate::WindowPrivate):
   22468         (KJS::Window::mark):
   22469         (KJS::Window::getValueProperty):
   22470         (KJS::Window::clearHelperObjectProperties):
   22471         (KJS::Window::disconnectFrame):
   22472         * bindings/js/kjs_window.h:
   22473         (KJS::Window::):
   22474         * bridge/GlobalHistory.h: Copied from WebCore/bridge/History.h.
   22475         * bridge/History.h: Removed.
   22476         * bridge/mac/GlobalHistoryMac.mm: Copied from WebCore/bridge/mac/HistoryMac.mm.
   22477         * bridge/mac/HistoryMac.mm: Removed.
   22478         * bridge/win/GlobalHistoryWin.cpp: Copied from WebCore/bridge/win/HistoryWin.cpp.
   22479         * bridge/win/HistoryWin.cpp: Removed.
   22480         * css/cssstyleselector.cpp:
   22481         * page/DOMWindow.cpp:
   22482         (WebCore::DOMWindow::disconnectFrame):
   22483         (WebCore::DOMWindow::history):
   22484         * page/DOMWindow.h:
   22485         * page/DOMWindow.idl:
   22486         * page/History.cpp: Added.
   22487         (WebCore::History::History):
   22488         (WebCore::History::frame):
   22489         (WebCore::History::disconnectFrame):
   22490         (WebCore::History::length):
   22491         (WebCore::History::back):
   22492         (WebCore::History::forward):
   22493         (WebCore::History::go):
   22494         * page/History.h: Added.
   22495         * page/History.idl: Added.
   22496         * platform/gdk/TemporaryLinkStubs.cpp:
   22497         * platform/qt/TemporaryLinkStubs.cpp:
   22498         * platform/wx/TemporaryLinkStubs.cpp:
   22499 
   22500 2007-06-18  Sam Weinig  <sam (a] webkit.org>
   22501 
   22502         Qt build fix.
   22503 
   22504         * platform/qt/PlatformScreenQt.cpp:
   22505         (WebCore::screenDepth):
   22506         (WebCore::screenDepthPerComponent):
   22507         (WebCore::screenIsMonochrome):
   22508         (WebCore::screenRect):
   22509         (WebCore::screenAvailableRect):
   22510 
   22511 2007-06-18  Sam Weinig  <sam (a] webkit.org>
   22512 
   22513         Reviewed by Beth.
   22514 
   22515         Fix build and update licenses. 
   22516 
   22517         * WebCore.xcodeproj/project.pbxproj:
   22518         * page/BarInfo.cpp:
   22519         * page/BarInfo.h:
   22520         * page/BarInfo.idl:
   22521         * page/Screen.cpp:
   22522         (WebCore::Screen::height):
   22523         (WebCore::Screen::width):
   22524         (WebCore::Screen::colorDepth):
   22525         (WebCore::Screen::pixelDepth):
   22526         (WebCore::Screen::availLeft):
   22527         (WebCore::Screen::availTop):
   22528         (WebCore::Screen::availHeight):
   22529         (WebCore::Screen::availWidth):
   22530         * page/Screen.h:
   22531         * page/Screen.idl:
   22532 
   22533 2007-06-18  Anders Carlsson  <andersca (a] apple.com>
   22534 
   22535         Reviewed by John Sullivan.
   22536 
   22537         <rdar://problem/5277008> Assertion in [LocationChangeHandler finishedLoadingFrame:]
   22538         
   22539         Don't send any frame load callbacks if the document load hasn't been
   22540         committed for real.
   22541         
   22542         * loader/FrameLoader.cpp:
   22543         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   22544 
   22545 2007-06-18  Sam Weinig  <sam (a] webkit.org>
   22546 
   22547         Reviewed by Geoff.
   22548 
   22549         Patch for http://bugs.webkit.org/show_bug.cgi?id=14193
   22550         Move the Screen object out of the JS bindings
   22551 
   22552         - Renames Screen.h to PlatformScreen.h to accommodate new class.
   22553         - Autogenerates JSScreen.
   22554 
   22555         * DerivedSources.make:
   22556         * WebCore.pro:
   22557         * WebCore.vcproj/WebCore.vcproj:
   22558         * WebCore.xcodeproj/project.pbxproj:
   22559         * bindings/js/kjs_window.cpp:
   22560         (KJS::WindowPrivate::WindowPrivate):
   22561         (KJS::Window::mark):
   22562         (KJS::Window::getValueProperty):
   22563         (KJS::Window::clearHelperObjectProperties):
   22564         * bindings/js/kjs_window.h:
   22565         (KJS::Window::):
   22566         * css/MediaQueryEvaluator.cpp:
   22567         * page/DOMWindow.cpp:
   22568         (WebCore::DOMWindow::DOMWindow):
   22569         (WebCore::DOMWindow::~DOMWindow):
   22570         (WebCore::DOMWindow::frame):
   22571         (WebCore::DOMWindow::disconnectFrame):
   22572         (WebCore::DOMWindow::screen):
   22573         * page/DOMWindow.h:
   22574         * page/DOMWindow.idl:
   22575         * page/Screen.cpp: Added.
   22576         (WebCore::Screen::Screen):
   22577         (WebCore::Screen::disconnectFrame):
   22578         (WebCore::Screen::height):
   22579         (WebCore::Screen::width):
   22580         (WebCore::Screen::colorDepth):
   22581         (WebCore::Screen::pixelDepth):
   22582         (WebCore::Screen::availLeft):
   22583         (WebCore::Screen::availTop):
   22584         (WebCore::Screen::availHeight):
   22585         (WebCore::Screen::availWidth):
   22586         * page/Screen.h: Added.
   22587         * page/Screen.idl: Added.
   22588         * page/mac/WebCoreFrameBridge.mm:
   22589         * platform/PlatformScreen.h: Copied from WebCore/platform/Screen.h.
   22590         * platform/Screen.h: Removed.
   22591         * platform/gdk/PlatformScreenGdk.cpp: Copied from WebCore/platform/gdk/ScreenGdk.cpp.
   22592         * platform/gdk/ScreenGdk.cpp: Removed.
   22593         * platform/mac/PlatformMouseEventMac.mm:
   22594         * platform/mac/PlatformScreenMac.mm: Copied from WebCore/platform/mac/ScreenMac.mm.
   22595         * platform/mac/ScreenMac.mm: Removed.
   22596         * platform/qt/PlatformScreenQt.cpp: Added.
   22597         (WebCore::WebCore::screenDepth):
   22598         (WebCore::WebCore::screenDepthPerComponent):
   22599         (WebCore::WebCore::screenIsMonochrome):
   22600         (WebCore::WebCore::screenRect):
   22601         (WebCore::WebCore::screenAvailableRect):
   22602         * platform/qt/TemporaryLinkStubs.cpp:
   22603         * platform/win/PlatformScreenWin.cpp: Copied from WebCore/platform/win/ScreenWin.cpp.
   22604         * platform/win/ScreenWin.cpp: Removed.
   22605         * rendering/RenderObject.cpp:
   22606 
   22607 2007-06-18  Sam Weinig  <sam (a] webkit.org>
   22608 
   22609         Reviewed by Geoff.
   22610 
   22611         Patch for http://bugs.webkit.org/show_bug.cgi?id=14211
   22612         Move the BarInfo object out of the JS bindings
   22613 
   22614         * DerivedSources.make:
   22615         * WebCore.pro:
   22616         * WebCore.vcproj/WebCore.vcproj:
   22617         * WebCore.xcodeproj/project.pbxproj:
   22618         * bindings/js/kjs_window.cpp:
   22619         (KJS::WindowPrivate::WindowPrivate):
   22620         (KJS::Window::mark):
   22621         (KJS::Window::getValueProperty):
   22622         (KJS::Window::clearHelperObjectProperties):
   22623         (KJS::Window::disconnectFrame):
   22624         * bindings/js/kjs_window.h:
   22625         (KJS::Window::):
   22626         * page/BarInfo.cpp: Added.
   22627         (WebCore::BarInfo::BarInfo):
   22628         (WebCore::BarInfo::disconnectFrame):
   22629         (WebCore::BarInfo::visible):
   22630         * page/BarInfo.h: Added.
   22631         (WebCore::BarInfo::):
   22632         * page/BarInfo.idl: Added.
   22633         * page/DOMWindow.cpp:
   22634         (WebCore::DOMWindow::~DOMWindow):
   22635         (WebCore::DOMWindow::disconnectFrame):
   22636         (WebCore::DOMWindow::locationbar):
   22637         (WebCore::DOMWindow::menubar):
   22638         (WebCore::DOMWindow::personalbar):
   22639         (WebCore::DOMWindow::scrollbars):
   22640         (WebCore::DOMWindow::statusbar):
   22641         (WebCore::DOMWindow::toolbar):
   22642         * page/DOMWindow.h:
   22643         * page/DOMWindow.idl:
   22644 
   22645 2007-06-18  Sam Weinig  <sam (a] webkit.org>
   22646 
   22647         Reviewed by Darin.
   22648 
   22649         Remove the FrameArray class and instead make window.frames another
   22650         self-reference for window (like window.window, window.self, etc).
   22651         This is what Firefox and what the HTML5 dictates.
   22652 
   22653         * bindings/js/kjs_window.cpp:
   22654         (KJS::WindowPrivate::WindowPrivate):
   22655         (KJS::Window::mark):
   22656         (KJS::Window::getValueProperty):
   22657         (KJS::Window::clearHelperObjectProperties):
   22658         (KJS::Window::disconnectFrame):
   22659         * bindings/js/kjs_window.h:
   22660 
   22661 2007-06-18  Mitz Pettel  <mitz (a] webkit.org>
   22662 
   22663         Reviewed by Adele.
   22664 
   22665         - fix http://bugs.webkit.org/show_bug.cgi?id=13413
   22666           Failed assertion in RenderTextControl::setSelectionRange in Google Spreadsheets
   22667 
   22668         Test: fast/forms/input-zero-height-focus.html
   22669 
   22670         * rendering/RenderTextControl.cpp:
   22671         (WebCore::RenderTextControl::setSelectionRange): Avoid setting the
   22672         selection in a zero-height text control.
   22673 
   22674 2007-06-18  Alp Toker  <alp.toker (a] collabora.co.uk>
   22675 
   22676         Reviewed by Sam Weinig.
   22677 
   22678         http://bugs.webkit.org/show_bug.cgi?id=14052
   22679         Implement SoundGdk
   22680 
   22681         * WebCore.pro:
   22682         * platform/gdk/SoundGdk.cpp: Added.
   22683         (WebCore::systemBeep):
   22684         * platform/gdk/TemporaryLinkStubs.cpp:
   22685         (WebCore::systemBeep):
   22686 
   22687 2007-06-18  Dave Hyatt  <hyatt (a] apple.com>
   22688 
   22689         Add support for horizontal mouse wheeling on Windows.
   22690         
   22691         Reviewed by aroben
   22692 
   22693         * platform/PlatformWheelEvent.h:
   22694         * platform/win/WheelEventWin.cpp:
   22695         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   22696 
   22697 2007-06-17  Sam Weinig  <sam (a] webkit.org>
   22698 
   22699         Win32 build fix.
   22700 
   22701         * WebCore.vcproj/WebCore.vcproj:
   22702 
   22703 2007-06-15  David Hyatt  <hyatt (a] apple.com>
   22704 
   22705         Fix for bugzilla bugs 14183 and 14184, 'repeat' regressed in border-image
   22706         because of a botched 'round' support removal.  Also update for a change in
   22707         the spec that has the second stretch/round/repeat keyword match the first
   22708         if omitted.
   22709         
   22710         Reviewed by olliej
   22711 
   22712         * css/cssparser.cpp:
   22713         (WebCore::BorderImageParseContext::commitBorderImage):
   22714         * platform/graphics/Image.cpp:
   22715         (WebCore::Image::drawTiled):
   22716         * platform/graphics/Image.h:
   22717         (WebCore::Image::):
   22718 
   22719 2007-06-15  Sam Weinig  <sam (a] webkit.org>
   22720 
   22721         Reviewed by Darin.
   22722 
   22723         Patch for http://bugs.webkit.org/show_bug.cgi?id=14053
   22724         Autogenerate JS binding for Rect
   22725 
   22726         - Renames RectImpl to Rect, DOMStyleSheetList to JSStyleSheetList 
   22727           and DOMRGBColor to JSRGBColor
   22728         - Moves JSStyleSheetList and JSRGBColor into the WebCore namespace.
   22729 
   22730         * DerivedSources.make:
   22731         * WebCore.pro:
   22732         * WebCore.xcodeproj/project.pbxproj:
   22733         * bindings/js/kjs_css.cpp:
   22734         (WebCore::):
   22735         (WebCore::JSStyleSheetList::JSStyleSheetList):
   22736         (WebCore::JSStyleSheetList::~JSStyleSheetList):
   22737         (WebCore::JSStyleSheetList::getValueProperty):
   22738         (WebCore::JSStyleSheetList::indexGetter):
   22739         (WebCore::JSStyleSheetList::nameGetter):
   22740         (WebCore::JSStyleSheetList::getOwnPropertySlot):
   22741         (WebCore::toJS):
   22742         (WebCore::JSStyleSheetListFunc::callAsFunction):
   22743         (WebCore::JSRGBColor::JSRGBColor):
   22744         (WebCore::JSRGBColor::~JSRGBColor):
   22745         (WebCore::JSRGBColor::getOwnPropertySlot):
   22746         (WebCore::JSRGBColor::getValueProperty):
   22747         (WebCore::getJSRGBColor):
   22748         * bindings/js/kjs_css.h:
   22749         (WebCore::JSStyleSheetList::classInfo):
   22750         (WebCore::JSStyleSheetList::):
   22751         (WebCore::JSStyleSheetList::impl):
   22752         (WebCore::JSRGBColor::classInfo):
   22753         (WebCore::JSRGBColor::):
   22754         (WebCore::JSRGBColor::impl):
   22755         * bindings/objc/DOMUtility.mm:
   22756         (KJS::createDOMWrapper):
   22757         * bindings/scripts/CodeGeneratorJS.pm:
   22758         * bindings/scripts/CodeGeneratorObjC.pm:
   22759         * css/CSSBorderImageValue.cpp:
   22760         (WebCore::CSSBorderImageValue::CSSBorderImageValue):
   22761         * css/CSSBorderImageValue.h:
   22762         * css/CSSPrimitiveValue.cpp:
   22763         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   22764         (WebCore::CSSPrimitiveValue::cssText):
   22765         * css/CSSPrimitiveValue.h:
   22766         (WebCore::CSSPrimitiveValue::getRectValue):
   22767         (WebCore::CSSPrimitiveValue::):
   22768         * css/DashboardRegion.h:
   22769         * css/Rect.h: Copied from css/RectImpl.h.
   22770         (WebCore::Rect::~Rect):
   22771         (WebCore::Rect::top):
   22772         (WebCore::Rect::right):
   22773         (WebCore::Rect::bottom):
   22774         (WebCore::Rect::left):
   22775         (WebCore::Rect::setTop):
   22776         (WebCore::Rect::setRight):
   22777         (WebCore::Rect::setBottom):
   22778         (WebCore::Rect::setLeft):
   22779         * css/Rect.idl:
   22780         * css/RectImpl.h: Removed.
   22781         * css/cssparser.cpp:
   22782         (WebCore::CSSParser::parseShape):
   22783         (WebCore::BorderImageParseContext::commitBorderImage):
   22784         * css/cssstyleselector.cpp:
   22785         (WebCore::CSSStyleSelector::applyProperty):
   22786         * page/DOMWindow.idl:
   22787 
   22788 2007-06-14  George Staikos  <staikos (a] kde.org>
   22789 
   22790         Reviewed by Lars.
   22791 
   22792         Implement missing tab support and a slight refactor.
   22793 
   22794         * platform/qt/PlatformKeyboardEventQt.cpp:
   22795         (WebCore::keyIdentifierForQtKeyCode):
   22796         (WebCore::windowsKeyCodeForKeyEvent):
   22797         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   22798 
   22799 2007-06-14  Dave Hyatt  <hyatt (a] apple.com>
   22800 
   22801         Fix for Bugzilla bug 14806, missing text for bold/italic fonts in non-English Windows installs.
   22802         
   22803         This patch adds an additional step after the lookup by full name fails.  It will then look up
   22804         a PostScript name in a (localized full name) -> (PostScript name) cache.  If the name is not
   22805         found, then the font's name table is obtained and searched for a PostScript name (and the
   22806         result is cached).
   22807         
   22808         If lookup on PostScript name fails too, then we now properly fall back to the next font in the
   22809         list (so text should never be missing).
   22810 
   22811         Reviewed by Darin (thoroughly reviewed, super reviewed even)
   22812 
   22813         * platform/win/FontCacheWin.cpp:
   22814         * platform/win/FontPlatformDataWin.cpp:
   22815 
   22816 2007-06-14  Anders Carlsson  <andersca (a] apple.com>
   22817 
   22818         Reviewed by Geoff.
   22819 
   22820         Add Frame::cleanupScriptObjectsForPlugin which will invalidate the root object
   22821         for a given plug-in.
   22822 
   22823         * WebCore.exp:
   22824         * page/Frame.cpp:
   22825         (WebCore::Frame::cleanupScriptObjectsForPlugin):
   22826         * page/Frame.h:
   22827 
   22828 2007-06-14  Anders Carlsson  <andersca (a] apple.com>
   22829 
   22830         Reviewed by Geoff.
   22831 
   22832         <rdar://problem/5211677>
   22833         -[WebPreferences setJavaEnabled:] only disables java inside <applet>, not <object>
   22834         
   22835         * loader/FrameLoader.cpp:
   22836         (WebCore::FrameLoader::requestObject):
   22837         If the object is a Java MIME type and Java is disabled, don't load the plug-in.
   22838         
   22839         * platform/MimeTypeRegistry.cpp:
   22840         (WebCore::MimeTypeRegistry::isJavaAppletMIMEType):
   22841         Clean this up and add another applet MIME type.
   22842 
   22843 2007-06-14  George Staikos  <staikos (a] kde.org>
   22844 
   22845         Reviewed by Lars.
   22846 
   22847         Implement the file chooser for Qt.
   22848 
   22849         * platform/qt/FileChooserQt.cpp:
   22850         (WebCore::FileChooser::openFileChooser):
   22851         (WebCore::FileChooser::basenameForWidth):
   22852 
   22853 2007-06-14  George Staikos  <staikos (a] kde.org>
   22854 
   22855         Reviewed by Lars.
   22856 
   22857         Add missing initialization of pointer.
   22858 
   22859         * platform/qt/ContextMenuQt.cpp:
   22860         (WebCore::ContextMenu::ContextMenu):
   22861 
   22862 2007-06-14  Anders Carlsson  <andersca (a] apple.com>
   22863 
   22864         Reviewed by Mitz.
   22865 
   22866         <rdar://problem/5244948>
   22867         Safari keeps on complaining about slow script playing NBC TV video (14133)
   22868 
   22869         http://bugs.webkit.org/show_bug.cgi?id=14133
   22870         Runaway JavaScript timer fires when spinning around in Google Maps street view
   22871 
   22872         Make sure to start and stop the timeout checker around calls to JS.
   22873 
   22874         * bindings/objc/WebScriptObject.mm:
   22875         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   22876         (-[WebScriptObject evaluateWebScript:]):
   22877 
   22878 2007-06-14  George Staikos  <staikos (a] kde.org>
   22879 
   22880         Reviewed by Maciej.
   22881 
   22882         Keypress causes typeahead crash on empty selects due to modulo 0.
   22883 
   22884         * html/HTMLSelectElement.cpp:
   22885         (WebCore::HTMLSelectElement::typeAheadFind):
   22886 
   22887 2007-06-13  George Staikos  <staikos (a] kde.org>
   22888 
   22889         Reviewed by Lars.
   22890 
   22891         Compile without self-linking.
   22892 
   22893         * WebCore.pro:
   22894 
   22895 2007-06-13  Darin Adler  <darin (a] apple.com>
   22896 
   22897         Reviewed by Kevin Decker.
   22898 
   22899         - fix <rdar://problem/5264923> Safari frequently "stalls" beneath
   22900           +[NSFont fontWithName:size:] while loading a web page (searching on disk for the font)
   22901 
   22902         * platform/mac/WebFontCache.mm:
   22903         (+[WebFontCache internalFontWithFamily:traits:size:]): Renamed from fontWithFamily.
   22904         Took out the auto-activation code.
   22905         (+[WebFontCache fontWithFamily:traits:size:]): Added. Calls internalFontWithFamily,
   22906         then calls NSFont to trigger activation if that returned nil, then calls
   22907         internalFontWithFamily again.
   22908 
   22909 2007-06-13  Anders Carlsson  <andersca (a] apple.com>
   22910 
   22911         Reviewed by Geoff.
   22912 
   22913         Pass the root object to methods that end up creating new ObjcInstance objects.
   22914         
   22915         * bindings/objc/WebScriptObject.mm:
   22916         (listFromNSArray):
   22917         (-[WebScriptObject callWebScriptMethod:withArguments:]):
   22918         (-[WebScriptObject evaluateWebScript:]):
   22919         (-[WebScriptObject setValue:forKey:]):
   22920         (-[WebScriptObject valueForKey:]):
   22921         (-[WebScriptObject removeWebScriptKey:]):
   22922         (-[WebScriptObject setWebScriptValueAtIndex:value:]):
   22923 
   22924 2007-06-13  Anders Carlsson  <andersca (a] apple.com>
   22925 
   22926         Reviewed by Darin.
   22927 
   22928         <rdar://problem/5267992>
   22929         Make sure an alert doesn't allow loading to continue inside a script.
   22930         
   22931         Make sure to defer all loads where it's possible for a second main loop to be running.
   22932         
   22933         * page/Chrome.cpp:
   22934         (WebCore::Chrome::runModal):
   22935         (WebCore::Chrome::runBeforeUnloadConfirmPanel):
   22936         (WebCore::Chrome::runJavaScriptAlert):
   22937         (WebCore::Chrome::runJavaScriptConfirm):
   22938         (WebCore::Chrome::runJavaScriptPrompt):
   22939         (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
   22940         (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
   22941         
   22942         * platform/network/cf/ResourceHandleCFNet.cpp:
   22943         (WebCore::ResourceHandle::setDefersLoading):
   22944         Implement this.
   22945 
   22946 2007-06-13  Alp Toker  <alp.toker (a] collabora.co.uk>
   22947 
   22948         Reviewed by Rob.
   22949 
   22950         http://bugs.webkit.org/show_bug.cgi?id=14060
   22951         Cairo SVG support
   22952 
   22953         * WebCore.pro: Add new files to the build.
   22954         * platform/graphics/svg/SVGPaintServerPattern.h:
   22955         * platform/graphics/svg/SVGPaintServerSolid.h:
   22956         * platform/graphics/svg/cairo: Added.
   22957         * platform/graphics/svg/cairo/RenderPathCairo.cpp: Added.
   22958         (WebCore::RenderPath::strokeContains):
   22959         (WebCore::RenderPath::strokeBBox):
   22960         * platform/graphics/svg/cairo/SVGPaintServerCairo.cpp: Added.
   22961         (WebCore::SVGPaintServer::draw):
   22962         (WebCore::SVGPaintServer::teardown):
   22963         (WebCore::SVGPaintServer::renderPath):
   22964         * platform/graphics/svg/cairo/SVGPaintServerGradientCairo.cpp: Added.
   22965         (WebCore::SVGPaintServerGradient::setup):
   22966         * platform/graphics/svg/cairo/SVGPaintServerPatternCairo.cpp: Added.
   22967         (WebCore::SVGPaintServerPattern::setup):
   22968         * platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp: Added.
   22969         (WebCore::SVGPaintServerSolid::setup):
   22970         * platform/graphics/svg/cairo/SVGResourceClipperCairo.cpp: Added.
   22971         (WebCore::SVGResourceClipper::applyClip):
   22972         * platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp: Added.
   22973         (WebCore::SVGResourceMasker::applyMask):
   22974 
   22975 2007-06-13  Simon Hausmann  <hausmann (a] kde.org>
   22976 
   22977         Reviewed by Lars.
   22978 
   22979         Added a make install target that installs the Qt port and renamed
   22980         WebKitQt to QtWebKit
   22981 
   22982         * WebCore.pro:
   22983 
   22984 2007-06-13  Adam Roben  <aroben (a] apple.com>
   22985 
   22986         Fix one more BITMAPINFO/BITMAPINFOHEADER typo.
   22987 
   22988         Rubberstamped by Oliver.
   22989 
   22990         * platform/win/DragImageWin.cpp:
   22991         (WebCore::allocImage):
   22992 
   22993 2007-06-12  Oliver Hunt  <oliver (a] apple.com>
   22994 
   22995         Reviewed by Darin.
   22996 
   22997         Use correct size for BITMAPINFOHEADER -- whoops.
   22998 
   22999         * platform/win/CursorWin.cpp:
   23000         (WebCore::Cursor::Cursor):
   23001         * platform/win/PasteboardWin.cpp:
   23002         (WebCore::Pasteboard::writeImage):
   23003 
   23004 2007-06-12  Sam Weinig  <sam (a] webkit.org>
   23005 
   23006         Reviewed by Oliver.
   23007 
   23008         Patch for http://bugs.webkit.org/show_bug.cgi?id=14109
   23009         Cleanup JSEvent and JSClipboard in preperation for autogeneration
   23010 
   23011         * bindings/js/kjs_events.cpp:
   23012         (KJS::DOMEvent::DOMEvent):
   23013         (KJS::DOMEvent::getValueProperty):
   23014         (KJS::DOMEvent::put):
   23015         (KJS::DOMEvent::putValueProperty):
   23016         (KJS::DOMEventPrototypeFunction::callAsFunction):
   23017         (KJS::toJS):
   23018         (KJS::toEvent):
   23019         (KJS::):
   23020         (KJS::JSClipboard::JSClipboard):
   23021         (KJS::JSClipboard::~JSClipboard):
   23022         (KJS::JSClipboard::getOwnPropertySlot):
   23023         (KJS::JSClipboard::getValueProperty):
   23024         (KJS::JSClipboard::put):
   23025         (KJS::JSClipboard::putValueProperty):
   23026         (KJS::JSClipboardPrototypeFunction::callAsFunction):
   23027         (KJS::toClipboard):
   23028         * bindings/js/kjs_events.h:
   23029         (KJS::DOMEvent::):
   23030         (KJS::DOMEvent::impl):
   23031         (KJS::JSClipboard::impl):
   23032         * dom/ClipboardEvent.h:
   23033         * dom/Event.h:
   23034         (WebCore::Event::srcElement):
   23035         (WebCore::Event::returnValue):
   23036         (WebCore::Event::clipboardData):
   23037         (WebCore::Event::dataTransfer):
   23038         (WebCore::Event::clipboard):
   23039         * dom/MouseEvent.h:
   23040 
   23041 2007-06-13  Lars Knoll <lars (a] trolltech.com>
   23042 
   23043         Reviewed by Niko.
   23044 
   23045         Small cleanup
   23046 
   23047         * platform/qt/PlugInInfoStoreQt.cpp:
   23048         (WebCore::PlugInInfoStore::supportsMIMEType):
   23049 
   23050 2007-06-13  Lars Knoll <lars (a] trolltech.com>
   23051 
   23052         Reviewed by Niko
   23053 
   23054         Implement the parts required for the JS bridge
   23055         to know about the plugins.
   23056 
   23057         * WebCore.pro:
   23058         * platform/qt/PlugInInfoStoreQt.cpp: Added.
   23059         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
   23060         (WebCore::PlugInInfoStore::pluginCount):
   23061         (WebCore::PlugInInfoStore::supportsMIMEType):
   23062         (WebCore::refreshPlugins):
   23063         * platform/qt/TemporaryLinkStubs.cpp:
   23064 
   23065 === Merged the following changes from branches/WindowsMerge ===
   23066 
   23067 2007-06-09  Sam Weinig  <sam (a] webkit.org>
   23068 
   23069         Build fix.
   23070 
   23071         * WebCore.vcproj/WebCore.vcproj:
   23072 
   23073 2007-06-08  Anders Carlsson  <andersca (a] apple.com>
   23074 
   23075         Reviewed by Adam.
   23076 
   23077         If both the old and new WMP plugins are present, remove the old one
   23078         so we won't end up choosing it.
   23079         
   23080         * plugins/win/PluginDatabaseWin.cpp:
   23081         (WebCore::PluginDatabaseWin::getPluginsInPaths):
   23082 
   23083 2007-06-08  David Hyatt  <hyatt (a] apple.com>
   23084 
   23085         Update licenses/copyrights for WebCoreWin.
   23086 
   23087         Reviewed by mccullough
   23088 
   23089         * WebCorePrefix.cpp:
   23090         * bridge/win/FrameWin.cpp:
   23091         * bridge/win/FrameWin.h:
   23092         * bridge/win/HistoryWin.cpp:
   23093         * bridge/win/PageWin.cpp:
   23094         * page/win/EventHandlerWin.cpp:
   23095         * platform/graphics/cg/ColorCG.cpp:
   23096         * platform/graphics/cg/GraphicsContextPlatformPrivate.h:
   23097         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp:
   23098         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp:
   23099         * platform/graphics/win/IconWin.cpp:
   23100         * platform/graphics/win/ImageWin.cpp:
   23101         * platform/network/cf/FormDataStreamCFNet.cpp:
   23102         * platform/network/cf/FormDataStreamCFNet.h:
   23103         * platform/network/cf/ResourceHandleCFNet.cpp:
   23104         * platform/network/cf/ResourceRequestCFNet.cpp:
   23105         * platform/network/cf/ResourceResponseCFNet.cpp:
   23106         * platform/network/win/CookieJarWin.cpp:
   23107         * platform/network/win/ResourceHandleWin.cpp:
   23108         * platform/network/win/ResourceHandleWin.h:
   23109         * platform/win/BString.cpp:
   23110         * platform/win/BString.h:
   23111         * platform/win/ClipboardWin.h:
   23112         * platform/win/ContextMenuWin.cpp:
   23113         * platform/win/CursorWin.cpp:
   23114         * platform/win/EditorWin.cpp:
   23115         * platform/win/FontCacheWin.cpp:
   23116         * platform/win/FontDataWin.cpp:
   23117         * platform/win/FontPlatformData.h:
   23118         * platform/win/FontPlatformDataWin.cpp:
   23119         * platform/win/FontWin.cpp:
   23120         * platform/win/GlyphPageTreeNodeWin.cpp:
   23121         * platform/win/GraphicsContextWin.cpp:
   23122         * platform/win/KeyEventWin.cpp:
   23123         * platform/win/MimeTypeRegistryWin.cpp:
   23124         * platform/win/NotImplemented.h:
   23125         * platform/win/PlatformMouseEventWin.cpp:
   23126         * platform/win/PlatformScrollBar.h:
   23127         * platform/win/PlatformScrollBarWin.cpp:
   23128         * platform/win/PopupMenuWin.cpp:
   23129         * platform/win/ScreenWin.cpp:
   23130         * platform/win/ScrollViewWin.cpp:
   23131         * platform/win/SearchPopupMenuWin.cpp:
   23132         * platform/win/SoundWin.cpp:
   23133         * platform/win/TemporaryLinkStubs.cpp:
   23134         * platform/win/TextBoundariesWin.cpp:
   23135         * platform/win/WebCoreHistory.cpp:
   23136         * platform/win/WebCoreHistory.h:
   23137         * platform/win/WebCoreSystemInterface.cpp:
   23138         * platform/win/WebCoreSystemInterface.h:
   23139         * platform/win/WheelEventWin.cpp:
   23140         * platform/win/WidgetWin.cpp:
   23141         * plugins/win/PlugInInfoStoreWin.cpp:
   23142         * plugins/win/PluginDatabaseWin.cpp:
   23143         * plugins/win/PluginDatabaseWin.h:
   23144         * plugins/win/PluginDebug.h:
   23145         * plugins/win/PluginPackageWin.cpp:
   23146         * plugins/win/PluginPackageWin.h:
   23147         * plugins/win/PluginStreamWin.cpp:
   23148         * plugins/win/PluginStreamWin.h:
   23149         * plugins/win/PluginViewWin.cpp:
   23150         * plugins/win/PluginViewWin.h:
   23151         * plugins/win/npapi.cpp:
   23152         * plugins/win/npfunctions.h:
   23153         * rendering/RenderThemeSafari.cpp:
   23154         * rendering/RenderThemeSafari.h:
   23155         * rendering/RenderThemeWin.h:
   23156 
   23157 2007-06-07  Sam Weinig  <sam (a] webkit.org>
   23158 
   23159         Fix build.
   23160 
   23161         * WebCore.vcproj/WebCore.vcproj:
   23162 
   23163 2007-06-07  Anders Carlsson  <andersca (a] apple.com>
   23164 
   23165         Reviewed by Steve.
   23166 
   23167         <rdar://problem/5252902>
   23168         Shockwave plug-in content crashes.
   23169         
   23170         Add a new quirk for plug-ins that need their WNDPROCs to be ASCII. If someone uses SetWindowLongA to set the WNDPROC to an ASCII one
   23171         and the previous one was an Unicode one, the value returned from SetWindowLongA (the old WNDPROC) will not be a function pointer, but instead
   23172         a special value. The Win32 API CallWndProc knows that when it encounters a special value it must convert the message to Unicode. Shockwave 
   23173         does not use CallWndProc but instead treats the WNDPROC as a function.
   23174         
   23175         * plugins/win/PluginViewWin.cpp:
   23176         (WebCore::PluginViewWndProc):
   23177         (WebCore::PluginViewWin::determineQuirks):
   23178         (WebCore::PluginViewWin::init):
   23179         * plugins/win/PluginViewWin.h:
   23180         (WebCore::):
   23181         (WebCore::PluginViewWin::quirks):
   23182 
   23183 2007-06-07  Sam Weinig  <sam (a] webkit.org>
   23184 
   23185         Build fix for the build fix.
   23186 
   23187         * WebCore.vcproj/WebCore.vcproj:
   23188 
   23189 2007-06-07  Sam Weinig  <sam (a] webkit.org>
   23190 
   23191         Build fix.
   23192 
   23193         * WebCore.vcproj/WebCore.vcproj:
   23194 
   23195 2007-06-06  Sam Weinig  <sam (a] webkit.org>
   23196 
   23197         Build fix.
   23198 
   23199         * WebCore.vcproj/WebCore.vcproj:
   23200 
   23201 2007-06-03  Steve Falkenburg  <sfalken (a] apple.com>
   23202 
   23203         Reviewed by Oliver.
   23204 
   23205         Update to last fix.
   23206         Invalidate a list of rects rather than unioning them.
   23207 
   23208         * plugins/win/PluginViewWin.cpp:
   23209         (WebCore::PluginViewWin::invalidateTimerFired):
   23210         (WebCore::PluginViewWin::invalidateRect):
   23211         * plugins/win/PluginViewWin.h:
   23212 
   23213 2007-06-03  Steve Falkenburg  <sfalken (a] apple.com>
   23214 
   23215         Reviewed by Oliver.
   23216 
   23217         <rdar://problem/5245016> 100A89+WebKit.dll: Can't select text in page location field at kids.yahoo.com
   23218         
   23219         Delay invalidates for windowless Flash to prevent Flash WM_PAINT and WM_USER+1 messages from
   23220         starving other HWNDs.
   23221         
   23222         This code defers the invalidate through a WebCore::Timer.  We could have used a Windows ::SetTimer
   23223         to further lessen CPU load, but this would have the additional risk of negatively impacting Flash
   23224         performance, since WebCore::Timer is set up to be more responsive than ::SetTimer.
   23225 
   23226         * plugins/win/PluginViewWin.cpp:
   23227         (WebCore::PluginViewWin::invalidateTimerFired): Added.
   23228         (WebCore::PluginViewWin::invalidateRect): Delay invalidates for windowless Flash.
   23229         (WebCore::PluginViewWin::determineQuirks): Add delayed invalidate quirk.
   23230         * plugins/win/PluginViewWin.h:
   23231 
   23232 2007-06-02  Steve Falkenburg  <sfalken (a] apple.com>
   23233 
   23234         Reviewed by Adam.
   23235 
   23236         Update last fix to use startsWith instead of strcmpi.
   23237 
   23238         * plugins/win/PluginStreamWin.cpp:
   23239         (WebCore::PluginStreamWin::startStream):
   23240         * plugins/win/PluginViewWin.cpp:
   23241         (WebCore::scriptStringIfJavaScriptURL):
   23242 
   23243 2007-06-02  Steve Falkenburg  <sfalken (a] apple.com>
   23244 
   23245         Reviewed by gramps.
   23246 
   23247         Fix http://www.tvguide.com/ "LAUNCH VIDEO & PHOTO PLAYER" button.
   23248         Make "javascript" URL scheme string compare case insensitive.
   23249 
   23250         * plugins/win/PluginStreamWin.cpp:
   23251         (WebCore::PluginStreamWin::startStream): Use strcmpi.
   23252         * plugins/win/PluginViewWin.cpp:
   23253         (WebCore::scriptStringIfJavaScriptURL): Use strcmpi.
   23254 
   23255 2007-06-01  Anders Carlsson  <andersca (a] apple.com>
   23256 
   23257         Reviewed by Steve.
   23258 
   23259         If the value exists but is empty, return an empty String.
   23260         
   23261         * plugins/win/PluginPackageWin.cpp:
   23262         (WebCore::getVersionInfo):
   23263 
   23264 2007-06-01  Anders Carlsson  <andersca (a] apple.com>
   23265 
   23266         Reviewed by Steve.
   23267 
   23268         Add the default path for the new WMP Firefox plugin.
   23269 
   23270         * plugins/win/PluginDatabaseWin.cpp:
   23271         (WebCore::addWindowsMediaPlayerPluginPath):
   23272 
   23273 2007-05-31  Sam Weinig  <sam (a] webkit.org>
   23274 
   23275         Fixed build.
   23276 
   23277         * WebCore.vcproj/WebCore.vcproj:
   23278 
   23279 2007-05-31  Sam Weinig  <sam (a] webkit.org>
   23280 
   23281         Fixed build.
   23282 
   23283         * WebCore.vcproj/WebCore.vcproj:
   23284 
   23285 2007-05-30  Ada Chan  <adachan (a] apple.com>
   23286 
   23287         Reviewed by Adam.
   23288 
   23289         Fixed build.
   23290 
   23291         * platform/win/PopupMenuWin.cpp:
   23292         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   23293 
   23294 2007-05-30  Sam Weinig  <sam (a] webkit.org>
   23295 
   23296         Build Fix.
   23297 
   23298         * WebCore.vcproj/WebCore.vcproj:
   23299 
   23300 2007-05-29  Sam Weinig  <sam (a] webkit.org>
   23301 
   23302         Fix the build.
   23303 
   23304         * WebCore.vcproj/WebCore.vcproj:
   23305 
   23306 2007-05-29  Anders Carlsson  <andersca (a] apple.com>
   23307 
   23308         Reviewed by Adam.
   23309 
   23310         <rdar://4782915> plugin is not in the right place at jumble.com/play.html
   23311 
   23312         Pass the plugin window coordinates for windowed plugins too.
   23313         
   23314         * plugins/win/PluginViewWin.cpp:
   23315         (WebCore::PluginViewWin::setNPWindowRect):
   23316 
   23317 2007-05-29  Anders Carlsson  <andersca (a] apple.com>
   23318 
   23319         Reviewed by Adam.
   23320 
   23321         <rdar://problem/4761543> nike.com doesn't finish loading if Flash plugin is installed
   23322         <rdar://problem/5131528> play button on Flash in ESPN front page does not start movie
   23323         
   23324         Make sure to call NPP_SetWindow right after creating the plugin, and not from the main loop. However,
   23325         the WMP plugin needs to have the plugin's window coordinates set correctly when calling NPP_SetWindow so add a 
   23326         quirk for that.
   23327         
   23328         * plugins/win/PluginViewWin.cpp:
   23329         (WebCore::PluginViewWin::determineQuirks):
   23330         (WebCore::PluginViewWin::init):
   23331         * plugins/win/PluginViewWin.h:
   23332         (WebCore::):
   23333 
   23334 2007-05-29  Sam Weinig  <sam (a] webkit.org>
   23335 
   23336         Reviewed by Adam Roben.
   23337 
   23338         - Removes platform/win/NotImplemented.h because we have consolidated
   23339           the notImplemented() for all platforms in platform/NotImplemented.h
   23340         - Fixes remaining uses of old macro to use the new notImplemented() one.
   23341 
   23342         * WebCore.vcproj/WebCore.vcproj:
   23343         * page/win/EventHandlerWin.cpp:
   23344         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
   23345         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp:
   23346         (WebCore::SVGResourceFilter::prepareFilter):
   23347         (WebCore::SVGResourceFilter::applyFilter):
   23348         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp:
   23349         (WebCore::SVGResourceMasker::applyMask):
   23350         * platform/win/GraphicsContextWin.cpp:
   23351         (WebCore::contextForImage):
   23352         * platform/win/NotImplemented.h: Removed.
   23353         * platform/win/SearchPopupMenuWin.cpp:
   23354         (WebCore::SearchPopupMenu::saveRecentSearches):
   23355         (WebCore::SearchPopupMenu::loadRecentSearches):
   23356         * platform/win/TemporaryLinkStubs.cpp:
   23357         (Frame::print):
   23358         (Frame::issueTransposeCommand):
   23359         (GraphicsContextPlatformPrivate::clip):
   23360         (WebCore::FrameView::updateBorder):
   23361         (Widget::setIsSelected):
   23362         (ScrollView::inWindow):
   23363         (WebCore::focusRingColor):
   23364         (WebCore::setFocusRingColorChangeFunction):
   23365         (Frame::setNeedsReapplyStyles):
   23366         (FrameLoader::overrideMediaType):
   23367         (DocumentLoader::getResponseModifiedHeader):
   23368         (ResourceHandle::willLoadFromCache):
   23369         (WebCore::userIdleTime):
   23370         (CachedPage::close):
   23371         (WebCore::supportedKeySizes):
   23372         (WebCore::signedPublicKeyAndChallengeString):
   23373         * plugins/win/PluginViewWin.cpp:
   23374         (WebCore::PluginViewWin::newStream):
   23375         (WebCore::PluginViewWin::write):
   23376         (WebCore::PluginViewWin::setValue):
   23377 
   23378 2007-05-29  Anders Carlsson  <andersca (a] apple.com>
   23379 
   23380         Build fix.
   23381         
   23382         * rendering/RenderThemeSafari.cpp:
   23383         (WebCore::RenderThemeSafari::adjustSliderThumbStyle):
   23384 
   23385 2007-05-29  Anders Carlsson  <andersca (a] apple.com>
   23386 
   23387         Reviewed by Adam.
   23388 
   23389         Port code from open source changeset 21808, fixing
   23390         http://bugs.webkit.org/show_bug.cgi?id=13871 
   23391         
   23392         * rendering/RenderThemeSafari.cpp:
   23393         (WebCore::RenderThemeMac::adjustSliderThumbStyle):
   23394         * rendering/RenderThemeSafari.h:
   23395 
   23396 2007-05-29  Ada Chan  <adachan (a] apple.com>
   23397 
   23398         Build fix.
   23399         - Added "$(ProjectDir)..\platform\win" to include paths
   23400         - Added WebCore\bindings\js\JSCSSStyleDeclarationCustom.cpp to project
   23401 
   23402         * WebCore.vcproj/WebCore.vcproj:
   23403 
   23404 2007-05-28  Sam Weinig  <sam (a] webkit.org>
   23405 
   23406         Build fix.
   23407 
   23408         * WebCore.vcproj/WebCore.vcproj:
   23409 
   23410 2007-05-27  Sam Weinig  <sam (a] webkit.org>
   23411 
   23412         Build fix.
   23413 
   23414         * WebCore.vcproj/WebCore.vcproj:
   23415 
   23416 2007-05-24  Geoffrey Garen  <ggaren (a] apple.com>
   23417 
   23418         Reviewed by Darin Adler.
   23419 
   23420         Fixed a bug with Settings where a number of different objects held bare 
   23421         Settings* data members, even though the Page owns the Settings object and 
   23422         deletes it upon destruction.
   23423 
   23424         Added NULL checks since the Page can be deleted before the frame/document.
   23425 
   23426         * plugins/win/PluginViewWin.cpp:
   23427         (WebCore::PluginViewWin::load):
   23428 
   23429 2007-05-24  Sam Weinig  <sam (a] webkit.org>
   23430 
   23431         Reviewed by NOBODY.
   23432 
   23433         Build fix.
   23434 
   23435         * WebCore.vcproj/WebCore.vcproj:
   23436 
   23437 2007-05-24  Anders Carlsson  <andersca (a] apple.com>
   23438 
   23439         Reviewed by Adam.
   23440 
   23441         <rdar://5211882>
   23442         Need to relaunch Boomer to recognize newly installed QT plug-in
   23443         
   23444         <rdar://5061867>
   23445         After installing Flash, Safari would still not display pages that needed it
   23446         
   23447         * plugins/win/PluginDatabaseWin.cpp:
   23448         (WebCore::PluginDatabaseWin::refresh):
   23449         Return whether the plugin database changed or not.
   23450         
   23451         (WebCore::PluginDatabaseWin::findPlugin):
   23452         New function that tries to find a plug-in given its url and MIME type.
   23453         
   23454         (WebCore::PluginDatabaseWin::createPluginView):
   23455         If no plugin is found, refresh the database and search for the plugin again if the database changed.
   23456         
   23457 2007-05-24  Adele Peterson  <adele (a] apple.com>
   23458 
   23459         - fix http://bugs.webkit.org/show_bug.cgi?id=13837
   23460           Separator in new <select> widget disappears when block element with border is in document.
   23461 
   23462         * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintMenuListButton):
   23463          Added calls to set the stroke style and thickness when painting the arrows and the separator.
   23464 
   23465 2007-05-24  Sam Weinig  <sam (a] webkit.org>
   23466 
   23467         Build fix.
   23468 
   23469         * WebCore.vcproj/WebCore.vcproj:
   23470 
   23471 2007-05-23  Sam Weinig  <sam (a] webkit.org>
   23472 
   23473         Build fix.
   23474 
   23475         * WebCore.vcproj/WebCore.vcproj:
   23476 
   23477 2007-05-23  Anders Carlsson  <andersca (a] apple.com>
   23478 
   23479         Fix build.
   23480         
   23481         * platform/win/CursorWin.cpp:
   23482         (WebCore::zoomInCursor):
   23483         (WebCore::zoomOutCursor):
   23484 
   23485 2007-05-22  Ada Chan  <adachan (a] apple.com>
   23486 
   23487         Fix build.
   23488 
   23489         * plugins/win/PluginViewWin.cpp:
   23490         (WebCore::PluginViewWin::handleMouseEvent):
   23491 
   23492 2007-05-22  Justin Garcia  <justin.garcia (a] apple.com>
   23493 
   23494         Reviewed by oliver
   23495 
   23496         Build fix.
   23497 
   23498         * plugins/win/PluginViewWin.cpp:
   23499         (WebCore::PluginViewWin::handleMouseEvent): 
   23500 
   23501 2007-05-21  Sam Weinig  <sam (a] webkit.org>
   23502 
   23503         Reviewed by Oliver.
   23504 
   23505         Build fix.
   23506 
   23507         * WebCore.vcproj/WebCore.vcproj:
   23508 
   23509 2007-05-21  Sam Weinig  <sam (a] webkit.org>
   23510 
   23511         Reviewed by Adam.
   23512 
   23513         Build fix.
   23514 
   23515         * WebCore.vcproj/WebCore.vcproj:
   23516 
   23517 2007-05-17  Steve Falkenburg  <sfalken (a] apple.com>
   23518 
   23519         Reviewed by Geoff, Adam.
   23520 
   23521         Use precompiled headers (via WebCorePrefix.h) to speed up WebCoreWin builds.
   23522         This improved WebCore debug rebuild time from 40 minutes to 25 for me.
   23523         
   23524         A few files needed to be excluded, since they didn't build properly with
   23525         the prefix file: ColorData.c, CSSGrammar.cpp, HTMLEntityNames.c, XPathGrammar.cpp, XPathParser.cpp.
   23526 
   23527         * WebCore.vcproj/WebCore.vcproj: Turn on precompiled header, force includes flags.
   23528         * WebCorePrefix.cpp: Added.
   23529         * WebCorePrefix.h: Added.
   23530         * config.h: Modified to be compatible with WebCorePrefix.h.
   23531 
   23532 2007-05-18  Sam Weinig  <sam (a] webkit.org>
   23533 
   23534         Reviewed by Adam.
   23535 
   23536         Fixing the vcproj paths.
   23537 
   23538         * WebCore.vcproj/WebCore.vcproj:
   23539 
   23540 2007-05-18  Sam Weinig  <sam (a] webkit.org>
   23541 
   23542         Reviewed by Geoff.
   23543 
   23544         Build fix after r21577.
   23545 
   23546         * WebCore.vcproj/WebCore.vcproj:
   23547 
   23548 2007-05-18  Adam Roben  <aroben (a] apple.com>
   23549 
   23550         Build fix after r21562.
   23551 
   23552         * platform/win/TemporaryLinkStubs.cpp:
   23553         * platform/win/WidgetWin.cpp:
   23554         * plugins/win/PluginViewWin.cpp:
   23555         * plugins/win/PluginViewWin.h:
   23556 
   23557 2007-05-18  Anders Carlsson  <andersca (a] apple.com>
   23558 
   23559         Reviewed by Geoff.
   23560         
   23561         <rdar://problem/4914940> Some plugins won't redraw correctly when scrolling
   23562         
   23563         This patch does two things:
   23564         
   23565         1. It comments out the call to set the window's region to an empty region while it's being moved. This was done to prevent
   23566         the QT plugin from drawing outside its bounds when scrolling it when it's inside an iframe or div with overflow.
   23567         
   23568         2. It lets Windows handle its invalid region when moving the window and setting its new window region.
   23569         
   23570         * plugins/win/PluginViewWin.cpp:
   23571         (WebCore::PluginViewWin::updateWindow):
   23572 
   23573 2007-05-18  Adam Roben  <aroben (a] apple.com>
   23574 
   23575         Build fix after r21555.
   23576 
   23577         * page/win/EventHandlerWin.cpp:
   23578         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   23579 
   23580 2007-05-17  Sam Weinig  <sam (a] webkit.org>
   23581 
   23582         Reviewed by Adam.
   23583 
   23584         Build Fix after <rdar://problem/5201423>
   23585 
   23586         * WebCore.vcproj/WebCore.vcproj:
   23587 
   23588 2007-05-17  Adele Peterson  <adele (a] apple.com>
   23589 
   23590         Reviewed by Hyatt.
   23591 
   23592         Follow up to <rdar://problem/5092645> PopupMenuWin needs bidiReorderCharacters logic from RenderListBox
   23593 
   23594         * platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::paint):
   23595           Use the clientStyle to determine how to handle bidi text.  For popup buttons, which we restrict to LTR,
   23596           we will match the button text.
   23597 
   23598 2007-05-17  Anders Carlsson  <andersca (a] apple.com>
   23599 
   23600         Reviewed by Darin.
   23601 
   23602         <rdar://problem/5210600> New WMP plugin doesn't show any contents
   23603 
   23604         Call NPP_SetWindow after the window's size has been updated.
   23605         
   23606         * plugins/win/PluginViewWin.cpp:
   23607         (WebCore::PluginViewWin::setFrameGeometry):
   23608 
   23609 2007-05-17  Anders Carlsson  <andersca (a] apple.com>
   23610 
   23611         Reviewed by John.
   23612 
   23613         <rdar://problem/5204016> Repro crash on nytimes.com in MimeTypeRegistry::getMIMETypeForExtension
   23614         
   23615         Return null if the extension is null.
   23616         
   23617         * platform/win/MimeTypeRegistryWin.cpp:
   23618         (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
   23619 
   23620 2007-05-16  Adele Peterson  <adele (a] apple.com>
   23621 
   23622         Reviewed by Hyatt.
   23623 
   23624         Fix for:
   23625             <rdar://problem/5092645> PopupMenuWin needs bidiReorderCharacters logic from RenderListBox
   23626             <rdar://problem/5205654> Select popup menus should always be ltr to match the mac
   23627 
   23628         * platform/win/PopupMenuWin.cpp:
   23629         (WebCore::PopupMenu::show): Remove special cases for RTL menus, since we are always going to left align.
   23630         (WebCore::PopupMenu::calculatePositionAndSize): ditto.
   23631         (WebCore::PopupMenu::paint): Added call to bidiReorderCharacters.
   23632 
   23633 2007-05-14  Oliver Hunt  <oliver (a] apple.com>
   23634 
   23635         Reviewed by Sam.
   23636 
   23637         Fix for <rdar://problem/5147895> REGRESSION: Content-Disposition: filename is ignored for drag-and-drop.
   23638 
   23639         If the image does not already have a title, fall back to the 
   23640         name suggested by Content-Disposition.
   23641 
   23642         * platform/win/ClipboardWin.cpp:
   23643         (WebCore::createGlobalImageFileDescriptor):
   23644 
   23645 2007-05-14  Oliver Hunt  <oliver (a] apple.com>
   23646 
   23647         Reviewed by Sam.
   23648 
   23649         Fix for <rdar://problem/5202805> Null dereference in createGlobalData(CString str)
   23650         
   23651         Null terminate manually to prevent us from dereferencing null.
   23652 
   23653         * platform/win/ClipboardUtilitiesWin.cpp:
   23654         (WebCore::createGlobalData):
   23655 
   23656 2007-05-14  Oliver Hunt  <oliver (a] apple.com>
   23657 
   23658         Reviewed by Geoff.
   23659 
   23660         Windows side of fix for
   23661         <rdar://problem/4728842> Can't drag-and-drop files onto <input type="file">
   23662 
   23663         * platform/win/ClipboardUtilitiesWin.cpp:
   23664         (WebCore::cfHDropFormat):
   23665           Need to be able to access externally
   23666           
   23667         * platform/win/ClipboardUtilitiesWin.h:
   23668           Declare cfHDropFormat
   23669           
   23670         * platform/win/DragDataWin.cpp:
   23671         (WebCore::DragData::containsFiles):
   23672         (WebCore::DragData::asFilenames):
   23673           Add implementation of containsFiles and asFilenames
   23674 
   23675 2007-05-14  Geoffrey Garen  <ggaren (a] apple.com>
   23676 
   23677         Build fix.
   23678 
   23679         * WebCore.vcproj/WebCore.vcproj:
   23680 
   23681 2007-05-14  Anders Carlsson  <andersca (a] apple.com>
   23682 
   23683         Reviewed by Geoff.
   23684 
   23685         <rdar://problem/5176940> Seed10: MS Silverlight 1.0 beta plug-in is not supported
   23686         
   23687         * plugins/win/PluginDatabaseWin.cpp:
   23688         (WebCore::addPluginsFromRegistry):
   23689         New function that adds plugins from the registry from HKEY_LOCAL_MACHINE/MozillaPlugins.
   23690 
   23691         * plugins/win/PluginViewWin.cpp:
   23692         (WebCore::PluginViewWin::invalidateRect):
   23693         (WebCore::PluginViewWin::forceRedraw):
   23694         Make these work with windowed plugins.
   23695         
   23696 2007-05-13  Darin Adler  <darin (a] apple.com>
   23697 
   23698         Requested by Hyatt.
   23699 
   23700         - internal part of http://bugs.webkit.org/show_bug.cgi?id=13529
   23701           DOM3 keyIdentifier text is incorrect
   23702 
   23703         * platform/win/KeyEventWin.cpp:
   23704         (WebCore::keyIdentifierForWindowsKeyCode): Use 4 digits for "U+" stuff.
   23705 
   23706 2007-05-12  Oliver Hunt  <oliver (a] apple.com>
   23707 
   23708         rs=hyatt.
   23709 
   23710         Stubs to prevent build bustage
   23711 
   23712         * platform/win/DragDataWin.cpp:
   23713         (WebCore::DragData::containsFiles):
   23714         (WebCore::DragData::asFilenames):
   23715 
   23716 2007-05-11  Darin Adler  <darin (a] apple.com>
   23717 
   23718         * WebCore.vcproj/WebCore.vcproj: Added new RenderWordBreak.cpp/h files.
   23719 
   23720 2007-05-10  Adele Peterson  <adele (a] apple.com>
   23721 
   23722         Reviewed by Hyatt.
   23723 
   23724         * bridge/win/FrameWin.cpp:
   23725         (WebCore::imageFromSelection): Updated to use selectionRect instead of visibleSelectionRect
   23726         
   23727 2007-05-08  Steve Falkenburg  <sfalken (a] apple.com>
   23728 
   23729         Rubber-stamped by Geoff.
   23730 
   23731         Moved shared EditorWin code to Editor.cpp in open source.
   23732 
   23733         * platform/win/EditorWin.cpp: Deleted (moved) most of this file.
   23734 
   23735 2007-05-08  Steve Falkenburg  <sfalken (a] apple.com>
   23736 
   23737         Reviewed by Darin, Oliver.
   23738 
   23739         Removed localized string stubs.
   23740 
   23741         * platform/win/TemporaryLinkStubs.cpp:
   23742 
   23743 2007-05-08  Steve Falkenburg  <sfalken (a] apple.com>
   23744 
   23745         Reviewed by Ada.
   23746 
   23747         Updated for new editor interface.
   23748 
   23749         * platform/win/EditorWin.cpp:
   23750         (WebCore::Editor::advanceToNextMisspelling):
   23751         (WebCore::isRangeUngrammatical):
   23752 
   23753 2007-05-07  Alice Liu  <alice.liu (a] apple.com>
   23754 
   23755         Reviewed by Oliver.
   23756 
   23757         Fixed <rdar://5087119> Paste fidelity isn't as good as it is on the mac
   23758         and <rdar://5087118> Plain text copy/paste yields bad line endings on Boomer
   23759         and re-organized standalone functions in DragDataWin.cpp and PasteboardWin.cpp
   23760         into ClipboardUtilitiesWin.h/cpp.
   23761 
   23762         * WebCore.vcproj/WebCore.vcproj:
   23763         * platform/win/ClipboardUtilitiesWin.cpp: Added.
   23764         (WebCore::cfHDropFormat):
   23765         (WebCore::getWebLocData):
   23766         (WebCore::extractURL):
   23767         (WebCore::texthtmlFormat):
   23768         (WebCore::createGlobalData):
   23769         (WebCore::markupToCF_HTML):
   23770         (WebCore::urlToMarkup):
   23771         (WebCore::replaceNewlinesWithWindowsStyleNewlines):
   23772         (WebCore::replaceNBSPWithSpace):
   23773         (WebCore::urlWFormat):
   23774         (WebCore::urlFormat):
   23775         (WebCore::plainTextFormat):
   23776         (WebCore::plainTextWFormat):
   23777         (WebCore::filenameWFormat):
   23778         (WebCore::filenameFormat):
   23779         (WebCore::htmlFormat):
   23780         (WebCore::getURL):
   23781         (WebCore::getPlainText):
   23782         (WebCore::fragmentFromFilenames):
   23783         (WebCore::containsFilenames):
   23784         (WebCore::fragmentFromCF_HTML):
   23785         (WebCore::fragmentFromHTML):
   23786         (WebCore::containsHTML):
   23787         * platform/win/ClipboardUtilitiesWin.h: Added.
   23788         * platform/win/ClipboardWin.cpp:
   23789         (WebCore::ClipboardWin::writeRange):
   23790         * platform/win/DragDataWin.cpp:
   23791         * platform/win/PasteboardWin.cpp:
   23792         (WebCore::Pasteboard::writeSelection):
   23793         (WebCore::Pasteboard::documentFragment):
   23794 
   23795 2007-05-04  Steve Falkenburg  <sfalken (a] apple.com>
   23796 
   23797         Reviewed by Darin.
   23798 
   23799         Fix crash when using "check spelling while typing".
   23800 
   23801         * WebCore.vcproj/WebCore.vcproj: Added TextBreakIteratorInternalICUWin.cpp
   23802         * platform/win/TemporaryLinkStubs.cpp: Removed findSentenceBoundary, findNextSentenceFromIndex.
   23803 
   23804 2007-05-04  Alice Liu  <alice.liu (a] apple.com>
   23805 
   23806         Reviewed by Darin.
   23807 
   23808         changed use of DeprecatedString::fromUTF8 to UTF8Encoding().decode()
   23809 
   23810         * platform/win/DragDataWin.cpp:
   23811         (WebCore::fragmentFromHTML):
   23812         * platform/win/PasteboardWin.cpp:
   23813         (WebCore::Pasteboard::documentFragment):
   23814 
   23815 2007-05-03  Steve Falkenburg  <sfalken (a] apple.com>
   23816 
   23817         Reviewed by Ada, Oliver.
   23818 
   23819         Checkpoint:
   23820         <rdar://problem/4602372> Spelling
   23821         <rdar://problem/4769763> Spell checking engine support
   23822 
   23823         * platform/win/EditorWin.cpp:
   23824         (WebCore::findFirstBadGrammarInRange): Account for start offset when reporting bad grammar range (fixed my porting mistake).
   23825         (WebCore::Editor::advanceToNextMisspelling): Include user description with spelling error.
   23826         (WebCore::isRangeUngrammatical): Include user description with spelling error.
   23827 
   23828 2007-05-03  Alice Liu  <alice.liu (a] apple.com>
   23829 
   23830         Reviewed by Oliver.
   23831 
   23832         Fixed <rdar://5181466> HTML formatted clipboard data is not converted from UTF8 when pasted
   23833 
   23834         * platform/win/DragDataWin.cpp:
   23835         (WebCore::fragmentFromHTML):
   23836         * platform/win/PasteboardWin.cpp:
   23837         (WebCore::fragmentFromCF_HTML):
   23838         (WebCore::Pasteboard::documentFragment):
   23839 
   23840 2007-05-03  Oliver Hunt  <oliver (a] apple.com>
   23841 
   23842         Reviewed by Steve
   23843 
   23844         Fix misuse of GlobalLock.
   23845 
   23846         * platform/win/PasteboardWin.cpp:
   23847         (WebCore::createGlobalData):
   23848 
   23849 2007-05-03  Oliver Hunt  <oliver (a] apple.com>
   23850 
   23851         Reviewed by Steve.
   23852 
   23853         Add logic to draw underlines for grammar and spelling errors.
   23854         (rdar://problem/4769832)
   23855 
   23856         * platform/win/GraphicsContextWin.cpp:
   23857         (WebCore::spellingPatternColor):
   23858         (WebCore::grammarPatternColor):
   23859           Can't define global const with constructor so use function scoped globals instead.
   23860         (WebCore::setCGStrokeColor):
   23861           Utility function pulled over from GraphicsContextCG          
   23862         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   23863         
   23864         * platform/win/TemporaryLinkStubs.cpp:
   23865           Remove old drawLineForMisspellingOrBadGrammar stub
   23866 
   23867 2007-05-01  Steve Falkenburg  <sfalken (a] apple.com>
   23868 
   23869         Reviewed by Oliver.
   23870 
   23871         Fix crash when retrieving title of context menu after it has been selected.
   23872         Necessary to get spelling corrections code working.
   23873 
   23874         * platform/win/ContextMenuWin.cpp:
   23875         (WebCore::ContextMenu::itemWithAction): menu item info fType is a set of flags, MFT_STRING is 0, so we need to or off flags before comparing.
   23876 
   23877 2007-04-29  Adam Roben  <aroben (a] apple.com>
   23878 
   23879         Build fix after r21183.
   23880 
   23881         * WebCore.vcproj/WebCore.vcproj: Added LayoutState.(h|cpp).
   23882 
   23883 2007-04-29  Oliver Hunt  <oliver (a] apple.com>
   23884 
   23885         Reviewed by Steve.
   23886 
   23887         Fix for <rdar://problem/5126393> REGRESSION (r19672-19697): Safari drag image drags at original size (13261)
   23888  
   23889         Prevent build bustage from opensource changes, correct scaling
   23890 
   23891         * platform/win/DragImageWin.cpp:
   23892         (WebCore::scaleDragImage):
   23893 
   23894 2007-04-24  Steve Falkenburg  <sfalken (a] apple.com>
   23895 
   23896         Reviewed by Darin, Oliver.
   23897 
   23898         Checkpoint:
   23899         <rdar://problem/4602372> Spelling
   23900         <rdar://problem/4769763> Spell checking engine support
   23901         
   23902         Ported code from EditorMac.mm into EditorWin.cpp.
   23903         Once this works, I'll move this code into Editor.cpp and remove it
   23904         form EditorMac.mm.
   23905 
   23906         * platform/win/EditorWin.cpp:
   23907         (WebCore::Editor::ignoreSpelling):
   23908         (WebCore::Editor::learnSpelling):
   23909         (WebCore::findFirstMisspellingInRange):
   23910         (WebCore::paragraphAlignedRangeForRange):
   23911         (WebCore::findFirstGrammarDetailInRange):
   23912         (WebCore::findFirstBadGrammarInRange):
   23913         (WebCore::Editor::advanceToNextMisspelling):
   23914         (WebCore::Editor::isSelectionMisspelled):
   23915         (WebCore::isRangeUngrammatical):
   23916         (WebCore::Editor::isSelectionUngrammatical):
   23917         (WebCore::Editor::guessesForUngrammaticalSelection):
   23918         (WebCore::Editor::guessesForMisspelledSelection):
   23919         (WebCore::Editor::showSpellingGuessPanel):
   23920         (WebCore::Editor::spellingPanelIsShowing):
   23921         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   23922         (WebCore::markAllMisspellingsInRange):
   23923         (WebCore::markAllBadGrammarInRange):
   23924         (WebCore::markMisspellingsOrBadGrammar):
   23925         (WebCore::Editor::markMisspellings):
   23926         (WebCore::Editor::markBadGrammar):
   23927         * platform/win/TemporaryLinkStubs.cpp:
   23928 
   23929 2007-04-23  Anders Carlsson  <andersca (a] apple.com>
   23930 
   23931         Reviewed by Ada.
   23932 
   23933         <rdar://problem/5061022>
   23934         REGRESSION: Acrobat 8 plug-in fails to scroll with trackpad two-finger scroll or mouse wheel (12995)
   23935         
   23936         * page/win/EventHandlerWin.cpp:
   23937         (WebCore::EventHandler::passWheelEventToWidget):
   23938         Get rid of passWheelEventToSubframe and pass wheel events to all widgets.
   23939 
   23940 2007-04-23  Adam Roben  <aroben (a] apple.com>
   23941 
   23942         Build fix.
   23943 
   23944         * page/win/EventHandlerWin.cpp: Removed passWheelEventToSubframe.
   23945 
   23946 2007-04-20  Beth Dakin  <bdakin (a] apple.com>
   23947 
   23948         Reviewed by Adam.
   23949 
   23950         Fix for <rdar://problem/5089822> Boomer does not send scroll events
   23951 
   23952         * platform/win/ScrollViewWin.cpp:
   23953         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   23954 
   23955 2007-04-19  Adam Roben  <aroben (a] apple.com>
   23956 
   23957         * WebCore.vcproj/WebCore.vcproj: Removed empty filter.
   23958 
   23959 2007-04-19  Adam Roben  <aroben (a] apple.com>
   23960 
   23961         * WebCore.vcproj/WebCore.vcproj: Removed unused files.
   23962 
   23963 2007-04-18  Adam Roben  <aroben (a] apple.com>
   23964 
   23965         Reviewed by Oliver.
   23966 
   23967         Added an equality operator to COMPtr.
   23968 
   23969         * platform/win/COMPtr.h:
   23970         (operator==):
   23971         (operator!=):
   23972 
   23973 2007-04-18  Oliver Hunt  <oliver (a] apple.com>
   23974 
   23975         Reviewed by Geoff.
   23976 
   23977         Allow images to be dragged from page and dropped as files.
   23978         This is the remainder of the fix for <rdar://problem/5035948> 
   23979           -- Dragging image or link from boomer doesn't create webloc 
   23980              or image file.
   23981 
   23982         * platform/win/ClipboardWin.cpp:
   23983         (WebCore::filesystemPathFromUrlOrTitle):
   23984           Make name generation nicer, and better match Firefox
   23985         
   23986         (WebCore::createGlobalURLContent):
   23987           rename function
   23988         
   23989         (WebCore::createGlobalImageFileContent):
   23990           Copies image data into global store
   23991         
   23992         (WebCore::createGlobalUrlFileDescriptor):
   23993           Rename function
   23994           Updated for parameter change on filesystemPathFromUrlOrTitle
   23995         
   23996         (WebCore::createGlobalImageFileDescriptor):
   23997           Set up file descriptor for image drag
   23998         
   23999         (WebCore::getCachedImage):
   24000           Helper function
   24001         
   24002         (WebCore::writeImageToDataObject):
   24003           Attempts to build and insert data for image->file drag
   24004         
   24005         (WebCore::ClipboardWin::declareAndWriteDragImage):
   24006           Attempts to build and insert data for image->file drag
   24007         
   24008         (WebCore::ClipboardWin::writeURL):
   24009           Add call to imageDataToDataObject
   24010 
   24011 2007-04-17  Adam Roben  <aroben (a] apple.com>
   24012 
   24013         Rubberstamped by Oliver.
   24014 
   24015         * platform/network/cf/ResourceHandleCFNet.cpp: Removed an unnecessary
   24016         include.
   24017 
   24018 2007-04-17  Oliver Hunt  <oliver (a] apple.com>
   24019 
   24020         Whoops, had code commented out from manual failure test.
   24021         Also fixed date of previous changelog entry
   24022 
   24023         * platform/win/ClipboardWin.cpp:
   24024         (WebCore::writeFileToDataObject):
   24025 
   24026 2007-04-17  Oliver Hunt  <oliver (a] apple.com>
   24027 
   24028         Reviewed by Ada.
   24029 
   24030         Partial fix for <rdar://problem/5035948> -- Dragging image 
   24031         or link from boomer doesn't create webloc or image file.
   24032         
   24033         Add all the ground work to set up FileDescriptors and FileContent
   24034         for allowing files to be created from drag and drop actions,
   24035         and hook up logic for links to create WebLoc data for drag and drop.
   24036 
   24037         * platform/win/ClipboardWin.cpp:
   24038         (WebCore::fileDescriptorFormat):
   24039         (WebCore::fileContentFormat):
   24040           Clipboard formats 
   24041           
   24042         (WebCore::pathRemoveBadFSCharacters):
   24043         (WebCore::filesystemPathFromUrlOrTitle):
   24044           Helper functions for create filenames
   24045           
   24046         (WebCore::createGlobalDataForURLContent):
   24047           Create the WebLoc content
   24048           
   24049         (WebCore::createGlobalDataForUrlFileDescriptor):
   24050           Create a file descriptor for the WebLoc data
   24051           
   24052         (WebCore::writeFileToDataObject):
   24053           Basic helper function to push generated file info
   24054           into the target DataObject
   24055           
   24056         (WebCore::ClipboardWin::writeURL):
   24057           Now puts WebLoc file onto the Clipboard
   24058 
   24059 2007-04-16  Adam Roben  <aroben (a] apple.com>
   24060 
   24061         Reviewed by Adele.
   24062 
   24063         Fix <rdar://problem/5002577> Focus ring SPI in GraphicsContextWin.cpp
   24064         needs to move to WebKitSystemInterface
   24065 
   24066         * platform/win/GraphicsContextWin.cpp:
   24067         (WebCore::GraphicsContext::drawFocusRing): Use wkDrawFocusRing.
   24068 
   24069 2007-04-14  Adam Roben  <aroben (a] apple.com>
   24070 
   24071         * WebCore.vcproj/WebCore.submit.sln: Use the Debug_Internal
   24072         configuration.
   24073 
   24074 2007-04-14  Adam Roben  <aroben (a] apple.com>
   24075 
   24076         Small correctness fix that is needed for building OpenSource.
   24077 
   24078         * platform/win/PopupMenuWin.cpp: Use RenderTheme instead of RenderThemeWin.
   24079 
   24080 2007-04-13  Adam Roben  <aroben (a] apple.com>
   24081 
   24082         Reviewed by Tim.
   24083 
   24084         Sync our config.h with the OpenSource version so we can merge ours in
   24085         later.
   24086 
   24087         * config.h: Added #defines from the OpenSource version, moved
   24088         Windows-specific defines inside #if PLATFORM(WIN[_OS]), and got rid
   24089         of assert.h
   24090         * platform/win/CursorWin.cpp:
   24091         (WebCore::Cursor::Cursor): Use ASSERT instead of assert.
   24092 
   24093 2007-04-13  Adam Roben  <aroben (a] apple.com>
   24094 
   24095         Rubberstamped by Tim.
   24096 
   24097         Removed the loader/win directory since it only contains empty files.
   24098 
   24099         * WebCore.vcproj/WebCore.vcproj: Removed empty files.
   24100         * loader/win/FrameLoaderWin.cpp: Removed.
   24101         * loader/win/ResourceLoaderWin.cpp: Removed.
   24102 
   24103 2007-04-12  Adam Roben  <aroben (a] apple.com>
   24104 
   24105         Rubberstamped by Steve.
   24106 
   24107         Removed unused file.
   24108 
   24109         * WebCore.vcproj/WebCore.sln: Removed.
   24110 
   24111 2007-04-12  Adam Roben  <aroben (a] apple.com>
   24112 
   24113         Didn't mean to commit this.
   24114 
   24115         * WebCore.vcproj/WebCore.vcproj:
   24116 
   24117 2007-04-12  Adam Roben  <aroben (a] apple.com>
   24118 
   24119         Reviewed by Steve.
   24120 
   24121         <rdar://problem/5131565> Need to be able to use debug WebKit with
   24122         release Safari.
   24123 
   24124         * WebCore.vcproj/WebCore.vcproj:
   24125         * WebCore.vcproj/debug.vsprops:
   24126         * WebCore.vcproj/debug_internal.vsprops: Added.
   24127         * WebCore.vcproj/release.vsprops:
   24128 
   24129 2007-04-11  Adam Roben  <aroben (a] apple.com>
   24130 
   24131         Reviewed by Tim.
   24132 
   24133         Get rid of FrameViewWin.cpp, since it's empty.
   24134 
   24135         * WebCore.vcproj/WebCore.vcproj:
   24136         * bridge/win/FrameViewWin.cpp: Removed.
   24137 
   24138 2007-04-11  Adam Roben  <aroben (a] apple.com>
   24139 
   24140         Reviewed by Anders.
   24141 
   24142         Update for changes to Pasteboard.
   24143 
   24144         * platform/win/PasteboardWin.cpp:
   24145         (WebCore::Pasteboard::writeImage):
   24146 
   24147 2007-04-10  Brady Eidson  <beidson (a] apple.com>
   24148 
   24149         Reviewed by Darin
   24150 
   24151         <rdar://problem/4887095> - PageCache and PageState should be combined
   24152 
   24153         Changed a TemporaryLinkStub and updated the project file
   24154 
   24155         * WebCore.vcproj/WebCore.vcproj:
   24156         * platform/win/TemporaryLinkStubs.cpp:
   24157         (CachedPage::close):
   24158 
   24159 2007-04-10  John Sullivan  <sullivan (a] apple.com>
   24160 
   24161         * platform/win/TemporaryLinkStubs.cpp:
   24162         (WebCore::Editor::markBadGrammar):
   24163         Keep build going: added stub for this new method
   24164 
   24165 2007-04-10  Anders Carlsson  <andersca (a] apple.com>
   24166 
   24167         Reviewed by Adam.
   24168 
   24169         <rdar://problem/5056988>
   24170         Can not open player on http://radioalice.com
   24171 
   24172         Fix scriptStringIfJavaScriptURL to not use the path of the URL. This would ignore any characters past 
   24173         a '?' character because that would be parsed as the query part of the URL.
   24174         
   24175         * plugins/win/PluginViewWin.cpp:
   24176         (WebCore::scriptStringIfJavaScriptURL):
   24177         Make this be more like the mac, chopping off the first 12 characters ("javascript:") 
   24178         and then decoding the remaining characters.
   24179 
   24180 2007-04-10  Anders Carlsson  <acarlsson (a] apple.com>
   24181 
   24182         * plugins/win/PluginViewWin.cpp:
   24183         (WebCore::PluginViewWin::PluginViewWin):
   24184         Initialize m_status.
   24185 
   24186 2007-04-09  Anders Carlsson  <acarlsson (a] apple.com>
   24187 
   24188         Reviewed by Adam.
   24189 
   24190         <rdar://problem/5062624>
   24191         No prompt to install QT for pages with uninstalled QT plug-in.
   24192         
   24193         Add a status() accessor to PluginViewWin. This can be used by WebKit to find out if the plug-in
   24194         loaded successfully or not.
   24195         
   24196         * plugins/win/PluginViewWin.cpp:
   24197         (WebCore::PluginViewWin::PluginViewWin):
   24198         (WebCore::PluginViewWin::init):
   24199         * plugins/win/PluginViewWin.h:
   24200         (WebCore::):
   24201         (WebCore::PluginViewWin::status):
   24202 
   24203 2007-04-09  Brady Eidson  <beidson (a] apple.com>
   24204 
   24205         Build fix
   24206 
   24207         * plugins/win/PluginViewWin.cpp:
   24208         (WebCore::PluginViewWin::performRequest): assume userGesture is true
   24209 
   24210 2007-04-09  Adam Roben  <aroben (a] apple.com>
   24211 
   24212         Build fix.
   24213 
   24214         * platform/win/PasteboardWin.cpp:
   24215         (WebCore::Pasteboard::writeImage):
   24216 
   24217 2007-04-08  Adam Roben  <aroben (a] apple.com>
   24218 
   24219         Reviewed by Oliver.
   24220 
   24221         Stubbed out Frame::dashboardRegionsChanged now that it's not
   24222         Mac-specific.
   24223 
   24224         * bridge/win/FrameWin.cpp:
   24225         (WebCore::Frame::dashboardRegionsChanged):
   24226 
   24227 2007-04-06  Oliver Hunt  <oliver (a] apple.com>
   24228 
   24229         Reviewed by Adam.
   24230 
   24231         Fix for rdar://problem/5097227 Can't drag Flash-based 
   24232         scrollbar on mtv.com
   24233         
   24234         The problem was when creating a mouse move event for the 
   24235         plugin we weren't passing on the mouse button state.  
   24236         
   24237         The opensource side of this patch adds logic that allows 
   24238         us to distinguish between a MouseEvent with NoButton and
   24239         a MouseEvent with LeftButton, so we can then provide the 
   24240         correct information to the plugin.
   24241 
   24242         * plugins/win/PluginViewWin.cpp:
   24243         (WebCore::PluginViewWin::handleMouseEvent):
   24244 
   24245 2007-04-06  Dave Hyatt  <hyatt (a] apple.com>
   24246 
   24247         Internal side of fix for bug 13274.
   24248 
   24249         Reviewed by olliej
   24250 
   24251         * page/win/EventHandlerWin.cpp:
   24252         (WebCore::EventHandler::passMousePressEventToSubframe):
   24253         * platform/win/PlatformScrollBarSafari.cpp:
   24254         (WebCore::PlatformScrollbar::handleMousePressEvent):
   24255         * platform/win/PopupMenuWin.cpp:
   24256         (WebCore::PopupMenu::PopupMenu):
   24257         (WebCore::PopupWndProc):
   24258         * platform/win/ScrollViewWin.cpp:
   24259         (WebCore::ScrollView::removeChild):
   24260         * platform/win/WidgetWin.cpp:
   24261 
   24262 2007-04-07  Mark Rowe  <mrowe (a] apple.com>
   24263 
   24264         Internal build fox after opensource r20753.
   24265 
   24266         * platform/win/PlatformMouseEventWin.cpp:
   24267         * platform/win/TemporaryLinkStubs.cpp:
   24268 
   24269 2007-04-03  Oliver Hunt  <oliver (a] apple.com>
   24270 
   24271         Buildfix
   24272 
   24273         * platform/network/cf/ResourceResponseCFNet.cpp:
   24274         (WebCore::ResourceResponse::doUpdateResourceResponse):
   24275            Adding .get() calls
   24276 
   24277 2007-04-03  Maciej Stachowiak  <mjs (a] apple.com>
   24278 
   24279         Reviewed by Alice.
   24280 
   24281         - fixed <rdar://problem/5107069> WebCore leaks a copy of the CFHTTPMessage CFDictionary (from CFHTTPMessageCopyAllHeaderFields)
   24282 
   24283         * platform/network/cf/ResourceResponseCFNet.cpp:
   24284         (WebCore::ResourceResponse::doUpdateResourceResponse): Use RetainPtr (once to avoid a leak and once
   24285         just as style cleanup).
   24286 
   24287 2007-04-02  Anders Carlsson  <andersca (a] apple.com>
   24288 
   24289         Reviewed by Adam.
   24290 
   24291         Fix crashes seen when running the plugin layout tests.
   24292         
   24293         * plugins/win/PluginPackageWin.cpp:
   24294         (WebCore::PluginPackageWin::load):
   24295         Fill in the enumerate pointer, not the evaluate pointer (it's already been filled in).
   24296         
   24297         * plugins/win/PluginStreamWin.cpp:
   24298         (WebCore::PluginStreamWin::didFinishLoading):
   24299         Handle the case where there was no plugin stream data at all.
   24300 
   24301 2007-04-02  Anders Carlsson  <andersca (a] apple.com>
   24302 
   24303         Reviewed by Darin.
   24304 
   24305         Check that NPStream pointers passed to NPN_DestroyStream are valid.
   24306         
   24307         * plugins/win/PluginStreamWin.cpp:
   24308         (WebCore::streams):
   24309         (WebCore::PluginStreamWin::PluginStreamWin):
   24310         (WebCore::PluginStreamWin::~PluginStreamWin):
   24311         (WebCore::PluginStreamWin::ownerForStream):
   24312         * plugins/win/PluginStreamWin.h:
   24313         * plugins/win/PluginViewWin.cpp:
   24314         (WebCore::PluginViewWin::destroyStream):
   24315 
   24316 2007-04-02  Anders Carlsson  <andersca (a] apple.com>
   24317 
   24318         Reviewed by Darin.
   24319 
   24320         <rdar://problem/5095582>
   24321         PluginViewWin doesn't implement NPN_DestroyStream.
   24322 
   24323         * plugins/win/PluginStreamWin.cpp:
   24324         (WebCore::PluginStreamWin::startStream):
   24325         Handle the case where NPN_DestroyStream is called from the newstream handler.
   24326         
   24327         * plugins/win/PluginViewWin.cpp:
   24328         (WebCore::PluginViewWin::destroyStream):
   24329         Implement this.
   24330 
   24331 2007-04-02  Anders Carlsson  <andersca (a] apple.com>
   24332 
   24333         Reviewed by Dave Hyatt.
   24334 
   24335         <rdar://problem/5097225> 
   24336         Mouse cursors don't work with windowless plugins
   24337         
   24338         * platform/win/WidgetWin.cpp:
   24339         (WebCore::Widget::setCursor):
   24340         Add an "ignoreNextSetCursor" boolean and don't call SetCursor if it's true.
   24341         
   24342         * plugins/win/PluginViewWin.cpp:
   24343         (WebCore::PluginViewWin::handleMouseEvent):
   24344         Store away the current cursor and make sure that it won't be reset.
   24345 
   24346 2007-04-02  Anders Carlsson  <andersca (a] apple.com>
   24347 
   24348         Reviewed by Adam.
   24349 
   24350         Fix logic in windowless paint functions.
   24351         
   24352         * plugins/win/PluginViewWin.cpp:
   24353         (WebCore::PluginViewWin::invalidateRect):
   24354         (WebCore::PluginViewWin::invalidateRegion):
   24355         (WebCore::PluginViewWin::forceRedraw):
   24356 
   24357 2007-03-31  Dave Hyatt  <hyatt (a] apple.com>
   24358 
   24359         Internal side of 13234.   Open source side was reviewed by
   24360         Mitz.  Layout of justified text was broken when dragged or
   24361         when a ::selection style was in effect.
   24362 
   24363         * platform/win/FontWin.cpp:
   24364         (WebCore::Font::selectionRectForComplexText):
   24365         (WebCore::Font::drawComplexText):
   24366         (WebCore::Font::floatWidthForComplexText):
   24367         * platform/win/UniscribeController.cpp:
   24368         (WebCore::UniscribeController::UniscribeController):
   24369         (WebCore::UniscribeController::offsetForPosition):
   24370         * platform/win/UniscribeController.h:
   24371         * platform/win/WebCoreTextRenderer.cpp:
   24372         (WebCore::doDrawTextAtPoint):
   24373 
   24374 2007-03-30  Anders Carlsson  <andersca (a] apple.com>
   24375 
   24376         Reviewed by Geoff.
   24377 
   24378         * plugins/win/PluginDatabaseWin.cpp:
   24379         (WebCore::PluginDatabaseWin::addExtraPluginPath):
   24380         * plugins/win/PluginDatabaseWin.h:
   24381         New function for adding an extra plugin path, to be used by DRT.
   24382         
   24383         * plugins/win/PluginPackageWin.cpp:
   24384         (WebCore::PluginPackageWin::load):
   24385         Set the current directory tho the plugin directory while loading the plugin. Add new NPN callbacks.
   24386         
   24387         * plugins/win/PluginViewWin.cpp:
   24388         (WebCore::PluginViewWin::invalidateRect):
   24389         (WebCore::PluginViewWin::invalidateRegion):
   24390         (WebCore::PluginViewWin::forceRedraw):
   24391         Don't do anything if the plugin is windowed.
   24392         
   24393         * plugins/win/npapi.cpp:
   24394         (NPN_PushPopupsEnabledState):
   24395         (NPN_PopPopupsEnabledState):
   24396         Add stubs.
   24397         
   24398         * plugins/win/npfunctions.h:
   24399         Add new methods and merge some fixes from the open source version.
   24400 
   24401 2007-03-29  Dave Hyatt  <hyatt (a] apple.com>
   24402 
   24403         Enable CG's local font cache.  rdar://problem/5070005
   24404        
   24405         Reviewed by aroben
   24406 
   24407         * platform/win/FontCacheWin.cpp:
   24408         (WebCore::FontCache::platformInit):
   24409 
   24410 2007-03-28  Maciej Stachowiak  <mjs (a] apple.com>
   24411 
   24412         Reviewed by Darin.
   24413 
   24414         - updates for <rdar://problem/4820817> Autoscroll is broken in Mail.app (message jumps around when trying to select text)
   24415 
   24416 
   24417         * platform/win/ScrollViewWin.cpp:
   24418         (WebCore::ScrollView::visibleContentRectConsideringExternalScrollers):
   24419         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   24420 
   24421 2007-03-27  Dave Hyatt  <hyatt (a] apple.com>
   24422 
   24423         Fix for 5090964, arabic text is all jumbled in list boxes and popup menus (and in the
   24424         Boomer app too).  The fallback font was not the right size because the font you're mapping
   24425         from had to be selected into the HDC first.
   24426        
   24427         Reviewed by ggaren
   24428 
   24429         * ChangeLog:
   24430         * platform/win/FontCacheWin.cpp:
   24431         (WebCore::FontCache::getFontDataForCharacters):
   24432 
   24433 2007-03-27  Geoffrey Garen  <ggaren (a] apple.com>
   24434 
   24435         Reviewed by Anders Carlsson.
   24436 
   24437         Fixed <rdar://problem/5085076> WebView stops painting after 
   24438         loading stand-alone netflix movie preview in WMP format
   24439         
   24440         The stand-alone WMP plug-in seems to do all its drawing in
   24441         the WM_ERASEBKGN phase, not the WM_PAINT phase, so our
   24442         InvalidateRect call for plug-in windows needs to specify 
   24443         'true' for whether the background region should be erased.
   24444         
   24445         A smart plug-in that wants to avoid background draws can
   24446         still do so by just returning 1 in response to WM_ERASEBKGN,
   24447         or by setting its background brush to NULL.
   24448 
   24449         * plugins/win/PluginViewWin.cpp:
   24450         (WebCore::PluginViewWin::updateWindow):
   24451 
   24452 2007-03-27  Anders Carlsson  <acarlsson (a] apple.com>
   24453 
   24454         Reviewed by Maciej.
   24455 
   24456         <rdar://problem/5091459>
   24457         Crash when destroying "null plugin"
   24458         
   24459         <rdar://problem/5056845>
   24460         Invoking itunes page has missing plugin icon on it
   24461         
   24462         * plugins/win/PluginViewWin.cpp:
   24463         (WebCore::PluginViewWin::paintMissingPluginIcon):
   24464         Clip before painting.
   24465         
   24466         (WebCore::freeStringArray):
   24467         Add null-check.
   24468         
   24469         (WebCore::PluginViewWin::PluginViewWin):
   24470         Initialize plugin names and values.
   24471         
   24472 2007-03-27  Dave Hyatt  <hyatt (a] apple.com>
   24473 
   24474         Add support for glyph offsets to the GlyphBuffer.
   24475        
   24476         Reviewed by olliej
   24477 
   24478         * platform/win/FontWin.cpp:
   24479         (WebCore::Font::drawGlyphs):
   24480         * platform/win/UniscribeController.cpp:
   24481         (WebCore::UniscribeController::shapeAndPlaceItem):
   24482 
   24483 2007-03-26  Antti Koivisto  <antti (a] apple.com>
   24484 
   24485         Reviewed by Darin.
   24486         
   24487         Initialize new m_isContinuous field in WheelEvent
   24488 
   24489         * platform/win/WheelEventWin.cpp:
   24490         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   24491 
   24492 2007-03-27  Dave Hyatt  <hyatt (a] apple.com>
   24493 
   24494         Enable complex text.  Selection and small-caps support are now enabled with this patch.
   24495         
   24496         Reviewed by aroben
   24497 
   24498         * platform/win/FontWin.cpp:
   24499         (WebCore::Font::selectionRectForComplexText):
   24500         (WebCore::Font::drawComplexText):
   24501         (WebCore::Font::floatWidthForComplexText):
   24502         (WebCore::Font::offsetForPositionForComplexText):
   24503         * platform/win/UniscribeController.cpp:
   24504         (WebCore::UniscribeController::UniscribeController):
   24505         (WebCore::UniscribeController::floatWidth):
   24506         (WebCore::UniscribeController::offsetForPosition):
   24507         (WebCore::UniscribeController::advance):
   24508         (WebCore::UniscribeController::itemizeShapeAndPlace):
   24509         (WebCore::UniscribeController::shapeAndPlaceItem):
   24510         * platform/win/UniscribeController.h:
   24511         (WebCore::UniscribeController::runWidthSoFar):
   24512 
   24513 2007-03-26  Adele Peterson  <adele (a] apple.com>
   24514 
   24515         Reviewed by Adam.
   24516 
   24517         Fix for <rdar://problem/5088844> Popup menu is not positioned correctly on a yahoo comics page
   24518         
   24519         Fixes test: fast/forms/control-restrict-line-height.html
   24520         
   24521         This change was made in RenderThemeMac a while ago, and will fix the line height for aqua popup buttons, 
   24522         buttons and search fields.
   24523         
   24524         * rendering/RenderThemeSafari.cpp: WebCore::RenderThemeSafari::setFontFromControlSize):
   24525           Don't honor line-height for controls that have restricted font size.
   24526           
   24527 2007-03-25  Brady Eidson  <beidson (a] apple.com>
   24528 
   24529         Reviewed by Oliver
   24530 
   24531         <rdar://problem/5086888> - WebHistory(Item) Leak
   24532 
   24533         * platform/win/COMPtr.h:
   24534         (COMPtr::COMPtr): An an adoptRef constructor
   24535 
   24536 2007-03-24  Adam Roben  <aroben (a] apple.com>
   24537 
   24538         Reviewed by Maciej.
   24539 
   24540         Fix <rdar://problem/5076610> Crash in PluginViewWin::updateWindow when
   24541         loading a PDF page for the first time after installing Acrobat Reader
   24542 
   24543         Don't call PluginPackageWin::load() until the PluginViewWin has been
   24544         inserted into the Widget tree. load() can result in arbitrary code
   24545         execution (in this case, a EULA window appears which takes focus from
   24546         the WebView, causing Frame::setIsActive(false) to be called), and we
   24547         don't want to be in a transitional state when that happens.
   24548 
   24549         * plugins/win/PluginDatabaseWin.cpp:
   24550         (WebCore::PluginDatabaseWin::createPluginView): Call PluginViewWin's
   24551         one and only constructor.
   24552         * plugins/win/PluginViewWin.cpp:
   24553         (WebCore::PluginViewWin::setParent): Call init() after inserting
   24554         ourselves into the Widget tree.
   24555         (WebCore::PluginViewWin::PluginViewWin): Defer all real work until
   24556         init() is called.
   24557         (WebCore::PluginViewWin::init): Added. Calls m_plugin->load(), then
   24558         does the rest of the work that was once done by the constructor.
   24559         * plugins/win/PluginViewWin.h: Removed createNullPlugin and simplified
   24560         constructor, added setParent override and new init method.
   24561 
   24562 2007-03-24  Brady Eidson  <beidson (a] apple.com>
   24563 
   24564         Reviewed by Adam
   24565 
   24566         <rdar://problem/5086210> - Move RetainPtr to WTF for WebKitWin and the App
   24567 
   24568         * WebCore.vcproj/WebCore.vcproj: Add the ForwardingHeader to the vcprojs
   24569 
   24570 2007-03-23  Adele Peterson  <adele (a] apple.com>
   24571 
   24572         Reviewed by Maciej.
   24573 
   24574         Fix for <rdar://problem/5083928> In editable webviews, caps lock key is ignored
   24575 
   24576         * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   24577         Removed code to store lowercase characters in m_text.  Now that we use the character code
   24578         to create m_text this is already taken care of.  This does mean that m_unmodifiedText is
   24579         not right.  This is used for accesskeys, which don't work yet, so that is covered in rdar://5085596.
   24580         This also fixes line endings in this file.
   24581 
   24582 2007-03-22  Geoffrey Garen  <ggaren (a] apple.com>
   24583 
   24584         Reviewed by Adam Roben.
   24585         
   24586         Fixed <rdar://problem/5082985> Select menus are too see-through
   24587 
   24588         Upped alpha value from 90 to 95. Menus will still seem a little
   24589         more see-through than on the mac, since their backgrounds are
   24590         white, not grey, but white matches other Windows browsers.
   24591         
   24592         * ChangeLog:
   24593         * platform/win/PopupMenuWin.cpp:
   24594 
   24595 2007-03-22  Anders Carlsson  <acarlsson (a] apple.com>
   24596 
   24597         Reviewed by Maciej.
   24598 
   24599         <rdar://problem/5081539>
   24600         QT content is dupped on a page, if page is being previewed or printed.
   24601         
   24602         Don't update the frame geometry if the document is in printing mode.
   24603         
   24604         * plugins/win/PluginViewWin.cpp:
   24605         (WebCore::PluginViewWin::setFrameGeometry):
   24606 
   24607 2007-03-22  Beth Dakin  <bdakin (a] apple.com>
   24608 
   24609         Fix by Hyatt, reviewed and committed by me.
   24610 
   24611         Fix for <rdar://problem/5082360> Incomplete frame paint when 
   24612         shrinking window @ google.com
   24613 
   24614         * platform/win/ScrollViewWin.cpp:
   24615         (WebCore::ScrollView::setFrameGeometry): Wrong order!
   24616 
   24617 2007-03-22  Dave Hyatt  <hyatt (a] apple.com>
   24618 
   24619         Fix for crasher in layout caused by paints that happen without layout being current.  Change to be
   24620         more like the Mac and crawl the frame tree up front ensuring everyone is up to date before painting.
   24621 
   24622         Reviewed by olliej
   24623 
   24624         * platform/win/ScrollViewWin.cpp:
   24625         (WebCore::ScrollView::setFrameGeometry):
   24626         (WebCore::ScrollView::children):
   24627         (WebCore::ScrollView::geometryChanged):
   24628 
   24629 2007-03-22  Dave Hyatt  <hyatt (a] apple.com>
   24630 
   24631         Fix for mouse wheel issues.  Only return success from passWheelEventToSubframe is the event was
   24632         actually accepted.
   24633         
   24634         * page/win/EventHandlerWin.cpp:
   24635         (WebCore::EventHandler::passWheelEventToSubframe):
   24636 
   24637 2007-03-21  Dave Hyatt  <hyatt (a] apple.com>
   24638 
   24639         Fix numerous bugs in RTL support.  Only use a directional override if the run
   24640         tells us to.  Uniscribe will give incorrect results when measuring RTL runs as LTR if the
   24641         directional override is set.  Switch from logical order for glyphs to visual order
   24642         instead.  This is more similar to ATSUI (less similar to the fast code path, which always uses
   24643         logical ordering for glyph generation).  Using visual ordering forces a lot of games to be played
   24644         (have to walk the script items in backwards order for RTL for example), but Uniscribe does not combine
   24645         glyphs properly if visual ordering is not used.
   24646         
   24647         Add support for justification, letter-spacing, word-spacing and rounding hacks.  The CG vs. ATSUI layout
   24648         test now passes with identical results to the Mac.  The ATSUI spacing features layout test now
   24649         generates correct results (although they are different from the Mac because we fall back to Arial for
   24650         Hebrew instead of Lucida Grande).
   24651 
   24652         Reviewed by oliver
   24653 
   24654         * platform/win/UniscribeController.cpp:
   24655         (WebCore::UniscribeController::UniscribeController):
   24656         (WebCore::UniscribeController::resetControlAndState):
   24657         (WebCore::UniscribeController::shapeAndPlaceItem):
   24658         (WebCore::UniscribeController::shape):
   24659         * platform/win/UniscribeController.h:
   24660 
   24661 2007-03-20  Adam Roben  <aroben (a] apple.com>
   24662 
   24663         Reviewed by Ada.
   24664 
   24665         Added null-checks for ResourceHandle::cookieStorage() before passing it
   24666         into CFNetwork functions, which are not null-safe.
   24667 
   24668         * platform/network/win/CookieJarWin.cpp:
   24669         (WebCore::setCookies):
   24670         (WebCore::cookies):
   24671 
   24672 2007-03-20  Adam Roben  <aroben (a] apple.com>
   24673 
   24674         Build fix.
   24675 
   24676         * WebCore.vcproj/WebCore.vcproj: Added XPathNodeSet.(cpp|h).
   24677 
   24678 2007-03-20  Adam Roben  <aroben (a] apple.com>
   24679 
   24680         Reviewed by Oliver.
   24681 
   24682         Made the metrics of styled selects match those on the Mac to get
   24683         fast/forms/001.html passing.
   24684 
   24685         * rendering/RenderThemeSafari.cpp: Use 2px less padding for the
   24686         select's arrow since the arrow is 2px wider than on the Mac.
   24687 
   24688 2007-03-20  Adam Roben  <aroben (a] apple.com>
   24689 
   24690         Build fix.
   24691 
   24692         * platform/network/cf/ResourceHandleCFNet.cpp:
   24693         (WebCore::makeFinalRequest): Fix typo.
   24694 
   24695 2007-03-20  Dave Hyatt  <hyatt (a] apple.com>
   24696 
   24697         Land advanced text code path (turned off).
   24698        
   24699         Reviewed by aroben
   24700         
   24701         * WebCore.vcproj/WebCore.vcproj:
   24702         * platform/win/FontCacheWin.cpp:
   24703         (WebCore::FontCache::createFontPlatformData):
   24704         * platform/win/FontDataWin.cpp:
   24705         (WebCore::FontData::platformInit):
   24706         (WebCore::FontData::platformDestroy):
   24707         (WebCore::FontData::smallCapsFontData):
   24708         (WebCore::FontData::scriptFontProperties):
   24709         * platform/win/FontWin.cpp:
   24710         (WebCore::Font::drawComplexText):
   24711         (WebCore::Font::floatWidthForComplexText):
   24712         (WebCore::Font::offsetForPositionForComplexText):
   24713         * platform/win/UniscribeController.cpp: Added.
   24714         (WebCore::UniscribeController::UniscribeController):
   24715         (WebCore::UniscribeController::resetControlAndState):
   24716         (WebCore::UniscribeController::shapeAndPlaceItem):
   24717         (WebCore::UniscribeController::shape):
   24718         * platform/win/UniscribeController.h: Added.
   24719         (WebCore::UniscribeController::width):
   24720         (WebCore::UniscribeController::glyphBuffer):
   24721 
   24722 2007-03-20  Anders Carlsson  <acarlsson (a] apple.com>
   24723 
   24724         Reviewed by Adam.
   24725 
   24726         <rdar://problem/4921198>
   24727         Cookie acceptance policy not settable
   24728 
   24729         * platform/network/cf/ResourceHandleCFNet.cpp:
   24730         
   24731         (WebCore::willSendRequest):
   24732         (WebCore::willCacheResponse):
   24733         Remove FIXMEs.
   24734         
   24735         (WebCore::makeFinalRequest):
   24736         New function that makes a final CFURLRequest depending on cookie policy and whether any
   24737         invalid SSL certificates should be ignored.
   24738         
   24739         (WebCore::ResourceHandle::start):
   24740         (WebCore::ResourceHandle::loadResourceSynchronously):
   24741         Use makeFinalRequest.
   24742         
   24743         (WebCore::ResourceHandle::cookieStorageAcceptPolicy):
   24744         (WebCore::ResourceHandle::setCookieStorageAcceptPolicy):
   24745         (WebCore::ResourceHandle::cookieStorage):
   24746         (WebCore::ResourceHandle::setCookieStorage):
   24747         (WebCore::ResourceHandle::setHostAllowsAnyHTTPSCertificate):
   24748         New functions for setting cookie policy, the deafult cookie storage and whether invalid
   24749         SSL certificates should result in an error.
   24750         
   24751         * platform/network/cf/ResourceRequestCFNet.cpp:
   24752         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   24753         Set cookie storage, cookie policy and SSL properties.
   24754 
   24755         * platform/network/win/CookieJarWin.cpp:
   24756         (WebCore::setCookies):
   24757         (WebCore::cookies):
   24758         Use same functions as the mac (sorta).
   24759         
   24760         (WebCore::cookiesEnabled):
   24761         Implement this.
   24762 
   24763 2007-03-19  Adam Roben  <aroben (a] apple.com>
   24764 
   24765         Reviewed by Anders and Darin.
   24766 
   24767         Added JavaScriptStatistics to the project for
   24768         <rdar://problems/5071653>.
   24769 
   24770         * WebCore.vcproj/WebCore.vcproj: Added include/pthreads to the include
   24771         path, and added JavaScriptStatistics.(cpp|h).
   24772 
   24773 2007-03-18  David Hyatt  <hyatt (a] apple.com>
   24774 
   24775         Fix the CSS2 system font for 'menu' to match Mac.  Makes the system fonts layout test pass.
   24776 
   24777         * rendering/RenderThemeSafari.cpp:
   24778         (WebCore::RenderThemeSafari::systemFont):
   24779 
   24780 2007-03-18  Adam Roben  <aroben (a] apple.com>
   24781 
   24782         Reviewed by Hyatt.
   24783 
   24784         Changed the file upload button to say "Choose File" to match Mac.
   24785 
   24786         * platform/win/TemporaryLinkStubs.cpp:
   24787         (WebCore::fileButtonChooseFileLabel):
   24788 
   24789 2007-03-18  Geoffrey Garen  <ggaren (a] apple.com>
   24790 
   24791         Reviewed by Oliver Hunt.
   24792 
   24793         Fixed <rdar://problem/5061807> STRESS (2): Crash in PlatformScrollbar::setRect
   24794 
   24795         No test case because I can't seem to get the Windows DRT to cooperate. I'll try again tomorrow.
   24796 
   24797         The problem was that the FrameView would try to reset the document's scrollbars after having 
   24798         been removed from the page, so its page pointer would be NULL. Added NULL checks.
   24799 
   24800         This situation ultimately results from the FrameView's non-trivial destructor, which
   24801         creates a fragile dependency on tear-down timing. It looks like the timing on Windows
   24802         is slightly different from the timing on Mac. I didn't see any obvious resulting bugs,
   24803         though, so the NULL checks should be sufficient for now.
   24804 
   24805         * platform/win/ScrollViewWin.cpp:
   24806         (WebCore::ScrollView::windowResizerRect):
   24807         (WebCore::ScrollView::addToDirtyRegion):
   24808         (WebCore::ScrollView::scrollBackingStore):
   24809         (WebCore::ScrollView::updateBackingStore):
   24810 
   24811 2007-03-17  David Hyatt  <hyatt (a] apple.com>
   24812 
   24813         The internal side of the patch that ensures Boomer paints twice on ibench.  Don't let the timer beat out
   24814         that first paint.
   24815 
   24816         Reviewed by aroben
   24817 
   24818         * platform/win/ScrollViewWin.cpp:
   24819         (WebCore::ScrollView::update):
   24820 
   24821 2007-03-17  Adam Roben  <aroben (a] apple.com>
   24822 
   24823         Reviewed by Brady.
   24824 
   24825         Fix fast/dom/isindex-002.html.
   24826 
   24827         Add default strings to our two remaining unimplemented localizable
   24828         strings in WebCore.
   24829 
   24830         * platform/win/TemporaryLinkStubs.cpp:
   24831         (WebCore::searchableIndexIntroduction): Added English string from Mac.
   24832         (WebCore::inputElementAltText): Ditto.
   24833 
   24834 2007-03-17  Adele Peterson  <adele (a] apple.com>
   24835 
   24836         Reviewed by Hyatt.
   24837 
   24838         Fix for <rdar://problem/4960391> REGRESSION (r18922): onChange never fired after selecting an item from a menulist
   24839 
   24840         * platform/win/PopupMenuWin.cpp:
   24841         (WebCore::PopupMenu::PopupMenu): Initialize m_focusedIndex to 0.  Instead of using the client to track the focused index, we'll
   24842          keep track of it internally.  Our old behavior was trying to match Firefox by updating the selected index as you focus items, but that
   24843          doesn't seem necessary if the selection never gets committed.
   24844         (WebCore::PopupMenu::show): Initialize the focused index to the client's selected index.
   24845         (WebCore::PopupMenu::setFocusedIndex): Remove the fireOnChange argument.  Remove the call to valueChanged.
   24846         (WebCore::PopupMenu::focusedIndex): Return m_focusedIndex instead of getting this from the client.
   24847         (WebCore::PopupMenu::down): Use the focusedIndex.
   24848         (WebCore::PopupMenu::up): ditto.
   24849         (WebCore::PopupMenu::paint): Paint a selected appearance for the item with the focused index.
   24850 
   24851 2007-03-16  Adele Peterson  <adele (a] apple.com>
   24852 
   24853         Reviewed by Lou.
   24854 
   24855         Fix for <rdar://problem/5065040> cannot mousedown + drag in a <select> menu
   24856 
   24857         * platform/win/PopupMenuWin.cpp:
   24858         (WebCore::PopupMenu::show): Set the capture when the popup window comes up.
   24859         (WebCore::PopupWndProc): Release the capture only when the mouse is not down, and the mouse moves outside the popup window, 
   24860          or if you mouse up inside the window, and you're about to hide the popup.  The mouse will get recaptured if you mouse down
   24861          again in the window.
   24862 
   24863 2007-03-15  Brady Eidson  <beidson (a] apple.com>
   24864 
   24865         Reviewed by Oliver
   24866 
   24867         CFNetwork related cleanup that was a work around for previous deficiencies in CFURLDownload
   24868         This might fix some of the random crashers we see on stress testing if they end up 
   24869         downloading links.
   24870 
   24871         * platform/network/cf/ResourceHandleCFNet.cpp:
   24872         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):  Always call cancel if theres a
   24873           connection - the ref-count-check hack is no longer neccesary
   24874         (WebCore::ResourceHandle::releaseConnectionForDownload): Give up the CFURLConnection without
   24875           derefing it
   24876 
   24877 2007-03-15  Maciej Stachowiak  <mjs (a] apple.com>
   24878 
   24879         Reviewed by Geoff and Steve.
   24880         
   24881         - fixed <rdar://problem/5029776> iBench JavaScript test slower than Opera
   24882         - fixes to use FastMalloc on Windows
   24883 
   24884         * config.h: Don't force USE_SYSTEM_MALLOC
   24885 
   24886 2007-03-15  Adam Roben  <aroben (a] apple.com>
   24887 
   24888         Rubberstamped by Hyatt.
   24889 
   24890         * platform/win/FontDataWin.cpp:
   24891         (WebCore::FontData::platformInit): Move the code to get the font face
   24892         to the top of the function for easier debugging.
   24893         * platform/win/FontPlatformDataWin.cpp:
   24894         (WebCore::FontPlatformData::FontPlatformData): ASSERT that we got a
   24895         valid CGFontRef back from CG, as CG and GDI should agree on the fonts
   24896         installed.
   24897 
   24898 2007-03-14  Anders Carlsson  <acarlsson (a] apple.com>
   24899 
   24900         Reviewed by Adam.
   24901 
   24902         Use CFURLResponseCopySuggestedFilename.
   24903         
   24904         * platform/network/cf/ResourceResponseCFNet.cpp:
   24905         (WebCore::suggestedFilenameForResponse):
   24906 
   24907 2007-03-14  Adam Roben  <aroben (a] apple.com>
   24908 
   24909         Reviewed by Hyatt.
   24910 
   24911         Use CG to get xHeight.
   24912 
   24913         * platform/win/FontDataWin.cpp:
   24914         (WebCore::scaleEmToUnits): Made robust against divide-by-zero errors.
   24915         (WebCore::FontData::platformInit): Ported Mac code to get xHeight using CG.
   24916 
   24917 2007-03-14  Anders Carlsson  <acarlsson (a] apple.com>
   24918 
   24919         Build fixes.
   24920         
   24921         * platform/graphics/win/ImageWin.cpp:
   24922         (WebCore::Image::loadPlatformResource):
   24923         * platform/win/EditorWin.cpp:
   24924 
   24925 2007-03-13  Adam Roben  <aroben (a] apple.com>
   24926 
   24927         Reviewed by Anders.
   24928 
   24929         * platform/win/FontDataWin.cpp:
   24930         (WebCore::scaleEmToUnits): Ported from FontDataMac.
   24931         (WebCore::FontData::platformInit): Use CG for metrics, and apply Mac's
   24932         line-height hack for Times, Helvetica, and Courier.
   24933         (WebCore::FontData::platformWidthForGlyph): Call wkGetGlyphAdvances to
   24934         use some CG SPI to match Mac.
   24935 
   24936 2007-03-12  Darin Adler  <darin (a] apple.com>
   24937 
   24938         * WebCore.vcproj/WebCore.vcproj: Added new JavaScript wrapper derived source files.
   24939 
   24940 2007-03-12  Anders Carlsson  <acarlsson (a] apple.com>
   24941 
   24942         Reviewed by Darin.
   24943 
   24944         <rdar://problem/5054694>
   24945         Repro crash when viewing fast/dom/HTMLObjectElement/object-as-frame.html
   24946         
   24947         * bridge/win/FrameWin.cpp:
   24948         (WebCore::Frame::createScriptInstanceForWidget):
   24949         Return 0 for frame views.
   24950 
   24951 2007-03-12  Anders Carlsson  <acarlsson (a] apple.com>
   24952 
   24953         Reviewed by Adam.
   24954 
   24955         <rdar://problem/5054713>
   24956         Crash in suggestedFilenameForResponse in two fast/encoding tests.
   24957         
   24958         Add null checks.
   24959         
   24960         * platform/network/cf/ResourceResponseCFNet.cpp:
   24961         (WebCore::suggestedFilenameForResponse):
   24962 
   24963 2007-03-12  Adele Peterson  <adele (a] apple.com>
   24964 
   24965         Reviewed by Oliver.
   24966 
   24967         Fix for <rdar://problem/5053618> Disable "recent searches" search field menu.
   24968 
   24969         * platform/win/SearchPopupMenuWin.cpp: (WebCore::SearchPopupMenu::enabled):
   24970 
   24971 2007-03-12  Adele Peterson  <adele (a] apple.com>
   24972 
   24973         Reviewed by Oliver.
   24974         
   24975         WebCore part of fix for <rdar://problem/5044790> preventing default of keypress event doesn't work (affects .mac)
   24976 
   24977         * platform/win/KeyEventWin.cpp:
   24978         (WebCore::singleCharacterString): Added inline keyword.   
   24979         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   24980         Renamed arguments to be more meaningful.  Added characterCode argument to be used when constructing m_text.
   24981 
   24982 2007-03-12  Adele Peterson  <adele (a] apple.com>
   24983 
   24984         Reviewed by Oliver.
   24985 
   24986         Forking KeyEventWin.cpp from revision 20118.
   24987 
   24988         * WebCore.vcproj/WebCore.vcproj:
   24989         * platform/win/KeyEventWin.cpp: Added.
   24990 
   24991 2007-03-11  Oliver Hunt  <oliver (a] apple.com>
   24992 
   24993         Reviewed by Adele.
   24994 
   24995         Removed Frame::respondToChangedSelection stub
   24996         added Editor::markMisspellings stub
   24997 
   24998         * platform/win/TemporaryLinkStubs.cpp:
   24999         (WebCore::Editor::markMisspellings):
   25000 
   25001 2007-03-10  Geoffrey Garen  <ggaren (a] apple.com>
   25002 
   25003         Reviewed by Darin Adler.
   25004 
   25005         Fixed <rdar://problem/4587763> PAC file: lock inversion between QT and 
   25006         JSCore causes a hang @ www.panoramas.dk
   25007         
   25008         See JavaScriptCore ChangeLog for details.
   25009         
   25010         Stress test doesn't show any problems.
   25011         
   25012         Drop the JSLock before making calls through the plug-in API from functions
   25013         that may have been called by JavaScript.
   25014         
   25015         * plugins/win/PluginViewWin.cpp:
   25016         (WebCore::PluginViewWin::paint):
   25017         (WebCore::PluginViewWin::handleKeyboardEvent):
   25018         (WebCore::PluginViewWin::handleMouseEvent):
   25019         (WebCore::PluginViewWin::setNPWindowRect):
   25020         (WebCore::PluginViewWin::start):
   25021         (WebCore::PluginViewWin::stop):
   25022         (WebCore::PluginViewWin::performRequest):
   25023         (WebCore::PluginViewWin::bindingInstance):
   25024 
   25025 2007-03-09  Oliver Hunt  <oliver (a] apple.com>
   25026 
   25027         Reviewed by John.
   25028 
   25029         Fix the doubled text in the image used to drag a link
   25030 
   25031         * platform/win/WebCoreTextRenderer.cpp:
   25032         (WebCore::WebCoreDrawDoubledTextAtPoint):
   25033 
   25034 2007-03-09  Anders Carlsson  <acarlsson (a] apple.com>
   25035 
   25036         Reviewed by Adam.
   25037 
   25038         Implement setting the suggested filename for a response.
   25039         
   25040         * platform/network/cf/ResourceResponseCFNet.cpp:
   25041         (WebCore::filenameFromHTTPContentDisposition):
   25042         (WebCore::filenameHasSaneExtension):
   25043         (WebCore::suggestedFilenameForResponse):
   25044         (WebCore::ResourceResponse::doUpdateResourceResponse):
   25045         * platform/win/MimeTypeRegistryWin.cpp:
   25046         (WebCore::getMIMETypeForUTI):
   25047         
   25048         (WebCore::mimeTypeForExtension):
   25049         Fix two bugs in this function.
   25050         
   25051         (WebCore::MimeTypeRegistry::getPreferredExtensionForMIMEType):
   25052 
   25053 2007-03-09  Anders Carlsson  <acarlsson (a] apple.com>
   25054 
   25055         * plugins/win/PluginViewWin.cpp:
   25056         (WebCore::PluginViewWin::performRequest):
   25057         Fixup comments and remove an obsolete FIXME.
   25058 
   25059 2007-03-09  Oliver Hunt  <oliver (a] apple.com>
   25060 
   25061         Reviewed by Steve.
   25062 
   25063         Executing a script for a plugin can cause cause this to be deleted
   25064         so we take a reference to our parent prior to executing the script
   25065 
   25066         * plugins/win/PluginViewWin.cpp:
   25067         (WebCore::PluginViewWin::performRequest):
   25068 
   25069 2007-03-08  Oliver Hunt  <oliver (a] apple.com>
   25070 
   25071         Reviewed by Steve.
   25072 
   25073         Allow webloc files to be dropped onto the webview
   25074         
   25075         <rdar://problem/4883564> Regression: cannot open webloc file by dnd to Boomer's window
   25076 
   25077         * platform/win/DragDataWin.cpp:
   25078         (WebCore::cfHDropFormat):
   25079            Clipboard format for HDROP, non-static as i will need it elsewhere in the future 
   25080         (WebCore::getWebLocData):
   25081            Extract a url from a webloc file
   25082         (WebCore::getURL):
   25083            Call getWebLocData
   25084 
   25085 2007-03-08  Steve Falkenburg  <sfalken (a] apple.com>
   25086 
   25087         Fix Production build more
   25088 
   25089         * WebCore.vcproj/WebCore.vcproj:
   25090 
   25091 2007-03-08  Steve Falkenburg  <sfalken (a] apple.com>
   25092 
   25093         Production build fix
   25094 
   25095         * WebCore.vcproj/WebCore.vcproj:
   25096 
   25097 2007-03-08  Adam Roben  <aroben (a] apple.com>
   25098 
   25099         Reviewed by Steve.
   25100         
   25101         Fix <rdar://problem/4969070> Failed error pages show "unknown error"
   25102         rather than specific error
   25103 
   25104         Make ResourceError aware of kCFErrorDomainCFNetwork.
   25105 
   25106         * platform/network/cf/ResourceErrorCF.cpp:
   25107         (WebCore::ResourceError::ResourceError): Added case for
   25108         kCFErrorDomainCFNetwork.
   25109 
   25110 2007-03-06  Adam Roben  <aroben (a] apple.com>
   25111 
   25112         Fixing the build while semi-blind is fun.
   25113 
   25114         * platform/win/TemporaryLinkStubs.cpp:
   25115         (WebCore::supportedKeySizes): Need a namespace.
   25116         (WebCore::signedPublicKeyAndChallengeString): Ditto.
   25117 
   25118 2007-03-06  Adam Roben  <aroben (a] apple.com>
   25119 
   25120         It works better if you use valid C++ syntax.
   25121 
   25122         * platform/win/TemporaryLinkStubs.cpp:
   25123 
   25124 2007-03-06  Adam Roben  <aroben (a] apple.com>
   25125 
   25126         Build fix.
   25127 
   25128         * platform/win/TemporaryLinkStubs.cpp: Added missing stubs.
   25129 
   25130 2007-03-06  Adam Roben  <aroben (a] apple.com>
   25131 
   25132         Reviewed by Anders.
   25133 
   25134         Always keep rounding hacks on.
   25135 
   25136         * platform/win/FileChooserWin.cpp:
   25137         (WebCore::FileChooser::basenameForWidth): Tell StringTruncator to keep
   25138         rounding hacks on.
   25139         * platform/win/WebCoreTextRenderer.cpp:
   25140         (WebCore::WebCoreTextFloatWidth): Ditto.
   25141 
   25142 2007-03-06  Anders Carlsson  <acarlsson (a] apple.com>
   25143 
   25144         Build fix.
   25145         
   25146         * plugins/win/PluginViewWin.cpp:
   25147         (WebCore::PluginViewWin::userAgent):
   25148 
   25149 2007-03-05  Anders Carlsson  <acarlsson (a] apple.com>
   25150 
   25151         Reviewed by Adam.
   25152 
   25153         <rdar://problem/5041348>
   25154         Can't watch videos at cnn.com
   25155         
   25156         * plugins/win/PluginStreamWin.cpp:
   25157         (WebCore::PluginStreamWin::cancelAndDestroyStream):
   25158         Change this function back to call call stop() after destroyStream(). Also, make sure to
   25159         protect the stream since destroyStream can eventually, well, destroy it.
   25160 
   25161 2007-03-05  Anders Carlsson  <acarlsson (a] apple.com>
   25162 
   25163         Reviewed by Adam.
   25164 
   25165         <rdar://problem/4987743>
   25166         Regression: java content is represented as broken images on pages
   25167         
   25168         * plugins/win/PluginPackageWin.cpp:
   25169         (WebCore::PluginPackageWin::load):
   25170         Make sure to set the size of the NPPluginFuncs struct correctly.
   25171 
   25172 2007-03-05  Steve Falkenburg  <sfalken (a] apple.com>
   25173 
   25174         Fix build
   25175 
   25176         * plugins/win/PluginStreamWin.cpp:
   25177         (WebCore::PluginStreamWin::stop): Call cancel() instead of stopLoading(), since the latter was removed.
   25178 
   25179 2007-03-02  Adam Roben  <aroben (a] apple.com>
   25180 
   25181         Reviewed by Anders.
   25182 
   25183         Added optional underlining of a single character to
   25184         WebCoreTextRenderer.
   25185 
   25186         No layout tests possible.
   25187 
   25188         * platform/win/WebCoreTextRenderer.cpp:
   25189         (WebCore::doDrawTextAtPoint): Added. This is an extraction of the code
   25190         from DrawTextAtPoint that now also contains the underlining code.
   25191         (WebCore::WebCoreDrawTextAtPoint): Call the helper function.
   25192         (WebCore::WebCoreDrawDoubledTextAtPoint): Ditto.
   25193         * platform/win/WebCoreTextRenderer.h: Added optional underlinedIndex
   25194         parameters.
   25195 
   25196 2007-03-01  Anders Carlsson  <acarlsson (a] apple.com>
   25197 
   25198         Reviewed by Tim.
   25199 
   25200         * plugins/win/npfunctions.h:
   25201         Fix tyop.
   25202         
   25203 2007-02-28  Adam Roben  <aroben (a] apple.com>
   25204 
   25205         Reviewed by Anders.
   25206 
   25207         Clean up WebCoreTextRenderer. WebCoreDrawTextAtPoint now just draws
   25208         text at a point. It doesn't center truncate, clip, or modify alignment.
   25209 
   25210         No layout test possible.
   25211 
   25212         * platform/win/WebCoreTextRenderer.cpp:
   25213         (WebCore::WebCoreDrawTextAtPoint): Use only WebCore types, and don't
   25214         center truncate or modify alignment.
   25215         (WebCore::WebCoreDrawDoubledTextAtPoint): Moved from WebKitGraphics.cpp.
   25216         (WebCore::WebCoreTextFloatWidth): Added.
   25217         * platform/win/WebCoreTextRenderer.h: Updated/added declarations.
   25218 
   25219 2007-02-28  Adele Peterson  <adele (a] apple.com>
   25220 
   25221         Reviewed by Adam.
   25222 
   25223         Fix for <rdar://problem/4887423> REGRESSION: search results popup menu strings are not localized
   25224         and <rdar://problem/3517227> accessibility-related strings in WebCore are not localized
   25225 
   25226         * platform/win/TemporaryLinkStubs.cpp:
   25227         (WebCore::searchMenuNoRecentSearchesText):
   25228         (WebCore::searchMenuRecentSearchesText):
   25229         (WebCore::searchMenuClearRecentSearchesText):
   25230         (WebCore::AXWebAreaText):
   25231         (WebCore::AXLinkText):
   25232         (WebCore::AXListMarkerText):
   25233         (WebCore::AXImageMapText):
   25234         (WebCore::AXHeadingText):
   25235 
   25236 2007-02-28  Maciej Stachowiak  <mjs (a] apple.com>
   25237 
   25238         Reviewed by Adam.
   25239 
   25240         - fixed <rdar://problem/5005120> Crash: selecting View all RSS Articles from context menu of bookmark folder
   25241 
   25242         * platform/network/cf/ResourceRequestCFNet.cpp:
   25243         (WebCore::ResourceRequest::doUpdatePlatformRequest): Use RetainPtr
   25244         instead of explicit release, as this was caused by CFRelease on
   25245         a null pointer, and REtainPtr is tolerant.
   25246 
   25247 2007-02-27  Beth Dakin  <bdakin (a] apple.com>
   25248 
   25249         Reviewed by Adam.
   25250 
   25251         <rdar://problem/4956528> Implement Pasteboard::writeImage for 
   25252         Boomer context menus
   25253 
   25254         * platform/win/PasteboardWin.cpp:
   25255         (WebCore::Pasteboard::writeImage): Copy a bitmap to the clipboard.
   25256 
   25257 2007-02-27  Oliver Hunt  <oliver (a] apple.com>
   25258 
   25259         Reviewed by Lou and Steve.
   25260 
   25261         Add a store for current Cursor to fix <rdar://problem/4788352>
   25262 
   25263         * platform/win/WidgetWin.cpp:
   25264         (WebCore::Widget::setCursor):
   25265 
   25266 2007-02-26  Oliver Hunt  <oliver (a] apple.com>
   25267 
   25268         Reviewed by Maciej.
   25269 
   25270         To stop the drag image for transparent images from looking 
   25271         ugly (especially fully transparent images) we render the 
   25272         image to a white background prior to passing the image on to 
   25273         Windows
   25274         
   25275         <rdar://problem/5015946>
   25276 
   25277         * platform/win/DragImageWin.cpp:
   25278         (WebCore::createDragImageFromImage):
   25279 
   25280 2007-02-26  Adam Roben  <aroben (a] apple.com>
   25281 
   25282         Reviewed by Adele.
   25283 
   25284         * platform/win/GraphicsContextWin.cpp: Get rid of so-five-hours-ago SVG_SUPPORT.
   25285 
   25286 2007-02-26  Adam Roben  <aroben (a] apple.com>
   25287 
   25288         Build fix.
   25289 
   25290         * config.h: Remove redundant #define.
   25291         * WebCore.vcproj/WebCore.vcproj: Update to new macros.
   25292 
   25293 2007-02-26  Adam Roben  <aroben (a] apple.com>
   25294 
   25295         Rubberstamped by Ada.
   25296 
   25297         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp: Make #if match the header file.
   25298 
   25299 2007-02-26  Adam Roben  <aroben (a] apple.com>
   25300 
   25301         Reviewed by Darin.
   25302 
   25303         Build fix.
   25304 
   25305         * WebCore.vcproj/build-generated-files.sh: Updated FEATURE_DEFINES.
   25306         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp: Use shiny new ENABLE(SVG).
   25307         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp: Ditto.
   25308 
   25309 2007-02-25  Maciej Stachowiak  <mjs (a] apple.com>
   25310 
   25311         Reviewed by Adam.
   25312 
   25313         - fixed layout test failure in fast/overflow/scrollRevealButton
   25314         
   25315         I added a new ScrollView method, fullyClippedContentRect, that vies the content rect
   25316         as clipped by all ancestor scroll views, not just this one. Currently it only works
   25317         correctly on mac however. visibleContentRect, only accounting for the clipping from
   25318         this particular scroll view, is sufficient for most purposes.
   25319 
   25320         * platform/win/ScrollViewWin.cpp:
   25321         (WebCore::ScrolView::fullyClippedContentRect):
   25322 
   25323 2007-02-24  Adam Roben  <aroben (a] apple.com>
   25324 
   25325         Change #if to #ifdef to match style.
   25326 
   25327         * platform/win/PopupMenuWin.cpp:
   25328         (WebCore::PopupMenu::show):
   25329 
   25330 2007-02-24  Adam Roben  <aroben (a] apple.com>
   25331 
   25332         Reviewed by Steve.
   25333 
   25334         Fix <rdar://problem/5013502> REGRESSION: <select> menus are not
   25335         animating smoothly
   25336 
   25337         This was caused by making the menus partially transparent in r12250.
   25338 
   25339         * platform/win/PopupMenuWin.cpp:
   25340         (WebCore::PopupMenu::show): Disable animations.
   25341 
   25342 2007-02-23  Anders Carlsson  <acarlsson (a] apple.com>
   25343 
   25344         Reviewed by Adam.
   25345 
   25346         <rdar://problem/4761543>
   25347         nike.com doesn't finish loading if Flash plugin is installed.
   25348         
   25349         If a plugin requests a JavaScript URL with a non null frame target, execute the JavaScript expression. If the result 
   25350         is not "undefined", replace the contents of the frame with the result converted to a string.
   25351 
   25352         * plugins/win/PluginViewWin.cpp:
   25353         (WebCore::getString):
   25354         (WebCore::PluginViewWin::performRequest):
   25355         (WebCore::PluginViewWin::requestTimerFired):
   25356 
   25357 2007-02-22  Oliver Hunt  <oliver (a] apple.com>
   25358 
   25359         rs = adam
   25360         
   25361         Replacing radar numbers from previous patch with one
   25362         the isn't fictitious <rdar://problem/5018591>
   25363 
   25364         * platform/win/CursorWin.cpp:
   25365         (WebCore::columnResizeCursor):
   25366         (WebCore::rowResizeCursor):
   25367         (WebCore::verticalTextCursor):
   25368 
   25369 2007-02-22  Oliver Hunt  <oliver (a] apple.com>
   25370 
   25371         Reviewed by Ada.
   25372 
   25373         Implemented a couple more cursor methods
   25374 
   25375         * platform/win/CursorWin.cpp:
   25376         (WebCore::columnResizeCursor):
   25377         (WebCore::rowResizeCursor):
   25378         (WebCore::verticalTextCursor):
   25379           Added radar bug reference <rdar://problem/5018452>
   25380         (WebCore::progressCursor):
   25381         (WebCore::noDropCursor):
   25382         (WebCore::notAllowedCursor):
   25383           Making them return the correct cursor
   25384 
   25385 2007-02-22  Oliver Hunt  <oliver (a] apple.com>
   25386 
   25387         Reviewed by Anders.
   25388 
   25389         Removing accessive COMPtr use from ClipboardWin constructors
   25390         Adding data verification to ClipoardWin::SetData
   25391         Small amount code tidying, and allowing for failure when writing an URL
   25392 
   25393         * page/win/EventHandlerWin.cpp:
   25394         (WebCore::EventHandler::createDraggingClipboard):
   25395           Updated for new ClipboardWin constructor
   25396         * platform/win/ClipboardWin.cpp:
   25397         (WebCore::ClipboardWin::ClipboardWin):
   25398         (WebCore::writeURL):
   25399         (WebCore::ClipboardWin::getData):
   25400           Tidying code, and allowing failure
   25401         (WebCore::ClipboardWin::setData):
   25402           Verifying that we're writing a valid url
   25403                     
   25404         * platform/win/ClipboardWin.h:
   25405         * platform/win/EditorWin.cpp:
   25406         (WebCore::Editor::newGeneralClipboard):
   25407           Updated for new ClipboardWin constructor
   25408 
   25409 2007-02-22  Oliver Hunt  <oliver (a] apple.com>
   25410 
   25411         Reviewed by Ada, Lou, and Steve.
   25412 
   25413         Last of the major Drag and drop implementation 
   25414         patches for windows:
   25415         * Adds support for DOM Clipboard during drag operations
   25416         * Un-statics and refactors a few Pasteboard and DragData functions
   25417           to allow them to share implementation with ClipboardWin and other 
   25418           drag logic
   25419         * Moves COMPtr.h from WebKit to WebCore
   25420         * Adds WCDataObject, which is basically a direct copy of
   25421           SDataObject from the app, with a few modifications to support
   25422           DOM clipboard functionality.  Also includes a few suggestions
   25423           from Ada and Steve, mostly involving memory management :D
   25424         
   25425         This resolves 
   25426         <rdar://problem/4821407> Cannot drag link to bookmarks bar to create new link
   25427         <rdar://problem/4869496> User Interaction Essentials: Drag
   25428 
   25429         * WebCore.vcproj/WebCore.vcproj:
   25430           Adding new files
   25431           
   25432         * page/win/DragControllerWin.cpp:
   25433         (WebCore::DragController::maxDragImageSize):
   25434           Maximum size of drag image to allow sharp edges
   25435           is 208x208
   25436           
   25437         * page/win/EventHandlerWin.cpp:
   25438         (WebCore::EventHandler::createDraggingClipboard):
   25439           Properly implemented now
   25440           
   25441         * platform/win/ClipboardWin.cpp:
   25442         (WebCore::):
   25443         (WebCore::clipboardTypeFromMIMEType):
   25444         (WebCore::ClipboardWin::ClipboardWin):
   25445         (WebCore::ClipboardWin::~ClipboardWin):
   25446         (WebCore::writeURL):
   25447           Helper function to write a url to a WCDataObject
   25448         (WebCore::ClipboardWin::clearData):
   25449         (WebCore::ClipboardWin::clearAllData):
   25450         (WebCore::ClipboardWin::getData):
   25451         (WebCore::ClipboardWin::setData):
   25452         (WebCore::addMimeTypesForFormat):
   25453           Helper function for ClipboardWin::types
   25454         (WebCore::ClipboardWin::types):
   25455         (WebCore::ClipboardWin::setDragImage):
   25456         (WebCore::ClipboardWin::setDragImageElement):
   25457           General setters, match behaviour of WebKit/Mac
   25458         (WebCore::ClipboardWin::createDragImage):
   25459           Creates a drag image for a DOM specified Image is specified
   25460           can't currently generate an image for an arbitrary element
   25461         (WebCore::imageToMarkup):
   25462           Wraps a url in an img tag
   25463         (WebCore::ClipboardWin::declareAndWriteDragImage):
   25464         (WebCore::ClipboardWin::writeURL):
   25465         (WebCore::ClipboardWin::writeRange):
   25466         (WebCore::ClipboardWin::hasData):
   25467           Implement Clipboard required by DragController.
   25468           Provides read/write DOM Clipboard implementation for dragging,
   25469           read only when accessing system clipboard.
   25470           
   25471         * platform/win/ClipboardWin.h:
   25472         (WebCore::ClipboardWin::dataObject):
   25473           Provide an accessor for the dataObject
   25474           
   25475         * platform/win/DragDataWin.cpp:
   25476         (WebCore::urlWFormat):
   25477         (WebCore::urlFormat):
   25478         (WebCore::plainTextFormat):
   25479         (WebCore::plainTextWFormat):
   25480         (WebCore::texthtmlFormat):
   25481         (WebCore::htmlFormat):
   25482         (WebCore::getURL):
   25483         (WebCore::DragData::asURL):
   25484         (WebCore::getPlainText):
   25485         (WebCore::DragData::asPlainText):
   25486         (WebCore::DragData::asFragment):
   25487           Refactoring and removing of a few static modifiers to allow sharing with Clipboard
   25488           
   25489         * platform/win/DragImageWin.cpp:
   25490         (WebCore::dragImageSize):
   25491         (WebCore::deleteDragImage):
   25492         (WebCore::allocImage):
   25493         (WebCore::createCgContextFromBitmap):
   25494         (WebCore::scaleDragImage):
   25495         (WebCore::dissolveDragImageToFraction):
   25496         (WebCore::createDragImageFromImage):
   25497         (WebCore::createDragImageIconForCachedImage):
   25498           Implement DragImage functions
   25499           
   25500         * platform/win/EditorWin.cpp:
   25501         (WebCore::Editor::newGeneralClipboard):
   25502           Creating a Clipboard that wraps the system clipboard
   25503           
   25504         * platform/win/PasteboardWin.cpp:
   25505         (WebCore::createGlobalData):
   25506         (WebCore::markupToCF_HTML):
   25507         (WebCore::urlToMarkup):
   25508         (WebCore::replaceNBSP):
   25509           removing 'static'
   25510           
   25511         * platform/win/WCDataObject.cpp: Added.
   25512         (WebCore::WCEnumFormatEtc::WCEnumFormatEtc):
   25513         (WebCore::WCEnumFormatEtc::QueryInterface):
   25514         (WebCore::WCEnumFormatEtc::AddRef):
   25515         (WebCore::WCEnumFormatEtc::Release):
   25516         (WebCore::WCEnumFormatEtc::Next):
   25517         (WebCore::WCEnumFormatEtc::Skip):
   25518         (WebCore::WCEnumFormatEtc::Reset):
   25519         (WebCore::WCEnumFormatEtc::Clone):
   25520         (WebCore::WCDataObject::createInstance):
   25521         (WebCore::WCDataObject::WCDataObject):
   25522         (WebCore::WCDataObject::~WCDataObject):
   25523         (WebCore::WCDataObject::QueryInterface):
   25524         (WebCore::WCDataObject::AddRef):
   25525         (WebCore::WCDataObject::Release):
   25526         (WebCore::WCDataObject::GetData):
   25527         (WebCore::WCDataObject::GetDataHere):
   25528         (WebCore::WCDataObject::QueryGetData):
   25529         (WebCore::WCDataObject::GetCanonicalFormatEtc):
   25530         (WebCore::WCDataObject::SetData):
   25531         (WebCore::WCDataObject::CopyMedium):
   25532         (WebCore::WCDataObject::EnumFormatEtc):
   25533         (WebCore::WCDataObject::DAdvise):
   25534         (WebCore::WCDataObject::DUnadvise):
   25535         (WebCore::WCDataObject::EnumDAdvise):
   25536         (WebCore::WCDataObject::clearData):
   25537           Copied from SDataObject in the App createInstance and clearData
   25538           are the only new functions.  clearData removes any entries in the
   25539           object with a specified CLIPFORMAT.
   25540           Have also made a few error and memory handling changes suggested
   25541           by Steve and Ada
   25542         * platform/win/WCDataObject.h: Added.
   25543           Header for the above
   25544 
   25545 2007-02-22  Adam Roben  <aroben (a] apple.com>
   25546 
   25547         Reviewed by Adele.
   25548 
   25549         Make sure we always paint the right size search results icon.
   25550 
   25551         * rendering/RenderThemeSafari.cpp:
   25552         (WebCore::RenderThemeSafari::paintSearchFieldCancelButton): Removed unused parameter.
   25553         (WebCore::RenderThemeSafari::paintSearchFieldDecoration): Ditto.
   25554         (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration): Base
   25555         the control size off of the search field rect to ensure that the icon
   25556         and the control are the same size.
   25557         (WebCore::RenderThemeSafari::paintSearchFieldResultsButton): Ditto.
   25558 
   25559 2007-02-21  Adam Roben  <aroben (a] apple.com>
   25560 
   25561         Reviewed by Adele.
   25562 
   25563         Updated for SafariTheme changes.
   25564 
   25565         * rendering/RenderThemeSafari.cpp:
   25566         (WebCore::RenderThemeSafari::paintMenuList): Use DropDownButtonPart.
   25567 
   25568 2007-02-20  Adele Peterson  <adele (a] apple.com>
   25569 
   25570         Reviewed by Darin.
   25571 
   25572         * WebCore.vcproj/WebCore.vcproj: Added JSHTMLSelectElementCustom.h
   25573 
   25574 2007-02-20  Beth Dakin  <bdakin (a] apple.com>
   25575 
   25576         Reviewed by Maciej.
   25577 
   25578         Some changes needed to match moving writeImage() to the Pasteboard 
   25579         on the Mac.
   25580 
   25581         * platform/win/PasteboardWin.cpp:
   25582         (WebCore::Pasteboard::writeURL): Now takes a bool indicating if the 
   25583         url if for an image.
   25584         (WebCore::Pasteboard::writeImage): This is just a stub for now. I 
   25585         am putting it here instead of on TemporaryLinkStubs because I plan 
   25586         on implementing it very soon.
   25587 
   25588 2007-02-20  Adam Roben  <aroben (a] apple.com>
   25589 
   25590         Reviewed by Darin and Anders.
   25591 
   25592         Fix <rdar://problem/5003318> App: Status bar text is more difficult to
   25593         read than Mac OS X Safari
   25594 
   25595         * WebCore.vcproj/WebCore.vcproj: Added new files.
   25596         * platform/win/FileChooserWin.cpp:
   25597         (WebCore::FileChooser::openFileChooser):
   25598         (WebCore::FileChooser::basenameForWidth): Added truncation.
   25599         * platform/win/WebCoreTextRenderer.cpp:
   25600         (WebCore::WebCoreDrawTextAtPoint): Added bottomAlign and centerTruncate parameters.
   25601         * platform/win/WebCoreTextRenderer.h: Ditto.
   25602 
   25603 2007-02-20  Alice Liu  <alice.liu (a] apple.com>
   25604 
   25605         Build fix
   25606 
   25607         * WebCore.vcproj/WebCore.vcproj:
   25608         Added PositionIterator.cpp & h
   25609 
   25610 2007-02-20  Steve Falkenburg  <sfalken (a] apple.com>
   25611 
   25612         Production build fix
   25613 
   25614         * WebCore.vcproj/WebCore.vcproj:
   25615 
   25616 2007-02-19  Geoffrey Garen  <ggaren (a] apple.com>
   25617 
   25618         Reviewed by Adam Roben.
   25619 
   25620         Fixed some leaks in RenderThemeSafari.
   25621         
   25622         I just merged some of the code I wrote for RenderThemeMac.
   25623         
   25624         * rendering/RenderThemeSafari.cpp:
   25625         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
   25626         (WebCore::RenderThemeSafari::paintSliderTrack):
   25627 
   25628 2007-02-19  Anders Carlsson  <acarlsson (a] apple.com>
   25629 
   25630         Reviewed by Oliver.
   25631 
   25632         Fix build.
   25633 
   25634         * page/win/DragControllerWin.cpp:
   25635         (WebCore::DragController::maxDragImageSize):
   25636 
   25637 2007-02-19  Adele Peterson  <adele (a] apple.com>
   25638 
   25639         Reviewed by Adam.
   25640 
   25641         Fix for <rdar://problem/5006882> PlatformScrollbarSafari doesn't support small scroll bars
   25642 
   25643         * platform/win/PlatformScrollBar.h:
   25644         * platform/win/PlatformScrollBarSafari.cpp:
   25645         (WebCore::):
   25646         (WebCore::PlatformScrollbar::PlatformScrollbar):
   25647         (WebCore::trackRepaintRect):
   25648         (WebCore::buttonRepaintRect):
   25649         (WebCore::PlatformScrollbar::invalidateTrack):
   25650         (WebCore::PlatformScrollbar::invalidatePart):
   25651         (WebCore::PlatformScrollbar::backButtonRect):
   25652         (WebCore::PlatformScrollbar::forwardButtonRect):
   25653         (WebCore::PlatformScrollbar::trackRect):
   25654         (WebCore::PlatformScrollbar::splitTrack):
   25655         (WebCore::PlatformScrollbar::thumbLength):
   25656         (WebCore::PlatformScrollbar::paintButton):
   25657         (WebCore::PlatformScrollbar::paintTrack):
   25658         (WebCore::PlatformScrollbar::paintThumb):
   25659         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
   25660         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
   25661         * platform/win/PopupMenuWin.cpp:
   25662         (WebCore::PopupMenu::show):
   25663         (WebCore::PopupMenu::calculatePositionAndSize):
   25664 
   25665 2007-02-19  Anders Carlsson  <acarlsson (a] apple.com>
   25666 
   25667         Reviewed by Adam.
   25668 
   25669         <rdar://problem/5008424>
   25670         Regression: Crash loading mp3.com
   25671         
   25672         * platform/network/cf/ResourceErrorCF.cpp:
   25673         (WebCore::ResourceError::ResourceError):
   25674         Handle null resource errrors.
   25675 
   25676 2007-02-19  Adam Roben  <aroben (a] apple.com>
   25677 
   25678         Build fix.
   25679 
   25680         * bridge/win/FrameWin.cpp:
   25681         (WebCore::computePageRectsForFrame): This is no longer an instance
   25682         method of Frame.
   25683         * bridge/win/FrameWin.h:
   25684 
   25685 2007-02-18  Maciej Stachowiak  <mjs (a] apple.com>
   25686 
   25687         Reviewed by Oliver.
   25688 
   25689         - Adapt for Lars's patch to clean up Frame
   25690 
   25691         * bridge/win/FrameWin.cpp:
   25692         (WebCore::Frame::cleanupPlatformScriptObjects):
   25693         (WebCore::Frame::createScriptInstanceForWidget):
   25694         (WebCore::Frame::computePageRects):
   25695         (WebCore::drawRectIntoContext):
   25696         (WebCore::imageFromSelection):
   25697         (WebCore::Frame::isCharacterSmartReplaceExempt):
   25698         * bridge/win/FrameWin.h:
   25699         * page/win/EventHandlerWin.cpp:
   25700         * platform/win/ScrollViewWin.cpp:
   25701         (WebCore::ScrollView::windowResizerRect):
   25702         (WebCore::ScrollView::addToDirtyRegion):
   25703         (WebCore::ScrollView::scrollBackingStore):
   25704         (WebCore::ScrollView::updateBackingStore):
   25705         * platform/win/TemporaryLinkStubs.cpp:
   25706         (Frame::print):
   25707         (Frame::issueTransposeCommand):
   25708         (WebCore::Frame::respondToChangedSelection):
   25709         * plugins/win/PluginDatabaseWin.cpp:
   25710         (WebCore::PluginDatabaseWin::createPluginView):
   25711         * plugins/win/PluginDatabaseWin.h:
   25712         * plugins/win/PluginViewWin.cpp:
   25713         (WebCore::PluginViewWin::createNullPluginView):
   25714         (WebCore::PluginViewWin::PluginViewWin):
   25715         * plugins/win/PluginViewWin.h:
   25716 
   25717 2007-02-18  Ada Chan  <adachan (a] apple.com>
   25718 
   25719         Reviewed by Adam.
   25720 
   25721         Move app text controls to use WebView.
   25722         - added a method to let us render text using WebKit.
   25723 
   25724         * WebCore.vcproj/WebCore.vcproj:
   25725         * platform/win/WebCoreTextRenderer.cpp: Added.
   25726         (WebCore::WebCoreDrawTextAtPoint):
   25727         * platform/win/WebCoreTextRenderer.h: Added.
   25728 
   25729 2007-02-18  Adam Roben  <aroben (a] apple.com>
   25730 
   25731         Rubberstamped by Hyatt.
   25732 
   25733         Fix <rdar://problem/5006918> All selected text is black, even if it is
   25734         some other color when not selected
   25735 
   25736         * platform/win/PopupMenuWin.cpp:
   25737         (WebCore::PopupMenu::paint): Use the listbox colors for selected items.
   25738         * rendering/RenderThemeSafari.cpp: Removed platformActiveSelectionForegroundColor.
   25739         * rendering/RenderThemeSafari.h: Ditto.
   25740 
   25741 2007-02-18  Adam Roben  <aroben (a] apple.com>
   25742 
   25743         Reviewed by Hyatt.
   25744 
   25745         Fix <rdar://problem/5006872> <select> popups need Aqua scroll bars
   25746 
   25747         PopupMenuWin now uses a PlatformScrollbar.
   25748 
   25749         * platform/win/PlatformScrollBarSafari.cpp:
   25750         (WebCore::PlatformScrollbar::hitTest): Allow hit testing even when we
   25751         don't have a parent widget.
   25752         (WebCore::PlatformScrollbar::autoscrollPressedPart): Don't autoscroll
   25753         if nothing is pressed.
   25754         * platform/win/PopupMenuWin.cpp: m_scrollOffset is now measured in menu
   25755         items, not in pixels.
   25756         (WebCore::PopupMenu::PopupMenu): Initialize new member.
   25757         (WebCore::PopupMenu::show): Make popups partially transparent, don't
   25758         use Windows' built-in scroll bars, and create a PlatformScrollbar if
   25759         needed.
   25760         (WebCore::PopupMenu::calculatePositionAndSize): Get the scroll bar's
   25761         width from PlatformScrollbar instead of from Windows.
   25762         (WebCore::PopupMenu::visibleItems): Added.
   25763         (WebCore::PopupMenu::listIndexAtPoint): Definition moved here from header.
   25764         (WebCore::PopupMenu::invalidateItem): Update for m_scrollOffset change,
   25765         and shrink the damage rect to not invalidate the scroll bar unnecessarily.
   25766         (WebCore::PopupMenu::scrollToRevealSelection): Updated to use PlatformScrollbar.
   25767         (WebCore::PopupMenu::updateFromElement): Changed bool to BOOL.
   25768         (WebCore::PopupMenu::paint): Updated for m_scrollOffset change, and
   25769         paint the scroll bar at the end.
   25770         (WebCore::PopupMenu::valueChanged): Added. Code comes from the old scrollTo method.
   25771         (WebCore::PopupMenu::windowClipRect): Added.
   25772         (WebCore::PopupWndProc):
   25773             - Set up the scroll bar in WM_SIZE
   25774             - Send mouse events to the scroll bar when appropriate
   25775             - Get rid of handling of WM_VSCROLL events (we shouldn't receive these anymore)
   25776 
   25777 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   25778 
   25779         Reviewed by Adam.
   25780 
   25781         Updated to include stubs for drag and drop methods
   25782         Added DragImage[Win].cpp to project file
   25783         Now uses platform independent EventHandler::handleDrag
   25784 
   25785         * WebCore.vcproj/WebCore.vcproj:
   25786 
   25787         * bridge/win/FrameWin.cpp:
   25788         (WebCore::Frame::dragImageForSelection):
   25789           Just wrap the platform specific selectionImage method
   25790 
   25791         * page/win/DragControllerWin.cpp:
   25792           Defining constants for drag images -- basically copied the Mac definitions
   25793 
   25794         * page/win/EventHandlerWin.cpp:
   25795         (WebCore::EventHandler::createDraggingClipboard):
   25796           Basic implementation -- needs to create an IDataObject to be useful
   25797           but ClipboardWin is basically unimplemented anyway so not yet a problem
   25798 
   25799         * platform/win/ClipboardWin.cpp:
   25800         (WebCore::ClipboardWin::createDragImage):
   25801         (WebCore::ClipboardWin::declareAndWriteDragImage):
   25802         (WebCore::ClipboardWin::writeURL):
   25803         (WebCore::ClipboardWin::writeRange):
   25804         (WebCore::ClipboardWin::hasData):
   25805           Stubs
   25806 
   25807         * platform/win/ClipboardWin.h:
   25808           Updated interface
   25809 
   25810         * platform/win/DragImageWin.cpp: Added.
   25811         (WebCore::dragImageSize):
   25812         (WebCore::deleteDragImage):
   25813         (WebCore::scaleDragImage):
   25814         (WebCore::dissolveDragImageToFraction):
   25815         (WebCore::createDragImageFromImage):
   25816         (WebCore::createDragImageIconForCachedImage):
   25817           Stubs
   25818 
   25819 2007-02-17  Adam Roben  <aroben (a] apple.com>
   25820 
   25821         * WebCore.vcproj/WebCore.vcproj: Removed bogus single-file
   25822         configuration for MimeTypeRegistryWin.cpp.
   25823 
   25824 2007-02-17  David Hyatt  <hyatt (a] apple.com>
   25825 
   25826         Part of the OpenSource fix to make sure the fill color starts off as transparent.  Make sure our CG context
   25827         has its state properly in sync with the CGContext.
   25828 
   25829         Reviewed by aroben
   25830 
   25831         * platform/win/GraphicsContextWin.cpp:
   25832         (WebCore::GraphicsContext::GraphicsContext):
   25833 
   25834 2007-02-17  Adam Roben  <aroben (a] apple.com>
   25835 
   25836         Build fix.
   25837 
   25838         * platform/win/CursorWin.cpp:
   25839         (WebCore::notAllowedCursor):
   25840 
   25841 2007-02-17  Dave Hyatt <hyatt (a] apple.com>
   25842 
   25843         Change how resizers are invalidated to fix Radar bug #4976772.
   25844         
   25845         Reviewed by olliej
   25846 
   25847         * platform/win/GraphicsContextWin.cpp:
   25848         (WebCore::GraphicsContext::GraphicsContext):
   25849         * platform/win/ScrollViewWin.cpp:
   25850         (WebCore::ScrollView::suppressScrollbars):
   25851         (WebCore::ScrollView::paint):
   25852         (WebCore::ScrollView::adjustOverlappingScrollbarCount):
   25853         * platform/win/WidgetWin.cpp:
   25854         (WebCore::Widget::invalidateRect):
   25855 
   25856 2007-02-16  Dave Hyatt <hyatt (a] apple.com>
   25857 
   25858         Fix for Radar bug #4981074, RSS Scrollbar overlaps window resizer.  Teach all scrollbars how to
   25859         avoid the window resizer.
   25860         
   25861         Reviewed by aroben
   25862 
   25863         * platform/win/PlatformScrollBar.h:
   25864         * platform/win/PlatformScrollBarSafari.cpp:
   25865         (WebCore::PlatformScrollbar::PlatformScrollbar):
   25866         (WebCore::PlatformScrollbar::setRect):
   25867         (WebCore::PlatformScrollbar::setParent):
   25868         * platform/win/PlatformScrollBarWin.cpp:
   25869         (WebCore::PlatformScrollbar::PlatformScrollbar):
   25870         (WebCore::PlatformScrollbar::setRect):
   25871         (WebCore::PlatformScrollbar::setParent):
   25872         * platform/win/ScrollViewWin.cpp:
   25873         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   25874         (WebCore::ScrollView::updateScrollbars):
   25875         (WebCore::ScrollView::resizerOverlapsContent):
   25876         (WebCore::ScrollView::adjustOverlappingScrollbarCount):
   25877         (WebCore::ScrollView::setParent):
   25878 
   25879 2007-02-16  Adam Roben  <aroben (a] apple.com>
   25880 
   25881         Rubberstamped by Anders.
   25882 
   25883         * platform/win/PlatformScrollBarSafari.cpp:
   25884         (WebCore::PlatformScrollbar::paint): Don't draw the arrows when we're disabled.
   25885 
   25886 2007-02-15  Dave Hyatt  <hyatt (a] apple.com>
   25887 
   25888         Reviewed by Adam.
   25889 
   25890         Fix for 4804657 and 4952931, scroll view gets confused and ends up at a bad scroll
   25891         offset.
   25892         
   25893         * platform/win/ScrollViewWin.cpp:
   25894         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   25895         (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
   25896         (WebCore::ScrollView::updateScrollbars):
   25897 
   25898 2007-02-16  Anders Carlsson  <acarlsson (a] apple.com>
   25899 
   25900         Reviewed by Adam.
   25901 
   25902         <rdar://problem/4993040>
   25903         Crash in plugin code watching yahoo news video
   25904         
   25905         Zero out the plugin function struct.
   25906         
   25907         * plugins/win/PluginPackageWin.cpp:
   25908         (WebCore::PluginPackageWin::load):
   25909 
   25910 2007-02-16  Anders Carlsson  <acarlsson (a] apple.com>
   25911 
   25912         Fix build.
   25913 
   25914         Use adoptCF instead of adopt.
   25915 
   25916         * platform/network/cf/ResourceHandleCFNet.cpp:
   25917         (WebCore::ResourceHandle::start):
   25918         * platform/network/cf/ResourceRequestCFNet.cpp:
   25919         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   25920 
   25921 2007-02-16  Adam Roben  <aroben (a] apple.com>
   25922 
   25923         Reviewed by Oliver.
   25924 
   25925         Implemented square button look.
   25926 
   25927         * rendering/RenderThemeSafari.cpp:
   25928         (WebCore::RenderThemeSafari::adjustRepaintRect): Only inflate the rect
   25929         if we have a pushbutton.
   25930         (WebCore::RenderThemeSafari::paintButton): Ditto.
   25931 
   25932 2007-02-15  Anders Carlsson  <acarlsson (a] apple.com>
   25933 
   25934         Reviewed by Adam.
   25935 
   25936         Add the default Flash plugin location to the list of plugin paths.
   25937 
   25938         * plugins/win/PluginDatabaseWin.cpp:
   25939         (WebCore::addFlashPluginPath):
   25940         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   25941 
   25942 2007-02-15  Lou Amadio  <lamadio (a] apple.com>
   25943 
   25944         Reviewed by Steve.
   25945 
   25946         <rdar://problem/4945799> CGText: should use correct mechanism to set font smoothing style
   25947         
   25948         * platform/win/FontWin.cpp:
   25949         (WebCore::Font::drawGlyphs):
   25950 
   25951 2007-02-15  Anders Carlsson  <acarlsson (a] apple.com>
   25952 
   25953         Reviewed by Adam.
   25954 
   25955         <rdar://problem/4987529>
   25956         Regression: first clicks don't work at flash-based Nokia.com
   25957 
   25958         * plugins/win/PluginViewWin.cpp:
   25959         (WebCore::PluginViewWin::handleMouseEvent):
   25960         Don't set buttons for mouse move. Also, ignore unknown mouse events.
   25961 
   25962 2007-02-13  Brady Eidson  <beidson (a] apple.com>
   25963 
   25964         Reviewed by Adam
   25965 
   25966         Switch permanently from CFStreamError to CFErrorRef in ResourceHandleCF
   25967 
   25968         * platform/network/cf/ResourceHandleCFNet.cpp:
   25969         (WebCore::didFail):
   25970         (WebCore::ResourceHandle::start):
   25971 
   25972 2007-02-13  Adam Roben  <aroben (a] apple.com>
   25973 
   25974         Build fix.
   25975 
   25976         * WebCore.vcproj/WebCore.vcproj: Remove SVGDOMImplementation.(cpp|h)
   25977 
   25978 2007-02-12  Ada Chan  <adachan (a] apple.com>
   25979 
   25980         Reviewed by Steve.
   25981 
   25982         <rdar://4952715> Events not being passed from WebCore/WebKit up through IWebForm::doCommandBySelector
   25983         Frame::doTextFieldCommandFromEvent()'s signature has changed from taking in a PlatformKeyboardEvent
   25984         to KeyboardEvent.  Match that in FrameWin.
   25985 
   25986         * bridge/win/FrameWin.cpp:
   25987         (WebCore::FrameWin::doTextFieldCommandFromEvent):
   25988         * bridge/win/FrameWin.h:
   25989 
   25990 2007-02-10  Adam Roben  <aroben (a] apple.com>
   25991 
   25992         Rubberstamped by Oliver.
   25993 
   25994         * rendering/RenderThemeSafari.cpp:
   25995         (WebCore::RenderThemeSafari::paintButton): Call controlSizeFromRect
   25996         instead of controlSizeForFont to determine the correct control size.
   25997 
   25998 2007-02-09  Alice Liu  <alice.liu (a] apple.com>
   25999 
   26000         Reviewed by Brady and Adam.
   26001 
   26002         Fixed <rdar://4986194> Typing in content editable body does not automatically scroll to reveal cursor
   26003 
   26004         * platform/win/ScrollViewWin.cpp:
   26005         (WebCore::ScrollView::updateScrollbars):
   26006         The scrollview's scrolloffset wasn't getting set in cases where there were no scrollbars
   26007         You can have a scrolloffset even if you don't have scrollbars
   26008 
   26009 2007-02-09  Darin Adler  <darin (a] apple.com>
   26010 
   26011         Reviewed by Adele.
   26012 
   26013         - Add TextEvent to the DOM (based on the proposed DOM level 3)
   26014           to be used to fix some international input bugs soon.
   26015           At this point, we don't send any text events.
   26016 
   26017         - Remove some obsolete files.
   26018 
   26019         * WebCore.vcproj/WebCore.vcproj: Add new files, remove obsolete files.
   26020 
   26021 2007-02-09  Anders Carlsson  <acarlsson (a] apple.com>
   26022 
   26023         Reviewed by Adam.
   26024 
   26025         * plugins/win/PluginViewWin.cpp:
   26026         (WebCore::PluginViewWin::performRequest):
   26027         Add the stream to the m_streams hash set.
   26028 
   26029 2007-02-08  Adele Peterson  <adele (a] apple.com>
   26030 
   26031         Reviewed by Brady.
   26032 
   26033         Fix for http://bugs.webkit.org/show_bug.cgi?id=12599
   26034         <rdar://problem/4973507> REGRESSION: When replying in Gmail, the caret disappears when you start to type (12599)
   26035 
   26036         This also fixes a bug where when you called window.focus() on a background window, it did not come to the front.
   26037 
   26038         * bridge/win/FrameWin.h: Removed focusWindow() and unfocusWindow() stubs since there are now implementations in the base class.
   26039         * platform/win/TemporaryLinkStubs.cpp:
   26040 
   26041 2007-02-08  Anders Carlsson  <acarlsson (a] apple.com>
   26042 
   26043         Reviewed by Geoff.
   26044 
   26045         <rdar://problem/4955068>
   26046         PluginViewWin leaks memory.
   26047         
   26048         Make streams ref-counted. Remove streams from the hash set once they're done loading.
   26049         
   26050         Don't try to paint if painting is disabled.
   26051         
   26052         * plugins/win/PluginStreamWin.cpp:
   26053         (WebCore::PluginStreamWin::PluginStreamWin):
   26054         (WebCore::PluginStreamWin::cancelAndDestroyStream):
   26055         (WebCore::PluginStreamWin::destroyStream):
   26056         * plugins/win/PluginStreamWin.h:
   26057         * plugins/win/PluginViewWin.cpp:
   26058         (WebCore::PluginViewWin::paint):
   26059         (WebCore::PluginViewWin::stop):
   26060         (WebCore::PluginViewWin::~PluginViewWin):
   26061         (WebCore::PluginViewWin::disconnectStream):
   26062         * plugins/win/PluginViewWin.h:
   26063 
   26064 2007-02-08  Adam Roben  <aroben (a] apple.com>
   26065 
   26066         Reviewed by Adele.
   26067 
   26068         Fix scrollbar painting.
   26069 
   26070         * platform/win/PlatformScrollBarSafari.cpp:
   26071         (WebCore::trackRepaintRect): Added.
   26072         (WebCore::buttonRepaintRect): Added.
   26073         (WebCore::PlatformScrollbar::invalidateTrack): Inavlidate the repaint
   26074         rect, not the rect used for hit testing.
   26075         (WebCore::PlatformScrollbar::invalidatePart): Ditto.
   26076         (WebCore::PlatformScrollbar::paint): Paint the track first, then the
   26077         buttons, then the thumb.
   26078         (WebCore::PlatformScrollbar::paintButton): Paint in the repaintRect,
   26079         not the rect used for hit testing.
   26080         (WebCore::PlatformScrollbar::paintTrack): Ditto.
   26081 
   26082 2007-02-08  Anders Carlsson  <acarlsson (a] apple.com>
   26083 
   26084         Remove unused stub.
   26085         
   26086         * platform/win/TemporaryLinkStubs.cpp:
   26087 
   26088 2007-02-08  Anders Carlsson  <acarlsson (a] apple.com>
   26089 
   26090         Reviewed by Brady.
   26091 
   26092         <rdar://problem/4888871>
   26093         Need to support synchronous XMLHttpRequest.
   26094 
   26095         * platform/network/cf/ResourceHandleCFNet.cpp:
   26096         (WebCore::ResourceHandle::loadResourceSynchronously):
   26097 
   26098 2007-02-07  Adam Roben  <aroben (a] apple.com>
   26099 
   26100         Reviewed by Maciej.
   26101 
   26102         Fix mini search field painting.
   26103 
   26104         * rendering/RenderThemeSafari.cpp:
   26105         (WebCore::RenderThemeSafari::searchFieldSizes): Use the right height.
   26106 
   26107 2007-02-07  Adele Peterson  <adele (a] apple.com>
   26108 
   26109         Reviewed by Adam.
   26110 
   26111         Draw a single down arrow for styled menu lists.
   26112 
   26113         * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintMenuListButton):
   26114         * rendering/RenderThemeWin.cpp: Moved #ifndef USE_SAFARI_THEME to enclose the body of the file.
   26115 
   26116 2007-02-07  Brady Eidson  <beidson (a] apple.com>
   26117 
   26118         RS = Adam
   26119         
   26120         Touch these files to force it to recompile...
   26121 
   26122         * platform/win/PlatformScrollBarSafari.cpp:
   26123         * rendering/RenderThemeWin.cpp:
   26124 
   26125 2007-02-07  Adam Roben  <aroben (a] apple.com>
   26126 
   26127         Rubberstamped by Maciej.
   26128 
   26129         Turn on SafariTheme so we can try it out.
   26130 
   26131         * WebCore.vcproj/WebCore.vcproj:
   26132 
   26133 2007-02-07  Adam Roben  <aroben (a] apple.com>
   26134 
   26135         Reviewed by Adele.
   26136 
   26137         * rendering/RenderThemeSafari.cpp:
   26138         (WebCore::RenderThemeSafari::determineState): Pass focus information down to SafariTheme.
   26139 
   26140 2007-02-06  Adam Roben  <aroben (a] apple.com>
   26141 
   26142         Rubberstamped by Brady.
   26143 
   26144         Updated for log channel rename.
   26145 
   26146         * platform/win/GDIObjectCounter.cpp:
   26147         (WebCore::GDIObjectCounter::~GDIObjectCounter):
   26148 
   26149 2007-02-06  Adele Peterson  <adele (a] apple.com>
   26150 
   26151         Reviewed by Adam.
   26152 
   26153         Added support for radio buttons and checkboxes.
   26154 
   26155         * platform/win/PlatformScrollBarSafari.cpp:
   26156         (WebCore::PlatformScrollbar::paintButton):
   26157         (WebCore::PlatformScrollbar::paintTrack):
   26158         (WebCore::PlatformScrollbar::paintThumb):
   26159         * rendering/RenderThemeSafari.cpp:
   26160         (WebCore::RenderThemeSafari::determineState):
   26161         (WebCore::RenderThemeSafari::platformActiveSelectionForegroundColor):
   26162         (WebCore::RenderThemeSafari::adjustRepaintRect):
   26163         (WebCore::RenderThemeSafari::paintCheckbox):
   26164         (WebCore::RenderThemeSafari::checkboxMargins):
   26165         (WebCore::RenderThemeSafari::paintRadio):
   26166         (WebCore::RenderThemeSafari::radioMargins):
   26167         (WebCore::RenderThemeSafari::adjustMenuListStyle):
   26168         (WebCore::RenderThemeSafari::paintSliderThumb):
   26169         * rendering/RenderThemeSafari.h:
   26170 
   26171 2007-02-05  Adam Roben  <aroben (a] apple.com>
   26172 
   26173         Reviewed by Ada and Oliver.
   26174 
   26175         Add a GDIObjectCounter class that informs us of GDI leaks.
   26176 
   26177         * WebCore.vcproj/WebCore.vcproj: Added new files.
   26178         * platform/win/GDIObjectCounter.cpp: Added.
   26179         (WebCore::GDIObjectCounter::GDIObjectCounter):
   26180         (WebCore::GDIObjectCounter::init):
   26181         (WebCore::GDIObjectCounter::~GDIObjectCounter):
   26182         (WebCore::GDIObjectCounter::currentGDIObjectsInUse):
   26183         * platform/win/GDIObjectCounter.h: Added.
   26184 
   26185 2007-02-05  Adam Roben  <aroben (a] apple.com>
   26186 
   26187         Build fix.
   26188 
   26189         * WebCore.vcproj/WebCore.vcproj: Add new files.
   26190 
   26191 2007-02-04  Oliver Hunt  <oliver (a] apple.com>
   26192 
   26193         Reviewed by Adam.           
   26194 
   26195         Removed unimplemented EventHandler::handleMouseUp, 
   26196         as a platform independent version is available now.
   26197 
   26198         * page/win/EventHandlerWin.cpp:
   26199         (WebCore::EventHandler::eventActivatedView): 
   26200           Now we use this method, it needs to be implemented
   26201 
   26202 2007-02-02  Steve Falkenburg  <sfalken (a] apple.com>
   26203 
   26204         Fix build.
   26205 
   26206         * WebCore.vcproj/WebCore.vcproj:
   26207 
   26208 2007-02-02  Steve Falkenburg  <sfalken (a] apple.com>
   26209 
   26210         * platform/network/cf/FormDataStreamCFNet.cpp:
   26211 
   26212 2007-02-02  Adam Roben  <aroben (a] apple.com>
   26213 
   26214         Turn on Lucida Grande.
   26215 
   26216         * rendering/RenderThemeSafari.cpp:
   26217         (WebCore::RenderThemeSafari::systemFont):
   26218             Use Lucida Grande.
   26219         (WebCore::RenderThemeSafari::setFontFromControlSize):
   26220             Ditto.
   26221         (WebCore::RenderThemeSafari::controlSizeForSystemFont):
   26222             Implemented using font sizes from NSFont.m.
   26223         (WebCore::RenderThemeSafari::adjustRepaintRect):
   26224             Uncommented.
   26225         (WebCore::RenderThemeSafari::minimumMenuListSize):
   26226             Ditto.
   26227 
   26228 2007-02-02  Adam Roben  <aroben (a] apple.com>
   26229 
   26230         Reviewed by Maciej.
   26231 
   26232         Implemented menulist drawing.
   26233 
   26234         * rendering/RenderThemeSafari.cpp:
   26235         (WebCore::controlSizeFromRect):
   26236             Moved to top of file.
   26237         (WebCore::RenderThemeSafari::adjustRepaintRect):
   26238             Uncommented menulist case.
   26239         (WebCore::RenderThemeSafari::popupButtonMargins):
   26240             Added controlSize parameter, made margins match AppKit artwork.
   26241         (WebCore::RenderThemeSafari::paintMenuList):
   26242             Implemented.
   26243         * rendering/RenderThemeSafari.h:
   26244             Updated decalartion.
   26245 
   26246 2007-02-01  Anders Carlsson  <acarlsson (a] apple.com>
   26247 
   26248         Reviewed by Brady.
   26249 
   26250         * platform/network/cf/ResourceHandleCFNet.cpp:
   26251         (WebCore::willSendRequest):
   26252         Make sure to always retain the request we return. (In practice, we were already doing this since
   26253         client can never be null).
   26254         
   26255         (WebCore::didReceiveResponse):
   26256         Remove client null check.
   26257 
   26258 2007-02-01  Steve Falkenburg  <sfalken (a] apple.com>
   26259 
   26260         Production build fix
   26261 
   26262         * WebCore.vcproj/WebCore.vcproj:
   26263 
   26264 2007-01-31  Oliver Hunt  <oliver (a] apple.com>
   26265 
   26266         Reviewed by Adam.
   26267 
   26268         Updating event handler logic to make use of methods migrated from 
   26269         WebKit to WebCore
   26270 
   26271         * page/win/EventHandlerWin.cpp:
   26272         (WebCore::EventHandler::handleDrag):   
   26273           Updating handleDrag to use methods that we've migrated to WebCore
   26274         * platform/win/PlatformMouseEventWin.cpp:
   26275         (WebCore::messageToEventType):                        
   26276         (WebCore::PlatformMouseEvent::PlatformMouseEvent):   
   26277           provide the type of mouse event
   26278           
   26279 
   26280 2007-01-31  Steve Falkenburg  <sfalken (a] apple.com>
   26281 
   26282         Reviewed by Ada.
   26283 
   26284         Fix BString bugs.
   26285 
   26286         * platform/win/BString.cpp:
   26287         (WebCore::BString::BString): Call SysAllocString instead of SysAllocStringLen
   26288         (WebCore::BString::operator=): Add proper null checks
   26289         (WebCore::operator ==): Add proper null checks
   26290 
   26291 2007-01-30  Anders Carlsson  <acarlsson (a] apple.com>
   26292 
   26293         Build fix.
   26294         
   26295         * platform/win/TemporaryLinkStubs.cpp:
   26296         (ResourceHandle::setDefersLoading):
   26297 
   26298 2007-01-30  Steve Falkenburg  <sfalken (a] apple.com>
   26299 
   26300         Production build fix
   26301 
   26302         * WebCore.vcproj/WebCore.vcproj:
   26303 
   26304 2007-01-29  Adam Roben  <aroben (a] apple.com>
   26305 
   26306         Build fix.
   26307 
   26308         * platform/win/TemporaryLinkStubs.cpp: Removed old stub.
   26309 
   26310 2007-01-29  Brady Eidson  <beidson (a] apple.com>
   26311 
   26312         Reviewed by Oliver
   26313 
   26314         All the downloads plumbing for if you have ToT CFNetwork + my changes
   26315         (or after they submit with my changes)
   26316 
   26317         * platform/network/cf/FormDataStreamCFNet.cpp: Reword the #ifdef for CFNetwork ToT for clarity
   26318         * platform/network/cf/ResourceHandleCFNet.cpp:
   26319         (WebCore::didFail): Use a RetainPtr .get()
   26320         (WebCore::ResourceHandleInternal::~ResourceHandleInternal): Only cancel the connection if we hold the last ref
   26321         (WebCore::ResourceHandle::start): Use a RetainPtr - adopt and .get()
   26322         (WebCore::ResourceHandle::cancel): Use a RetainPtr .get()
   26323         (WebCore::ResourceHandle::receivedCredential):Use a RetainPtr .get()
   26324         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential): Use a RetainPtr .get()
   26325         (WebCore::ResourceHandle::connection): Use a RetainPtr .get()
   26326         * platform/network/cf/ResourceRequestCFNet.cpp:
   26327         (WebCore::ResourceRequest::doUpdatePlatformRequest): Prevent a crash if a null
   26328 
   26329 2007-01-29  Brady Eidson  <beidson (a] apple.com>
   26330 
   26331         Reviewed by Geoff
   26332 
   26333         Change LOG_NOTIMPL() to use a LOG() and its logging channel instead of LOG_ERROR()
   26334         so you can actually turn it off.
   26335         
   26336         * platform/win/NotImplemented.h:
   26337 
   26338 2007-01-29  Maciej Stachowiak  <mjs (a] apple.com>
   26339         
   26340         - fix build
   26341 
   26342         * platform/win/TemporaryLinkStubs.cpp:
   26343 
   26344 2007-01-29  Steve Falkenburg  <sfalken (a] apple.com>
   26345 
   26346         Fix build break from RootObject ownership change.
   26347 
   26348         * bridge/win/FrameWin.cpp:
   26349         (WebCore::FrameWin::createRootObject): Added
   26350         (WebCore::FrameWin::cleanupPluginObjects): change destroy to invalidate
   26351         (WebCore::FrameWin::bindingRootObject): change new RootObject to RootObject::create
   26352         * bridge/win/FrameWin.h: 
   26353         * plugins/win/PluginViewWin.cpp:
   26354         (WebCore::PluginViewWin::bindingInstance): change new RootObject to FrameWin::createRootObject.
   26355 
   26356 2007-01-26  Adam Roben  <aroben (a] apple.com>
   26357 
   26358         Reviewed by Oliver.
   26359 
   26360         Fix frequent failed assertions when painting scroll bars.
   26361 
   26362         * platform/win/PlatformScrollBarSafari.cpp:
   26363         (WebCore::PlatformScrollbar::paint): Check that painting is enabled
   26364         before painting.
   26365 
   26366 2007-01-26  Oliver Hunt <oliver (a] apple.com>
   26367 
   26368         Build fix.
   26369 
   26370         * WebCore.vcproj/WebCore.vcproj:
   26371 
   26372 2007-01-26  Beth Dakin  <bdakin (a] apple.com>
   26373 
   26374         Reviewed by Darin.
   26375 
   26376         Due to <rdar://problem/4956565> REGRESSION: After scrolling frame, 
   26377         hovering over link in this frame doesn't change cursor to pointing 
   26378         hand
   26379 
   26380         lastEventIsMouseUp() is a Mac-only issue. This patch makes it Mac-
   26381         only code, so we can remove the temporary link stub for it.
   26382 
   26383         * platform/win/TemporaryLinkStubs.cpp:
   26384 
   26385 2007-01-26  Oliver Hunt <oliver (a] apple.com>
   26386 
   26387         Build fix -- adding SVGInlineTextBox.{cpp,h} to project
   26388 
   26389         * WebCore.vcproj/WebCore.vcproj:
   26390 
   26391 2007-01-25  Oliver Hunt  <oliver (a] apple.com>
   26392 
   26393         Reviewed by Maciej.
   26394 
   26395         Fixed DragDataWin behaviour so that it will provide plain text
   26396         for a file dropped on the window.
   26397 
   26398         * platform/win/DragDataWin.cpp:
   26399         (WebCore::DragData::asPlainText):
   26400 
   26401 2007-01-25  Brady Eidson  <beidson (a] apple.com>
   26402 
   26403         Reviewed by Adam
   26404 
   26405         -Setup for new CFNetwork API for those using their ToT and their next submission
   26406         -Setup for new CoreFoundation API for those using their ToT and their next submission
   26407 
   26408         * platform/network/cf/FormDataStreamCFNet.cpp:
   26409         (WebCore::setHTTPBody): New callback format - will need to define USE_NEW_CFSTREAM_CALLBACKS 
   26410           to switch to the new API
   26411         * platform/network/cf/ResourceHandleCFNet.cpp:
   26412         (WebCore::didFail):  This automagically works :)
   26413 
   26414 2007-01-25  Adele Peterson  <adele (a] apple.com>
   26415 
   26416         Reviewed by Adam. 
   26417 
   26418         Added support for slider.
   26419 
   26420         * rendering/RenderThemeSafari.cpp:
   26421         (WebCore::RenderThemeSafari::RenderThemeSafari):
   26422         (WebCore::RenderThemeSafari::inflateRect):
   26423         (WebCore::RenderThemeSafari::paintSliderTrack):
   26424         (WebCore::RenderThemeSafari::paintSliderThumb):
   26425         * rendering/RenderThemeSafari.h:
   26426 
   26427 2007-01-25  Steve Falkenburg  <sfalken (a] apple.com>
   26428 
   26429         Production build fix
   26430 
   26431         * WebCore.vcproj/WebCore.vcproj:
   26432 
   26433 2007-01-24  Adele Peterson  <adele (a] apple.com>
   26434 
   26435         Reviewed by Brady and Oliver.
   26436 
   26437         Moved keyEvent method from FrameWin to EventHandler and updated
   26438         call sites.  Now this method is shared with the mac.
   26439 
   26440         * bridge/win/FrameWin.cpp:
   26441         * bridge/win/FrameWin.h:
   26442 
   26443 2007-01-24  Steve Falkenburg  <sfalken (a] apple.com>
   26444 
   26445         Reviewed by Lou.
   26446 
   26447         * bridge/win/FrameWin.cpp:
   26448         (WebCore::regExpForLabels): Ported from FrameMac.mm
   26449         (WebCore::FrameWin::searchForLabelsAboveCell): Ported from FrameMac.mm
   26450         (WebCore::FrameWin::searchForLabelsBeforeElement): Ported from FrameMac.mm
   26451         (WebCore::FrameWin::matchLabelsAgainstElement): Ported from FrameMac.mm
   26452         * bridge/win/FrameWin.h:
   26453 
   26454 2007-01-24  Adam Roben  <aroben (a] apple.com>
   26455 
   26456         Reviewed by Adele.
   26457 
   26458         Added PlatformScrollBarSafari for Aqua scroll bars.
   26459 
   26460         * WebCore.vcproj/WebCore.vcproj: Added new file to project.
   26461         * platform/win/PlatformScrollBarSafari.cpp: Added. Copied from PlatformScrollBarWin.cpp.
   26462         (WebCore::PlatformScrollbar::PlatformScrollbar):
   26463         (WebCore::PlatformScrollbar::paint):
   26464         (WebCore::PlatformScrollbar::backButtonRect):
   26465         (WebCore::PlatformScrollbar::forwardButtonRect):
   26466         (WebCore::PlatformScrollbar::trackRect):
   26467         (WebCore::PlatformScrollbar::thumbLength):
   26468         (WebCore::PlatformScrollbar::paintButton):
   26469         (WebCore::PlatformScrollbar::paintTrack):
   26470         (WebCore::PlatformScrollbar::paintThumb):
   26471         (WebCore::PlatformScrollbar::paintGripper):
   26472         (WebCore::PlatformScrollbar::gripperRect):
   26473         (WebCore::PlatformScrollbar::themeChanged):
   26474         * platform/win/PlatformScrollBarWin.cpp: Added #ifndef USE_SAFARI_THEME.
   26475         * rendering/RenderThemeSafari.cpp: Updated for SafariTheme.h changes.
   26476         (WebCore::RenderThemeSafari::RenderThemeSafari):
   26477 
   26478 2007-01-23  Brady Eidson  <beidson (a] apple.com>
   26479 
   26480         Reviewed by Steve
   26481 
   26482         Initial hookup of Download support
   26483 
   26484         * platform/network/cf/ResourceErrorCF.cpp:
   26485         (WebCore::ResourceError::ResourceError):
   26486         (WebCore::ResourceError::operator CFStreamError):
   26487         
   26488         * platform/network/cf/ResourceHandleCFNet.cpp:
   26489         (WebCore::ResourceHandle::loaderRunLoop): Accessor so downloads can run on the same 
   26490           runloop as connections
   26491         (WebCore::ResourceHandle::start):
   26492         (WebCore::ResourceHandle::connection):
   26493 
   26494         * platform/win/BString.cpp:
   26495         (WebCore::BString::BString): Ability to create BString from a CFStringRef
   26496         * platform/win/BString.h:
   26497 
   26498 2007-01-23  Anders Carlsson  <acarlsson (a] apple.com>
   26499 
   26500         Reviewed by Darin.
   26501 
   26502         <rdar://problem/4919754>
   26503         Boomer freezes after attempt to play video.
   26504         
   26505         * plugins/win/PluginStreamWin.cpp:
   26506         Change WebReasonNone to -2, some plugins return -1 to indicate error.
   26507         
   26508         (WebCore::PluginStreamWin::stop):
   26509         Just don't clear the loader, stop loading as well.
   26510         
   26511         (WebCore::PluginStreamWin::startStream):
   26512         Destroy the stream if newstream returns an error.
   26513         
   26514         * plugins/win/PluginViewWin.cpp:
   26515         (WebCore::PluginViewWin::performRequest):
   26516         If the call to toString throws an exception, clear it.
   26517 
   26518 2007-01-23  Steve Falkenburg  <sfalken (a] apple.com>
   26519 
   26520         Fix release build.
   26521 
   26522         * WebCore.vcproj/WebCore.vcproj:
   26523 
   26524 2007-01-23  Adele Peterson  <adele (a] apple.com>
   26525 
   26526         Reviewed by Adam. 
   26527 
   26528         Added call to paintThemeTextArea.
   26529 
   26530         * rendering/RenderThemeSafari.cpp:
   26531         (WebCore::RenderThemeSafari::paintTextArea):
   26532 
   26533 2007-01-23  Anders Carlsson  <acarlsson (a] apple.com>
   26534 
   26535         Build fixes.
   26536         
   26537         * WebCore.vcproj/WebCore.vcproj:
   26538         Copy plugin and JS headers.
   26539         
   26540         * loader/win/FrameLoaderWin.cpp:
   26541         Move functions to WebKitWin.
   26542 
   26543 2007-01-23  Oliver Hunt  <oliver (a] apple.com>
   26544 
   26545         Reviewed by Adam.
   26546 
   26547         * WebCore.vcproj/WebCore.vcproj:
   26548         * page/win/DragControllerWin.cpp: Added.
   26549         (WebCore::DragController::dragOperation):
   26550         (WebCore::DragController::isCopyKeyDown):
   26551           Platform specific implementation
   26552 
   26553         * platform/win/ClipboardWin.cpp:
   26554         (WebCore::ClipboardWin::ClipboardWin):
   26555         (WebCore::ClipboardWin::isForDragging):
   26556         * platform/win/ClipboardWin.h:
   26557           Migrated common Clipboard functionality from ClipboardMac/Win -> Clipboard
   26558 
   26559         * platform/win/DragDataWin.cpp: Added.
   26560         (WebCore::DragData::createClipboard):
   26561         (WebCore::urlWFormat):
   26562         (WebCore::urlFormat):
   26563         (WebCore::filenameWFormat):
   26564         (WebCore::filenameFormat):
   26565         (WebCore::plainTextFormat):
   26566         (WebCore::plainTextWFormat):
   26567         (WebCore::DragData::containsURL):
   26568         (WebCore::extractURL):
   26569         (WebCore::DragData::asURL):
   26570         (WebCore::DragData::containsPlainText):
   26571         (WebCore::DragData::asPlainText):
   26572         (WebCore::texthtmlFormat):
   26573         (WebCore::htmlFormat):
   26574         (WebCore::containsHTML):
   26575         (WebCore::fragmentFromHTML):
   26576         (WebCore::containsFilenames):
   26577         (WebCore::fragmentFromFilenames):
   26578         (WebCore::DragData::containsColor):
   26579         (WebCore::DragData::canSmartReplace):
   26580         (WebCore::DragData::containsCompatibleContent):
   26581         (WebCore::DragData::asFragment):
   26582         (WebCore::DragData::asColor):
   26583           Implementation of DragData accesor methods, and helper functions
   26584 
   26585         * platform/win/EditorWin.cpp:
   26586         (WebCore::Editor::newGeneralClipboard):
   26587           Updated for new ClipboardWin constructor
   26588 
   26589         * platform/win/PasteboardWin.cpp:
   26590         (WebCore::fragmentFromCF_HTML):
   26591         (WebCore::Pasteboard::documentFragment):
   26592           Pulled out CF_HTML parsing to a seperate function so logic 
   26593           can be shared with DragDataWin
   26594 
   26595 2007-01-22  Adam Roben  <aroben (a] apple.com>
   26596 
   26597         Reviewed by Adele.
   26598 
   26599         Implemented search field painting, and did some cleanup.
   26600 
   26601         * rendering/RenderThemeSafari.cpp:
   26602         (WebCore::RenderThemeSafari::RenderThemeSafari): Updated for changes to SafariTheme.
   26603         (WebCore::RenderThemeSafari::paintButton): Ditto.
   26604         (WebCore::RenderThemeSafari::paintTextField): Ditto.
   26605         (WebCore::controlSizeFromRect): New helper function.
   26606         (WebCore::RenderThemeSafari::paintSearchField): Implemented.
   26607         (WebCore::RenderThemeSafari::paintSearchFieldCancelButton): Ditto.
   26608         (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration): Ditto.
   26609         (WebCore::RenderThemeSafari::paintSearchFieldResultsButton): Ditto.
   26610         (WebCore::RenderThemeSafari::setSearchFieldSize): Uncommented setSizeFromFont call.
   26611         (WebCore::RenderThemeSafari::adjustSearchFieldCancelButtonStyle): Ditto.
   26612         (WebCore::RenderThemeSafari::adjustSearchFieldDecorationStyle): Ditto.
   26613         (WebCore::RenderThemeSafari::adjustSearchFieldResultsDecorationStyle): Ditto.
   26614         (WebCore::RenderThemeSafari::adjustSearchFieldResultsButtonStyle): Ditto.
   26615 
   26616 2007-01-22  Anders Carlsson  <acarlsson (a] apple.com>
   26617 
   26618         Reviewed by Adam.
   26619         
   26620         <rdar://problem/4771115>
   26621         Windows Media Player plugin crashes.
   26622 
   26623         * WebCore.vcproj/WebCore.vcproj:
   26624         Formatting changes.
   26625         
   26626         * plugins/win/PluginDatabaseWin.cpp:
   26627         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   26628         Add Windows Media Player path.
   26629         
   26630         * plugins/win/PluginStreamWin.cpp:
   26631         (WebCore::PluginStreamWin::sendJavaScriptStream):
   26632         * plugins/win/PluginStreamWin.h:
   26633         New function which sends a JavaScript result stream and handles any errors that the
   26634         plug-in returns.
   26635         
   26636         * plugins/win/PluginViewWin.cpp:
   26637         (WebCore::PluginViewWin::setFrameGeometry):
   26638         Always call NPP_SetWindow, some plugins (like WMP) relies on it.
   26639         
   26640         (WebCore::PluginViewWin::performRequest):
   26641         If a plug-in requests a javascript: URL that doesn't evaluate to a string, call toString on it.
   26642         The Windows Media Player plugin calls javascript:document.location and expects to get the location back.
   26643 
   26644 2007-01-23  Darin Adler  <darin (a] apple.com>
   26645 
   26646         - internal part of fix for http://bugs.webkit.org/show_bug.cgi?id=12273
   26647           REGRESSION: File input value invisible after removing and re-appending
   26648 
   26649         * WebCore.vcproj/WebCore.vcproj: Added FileChooser.cpp.
   26650 
   26651         * platform/win/FileChooserWin.cpp: Removed many now-unneeded functions.
   26652         (WebCore::FileChooser::FileChooser): Updated for changed parameters and members.
   26653         (WebCore::FileChooser::openFileChooser): Changed to take document parmaeter and
   26654         find the FrameView from that instead of the upload control.
   26655         (WebCore::FileChooser::basenameForWidth): Added ignored Font parameter.
   26656 
   26657 2007-01-22  Anders Carlsson  <acarlsson (a] apple.com>
   26658 
   26659         Reviewed by Adam.
   26660 
   26661         <rdar://problem/4903230>
   26662         Boomer crashes at Flickr website when "View as slideshow" is clicked.
   26663         
   26664         * plugins/win/PluginViewWin.cpp:
   26665         (WebCore::PluginViewWin::bindingInstance):
   26666         Return null if m_plugin is null (which it can be if the plugin failed to load).
   26667 
   26668 2007-01-22  Anders Carlsson  <acarlsson (a] apple.com>
   26669 
   26670         Build fix.
   26671         
   26672         * WebCore.vcproj/WebCore.vcproj:
   26673 
   26674 2007-01-22  Adam Roben  <aroben (a] apple.com>
   26675 
   26676         Moved ifdefs to match Darin's suggestion.
   26677 
   26678         * rendering/RenderThemeSafari.cpp:
   26679         * rendering/RenderThemeSafari.h:
   26680 
   26681 2007-01-22  Adam Roben  <aroben (a] apple.com>
   26682 
   26683         Build fix.
   26684 
   26685         * rendering/RenderThemeSafari.cpp:
   26686         (WebCore::theme):
   26687         * rendering/RenderThemeSafari.h:
   26688 
   26689 2007-01-21  Adam Roben  <aroben (a] apple.com>
   26690 
   26691         Reviewed by Maciej.
   26692 
   26693         Implemented drawing button states and control sizes.
   26694 
   26695         * WebCore.vcproj/WebCore.vcproj:
   26696         * rendering/RenderThemeSafari.cpp:
   26697         (WebCore::RenderThemeSafari::determineState): Added.
   26698         (WebCore::RenderThemeSafari::systemFont): Implemented rest of font sizes.
   26699         (WebCore::RenderThemeSafari::paintButton): Updated for SafariTheme changes.
   26700         (WebCore::RenderThemeSafari::paintTextField): Ditto.
   26701         * rendering/RenderThemeSafari.h: Added declaration.
   26702 
   26703 2007-01-21  Adam Roben  <aroben (a] apple.com>
   26704 
   26705         Reviewed by Maciej.
   26706 
   26707         * rendering/RenderThemeSafari.cpp: Updated declarations of SafariTheme calls.
   26708         (WebCore::systemFontSizeForControlSize): Added.
   26709         (WebCore::RenderThemeSafari::systemFont): Made it work in the small-control case.
   26710         (WebCore::RenderThemeSafari::adjustRepaintRect): Made it work for buttons and checkboxes.
   26711         (WebCore::RenderThemeSafari::setFontFromControlSize): Fixed to work on Windows.
   26712         (WebCore::RenderThemeSafari::checkboxMargins): Added controlSize parameter.
   26713         (WebCore::RenderThemeSafari::buttonMargins): Ditto.
   26714         (WebCore::RenderThemeSafari::paintButton): Fixed FIXME, added save/restore calls.
   26715         (WebCore::RenderThemeSafari::paintTextField): Added save/restore calls.
   26716         * rendering/RenderThemeSafari.h: Updated declarations.
   26717 
   26718 2007-01-21  Adele Peterson  <adele (a] apple.com>
   26719 
   26720         Reviewed by Adam. 
   26721 
   26722         Adding RenderThemeSafari.
   26723  
   26724         * WebCore.vcproj/WebCore.vcproj:
   26725         * rendering/RenderThemeSafari.cpp: Added.
   26726         (WebCore::):
   26727         (WebCore::theme):
   26728         (WebCore::RenderThemeSafari::RenderThemeSafari):
   26729         (WebCore::RenderThemeSafari::~RenderThemeSafari):
   26730         (WebCore::RenderThemeSafari::platformActiveSelectionBackgroundColor):
   26731         (WebCore::RenderThemeSafari::platformInactiveSelectionBackgroundColor):
   26732         (WebCore::RenderThemeSafari::activeListBoxSelectionBackgroundColor):
   26733         (WebCore::RenderThemeSafari::systemFont):
   26734         (WebCore::RenderThemeSafari::isControlStyled):
   26735         (WebCore::RenderThemeSafari::adjustRepaintRect):
   26736         (WebCore::RenderThemeSafari::inflateRect):
   26737         (WebCore::RenderThemeSafari::baselinePosition):
   26738         (WebCore::RenderThemeSafari::controlSupportsTints):
   26739         (WebCore::RenderThemeSafari::controlSizeForFont):
   26740         (WebCore::RenderThemeSafari::sizeForFont):
   26741         (WebCore::RenderThemeSafari::sizeForSystemFont):
   26742         (WebCore::RenderThemeSafari::setSizeFromFont):
   26743         (WebCore::RenderThemeSafari::setFontFromControlSize):
   26744         (WebCore::RenderThemeSafari::controlSizeForSystemFont):
   26745         (WebCore::RenderThemeSafari::paintCheckbox):
   26746         (WebCore::RenderThemeSafari::checkboxSizes):
   26747         (WebCore::RenderThemeSafari::checkboxMargins):
   26748         (WebCore::RenderThemeSafari::setCheckboxSize):
   26749         (WebCore::RenderThemeSafari::paintRadio):
   26750         (WebCore::RenderThemeSafari::radioSizes):
   26751         (WebCore::RenderThemeSafari::radioMargins):
   26752         (WebCore::RenderThemeSafari::setRadioSize):
   26753         (WebCore::RenderThemeSafari::setButtonPaddingFromControlSize):
   26754         (WebCore::RenderThemeSafari::adjustButtonStyle):
   26755         (WebCore::RenderThemeSafari::buttonSizes):
   26756         (WebCore::RenderThemeSafari::buttonMargins):
   26757         (WebCore::RenderThemeSafari::setButtonSize):
   26758         (WebCore::RenderThemeSafari::paintButton):
   26759         (WebCore::RenderThemeSafari::paintTextField):
   26760         (WebCore::RenderThemeSafari::adjustTextFieldStyle):
   26761         (WebCore::RenderThemeSafari::paintTextArea):
   26762         (WebCore::RenderThemeSafari::adjustTextAreaStyle):
   26763         (WebCore::RenderThemeSafari::popupButtonMargins):
   26764         (WebCore::RenderThemeSafari::popupButtonSizes):
   26765         (WebCore::RenderThemeSafari::popupButtonPadding):
   26766         (WebCore::RenderThemeSafari::setPopupPaddingFromControlSize):
   26767         (WebCore::RenderThemeSafari::paintMenuList):
   26768         (WebCore::TopGradientInterpolate):
   26769         (WebCore::BottomGradientInterpolate):
   26770         (WebCore::MainGradientInterpolate):
   26771         (WebCore::TrackGradientInterpolate):
   26772         (WebCore::RenderThemeSafari::paintMenuListButtonGradients):
   26773         (WebCore::RenderThemeSafari::paintMenuListButton):
   26774         (WebCore::RenderThemeSafari::adjustMenuListStyle):
   26775         (WebCore::RenderThemeSafari::adjustMenuListButtonStyle):
   26776         (WebCore::RenderThemeSafari::menuListSizes):
   26777         (WebCore::RenderThemeSafari::minimumMenuListSize):
   26778         (WebCore::RenderThemeSafari::paintSliderTrack):
   26779         (WebCore::RenderThemeSafari::paintSliderThumb):
   26780         (WebCore::RenderThemeSafari::adjustSliderThumbSize):
   26781         (WebCore::RenderThemeSafari::paintSearchField):
   26782         (WebCore::RenderThemeSafari::searchFieldSizes):
   26783         (WebCore::RenderThemeSafari::setSearchFieldSize):
   26784         (WebCore::RenderThemeSafari::adjustSearchFieldStyle):
   26785         (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
   26786         (WebCore::RenderThemeSafari::cancelButtonSizes):
   26787         (WebCore::RenderThemeSafari::adjustSearchFieldCancelButtonStyle):
   26788         (WebCore::RenderThemeSafari::resultsButtonSizes):
   26789         (WebCore::RenderThemeSafari::adjustSearchFieldDecorationStyle):
   26790         (WebCore::RenderThemeSafari::paintSearchFieldDecoration):
   26791         (WebCore::RenderThemeSafari::adjustSearchFieldResultsDecorationStyle):
   26792         (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
   26793         (WebCore::RenderThemeSafari::adjustSearchFieldResultsButtonStyle):
   26794         (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
   26795         * rendering/RenderThemeSafari.h: Added.
   26796         (WebCore::RenderThemeSafari::supportsControlTints):
   26797         * rendering/RenderThemeWin.cpp:
   26798 
   26799 2007-01-21  Adam Roben  <aroben (a] apple.com>
   26800 
   26801         Build fix.
   26802 
   26803         * WebCore.vcproj/WebCore.vcproj: Added JSDocumentCustom.cpp.
   26804 
   26805 2007-01-19  Ada Chan  <adachan (a] apple.com>
   26806 
   26807         Build fix.
   26808 
   26809         * WebCore.vcproj/WebCore.vcproj:
   26810 
   26811 2007-01-19  Anders Carlsson  <acarlsson (a] apple.com>
   26812 
   26813         Build fix.
   26814 
   26815         * WebCore.vcproj/WebCore.vcproj:
   26816         Add SVG files.
   26817 
   26818 2007-01-19  Anders Carlsson  <acarlsson (a] apple.com>
   26819 
   26820         Build fix.
   26821         
   26822         * platform/win/ContextMenuItemWin.cpp:
   26823         (WebCore::ContextMenuItem::enabled):
   26824         Use correct class name.
   26825 
   26826 2007-01-18  Anders Carlsson  <acarlsson (a] apple.com>
   26827 
   26828         Reviewed by Adam.
   26829 
   26830         Remove some unused FrameWin functions.
   26831         
   26832         * bridge/win/FrameWin.cpp:
   26833         (WebCore::FrameWin::~FrameWin):
   26834         * bridge/win/FrameWin.h:
   26835         * plugins/win/PluginViewWin.cpp:
   26836         (WebCore::PluginViewWin::status):
   26837 
   26838 2007-01-18  Adam Roben  <aroben (a] apple.com>
   26839 
   26840         Build fix.
   26841 
   26842         * platform/win/ContextMenuItemWin.cpp:
   26843         (WebCore::ContextMenu::enabled): Implemented.
   26844 
   26845 2007-01-18  Anders Carlsson  <acarlsson (a] apple.com>
   26846 
   26847         Build fix.
   26848         
   26849         * WebCore.vcproj/WebCore.vcproj:
   26850         * platform/win/GlyphMapWin.cpp: Removed.
   26851         * platform/win/GlyphPageTreeNodeWin.cpp: Added.
   26852         (WebCore::GlyphPage::fill):
   26853 
   26854 2007-01-18  Anders Carlsson  <acarlsson (a] apple.com>
   26855 
   26856         Reviewed by Brady.
   26857 
   26858         Fix ownership handling of CFRequestRef. A ResourceRequest holds on to its CFRequestRef 
   26859         and doesn't ref it when returning it. Also, implement willCacheResponse.
   26860         
   26861         * platform/network/cf/ResourceHandleCFNet.cpp:
   26862         (WebCore::willSendRequest):
   26863         (WebCore::willCacheResponse):
   26864         (WebCore::ResourceHandle::start):
   26865         * platform/network/cf/ResourceRequestCFNet.cpp:
   26866         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   26867 
   26868 2007-01-17  Brady Eidson  <beidson (a] apple.com>
   26869 
   26870         Reviewed by Maciej
   26871 
   26872         Final hookup of HTTP Auth plumbing - have the ResourceHandle actually call into
   26873         CFNetwork for HTTP Auth.
   26874         
   26875         Also, deal with svn:eol-style issues on another batch of files that didn't have it set
   26876 
   26877         * platform/network/cf/ResourceHandleCFNet.cpp:
   26878         (WebCore::ResourceHandle::receivedCredential):  Call into CFNetwork
   26879         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):  Ditto
   26880         (WebCore::ResourceHandle::receivedCancellation):  Copy Mac behavior by calling cancel on the handle
   26881 
   26882 2007-01-16  Brady Eidson  <beidson (a] apple.com>
   26883 
   26884         Reviewed by Anders
   26885 
   26886         Futher improvements/bug fixes to BString
   26887 
   26888         * platform/win/BString.cpp:
   26889         (WebCore::BString::BString):
   26890         (WebCore::BString::operator=):
   26891         * platform/win/BString.h:
   26892 
   26893 2007-01-16  Brady Eidson  <beidson (a] apple.com>
   26894 
   26895         Reviewed by Ada, Adam, and Anders oh my!
   26896 
   26897         Add handle ==/!= operators to BString
   26898 
   26899         * platform/win/BString.cpp:
   26900         (WebCore::operator ==):
   26901         (WebCore::operator !=):
   26902         * platform/win/BString.h:
   26903 
   26904 2007-01-16  Beth Dakin  <bdakin (a] apple.com>
   26905 
   26906         Reviewed by Adam.
   26907 
   26908         Fix for <rdar://problem/4874565> Draw context menus using CG
   26909 
   26910         * platform/win/ContextMenuItemWin.cpp:
   26911         (WebCore::ContextMenuItem::type): Re-worked to be more forgiving.
   26912         * platform/win/ContextMenuWin.cpp: No need for show() and hide()
   26913         since WebKit takes care of this now.
   26914 
   26915 2007-01-15  Brady Eidson  <beidson (a] apple.com>
   26916 
   26917         Reviewed by Adam
   26918 
   26919         Hook up AuthenticationChallenge to CF network.  
   26920         Call up through appropriate client methods through to WebFrame (FrameLoaderClient) at
   26921         which point my upcoming implementation for the IWebURL<auth> classes will be used
   26922 
   26923         * WebCore.vcproj/WebCore.vcproj:
   26924         * platform/network/cf/AuthenticationCF.cpp: Added.
   26925         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
   26926         (WebCore::createCF):
   26927         (WebCore::core):
   26928         * platform/network/cf/AuthenticationCF.h: Added.
   26929         * platform/network/cf/ResourceErrorCF.cpp: Added.
   26930         (WebCore::ResourceError::ResourceError):
   26931         (WebCore::ResourceError::operator CFStreamError):
   26932         * platform/network/cf/ResourceHandleCFNet.cpp:
   26933         (WebCore::didReceiveChallenge):
   26934         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   26935         (WebCore::ResourceHandle::receivedCredential):
   26936         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
   26937         (WebCore::ResourceHandle::receivedCancellation):
   26938 
   26939 2007-01-15  Anders Carlsson  <acarlsson (a] apple.com>
   26940 
   26941         Build fix.
   26942         
   26943         * WebCore.vcproj/WebCore.vcproj:
   26944         Add ProgressTracker.[cpp|h]
   26945 
   26946 2007-01-12  Anders Carlsson  <acarlsson (a] apple.com>
   26947 
   26948         Reviewed by Darin.
   26949 
   26950         * loader/win/FrameLoaderWin.cpp:
   26951         (WebCore::FrameLoader::didChangeTitle):
   26952         Copied here from FrameLoaderMac.mm
   26953         
   26954         * platform/network/cf/ResourceHandleCFNet.cpp:
   26955         (WebCore::ResourceHandle::start):
   26956         Removed setting referrer and user-agend and added a check for null page.
   26957         
   26958         (WebCore::ResourceHandle::cancel):
   26959         Don't call didFail.
   26960         
   26961         * platform/win/TemporaryLinkStubs.cpp:
   26962         (FrameWin::getAppletInstanceForWidget):
   26963         Use LOG_NOIMPL here.
   26964 
   26965 2007-01-11  Anders Carlsson  <acarlsson (a] apple.com>
   26966 
   26967         * platform/network/cf/ResourceResponseCFNet.cpp:
   26968         (WebCore::ResourceResponse::cfURLResponse):
   26969         Add getter that I forgot to commit.
   26970         
   26971 2007-01-11  Brady Eidson  <beidson (a] apple.com>
   26972 
   26973         Reviewed by NOBODY.
   26974 
   26975         Make it build after my HTTP Auth OpenSource checkin
   26976 
   26977         * WebCore.vcproj/WebCore.vcproj:
   26978 
   26979 2007-01-11  Anders Carlsson  <acarlsson (a] apple.com>
   26980 
   26981         Build fix.
   26982 
   26983         * WebCore.vcproj/WebCore.vcproj:
   26984         * platform/win/TemporaryLinkStubs.cpp:
   26985         (WebCore::Editor::advanceToNextMisspelling):
   26986 
   26987 2007-01-10  Steve Falkenburg  <sfalken (a] apple.com>
   26988 
   26989         Reviewed by Lou.
   26990 
   26991         <rdar://problem/4818840> Crash occurs after selecting Print Preview from under the File menu if no printer is selected
   26992         
   26993         * bridge/win/FrameWin.cpp:
   26994         (WebCore::FrameWin::computePageRects): removed calls to setupRootForPrinting
   26995         * bridge/win/FrameWin.h: removed setupRootForPrinting
   26996 
   26997 2007-01-10  Anders Carlsson  <acarlsson (a] apple.com>
   26998 
   26999         Yet another build fix.
   27000         
   27001         * platform/win/TemporaryLinkStubs.cpp:
   27002         (DocumentLoader::getResponseModifiedHeader):
   27003 
   27004 2007-01-10  Anders Carlsson  <acarlsson (a] apple.com>
   27005 
   27006         Another build fix.
   27007         
   27008         * bridge/win/FrameWin.h:
   27009         * loader/win/FrameLoaderWin.cpp:
   27010 
   27011 2007-01-10  Anders Carlsson  <acarlsson (a] apple.com>
   27012 
   27013         Build fix.
   27014         
   27015         * platform/win/TemporaryLinkStubs.cpp:
   27016         (ResourceHandle::setDefersLoading):
   27017 
   27018 2007-01-09  Steve Falkenburg  <sfalken (a] apple.com>
   27019 
   27020         Production build fix
   27021 
   27022         * WebCore.vcproj/WebCore.vcproj:
   27023 
   27024 2007-01-09  Anders Carlsson  <acarlsson (a] apple.com>
   27025 
   27026         Build fix.
   27027         
   27028         * platform/win/TextBoundariesWin.cpp:
   27029 
   27030 2007-01-08  Anders Carlsson  <acarlsson (a] apple.com>
   27031 
   27032         Remove FrameLoader functions that have been implemented.
   27033         
   27034         * platform/win/TemporaryLinkStubs.cpp:
   27035 
   27036 2007-01-08  Anders Carlsson  <acarlsson (a] apple.com>
   27037 
   27038         Build fix.
   27039         
   27040         * WebCore.vcproj/WebCore.vcproj:
   27041 
   27042 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   27043 
   27044         Reviewed by Adam.
   27045 
   27046         Update temporary link stubs.
   27047         
   27048         * platform/win/TemporaryLinkStubs.cpp:
   27049         (FrameLoader::referrer):
   27050         (FrameLoader::overrideMediaType):
   27051         (FrameLoader::checkLoadCompleteForThisFrame):
   27052         (DocumentLoader::getResponseRefreshAndModifiedHeaders):
   27053         (MainResourceLoader::create):
   27054         (ResourceLoader::cancel):
   27055         (ResourceLoader::load):
   27056         (ResourceLoader::releaseResources):
   27057         (ResourceLoader::addData):
   27058 
   27059 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   27060 
   27061         Fix build.
   27062         
   27063         * platform/win/TemporaryLinkStubs.cpp:
   27064         (ResourceLoader::cancel):
   27065         (FrameLoader::didChangeTitle):
   27066         (DocumentLoader::unreachableURL):
   27067 
   27068 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   27069 
   27070         Fix the build.
   27071         
   27072         * WebCore.vcproj/WebCore.vcproj:
   27073         * platform/network/cf/ResourceHandleCFNet.cpp:
   27074         (WebCore::ResourceHandle::bufferedData):
   27075         (WebCore::ResourceHandle::supportsBufferedData):
   27076         * platform/win/TemporaryLinkStubs.cpp:
   27077         (WebCore::CheckCacheObjectStatus):
   27078 
   27079 2007-01-04  David Hyatt  <hyatt (a] apple.com>
   27080 
   27081         Always use 1.0 as the synthetic bold offset for now.  Fixes bug 9534.
   27082 
   27083         Reviewed by olliej
   27084 
   27085         * platform/win/FontDataWin.cpp:
   27086         (WebCore::FontData::platformInit):
   27087 
   27088 2007-01-03  Darin Adler  <darin (a] apple.com>
   27089 
   27090         Reviewed by Adele.
   27091 
   27092         - removed some obsolete source files
   27093 
   27094         * WebCore.vcproj/WebCore.vcproj: Removed obsolete files.
   27095 
   27096 2007-01-03  Beth Dakin  <bdakin (a] apple.com>
   27097 
   27098         Reviewed by John.
   27099 
   27100         Add stubs for all of the localized context menu item titles. The 
   27101         stubs just return English Strings until we have a localization 
   27102         solution in WebKit.
   27103 
   27104         * platform/win/TemporaryLinkStubs.cpp:
   27105         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   27106         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   27107         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   27108         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   27109         (WebCore::contextMenuItemTagDownloadImageToDisk):
   27110         (WebCore::contextMenuItemTagCopyImageToClipboard):
   27111         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   27112         (WebCore::contextMenuItemTagCopy):
   27113         (WebCore::contextMenuItemTagGoBack):
   27114         (WebCore::contextMenuItemTagGoForward):
   27115         (WebCore::contextMenuItemTagStop):
   27116         (WebCore::contextMenuItemTagReload):
   27117         (WebCore::contextMenuItemTagCut):
   27118         (WebCore::contextMenuItemTagPaste):
   27119         (WebCore::contextMenuItemTagNoGuessesFound):
   27120         (WebCore::contextMenuItemTagIgnoreSpelling):
   27121         (WebCore::contextMenuItemTagLearnSpelling):
   27122         (WebCore::contextMenuItemTagSearchWeb):
   27123         (WebCore::contextMenuItemTagLookUpInDictionary):
   27124         (WebCore::contextMenuItemTagOpenLink):
   27125         (WebCore::contextMenuItemTagIgnoreGrammar):
   27126         (WebCore::contextMenuItemTagSpellingMenu):
   27127         (WebCore::contextMenuItemTagShowSpellingPanel):
   27128         (WebCore::contextMenuItemTagCheckSpelling):
   27129         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   27130         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   27131         (WebCore::contextMenuItemTagFontMenu):
   27132         (WebCore::contextMenuItemTagBold):
   27133         (WebCore::contextMenuItemTagItalic):
   27134         (WebCore::contextMenuItemTagUnderline):
   27135         (WebCore::contextMenuItemTagOutline):
   27136         (WebCore::contextMenuItemTagWritingDirectionMenu):
   27137         (WebCore::contextMenuItemTagDefaultDirection):
   27138         (WebCore::contextMenuItemTagLeftToRight):
   27139         (WebCore::contextMenuItemTagRightToLeft):
   27140 
   27141 2007-01-03  Anders Carlsson  <acarlsson (a] apple.com>
   27142 
   27143         Reviewed by Geoff.
   27144 
   27145         <rdar://problem/4857027>
   27146         ragnarok online misrenders (due to lack of support for windowless plugins)
   27147 
   27148         * plugins/win/PluginViewWin.cpp:
   27149         (WebCore::PluginViewWin::updateWindow):
   27150         Rename from updateHwnd since this now handles updating the clip rect for windowless plugins.
   27151         
   27152         (WebCore::PluginViewWin::paintMissingPluginIcon):
   27153         New function which paints the missing plugin icon.
   27154         
   27155         (WebCore::PluginViewWin::paint):
   27156         Do windowless painting here.
   27157         
   27158         (WebCore::PluginViewWin::handleKeyboardEvent):
   27159         (WebCore::PluginViewWin::handleMouseEvent):
   27160         (WebCore::PluginViewWin::handleEvent):
   27161         New functions for handling mouse and keyboard events, translating them and handing them to the plugin.
   27162         
   27163         (WebCore::PluginViewWin::setNPWindowRect):
   27164         Set correct window rect for windowless plugins.
   27165         
   27166         (WebCore::PluginViewWin::getValue):
   27167         Add variable for containing HWND.
   27168         
   27169         (WebCore::PluginViewWin::setValue):
   27170         Add windowless and transparent variables.
   27171         
   27172         (WebCore::PluginViewWin::invalidateRect):
   27173         (WebCore::PluginViewWin::invalidateRegion):
   27174         (WebCore::PluginViewWin::forceRedraw):
   27175         Implement these.
   27176         
   27177         (WebCore::PluginViewWin::determineQuirks):
   27178         Set quirks now that we support windowless flash.
   27179         
   27180         (WebCore::PluginViewWin::PluginViewWin):
   27181         Only create the window if the plugin isn't windowless.
   27182         
   27183         * plugins/win/PluginViewWin.h:
   27184         New declarations.
   27185         
   27186         * plugins/win/npapi.cpp:
   27187         (NPN_InvalidateRect):
   27188         (NPN_InvalidateRegion):
   27189         (NPN_ForceRedraw):
   27190         Implement these and forward them to the plugin view.
   27191 
   27192 2007-01-02  Brady Eidson  <beidson (a] apple.com>
   27193 
   27194         Reviewed by Lou
   27195 
   27196         Temporary Link Stub fix for Back/Forward cache landing in OpenSource
   27197 
   27198         * WebCore.vcproj/WebCore.vcproj:
   27199         * platform/win/TemporaryLinkStubs.cpp:
   27200         (DocumentLoader::request):
   27201         (DocumentLoader::originalRequest):
   27202         (DocumentLoader::title):
   27203         (DocumentLoader::unreachableURL):
   27204         (DocumentLoader::urlForHistory):
   27205         (DocumentLoader::setCommitted):
   27206         (DocumentLoader::prepareForLoadStart):
   27207         (DocumentLoader::replaceRequestURLForAnchorScroll):
   27208         (DocumentLoader::isClientRedirect):
   27209         (DocumentLoader::isLoading):
   27210         (DocumentLoader::getResponseRefreshAndModifiedHeaders):
   27211         (FrameLoader::applyUserAgent):
   27212         (FrameLoader::dataURLBaseFromRequest):
   27213         (FrameLoader::load):
   27214         (FrameLoader::opened):
   27215         (ResourceHandle::willLoadFromCache):
   27216         (WebCore::userIdleTime):
   27217         (PageCache::close):
   27218 
   27219 2007-01-02  Anders Carlsson  <acarlsson (a] apple.com>
   27220 
   27221         Build fix.
   27222         
   27223         * WebCore.vcproj/WebCore.vcproj:
   27224 
   27225 2006-12-29  Geoffrey Garen  <ggaren (a] apple.com>
   27226         
   27227         Build fix.
   27228 
   27229         * bridge/win/FrameWin.cpp:
   27230         (WebCore::FrameWin::bindingRootObject):
   27231         * plugins/win/PluginViewWin.cpp:
   27232         (WebCore::PluginViewWin::bindingInstance):
   27233 
   27234 2006-12-27  Oliver Hunt <oliver (a] apple.com>
   27235 
   27236         Build fix
   27237 
   27238         * WebCore.vcproj/WebCore.vcproj:
   27239         * platform/graphics/win/ImageWin.cpp:
   27240         (WebCore::BitmapImage::initPlatformData):
   27241         (WebCore::BitmapImage::invalidatePlatformData):
   27242         (WebCore::Image::loadPlatformResource):
   27243         (WebCore::BitmapImage::getHBITMAP):
   27244 
   27245 2006-12-25  Geoffrey Garen  <ggaren (a] apple.com>
   27246 
   27247         Fixed build. Tsk, tsk, Oliver.
   27248 
   27249         * WebCore.vcproj/WebCore.vcproj:
   27250 
   27251 2006-12-25  Geoffrey Garen  <ggaren (a] apple.com>
   27252 
   27253         Reviewed by Oliver Hunt.
   27254 
   27255         Removed WebCoreSettings, cleaned up WebCore::Settings.
   27256 
   27257         * WebCore.vcproj/WebCore.vcproj: Added Settings.cpp to the project.
   27258 
   27259         * bridge/win/FrameWin.cpp: Updated to use new preferences names.
   27260         (WebCore::FrameWin::bindingRootObject):
   27261         (WebCore::FrameWin::windowScriptNPObject):
   27262 
   27263         * loader/win/FrameLoaderWin.cpp: ditto.
   27264         (WebCore::FrameLoader::partClearedInBegin):
   27265 
   27266         * plugins/win/PluginViewWin.cpp: ditto.
   27267         (WebCore::PluginViewWin::load):
   27268 
   27269 2006-12-22  Ada Chan  <adachan (a] apple.com>
   27270 
   27271         Reviewed by Anders.
   27272 
   27273         Build fix.
   27274 
   27275         * WebCore.vcproj/WebCore.vcproj:
   27276 
   27277 2006-12-22  Anders Carlsson  <acarlsson (a] apple.com>
   27278 
   27279         Build fix.
   27280         
   27281         * WebCore.vcproj/WebCore.vcproj:
   27282 
   27283 2006-12-22  John Sullivan  <sullivan (a] apple.com>
   27284 
   27285         Reviewed by Kevin Decker
   27286 
   27287         Renamed stub method name to match change in WebCore
   27288 
   27289         * platform/win/TemporaryLinkStubs.cpp:
   27290         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   27291         renamed from markMisspellingsInAdjacentWords
   27292 
   27293 2006-12-20  Adam Roben  <aroben (a] apple.com>
   27294 
   27295         Reviewed by Hyatt.
   27296 
   27297         Fix: <rdar://4769797> REGRESSION: No focus rings
   27298 
   27299         * platform/win/GraphicsContextWin.cpp:
   27300         (WebCore::GraphicsContext::drawFocusRing):
   27301         * platform/win/TemporaryLinkStubs.cpp:
   27302         (WebCore::focusRingColor): Changed to match the Aqua focus ring color.
   27303 
   27304 2006-12-20  David Hyatt  <hyatt (a] apple.com>
   27305 
   27306         Remove line width setting in font rendering now that GraphicsContext sets
   27307         it for us.
   27308 
   27309         * platform/win/FontWin.cpp:
   27310         (WebCore::Font::drawGlyphs):
   27311 
   27312 2006-12-20  David Hyatt  <hyatt (a] apple.com>
   27313 
   27314         Add support for stroking and filling of text to CSS.  Boomer side.  Same code as in FontMac.
   27315 
   27316         * platform/win/FontWin.cpp:
   27317         (WebCore::Font::drawGlyphs):
   27318 
   27319 2006-12-19  Steve Falkenburg  <sfalken (a] apple.com>
   27320 
   27321         Remove non-existent header from vcproj
   27322 
   27323         * WebCore.vcproj/WebCore.vcproj:
   27324 
   27325 2006-12-19  Brady Eidson  <beidson (a] apple.com>
   27326 
   27327         Reviewed by Ada
   27328 
   27329         -Changed CFNetwork debugging output to use a logging channel
   27330         -Added the url to each logging message - the debugging output was quite crippled without this
   27331         
   27332         * platform/network/cf/ResourceHandleCFNet.cpp:
   27333         (WebCore::willSendRequest):
   27334         (WebCore::didReceiveResponse):
   27335         (WebCore::didReceiveData):
   27336         (WebCore::didFinishLoading):
   27337         (WebCore::didFail):
   27338         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   27339         (WebCore::ResourceHandle::~ResourceHandle):
   27340         (WebCore::ResourceHandle::start):
   27341 
   27342 2006-12-19  Anders Carlsson  <acarlsson (a] apple.com>
   27343 
   27344         Reviewed by Geoff.
   27345 
   27346         <rdar://problem/4876963>
   27347         Crash launching Boomer after all options deselected in pref->security
   27348         
   27349         * loader/win/FrameLoaderWin.cpp:
   27350         (WebCore::FrameLoader::partClearedInBegin):
   27351         Add check for JavaScript.
   27352 
   27353 2006-12-19  Anders Carlsson  <acarlsson (a] apple.com>
   27354 
   27355         Reviewed by Kevin Decker.
   27356 
   27357         Add (currently disabled) plugin quirks. This is necessary in order to get the Flash plugin
   27358         to request windowless plugins (which it only will do if it think it's running on a Mozilla browser).
   27359         
   27360         * plugins/win/PluginViewWin.cpp:
   27361         (WebCore::PluginViewWin::userAgent):
   27362         (WebCore::PluginViewWin::determineQuirks):
   27363         (WebCore::PluginViewWin::PluginViewWin):
   27364         * plugins/win/PluginViewWin.h:
   27365         (WebCore::):
   27366         * plugins/win/npapi.cpp:
   27367         (NPN_UserAgent):
   27368 
   27369 2006-12-19  Brady Eidson  <beidson (a] apple.com>
   27370 
   27371         Change by Lou, reviewed by Brady
   27372 
   27373         Scrolling caused Desktop flickering as well as other strange
   27374         flickering in the case of a missing plug-in
   27375 
   27376         * plugins/win/PluginViewWin.cpp:
   27377         (WebCore::PluginViewWin::updateHwnd):
   27378 
   27379 2006-12-19  Anders Carlsson  <acarlsson (a] apple.com>
   27380 
   27381         * WebCore.vcproj/WebCore.vcproj:
   27382         Update for SVG changes.
   27383 
   27384 2006-12-18  Ada Chan  <adachan (a] apple.com>
   27385 
   27386         Reviewed by Adam.
   27387 
   27388         Removed scheduleClose() from FrameWin.  The implementation has
   27389         been moved to Frame.cpp.                
   27390 
   27391         * bridge/win/FrameWin.h:
   27392         * platform/win/TemporaryLinkStubs.cpp:
   27393         (FrameWin::mimeTypeForFileName):
   27394 
   27395 2006-12-18  Anders Carlsson  <acarlsson (a] apple.com>
   27396 
   27397         Reviewed by Adam and Oliver.
   27398 
   27399         <rdar://problem/4856014> Target weekly ad doesn't work.
   27400         
   27401         Store the real base URL and use it for requests.
   27402         
   27403         * plugins/win/PluginViewWin.cpp:
   27404         (WebCore::PluginViewWin::getURLNotify):
   27405         (WebCore::PluginViewWin::getURL):
   27406         (WebCore::PluginViewWin::handlePost):
   27407         (WebCore::PluginViewWin::PluginViewWin):
   27408         * plugins/win/PluginViewWin.h:
   27409 
   27410 2006-12-19  Darin Adler  <darin (a] apple.com>
   27411 
   27412         * platform/win/FontWin.cpp: (WebCore::Font::drawGlyphs): Fix build,
   27413         wrong variable name.
   27414 
   27415 2006-12-18  David Hyatt  <hyatt (a] apple.com>
   27416 
   27417         Boomer side of my changes for filling/stroking of text.
   27418 
   27419         Reviewed by olliej
   27420 
   27421         * platform/win/FontWin.cpp:
   27422         (WebCore::Font::drawGlyphs):
   27423 
   27424 2006-12-18  Alice Liu  <alice.liu (a] apple.com>
   27425 
   27426         Reviewed by Adam.
   27427 
   27428         <rdar://problem/4853363> hook up various deletion-related functions in WebView
   27429 
   27430         * WebCore.vcproj/WebCore.vcproj:
   27431         Added file EditorDeleteAction.h
   27432 
   27433 2006-12-18  Kevin McCullough  <KMcCullough (a] apple.com>
   27434 
   27435         Reviewed by Oliver.
   27436 
   27437         - Remove CG header includes in OpenSource files
   27438 
   27439         * config.h:
   27440         * platform/graphics/cg/GraphicsContextPlatformPrivate.h:
   27441 
   27442 2006-12-18  Adam Roben  <aroben (a] apple.com>
   27443 
   27444         Build fixes.
   27445 
   27446         * WebCore.vcproj/WebCore.vcproj: Removed deleted files.
   27447         * platform/win/CursorWin.cpp: Added missing method.
   27448         (WebCore::noneCursor):
   27449 
   27450 2006-12-16  Beth Dakin  <bdakin (a] apple.com>
   27451 
   27452         Reviewed by Adam (and partially Geoff).
   27453 
   27454         Boomer side of making WebCore Context Menus support state and
   27455         enabled/disabled, and re-architecture of ContextMenuItem.
   27456 
   27457         * platform/win/ContextMenuItemWin.cpp: ContextMenuItem class holds
   27458         the platformDescription as the sole member variable. Changes to
   27459         account for this.
   27460         (WebCore::ContextMenuItem::ContextMenuItem): Same.
   27461         (WebCore::ContextMenuItem::releasePlatformDescription): Same.
   27462         (WebCore::ContextMenuItem::type): Same
   27463         (WebCore::ContextMenuItem::platformSubMenu): Same.
   27464         (WebCore::ContextMenuItem::setType): Same.
   27465         (WebCore::ContextMenuItem::setTitle): Same.
   27466         (WebCore::ContextMenuItem::setSubMenu): Same.
   27467         (WebCore::ContextMenuItem::setChecked): Same.
   27468         (WebCore::ContextMenuItem::setEnabled): Same.
   27469         * platform/win/ContextMenuWin.cpp:
   27470         (WebCore::ContextMenu::insertItem): Takes ownership of the item by
   27471         calling releasePlatformDescription()
   27472         (WebCore::ContextMenu::appendItem): Same.
   27473         (WebCore::ContextMenu::itemWithAction): This is the new at(). Since
   27474         we are no longer using notifybypos, we instead need a way to find a
   27475         menu item by its action. (Its ID.)
   27476         (WebCore::ContextMenu::setPlatformDescription): No longer use
   27477         notifybypos.
   27478 
   27479 2006-12-16  Adele Peterson  <adele (a] apple.com>
   27480 
   27481         RS by Adam.
   27482 
   27483         Removed TextField, RenderLineEdit classes.
   27484 
   27485         * WebCore.vcproj/WebCore.vcproj:
   27486         * platform/win/TemporaryLinkStubs.cpp:
   27487 
   27488 2006-12-16  Adele Peterson  <adele (a] apple.com>
   27489 
   27490         Reviewed by Adam.
   27491 
   27492         Added PopupMenu and theme code for:
   27493         <rdar://problem/4463829> Switch to use new search field implementation for <input type="search"> 
   27494 
   27495         * WebCore.vcproj/WebCore.vcproj:
   27496         * platform/graphics/win/IconWin.cpp:
   27497         (WebCore::Icon::Icon):
   27498         * platform/win/PopupMenuWin.cpp:
   27499         (WebCore::PopupMenu::setFocusedIndex):
   27500         (WebCore::PopupWndProc):
   27501         * platform/win/SearchPopupMenuWin.cpp: Added.
   27502         (WebCore::SearchPopupMenu::SearchPopupMenu):
   27503         (WebCore::autosaveKey):
   27504         (WebCore::SearchPopupMenu::saveRecentSearches):
   27505         (WebCore::SearchPopupMenu::loadRecentSearches):
   27506         * rendering/RenderThemeWin.cpp:
   27507         (WebCore::RenderThemeWin::paintSearchField):
   27508         (WebCore::RenderThemeWin::adjustSearchFieldStyle):
   27509         (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
   27510         (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle):
   27511         (WebCore::RenderThemeWin::adjustSearchFieldDecorationStyle):
   27512         (WebCore::RenderThemeWin::paintSearchFieldDecoration):
   27513         (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle):
   27514         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
   27515         (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle):
   27516         (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
   27517         * rendering/RenderThemeWin.h:
   27518 
   27519 2006-12-15  Anders Carlson  <acarlsson (a] apple.com>
   27520 
   27521         * platform/win/TemporaryLinkStubs.cpp:
   27522         Remove DocumentLoader::isStopped because it's now in DocumentLoader.cpp.
   27523         
   27524 2006-12-15  Geoffrey Garen  <ggaren (a] apple.com>
   27525 
   27526         I'm in ur prjct, fxng ur build.
   27527         
   27528         * WebCore.vcproj/WebCore.vcproj:
   27529         * platform/win/TemporaryLinkStubs.cpp:
   27530         (ResourceHandle::loadResourceSynchronously):
   27531 
   27532 2006-12-14  Geoffrey Garen  <ggaren (a] apple.com>
   27533 
   27534         Reviewed by Brady Eidson.
   27535         
   27536         Fixed <rdar://problem/4760682> Crash clicking nav links at left loading 
   27537         www.tivofaq.com
   27538         
   27539         The underlying problem is that we can't resize framesets. I've filed that
   27540         as <rdar://problem/4885227>.
   27541         
   27542         I've fixed the proximate problem: we were interpreting a click as a frameset
   27543         resize, because the subframe event handler was returning false. A Subframe 
   27544         event handler needs to return true to indicate that the subframe has handled 
   27545         the event. This is how the Mac works, despite the plethora of convoluted code 
   27546         suggesting otherwise.
   27547         
   27548         We should really remove these meaningless return values and unify Mac and 
   27549         Windows event handling, but that's beyond the scope of this patch.
   27550 
   27551         * page/win/EventHandlerWin.cpp:
   27552         (WebCore::EventHandler::passMousePressEventToSubframe):
   27553         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   27554         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
   27555         (WebCore::EventHandler::passWheelEventToSubframe):
   27556 
   27557 2006-12-14  Adele Peterson  <adele (a] apple.com>
   27558 
   27559         Reviewed by Adam. 
   27560 
   27561         Update PopupMenu code to use new PopupMenuClient instead of RenderMenuList.
   27562 
   27563         * platform/win/PopupMenuWin.cpp:
   27564         (WebCore::PopupMenu::PopupMenu):
   27565         (WebCore::PopupMenu::show):
   27566         (WebCore::PopupMenu::calculatePositionAndSize):
   27567         (WebCore::PopupMenu::setFocusedIndex):
   27568         (WebCore::PopupMenu::focusedIndex):
   27569         (WebCore::PopupMenu::focusFirst):
   27570         (WebCore::PopupMenu::focusLast):
   27571         (WebCore::PopupMenu::down):
   27572         (WebCore::PopupMenu::up):
   27573         (WebCore::PopupMenu::paint):
   27574         (WebCore::PopupWndProc):
   27575 
   27576 2006-12-14  Steve Falkenburg  <sfalken (a] apple.com>
   27577 
   27578         Build fix.
   27579 
   27580         * platform/win/TemporaryLinkStubs.cpp:
   27581         (SubresourceLoader::didCancel):
   27582 
   27583 2006-12-14  Steve Falkenburg  <sfalken (a] apple.com>
   27584 
   27585         Production build fix. Added JSSVGPODTypeWrapper.h to the vcproj.
   27586 
   27587         * WebCore.vcproj/WebCore.vcproj:
   27588 
   27589 2006-12-14  Adam Roben  <aroben (a] apple.com>
   27590 
   27591         Reviewed by Adele.
   27592 
   27593         Build fix.
   27594 
   27595         * platform/win/TemporaryLinkStubs.cpp:
   27596         (DocumentLoader::URL):
   27597         (ResourceHandle::loadResourceSynchronously):
   27598 
   27599 2006-12-14  Anders Carlsson  <acarlsson (a] apple.com>
   27600 
   27601         Fix the build.
   27602         
   27603         * platform/win/TemporaryLinkStubs.cpp:
   27604         (FrameLoader::loadResourceSynchronously):
   27605         (ResourceHandle::loadResourceSynchronously):
   27606 
   27607 2006-12-13  Anders Carlsson  <acarlsson (a] apple.com>
   27608 
   27609         Fix the build.
   27610         
   27611         * platform/win/TemporaryLinkStubs.cpp:
   27612         (PolicyCheck::call):
   27613         (DocumentLoader::URL):
   27614 
   27615 2006-12-13  Geoffrey Garen  <ggaren (a] apple.com>
   27616 
   27617         Reviewed by Darin Adler, Dave Hyatt.
   27618         
   27619         Fixed <rdar://problem/4840261> Frame::setIsActive not called when frames 
   27620         are focused/unfocused
   27621         
   27622         Minor problems remain with focus in frames, but basic editing / cursor
   27623         focus works.
   27624         
   27625         I moved tracking of the focused frame from the Widget hiearchy to Page's
   27626         FocusController. Not all widgets are frames, so this change cleaned up a 
   27627         dubious static cast. Also, the DOM needs to track frame focus because (1) 
   27628         it needs to respond to focus changes and (2) you can focus an element / 
   27629         frame even before it has a renderer / widget.
   27630 
   27631         * page/win/EventHandlerWin.cpp:
   27632         (WebCore::EventHandler::focusDocumentView): Implemented. This function is
   27633         poorly named, based on the Mac design.
   27634         (WebCore::PluginViewWin::hasFocus): Added for completeness. It's not really
   27635         used on Windows, though.
   27636 
   27637 2006-12-13  Steve Falkenburg  <sfalken (a] apple.com>
   27638 
   27639         Reviewed by Adam.
   27640 
   27641         Add missing ForwardingHeaders to project
   27642 
   27643         * WebCore.vcproj/WebCore.make: Fixed line endings
   27644         * WebCore.vcproj/WebCore.vcproj: Added missing headers
   27645 
   27646 2006-12-12  Steve Falkenburg  <sfalken (a] apple.com>
   27647 
   27648         Reviewed by Adam.
   27649 
   27650         Production build fix
   27651 
   27652         * WebCore.vcproj/build-generated-files.sh:
   27653 
   27654 2006-12-12  Alice Liu  <alice.liu (a] apple.com>
   27655 
   27656         Reviewed by Geoff.
   27657 
   27658         Fixed <rdar://problem/4853199> extra whitespace at beginning and end of pasted fragment into contenteditable region
   27659         
   27660         * WebCore.vcproj/WebCore.vcproj:
   27661         * platform/win/PasteboardWin.cpp:
   27662         (WebCore::Pasteboard::documentFragment):
   27663 
   27664 2006-12-12  Adam Roben  <aroben (a] apple.com>
   27665 
   27666         Reviewed by Anders.
   27667 
   27668         Fixed use of min/max macros (again).
   27669 
   27670         * WebCore.vcproj/WebCore.vcproj: Make sure we include ForwardingHeaders
   27671         before any include directories so that we get the newest versions
   27672         of our headers.
   27673         * config.h: Move the fake #defines of min/max out of #if
   27674         PLATFORM(WIN_OS) since this is useful in general.
   27675         * platform/win/BString.cpp: Include windows.h
   27676         * platform/win/BString.h: Forward-declare BSTR so we don't have to
   27677         include windows.h.
   27678 
   27679 2006-12-12  Geoffrey Garen  <ggaren (a] apple.com>
   27680 
   27681         Reviewed by Adam Roben, Dave Hyatt, Darin Adler.
   27682 
   27683         Added FocusController to project.
   27684 
   27685         * WebCore.vcproj/WebCore.vcproj:
   27686 
   27687 2006-12-12  Anders Carlsson  <acarlsson (a] apple.com>
   27688 
   27689         * loader/win/ResourceLoaderWin.cpp:
   27690         * platform/network/cf/ResourceHandleCFNet.cpp:
   27691         (WebCore::ResourceHandle::start):
   27692         * platform/win/TemporaryLinkStubs.cpp:
   27693         (ResourceHandle::loadsBlocked):
   27694         Update for changes to ResourceHandle.
   27695 
   27696 2006-12-13  Darin Adler  <darin (a] apple.com>
   27697 
   27698         - fix build
   27699 
   27700         * WebCore.vcproj/WebCore.vcproj: Added missing files, removed obsolete files.
   27701 
   27702 2006-12-11  Adam Roben  <aroben (a] apple.com>
   27703 
   27704         Build fix.
   27705 
   27706         * WebCore.vcproj/WebCore.vcproj: Added missing files to project.
   27707 
   27708 2006-12-11  Steve Falkenburg  <sfalken (a] apple.com>
   27709 
   27710         Production build fix.
   27711         Remove platform/UChar.h from our vcproj, since it doesn't exist anymore.
   27712 
   27713         * WebCore.vcproj/WebCore.vcproj:
   27714 
   27715 2006-12-11  Alice Liu  <alice.liu (a] apple.com>
   27716 
   27717         Reviewed by ggaren.
   27718 
   27719         Fixed <rdar://problem/4854901> "Copy Link" and "Copy Image Address" context menu items don't work
   27720         And some cleanup of PlatformMouseEvent(Win)
   27721 
   27722         * page/win/EventHandlerWin.cpp:
   27723         (WebCore::EventHandler::handleDrag):
   27724         Removed unnecessary check for mouse event type
   27725         
   27726         * platform/win/PasteboardWin.cpp:
   27727         
   27728         (WebCore::PasteboardOwnerWndProc):
   27729         (WebCore::createGlobalData):
   27730         Added more overloaded implemtations and renamed from createHandle
   27731         
   27732         (WebCore::markupToCF_HTML):
   27733         Changed to handle less-specific input and renamed from createCF_HTML
   27734         
   27735         (WebCore::urlToMarkup):
   27736         (WebCore::Pasteboard::writeURL):
   27737         Added these. 
   27738         
   27739         (WebCore::replaceNBSP):
   27740         Moved out of Pasteboard class
   27741         
   27742         (WebCore::Pasteboard::clear):
   27743         Renamed from clearTypes.
   27744         
   27745         (WebCore::Pasteboard::writeSelection):
   27746         (WebCore::Pasteboard::canSmartReplace):
   27747         (WebCore::Pasteboard::plainText):
   27748         (WebCore::Pasteboard::documentFragment):
   27749         Trivial cleanup of these.
   27750         
   27751         * platform/win/PlatformMouseEventWin.cpp:
   27752         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   27753         Removed anything having to do with unnecessary m_type
   27754 
   27755 2006-12-11  Darin Adler  <darin (a] apple.com>
   27756 
   27757         Reviewed by Brady.
   27758 
   27759         - http://bugs.webkit.org/show_bug.cgi?id=11794
   27760           fix lifetime problems affecting Frame's ownerElement pointer
   27761 
   27762         * WebCore.vcproj/WebCore.vcproj: Update for added files.
   27763 
   27764         * bridge/win/FrameWin.h:
   27765         * bridge/win/FrameWin.cpp: (WebCore::FrameWin::FrameWin):
   27766         * loader/win/FrameLoaderWin.cpp: (WebCore::FrameLoader::createFrame):
   27767         Changed to use HTMLFrameOwnerElement.
   27768 
   27769         * platform/win/TemporaryLinkStubs.cpp: (FrameLoader::load):
   27770         Changed to use HTMLFormElement.
   27771 
   27772 2006-12-11  Beth Dakin  <bdakin (a] apple.com>
   27773 
   27774         Reviewed by Adam.
   27775 
   27776         Build fix from Nick Zimmerman's last check-in.
   27777 
   27778         * WebCore.vcproj/WebCore.vcproj:
   27779 
   27780 2006-12-09  Adam Roben  <aroben (a] apple.com>
   27781 
   27782         Reviewed by Hyatt.
   27783 
   27784         Use num-cpus to determine the number of jobs make should run
   27785         concurrently.
   27786 
   27787         * WebCore.vcproj/build-generated-files.sh:
   27788 
   27789 2006-12-09  Adam Roben  <aroben (a] apple.com>
   27790 
   27791         Reviewed by Hyatt.
   27792 
   27793         Fix: <rdar://problem/4860184> Can't select context menu items with the
   27794         right mouse button
   27795 
   27796         * platform/win/ContextMenuWin.cpp:
   27797         (WebCore::ContextMenu::show):
   27798 
   27799 2006-12-09  Adam Roben  <aroben (a] apple.com>
   27800 
   27801         Reviewed by Darin.
   27802 
   27803         Build fixes after OpenSource r18098 and r18106.
   27804 
   27805         * WebCore.vcproj/WebCore.vcproj:
   27806             - Changed include paths to reflect the now-flattened JSCore headers.
   27807             - Added missing files to project.
   27808             - Changed post-build step to also copy ForwardingHeaders.
   27809             - Removed unnecessary definition of WTF_PLATFORM_CF from project
   27810               file (it's already defined in config.h).
   27811         * platform/win/TextBoundariesWin.cpp: Fixed up includes and renamed
   27812         function calls.
   27813         (WebCore::findNextWordFromIndex):
   27814         (WebCore::findWordBoundary):
   27815 
   27816 2006-12-08  Adam Roben  <aroben (a] apple.com>
   27817 
   27818         Rubberstamped by Anders.
   27819 
   27820         * platform/win/FontPlatformDataWin.cpp:
   27821         (WebCore::FontPlatformData::FontPlatformData): Fix use of min().
   27822 
   27823 2006-12-08  Adam Roben  <aroben (a] apple.com>
   27824 
   27825         Build fix.
   27826 
   27827         * WebCore.vcproj/WebCore.vcproj:
   27828 
   27829 2006-12-07  Beth Dakin  <bdakin (a] apple.com>
   27830 
   27831         Reviewed by Maciej.
   27832 
   27833         Add a new member variable to ContectMenuItem to hold on to the sub-
   27834         menu. The new member variable is an OwnPtr<ContextMenu>. Not doing 
   27835         this breaks sub-menus on Boomer since the menu items are no longer 
   27836         static.
   27837 
   27838         * platform/win/ContextMenuItemWin.cpp:
   27839         (WebCore::ContextMenuItem::ContextMenuItem):
   27840         (WebCore::ContextMenuItem::platformSubMenu):
   27841         (WebCore::ContextMenuItem::setSubMenu):
   27842 
   27843 2006-12-07  Kevin McCullough  <kmccullough (a] apple.com>
   27844 
   27845         Reviewed by.
   27846 
   27847         Fixed previous comment
   27848 
   27849         * ChangeLog:
   27850 
   27851 2006-12-07  Kevin McCullough  <kmccullough (a] apple.com>
   27852 
   27853         Reviewed by Geof.
   27854 
   27855         - keyDown events must be followed by keyPressed events and before keyUp events.
   27856 
   27857         * bridge/win/FrameWin.cpp:
   27858         (WebCore::FrameWin::keyEvent):
   27859 
   27860 2006-12-07  Beth Dakin  <bdakin (a] apple.com>
   27861 
   27862         Reviewed by Brady.
   27863 
   27864         New link stub for load() function used by 
   27865         ContextMenuItemTagOpenLink action.
   27866 
   27867         * platform/win/TemporaryLinkStubs.cpp:
   27868         (FrameLoader::load):
   27869 
   27870 2006-12-07  Ada Chan  <adachan (a] apple.com>
   27871 
   27872         Reviewed by Steve and Anders.
   27873 
   27874         <rdar://4866288> Crash on boomer quit
   27875         - don't close the themes on termination, since uxtheme should do that anyway.
   27876 
   27877         * rendering/RenderThemeWin.cpp:
   27878         (WebCore::RenderThemeWin::~RenderThemeWin):
   27879 
   27880 2006-12-06  Ada Chan  <adachan (a] apple.com>
   27881 
   27882         Reviewed by Maciej.
   27883 
   27884         Fixed a couple of things while investigating <rdar://4866288> (note this doesn't fix the crash yet):
   27885         - we forgot to initialize m_sliderTheme
   27886         - we did the wrong null check when getting the slider theme.
   27887 
   27888         * rendering/RenderThemeWin.cpp:
   27889         (WebCore::RenderThemeWin::RenderThemeWin):
   27890         (WebCore::RenderThemeWin::sliderTheme):
   27891 
   27892 2006-12-06  Anders Carlsson  <acarlsson (a] apple.com>
   27893 
   27894         Fix the build.
   27895         
   27896         * platform/network/cf/ResourceHandleCFNet.cpp:
   27897         (WebCore::didReceiveData):
   27898         (WebCore::didFail):
   27899         (WebCore::ResourceHandle::start):
   27900         (WebCore::ResourceHandle::cancel):
   27901 
   27902 2006-12-06  Anders Carlsson  <acarlsson (a] apple.com>
   27903 
   27904         Reviewed by Adam.
   27905 
   27906         Modify PluginStreamWin to use a SubresourceLoader instead of a ResourceHandle.
   27907 
   27908         * plugins/win/PluginStreamWin.cpp:
   27909         (WebCore::PluginStreamWin::PluginStreamWin):
   27910         (WebCore::PluginStreamWin::~PluginStreamWin):
   27911         (WebCore::PluginStreamWin::start):
   27912         (WebCore::PluginStreamWin::stop):
   27913         (WebCore::PluginStreamWin::deliverData):
   27914         (WebCore::PluginStreamWin::didReceiveResponse):
   27915         (WebCore::PluginStreamWin::didReceiveData):
   27916         (WebCore::PluginStreamWin::didFail):
   27917         (WebCore::PluginStreamWin::didFinishLoading):
   27918         * plugins/win/PluginStreamWin.h:
   27919         * plugins/win/PluginViewWin.cpp:
   27920         (WebCore::PluginViewWin::performRequest):
   27921         (WebCore::PluginViewWin::load):
   27922 
   27923 2006-12-06  Anders Carlsson  <acarlsson (a] apple.com>
   27924 
   27925         Build fixes.
   27926         
   27927         * WebCore.vcproj/WebCore.vcproj:
   27928         * platform/win/TemporaryLinkStubs.cpp:
   27929         (FrameWin::scheduleClose):
   27930 
   27931 2006-12-05  John Sullivan  <sullivan (a] apple.com>
   27932 
   27933         Try to keep the windows build happy with Frame -> Editor changes...
   27934 
   27935         * bridge/win/FrameWin.h:
   27936         removed declarations of spelling and grammar functions
   27937 
   27938         * platform/win/TemporaryLinkStubs.cpp:
   27939         changed spelling and grammar functions from FrameWin:: to Editor::
   27940         (WebCore::Editor::isSelectionMisspelled):
   27941         (WebCore::Editor::isSelectionUngrammatical):
   27942         (WebCore::Editor::guessesForMisspelledSelection):
   27943         (WebCore::Editor::guessesForUngrammaticalSelection):
   27944         (WebCore::Editor::markMisspellingsInAdjacentWords):
   27945         (WebCore::Editor::advanceToNextMisspelling):
   27946 
   27947 2006-12-05  Anders Carlsson  <acarlsson (a] apple.com>
   27948 
   27949         Reviewed by Maciej.
   27950 
   27951         Don't delete the internal pointer anymore since it's an OwnPtr now.
   27952         
   27953         * platform/network/cf/ResourceHandleCFNet.cpp:
   27954         (WebCore::ResourceHandle::~ResourceHandle):
   27955 
   27956 2006-12-05  Steve Falkenburg  <sfalken (a] apple.com>
   27957 
   27958         Fix the build
   27959 
   27960         * platform/win/TemporaryLinkStubs.cpp:
   27961 
   27962 2006-12-05  Steve Falkenburg  <sfalken (a] apple.com>
   27963 
   27964         Production build fix.
   27965         ...and add ImageAnimationObserver.h into its new location.
   27966 
   27967         * WebCore.vcproj/WebCore.vcproj:
   27968 
   27969 2006-12-05  Steve Falkenburg  <sfalken (a] apple.com>
   27970 
   27971         Production build fix.
   27972         Remove ImageAnimationObserver.h from vcproj.
   27973 
   27974         * WebCore.vcproj/WebCore.vcproj:
   27975 
   27976 2006-12-05  John Sullivan  <sullivan (a] apple.com>
   27977 
   27978         Reviewed by Geoff Garen
   27979 
   27980         Changes to keep up with Frame -> Editor changes in WebCore
   27981 
   27982         * bridge/win/FrameWin.h:
   27983         remove ignoreSpelling() and learnSpelling()
   27984 
   27985         * platform/win/TemporaryLinkStubs.cpp:
   27986         (WebCore::Editor::ignoreSpelling):
   27987         moved from FrameWin to Editor
   27988         (WebCore::Editor::learnSpelling):
   27989         ditto
   27990 
   27991 2006-12-05  Alice Liu  <alice.liu (a] apple.com>
   27992 
   27993         Build fix.
   27994         
   27995         * platform/win/CursorWin.cpp:
   27996         (WebCore::copyCursor):
   27997 
   27998 2006-12-05  Alice Liu  <alice.liu (a] apple.com>
   27999 
   28000         Build fix.
   28001         
   28002         * bridge/win/FrameWin.h:
   28003         added missing declarations for the functions in John's checkin, below. 
   28004 
   28005 2006-12-05  John Sullivan  <sullivan (a] apple.com>
   28006 
   28007         * platform/win/TemporaryLinkStubs.cpp:
   28008         (WebCore::FrameWin::isSelectionUngrammatical):
   28009         (WebCore::FrameWin::guessesForUngrammaticalSelection):
   28010         added stubs to correspond to new Frame functions
   28011 
   28012 2006-12-04  Anders Carlsson  <acarlsson (a] apple.com>
   28013 
   28014         Reviewed by Darin.
   28015 
   28016         * WebCore.vcproj/WebCore.vcproj:
   28017         Add SubresourceClient.h
   28018         
   28019         * platform/network/cf/ResourceHandleCFNet.cpp:
   28020         (WebCore::didReceiveResponse):
   28021         Get rid of the receivedResponse call.
   28022         
   28023         (WebCore::didFinishLoading):
   28024         Get rid of the receivedAllData call, that's handled by the subresource loader now.
   28025 
   28026 2006-12-04  Darin Adler  <darin (a] apple.com>
   28027 
   28028         Reviewed by Adele.
   28029 
   28030         * WebCore.vcproj/WebCore.vcproj: Update for new UIEventWithKeyState.cpp file.
   28031 
   28032 2006-12-04  Kevin McCullough  <KMcCullough (a] apple.com>
   28033 
   28034         Reviewed by Darin.
   28035 
   28036         - removed the guards for the "multiple forms submission" issue, which may not be
   28037           an issue anymore and the guards prevent perfectly legitimate websites from
   28038           working correctly.
   28039 
   28040         * bridge/win/FrameWin.cpp:
   28041         (WebCore::FrameWin::keyEvent):
   28042         * config.h:
   28043         * loader/win/FrameLoaderWin.cpp:
   28044         (WebCore::FrameLoader::submitForm):
   28045 
   28046 2006-12-04  Darin Adler  <darin (a] apple.com>
   28047 
   28048         Reviewed by Alice.
   28049 
   28050         * platform/win/PasteboardWin.cpp: (WebCore::Pasteboard::generalPasteboard):
   28051         Got rid of s_generalPasteboard. Also removed definition of destructor.
   28052 
   28053 2006-12-04  Anders Carlsson  <acarlsson (a] apple.com>
   28054 
   28055         Reviewed by Darin, Geoff.
   28056 
   28057         Get rid of ref() in ResourceHandle::start() and remove all uses of kill().
   28058         
   28059         * platform/network/cf/ResourceHandleCFNet.cpp:
   28060         (WebCore::didFinishLoading):
   28061         (WebCore::didFail):
   28062         (WebCore::ResourceHandle::start):
   28063         * plugins/win/PluginStreamWin.cpp:
   28064         (WebCore::PluginStreamWin::stop):
   28065 
   28066 2006-12-04  Alice Liu  <alice.liu (a] apple.com>
   28067 
   28068         Reviewed by Oliver.
   28069 
   28070         Fixed <rdar://problem/4822632> clicks don't work if you move mouse immediately
   28071         This bug was fixed by implementing EventHandler::handleDrag.  The part of that
   28072         function after the drag hysteresis is exceeded remains unimplemented until 
   28073         drag&drop is implemented. 
   28074 
   28075         * page/win/EventHandlerWin.cpp:
   28076         (WebCore::dragState):
   28077         (WebCore::EventHandler::dragHysteresisExceeded):
   28078         (WebCore::EventHandler::handleDrag):
   28079         (WebCore::EventHandler::handleMouseUp):
   28080         (WebCore::EventHandler::shouldDragAutoNode):
   28081         (WebCore::EventHandler::focusDocumentView):
   28082         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
   28083         * platform/win/PlatformMouseEventWin.cpp:
   28084         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   28085 
   28086 2006-12-01  Beth Dakin  <bdakin (a] apple.com>
   28087 
   28088         Reviewed by Adam.
   28089 
   28090         Support for sub-menus in WebCore context menus. Also some
   28091         adjustments to make ContextMenuItem class a wrapper for the
   28092         platformDescription. (In this case, a wrapper for LPMENUITEMINFO.)
   28093 
   28094         * WebCore.vcproj/WebCore.vcproj:
   28095         * platform/win/ContextMenuItemWin.cpp:
   28096         (WebCore::ContextMenuItem::ContextMenuItem):
   28097         (WebCore::ContextMenuItem::platformDescription):
   28098         (WebCore::ContextMenuItem::action):
   28099         (WebCore::ContextMenuItem::title):
   28100         (WebCore::ContextMenuItem::platformSubMenu):
   28101         (WebCore::ContextMenuItem::setAction):
   28102         (WebCore::ContextMenuItem::setTitle):
   28103         (WebCore::ContextMenuItem::setSubMenu):
   28104         * platform/win/ContextMenuWin.cpp:
   28105         (WebCore::ContextMenu::ContextMenu):
   28106         (WebCore::ContextMenu::insertItem):
   28107 
   28108 2006-11-30  Geoffrey Garen  <ggaren (a] apple.com>
   28109 
   28110         Rubber Stamped by Anders Carlsson.
   28111 
   28112         Global rename of Document::focusNode to Document::focusedNode. 'focusNode'
   28113         suggested a command, and conflicted with a different meaning for 'focusNode'
   28114         in the Mozilla selection API.
   28115 
   28116         * bridge/win/FrameWin.cpp:
   28117         (WebCore::FrameWin::keyEvent):
   28118 
   28119 2006-11-30  Adam Roben  <aroben (a] apple.com>
   28120 
   28121         Lather, rinse, repeat.
   28122 
   28123         * platform/win/GraphicsContextWin.cpp:
   28124         (WebCore::contextForImage):
   28125 
   28126 2006-11-30  Adam Roben  <aroben (a] apple.com>
   28127 
   28128         Build fix.
   28129 
   28130         * platform/graphics/cg/GraphicsContextCG.cpp: Removed. This file was
   28131         un-forked a while ago.
   28132         * platform/win/ContextMenuWin.cpp:
   28133         (WebCore::ContextMenu::platformDescription):
   28134         * platform/win/GraphicsContextWin.cpp:
   28135         (WebCore::contextForImage):
   28136 
   28137 2006-11-30  Adam Roben  <aroben (a] apple.com>
   28138 
   28139         Build fix. 
   28140 
   28141 
   28142         * WebCore.vcproj/WebCore.vcproj:
   28143         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp:
   28144         (WebCore::SVGResourceFilter::prepareFilter):
   28145         (WebCore::SVGResourceFilter::applyFilter):
   28146         (WebCore::SVGResourceFilter::createFilterEffect):
   28147         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp:
   28148         (WebCore::SVGResourceMasker::applyMask):
   28149 
   28150 2006-11-30  Geoffrey Garen  <ggaren (a] apple.com>
   28151 
   28152         Reviewed by Beth Dakin.
   28153         
   28154         Fixed <rdar://problem/4844838> Whole document leak seen 
   28155         running HTML iBench
   28156 
   28157         * loader/win/FrameLoaderWin.cpp: Removed custom implementation
   28158         for detachFromParent, since FrameLoader has a cross-platform
   28159         version now.
   28160 
   28161 2006-11-30  Steve Falkenburg  <sfalken (a] apple.com>
   28162 
   28163         Production build fix.  Add missing header files to vcproj.
   28164 
   28165         * WebCore.vcproj/WebCore.vcproj:
   28166 
   28167 2006-11-29  Anders Carlsson  <acarlsson (a] apple.com>
   28168 
   28169         Build fix.
   28170         
   28171         * platform/win/TemporaryLinkStubs.cpp:
   28172         Remove unused function.
   28173 
   28174 2006-11-29  Anders Carlsson  <acarlsson (a] apple.com>
   28175 
   28176         Reviewed by Oliver.
   28177 
   28178         Fix fast/dom/xmlhttprequest-get layout test failure.
   28179 
   28180         * platform/network/cf/ResourceResponseCFNet.cpp:
   28181         (WebCore::ResourceResponse::doUpdateResourceResponse):
   28182         Initialize the status code to 0 for non-http responses.
   28183 
   28184 2006-11-29  Anders Carlsson  <acarlsson (a] apple.com>
   28185 
   28186         Reviewed by Darin.
   28187 
   28188         Have ResourceResponse hold on to the platform object and do lazy
   28189         initialization of the data members.
   28190         
   28191         * WebCore.vcproj/WebCore.vcproj:
   28192         * platform/network/cf/ResourceHandleCFNet.cpp:
   28193         (WebCore::willSendRequest):
   28194         (WebCore::didReceiveResponse):
   28195         * platform/network/cf/ResourceRequestCFNet.h: Removed.
   28196         * platform/network/cf/ResourceResponseCFNet.cpp:
   28197         (WebCore::ResourceResponse::doUpdateResourceResponse):
   28198         * platform/network/cf/ResourceResponseCFNet.h: Removed.
   28199         * platform/win/MimeTypeRegistryWin.cpp:
   28200 
   28201 2006-11-28  Geoffrey Garen  <ggaren (a] apple.com>
   28202 
   28203         Reviewed by Beth Dakin.
   28204 
   28205         Fixed <rdar://problem/4844855> Should clarify when to create clients in 
   28206         the WebCore client API
   28207         
   28208         All clients must now be supplied as constructor arguments. This clarifies 
   28209         when you need to create clients, and also guarantees that objects can't 
   28210         (for the most part) be in a clientless state.
   28211 
   28212         Layout tests pass. No leaks reported.
   28213         
   28214         * bridge/win/FrameWin.cpp:
   28215         (WebCore::FrameWin::FrameWin):
   28216         * bridge/win/FrameWin.h:
   28217 
   28218 2006-11-28  Adam Roben  <aroben (a] apple.com>
   28219 
   28220         Reviewed by Ada.
   28221 
   28222         Add platform-specific constructor/destructor to ContextMenu so we can
   28223         properly dispose of the HMENU.
   28224 
   28225         * platform/win/ContextMenuWin.cpp:
   28226         (WebCore::ContextMenu::ContextMenu):
   28227         (WebCore::ContextMenu::~ContextMenu):
   28228         (WebCore::ContextMenu::itemCount):
   28229         (WebCore::ContextMenu::insertItem):
   28230         (WebCore::ContextMenu::at):
   28231         (WebCore::ContextMenu::setPlatformDescription):
   28232         (WebCore::ContextMenu::show):
   28233 
   28234 2006-11-28  Steve Falkenburg  <sfalken (a] apple.com>
   28235 
   28236         B&I build fix
   28237 
   28238         * WebCore.vcproj/WebCore.vcproj:
   28239 
   28240 2006-11-28  Anders Carlsson  <acarlsson (a] apple.com>
   28241 
   28242         Fix the build by doing the same changes that were done in the open source WebCore repo.
   28243         
   28244         * WebCore.vcproj/WebCore.vcproj:
   28245         * platform/network/cf/ResourceHandleCFNet.cpp:
   28246         (WebCore::willSendRequest):
   28247         (WebCore::didReceiveResponse):
   28248         (WebCore::ResourceHandle::start):
   28249         * platform/network/cf/ResourceRequestCFNet.cpp:
   28250         (WebCore::ResourceRequest::cfURLRequest):
   28251         (WebCore::addHeadersFromHashMap):
   28252         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   28253         (WebCore::ResourceRequest::doUpdateResourceRequest):
   28254         * platform/network/cf/ResourceRequestCFNet.h:
   28255 
   28256 2006-11-28  Adam Roben  <aroben (a] apple.com>
   28257 
   28258         Reviewed by Ada and Beth.
   28259 
   28260         Fix: <rdar://problem/4601523> Contextual Menus (in web content)
   28261 
   28262         * WebCore.vcproj/WebCore.vcproj: Defined WEBCORE_CONTEXT_MENUS to turn
   28263         on the context menus. Added new ContextMenuItem files.
   28264         * platform/win/ContextMenuItemWin.cpp: Added.
   28265         (WebCore::ContextMenuItem::ContextMenuItem):
   28266         * platform/win/ContextMenuWin.cpp:
   28267         (WebCore::ContextMenu::itemCount): Updated to match ContextMenu.h and
   28268         ContextMenuItem changes.
   28269         (WebCore::ContextMenu::insertItem): Ditto.
   28270         (WebCore::ContextMenu::appendItem): Ditto.
   28271         (WebCore::ContextMenu::at): New method, similar to Vector<T>::at.
   28272         (WebCore::ContextMenu::setPlatformDescription): Use MIM_APPLYTOSUBMENUS
   28273         to make sure all submenus get the MNS_NOTIFYBYPOS style.
   28274         (WebCore::ContextMenu::show): Implemented.
   28275 
   28276         Updates to match OpenSource changes.
   28277 
   28278         * loader/win/FrameLoaderWin.cpp: Added missing #include.
   28279         * page/win/EventHandlerWin.cpp: Return bools to signify whether the
   28280         event was handled.
   28281         (WebCore::EventHandler::passMousePressEventToSubframe):
   28282         (WebCore::EventHandler::passMouseMoveEventToSubframe):
   28283         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
   28284         (WebCore::EventHandler::passWheelEventToSubframe):
   28285         (WebCore::EventHandler::passMousePressEventToScrollbar):
   28286         * platform/win/PlatformScrollBar.h: Ditto.
   28287         * platform/win/PlatformScrollBarWin.cpp: Ditto.
   28288         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   28289         (WebCore::PlatformScrollbar::handleMouseOutEvent):
   28290         (WebCore::PlatformScrollbar::handleMousePressEvent):
   28291         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   28292 
   28293         Small fix inspired by WebView.cpp changes.
   28294 
   28295         * platform/win/PopupMenuWin.cpp:
   28296         (WebCore::PopupMenu::calculatePositionAndSize): Use ::ClientToScreen to
   28297         do coordinate conversion instead of doing it ourselves.
   28298 
   28299 2006-11-28  Anders Carlsson  <acarlsson (a] apple.com>
   28300 
   28301         Reviewed by Adam.
   28302         
   28303         <rdar://problem/4850883>
   28304         Crash loading pdf page (W4 form)
   28305         
   28306         * platform/win/TemporaryLinkStubs.cpp:
   28307         (FrameLoader::redirectDataToPlugin):
   28308         * loader/win/FrameLoaderWin.cpp:
   28309         (WebCore::FrameLoader::redirectDataToPlugin):
   28310         Move the function to FrameLoaderWin.cpp and get rid of STOP_NOIMPL() for now, 
   28311         we do things differently on Windows so this function doesn't need do do anything.
   28312         I've filed 4852889 about redoing this once the loader has been ported.
   28313 
   28314 2006-11-28  Alice Liu  <alice.liu (a] apple.com>
   28315 
   28316         Reviewed by Ada, Adam, and Lou.
   28317 
   28318         * WebCore.vcproj/WebCore.vcproj:
   28319         Added the files listed below
   28320         
   28321         * platform/win/ClipboardWin.h: Added.
   28322         * platform/win/ClipboardWin.cpp: Added.
   28323         Added the minimum stubs for the ClipboardWin class
   28324         (WebCore::ClipboardWin::isForDragging):
   28325         (WebCore::ClipboardWin::dropEffect):
   28326         (WebCore::ClipboardWin::setDropEffect):
   28327         (WebCore::ClipboardWin::effectAllowed):
   28328         (WebCore::ClipboardWin::setEffectAllowed):
   28329         (WebCore::ClipboardWin::clearData):
   28330         (WebCore::ClipboardWin::clearAllData):
   28331         (WebCore::ClipboardWin::getData):
   28332         (WebCore::ClipboardWin::setData):
   28333         (WebCore::ClipboardWin::types):
   28334         (WebCore::ClipboardWin::dragLocation):
   28335         (WebCore::ClipboardWin::dragImage):
   28336         (WebCore::ClipboardWin::setDragImage):
   28337         (WebCore::ClipboardWin::dragImageElement):
   28338         (WebCore::ClipboardWin::setDragImageElement):
   28339         (WebCore::ClipboardWin::setAccessPolicy):
   28340         (WebCore::ClipboardWin::~ClipboardWin):
   28341 
   28342         * platform/win/EditorWin.cpp: Added.
   28343         Added this to make dispatchCPPEvent happy. 
   28344         (WebCore::Editor::newGeneralClipboard):
   28345 
   28346         * platform/win/PasteboardWin.cpp: Added.
   28347         The pasteboard class follows a singleton pattern
   28348         Implemented the following to support CF_HTML, CF_UNICODE, and CF_TEXT
   28349         (WebCore::Pasteboard::generalPasteboard):
   28350         (WebCore::Pasteboard::Pasteboard):
   28351         (WebCore::Pasteboard::~Pasteboard):
   28352         (WebCore::Pasteboard::registerSelectionPasteboardTypes):
   28353         (WebCore::Pasteboard::clearTypes):
   28354         (WebCore::Pasteboard::writeSelection):
   28355         (WebCore::Pasteboard::createHandleFromString):
   28356         (WebCore::Pasteboard::createHandleFromCString):
   28357         (WebCore::Pasteboard::createCF_HTMLFromRange):
   28358         (WebCore::Pasteboard::replaceNBSP):
   28359         (WebCore::Pasteboard::canSmartReplace):
   28360         (WebCore::Pasteboard::plainText):
   28361         (WebCore::Pasteboard::documentFragment):
   28362         (WebCore::PasteboardOwnerWndProc):
   28363 
   28364 2006-11-28  Geoffrey Garen  <ggaren (a] apple.com>
   28365 
   28366         Reviewed by Anders Carlsson.
   28367 
   28368         Fixed <rdar://problem/4844863> REGRESSION: screen flashes when scrolling/
   28369         resizing page with plug-in (@ cnn.com, for example).
   28370 
   28371         LockWindowUpdate was to blame. It turns out that using LockWindowUpdate
   28372         was wrong to begin with. It's really only intended for use in drag-n-drop
   28373         operations, which explains why only one window can be locked at a time.
   28374         (See http://blogs.msdn.com/oldnewthing/archive/2004/06/10/152612.aspx.)
   28375         
   28376         The new solution I've implemented for avoiding plug-in fragments while scrolling
   28377         is simply to clip the plug-in to the zero rect before moving it, and
   28378         then to un-clip it when done.
   28379         
   28380         * plugins/win/PluginViewWin.cpp:
   28381         (WebCore::PluginViewWin::updateHwnd):
   28382 
   28383 2006-11-28  Geoffrey Garen  <ggaren (a] apple.com>
   28384 
   28385         Reviewed by Adam.
   28386 
   28387         Fixed <rdar://problem/4844848> REGRESSION: extra cross-library ref/deref 
   28388         calls cause .5% PLT regression.
   28389         
   28390         Changed ref/deref calls to a single 'xxxDestroyed' call. Moved EditorClient
   28391         from the Frame to the Page, since it's only responsible for
   28392         Webview-level delegate calls.
   28393         
   28394         I don't really love this design, but it fixes the regression and allows
   28395         a single WebKit object to implement multiple client interfaces.
   28396         
   28397         Layout tests pass.
   28398 
   28399 2006-11-27  Beth Dakin  <bdakin (a] apple.com>
   28400 
   28401         Reviewed by Adam.
   28402 
   28403         Stub out functions in order to remove FIXMEs from ContextMenu.cpp
   28404 
   28405         * bridge/win/FrameWin.h: Spell checker functions pushed down from 
   28406         WebKit.
   28407         * platform/win/TemporaryLinkStubs.cpp: Stubs for spelling 
   28408         functions.
   28409         (WebCore::FrameWin::isSelectionMisspelled):
   28410         (WebCore::FrameWin::guessesForMisspelledSelection):
   28411 
   28412 2006-11-27  Oliver Hunt  <oliver (a] apple.com>
   28413 
   28414         Reviewed by Adam.
   28415 
   28416         Fixes a crash in SVG caused by an attempt to 
   28417         perform css overflow clipping by preventing
   28418         the css overflow clip from being set in SVG.
   28419         
   28420         <rdar:/problems/4839568>
   28421 
   28422         * WebCore.vcproj/WebCore.vcproj:
   28423 
   28424 2006-11-27  Anders Carlsson  <acarlsson (a] apple.com>
   28425 
   28426         Remove addMessageToConsole from FrameWin.
   28427         * bridge/win/FrameWin.h:
   28428         * platform/win/TemporaryLinkStubs.cpp:
   28429         
   28430 2006-11-21  Anders Carlsson  <acarlsson (a] apple.com>
   28431 
   28432         Reviewed by Adam.
   28433 
   28434         Various fixes that make file upload possible.
   28435         
   28436         * bridge/win/FrameWin.h:
   28437         * loader/win/FrameLoaderWin.cpp:
   28438         (WebCore::FrameLoader::submitForm):
   28439         Change submitForm to take a FrameLoadRequest.
   28440         
   28441         * platform/network/cf/FormDataStreamCFNet.cpp:
   28442         (WebCore::advanceCurrentStream):
   28443         Pass kCFURLWindowsPathStyle to CFURLCreateWithFileSystemPath.
   28444         
   28445         * platform/network/cf/ResourceHandleCFNet.cpp:
   28446         (WebCore::willSendRequest):
   28447         Call the client method.
   28448 
   28449 2006-11-21  Anders Carlsson  <acarlsson (a] apple.com>
   28450 
   28451         Rubber-stamped by Maciej.
   28452 
   28453         Fork the CF loader.
   28454         
   28455         * WebCore.vcproj/WebCore.vcproj:
   28456         * platform/network/cf/FormDataStreamCFNet.cpp: Added.
   28457         (WebCore::getStreamFormDatas):
   28458         (WebCore::pairRetain):
   28459         (WebCore::pairRelease):
   28460         (WebCore::pairEqual):
   28461         (WebCore::pairHash):
   28462         (WebCore::closeCurrentStream):
   28463         (WebCore::scheduleWithPair):
   28464         (WebCore::advanceCurrentStream):
   28465         (WebCore::openNextStream):
   28466         (WebCore::formCreate):
   28467         (WebCore::formFinalize):
   28468         (WebCore::formOpen):
   28469         (WebCore::formRead):
   28470         (WebCore::formCanRead):
   28471         (WebCore::formClose):
   28472         (WebCore::formSchedule):
   28473         (WebCore::formUnschedule):
   28474         (WebCore::formEventCallback):
   28475         (WebCore::setHTTPBody):
   28476         (WebCore::httpBodyFromStream):
   28477         * platform/network/cf/FormDataStreamCFNet.h: Added.
   28478         * platform/network/cf/ResourceHandleCFNet.cpp: Added.
   28479         (WebCore::willSendRequest):
   28480         (WebCore::didReceiveResponse):
   28481         (WebCore::didReceiveData):
   28482         (WebCore::didFinishLoading):
   28483         (WebCore::didFail):
   28484         (WebCore::willCacheResponse):
   28485         (WebCore::didReceiveChallenge):
   28486         (WebCore::addHeadersFromHashMap):
   28487         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   28488         (WebCore::ResourceHandle::~ResourceHandle):
   28489         (WebCore::arrayFromFormData):
   28490         (WebCore::emptyPerform):
   28491         (WebCore::runLoaderThread):
   28492         (WebCore::ResourceHandle::start):
   28493         (WebCore::ResourceHandle::cancel):
   28494         * platform/network/cf/ResourceRequestCFNet.cpp: Added.
   28495         (WebCore::getResourceRequest):
   28496         (WebCore::addHeadersFromHashMap):
   28497         (WebCore::cfURLRequest):
   28498         * platform/network/cf/ResourceRequestCFNet.h: Added.
   28499         * platform/network/cf/ResourceResponseCFNet.cpp: Added.
   28500         (WebCore::getResourceResponse):
   28501         * platform/network/cf/ResourceResponseCFNet.h: Added.
   28502 
   28503 2006-11-21  Anders Carlsson  <acarlsson (a] apple.com>
   28504 
   28505         Reviewed by Lou, Dave Hyatt.
   28506 
   28507         <rdar://problem/4761639>
   28508         Group label in list box doesn't appear as bold
   28509         
   28510         <rdar://problem/4805795>
   28511         <optgroup> labels should be bold in popup menus
   28512         
   28513         * platform/win/FontPlatformDataWin.cpp:
   28514         (WebCore::enumStylesCallback):
   28515         (WebCore::FontPlatformData::FontPlatformData):
   28516         Enumerate the existing font styles and decide what to synthesize
   28517         depending on what styles are available.
   28518 
   28519 2006-11-21  Anders Carlsson  <acarlsson (a] apple.com>
   28520 
   28521         Fix build.
   28522         
   28523         * WebCore.vcproj/WebCore.vcproj:
   28524 
   28525 2006-11-20  Anders Carlsson  <acarlsson (a] apple.com>
   28526 
   28527         Add the same include paths to the debug build.
   28528         
   28529         * WebCore.vcproj/WebCore.vcproj:
   28530 
   28531 2006-11-20  Anders Carlsson  <acarlsson (a] apple.com>
   28532 
   28533         Fix build.
   28534         
   28535         * WebCore.vcproj/WebCore.vcproj:
   28536         * kcanvas/device/quartz/KCanvasFilterQuartz.cpp: Removed.
   28537         * platform/graphics/svg/cg/SVGResourceFilterCg.cpp: Added.
   28538         (WebCore::SVGResourceFilter::SVGResourceFilter):
   28539         (WebCore::SVGResourceFilter::~SVGResourceFilter):
   28540         (WebCore::SVGResourceFilter::prepareFilter):
   28541         (WebCore::SVGResourceFilter::applyFilter):
   28542 
   28543 2006-11-19  Beth Dakin  <bdakin (a] apple.com>
   28544 
   28545         Reviewed by Adam.
   28546 
   28547         Boomer part of context menu actions.
   28548 
   28549         * bridge/win/FrameWin.h: New spelling functions on Frame.
   28550         * platform/win/ContextMenuWin.cpp:
   28551         (WebCore::ContextMenu::show):
   28552         (WebCore::ContextMenu::hide):
   28553         * platform/win/TemporaryLinkStubs.cpp: New stubs.
   28554         (FrameWin::ignoreSpelling):
   28555         (FrameWin::learnSpelling):
   28556         (FrameLoader::reload):
   28557 
   28558 2006-11-18  Adam Roben  <aroben (a] apple.com>
   28559 
   28560         Build fix from OpenSource r17841.
   28561 
   28562         * platform/win/CursorWin.cpp: New method stubs.
   28563         (WebCore::aliasCursor):
   28564         (WebCore::progressCursor):
   28565         (WebCore::noDropCursor):
   28566 
   28567 2006-11-17  Anders Carlsson  <acarlsson (a] apple.com>
   28568 
   28569         Reviewed by Adam.
   28570 
   28571         Add #defines in config.h to prevent the min and max macros from being used.
   28572 
   28573         * bridge/win/FrameWin.cpp:
   28574         * config.h:
   28575         * platform/win/FontCacheWin.cpp:
   28576         (WebCore::FontCache::createFontPlatformData):
   28577         * platform/win/PopupMenuWin.cpp:
   28578         * plugins/win/PluginStreamWin.cpp:
   28579         * plugins/win/PluginViewWin.cpp:
   28580         (WebCore::PluginViewWin::handlePost):
   28581 
   28582 2006-11-17  Kevin McCullough  <kmccullough (a] apple.com>
   28583 
   28584         Reviewed by Adam.
   28585 
   28586         - Fixes Targetted Form Submission to now work. Radar: 4762693
   28587 
   28588         * ChangeLog:
   28589         * loader/win/FrameLoaderWin.cpp:
   28590         (WebCore::FrameLoader::submitForm):
   28591 
   28592 2006-11-16  Adele Peterson  <adele (a] apple.com>
   28593 
   28594         Reviewed by Adam.
   28595 
   28596         Added theme for sider.
   28597 
   28598         * rendering/RenderThemeWin.cpp:
   28599         (WebCore::RenderThemeWin::sliderTheme):
   28600         (WebCore::RenderThemeWin::close):
   28601         (WebCore::RenderThemeWin::determineSliderThumbState):
   28602         (WebCore::RenderThemeWin::getClassicThemeData):
   28603         (WebCore::RenderThemeWin::getThemeData):
   28604         (WebCore::drawControl):
   28605         (WebCore::RenderThemeWin::paintSliderTrack):
   28606         (WebCore::RenderThemeWin::paintSliderThumb):
   28607         (WebCore::RenderThemeWin::adjustSliderThumbSize):
   28608         * rendering/RenderThemeWin.h:
   28609 
   28610 2006-11-15  Adam Roben  <aroben (a] apple.com>
   28611 
   28612         Reviewed by Anders.
   28613 
   28614         Added new ContextMenuClient and ContextMenuController classes.
   28615 
   28616         * WebCore.vcproj/WebCore.vcproj: Added new files.
   28617         * platform/win/ContextMenuWin.cpp: Added method implementations Beth
   28618         forgot to check in in r11129.
   28619         (WebCore::ContextMenu::itemCount):
   28620         (WebCore::ContextMenu::appendItem):
   28621 
   28622 2006-11-15  Geoffrey Garen  <ggaren (a] apple.com>
   28623 
   28624         Reviewed by Anders Carlsson.
   28625         
   28626         Fixed flash of plug-in content outside its containing iframe while 
   28627         scrolling the iframe.
   28628         
   28629         The problem was that the plug-in would draw between our call to MoveWindow
   28630         and our call to SetWindowRgn. The solution here is to lock all updates in 
   28631         the plug-in's HWND until we've called both MoveWindow and SetWindowRgn.
   28632         
   28633         Tested with Quicktime and Flash.
   28634         
   28635         * plugins/win/PluginViewWin.cpp:
   28636         (WebCore::PluginViewWin::updateHwnd):
   28637         (WebCore::PluginViewWin::setFrameGeometry):
   28638         (WebCore::PluginViewWin::geometryChanged):
   28639         * plugins/win/PluginViewWin.h: Removed bogus invalidate parameter to updateHwnd.
   28640 
   28641 2006-11-15  Adele Peterson  <adele (a] apple.com>
   28642 
   28643         Reviewed by Adam.
   28644 
   28645         Adding RenderSlider class, and removing DeprecatedSlider and Slider classes.
   28646 
   28647         * WebCore.vcproj/WebCore.vcproj:
   28648         * platform/win/TemporaryLinkStubs.cpp:
   28649 
   28650 2006-11-15  Beth Dakin  <bdakin (a] apple.com>
   28651         &   Adam Roben  <aroben (a] apple.com>
   28652 
   28653         Reviewed by Adam and Beth.
   28654 
   28655         Internal side of r17796.
   28656 
   28657         * WebCore.vcproj/WebCore.vcproj:
   28658         * platform/win/ContextMenuWin.cpp: Added.
   28659         (WebCore::ContextMenu::insertItem):
   28660         (WebCore::ContextMenu::setPlatformMenuDescription):
   28661 
   28662 2006-11-15  Anders Carlsson  <acarlsson (a] apple.com>
   28663 
   28664         Reviewed by Darin.
   28665     
   28666         Remove some (now) obsolete methods.
   28667         
   28668         * bridge/win/FrameWin.h:
   28669         * platform/win/TemporaryLinkStubs.cpp:
   28670         (FrameWin::unfocusWindow):
   28671         (FrameWin::getAppletInstanceForWidget):
   28672         (FrameWin::issuePasteCommand):
   28673         (FrameWin::respondToChangedSelection):
   28674 
   28675 2006-11-15  Steve Falkenburg  <sfalken (a] apple.com>
   28676 
   28677         Remove header from vcproj that no longer exists
   28678 
   28679         * WebCore.vcproj/WebCore.vcproj:
   28680 
   28681 2006-11-15  Steve Falkenburg  <sfalken (a] apple.com>
   28682 
   28683         Fix the B&I build
   28684 
   28685         * WebCore.vcproj/WebCore.vcproj:
   28686 
   28687 2006-11-14  Darin Adler  <darin (a] apple.com>
   28688 
   28689         Reviewed by Anders.
   28690 
   28691         - update for creation of EventHandler
   28692 
   28693         * WebCore.vcproj/WebCore.vcproj: Added EventHandler.cpp/h/Win.cpp.
   28694 
   28695         * bridge/win/FrameWin.h: Moved virtual functions lastEventIsMouseUp,
   28696         tabsToLinks, and tabsToAllControls to EventHandler.
   28697         * bridge/win/FrameWin.cpp: Ditto.
   28698 
   28699         * bridge/win/FrameViewWin.cpp: Moved passMousePressEventToSubframe and similar
   28700         functions to EventHandler.
   28701 
   28702         * page/win/EventHandlerWin.cpp: Added. Code from FrameViewWin and FrameWin.
   28703 
   28704         * platform/win/PlatformScrollBarWin.cpp:
   28705         (WebCore::PlatformScrollbar::handleMouseReleaseEvent): Call the setMousePressed
   28706         function in its new home in EventHandler.
   28707 
   28708         * platform/win/TemporaryLinkStubs.cpp: Moved lastEventIsMouseUp stub to EventHandler.
   28709 
   28710 2006-11-13  Brady Eidson  <beidson (a] apple.com>
   28711 
   28712         Rubberstamped by Maciej
   28713 
   28714         Windows half of 17755 - Make FormData shared
   28715 
   28716         * bridge/win/FrameWin.h:
   28717         * loader/win/FrameLoaderWin.cpp:
   28718         (WebCore::FrameLoader::submitForm):
   28719         * plugins/win/PluginViewWin.cpp:
   28720         (WebCore::PluginViewWin::handlePost):
   28721 
   28722 2006-11-13  Anders Carlsson  <acarlsson (a] apple.com>
   28723 
   28724         Reviewed by Adam.
   28725 
   28726         * platform/win/PopupMenuWin.cpp:
   28727         (WebCore::PopupWndProc):
   28728         Make sure to call valueChanged after hiding the popup so that change events will 
   28729         be delivered correctly.
   28730 
   28731 2006-11-13  Steve Falkenburg  <sfalken (a] apple.com>
   28732 
   28733         Reviewed by Anders, Lou.
   28734 
   28735         Fix merge script
   28736 
   28737         * WebCore.vcproj/merge-opensource.sh: Don't copy cairo, pixman
   28738 
   28739 2006-11-12  Geoffrey Garen  <ggaren (a] apple.com>
   28740 
   28741         Reviewed by Beth Dakin.
   28742         
   28743         Added project-wide setting to disable Microsoft's made-up deprecation 
   28744         warnings related to std:: functions. (Doesn't have any affect yet,
   28745         since we currently disable all deprecation warnings.)
   28746 
   28747         * WebCore.vcproj/WebCore.vcproj:
   28748 
   28749 2006-11-11  Anders Carlsson  <acarlsson (a] apple.com>
   28750 
   28751         Reviewed by Oliver.
   28752 
   28753         Rename keyPress to keyEvent, it's used for both key presses
   28754         and releases.
   28755         
   28756         * bridge/win/FrameWin.cpp:
   28757         (WebCore::FrameWin::keyEvent):
   28758         * bridge/win/FrameWin.h:
   28759 
   28760 2006-11-11  Adam Roben  <aroben (a] apple.com>
   28761 
   28762         Reviewed by Geoff.
   28763 
   28764         Move graphics-related files to platform/graphics to stay in sync with
   28765         changes from OpenSource r17727.
   28766 
   28767         Also, as discussed with Darin and Steve, we now copy all our headers to
   28768         a flat include/WebCore directory instead of copying the directory
   28769         structure of WebCore. This mirrors how Mac builds.
   28770 
   28771         * WebCore.vcproj/WebCore.vcproj:
   28772         * platform/cg/ColorCG.cpp: Removed.
   28773         * platform/cg/GraphicsContextCG.cpp: Removed.
   28774         * platform/cg/GraphicsContextPlatformPrivate.h: Removed.
   28775         * platform/win/IconWin.cpp: Removed.
   28776         * platform/win/ImageWin.cpp: Removed.
   28777 
   28778 2006-11-11  Darin Adler  <darin (a] apple.com>
   28779 
   28780         - blind attempt to fix the build
   28781 
   28782         * platform/win/CursorWin.cpp:
   28783         (WebCore::verticalTextCursor): Added. Just returns the pointer cursor.
   28784         (WebCore::cellCursor): Ditto.
   28785         (WebCore::contextMenuCursor): Ditto.
   28786 
   28787 2006-11-10  Steve Falkenburg  <sfalken (a] apple.com>
   28788 
   28789         Build fix for opensource/internal merge script.
   28790 
   28791         * WebCore.vcproj/WebCore.vcproj:
   28792 
   28793 2006-11-10  Anders Carlsson  <acarlsson (a] apple.com>
   28794 
   28795         Reviewed by Oliver.
   28796 
   28797         Implement findNextWordFromIndex using ICU.
   28798 
   28799         * platform/win/TemporaryLinkStubs.cpp:
   28800         (WebCore::findSentenceBoundary):
   28801         * platform/win/TextBoundariesWin.cpp:
   28802         (WebCore::findNextWordFromIndex):
   28803 
   28804 2006-11-09  Oliver Hunt  <oliver (a] apple.com>
   28805 
   28806         Reviewed by Brady.
   28807 
   28808         Added Windows side of MIME Type registry, and updated 
   28809         objectContentType and ImageWin to make use of it
   28810         
   28811         This fixes <rdar://problem/4791483> 
   28812 
   28813         * WebCore.vcproj/WebCore.vcproj:
   28814         * loader/win/FrameLoaderWin.cpp:
   28815         (WebCore::FrameLoader::objectContentType):
   28816         * platform/win/ImageWin.cpp:
   28817         * platform/win/MimeTypeRegistryWin.cpp: Added.
   28818         (WebCore::getMIMETypeForUTI):
   28819         (WebCore::mimeTypeForExtension):
   28820         (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
   28821 
   28822 2006-11-09  Lou Amadio  <lamadio (a] apple.com>
   28823 
   28824         Reviewed by mjs
   28825         Corrected positioning of text for find overlay on subframes
   28826 
   28827         * bridge/win/FrameWin.cpp:
   28828         (WebCore::FrameWin::imageFromRect):
   28829 
   28830 2006-11-08  Lou Amadio  <lamadio (a] apple.com>
   28831 
   28832         Reviewed by ggaren
   28833 
   28834         Moved CookieJar to OpenSourceWin
   28835         Ported CookieJar to CFNetwork
   28836         Corrected an uninitialized variable which crashed on Vista in the Wininet code
   28837 
   28838         * WebCore.vcproj/WebCore.vcproj:
   28839         * platform/network/win/CookieJarWin.cpp:
   28840         (WebCore::setCookies):
   28841         (WebCore::cookies):
   28842 
   28843 2006-11-08  Maciej Stachowiak  <mjs (a] apple.com>
   28844 
   28845         Reviewed by Geoff.
   28846 
   28847         - added ResourceError class and didFailWithError client method
   28848         
   28849         * plugins/win/PluginStreamWin.cpp:
   28850         (WebCore::PluginStreamWin::didFailLoadingWithError):
   28851         (WebCore::PluginStreamWin::didFinishLoading):
   28852         * plugins/win/PluginStreamWin.h:
   28853 
   28854 2006-11-08  Geoffrey Garen  <ggaren (a] apple.com>
   28855 
   28856         Reviewed by Anders Carlsson.
   28857 
   28858         Updated Windows to use the new platform abstraction for Screen.
   28859         
   28860         * WebCore.vcproj/WebCore.vcproj:
   28861         * platform/win/PopupMenuWin.cpp:
   28862         (WebCore::PopupMenu::calculatePositionAndSize):
   28863         * platform/win/ScreenWin.cpp:
   28864         (WebCore::monitorInfoForWidget):
   28865         (WebCore::deviceInfoForWidget):
   28866         (WebCore::screenDepth):
   28867         (WebCore::screenDepthPerComponent):
   28868         (WebCore::screenIsMonochrome):
   28869         (WebCore::screenRect):
   28870         (WebCore::screenAvailableRect):
   28871 
   28872 2006-11-09  Darin Adler  <darin (a] apple.com>
   28873 
   28874         - fix the build
   28875 
   28876         * bridge/win/FrameWin.h: Add a forward declaration of FormData.
   28877 
   28878         * bridge/win/FrameWin.cpp: (WebCore::FrameWin::keyPress):
   28879         Call resetMultipleFormSubmissionProtection instead of prepareForUserAction.
   28880 
   28881         * platform/win/TemporaryLinkStubs.cpp: Remove the parameter from the
   28882         TextField constructor.
   28883 
   28884 2006-11-08  Steve Falkenburg  <sfalken (a] apple.com>
   28885 
   28886         Rubber stamped by Adam.
   28887 
   28888         Windows buildbot fix.
   28889         Remove /d from xcopy commands that merge opensource/internal components.
   28890         Sync debug and release post-build event.
   28891 
   28892         * WebCore.vcproj/WebCore.vcproj:
   28893 
   28894 2006-11-07  Ada Chan  <adachan (a] apple.com>
   28895 
   28896         Reviewed by Steve.
   28897 
   28898         Make the Slider implementation call LOG_NOIMPL() instead of STOP_NOIMPL() so the RSS feed page can load.
   28899 
   28900         * platform/win/TemporaryLinkStubs.cpp:
   28901         (Slider::Slider):
   28902         (Slider::sizeHint):
   28903         (Slider::setValue):
   28904         (Slider::setMaxValue):
   28905         (Slider::setMinValue):
   28906         (Slider::~Slider):
   28907         (Slider::setFont):
   28908         (Slider::value):
   28909 
   28910 2006-11-07  Lou Amadio  <lamadio (a] apple.com>
   28911 
   28912         Reviewed by sfalken, adam
   28913 
   28914          Implemented Find banner, overlay, bouncy.
   28915          plummed some find, search and marking in WebCore & WebKit
   28916          Added SDC - a DC wrapper with knowledge of CG
   28917          Added button element
   28918          Ported AppKit's oval button drawing code
   28919          Abstracted the high performance animations
   28920 
   28921         * bridge/win/FrameWin.cpp:
   28922         (WebCore::FrameWin::imageFromRect):
   28923         (WebCore::FrameWin::imageFromSelection):
   28924         * bridge/win/FrameWin.h:
   28925         * platform/win/GraphicsContextWin.cpp:
   28926         (WebCore::GraphicsContext::setCompositeOperation):
   28927         * platform/win/TemporaryLinkStubs.cpp:
   28928         (Frame::setNeedsReapplyStyles):
   28929 
   28930 2006-11-08  Anders Carlsson  <acarlsson (a] apple.com>
   28931 
   28932         Build fixes.
   28933         
   28934         * WebCore.vcproj/WebCore.vcproj:
   28935         * platform/win/TemporaryLinkStubs.cpp:
   28936 
   28937 2006-11-08  Anders Carlsson  <acarlsson (a] apple.com>
   28938 
   28939         * loader/win/FrameLoaderWin.cpp:
   28940         (WebCore::FrameLoader::partClearedInBegin):
   28941         Use m_frame instead of this, include the correct files.
   28942         
   28943 2006-11-08  Anders Carlsson  <acarlsson (a] apple.com>
   28944 
   28945         (I'm not doing this to get commit 11000)
   28946         
   28947         * loader/win/FrameLoaderWin.cpp:
   28948         (WebCore::FrameLoader::partClearedInBegin):
   28949         It's m_frame, not frame. 
   28950         
   28951 2006-11-08  Anders Carlsson  <acarlsson (a] apple.com>
   28952 
   28953         It's FrameLoader, not FrameWin.
   28954         
   28955         * loader/win/FrameLoaderWin.cpp:
   28956         (WebCore::FrameLoader::partClearedInBegin):
   28957 
   28958 2006-11-08  Anders Carlsson  <acarlsson (a] apple.com>
   28959 
   28960         A blind attempt at fixing the build.
   28961         
   28962         * bridge/win/FrameWin.cpp:
   28963         * loader/win/FrameLoaderWin.cpp:
   28964         (WebCore::FrameWin::partClearedInBegin):
   28965         * platform/win/TemporaryLinkStubs.cpp:
   28966         (FrameLoader::restoreDocumentState):
   28967 
   28968 2006-11-07  Geoffrey Garen  <ggaren (a] apple.com>
   28969 
   28970         Reviewed by Anders.
   28971         
   28972         Removed ScreenClient. It was highly unpopular, risking my midterm re-election.
   28973         
   28974         None of Screen's responsibilities require up-calls to WebKit or delegates, 
   28975         so WebCore can handle it all.
   28976         
   28977         Moved Screen back from page/ to platform/ because it's a platform
   28978         abstraction again.
   28979         
   28980         Fixed bug where Screen would query the default screen instead of the screen
   28981         on which the active window was located. (The code is written in Klingon,
   28982         but that's cool.)
   28983         
   28984         Implemented some missing screen functionality on Win.
   28985         
   28986         I can't fully verify this code because I can't load files without crashing
   28987         in CFNetwork, but I exercised most of it with javascript: URLs and the
   28988         debugger reported reasonable values.
   28989 
   28990         * WebCore.vcproj/WebCore.vcproj:
   28991         * platform/win/ScreenWin.cpp: Added. Merged over from opensource tree.
   28992         (WebCore::getWindow):
   28993         (WebCore::getMonitorInfo):
   28994         (WebCore::getDeviceInfo):
   28995         (WebCore::Screen::depth):
   28996         (WebCore::Screen::depthPerComponent):
   28997         (WebCore::Screen::isMonochrome):
   28998         (WebCore::Screen::rect):
   28999         (WebCore::Screen::usableRect):
   29000 
   29001 2006-11-07  Darin Adler  <darin (a] apple.com>
   29002 
   29003         Reviewed by Geoff.
   29004 
   29005         - moved loader code from Frame/FrameMac to FrameLoader
   29006 
   29007         * WebCore.vcproj/WebCore.vcproj:
   29008         * bridge/win/FrameWin.cpp:
   29009         (WebCore::FrameWin::FrameWin):
   29010         (WebCore::FrameWin::~FrameWin):
   29011         * bridge/win/FrameWin.h:
   29012         * loader/win/FrameLoaderWin.cpp: Added.
   29013         (WebCore::FrameLoader::submitForm):
   29014         (WebCore::FrameLoader::urlSelected):
   29015         (WebCore::FrameLoader::originalRequestURL):
   29016         (WebCore::FrameLoader::didFirstLayout):
   29017         (WebCore::FrameLoader::objectContentType):
   29018         (WebCore::FrameLoader::createPlugin):
   29019         (WebCore::FrameLoader::createFrame):
   29020         (WebCore::FrameLoader::detachFromParent):
   29021         (WebCore::FrameLoader::createJavaAppletWidget):
   29022         (WebCore::FrameLoader::setTitle):
   29023         * platform/win/TemporaryLinkStubs.cpp:
   29024         (FrameWin::markMisspellings):
   29025         (FrameWin::respondToChangedSelection):
   29026         (FrameWin::clearUndoRedoOperations):
   29027         (IconLoader::notifyIconChanged):
   29028         (PolicyCheck::PolicyCheck):
   29029         (PolicyCheck::clear):
   29030         (PolicyCheck::call):
   29031         (PolicyCheck::clearRequest):
   29032         (FrameLoader::saveDocumentState):
   29033         (FrameLoader::restoreDocumentState):
   29034         (FrameLoader::partClearedInBegin):
   29035         (FrameLoader::goBackOrForward):
   29036         (FrameLoader::historyURL):
   29037         (FrameLoader::canGoBackOrForward):
   29038         (FrameLoader::getHistoryLength):
   29039         (DocumentLoader::setupForReplaceByMIMEType):
   29040         (ResourceLoader::cancel):
   29041         (DocumentLoader::stopLoading):
   29042         (DocumentLoader::setLoading):
   29043         (DocumentLoader::updateLoading):
   29044         (DocumentLoader::setFrame):
   29045         (DocumentLoader::stopRecordingResponses):
   29046         (DocumentLoader::isStopping):
   29047         (DocumentLoader::setPrimaryLoadComplete):
   29048         (DocumentLoader::finishedLoading):
   29049         (DocumentLoader::URL):
   29050         (DocumentLoader::isLoadingInAPISense):
   29051         (DocumentLoader::frameLoader):
   29052         (FrameLoader::overrideMediaType):
   29053         (FrameLoader::redirectDataToPlugin):
   29054         (FrameLoader::checkLoadCompleteForThisFrame):
   29055         (FrameLoader::loadEmptyDocumentSynchronously):
   29056         (FrameLoader::startLoading):
   29057         (FrameLoader::referrer):
   29058         * plugins/win/PluginViewWin.cpp:
   29059         (WebCore::PluginViewWin::performRequest):
   29060         (WebCore::PluginViewWin::userAgent):
   29061 
   29062 2006-11-07  Anders Carlsson  <acarlsson (a] apple.com>
   29063 
   29064         Reviewed by Oliver.
   29065 
   29066         Let the Frame client know when the window object is available.
   29067 
   29068         * bridge/win/FrameWin.cpp:
   29069         (WebCore::FrameWin::partClearedInBegin):
   29070         * bridge/win/FrameWin.h:
   29071         * platform/win/TemporaryLinkStubs.cpp:
   29072         (FrameWin::unfocusWindow):
   29073         (FrameWin::markMisspellings):
   29074         (FrameWin::restoreDocumentState):
   29075 
   29076 2006-11-07  Adam Roben  <aroben (a] apple.com>
   29077 
   29078         Build fix.
   29079 
   29080         * platform/win/TemporaryLinkStubs.cpp: Remove no-longer-needed stub.
   29081 
   29082 2006-11-07  Steve Falkenburg  <sfalken (a] apple.com>
   29083 
   29084         Fixes for B&I submission
   29085 
   29086         * WebCore.vcproj/WebCore.vcproj:
   29087         * WebCore.vcproj/merge-opensource.sh:
   29088 
   29089 2006-11-06  Kevin McCullough  <kmccullough (a] apple.com>
   29090 
   29091         -Fix test fields accepting text.
   29092 
   29093         * WebCore.vcproj/WebCore.vcproj:
   29094 
   29095 2006-11-06  Anders Carlsson  <acarlsson (a] apple.com>
   29096 
   29097         Reviewed by Dave Hyatt.
   29098 
   29099         <rdar://problem/4778180>
   29100         wikipedia.org crashes when loading
   29101         
   29102         * platform/win/GlyphMapWin.cpp:
   29103         (WebCore::GlyphMap::fillPage):
   29104         Don't call GetGlyphIndices on buffers larger than the page size. GetGlyphIndicies doesn't know anything about
   29105         Unicode supplementary characters and will overwrite the local buffer if the passed-in buffer is bigger than  the page size.
   29106 
   29107 2006-11-06  Anders Carlsson  <acarlsson (a] apple.com>
   29108 
   29109         Fork GlyphMapWin.cpp
   29110         
   29111         * platform/win/GlyphMapWin.cpp: Added.
   29112         (WebCore::GlyphMap::fillPage):
   29113 
   29114 2006-11-06  Geoffrey Garen  <ggaren (a] apple.com>
   29115 
   29116         Reviewed by Darin.
   29117 
   29118         Hooked up the Chrome and Screen clients on Windows.
   29119         
   29120         * WebCore.vcproj/WebCore.vcproj:
   29121         * bridge/win/PageWin.cpp:
   29122         * platform/win/PopupMenuWin.cpp:
   29123         (WebCore::PopupMenu::calculatePositionAndSize):
   29124         * platform/win/TemporaryLinkStubs.cpp:
   29125 
   29126 2006-11-06  Anders Carlsson  <acarlsson (a] apple.com>
   29127 
   29128         Reviewed by Maciej.
   29129 
   29130         Copy npfunctions.h to WebKitOutputDir.
   29131         
   29132         * WebCore.vcproj/WebCore.vcproj:
   29133 
   29134 2006-11-06  Steve Falkenburg  <sfalken (a] apple.com>
   29135 
   29136         Fix double-include of FormData.cpp/.h.
   29137 
   29138         * WebCore.vcproj/WebCore.vcproj:
   29139 
   29140 2006-11-06  Maciej Stachowiak  <mjs (a] apple.com>
   29141         
   29142         - build fixes, adjusted for file move
   29143 
   29144         * WebCore.vcproj/WebCore.vcproj:
   29145 
   29146 2006-11-05  Beth Dakin  <bdakin (a] apple.com>
   29147 
   29148         Reviewed by Steve and Anders.
   29149 
   29150         Add client() fucntion to FrameWin to return the FrameClient.
   29151 
   29152         * bridge/win/FrameWin.h:
   29153         (WebCore::FrameWin::client):
   29154 
   29155 2006-11-05  Steve Falkenburg  <sfalken (a] apple.com>
   29156 
   29157         Fix build
   29158 
   29159         * WebCore.vcproj/WebCore.vcproj:
   29160 
   29161 2006-11-05  Steve Falkenburg  <sfalken (a] apple.com>
   29162 
   29163         Fix build breaks
   29164 
   29165         * bridge/win/FrameWin.cpp:
   29166         * bridge/win/PageWin.cpp:
   29167 
   29168 2006-11-04  Darin Adler  <darin (a] apple.com>
   29169 
   29170         Reviewed by Maciej.
   29171 
   29172         * bridge/win/FrameWin.h:
   29173         * bridge/win/FrameWin.cpp:
   29174         (WebCore::FrameWin::urlSelected): Updated for change of const Event* to Event*.
   29175         (WebCore::FrameWin::submitForm): Added Event* parameter.
   29176 
   29177 2006-11-03  Maciej Stachowiak  <mjs (a] apple.com>
   29178 
   29179         Reviewed by Adele.
   29180 
   29181         - replaced receivedRedirect with new willSendRequest delegate
   29182         - removed most mac-specific loader functions
   29183         - use ResourceResponse more in loader code
   29184 
   29185         * WebCore.vcproj/WebCore.vcproj: Added new files
   29186         * platform/win/TemporaryLinkStubs.cpp: Removed unneeded link stubs
   29187 
   29188 2006-11-03  Steve Falkenburg  <sfalken (a] apple.com>
   29189 
   29190         Fix build
   29191 
   29192         * config.h: Touched to cause re-build w/ SVG_SUPPORT enabled
   29193         * platform/win/TemporaryLinkStubs.cpp:
   29194         (WebCore::CachedResource::setResponse): Added
   29195 
   29196 2006-11-03  Adele Peterson  <adele (a] apple.com>
   29197 
   29198         Reviewed by Oliver.
   29199 
   29200         Removed DeprecatedRenderSelect and ListBox classes.
   29201 
   29202         * WebCore.vcproj/WebCore.vcproj:
   29203         * platform/win/TemporaryLinkStubs.cpp:
   29204 
   29205 2006-11-03  Anders Carlsson  <acarlsson (a] apple.com>
   29206 
   29207         Remove SVGRenderAsText files from the project.
   29208         
   29209         * WebCore.vcproj/WebCore.vcproj:
   29210 
   29211 2006-11-03  Anders Carlsson  <acarlsson (a] apple.com>
   29212 
   29213         Build fix.
   29214         
   29215         * platform/win/TemporaryLinkStubs.cpp:
   29216         (WebCore::CachedResource::setPlatformResponse):
   29217 
   29218 2006-11-03  Geoffrey Garen  <ggaren (a] apple.com>
   29219 
   29220         Reviewed by Darin, Beth.
   29221 
   29222         Updated to use ChromeClient.
   29223         
   29224         * WebCore.vcproj/WebCore.vcproj:
   29225         * bridge/win/PageWin.cpp:
   29226         * loader/win/ResourceLoaderWin.cpp: Added.
   29227         (WebCore::ResourceLoader::loadsBlocked):
   29228         * platform/win/TemporaryLinkStubs.cpp:
   29229 
   29230 2006-11-02  Anders Carlsson  <acarlsson (a] apple.com>
   29231 
   29232         Reviewed by Oliver.
   29233 
   29234         * WebCore.vcproj/WebCore.vcproj:
   29235         Use the forked CursorWin.cpp
   29236         
   29237         * platform/win/CursorWin.cpp:
   29238         (WebCore::moveCursor):
   29239         Implement this.
   29240         
   29241         * platform/win/TemporaryLinkStubs.cpp:
   29242         Get rid of it here.
   29243         
   29244 2006-11-02  Anders Carlsson  <acarlsson (a] apple.com>
   29245 
   29246         Reviewed by Oliver.
   29247 
   29248         Add forked copy of CursorWin.cpp
   29249         
   29250         * platform/win/CursorWin.cpp: Added.
   29251 
   29252 2006-11-01  Oliver Hunt  <oliver (a] apple.com>
   29253 
   29254         Reviewed by Adam.
   29255 
   29256         Adding SVG_SUPPORT to Boomer.
   29257 
   29258         * WebCore.vcproj/WebCore.vcproj:
   29259         * WebCore.vcproj/build-generated-files.sh:
   29260         * kcanvas/device/quartz/KCanvasFilterQuartz.cpp: Added.
   29261         (WebCore::KCanvasFilterQuartz::KCanvasFilterQuartz):
   29262         (WebCore::KCanvasFilterQuartz::~KCanvasFilterQuartz):
   29263         (WebCore::KCanvasFilterQuartz::prepareFilter):
   29264         (WebCore::KCanvasFilterQuartz::applyFilter):
   29265         (WebCore::KCanvasFilterQuartz::imageForName):
   29266         (WebCore::KCanvasFilterQuartz::setImageForName):
   29267         (WebCore::KCanvasFilterQuartz::setOutputImage):
   29268         (WebCore::KCanvasFilterQuartz::inputImage):
   29269         * platform/graphics/svg/cg/SVGResourceMaskerCg.cpp: Added.
   29270         (WebCore::SVGResourceMasker::applyMask):
   29271 
   29272 2006-11-01  Beth Dakin  <bdakin (a] apple.com>
   29273 
   29274         Reviewed by Adam.
   29275 
   29276         Build fix from Sam Weinig's check-in. i.p in the PaintInfo is now 
   29277         i.context
   29278 
   29279         * rendering/RenderThemeWin.cpp:
   29280         (WebCore::RenderThemeWin::paintButton):
   29281         (WebCore::RenderThemeWin::paintTextField):
   29282         (WebCore::RenderThemeWin::paintMenuList):
   29283         (WebCore::RenderThemeWin::paintMenuListButton):
   29284 
   29285 2006-11-01  Anders Carlsson  <acarlsson (a] apple.com>
   29286 
   29287         Reviewed by Geoff.
   29288 
   29289         * bridge/win/FrameWin.cpp:
   29290         (WebCore::FrameWin::createJavaAppletWidget):
   29291         Ask the plugin database to create a java applet plugin.
   29292 
   29293         * platform/win/TemporaryLinkStubs.cpp:
   29294         Remove FrameWin::createJavaAppletWidget.
   29295         
   29296         * plugins/win/PluginDatabaseWin.cpp:
   29297         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   29298         Don't look for the Sun Java plugin anymore.
   29299 
   29300 2006-11-01  Anders Carlsson  <acarlsson (a] apple.com>
   29301 
   29302         * plugins/win/PluginStreamWin.cpp:
   29303         (WebCore::PluginStreamWin::startStream):
   29304         Build fix.
   29305         
   29306 2006-11-01  Anders Carlsson  <acarlsson (a] apple.com>
   29307 
   29308         Reviewed by Adam.
   29309 
   29310         Convert plugin code over to using ResourceResponse.
   29311         
   29312         * plugins/win/PluginStreamWin.cpp:
   29313         (WebCore::PluginStreamWin::startStream):
   29314         (WebCore::PluginStreamWin::didReceiveResponse):
   29315         (WebCore::PluginStreamWin::didFinishLoading):
   29316         * plugins/win/PluginStreamWin.h:
   29317         * plugins/win/PluginViewWin.cpp:
   29318         (WebCore::PluginViewWin::performRequest):
   29319 
   29320 2006-10-31  Steve Falkenburg  <sfalken (a] apple.com>
   29321 
   29322         Yet more B&I build fixes
   29323         Another missing .h file from the vcproj
   29324 
   29325         * WebCore.vcproj/WebCore.vcproj:
   29326 
   29327 2006-10-31  Steve Falkenburg  <sfalken (a] apple.com>
   29328 
   29329         Another fix for B&I submission
   29330         (missing .h files from the WebCore vcproj prevents proper merging of OpenSource/Internal WebCore trees)
   29331 
   29332         * WebCore.vcproj/WebCore.vcproj:
   29333 
   29334 2006-10-31  Steve Falkenburg  <sfalken (a] apple.com>
   29335 
   29336         Remove extra files I accidently added
   29337 
   29338         * WebCore.vcproj/WebCore.vcproj:
   29339 
   29340 2006-10-31  Steve Falkenburg  <sfalken (a] apple.com>
   29341 
   29342         Build fixes for submission merge script
   29343 
   29344         * WebCore.vcproj/WebCore.vcproj:
   29345 
   29346 2006-10-31  Adam Roben  <aroben (a] apple.com>
   29347 
   29348         Build fixes.
   29349 
   29350         * WebCore.vcproj/WebCore.vcproj: Add new platform/graphics directory to
   29351         our include path, and copy headers from there for WebKit's benefit.
   29352         * bridge/win/FrameWin.cpp: Update accessors of FrameLoadRequest.
   29353         (WebCore::FrameWin::urlSelected):
   29354         (WebCore::FrameWin::submitForm):
   29355         * plugins/win/PluginViewWin.cpp: Ditto.
   29356         (WebCore::PluginViewWin::start):
   29357         (WebCore::PluginViewWin::performRequest):
   29358         (WebCore::PluginViewWin::load):
   29359         (WebCore::PluginViewWin::getURLNotify):
   29360         (WebCore::PluginViewWin::getURL):
   29361         (WebCore::PluginViewWin::handlePost):
   29362         * plugins/win/PluginViewWin.h: Correct forward declaration of
   29363         FrameLoadRequest.
   29364 
   29365 2006-10-30  Darin Adler  <darin (a] apple.com>
   29366 
   29367         Reviewed by Anders.
   29368 
   29369         - remove BrowserExtension
   29370 
   29371         * WebCore.vcproj/WebCore.vcproj:
   29372         * bridge/win/FrameWin.cpp:
   29373         (WebCore::FrameWin::FrameWin):
   29374         * platform/win/TemporaryLinkStubs.cpp:
   29375         * plugins/win/PluginViewWin.cpp:
   29376         (WebCore::PluginViewWin::performRequest):
   29377 
   29378 2006-10-30  Anders Carlsson  <acarlsson (a] apple.com>
   29379 
   29380         Reviewed by Adam.
   29381 
   29382         If there's no plug-in for a given mime type, or if the plug-in fails
   29383         to initialize, draw the "missing plug-in" icon.
   29384 
   29385         * plugins/win/PluginDatabaseWin.cpp:
   29386         (WebCore::PluginDatabaseWin::createPluginView):
   29387         If no plug-in can be found, create a null plugin view.
   29388         
   29389         * plugins/win/PluginViewWin.cpp:
   29390         (WebCore::PluginViewWin::paint):
   29391         If the plugin hasn't been started, paint the missing plugin image.
   29392         
   29393         (WebCore::PluginViewWin::setNPWindowSize):
   29394         Return early if the plugin hasn't been started.
   29395         
   29396         (WebCore::PluginViewWin::start):
   29397         Return if the plugin couldn't be created.
   29398         
   29399         (WebCore::PluginViewWin::createNullPluginView):
   29400         New function which just creates a plugin view and doesn't try to start its plugin
   29401         (because there is none).
   29402         
   29403         (WebCore::PluginViewWin::PluginViewWin):
   29404         New constructor for the null plugin view.
   29405         
   29406 2006-10-31  Darin Adler  <darin (a] apple.com>
   29407 
   29408         Reviewed by Adam.
   29409 
   29410         * WebCore.vcproj/WebCore.vcproj: Added new source files from the
   29411         loader directory.
   29412 
   29413 2006-10-29  Maciej Stachowiak  <mjs (a] apple.com>
   29414 
   29415         Reviewed by Anders.
   29416 
   29417         - added ResourceResponse class and didReceiveResponse delegate call
   29418 
   29419         * WebCore.vcproj/WebCore.vcproj: Added new files.
   29420         * platform/win/TemporaryLinkStubs.cpp:
   29421         (WebCore::ServeSynchronousRequest): Changed prototype to match
   29422         new version.
   29423 
   29424 2006-10-29  Darin Adler  <darin (a] apple.com>
   29425 
   29426         - update for the WebCore renames
   29427 
   29428         * WebCore.vcproj/WebCore.vcproj:
   29429         * bridge/win/FrameWin.cpp:
   29430         (WebCore::FrameWin::bindingRootObject):
   29431         (WebCore::FrameWin::windowScriptNPObject):
   29432         * plugins/win/PluginViewWin.cpp:
   29433         (WebCore::PluginViewWin::load):
   29434         (WebCore::PluginViewWin::bindingInstance):
   29435 
   29436 2006-10-29  Maciej Stachowiak  <mjs (a] apple.com>
   29437 
   29438         Rubber stamped by Darin.
   29439 
   29440         - renamed ResourceLoader to ResourceHandle (and same for related classes)
   29441 
   29442         * WebCore.vcproj/WebCore.vcproj:
   29443         * bridge/win/FrameWin.cpp:
   29444         * platform/network/win/ResourceHandleWin.cpp: Added.
   29445         (WebCore::):
   29446         (WebCore::addToOutstandingJobs):
   29447         (WebCore::lookupResourceHandle):
   29448         (WebCore::ResourceHandleWndProc):
   29449         (WebCore::ResourceHandle::onHandleCreated):
   29450         (WebCore::ResourceHandle::onRequestRedirected):
   29451         (WebCore::ResourceHandle::onRequestComplete):
   29452         (WebCore::initializeOffScreenResourceHandleWindow):
   29453         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   29454         (WebCore::ResourceHandle::~ResourceHandle):
   29455         (WebCore::ResourceHandle::startHTTPRequest):
   29456         (WebCore::ResourceHandle::start):
   29457         (WebCore::ResourceHandle::fileLoadTimer):
   29458         (WebCore::ResourceHandle::cancel):
   29459         * platform/network/win/ResourceHandleWin.h: Added.
   29460         * platform/network/win/ResourceLoaderWin.cpp: Removed.
   29461         * platform/network/win/ResourceLoaderWin.h: Removed.
   29462         * platform/win/TemporaryLinkStubs.cpp:
   29463         (WebCore::ResourceHandle::assembleResponseHeaders):
   29464         (WebCore::ResourceHandle::retrieveResponseEncoding):
   29465         (IconLoader::receivedResponse):
   29466         * plugins/win/PluginStreamWin.cpp:
   29467         (WebCore::PluginStreamWin::start):
   29468         (WebCore::PluginStreamWin::deliverData):
   29469         (WebCore::PluginStreamWin::receivedResponse):
   29470         (WebCore::PluginStreamWin::didReceiveData):
   29471         (WebCore::PluginStreamWin::receivedAllData):
   29472         * plugins/win/PluginStreamWin.h:
   29473 
   29474 2006-10-28  Adam Roben  <aroben (a] apple.com>
   29475 
   29476         Build fix.
   29477 
   29478         * WebCore.vcproj/WebCore.vcproj: Adding new HitTestResult.{cpp,h}
   29479         files.
   29480 
   29481 2006-10-27  Anders Carlsson  <acarlsson (a] apple.com>
   29482 
   29483         Reviewed by Oliver.
   29484 
   29485         <rdar://problem/4730678> Plug-ins should be able to open URLs
   29486 
   29487         * plugins/win/PluginViewWin.cpp:
   29488         (WebCore::PluginViewWin::performRequest):
   29489 
   29490 2006-10-26  Anders Carlsson  <acarlsson (a] apple.com>
   29491 
   29492         Reviewed by John Sullivan.
   29493 
   29494         <rdar://problem/4764502> PluginStreams should cancel their loader jobs on error
   29495 
   29496         * plugins/win/PluginStreamWin.cpp:
   29497         (WebCore::PluginStreamWin::receivedResponse):
   29498         (WebCore::PluginStreamWin::didReceiveData):
   29499         (WebCore::PluginStreamWin::receivedAllData):
   29500         Modify assertions. None of the above functions should be run after aborting the load.
   29501 
   29502 2006-10-26  Anders Carlsson  <acarlsson (a] apple.com>
   29503 
   29504         Reviewed by Adam.
   29505 
   29506         * plugins/win/PluginDatabaseWin.cpp:
   29507         (WebCore::addPluginPath):
   29508         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   29509         Look for plugins in a plugins directory which is relative to the executable directory.
   29510         
   29511         (WebCore::PluginDatabaseWin::createPluginView):
   29512         Use reverseFind instead of findRev here.
   29513         
   29514 2006-10-26  Adam Roben  <aroben (a] apple.com>
   29515 
   29516         Reviewed by Beth.
   29517 
   29518         Fix: <rdar://problem/4799084> Text and dropdown button too close
   29519         together in <select>s
   29520         Fix: <rdar://problem/4800493> Popup menus should be positioned so that
   29521         their text is horizontally aligned with the <select> control's text
   29522 
   29523         * platform/win/PopupMenuWin.cpp:
   29524         (WebCore::PopupMenu::calculatePositionAndSize): Switch alignment of LTR
   29525         vs. RTL popups, and add padding to align the text.
   29526         (WebCore::PopupMenu::paint): Add padding from the <select> control to
   29527         align the text with the <select> control's text.
   29528         * rendering/RenderThemeWin.cpp: Set svn:eol-style native.
   29529         (WebCore::RenderThemeWin::systemFont): Clean up line endings.
   29530         (WebCore::RenderThemeWin::adjustMenuListButtonStyle): Add some extra
   29531         padding between the dropdown button and text.
   29532         (WebCore::RenderThemeWin::paintMenuListButton): Clean up code a bit.
   29533 
   29534 2006-10-26  Adam Roben  <aroben (a] apple.com>
   29535 
   29536         Forgot to make the change to Release as well in my last checkin.
   29537 
   29538         * WebCore.vcproj/WebCore.vcproj:
   29539 
   29540 2006-10-26  Adam Roben  <aroben (a] apple.com>
   29541 
   29542         Rubberstamped by Steve.
   29543 
   29544         Add some missing '/d' flags to xcopy calls to only copy headers if
   29545         they've been modified.
   29546 
   29547         * WebCore.vcproj/WebCore.vcproj:
   29548 
   29549 2006-10-26  Anders Carlsson  <acarlsson (a] apple.com>
   29550 
   29551         * platform/win/TemporaryLinkStubs.cpp:
   29552         (GraphicsContext::drawLineForMisspellingOrBadGrammar):
   29553         Build fix from Oliver.
   29554         
   29555 2006-10-26  Anders Carlsson  <acarlsson (a] apple.com>
   29556 
   29557         Reviewed by Adam.
   29558 
   29559         Use FrameLoadRequest and ResourceRequest instead of passing around
   29560         the individual components.
   29561         
   29562         * plugins/win/PluginStreamWin.cpp:
   29563         (WebCore::PluginStreamWin::PluginStreamWin):
   29564         (WebCore::PluginStreamWin::start):
   29565         (WebCore::PluginStreamWin::destroyStream):
   29566         * plugins/win/PluginStreamWin.h:
   29567         * plugins/win/PluginViewWin.cpp:
   29568         (WebCore::PluginRequestWin::PluginRequestWin):
   29569         (WebCore::PluginRequestWin::frameLoadRequest):
   29570         (WebCore::PluginViewWin::start):
   29571         (WebCore::PluginViewWin::performRequest):
   29572         (WebCore::PluginViewWin::load):
   29573         (WebCore::PluginViewWin::getURLNotify):
   29574         (WebCore::PluginViewWin::getURL):
   29575         (WebCore::PluginViewWin::handlePost):
   29576         * plugins/win/PluginViewWin.h:
   29577 
   29578 2006-10-26  Adam Roben  <aroben (a] apple.com>
   29579 
   29580         Reviewed by Adele.
   29581 
   29582         Fix: <rdar://problem/4794162> Implement type-ahead find for popup menus
   29583         Fix: <rdar://problem/4800486> Pressing TAB while a popup is focused
   29584         should close the popup and move selection in the page
   29585 
   29586         * platform/win/PopupMenuWin.cpp:
   29587         (WebCore::PopupMenu::PopupMenu): Don't cache the focused index.
   29588         (WebCore::PopupMenu::focusedIndex): Always get the focused index from
   29589         the HTMLSelectElement.
   29590         (WebCore::PopupMenu::setFocusedIndex): Invalidate before calling
   29591         valueChanged(), as this will change the result of focusedIndex().
   29592         (WebCore::PopupMenu::scrollToRevealSelection):
   29593         (WebCore::PopupMenu::updateFromElement): New method to repaint/rescroll
   29594         the popup.
   29595         (WebCore::PopupWndProc): Send TAB keypresses and printable characters
   29596         back to the WebView for handling. Also omove handling of Return/Escape
   29597         into the WM_CHAR event, as this is recommended by MSDN.
   29598 
   29599 2006-10-25  Steve Falkenburg  <sfalken (a] apple.com>
   29600 
   29601         Reviewed by Darin.
   29602 
   29603         Checked in Luke's CG printing code
   29604 
   29605         * bridge/win/FrameWin.cpp:
   29606         (WebCore::FrameWin::setupRootForPrinting): Added
   29607         (WebCore::FrameWin::computePageRects): Added
   29608         * bridge/win/FrameWin.h: Added setupRootForPrinting, computePageRects
   29609 
   29610 2006-10-24  Maciej Stachowiak  <mjs (a] apple.com>
   29611 
   29612         Reviewed by Oliver.
   29613 
   29614         - updated for ResourceRequest changes.
   29615 
   29616         * plugins/win/PluginStreamWin.cpp:
   29617         (WebCore::PluginStreamWin::setRequestHeaders):
   29618         * plugins/win/PluginStreamWin.h:
   29619         * plugins/win/PluginViewWin.cpp:
   29620         (WebCore::PluginViewWin::loadURL):
   29621         (WebCore::parseRFC822HeaderFields):
   29622         (WebCore::PluginViewWin::handlePost):
   29623         * plugins/win/PluginViewWin.h:
   29624 
   29625 2006-10-24  Steve Falkenburg  <sfalken (a] apple.com>
   29626 
   29627         Build fix for official builds
   29628 
   29629         * WebCore.vcproj/WebCore.make:
   29630 
   29631 2006-10-24  Steve Falkenburg  <sfalken (a] apple.com>
   29632 
   29633         Fix build so it can be submitted.
   29634 
   29635         * WebCore.vcproj/WebCore.vcproj:
   29636         * WebCore.vcproj/merge-opensource.sh:
   29637         * rendering/RenderThemeWin.cpp:
   29638 
   29639 2006-10-24  Geoffrey Garen  <ggaren (a] apple.com>
   29640 
   29641         Rolling back in, now fixed:
   29642         
   29643         Nixed a few more redundant loading functions in Frame.
   29644 
   29645         * bridge/win/FrameWin.h:
   29646         * platform/win/TemporaryLinkStubs.cpp:
   29647         (FrameWin::shouldInterruptJavaScript):
   29648         (FrameWin::lastEventIsMouseUp):
   29649 
   29650 2006-10-24  Maciej Stachowiak  <mjs (a] apple.com>
   29651 
   29652         Reviewed by Geoff.
   29653 
   29654         - update for ResourceLoader API changes
   29655 
   29656         * platform/win/TemporaryLinkStubs.cpp:
   29657         (WebCore::ServeSynchronousRequest):
   29658         * plugins/win/PluginStreamWin.cpp:
   29659         (WebCore::PluginStreamWin::start):
   29660         (WebCore::PluginStreamWin::receivedAllData):
   29661         * plugins/win/PluginStreamWin.h:
   29662         * plugins/win/PluginViewWin.cpp:
   29663         (WebCore::PluginViewWin::performRequest):
   29664 
   29665 2006-10-24  Geoffrey Garen  <ggaren (a] apple.com>
   29666 
   29667         Rolling out my last change because it broke the world.
   29668         
   29669         * bridge/win/FrameWin.h:
   29670         * platform/win/TemporaryLinkStubs.cpp:
   29671         (FrameWin::openURL):
   29672 
   29673 2006-10-24  Anders Carlsson  <acarlsson (a] apple.com>
   29674 
   29675         Reviewed by Adam.
   29676 
   29677         <rdar://problem/4760429> Crash in PluginStreamWin::~PluginStreamWin when 
   29678         navigating away from mcdonalds.com
   29679         
   29680         * plugins/win/PluginPackageWin.cpp:
   29681         (WebCore::PluginPackageWin::fetchInfo):
   29682         Use fastFree instead of free when memory is allocated by fastMalloc. 
   29683         If the plugin name or description is null, don't try to fetch info about the plugin.
   29684         
   29685         * plugins/win/PluginStreamWin.cpp:
   29686         (WebCore::PluginStreamWin::setRequestHeaders):
   29687         (WebCore::PluginStreamWin::start):
   29688         (WebCore::PluginStreamWin::stop):
   29689         * plugins/win/PluginStreamWin.h:
   29690         Change type of header map to ResourceRequest::HTTPHeaderMap. When a plugin is stopped,
   29691         set its state to StreamStopped.
   29692         
   29693         * plugins/win/PluginViewWin.cpp:
   29694         (WebCore::PluginViewWin::loadURL):
   29695         (WebCore::parseRFC822HeaderFields):
   29696         (WebCore::PluginViewWin::handlePost):
   29697         * plugins/win/PluginViewWin.h:
   29698         Update for type changes to the header map.
   29699 
   29700 2006-10-24  Geoffrey Garen  <ggaren (a] apple.com>
   29701 
   29702         Reviewed by Anders.
   29703         
   29704         Nixed a few more redundant loading functions in Frame.
   29705 
   29706         * bridge/win/FrameWin.h:
   29707         * platform/win/TemporaryLinkStubs.cpp:
   29708         (FrameWin::shouldInterruptJavaScript):
   29709         (FrameWin::lastEventIsMouseUp):
   29710 
   29711 2006-10-23  Geoffrey Garen  <ggaren (a] apple.com>
   29712 
   29713         Reviewed by Bradee.
   29714 
   29715         Removed methods from BrowserExtension.
   29716 
   29717         * bridge/win/FrameWin.h:
   29718         * platform/win/TemporaryLinkStubs.cpp:
   29719         (FrameWin::canPaste):
   29720         (FrameWin::canGoBackOrForward):
   29721         (FrameWin::goBackOrForward):
   29722         (FrameWin::getHistoryLength):
   29723         (FrameWin::historyURL):
   29724         (Page::canRunModal):
   29725         (Page::canRunModalNow):
   29726         (Page::runModal):
   29727         (BrowserExtensionWin::BrowserExtensionWin):
   29728 
   29729 2006-10-23  Adam Roben  <aroben (a] apple.com>
   29730 
   29731         Reviewed by Adele.
   29732 
   29733         Fix: <rdar://problem/4796994> Styled <select>s should still use Windows
   29734         theme
   29735 
   29736         The fix is to do most of our drawing for menulists in
   29737         RenderThemeWin::paintMenuListButton (which is called for styled
   29738         <select>s), and then do any extra drawing for unstyled <select>s in
   29739         RenderThemeWin::paintMenuList.
   29740 
   29741         * rendering/RenderThemeWin.cpp:
   29742         (WebCore::RenderThemeWin::getThemeData): Case for
   29743         MenulistButtonAppearance should be the same as MenulistAppearance.
   29744         (WebCore::RenderThemeWin::paintMenuList): Draw the border, then defer
   29745         to paintMenuListButton to handle the rest of painting.
   29746         (WebCore::RenderThemeWin::adjustMenuListStyle): Reset the border so we
   29747         can draw our own, then defer to adjustMenuListStyle.
   29748         (WebCore::RenderThemeWin::adjustMenuListButtonStyle): Code moved from
   29749         adjustMenuListStyle, less the call to resetBorder().
   29750         (WebCore::RenderThemeWin::paintMenuListButton): Code moved from
   29751         paintMenuList, less the border-drawing code.
   29752         * rendering/RenderThemeWin.h:
   29753 
   29754 2006-10-23  Adam Roben  <aroben (a] apple.com>
   29755 
   29756         Reviewed by Adele.
   29757 
   29758         Fix: <rdar://problem/4786759> PageUp/PageDown/Home/End don't work in
   29759         <select> menus
   29760 
   29761         * platform/win/PopupMenuWin.cpp:
   29762         (WebCore::PopupMenu::setFocusedIndex): Only call ::UpdateWindow if we
   29763         didn't scroll, because scrolling will do the update for us.
   29764         (WebCore::PopupMenu::focusFirst): New method.
   29765         (WebCore::PopupMenu::focusLast): New method.
   29766         (WebCore::PopupMenu::down): Add a parameter to specify how far we
   29767         should try to move the selection.
   29768         (WebCore::PopupMenu::up): Ditto.
   29769         (WebCore::PopupMenu::invalidateItem): Cleanup code by using IntRect
   29770         instead of RECT.
   29771         (WebCore::PopupMenu::scrollTo): Return a boolean to say whether
   29772         scrolling actually happened.
   29773         (WebCore::PopupMenu::scrollToRevealSelection): Ditto.
   29774         (WebCore::PopupWndProc): Handle PageUp/PageDown/Home/End.
   29775 
   29776 2006-10-23  Adam Roben  <aroben (a] apple.com>
   29777 
   29778         Build fix.
   29779 
   29780         * WebCore.vcproj/WebCore.vcproj: Copy headers from new platform/network
   29781         directory and subdirectories.
   29782 
   29783 2006-10-23  Adam Roben  <aroben (a] apple.com>
   29784 
   29785         Build fix.
   29786 
   29787         * plugins/win/PluginStreamWin.h: Rename methods to match Maciej's
   29788         changes.
   29789 
   29790 2006-10-23  Adam Roben  <aroben (a] apple.com>
   29791 
   29792         Build fix.
   29793 
   29794         * WebCore.vcproj/WebCore.vcproj: Copied AdditionalIncludeDirectories
   29795         from Release to All Configurations.
   29796 
   29797 2006-10-23  Maciej Stachowiak  <mjs (a] apple.com>
   29798 
   29799         Rubber-stamped by Anders.
   29800 
   29801         - fixed for ResourceLoader refactoring.
   29802 
   29803         * platform/network/win/ResourceLoaderWin.cpp:
   29804         (WebCore::ResourceLoader::onRequestComplete):
   29805         (WebCore::ResourceLoader::fileLoadTimer):
   29806         (WebCore::ResourceLoader::cancel):
   29807         * plugins/win/PluginStreamWin.cpp:
   29808         (WebCore::PluginStreamWin::didReceiveData):
   29809         (WebCore::PluginStreamWin::didFinishLoading):
   29810         * plugins/win/PluginViewWin.cpp:
   29811         (WebCore::PluginViewWin::performRequest):
   29812 
   29813 2006-10-22  Maciej Stachowiak  <mjs (a] apple.com>
   29814 
   29815         Reviewed by Anders.
   29816 
   29817         - updated for new ResourceLoader file locations.
   29818 
   29819         * WebCore.vcproj/WebCore.vcproj: Updated file paths.
   29820         * platform/win/ResourceLoaderWin.cpp: Moved to platform/network/win
   29821         * platform/win/ResourceLoaderWin.h: ditto
   29822 
   29823 2006-10-22  Adam Roben  <aroben (a] apple.com>
   29824 
   29825         Reviewed by Steve.
   29826 
   29827         Fix some crashes caused by the <select> element being detached while
   29828         the popup is open.
   29829 
   29830         * platform/win/PopupMenuWin.cpp:
   29831         (WebCore::PopupWndProc):
   29832 
   29833 2006-10-21  Adam Roben  <aroben (a] apple.com>
   29834 
   29835         Reviewed by Anders.
   29836 
   29837         Fix: <rdar://problem/4794151> Popup should scroll to reveal selected
   29838         item, not just one line at a time
   29839         Fix: <rdar://problem/4794229> Popup hot-tracking should not change text
   29840         in <select> control
   29841 
   29842         * platform/win/PopupMenuWin.cpp:
   29843         (WebCore::PopupMenu::calculatePositionAndSize): Cleaned up code by
   29844         translating into screen coordinates right away.
   29845         (WebCore::PopupMenu::setFocusedIndex): Added parameter to specify
   29846         whether the text in the <select> control should be updated.
   29847         (WebCore::PopupMenu::scrollTo): Extracted scrolling code from
   29848         PopupWndProc to here.
   29849         (WebCore::PopupMenu::scrollToRevealSelection): New method.
   29850         (WebCore::PopupWndProc): Use scrollToRevealSelection() instead of
   29851         manually scrolling one line at a time. Fixed a bug in detecting a
   29852         mouse drag.  Pass in HDC from ::BeginPaint to PopupMenu::paint.
   29853 
   29854 2006-10-21  Adam Roben  <aroben (a] apple.com>
   29855 
   29856         Build fix.
   29857 
   29858         * WebCore.vcproj/WebCore.vcproj: Add new DeleteButton* files to
   29859         project.
   29860 
   29861 2006-10-20  Steve Falkenburg  <sfalken (a] apple.com>
   29862 
   29863         Reviewed by Anders.
   29864 
   29865         Turn on CFNetwork
   29866 
   29867         * config.h:
   29868 
   29869 2006-10-20  Steve Falkenburg  <sfalken (a] apple.com>
   29870 
   29871         Reviewed by Ada.
   29872 
   29873         <rdar://4778502> Boomer userAgent string needs to support pulling in proper build #, plus customization
   29874 
   29875         Useragent/versioning changes
   29876         
   29877         Stamp auto-generated version number into DLL and into user agent.
   29878         Generate a real user agent string instead of hardcoding one.
   29879         Support client supplying an application name for the user agent.
   29880         Support client overriding the useragent (for debug menu).
   29881         Support per-URL user agents (not used at least for now).
   29882 
   29883         * bridge/win/FrameWin.cpp:
   29884         (WebCore::FrameWin::userAgent): Now calls userAgentForURL
   29885         (WebCore::FrameWin::originalRequestURL): Implemented
   29886         * bridge/win/FrameWin.h: changed userAgent to userAgentForURL, added originalRequestURL
   29887         * platform/win/TemporaryLinkStubs.cpp: Removed originalRequestURL
   29888 
   29889 2006-10-20  Alice Liu  <alice.liu (a] apple.com>
   29890 
   29891         Reviewed by Steve.
   29892 
   29893         Adding knowledge of the Editor and EditorClient to Windows WebCore
   29894 
   29895         No layout tests needed
   29896         
   29897         * WebCore.vcproj/WebCore.vcproj:
   29898         added Sound.h, SoundWin.cpp, EditorClient.h, Editor.h&.cpp
   29899 
   29900         * bridge/win/FrameWin.cpp:
   29901         (WebCore::FrameWin::FrameWin):
   29902         added client to constructor params
   29903 
   29904         * bridge/win/FrameWin.h:
   29905         added client to constructor params
   29906 
   29907         * platform/win/SoundWin.cpp: Added.
   29908         (WebCore::systemBeep):
   29909         Calls windows system beep
   29910 
   29911 2006-10-19  Steve Falkenburg  <sfalken (a] apple.com>
   29912 
   29913         Reviewed by Adam.
   29914 
   29915         <rdar://4771958> Holding down Ctrl when a redirect happens opens the redirected page in a new tab
   29916         
   29917         Send triggering event to url selection.
   29918 
   29919         * bridge/win/FrameWin.cpp:
   29920         (WebCore::FrameWin::urlSelected): Add triggeringEvent parameter
   29921         * bridge/win/FrameWin.h: Add triggeringEvent parameter
   29922         * platform/win/PlatformMouseEventWin.cpp:
   29923         (WebCore::PlatformMouseEvent::PlatformMouseEvent): Call GetKeyState instead of GetAsyncKeyState
   29924         * platform/win/WheelEventWin.cpp:
   29925         (WebCore::PlatformWheelEvent::PlatformWheelEvent): Call GetKeyState instead of GetAsyncKeyState
   29926 
   29927 2006-10-19  Adam Roben  <aroben (a] apple.com>
   29928 
   29929         Reviewed by Ada.
   29930 
   29931         This is a partial reimplementation of PopupMenu for Windows. The old
   29932         implementation used the Win32 ListBox control, but as we needed to
   29933         customize the behavior more and more it began to make sense to roll our
   29934         own popup from scratch. That is what this patch accomplishes. And...
   29935 
   29936         Fix: <rdar://problem/4709416>
   29937         Implement mouse hot-tracking for <select> menus
   29938         Fix: <rdar://problem/4786763>
   29939         Can select disabled options in <select> menus using mouse
   29940         (It was easier to implement these than to leave them broken.)
   29941 
   29942         * WebCore.vcproj/WebCore.vcproj: Removed PopupMenu.cpp from project.
   29943         * platform/win/PopupMenuWin.cpp: Carnage. PopupMenu has gained a slew
   29944         of new private instance variables to maintain the window state.
   29945         m_container has been removed as it is no longer needed.
   29946         (WebCore::PopupMenu::PopupMenu): Initialize new variables.
   29947         (WebCore::PopupMenu::~PopupMenu): Clean up new variables.
   29948         (WebCore::PopupMenu::show): Now that we don't have m_container, m_popup
   29949         gets the WS_BORDER and WS_POPUP styles. Also moved code to animate the
   29950         window out of the old PopupMenu::setPositionAndSize() into this method
   29951         since it fits the purpose of this method better.
   29952         (WebCore::PopupMenu::hide):
   29953         (WebCore::PopupMenu::calculatePositionAndSize): Renamed from
   29954         setPositionAndSize(), as this method no longer actually sets the window
   29955         position and size, just calculates it. It also now makes sure the
   29956         window is sized to never show partial items, and takes into account the
   29957         window's border when calculating the size.
   29958         (WebCore::PopupMenu::setFocusedIndex): New method to handle setting the
   29959         selected index of the <select> and highlighting the item in the popup menu.
   29960         (WebCore::PopupMenu::down): Use setSelectedIndex() to do the dirty work.
   29961         (WebCore::PopupMenu::up): Ditto.
   29962         (WebCore::PopupMenu::invalidateItem): New method to invalidate the
   29963         rectangle in the popup menu for this item.
   29964         (WebCore::PopupMenu::clientRect): New method to calculate an IntRect
   29965         for the client area of the window.
   29966         (WebCore::PopupMenu::incrementWheelDelta): New method to add the wheel
   29967         delta obtained from a WM_MOUSEWHEEL message to any pre-existing delta.
   29968         (WebCore::PopupMenu::reduceWheelDelta): New method to reduce the
   29969         pre-existing wheel delta by a given amount towards 0.
   29970         (WebCore::PopupMenu::paint): Does the work that PopupMenu::drawItem
   29971         did, but for every item contained within the damageRect. Can also paint
   29972         into a passed-in HDC (needed for window animations and smooth-scrolling).
   29973         (WebCore::registerPopup): Changed a void* to a PopupMenu*, since that's
   29974         what it really is.
   29975         (WebCore::PopupWndProc): Added code to handle all the messages any
   29976         self-respecting window would handle, and removed messages only relevant
   29977         to the ListBox control.
   29978         * platform/win/TemporaryLinkStubs.cpp: Removed unneeded #include.
   29979 
   29980 2006-10-19  Adam Roben  <aroben (a] apple.com>
   29981 
   29982         Rubberstamped by Maciej.
   29983 
   29984         Build fix.
   29985 
   29986         * bridge/win/FrameWin.cpp:
   29987         (WebCore::FrameWin::submitForm):
   29988 
   29989 2006-10-19  Maciej Stachowiak  <mjs (a] apple.com>
   29990 
   29991         Reviewed by Steve.
   29992 
   29993         - speculative build fix for Windows for my recent changes.
   29994 
   29995         * bridge/win/FrameWin.cpp:
   29996         (WebCore::FrameWin::submitForm):
   29997 
   29998 2006-10-19  Anders Carlsson  <acarlsson (a] apple.com>
   29999 
   30000        * platform/win/TemporaryLinkStubs.cpp:
   30001         (WebCore::ResourceLoader::retrieveResponseEncoding):
   30002         Build fix.
   30003 
   30004 2006-10-18  Maciej Stachowiak  <mjs (a] apple.com>
   30005 
   30006         Reviewed by Geoff.
   30007 
   30008         - remove remnants of KXMLCore name.
   30009 
   30010         * WebCore.vcproj/WebCore.vcproj:
   30011         * config.h:
   30012 
   30013 2006-10-18  Steve Falkenburg  <sfalken (a] apple.com>
   30014 
   30015         Fix build
   30016 
   30017         * platform/win/TemporaryLinkStubs.cpp:
   30018         (BrowserExtensionWin::historyURL):
   30019         (BrowserExtensionWin::BrowserExtensionWin):
   30020 
   30021 2006-10-17  Steve Falkenburg  <sfalken (a] apple.com>
   30022 
   30023         Build fix
   30024 
   30025         * platform/win/TemporaryLinkStubs.cpp:
   30026         (BrowserExtensionWin::createNewWindow):
   30027 
   30028 2006-10-17  Geoffrey Garen  <ggaren (a] apple.com>
   30029 
   30030         Reviewed by Anders.
   30031         
   30032         Added WindowFeatures.h to the project.
   30033 
   30034         * WebCore.vcproj/WebCore.vcproj:
   30035 
   30036 2006-10-17  Steve Falkenburg  <sfalken (a] apple.com>
   30037 
   30038         Reviewed by Maciej.
   30039 
   30040         Turn off a very noisy warning (unknown pragma) caused by an Interfacer include
   30041 
   30042         * WebCore.vcproj/WebCore.vcproj:
   30043 
   30044 2006-10-17  Oliver Hunt  <oliver (a] apple.com>
   30045 
   30046         Reviewed by Brady.
   30047 
   30048         Fixed alpha in favicons, added composite operation conversion
   30049         for cg
   30050         
   30051         rdar://problem/4758934
   30052 
   30053         * platform/win/GraphicsContextWin.cpp:
   30054         (WebCore::GraphicsContext::setCompositeOperation):
   30055         * platform/win/ImageWin.cpp:
   30056         (WebCore::Image::getHBITMAP):
   30057         * platform/win/TemporaryLinkStubs.cpp:
   30058         (GraphicsContext::drawLineForMisspelling):
   30059 
   30060 2006-10-15  Geoffrey Garen  <ggaren (a] apple.com>
   30061 
   30062         Reviewed by Adam.
   30063 
   30064         Added HTMLFrameElementBase to the project.
   30065         
   30066         * WebCore.vcproj/WebCore.vcproj:
   30067 
   30068 2006-10-17  Adam Roben  <aroben (a] apple.com>
   30069 
   30070         Reviewed by Geoff.
   30071 
   30072         A couple of cleanups that Geoff suggested after my last checkin.
   30073 
   30074         * platform/win/PopupMenuWin.cpp:
   30075         (WebCore::PopupMenu::setPositionAndSize):
   30076 
   30077 2006-10-17  Adam Roben  <aroben (a] apple.com>
   30078 
   30079         Reviewed by Adele.
   30080 
   30081         Fix: <rdar://problem/4772506> <select> popup menu should not clip items
   30082         when width: is set.
   30083 
   30084         Popups are now sized and positioned as follows:
   30085         1. Popups are at least as wide as the <select> control on the page.
   30086         2. Popups for LTR <select>s are right-aligned with the <select>, popups
   30087            for RTL <select>s are left-aligned. This means the scrollbar in the
   30088            popup will always line up with the dropdown button in the <select>.
   30089         3. Popups try to be wide enough to fit their widest item, but will
   30090            shrink to ensure they don't extend off the screen.
   30091 
   30092         * platform/win/PopupMenuWin.cpp:
   30093         (WebCore::PopupMenu::setPositionAndSize):
   30094 
   30095 2006-10-16  Adam Roben  <aroben (a] apple.com>
   30096 
   30097         Reviewed by Kevin.
   30098 
   30099         Fix: <rdar://problem/4758923> <select> menu text doesn't draw right
   30100         aligned on right-to-left sites
   30101 
   30102         * platform/win/PopupMenuWin.cpp:
   30103         (WebCore::PopupMenu::show): Pass appropriate styles to CreateWindowEx
   30104         so that we get a left-aligned scrollbar in RTL popups.
   30105         (WebCore::PopupMenu::drawItem): Set text to be right-aligned and draw
   30106         RTL when direction:rtl is set.
   30107         (WebCore::PopupWndProc): Add 1px of vertical height to each menu item
   30108         to match RenderListBox.
   30109         * rendering/RenderThemeWin.cpp:
   30110         (WebCore::RenderThemeWin::paintMenuList): Draw the dropdown button on
   30111         the left when in RTL.
   30112         (WebCore::RenderThemeWin::adjustMenuListStyle): Set padding to allow
   30113         for the dropdown button being on the left in RTL.
   30114 
   30115 2006-10-16  Adam Roben  <aroben (a] apple.com>
   30116 
   30117         Reviewed by John.
   30118 
   30119         Forgot to save these changes John suggested before checking in.
   30120 
   30121         * platform/win/PopupMenuWin.cpp:
   30122         (WebCore::PopupMenu::drawItem):
   30123 
   30124 2006-10-16  Adam Roben  <aroben (a] apple.com>
   30125 
   30126         Reviewed by John.
   30127 
   30128         Fix: <rdar://problem/4709480> Implement option groups
   30129         Fix: <rdar://problem/4785693> Use CG to draw popup menu items
   30130         Fix: <rdar://problem/4709487> Implement separators in <select> popups
   30131         Fix: <rdar://problem/4709358> Move CreateWindowEx calls out of PopupMenu constructor
   30132 
   30133         * platform/win/PopupMenuWin.cpp: Added some now-required #includes,
   30134         moved some constants into the WebCore namespace.
   30135         (WebCore::PopupMenu::PopupMenu): Moved CreateWindowEx calls into PopupMenu::show().
   30136         (WebCore::PopupMenu::show): Pass LBS_OWNERDRAWFIXED to CreateWindowEx
   30137         to assume responsibility for drawing menu itesm. Removed call to set
   30138         the font on the popup menu, as CG will take care of this.
   30139         (WebCore::addString): Added to help with the PopupMenu::add* methods.
   30140         (WebCore::PopupMenu::addOption): Use addString.
   30141         (WebCore::PopupMenu::addGroupLabel): Ditto, and moved from TemporaryLinkStubs.cpp.
   30142         (WebCore::PopupMenu::addSeparator): Ditto.
   30143         (WebCore::PopupMenu::down): Skip items that are not enabled <option>
   30144         elements, and tell the popup menu to set the selection to the element
   30145         we end up on.
   30146         (WebCore::PopupMenu::up): Ditto.
   30147         (WebCore::PopupMenu::drawItem): Added. This is the method that is
   30148         called to draw each item in the menu.
   30149         (WebCore::PopupWndProc): Add cases for WM_MEASUREITEM and WM_DRAWITEM
   30150         messages (required now that we're drawing the menu items ourselves). In
   30151         the cases for arrow key presses, return -2 to signify that we're
   30152         handling all aspects of changing the selection.
   30153         * platform/win/TemporaryLinkStubs.cpp: Removed PopupMenu::addSeparator
   30154         and PopupMenu::addGroupLabel.
   30155 
   30156 2006-10-15  Adam Roben  <aroben (a] apple.com>
   30157 
   30158         Build fix.
   30159 
   30160         Merge OpenSource r17056 to TemporaryLinkStubs.cpp.
   30161 
   30162         * platform/win/TemporaryLinkStubs.cpp:
   30163         (WebCore::CacheObjectExpiresTime):
   30164         (WebCore::ResponseIsMultipart):
   30165         (WebCore::ResponseMIMEType):
   30166         (WebCore::IsResponseURLEqualToURL):
   30167         (WebCore::ResponseURL):
   30168         (WebCore::CachedResource::setResponse):
   30169         (WebCore::CachedResource::setAllData):
   30170 
   30171 2006-10-13  Maciej Stachowiak  <mjs (a] apple.com>
   30172 
   30173         Reviewed by Darin.
   30174 
   30175         - split FrameLoadRequest off from ResourceRequest - it's a ResourceRequest plus frame name plus lockHistory bool
   30176 
   30177         * WebCore.vcproj/WebCore.vcproj:
   30178         * bridge/win/FrameWin.cpp:
   30179         (WebCore::FrameWin::urlSelected):
   30180         (WebCore::FrameWin::submitForm):
   30181         * bridge/win/FrameWin.h:
   30182         * platform/win/TemporaryLinkStubs.cpp:
   30183         (BrowserExtensionWin::createNewWindow):
   30184         (IconLoader::notifyIconChanged):
   30185 
   30186 2006-10-13  Dave Hyatt  <hyatt (a] apple.com>
   30187 
   30188         Make form controls work inside transparency layers by having
   30189         them draw into bitmap that is then turned into a CGImageRef
   30190         and blended into the CG transparency layer.
   30191 
   30192         Reviewed by aroben
   30193 
   30194         * platform/cg/GraphicsContextPlatformPrivate.h:
   30195         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   30196         (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
   30197         (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
   30198         * platform/win/GraphicsContextWin.cpp:
   30199         (WebCore::GraphicsContext::getWindowsContext):
   30200         (WebCore::GraphicsContext::releaseWindowsContext):
   30201         * platform/win/IconWin.cpp:
   30202         (WebCore::Icon::paint):
   30203         * platform/win/PlatformScrollBar.h:
   30204         * platform/win/PlatformScrollBarWin.cpp:
   30205         (WebCore::PlatformScrollbar::PlatformScrollbar):
   30206         (WebCore::PlatformScrollbar::paint):
   30207         (WebCore::PlatformScrollbar::paintButton):
   30208         (WebCore::PlatformScrollbar::paintTrack):
   30209         (WebCore::PlatformScrollbar::paintThumb):
   30210         * rendering/RenderThemeWin.cpp:
   30211         (WebCore::RenderThemeWin::RenderThemeWin):
   30212         (WebCore::drawControl):
   30213 
   30214 2006-10-12  Dave Hyatt  <hyatt (a] apple.com>
   30215 
   30216         Voting Cairo off the island
   30217 
   30218         or
   30219 
   30220         Jeff Probst: "Cairo, the tribe has spoken.  It's time for you
   30221         to go."
   30222 
   30223         * WebCore.vcproj/WebCore.vcproj:
   30224         * platform/win/FontDataWin.cpp:
   30225         (WebCore::FontData::platformInit):
   30226         (WebCore::FontData::platformDestroy):
   30227         (WebCore::FontData::platformWidthForGlyph):
   30228         * platform/win/FontPlatformData.h:
   30229         (WebCore::FontPlatformData::FontPlatformData):
   30230         (WebCore::FontPlatformData::hfont):
   30231         (WebCore::FontPlatformData::cgFont):
   30232         (WebCore::FontPlatformData::operator==):
   30233         * platform/win/FontPlatformDataWin.cpp:
   30234         * platform/win/FontWin.cpp:
   30235         (WebCore::Font::drawGlyphs):
   30236         * platform/win/GraphicsContextWin.cpp:
   30237         * platform/win/IconWin.cpp:
   30238         * platform/win/ImageWin.cpp:
   30239         (WebCore::Image::loadPlatformResource):
   30240         * platform/win/TemporaryLinkStubs.cpp:
   30241         (GraphicsContextPlatformPrivate::clip):
   30242         (GraphicsContext::drawLineForMisspelling):
   30243 
   30244 2006-10-12  Adele Peterson  <adele (a] apple.com>
   30245 
   30246         RS by Geoff.
   30247 
   30248         Renamed uploadControlDetaching to disconnectUploadControl.
   30249 
   30250         * platform/win/FileChooserWin.cpp:
   30251         (WebCore::FileChooser::disconnectUploadControl):
   30252 
   30253 2006-10-12  Adele Peterson  <adele (a] apple.com>
   30254 
   30255         Reviewed by Alice. 
   30256 
   30257         Fixed a small oversight from the last checkin.  The populate method was calling itself, 
   30258         instead of the newly renamed addItems method.
   30259 
   30260         * platform/win/PopupMenuWin.cpp:
   30261         (WebCore::PopupMenu::populate):
   30262 
   30263 2006-10-12  Adam Roben  <aroben (a] apple.com>
   30264 
   30265         Reviewed by Adele.
   30266 
   30267         Move popup menu code out of rendering/ and into platform/.
   30268         RenderPopupMenu becomes PopupMenu, the
   30269         RenderPopupMenuMac/RenderPopupMenuWin subclasses and all the associated
   30270         virtual methods go away, RenderTheme gets to stop worrying about popup
   30271         menus, PopupMenu becomes ref-counted, and everyone becomes happy.
   30272 
   30273         Also fixes <rdar://problem/4710456> Get rid of RenderPopupMenu{Win,Mac}
   30274         classes.
   30275 
   30276         * WebCore.vcproj/WebCore.vcproj: Move files within project.
   30277         * platform/win/PopupMenuWin.cpp: Moved from
   30278         rendering/RenderPopupMenuWin.cpp. Rename RenderPopupMenuWin to
   30279         PopupMenu.
   30280         (WebCore::PopupMenu::PopupMenu):
   30281         (WebCore::PopupMenu::~PopupMenu):
   30282         (WebCore::PopupMenu::clear):
   30283         (WebCore::PopupMenu::populate):
   30284         (WebCore::PopupMenu::show):
   30285         (WebCore::PopupMenu::hide):
   30286         (WebCore::PopupMenu::setPositionAndSize):
   30287         (WebCore::PopupMenu::addOption):
   30288         (WebCore::PopupMenu::focusedIndex): New method to get the index of the
   30289         element that is currently highlighted. This won't always be the same as
   30290         the selectedIndex because of mouse hot-tracking.
   30291         (WebCore::PopupMenu::down):
   30292         (WebCore::PopupMenu::up):
   30293         (WebCore::registerPopup):
   30294         (WebCore::PopupWndProc): Use focusedIndex() instead of sending messages
   30295         to the popup window.
   30296         * platform/win/TemporaryLinkStubs.cpp: Rename RenderPopupMenuWin to PopupMenu.
   30297         (PopupMenu::addSeparator):
   30298         (PopupMenu::addGroupLabel):
   30299         * rendering/RenderPopupMenuWin.cpp: Removed.
   30300         * rendering/RenderPopupMenuWin.h: Removed.
   30301         * rendering/RenderThemeWin.cpp: Get rid of createPopupMenu() method.
   30302         * rendering/RenderThemeWin.h: Ditto.
   30303 
   30304 2006-10-12  Dave Hyatt  <hyatt (a] apple.com>
   30305 
   30306         Implement full-blown double buffering (keeping a bitmap in the WebView that holds the backing store for it).
   30307         
   30308         Reviewed by mjs
   30309 
   30310         * bridge/win/FrameWin.cpp:
   30311         (WebCore::FrameWin::addToDirtyRegion):
   30312         (WebCore::FrameWin::scrollBackingStore):
   30313         (WebCore::FrameWin::updateBackingStore):
   30314         * bridge/win/FrameWin.h:
   30315         * platform/win/PlatformScrollBar.h:
   30316         * platform/win/PlatformScrollBarWin.cpp:
   30317         (WebCore::PlatformScrollbar::windowClipRect):
   30318         * platform/win/ScrollViewWin.cpp:
   30319         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   30320         (WebCore::ScrollView::ScrollViewPrivate::windowClipRect):
   30321         (WebCore::ScrollView::updateContents):
   30322         (WebCore::ScrollView::updateScrollbars):
   30323         (WebCore::ScrollView::windowResizerRect):
   30324         (WebCore::ScrollView::addToDirtyRegion):
   30325         (WebCore::ScrollView::scrollBackingStore):
   30326         (WebCore::ScrollView::updateBackingStore):
   30327         * platform/win/WidgetWin.cpp:
   30328         (WebCore::Widget::suppressInvalidation):
   30329         (WebCore::Widget::invalidateRect):
   30330         * plugins/win/PluginViewWin.cpp:
   30331         (WebCore::PluginViewWin::windowClipRect):
   30332 
   30333 2006-10-11  Adam Roben  <aroben (a] apple.com>
   30334 
   30335         Rubberstamped by Brady.
   30336 
   30337         Clean up logic in Icon::newIconForFile.
   30338 
   30339         * platform/win/IconWin.cpp:
   30340         (WebCore::Icon::newIconForFile): Error case should return early.
   30341 
   30342 2006-10-11  Adam Roben  <aroben (a] apple.com>
   30343 
   30344         Reviewed by Steve.
   30345 
   30346         Fixes <rdar://problem/4777719>
   30347         Icons don't paint with CG
   30348 
   30349         * platform/win/IconWin.cpp:
   30350         (WebCore::Icon::paint): Remove Cairo-specific code now that we have
   30351         GraphicsContextWin.
   30352 
   30353 2006-10-11  Adam Roben  <aroben (a] apple.com>
   30354 
   30355         Rubberstamped by Anders.
   30356 
   30357         Clean up FileChooser::create, Icon::create.
   30358 
   30359         * platform/win/FileChooserWin.cpp:
   30360         (WebCore::FileChooser::create): Just return a FileChooser* and let the
   30361         implicit cast happen.
   30362         * platform/win/IconWin.cpp:
   30363         (WebCore::Icon::newIconForFile): Ditto for Icon*.
   30364 
   30365 2006-10-10  Adam Roben  <aroben (a] apple.com>
   30366 
   30367         Reviewed by Oliver.
   30368 
   30369         Fixes <rdar://problem/4731316>
   30370         Crash when <input type="file"> element removed while file chooser is open
   30371 
   30372         * platform/win/FileChooserWin.cpp: Make FileChooser ref-counted.
   30373         (WebCore::FileChooser::create):
   30374         (WebCore::FileChooser::openFileChooser): Add a protector RefPtr around
   30375         the call to GetOpenFileName so we don't get deleted while the file
   30376         chooser window is open.
   30377 
   30378 2006-10-10  Adam Roben  <aroben (a] apple.com>
   30379 
   30380         Reviewed by Anders.
   30381 
   30382         Fixes <rdar://problem/4772428>
   30383         <select> popup menus positioned incorrectly within frames
   30384 
   30385         * rendering/RenderPopupMenuWin.cpp:
   30386         (WebCore::RenderPopupMenuWin::setPositionAndSize): Use
   30387         contentsToWindow() instead of scrollOffset() to correct menu location.
   30388 
   30389 2006-10-10  Adam Roben  <aroben (a] apple.com>
   30390 
   30391         Reviewed by Adele.
   30392 
   30393         Fixes <rdar://problem/4763246>
   30394         Using arrow keys in <select> popup fires onChange event
   30395 
   30396         Also updates text shown in <select> element on page when using arrow
   30397         keys to change selection within the popup menu, and makes onChange fire
   30398         in the same cases as Firefox/IE.
   30399 
   30400         * rendering/RenderPopupMenuWin.cpp:
   30401         (WebCore::RenderPopupMenuWin::down): Update text of the <select>
   30402         control. Change call to valueChanged() so that onChange doesn't fire.
   30403         (WebCore::RenderPopupMenuWin::up): Ditto.
   30404         (WebCore::PopupWndProc): Don't fire onChange anytime selection changes.
   30405         Fire onChange when pressing Enter
   30406 
   30407 2006-10-09  Anders Carlsson  <acarlsson (a] apple.com>
   30408 
   30409         Reviewed by Maciej.
   30410 
   30411         Fix <rdar://problem/4756255>
   30412         PDF/Acrobat Reader plugin don't work
   30413         
   30414         * bridge/win/FrameWin.cpp:
   30415         (WebCore::FrameWin::getObjectInstanceForWidget):
   30416         (WebCore::FrameWin::getEmbedInstanceForWidget):
   30417         Implement these, getting the instance from the plugin view.
   30418         
   30419         * platform/win/TemporaryLinkStubs.cpp:
   30420         Remove functions that are now implemented.
   30421         
   30422         * plugins/win/PlugInInfoStoreWin.cpp:
   30423         (WebCore::PlugInInfoStore::pluginCount):
   30424         (WebCore::PlugInInfoStore::supportsMIMEType):
   30425         Implement this, returning whether we a plugin exists for a given mime type.
   30426         
   30427         * plugins/win/PluginDatabaseWin.cpp:
   30428         (WebCore::parseVersionString):
   30429         (WebCore::compareVersions):
   30430         New functions for handling versions.
   30431         
   30432         (WebCore::addMozillaPluginPaths):
   30433         (WebCore::addWindowsMediaPlayerPluginPath):
   30434         (WebCore::addQuickTimePluginPath):
   30435         (WebCore::addJavaPluginPath):
   30436         (WebCore::addAdobeAcrobatPluginPath):
   30437         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   30438         Factor out checks into separate functions, add checks for Java and Adobe Acrobat.
   30439 
   30440         (WebCore::PluginDatabaseWin::isMIMETypeRegistered):
   30441         Handle null MIME types.
   30442         
   30443         * plugins/win/PluginPackageWin.cpp:
   30444         (WebCore::PluginPackageWin::load):
   30445         Add some missing functions. Unload the library if the load failed.
   30446         
   30447         * plugins/win/PluginViewWin.cpp:
   30448         (WebCore::PluginViewWin::getValue):
   30449         Uncomment code for getting the element object.
   30450         
   30451         (WebCore::PluginViewWin::bindingInstance):
   30452         * plugins/win/PluginViewWin.h:
   30453         New function which fetches the plugin NPObject and wraps it in an instance.
   30454 
   30455 2006-10-09  Anders Carlsson  <acarlsson (a] apple.com>
   30456 
   30457         Reviewed by Steve.
   30458 
   30459         Fix <rdar://problem/4773320>
   30460         Safari didn't pick up quicktime that was already installed
   30461         
   30462         * plugins/win/PluginDatabaseWin.cpp:
   30463         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   30464         
   30465 2006-10-09  Anders Carlsson  <acarlsson (a] apple.com>
   30466 
   30467         * WebCore.vcproj/WebCore.vcproj:
   30468         * bridge/win/FrameWin.h:
   30469         * platform/win/TemporaryLinkStubs.cpp:
   30470         (FrameWin::createJavaAppletWidget):
   30471         Fix build.
   30472 
   30473 2006-10-09  Adam Roben  <aroben (a] apple.com>
   30474 
   30475         Reviewed by Adele.
   30476 
   30477         Fixes <rdar://problem/4773142>
   30478         Crash in Settings::mediumFontSize() on ebay.com
   30479 
   30480         Call cancelAndClear() from ~FrameWin (just like Mac does) so we don't
   30481         end up calling the Frame::saveDocumentState, which is pure virtual.
   30482 
   30483         * bridge/win/FrameWin.cpp:
   30484         (WebCore::FrameWin::~FrameWin):
   30485 
   30486 2006-10-08  Adam Roben  <aroben (a] apple.com>
   30487 
   30488         Reviewed by Maciej.
   30489 
   30490         Port of OpenSource r16526, r16528
   30491 
   30492         Break up ResourceLoaderWndProc into callback functions.
   30493 
   30494         * platform/win/ResourceLoaderWin.cpp: Fix up #includes
   30495         (WebCore::): Remove loadStatusMessage, struct JobLoadStatus, add
   30496         messageHandlers array.
   30497         (WebCore::ResourceLoaderWndProc): Split handling of different messages
   30498         into callbacks.
   30499         (WebCore::ResourceLoader::onHandleCreated): New callback.
   30500         (WebCore::ResourceLoader::onRequestRedirected): New callback.
   30501         (WebCore::ResourceLoader::onRequestComplete): New callback.
   30502         (WebCore::initializeOffScreenResourceLoaderWindow): No need to register
   30503         loadStatusMessage anymore.
   30504         (WebCore::transferJobStatusCallback): Change how information is passed
   30505         into ResourceLoaderWndProc.
   30506 
   30507 2006-10-08  Dave Hyatt  <hyatt (a] apple.com>
   30508 
   30509         Add support for the Win2k/Classic theme for all controls.
   30510 
   30511         * rendering/RenderThemeWin.cpp:
   30512         (WebCore::RenderThemeWin::buttonTheme):
   30513         (WebCore::RenderThemeWin::textFieldTheme):
   30514         (WebCore::RenderThemeWin::menuListTheme):
   30515         (WebCore::RenderThemeWin::supportsHover):
   30516         (WebCore::RenderThemeWin::determineClassicState):
   30517         (WebCore::RenderThemeWin::getClassicThemeData):
   30518         (WebCore::RenderThemeWin::getThemeData):
   30519         (WebCore::drawControl):
   30520         (WebCore::RenderThemeWin::paintButton):
   30521         (WebCore::RenderThemeWin::paintTextField):
   30522         (WebCore::RenderThemeWin::paintMenuList):
   30523         * rendering/RenderThemeWin.h:
   30524         (WebCore::ThemeData::m_state):
   30525 
   30526 2006-10-07  Steve Falkenburg  <sfalken (a] apple.com>
   30527 
   30528         Reviewed by Adam.
   30529 
   30530         Fix <rdar://4772205> Regression (r10623): WinInet loader doesn't ever write to the cache.        
   30531 
   30532         * platform/win/ResourceLoaderWin.cpp:
   30533         (WebCore::ResourceLoaderWndProc): Apply POST related flags only for posts.
   30534         (WebCore::ResourceLoader::startHTTPRequest): Don't add no-cache-write flag to non-post transactions.
   30535 
   30536 2006-10-07  Dave Hyatt  <hyatt (a] apple.com>
   30537 
   30538         Add code to paint the Windows 2000 and "Windows Classic" theme look for scrollbars.
   30539 
   30540         * platform/win/PlatformScrollBarWin.cpp:
   30541         (WebCore::PlatformScrollbar::paintButton):
   30542         (WebCore::PlatformScrollbar::paintTrack):
   30543         (WebCore::PlatformScrollbar::paintThumb):
   30544         (WebCore::PlatformScrollbar::paintGripper):
   30545 
   30546 2006-10-07  Dave Hyatt  <hyatt (a] apple.com>
   30547 
   30548         Make sure frames and iframes honor scrolling="no" and
   30549         margins.
   30550 
   30551         * bridge/win/FrameWin.cpp:
   30552         (WebCore::FrameWin::createFrame):
   30553 
   30554 2006-10-07  Dave Hyatt  <hyatt (a] apple.com>
   30555 
   30556         Fix the resizer rect so that it is in the ScrollView's coordinate space and not in the document's coordinate space.
   30557         (Fixes all the layout errors with the scrollbar overlapping the resizer.)
   30558         
   30559         Fill scroll corners with white, since it matches Mac (and our chosen resizer look) and looks nicer anyway.
   30560         
   30561         * platform/win/ScrollViewWin.cpp:
   30562         (WebCore::ScrollView::updateScrollbars):
   30563         (WebCore::ScrollView::paint):
   30564 
   30565 2006-10-06  Dave Hyatt  <hyatt (a] apple.com>
   30566 
   30567         Make sure to update plugin clip regions when scrollbars come and go on a scrollview.
   30568        
   30569         * platform/win/ScrollViewWin.cpp:
   30570         (WebCore::ScrollView::updateScrollbars):
   30571 
   30572 2006-10-06  Dave Hyatt  <hyatt (a] apple.com>
   30573 
   30574         Revise the cached clip rect so that it is in the HWND's coordinate space.  This way SetWindowRgn
   30575         doesn't get wastefully called when the plugin is scrolled.
   30576        
   30577         * plugins/win/PluginViewWin.cpp:
   30578         (WebCore::PluginViewWin::updateHwnd):
   30579 
   30580 2006-10-06  Dave Hyatt  <hyatt (a] apple.com>
   30581 
   30582         Implement flawless clipping of windowed plugins, including
   30583         respecting nested frames, CSS overflow and CSS clip.  (This
   30584         puts Boomer way ahead of Mac as far as plugin clipping is
   30585         concerned).
   30586         
   30587         Implement support for correct blitting of scrolled subframes,
   30588         even when clipped by enclosing scrollviews.
   30589 
   30590         Fix a crash caused by focused children not being cleaned up
   30591         when they are removed from a scrollview.
   30592 
   30593         * platform/win/ScrollViewWin.cpp:
   30594         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   30595         (WebCore::ScrollView::setFrameGeometry):
   30596         (WebCore::ScrollView::addChild):
   30597         (WebCore::ScrollView::removeChild):
   30598         (WebCore::ScrollView::geometryChanged):
   30599         * plugins/win/PluginViewWin.cpp:
   30600         (WebCore::PluginViewWin::updateHwnd):
   30601         (WebCore::PluginViewWin::windowClipRect):
   30602         (WebCore::PluginViewWin::setFrameGeometry):
   30603         (WebCore::PluginViewWin::geometryChanged):
   30604         * plugins/win/PluginViewWin.h:
   30605 
   30606 2006-10-06  Geoffrey Garen  <ggaren (a] apple.com>
   30607 
   30608         Fixed <rdar://4768789> Crash on ebay.com in Frame::didOpenURL
   30609         
   30610         The issue was a resource loader making a callback to a
   30611         frame after the frame had been destroyed. This doesn't happen on Mac
   30612         because Mac WebKit cancels all loads before tearing down frames.
   30613         
   30614         The solution is to add a callback to Win WebKit to allow a frame
   30615         to cancel its main resource load. This is a temporary work-around.
   30616         It is temporary because it doesn't address pending subresource loads.
   30617         The long-term solution we anticipate is to have a legitimate loader
   30618         inside WebCore.
   30619 
   30620         * ChangeLog:
   30621         * bridge/win/FrameWin.cpp:
   30622         (WebCore::FrameWin::~FrameWin):
   30623         * bridge/win/FrameWin.h:
   30624 
   30625 2006-10-06  Steve Falkenburg  <sfalken (a] apple.com>
   30626 
   30627         Reviewed by Adam, Lou.
   30628 
   30629         Resizer fixes.
   30630         We now properly invalidate and draw overlapping contents or opaque.
   30631 
   30632         * platform/win/ScrollViewWin.cpp:
   30633         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   30634         (WebCore::ScrollView::updateScrollbars):
   30635         (WebCore::ScrollView::resizerOverlapsContent):
   30636 
   30637 2006-10-06  Anders Carlsson  <acarlsson (a] apple.com>
   30638 
   30639         Reviewed by Adam.
   30640 
   30641         * plugins/win/PluginDatabaseWin.cpp:
   30642         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   30643         Add (commented out) WMP plugin check.
   30644 
   30645 2006-10-06  Anders Carlsson  <acarlsson (a] apple.com>
   30646 
   30647         Reviewed by Brady and Geoff.
   30648 
   30649         <rdar://problems/4769023>
   30650         Crash on cnettv.com - PluginStreamWin::receivedResponse
   30651         
   30652         * platform/win/ResourceLoaderWin.cpp:
   30653         (WebCore::ResourceLoaderWndProc):
   30654         If the Content-Type header is missing, try to figure o ut the content type
   30655         from the file extension. Failing that, just use "application/octet-stream".
   30656 
   30657 2006-10-06  Adam Roben  <aroben (a] apple.com>
   30658 
   30659         Reviewed by Maciej.
   30660 
   30661         Some loader improvements, courtesy of Steve.
   30662 
   30663         Functionally, the improvements are these:
   30664         1. Support HTTP Authentication
   30665         2. Respect WinInet errors better
   30666 
   30667         There are also some general code cleanups, like extracting the creation
   30668         of an HTTP request into its own method.
   30669 
   30670         * platform/win/ResourceLoaderWin.cpp: Add dwError field to
   30671         JobLoadStatus to store WinInet error codes. Also removed the
   30672         globalInternetHandle() function as the global HINTERNET is now only
   30673         needed within startHTTPRequest.
   30674         (WebCore::ResourceLoaderWndProc): Respect error codes and add HTTP
   30675         Authentication support. Also, process HTTP status codes as ints instead
   30676         of strings.
   30677         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal): Cleanup
   30678         m_formData
   30679         (WebCore::transferJobStatusCallback): Cleanup the code, and set
   30680         dwError.
   30681         (WebCore::ResourceLoader::startHTTPRequest): New method to start a new
   30682         HTTP request.
   30683         (WebCore::ResourceLoader::start): Restructure code.
   30684 
   30685 2006-10-06  Dave Hyatt  <hyatt (a] apple.com>
   30686 
   30687         Fix the plugins on cnn.com.  Don't let the scroll view move child plugins around if it hasn't even been parented yet.
   30688         
   30689         Fix an assert in widget destructors caused by not unparenting a ScrollView's scrollbars in its destructor.
   30690         
   30691         * platform/win/ScrollViewWin.cpp:
   30692         (WebCore::ScrollView::ScrollViewPrivate::~ScrollViewPrivate):
   30693         (WebCore::ScrollView::setFrameGeometry):
   30694 
   30695 2006-10-06  Dave Hyatt  <hyatt (a] apple.com>
   30696 
   30697         Make sure that plugin windows get properly moved if an ancestor scrollview is shifted without changing its size (meaning
   30698         that layout doesn't get called on the scrollview to update the widget positions).
   30699         
   30700         Fixes the plugins on osnews.com.
   30701         
   30702         * platform/win/ScrollViewWin.cpp:
   30703         (WebCore::ScrollView::setFrameGeometry):
   30704 
   30705 2006-10-05  Steve Falkenburg  <sfalken (a] apple.com>
   30706 
   30707         Reviewed by aroben.
   30708 
   30709         Scrollbars now dodge resizing gripper.
   30710 
   30711         * bridge/win/FrameViewWin.cpp:
   30712         (WebCore::FrameView::windowResizerRect): added.
   30713         * bridge/win/FrameWin.cpp:
   30714         (WebCore::FrameWin::windowResizerRect): added.
   30715         * bridge/win/FrameWin.h:
   30716         * platform/win/ScrollViewWin.cpp:
   30717         (WebCore::ScrollView::updateScrollbars): Scrollbars now dodge resizing gripper.
   30718 
   30719 2006-10-05  Dave Hyatt  <hyatt (a] apple.com>
   30720 
   30721         Fix a bug where scrollbars would incorrectly show up for iframes when they weren't needed.
   30722         Change the flow of control to be more like Mac.
   30723 
   30724         * platform/win/ScrollViewWin.cpp:
   30725         (WebCore::ScrollView::resizeContents):
   30726         (WebCore::ScrollView::setFrameGeometry):
   30727 
   30728 2006-10-05  Dave Hyatt  <hyatt (a] apple.com>
   30729 
   30730         Fix clipping and transforms by making sure to propagate them as they happen on the CGContext over into the HDC.
   30731         
   30732         * platform/cg/GraphicsContextPlatformPrivate.h:
   30733         * platform/win/GraphicsContextWin.cpp:
   30734         (WebCore::CGContextWithHDC):
   30735         (WebCore::GraphicsContext::getWindowsContext):
   30736         (WebCore::GraphicsContext::releaseWindowsContext):
   30737         (WebCore::GraphicsContextPlatformPrivate::save):
   30738         (WebCore::GraphicsContextPlatformPrivate::restore):
   30739         (WebCore::GraphicsContextPlatformPrivate::clip):
   30740         (WebCore::GraphicsContextPlatformPrivate::scale):
   30741         (WebCore::GraphicsContextPlatformPrivate::rotate):
   30742         (WebCore::GraphicsContextPlatformPrivate::translate):
   30743         (WebCore::GraphicsContextPlatformPrivate::concatCTM):
   30744         * platform/win/TemporaryLinkStubs.cpp:
   30745         (GraphicsContextPlatformPrivate::clip):
   30746 
   30747 2006-10-05  Geoffrey Garen  <ggaren (a] apple.com>
   30748 
   30749         build fix.
   30750         
   30751         * platform/win/WidgetWin.cpp:
   30752         (WebCore::Widget::~Widget):
   30753         (WebCore::Widget::setParent):
   30754         (WebCore::Widget::parent):
   30755         (WebCore::Widget::removeFromParent):
   30756 
   30757 2006-10-05  David Hyatt  <hyatt (a] apple.com>
   30758 
   30759         Stub out GraphicsContextPlatformPrivate methods so that the HDC can
   30760         be updated when clips/transforms are applied.
   30761 
   30762         Reviewed by darin
   30763 
   30764         * platform/cg/GraphicsContextPlatformPrivate.h:
   30765         (WebCore::GraphicsContextPlatformPrivate::save):
   30766         (WebCore::GraphicsContextPlatformPrivate::restore):
   30767         (WebCore::GraphicsContextPlatformPrivate::clip):
   30768         (WebCore::GraphicsContextPlatformPrivate::scale):
   30769         (WebCore::GraphicsContextPlatformPrivate::rotate):
   30770         (WebCore::GraphicsContextPlatformPrivate::translate):
   30771         (WebCore::GraphicsContextPlatformPrivate::concatCTM):
   30772 
   30773 2006-10-05  Adam Roben  <aroben (a] apple.com>
   30774 
   30775         Build fix.
   30776 
   30777         * platform/win/TemporaryLinkStubs.cpp:
   30778         (BrowserExtensionWin::BrowserExtensionWin): Change Frame* to FrameWin*
   30779 
   30780 2006-10-05  Adam Roben  <aroben (a] apple.com>
   30781 
   30782         Build fix. Remove RenderImageButton.{h,cpp}.
   30783 
   30784         * WebCore.vcproj/WebCore.vcproj:
   30785 
   30786 2006-10-05  Geoffrey Garen  <ggaren (a] apple.com>
   30787 
   30788         Reviewed by Darin.
   30789         
   30790         Fixed <rdar://problem/4766987>
   30791         
   30792         - renamed ScrollBar to Scrollbar and scroll bar to scrollbar in every case
   30793         except for file names.
   30794         
   30795         - fixed RenderLayer to properly tear down scrollbars, removing them from
   30796         their parents.
   30797 
   30798         * bridge/win/FrameViewWin.cpp:
   30799         (WebCore::FrameView::passMousePressEventToScrollbar):
   30800         * platform/win/PlatformScrollBar.h:
   30801         (WebCore::):
   30802         * platform/win/PlatformScrollBarWin.cpp:
   30803         (WebCore::PlatformScrollbar::PlatformScrollbar):
   30804         (WebCore::PlatformScrollbar::~PlatformScrollbar):
   30805         (WebCore::PlatformScrollbar::updateThumbPosition):
   30806         (WebCore::PlatformScrollbar::updateThumbProportion):
   30807         (WebCore::PlatformScrollbar::invalidateTrack):
   30808         (WebCore::PlatformScrollbar::invalidatePart):
   30809         (WebCore::PlatformScrollbar::width):
   30810         (WebCore::PlatformScrollbar::height):
   30811         (WebCore::PlatformScrollbar::setRect):
   30812         (WebCore::PlatformScrollbar::setEnabled):
   30813         (WebCore::PlatformScrollbar::paint):
   30814         (WebCore::PlatformScrollbar::backButtonRect):
   30815         (WebCore::PlatformScrollbar::forwardButtonRect):
   30816         (WebCore::PlatformScrollbar::trackRect):
   30817         (WebCore::PlatformScrollbar::thumbRect):
   30818         (WebCore::PlatformScrollbar::gripperRect):
   30819         (WebCore::PlatformScrollbar::splitTrack):
   30820         (WebCore::PlatformScrollbar::thumbPosition):
   30821         (WebCore::PlatformScrollbar::thumbLength):
   30822         (WebCore::PlatformScrollbar::trackLength):
   30823         (WebCore::PlatformScrollbar::paintButton):
   30824         (WebCore::PlatformScrollbar::paintTrack):
   30825         (WebCore::PlatformScrollbar::paintThumb):
   30826         (WebCore::PlatformScrollbar::paintGripper):
   30827         (WebCore::PlatformScrollbar::hitTest):
   30828         (WebCore::PlatformScrollbar::handleMouseMoveEvent):
   30829         (WebCore::PlatformScrollbar::handleMouseOutEvent):
   30830         (WebCore::PlatformScrollbar::handleMousePressEvent):
   30831         (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
   30832         (WebCore::PlatformScrollbar::startTimerIfNeeded):
   30833         (WebCore::PlatformScrollbar::stopTimerIfNeeded):
   30834         (WebCore::PlatformScrollbar::autoscrollPressedPart):
   30835         (WebCore::PlatformScrollbar::autoscrollTimerFired):
   30836         (WebCore::PlatformScrollbar::pressedPartScrollDirection):
   30837         (WebCore::PlatformScrollbar::pressedPartScrollGranularity):
   30838         (WebCore::PlatformScrollbar::thumbUnderMouse):
   30839         (WebCore::PlatformScrollbar::themeChanged):
   30840         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
   30841         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
   30842         * platform/win/ScrollViewWin.cpp:
   30843         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   30844         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
   30845         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
   30846         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   30847         (WebCore::ScrollView::resizeContents):
   30848         (WebCore::ScrollView::scrollBy):
   30849         (WebCore::ScrollView::hScrollbarMode):
   30850         (WebCore::ScrollView::vScrollbarMode):
   30851         (WebCore::ScrollView::suppressScrollbars):
   30852         (WebCore::ScrollView::setHScrollbarMode):
   30853         (WebCore::ScrollView::setVScrollbarMode):
   30854         (WebCore::ScrollView::setScrollbarsMode):
   30855         (WebCore::ScrollView::updateScrollbars):
   30856         (WebCore::ScrollView::scrollbarUnderMouse):
   30857         (WebCore::ScrollView::paint):
   30858         (WebCore::ScrollView::themeChanged):
   30859 
   30860 2006-10-05  Adam Roben  <aroben (a] apple.com>
   30861 
   30862         Reviewed by Maciej.
   30863 
   30864         Fixes <rdar://problem/4757387>
   30865         Unable to sign on to my.yahoo.com
   30866 
   30867         This patch fixes a number of bugs that all resulted in not being able
   30868         to log on to many websites. The problems were that we weren't allowing
   30869         redirects between HTTP and HTTPS sites and weren't correctly handling
   30870         redirects from POST requests to GET requests.
   30871 
   30872         * platform/win/ResourceLoaderWin.cpp:
   30873         (WebCore::globalInternetHandle): Move internetHandle and callbackHandle
   30874         into file scope, and add this function to initialize them.
   30875         (WebCore::logLastError): Add this debug logging function to give more
   30876         readable WinInet error messages.
   30877         (WebCore::ResourceLoaderWndProc): The most substantial change here is
   30878         to allow redirects from POST to GET to function correctly. To do this
   30879         we have to create a new HINTERNET for the GET. We also have to be sure
   30880         not to try to read from our now-invalid handles after the redirect.
   30881         (WebCore::transferJobStatusCallback): Rename timerId to jobId, since
   30882         that's what it is.
   30883         (WebCore::ResourceLoader::start): Call new static initializer, and pass
   30884         flags to allow HTTP<->HTTPS redirects. Also change a few delete calls
   30885         to kill().
   30886 
   30887 2006-10-05  Maciej Stachowiak  <mjs (a] apple.com>
   30888 
   30889         Reviewed by Adam.
   30890 
   30891         - changed ResourceLoader to be refcounted
   30892 
   30893         It keeps a ref on itself while loading as well. This makes
   30894         for a much saner memory management model than the previous.
   30895 
   30896         In addition, keep it ref'd across all of ResourceLoaderWndProc
   30897         to avoid sending messages to jobs that get deleted partway.
   30898 
   30899         This fixes <rdar://problem/4766859> Crash in ResourceLoaderWndProc - line 232 at televisionwithoutpity.com, washingtonpost.com
   30900 
   30901         * platform/win/ResourceLoaderWin.cpp:
   30902         (WebCore::ResourceLoaderWndProc):
   30903         (WebCore::ResourceLoader::start):
   30904         * plugins/win/PluginStreamWin.cpp:
   30905         (WebCore::PluginStreamWin::PluginStreamWin):
   30906         (WebCore::PluginStreamWin::start):
   30907         (WebCore::PluginStreamWin::stop):
   30908         * plugins/win/PluginStreamWin.h:
   30909 
   30910 2006-10-05  Dave Hyatt  <hyatt (a] apple.com>
   30911 
   30912         Make key events work with iframes.  Implement scrolling keyboard behavior.  Fix a bug with mouse wheeling that
   30913         made it fail on iframes nested within iframes.
   30914         
   30915         Reviewed by mjs
   30916 
   30917         * bridge/win/FrameViewWin.cpp:
   30918         (WebCore::FrameView::passWheelEventToSubframe):
   30919         * platform/win/ScrollViewWin.cpp:
   30920         (WebCore::ScrollView::scroll):
   30921         * platform/win/WidgetWin.cpp:
   30922         (WebCore::Widget::Widget):
   30923         (WebCore::Widget::capturingMouse):
   30924         (WebCore::Widget::setCapturingMouse):
   30925         (WebCore::Widget::capturingTarget):
   30926         (WebCore::Widget::setCapturingChild):
   30927         (WebCore::Widget::hasFocus):
   30928         (WebCore::Widget::setFocus):
   30929         (WebCore::Widget::clearFocus):
   30930         (WebCore::Widget::setFocused):
   30931         (WebCore::Widget::focusedTarget):
   30932         (WebCore::Widget::focusedChild):
   30933         (WebCore::Widget::setFocusedChild):
   30934         (WebCore::Widget::clearFocusFromDescendants):
   30935 
   30936 2006-10-05  Adam Roben  <aroben (a] apple.com>
   30937 
   30938         Reviewed by Maciej and Tim H.
   30939 
   30940         Fixes <rdar://problem/4760991>
   30941         Flash content doesn't go away when navigating to a new page
   30942 
   30943         Actually destroy subframes when detaching.
   30944 
   30945         * bridge/win/FrameWin.cpp:
   30946         (WebCore::FrameWin::frameDetached): 
   30947         * bridge/win/FrameWin.h:
   30948 
   30949 2006-10-05  Anders Carlsson  <acarlsson (a] apple.com>
   30950 
   30951         Reviewed by Maciej.
   30952         
   30953         <rdar://problem/4762998>
   30954         REGRESSION: dragging to select text does not work
   30955         
   30956         * platform/win/PlatformMouseEventWin.cpp:
   30957         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   30958         Set the correct button for WM_MOUSEMOVE events.
   30959 
   30960 2006-10-05  Anders Carlsson  <acarlsson (a] apple.com>
   30961 
   30962         Reviewed by Adam.
   30963 
   30964         rdar://problem/4757081
   30965         Crashes/hangs when using Flash 8 plugin (Flash 9 works MUCH better)
   30966         
   30967         * plugins/win/PluginStreamWin.cpp:
   30968         (WebCore::PluginStreamWin::startStream):
   30969         Encode javascript URLs before passing them to the plugin.
   30970 
   30971 2006-10-05  Darin Adler  <darin (a] apple.com>
   30972 
   30973         Reviewed by Adam.
   30974 
   30975         * platform/win/NotImplemented.h: Changed implementation to use Assertions.h.
   30976         Also fixed both macros to be single-statement macros.
   30977 
   30978 2006-10-05  Darin Adler  <darin (a] apple.com>
   30979 
   30980         Reviewed by Adam.
   30981 
   30982         - fix <rdar://problem/4764253>
   30983           frame targeting not implemented.
   30984 
   30985         * bridge/win/FrameWin.h: Added new window boolean to openURL. Also changed
   30986         type from DeprecatedString to String.
   30987         * bridge/win/FrameWin.cpp: (WebCore::FrameWin::urlSelected): Added logic
   30988         to do frame targeting.
   30989 
   30990         * platform/win/BString.h: Added. Convenience for working with
   30991         BSTR and handling allocation/free.
   30992         * platform/win/BString.cpp: Added.
   30993         * WebCore.vcproj/WebCore.vcproj: Added new files.
   30994 
   30995 2006-10-03  Dave Hyatt  <hyatt (a] apple.com>
   30996 
   30997         Land the new ScrollView.
   30998         
   30999         Reviewed by anders
   31000 
   31001         * bridge/win/FrameViewWin.cpp:
   31002         (WebCore::FrameView::passMousePressEventToScrollbar):
   31003         * platform/win/PlatformScrollBar.h:
   31004         * platform/win/PlatformScrollBarWin.cpp:
   31005         (WebCore::PlatformScrollBar::thumbLength):
   31006         (WebCore::PlatformScrollBar::hitTest):
   31007         (WebCore::PlatformScrollBar::horizontalScrollBarHeight):
   31008         (WebCore::PlatformScrollBar::verticalScrollBarWidth):
   31009         * platform/win/ScrollViewWin.cpp:
   31010         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   31011         (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollBar):
   31012         (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollBar):
   31013         (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
   31014         (WebCore::ScrollView::ScrollView):
   31015         (WebCore::ScrollView::updateContents):
   31016         (WebCore::ScrollView::visibleWidth):
   31017         (WebCore::ScrollView::visibleHeight):
   31018         (WebCore::ScrollView::visibleContentRect):
   31019         (WebCore::ScrollView::resizeContents):
   31020         (WebCore::ScrollView::contentsWidth):
   31021         (WebCore::ScrollView::contentsHeight):
   31022         (WebCore::ScrollView::windowToContents):
   31023         (WebCore::ScrollView::contentsToWindow):
   31024         (WebCore::ScrollView::convertChildToSelf):
   31025         (WebCore::ScrollView::convertSelfToChild):
   31026         (WebCore::ScrollView::scrollOffset):
   31027         (WebCore::ScrollView::maximumScroll):
   31028         (WebCore::ScrollView::scrollBy):
   31029         (WebCore::ScrollView::scrollPointRecursively):
   31030         (WebCore::ScrollView::hScrollBarMode):
   31031         (WebCore::ScrollView::vScrollBarMode):
   31032         (WebCore::ScrollView::suppressScrollBars):
   31033         (WebCore::ScrollView::setHScrollBarMode):
   31034         (WebCore::ScrollView::setVScrollBarMode):
   31035         (WebCore::ScrollView::setScrollBarsMode):
   31036         (WebCore::ScrollView::setStaticBackground):
   31037         (WebCore::ScrollView::updateScrollBars):
   31038         (WebCore::ScrollView::scrollbarUnderMouse):
   31039         (WebCore::ScrollView::addChild):
   31040         (WebCore::ScrollView::removeChild):
   31041         (WebCore::ScrollView::paint):
   31042         (WebCore::ScrollView::scrolled):
   31043         * platform/win/WidgetWin.cpp:
   31044         (WebCore::Widget::Widget):
   31045         (WebCore::Widget::convertToContainingWindow):
   31046         (WebCore::Widget::convertFromContainingWindow):
   31047         (WebCore::Widget::convertChildToSelf):
   31048         (WebCore::Widget::convertSelfToChild):
   31049         (WebCore::Widget::setSuppressInvalidation):
   31050         (WebCore::Widget::invalidateRect):
   31051         * plugins/win/PluginViewWin.cpp:
   31052         (WebCore::PluginViewWndProc):
   31053         (WebCore::PluginViewWin::setFrameGeometry):
   31054         (WebCore::PluginViewWin::scrolled):
   31055         * plugins/win/PluginViewWin.h:
   31056 
   31057 2006-10-03  Adam Roben  <aroben (a] apple.com>
   31058 
   31059         Reviewed by Steve.
   31060 
   31061         Improvements to error handling in PluginStreamWin.
   31062 
   31063         * plugins/win/PluginStreamWin.cpp:
   31064         (WebCore::PluginStreamWin::deliverData): Fail quietly if called after
   31065         termination (due to bad error handling in ResourceLoaderWin), ASSERT if
   31066         called before stream has been started.
   31067         (WebCore::PluginStreamWin::receivedData): Ditto.
   31068         (WebCore::PluginStreamWin::receivedAllData): Ditto.
   31069 
   31070 2006-10-03  Adam Roben  <aroben (a] apple.com>
   31071 
   31072         Reviewed by Anders.
   31073 
   31074         Fixes <rdar://problem/4760963>
   31075         Failed ASSERT in PluginStreamWin::~PluginStreamWin at espn.com
   31076 
   31077         We now store the state of a stream as a tri-state enum in
   31078         m_streamState. This allows us to differentiate between before and after the
   31079         stream has been started.
   31080 
   31081         * plugins/win/PluginStreamWin.cpp:
   31082         (WebCore::PluginStreamWin::PluginStreamWin): Initialize members of
   31083         m_stream struct individually.
   31084         (WebCore::PluginStreamWin::~PluginStreamWin):
   31085         (WebCore::PluginStreamWin::startStream):
   31086         (WebCore::PluginStreamWin::destroyStream):
   31087         (WebCore::PluginStreamWin::deliverData): Return early if the stream
   31088         isn't started.
   31089         (WebCore::PluginStreamWin::receivedData): Ditto.
   31090         (WebCore::PluginStreamWin::receivedAllData): Ditto.
   31091         * plugins/win/PluginStreamWin.h:
   31092         (WebCore::): Add PluginStreamState enum.
   31093 
   31094 2006-10-03  Adam Roben  <aroben (a] apple.com>
   31095 
   31096         Reviewed by Darin.
   31097 
   31098         Fixes <rdar://problem/4603342>
   31099         Keyboard navigability
   31100 
   31101         Implement tabbing between form elements (in the single-frame case).
   31102 
   31103         * bridge/win/FrameWin.cpp: Add methods to determine tabbing
   31104         preferences.
   31105         (WebCore::FrameWin::tabsToLinks):
   31106         (WebCore::FrameWin::tabsToAllControls):
   31107         * bridge/win/FrameWin.h: Add tabsToLinks() to FrameWinClient
   31108         * platform/win/ScrollViewWin.cpp:
   31109         (WebCore::ScrollView::scrollPointRecursively): Implemented for
   31110         single-frame case.
   31111         * platform/win/TemporaryLinkStubs.cpp: Remove stub for now-implemented
   31112         ScrollView::scrollPointsRecursively
   31113 
   31114 2006-10-02  Adam Roben  <aroben (a] apple.com>
   31115 
   31116         Reviewed by Maciej.
   31117 
   31118         Fixes <rdar://problem/4743497>
   31119         Can't check checkboxes
   31120 
   31121         Let Windows determine which mouse button is pressed.
   31122 
   31123         * platform/win/PlatformMouseEventWin.cpp:
   31124         (WebCore::PlatformMouseEvent::PlatformMouseEvent): Use message
   31125         parameter to determine which mouse button is pressed.
   31126 
   31127 2006-10-02  Steve Falkenburg  <sfalken (a] apple.com>
   31128 
   31129         Reviewed by Hyatt.
   31130 
   31131         <rdar://4757387> (partial fix) Unable to sign on to my.yahoo.com
   31132         <rdar://4757405> (partial fix) Unable to log onto secure site (www.schwab.com)
   31133         <rdar://4757411> (partial fix) Unable to log onto any AppleConnect site (but using back and resubmiting works)
   31134 
   31135         WinInet fixes.
   31136         Don't post data using HTTP when HTTPS should be used.
   31137         Fix redirect from POST to GET case.
   31138         
   31139         There is a remaining bug with the way that we queue WinInet callbacks
   31140         still to be addressed.
   31141 
   31142         * platform/win/ResourceLoaderWin.cpp:
   31143         (WebCore::addToOutstandingJobs): Skip dwContext of 0 (rollover case).
   31144         (WebCore::ResourceLoaderWndProc): Call default wndproc properly.
   31145             Pass INTERNET_FLAG_SECURE when necessary for HTTPS.
   31146             Fix redirect code.
   31147             Initialize buffers struct.
   31148             Pass proper context in InternetReadFileExA
   31149         (WebCore::initializeOffScreenResourceLoaderWindow): Init a struct to {0} instead of using memset.
   31150         (WebCore::transferJobStatusCallback): Prevent future bugs by making an else a bit more explicit.
   31151         (WebCore::ResourceLoader::start): Pass proper port for HTTP vs. HTTPS.
   31152         (WebCore::ResourceLoader::cancel): Zero out handle when closing.
   31153 
   31154 2006-10-01  Dave Hyatt  <hyatt (a] apple.com>
   31155 
   31156         Finish the scrollbar.  Handle arrow and track scrolling.  Everything is finished now except for implementing a Win2k look.
   31157 
   31158         * platform/win/PlatformScrollBar.h:
   31159         * platform/win/PlatformScrollBarWin.cpp:
   31160         (WebCore::PlatformScrollBar::PlatformScrollBar):
   31161         (WebCore::PlatformScrollBar::~PlatformScrollBar):
   31162         (WebCore::PlatformScrollBar::thumbRect):
   31163         (WebCore::PlatformScrollBar::handleMouseMoveEvent):
   31164         (WebCore::PlatformScrollBar::handleMousePressEvent):
   31165         (WebCore::PlatformScrollBar::handleMouseReleaseEvent):
   31166         (WebCore::PlatformScrollBar::startTimerIfNeeded):
   31167         (WebCore::PlatformScrollBar::stopTimerIfNeeded):
   31168         (WebCore::PlatformScrollBar::autoscrollPressedPart):
   31169         (WebCore::PlatformScrollBar::autoscrollTimerFired):
   31170         (WebCore::PlatformScrollBar::pressedPartScrollDirection):
   31171         (WebCore::PlatformScrollBar::pressedPartScrollGranularity):
   31172         (WebCore::PlatformScrollBar::thumbUnderMouse):
   31173 
   31174 2006-10-01  Dave Hyatt  <hyatt (a] apple.com>
   31175         
   31176         Make thumb dragging work on the scrollbar.
   31177         
   31178         Fix mouse and wheel events to use GET_X_LPARAM and GET_Y_LPARAM so that negative coordinates work.
   31179         (This comes up when a widget is capturing events and the mouse moves outside the HWND.)
   31180         
   31181         * platform/win/PlatformMouseEventWin.cpp:
   31182         (WebCore::positionForEvent):
   31183         (WebCore::globalPositionForEvent):
   31184         * platform/win/PlatformScrollBar.h:
   31185         * platform/win/PlatformScrollBarWin.cpp:
   31186         (WebCore::PlatformScrollBar::PlatformScrollBar):
   31187         (WebCore::PlatformScrollBar::handleMouseMoveEvent):
   31188         (WebCore::PlatformScrollBar::handleMousePressEvent):
   31189         (WebCore::PlatformScrollBar::handleMouseReleaseEvent):
   31190         (WebCore::PlatformScrollBar::startTimerIfNeeded):
   31191         (WebCore::PlatformScrollBar::stopTimerIfNeeded):
   31192         * platform/win/WheelEventWin.cpp:
   31193         (WebCore::positionForEvent):
   31194         (WebCore::globalPositionForEvent):
   31195 
   31196 2006-10-01  Dave Hyatt  <hyatt (a] apple.com>
   31197 
   31198         Hook up the mouse capture architecture so that child widgets capture events while the mouse is pressed.
   31199         
   31200         Hook up tracking the pressed object on a scrollbar and proper painting of the scrollbar's
   31201         pressed state.
   31202         
   31203         * bridge/win/FrameViewWin.cpp:
   31204         (WebCore::FrameView::passMousePressEventToSubframe):
   31205         (WebCore::FrameView::passMousePressEventToScrollbar):
   31206         * platform/win/PlatformScrollBar.h:
   31207         * platform/win/PlatformScrollBarWin.cpp:
   31208         (WebCore::PlatformScrollBar::PlatformScrollBar):
   31209         (WebCore::PlatformScrollBar::paintButton):
   31210         (WebCore::PlatformScrollBar::paintTrack):
   31211         (WebCore::PlatformScrollBar::paintThumb):
   31212         (WebCore::PlatformScrollBar::paintGripper):
   31213         (WebCore::PlatformScrollBar::handleMouseMoveEvent):
   31214         (WebCore::PlatformScrollBar::handleMousePressEvent):
   31215         (WebCore::PlatformScrollBar::handleMouseReleaseEvent):
   31216         * platform/win/WidgetWin.cpp:
   31217         (WebCore::Widget::setCapturingChild):
   31218 
   31219 2006-09-30  Dave Hyatt  <hyatt (a] apple.com>
   31220 
   31221         This patch makes iframes and frames able to receive mouse events.  Down, up, click, selection
   31222         all work.  This patch also fixes bugs in scrolling and makes wheel events work on iframes.
   31223         A capturing system for routing events to the proper subwidget when the mouse has down
   31224         is also stubbed out (but not yet used).
   31225         
   31226         Reviewed by andersca
   31227 
   31228         * WebCore.vcproj/WebCore.vcproj:
   31229         * bridge/win/FrameViewWin.cpp: Added.
   31230         (WebCore::FrameView::passMousePressEventToSubframe):
   31231         (WebCore::FrameView::passMouseMoveEventToSubframe):
   31232         (WebCore::FrameView::passMouseReleaseEventToSubframe):
   31233         (WebCore::FrameView::passWheelEventToSubframe):
   31234         * bridge/win/FrameWin.cpp:
   31235         * bridge/win/FrameWin.h:
   31236         * platform/win/PlatformScrollBar.h:
   31237         * platform/win/PlatformScrollBarWin.cpp:
   31238         (WebCore::PlatformScrollBar::handleMouseMoveEvent):
   31239         (WebCore::PlatformScrollBar::handleMouseOutEvent):
   31240         (WebCore::PlatformScrollBar::handleMouseReleaseEvent):
   31241         * platform/win/ScrollViewWin.cpp:
   31242         (WebCore::ScrollView::visibleContentRect):
   31243         (WebCore::ScrollView::scrollBy):
   31244         (WebCore::ScrollView::removeChild):
   31245         * platform/win/TemporaryLinkStubs.cpp:
   31246         (FrameWin::print):
   31247         (FrameWin::lastEventIsMouseUp):
   31248         * platform/win/WidgetWin.cpp:
   31249         (WebCore::Widget::Widget):
   31250         (WebCore::Widget::capturingMouse):
   31251         (WebCore::Widget::setCapturingMouse):
   31252         (WebCore::Widget::capturingTarget):
   31253         (WebCore::Widget::capturingChild):
   31254         (WebCore::Widget::setCapturingChild):
   31255 
   31256 2006-09-29  Steve Falkenburg  <sfalken (a] apple.com>
   31257 
   31258         Fix the build.
   31259 
   31260         * platform/win/PlatformScrollBarWin.cpp:
   31261 
   31262 2006-09-29  Adele Peterson  <adele (a] apple.com>
   31263 
   31264         Adding RenderListBox files.
   31265 
   31266         * WebCore.vcproj/WebCore.vcproj:
   31267 
   31268 2006-09-29  Adele Peterson  <adele (a] apple.com>
   31269 
   31270         Reviewed by Adam.
   31271 
   31272         Updated constructor for PlatformScrollBar to include controlSize argument.
   31273 
   31274         * platform/win/PlatformScrollBar.h:
   31275         * platform/win/PlatformScrollBarWin.cpp:
   31276         (WebCore::PlatformScrollBar::PlatformScrollBar):
   31277 
   31278 2006-09-29  Adam Roben  <aroben (a] apple.com>
   31279 
   31280         Reviewed by hyatt.
   31281 
   31282         Add error logging to plugin code.
   31283 
   31284         * WebCore.vcproj/WebCore.vcproj: Added PluginDebug.h
   31285         * platform/win/NotImplemented.h: Add surrounding #ifndef/#endif
   31286         * plugins/win/PluginDebug.h: Added.
   31287         * plugins/win/PluginPackageWin.cpp: Add error logging
   31288         (WebCore::PluginPackageWin::load):
   31289         * plugins/win/PluginStreamWin.cpp: Ditto.
   31290         (WebCore::PluginStreamWin::startStream):
   31291         (WebCore::PluginStreamWin::destroyStream):
   31292         (WebCore::PluginStreamWin::deliverData):
   31293         (WebCore::PluginStreamWin::receivedAllData):
   31294         * plugins/win/PluginViewWin.cpp: Ditto.
   31295         (WebCore::PluginViewWin::start):
   31296         (WebCore::PluginViewWin::stop):
   31297         (WebCore::PluginViewWin::newStream):
   31298         (WebCore::PluginViewWin::write):
   31299         (WebCore::PluginViewWin::destroyStream):
   31300 
   31301 2006-09-29  Dave Hyatt  <hyatt (a] apple.com>
   31302 
   31303         Fork MouseEventWin.cpp into (the better-named) PlatformMouseEventWin.cpp.
   31304         
   31305         * WebCore.vcproj/WebCore.vcproj:
   31306         * platform/win/PlatformMouseEventWin.cpp: Added.
   31307 
   31308 2006-09-28  Dave Hyatt  <hyatt (a] apple.com>
   31309 
   31310         Make scrollbars scroll correctly when setValue is called.  Needed to do float math instead of integer
   31311         math (and also fix some buggy math when computing the thumb position).
   31312  
   31313         * platform/win/PlatformScrollBarWin.cpp:
   31314         (WebCore::PlatformScrollBar::thumbPosition):
   31315 
   31316 2006-09-28  Dave Hyatt  <hyatt (a] apple.com>
   31317 
   31318         Make scrollbars on Win32 respond to hover events.  The thumb and arrow buttons will now properly hover when
   31319         the mouse enters and exits them.
   31320         
   31321         * platform/win/PlatformScrollBar.h:
   31322         * platform/win/PlatformScrollBarWin.cpp:
   31323         (WebCore::PlatformScrollBar::invalidatePart):
   31324         (WebCore::PlatformScrollBar::paintButton):
   31325         (WebCore::PlatformScrollBar::paintTrack):
   31326         (WebCore::PlatformScrollBar::paintThumb):
   31327         (WebCore::PlatformScrollBar::paintGripper):
   31328         (WebCore::PlatformScrollBar::hitTest):
   31329         (WebCore::PlatformScrollBar::mouseMoved):
   31330         (WebCore::PlatformScrollBar::mouseExited):
   31331 
   31332 2006-09-28  Steve Falkenburg  <sfalken (a] apple.com>
   31333 
   31334         Reviewed by Maciej.
   31335 
   31336         Use $(ConfigSuffix) set via vsprops files to add _debug
   31337         to end of debug filenames.
   31338 
   31339         Update B&I build script.
   31340 
   31341         * WebCore.vcproj/WebCore.make:
   31342         * WebCore.vcproj/WebCore.vcproj:
   31343         * WebCore.vcproj/debug.vsprops: Added.
   31344         * WebCore.vcproj/release.vsprops: Added.
   31345 
   31346 2006-09-28  Adam Roben  <aroben (a] apple.com>
   31347 
   31348         Reviewed by Hyatt.
   31349 
   31350         Avoid creating LOGFONTs for bitmap fonts under CG, since we don't
   31351         support them anyway.
   31352 
   31353         * platform/win/FontCacheWin.cpp:
   31354         (WebCore::FontCache::createFontPlatformData): Set lfOutPrecision to
   31355         OUT_TT_ONLY_PRECIS to avoid bitmap fonts.
   31356         * platform/win/FontPlatformDataWin.cpp:
   31357         (WebCore::FontPlatformData::FontPlatformData): Change the LOG_ERROR
   31358         back to an ASSERT since we should never reach this condition now.
   31359 
   31360 2006-09-28  Dave Hyatt  <hyatt (a] apple.com>
   31361 
   31362         This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
   31363         ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
   31364         view.
   31365        
   31366         Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
   31367         the patch after review, once I realized that these new functions essentially do the same thing.)
   31368 
   31369         * platform/win/ScrollViewWin.cpp:
   31370         (WebCore::ScrollView::updateContents):
   31371         (WebCore::ScrollView::convertToContainingWindow):
   31372         (WebCore::ScrollView::convertFromContainingWindow):
   31373         (WebCore::ScrollView::scrollBy):
   31374         * platform/win/WidgetWin.cpp:
   31375         (WebCore::Widget::convertToContainingWindow):
   31376         (WebCore::Widget::convertFromContainingWindow):
   31377 
   31378 2006-09-28  Adam Roben  <aroben (a] apple.com>
   31379 
   31380         Reviewed by Anders.
   31381 
   31382         Fail without crashing and log an error when CG encounters a bitmap
   31383         font.
   31384 
   31385         * platform/win/FontPlatformDataWin.cpp:
   31386         (WebCore::FontPlatformData::FontPlatformData): Trade LOG_ERROR for
   31387         ASSERT_WITH_MESSAGE
   31388 
   31389 2006-09-27  Alice Liu  <alice.liu (a] apple.com>
   31390 
   31391         Reviewed by Steve & Adam.
   31392 
   31393         * WebCore.vcproj/WebCore.vcproj:
   31394         Added files to the project file
   31395         * platform/win/TemporaryLinkStubs.cpp:
   31396         Removed stub for findWordBoundary
   31397         * platform/win/TextBoundariesWin.cpp: Added.
   31398         Implemented cross-platform findWordBoundary.  We're still keeping the mac one intact for now. 
   31399         (WebCore::findWordBoundary):
   31400 
   31401 2006-09-28  Adam Roben  <aroben (a] apple.com>
   31402 
   31403         Reviewed by Adele.
   31404 
   31405         Remove never-to-be-used PopUpButton
   31406 
   31407         * WebCore.vcproj/WebCore.vcproj: Remove PopUpButton.h
   31408         * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
   31409 
   31410 2006-09-28  Adam Roben  <aroben (a] apple.com>
   31411 
   31412         Reviewed by Alice.
   31413 
   31414         Replace notImplemented() with LOG_NOIMPL() and STOP_NOIMPL() macros
   31415         which generate debug output. STOP_NOIMPL() also generates a debug
   31416         break. Replace calls to notImplemented() with
   31417         LOG_NOIMPL()/STOP_NOIMPL() as appropriate. This should stop some unnecessary
   31418         crashes where notImplemented() was called from a method that can fail
   31419         safely.
   31420 
   31421         * WebCore.vcproj/WebCore.vcproj: Added NotImplemented.h
   31422         * platform/win/FontWin.cpp: Use LOG_NOIMPL() instead of notImplemented().
   31423         (WebCore::Font::selectionRectForComplexText):
   31424         (WebCore::Font::drawComplexText):
   31425         (WebCore::Font::floatWidthForComplexText):
   31426         (WebCore::Font::offsetForPositionForComplexText):
   31427         * platform/win/NotImplemented.h: Added. Contains new LOG_NOIMPL() and
   31428         STOP_NOIMPL() macros.
   31429         * platform/win/TemporaryLinkStubs.cpp: Use LOG_NOIMPL() and
   31430         STOP_NOIMPL() instead of notImplemented() or nothing.
   31431         (PopUpButton::focusPolicy):
   31432         (PopUpButton::populate):
   31433         (Widget::enableFlushDrawing):
   31434         (Widget::focusPolicy):
   31435         (Widget::disableFlushDrawing):
   31436         (Widget::lockDrawingFocus):
   31437         (Widget::unlockDrawingFocus):
   31438         (JavaAppletWidget::JavaAppletWidget):
   31439         (TextField::selectAll):
   31440         (TextField::addSearchResult):
   31441         (TextField::selectionStart):
   31442         (TextField::hasSelectedText):
   31443         (TextField::selectedText):
   31444         (TextField::setAutoSaveName):
   31445         (TextField::checksDescendantsForFocus):
   31446         (TextField::setSelection):
   31447         (TextField::setMaxResults):
   31448         (TextField::edited):
   31449         (Slider::Slider):
   31450         (Slider::sizeHint):
   31451         (Slider::setValue):
   31452         (Slider::setMaxValue):
   31453         (Slider::setMinValue):
   31454         (Slider::~Slider):
   31455         (Slider::setFont):
   31456         (Slider::value):
   31457         (ListBox::sizeForNumberOfLines):
   31458         (ListBox::isSelected):
   31459         (ListBox::checksDescendantsForFocus):
   31460         (Slider::focusPolicy):
   31461         (ListBox::focusPolicy):
   31462         (TextField::focusPolicy):
   31463         (Cursor::Cursor):
   31464         (PlatformMouseEvent::PlatformMouseEvent):
   31465         (WebCore::searchableIndexIntroduction):
   31466         (WebCore::findNextSentenceFromIndex):
   31467         (WebCore::findSentenceBoundary):
   31468         (WebCore::findNextWordFromIndex):
   31469         (WebCore::ServeSynchronousRequest):
   31470         (FrameWin::focusWindow):
   31471         (FrameWin::unfocusWindow):
   31472         (FrameWin::locationbarVisible):
   31473         (FrameWin::registerCommandForRedo):
   31474         (FrameWin::getObjectInstanceForWidget):
   31475         (FrameWin::getEmbedInstanceForWidget):
   31476         (FrameWin::getAppletInstanceForWidget):
   31477         (FrameWin::canRedo):
   31478         (FrameWin::canUndo):
   31479         (FrameWin::canPaste):
   31480         (FrameWin::canGoBackOrForward):
   31481         (FrameWin::shouldInterruptJavaScript):
   31482         (FrameWin::openURL):
   31483         (FrameWin::print):
   31484         (FrameWin::passMouseDownEventToWidget):
   31485         (FrameWin::issueCutCommand):
   31486         (FrameWin::issueCopyCommand):
   31487         (FrameWin::issuePasteCommand):
   31488         (FrameWin::issueUndoCommand):
   31489         (FrameWin::issueRedoCommand):
   31490         (FrameWin::issuePasteAndMatchStyleCommand):
   31491         (FrameWin::issueTransposeCommand):
   31492         (FrameWin::passWheelEventToChildWidget):
   31493         (FrameWin::mimeTypeForFileName):
   31494         (FrameWin::scheduleClose):
   31495         (FrameWin::markMisspellings):
   31496         (FrameWin::menubarVisible):
   31497         (FrameWin::personalbarVisible):
   31498         (FrameWin::statusbarVisible):
   31499         (FrameWin::toolbarVisible):
   31500         (FrameWin::originalRequestURL):
   31501         (FrameWin::isLoadTypeReload):
   31502         (BrowserExtensionWin::canRunModal):
   31503         (BrowserExtensionWin::createNewWindow):
   31504         (BrowserExtensionWin::canRunModalNow):
   31505         (BrowserExtensionWin::runModal):
   31506         (BrowserExtensionWin::goBackOrForward):
   31507         (BrowserExtensionWin::historyURL):
   31508         (GraphicsContext::addRoundedRectClip):
   31509         (GraphicsContext::addInnerRoundedRectClip):
   31510         (WebCore::screenDepthPerComponent):
   31511         (WebCore::screenIsMonochrome):
   31512         (WebCore::moveCursor):
   31513         (WebCore::inputElementAltText):
   31514         (WebCore::findWordBoundary):
   31515         (WebCore::ResourceLoader::assembleResponseHeaders):
   31516         (WebCore::ResourceLoader::retrieveCharset):
   31517         (FrameView::updateBorder):
   31518         (FrameWin::restoreDocumentState):
   31519         (FrameWin::partClearedInBegin):
   31520         (FrameWin::createEmptyDocument):
   31521         (FrameWin::overrideMediaType):
   31522         (FrameWin::markedTextRange):
   31523         (FrameWin::addMessageToConsole):
   31524         (FrameWin::shouldChangeSelection):
   31525         (FrameWin::respondToChangedSelection):
   31526         (FrameWin::saveDocumentState):
   31527         (FrameWin::registerCommandForUndo):
   31528         (FrameWin::clearUndoRedoOperations):
   31529         (FrameWin::incomingReferrer):
   31530         (FrameWin::markMisspellingsInAdjacentWords):
   31531         (FrameWin::respondToChangedContents):
   31532         (BrowserExtensionWin::BrowserExtensionWin):
   31533         (BrowserExtensionWin::setTypedIconURL):
   31534         (BrowserExtensionWin::setIconURL):
   31535         (BrowserExtensionWin::getHistoryLength):
   31536         (WebCore::CheckIfReloading):
   31537         (WebCore::CheckCacheObjectStatus):
   31538         (Widget::setIsSelected):
   31539         (ScrollView::inWindow):
   31540         (ScrollView::scrollPointRecursively):
   31541         (GraphicsContext::setShadow):
   31542         (GraphicsContext::clearShadow):
   31543         (GraphicsContext::beginTransparencyLayer):
   31544         (GraphicsContext::endTransparencyLayer):
   31545         (GraphicsContext::clearRect):
   31546         (GraphicsContext::strokeRect):
   31547         (GraphicsContext::setLineWidth):
   31548         (GraphicsContext::setLineCap):
   31549         (GraphicsContext::setLineJoin):
   31550         (GraphicsContext::setMiterLimit):
   31551         (GraphicsContext::setAlpha):
   31552         (GraphicsContext::clip):
   31553         (GraphicsContext::rotate):
   31554         (GraphicsContext::scale):
   31555         (Path::Path):
   31556         (Path::~Path):
   31557         (Path::contains):
   31558         (Path::translate):
   31559         (Path::boundingRect):
   31560         (Path::operator=):
   31561         (Path::clear):
   31562         (Path::moveTo):
   31563         (Path::addLineTo):
   31564         (Path::addQuadCurveTo):
   31565         (Path::addBezierCurveTo):
   31566         (Path::addArcTo):
   31567         (Path::closeSubpath):
   31568         (Path::addArc):
   31569         (Path::addRect):
   31570         (Path::addEllipse):
   31571         (GraphicsContext::drawFocusRing):
   31572         (GraphicsContext::drawLineForMisspelling):
   31573         (GraphicsContext::setCompositeOperation):
   31574         (TextField::TextField):
   31575         (TextField::~TextField):
   31576         (TextField::setFont):
   31577         (TextField::setAlignment):
   31578         (TextField::setWritingDirection):
   31579         (TextField::maxLength):
   31580         (TextField::setMaxLength):
   31581         (TextField::text):
   31582         (TextField::setText):
   31583         (TextField::cursorPosition):
   31584         (TextField::setCursorPosition):
   31585         (TextField::setEdited):
   31586         (TextField::setReadOnly):
   31587         (TextField::setPlaceholderString):
   31588         (TextField::setColors):
   31589         (TextField::sizeForCharacterWidth):
   31590         (TextField::baselinePosition):
   31591         (TextField::setLiveSearch):
   31592         (PopUpButton::PopUpButton):
   31593         (PopUpButton::~PopUpButton):
   31594         (PopUpButton::setFont):
   31595         (PopUpButton::baselinePosition):
   31596         (PopUpButton::setWritingDirection):
   31597         (PopUpButton::clear):
   31598         (PopUpButton::appendItem):
   31599         (PopUpButton::setCurrentItem):
   31600         (PopUpButton::sizeHint):
   31601         (PopUpButton::frameGeometry):
   31602         (PopUpButton::setFrameGeometry):
   31603         (ListBox::ListBox):
   31604         (ListBox::~ListBox):
   31605         (ListBox::setSelectionMode):
   31606         (ListBox::setFont):
   31607         (ListBox::setWritingDirection):
   31608         (ListBox::clear):
   31609         (ListBox::doneAppendingItems):
   31610         (ListBox::setEnabled):
   31611         (ListBox::appendItem):
   31612         (ListBox::setSelected):
   31613         (WebCore::focusRingColor):
   31614         (WebCore::setFocusRingColorChangeFunction):
   31615         (Frame::setNeedsReapplyStyles):
   31616         (Image::drawTiled):
   31617         (RenderPopupMenuWin::addSeparator):
   31618         (RenderPopupMenuWin::addGroupLabel):
   31619         (IconLoader::receivedResponse):
   31620         (IconLoader::notifyIconChanged):
   31621         * plugins/win/PluginViewWin.cpp:
   31622         (WebCore::PluginViewWin::setValue):
   31623 
   31624 2006-09-28  Adam Roben  <aroben (a] apple.com>
   31625 
   31626         Rubberstamped by sfalken.
   31627 
   31628         Remove calls to DebugBreak() from plugin code.
   31629 
   31630         * plugins/win/PluginViewWin.cpp:
   31631         (WebCore::PluginViewWin::getValue):
   31632         (WebCore::PluginViewWin::setValue):
   31633 
   31634 2006-09-28  Dave Hyatt  <hyatt (a] apple.com>
   31635 
   31636         Eliminate the use of MapWindowPoints on Win32. Just use the outermost HWND as the point of reference for events.  
   31637         
   31638         Stub out the mouse methods from the open source checkin and add a new member variable to track the current hovered scrollbar part.
   31639 
   31640         * platform/win/PlatformScrollBar.h:
   31641         (WebCore::):
   31642         * platform/win/PlatformScrollBarWin.cpp:
   31643         (WebCore::PlatformScrollBar::PlatformScrollBar):
   31644         (WebCore::PlatformScrollBar::mouseMoved):
   31645         (WebCore::PlatformScrollBar::mouseExited):
   31646         * platform/win/ScrollViewWin.cpp:
   31647         (WebCore::ScrollView::viewportToContents):
   31648         (WebCore::ScrollView::contentsToViewport):
   31649         * platform/win/WheelEventWin.cpp:
   31650         (WebCore::positionForEvent):
   31651 
   31652 2006-09-27  Steve Falkenburg  <sfalken (a] apple.com>
   31653 
   31654         Reviewed by Maciej.
   31655 
   31656         Prefer pulling project dependencies from WebKitOutputDir over
   31657         WebKitSDKDir.  Don't copy build output back over to WebKitSDKDir.
   31658 
   31659         * WebCore.vcproj/WebCore.vcproj:
   31660         * WebCore.vcproj/build-generated-files.sh:
   31661         * WebCore.vcproj/dstroot-to-sdk.cmd: Removed.
   31662 
   31663 2006-09-27  Steve Falkenburg  <sfalken (a] apple.com>
   31664 
   31665         B&I build fixes
   31666 
   31667         * WebCore.vcproj/WebCore.make:
   31668         * WebCore.vcproj/WebCore.vcproj:
   31669         * WebCore.vcproj/build-generated-files.sh:
   31670 
   31671 2006-09-27  Adam Roben  <aroben (a] apple.com>
   31672 
   31673         Reviewed by sfalken.
   31674 
   31675         Don't die when plugins try to open a new window.
   31676 
   31677         * plugins/win/PluginViewWin.cpp:
   31678         (WebCore::PluginViewWin::performRequest): Remove call to DebugBreak()
   31679 
   31680 2006-09-27  Steve Falkenburg  <sfalken (a] apple.com>
   31681 
   31682         B&I build script tweaks.
   31683 
   31684         * WebCore.vcproj/WebCore.make:
   31685 
   31686 2006-09-27  Steve Falkenburg  <sfalken (a] apple.com>
   31687 
   31688         Reviewed by Hyatt.
   31689 
   31690         Turn on CG
   31691 
   31692         * config.h:
   31693 
   31694 2006-09-27  Adam Roben  <aroben (a] apple.com>
   31695 
   31696         Reviewed by Lou.
   31697 
   31698         Fix crash in plugins due to Flash on nytimes.com
   31699 
   31700         * plugins/win/PluginStreamWin.cpp:
   31701         (WebCore::PluginStreamWin::PluginStreamWin): memset m_stream to 0
   31702 
   31703 2006-09-27  Adam Roben  <aroben (a] apple.com>
   31704 
   31705         Reviewed by sfalken.
   31706 
   31707         Scroll plugins (at least in some cases).
   31708 
   31709         * platform/win/ScrollViewWin.cpp:
   31710         (WebCore::ScrollView::scrollBy): Pass SW_SCROLLCHILDREN to ScrollWindowEx()
   31711 
   31712 2006-09-27  Steve Falkenburg  <sfalken (a] apple.com>
   31713 
   31714         Reviewed by Adam.
   31715 
   31716         Remove unimplemented from a temporary link stub.
   31717 
   31718         * platform/win/TemporaryLinkStubs.cpp:
   31719         (GraphicsContext::addInnerRoundedRectClip):
   31720 
   31721 2006-09-27  Sean Gies  <seangies (a] apple.com>
   31722 
   31723         Reviewed by Brady Eidson.
   31724 
   31725         * WebCore.vcproj/WebCore.vcproj: Added platform/win/WebCoreSystemInterface.h/cpp
   31726         * platform/win/WebCoreSystemInterface.cpp: Added.
   31727         * platform/win/WebCoreSystemInterface.h: Added.
   31728 
   31729 2006-09-26  Adam Roben  <aroben (a] apple.com>
   31730 
   31731         Reviewed by sfalken.
   31732 
   31733         Fixes <rdar://problem/4751600>
   31734         Hang on Amazon.com involving Flash
   31735 
   31736         * plugins/win/PluginStreamWin.cpp: Rename m_streamStarted to
   31737         m_isTerminated to match Mac code (m_isTerminated is the negation of
   31738         m_streamStarted)
   31739         (WebCore::PluginStreamWin::PluginStreamWin): Initialize m_isTerminated
   31740         to false to match Mac code.
   31741         (WebCore::PluginStreamWin::~PluginStreamWin): Rename and negate.
   31742         (WebCore::PluginStreamWin::stop): Remove assignment of m_streamStarted
   31743         to match Mac code.
   31744         (WebCore::PluginStreamWin::startStream): Rename and negate. Remove
   31745         now-unnecessary assignment of m_streamStarted to true because we set
   31746         m_isTerminated to false in the constructor.
   31747         (WebCore::PluginStreamWin::destroyStream): Rename and negate.
   31748         * plugins/win/PluginStreamWin.h: Rename m_streamStarted to
   31749         m_isTerminated.
   31750         * plugins/win/PluginViewWin.cpp:
   31751         (WebCore::PluginViewWin::performRequest): Send the correct response URL
   31752         to the plugin.
   31753 
   31754 2006-09-26  Steve Falkenburg  <sfalken (a] apple.com>
   31755 
   31756         More temporary link stubs moved.
   31757         Build tweaks.
   31758 
   31759         * ChangeLog:
   31760         * WebCore.vcproj/WebCore.make: Added.
   31761         * WebCore.vcproj/WebCore.vcproj:
   31762         * platform/win/TemporaryLinkStubs.cpp:
   31763         (ListBox::isSelected):
   31764         (ListBox::setWritingDirection):
   31765         (ListBox::clear):
   31766         (ListBox::doneAppendingItems):
   31767         (ListBox::setEnabled):
   31768         (ListBox::appendItem):
   31769         (ListBox::setSelected):
   31770 
   31771 2006-09-26  Sean Gies  <seangies (a] apple.com>
   31772 
   31773         Reviewed by Brady Eidson.
   31774 
   31775         * platform/win/GraphicsContextWin.cpp:
   31776         (WebCore::CGContextWithHDC):  Make a static function.
   31777         (WebCore::GraphicsContext::getWindowsContext): Assume flipped coordinates.
   31778 
   31779 2006-09-26  Brady Eidson  <beidson (a] apple.com>
   31780 
   31781         Nuked another notImplemented() that is getting hit
   31782 
   31783         * platform/win/TemporaryLinkStubs.cpp:
   31784         (GraphicsContext::addRoundedRectClip):
   31785 
   31786 2006-09-26  Sean Gies  <seangies (a] apple.com>
   31787 
   31788         Reviewed by Adam Roben.
   31789 
   31790         * WebCore.vcproj/WebCore.vcproj: Use Debug DLL C runtime for debug config.
   31791 
   31792 2006-09-26  Lou Amadio  <lamadio (a] apple.com>
   31793 
   31794         Reviewed by ggaren
   31795         Uninitialized variable caused a memory corruption on cnn.com
   31796 
   31797         WARNING: NO TEST CASES ADDED OR CHANGED
   31798 
   31799         * plugins/win/PlugInInfoStoreWin.cpp:
   31800         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
   31801 
   31802 2006-09-26  Dave Hyatt  <hyatt (a] apple.com>
   31803 
   31804         Fix my buggy invalidateRect implementation for Win32 widgets.
   31805         
   31806         Clean up my rect computation code in scrollbar to use x() and y() instead of
   31807         frameGeometry().x()/y().
   31808         
   31809         Add a new invalidateTrack() method that invalidates the track (and handles
   31810         putting the rect into the right coordinate space for proper invalidation
   31811         now that I fixed invalidateRect).
   31812 
   31813         * platform/win/PlatformScrollBar.h:
   31814         * platform/win/PlatformScrollBarWin.cpp:
   31815         (WebCore::PlatformScrollBar::updateThumbPosition):
   31816         (WebCore::PlatformScrollBar::updateThumbProportion):
   31817         (WebCore::PlatformScrollBar::invalidateTrack):
   31818         (WebCore::PlatformScrollBar::backButtonRect):
   31819         (WebCore::PlatformScrollBar::forwardButtonRect):
   31820         (WebCore::PlatformScrollBar::trackRect):
   31821         * platform/win/WidgetWin.cpp:
   31822         (WebCore::Widget::invalidate):
   31823 
   31824 2006-09-26  Dave Hyatt  <hyatt (a] apple.com>
   31825 
   31826         Teach all our Win32 theme code (RenderTheme and PlatformScrollBar) how to respond correctly to OS theme changes.
   31827         
   31828         Implement painting of scrollbars using theme APIs.  The arrow buttons, track, thumb and gripper all paint properly
   31829         now.  Next up is hit testing and proper hover feedback.
   31830         
   31831         Reviewed by andersca
   31832         
   31833         * platform/win/PlatformScrollBar.h:
   31834         * platform/win/PlatformScrollBarWin.cpp:
   31835         (WebCore::PlatformScrollBar::PlatformScrollBar):
   31836         (WebCore::PlatformScrollBar::paint):
   31837         (WebCore::PlatformScrollBar::backButtonRect):
   31838         (WebCore::PlatformScrollBar::forwardButtonRect):
   31839         (WebCore::PlatformScrollBar::trackRect):
   31840         (WebCore::PlatformScrollBar::gripperRect):
   31841         (WebCore::PlatformScrollBar::splitTrack):
   31842         (WebCore::PlatformScrollBar::thumbPosition):
   31843         (WebCore::PlatformScrollBar::thumbLength):
   31844         (WebCore::PlatformScrollBar::paintButton):
   31845         (WebCore::PlatformScrollBar::paintTrack):
   31846         (WebCore::PlatformScrollBar::paintThumb):
   31847         (WebCore::PlatformScrollBar::paintGripper):
   31848         (WebCore::PlatformScrollBar::themeChanged):
   31849         * platform/win/ScrollViewWin.cpp:
   31850         (WebCore::ScrollView::themeChanged):
   31851         * platform/win/TemporaryLinkStubs.cpp:
   31852         (Widget::enableFlushDrawing):
   31853         * platform/win/WidgetWin.cpp:
   31854         (WebCore::Widget::isEnabled):
   31855         * rendering/RenderThemeWin.cpp:
   31856         (WebCore::RenderThemeWin::RenderThemeWin):
   31857         (WebCore::RenderThemeWin::openButtonTheme):
   31858         (WebCore::RenderThemeWin::openTextFieldTheme):
   31859         (WebCore::RenderThemeWin::openMenuListTheme):
   31860         (WebCore::RenderThemeWin::close):
   31861         (WebCore::RenderThemeWin::themeChanged):
   31862         * rendering/RenderThemeWin.h:
   31863 
   31864 2006-09-25  Adam Roben  <aroben (a] apple.com>
   31865 
   31866         Rubberstamped by sfalken.
   31867 
   31868         Set svn:eol-style to native and cleanup line endings on plugins files.
   31869 
   31870         * plugins/win/PluginStreamWin.cpp:
   31871         (WebCore::PluginStreamWin::PluginStreamWin):
   31872         (WebCore::PluginStreamWin::~PluginStreamWin):
   31873         (WebCore::PluginStreamWin::start):
   31874         (WebCore::PluginStreamWin::startStream):
   31875         (WebCore::PluginStreamWin::destroyStream):
   31876         (WebCore::PluginStreamWin::deliverData):
   31877         (WebCore::PluginStreamWin::receivedResponse):
   31878         (WebCore::PluginStreamWin::receivedData):
   31879         (WebCore::PluginStreamWin::receivedAllData):
   31880 
   31881 2006-09-25  Adam Roben  <aroben (a] apple.com>
   31882 
   31883         Reviewed by Brady.
   31884 
   31885         Fixes <rdar://problem/4749494>
   31886         Crash/ASSERT in plugins at Fark.com
   31887 
   31888         * platform/win/ResourceLoaderWin.cpp: Store whether a particular job
   31889         has received a response within the ResourceLoader object itself, since
   31890         it's possible that we will enter the InternetReadFileExA while loop
   31891         twice for the same job.
   31892         (WebCore::ResourceLoaderWndProc): Ask the job whether it has received a
   31893         response instead of assuming it hasn't.
   31894         (WebCore::ResourceLoader::setHasReceivedResponse): Added.
   31895         (WebCore::ResourceLoader::hasReceivedResponse): Added.
   31896 
   31897 2006-09-25  Adam Roben  <aroben (a] apple.com>
   31898 
   31899         Rubberstamped by sfalken.
   31900 
   31901         Continuing the removal of unnecessary notImplemented() calls.
   31902 
   31903         * platform/win/TemporaryLinkStubs.cpp:
   31904         (PlatformMouseEvent::PlatformMouseEvent):
   31905         (FrameWin::passWheelEventToChildWidget):
   31906 
   31907 2006-09-25  Adam Roben  <aroben (a] apple.com>
   31908 
   31909         Rubberstamped by sfalken.
   31910 
   31911         More notImplemented()-ectomy.
   31912 
   31913         * platform/win/TemporaryLinkStubs.cpp:
   31914         (RenderPopupMenuWin::addSeparator):
   31915         (RenderPopupMenuWin::addGroupLabel):
   31916 
   31917 2006-09-25  Adam Roben  <aroben (a] apple.com>
   31918 
   31919         Rubberstamped by sfalken.
   31920 
   31921         Remove calls to notImplemented() from functions that can fail safely.
   31922 
   31923         * platform/win/TemporaryLinkStubs.cpp:
   31924         (FrameWin::originalRequestURL):
   31925         (FrameWin::isLoadTypeReload):
   31926         (IconLoader::receivedResponse):
   31927         (IconLoader::notifyIconChanged):
   31928 
   31929 2006-09-25  Adam Roben  <aroben (a] apple.com>
   31930 
   31931         Rubberstamped by sfalken.
   31932 
   31933         Make notImplemented() crash even when not linked against the debug CRT.
   31934 
   31935         * platform/win/TemporaryLinkStubs.cpp:
   31936         (notImplemented): Change _CrtDbgBreak() to ASSERT(0)
   31937 
   31938 2006-09-24  Dave Hyatt  <hyatt (a] apple.com>
   31939 
   31940         Update the scrollbar API to match the changes in the public tree.
   31941         
   31942         Start implementing the Win32 scrollbar.  Add some scaffolding for grabbing uxtheme.dll info and also
   31943         add some utility functions for breaking the scrollbar into individual components.
   31944         
   31945         * platform/win/PlatformScrollBar.h:
   31946         * platform/win/PlatformScrollBarWin.cpp:
   31947         (WebCore::PlatformScrollBar::PlatformScrollBar):
   31948         (WebCore::PlatformScrollBar::updateThumbPosition):
   31949         (WebCore::PlatformScrollBar::updateThumbProportion):
   31950         (WebCore::PlatformScrollBar::paint):
   31951         (WebCore::PlatformScrollBar::backButtonRect):
   31952         (WebCore::PlatformScrollBar::forwardButtonRect):
   31953         (WebCore::PlatformScrollBar::trackRect):
   31954         (WebCore::PlatformScrollBar::splitTrack):
   31955 
   31956 2006-09-22  Steve Falkenburg  <sfalken (a] apple.com>
   31957 
   31958         Fix release build some more.
   31959 
   31960         * WebCore.vcproj/WebCore.vcproj:
   31961 
   31962 2006-09-22  Brady Eidson  <beidson (a] apple.com>
   31963 
   31964         Extremely urgent update to my last two patches (without it, many urls will fail to load)
   31965 
   31966         * platform/win/ResourceLoaderWin.cpp:
   31967         (WebCore::ResourceLoader::onRequestComplete):
   31968 
   31969 2006-09-22  Brady Eidson  <beidson (a] apple.com>
   31970 
   31971         Forgot some lines we needed to keep for the internal build in my last checkin
   31972 
   31973         * platform/win/ResourceLoaderWin.cpp:
   31974 
   31975 2006-09-22  Brady Eidson  <beidson (a] apple.com>
   31976 
   31977         Reviewed by Steve
   31978 
   31979         Landed from OpenSource - that version now supports Redirect like we need, and is a little cleaner design
   31980 
   31981         * platform/win/ResourceLoaderWin.cpp:
   31982         (WebCore::):
   31983         (WebCore::ResourceLoaderWndProc):
   31984         (WebCore::initializeOffScreenResourceLoaderWindow):
   31985         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
   31986         (WebCore::ResourceLoader::onHandleCreated):
   31987         (WebCore::ResourceLoader::onRequestRedirected):
   31988         (WebCore::ResourceLoader::onRequestComplete):
   31989         (WebCore::transferJobStatusCallback):
   31990         (WebCore::ResourceLoader::start):
   31991         (WebCore::ResourceLoader::fileLoadTimer):
   31992         (WebCore::ResourceLoader::cancel):
   31993 
   31994 2006-09-22  Dave Hyatt <hyatt (a] apple.com>
   31995 
   31996         Implement support for CSS2 system fonts on Win32.  Implement support for our special control font so that controls now
   31997         pick up the correct font from the system.  This fixes the crazy form control font sizes on e.g., www.google.com.
   31998 
   31999         * platform/win/TemporaryLinkStubs.cpp:
   32000         * rendering/RenderThemeWin.cpp:
   32001         (WebCore::fillFontDescription):
   32002         (WebCore::RenderThemeWin::systemFont):
   32003 
   32004 2006-09-22  Dave Hyatt <hyatt (a] apple.com>
   32005 
   32006         Scrollbar preparation work.
   32007         
   32008         (1) Add support for enabling/disabling widgets.
   32009         (2) Add support for invalidation of part or all of a widget.
   32010         (3) Clean up some of the Win32 scrollbar code.  All that's left is painting
   32011         and event handling. (Oh, is that all...) :)
   32012 
   32013         Reviewed by anders
   32014 
   32015         * platform/win/PlatformScrollBarWin.cpp:
   32016         (WebCore::PlatformScrollBar::setScrollBarValue):
   32017         (WebCore::PlatformScrollBar::setKnobProportion):
   32018         (WebCore::PlatformScrollBar::setEnabled):
   32019         (WebCore::PlatformScrollBar::paint):
   32020         * platform/win/TemporaryLinkStubs.cpp:
   32021         * platform/win/WidgetWin.cpp:
   32022         (WebCore::Widget::Widget):
   32023         (WebCore::Widget::setEnabled):
   32024         (WebCore::Widget::invalidate):
   32025         (WebCore::Widget::invalidateRect):
   32026 
   32027 2006-09-21  Brady Eidson <beidson (a] apple.com>
   32028 
   32029         Build was broken for at least some, and I think my checkin that messed with 
   32030         #include orders was to blame (and it was messy, broken or not) - this cleans that up
   32031 
   32032         * platform/win/ResourceLoaderWin.cpp:
   32033 
   32034 2006-09-21  Alice Liu  <alice.liu (a] apple.com>
   32035 
   32036         Reviewed by Hyatt.
   32037 
   32038         windows build fix
   32039 
   32040         * platform/win/GraphicsContextWin.cpp:
   32041         wrapped a CG #include in #if PLATFORM(CG)
   32042 
   32043 2006-09-21  Geoffrey Garen  <ggaren (a] apple.com>
   32044 
   32045         Reviewed by Maciej, Hyatt, Steve.
   32046     
   32047         frames!
   32048         
   32049         Prep work:
   32050             - moved ScrollViewWin into OpenSourceWin
   32051             - set eol-style:native on some files and corrected line endings
   32052             - updated the WebCore project so that you don't need cygwin in your Windows path
   32053               to build correctly.
   32054 
   32055         Real work:
   32056 
   32057             On Windows, Widgets are no longer interfaces to Windows UI tookit objects. They're 
   32058             just positioned objects.
   32059                 
   32060             Widgets position themselves relative to their parents. The top-level widget technically
   32061             has a position relative to the WebView, but that's academic, since it's always (0, 0).
   32062             All widgets draw inside a common containing window (the WebView window). ScrollView 
   32063             handles transformation, clipping, and dirty rect management.
   32064             
   32065             I've filed a bunch of bugs on remaining frames work. Most notably, closing a page with
   32066             a frame in it causes a crash because WebCore depends on WebKit to manage frame lifetime.
   32067             I'm going to fix that by integrating frame ownership into the DOM.
   32068             
   32069 2006-09-21  Steve Falkenburg  <sfalken (a] apple.com>
   32070 
   32071         Reviewed by Anders.
   32072         
   32073         <rdar://4516072>
   32074         <rdar://4601320>
   32075         
   32076         Implemented JavaScript alert/confirm/prompt inside app.
   32077         This is done via IWebUIDelegate.
   32078 
   32079         * bridge/win/FrameWin.cpp:
   32080         (WebCore::FrameWin::userAgent):
   32081         (WebCore::FrameWin::runJavaScriptAlert):
   32082         (WebCore::FrameWin::runJavaScriptConfirm):
   32083         (WebCore::FrameWin::runJavaScriptPrompt):
   32084         * bridge/win/FrameWin.h:
   32085         * platform/win/TemporaryLinkStubs.cpp:
   32086         (FrameWin::registerCommandForRedo):
   32087 
   32088 2006-09-21  Sean Gies  <seangies (a] apple.com>
   32089 
   32090         Reviewed by NOBODY.
   32091 
   32092         Unfork GraphicsContextCG.cpp.
   32093 
   32094         * WebCore.vcproj/WebCore.vcproj: Unfork GraphicsContextCG.cpp and add GraphicsContextWin.cpp
   32095         * platform/win/GraphicsContextWin.cpp: Added.
   32096 
   32097 2006-09-21  Luke Wallis  <wallis (a] apple.com>
   32098 
   32099         Rubber stamped by Steve.
   32100 
   32101         Added (commented out for now) defines for building on PLATFORM(CG).
   32102 
   32103         * config.h:
   32104 
   32105 2006-09-21  Luke Wallis <wallis (a] apple.com>
   32106 
   32107         Reviewed by Adam Roben.
   32108 
   32109         Fix build. Added #if PLATFORM(CG) around variable defined only for CG.
   32110 
   32111         * platform/win/FontDataWin.cpp:
   32112         (WebCore::FontData::platformInit):
   32113 
   32114 2006-09-21  Sean Gies  <seangies (a] apple.com>
   32115 
   32116         Reviewed by Adam Roben.
   32117 
   32118         Draw form controls when rendering with CG.
   32119 
   32120         * platform/cg/GraphicsContextCG.cpp:
   32121         (WebCore::CGContextWithHDC): New function to create CGContext given an HDC.
   32122         (WebCore::GraphicsContext::GraphicsContext): New constructor that takes an HDC.
   32123         (WebCore::GraphicsContext::getWindowsContext): Return underlying HDC to client.
   32124         (WebCore::GraphicsContext::releaseWindowsContext): Restore underlying HDC after client mucked with it.
   32125         * platform/cg/GraphicsContextPlatformPrivate.h: Add field to hold HDC.
   32126         * rendering/RenderThemeWin.cpp: Implement prepareForDrawing and doneDrawing for CG.
   32127 
   32128 2006-09-21  Anders Carlsson  <acarlsson (a] apple.com>
   32129 
   32130         Reviewed by Tim O.
   32131 
   32132         Support getting the plugin element as an NPObject.
   32133         
   32134         * plugins/win/PluginViewWin.cpp:
   32135         (WebCore::PluginViewWin::getValue):
   32136         (WebCore::PluginViewWin::PluginViewWin):
   32137         * plugins/win/PluginViewWin.h:
   32138 
   32139 2006-09-21  Sean Gies  <seangies (a] apple.com>
   32140 
   32141         Reviewed by Adam Roben.
   32142 
   32143         Forked GraphicsContextCG.cpp and GraphicsContextPlatformPrivate.h from open source #16504.
   32144 
   32145         * platform/cg/GraphicsContextCG.cpp: Added.
   32146         * platform/cg/GraphicsContextPlatformPrivate.h: Added.
   32147 
   32148 2006-09-21  Sean Gies  <seangies (a] apple.com>
   32149 
   32150         Reviewed by Adam Roben.
   32151 
   32152         Support synthetic bold and/or oblique with CG.
   32153 
   32154         * platform/win/FontCacheWin.cpp: Pass new arguments to updated FontPlatformData constructor.
   32155         * platform/win/FontDataWin.cpp:
   32156         (WebCore::FontData::platformInit): Choose synthetic bold offset.
   32157         (WebCore::FontData::platformWidthForGlyph): Take synthetic bold offset into account.
   32158         * platform/win/FontPlatformData.h: Add fields for synthetic styles.
   32159         * platform/win/FontPlatformDataWin.cpp: Ask HFONT if it supports bold or italics.
   32160         * platform/win/FontWin.cpp:
   32161         (WebCore::Font::drawGlyphs): Restore code for implementing synthetic stlyes.
   32162 
   32163 2006-09-21  Brady Eidson  <beidson (a] apple.com>
   32164 
   32165         Reviewed by Anders
   32166 
   32167         Fixed one definite bug and did alot of cleanup to make it resemble the unforked version of the file
   32168         in preparation for merging it back out
   32169 
   32170         * platform/win/ResourceLoaderWin.cpp:
   32171         (WebCore::ResourceLoaderWndProc):
   32172         (WebCore::transferJobStatusCallback): Fixed a bug here!  :)
   32173         (WebCore::ResourceLoader::start):
   32174         (WebCore::ResourceLoader::fileLoadTimer):
   32175         (WebCore::ResourceLoader::cancel):
   32176 
   32177 2006-09-21  2006-09-21  Dave Hyatt <hyatt (a] apple.com>
   32178 
   32179         Implement mouse wheel scrolling on Win32.  Also forked ScrollViewWin.cpp and fixed some bugs in it.
   32180 
   32181         * WebCore.vcproj/WebCore.vcproj:
   32182         * platform/win/ScrollViewWin.cpp: Added.
   32183         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   32184         (WebCore::ScrollView::ScrollView):
   32185         (WebCore::ScrollView::~ScrollView):
   32186         (WebCore::ScrollView::updateContents):
   32187         (WebCore::ScrollView::visibleWidth):
   32188         (WebCore::ScrollView::visibleHeight):
   32189         (WebCore::ScrollView::visibleContentRect):
   32190         (WebCore::ScrollView::setContentsPos):
   32191         (WebCore::ScrollView::resizeContents):
   32192         (WebCore::ScrollView::contentsX):
   32193         (WebCore::ScrollView::contentsY):
   32194         (WebCore::ScrollView::contentsWidth):
   32195         (WebCore::ScrollView::contentsHeight):
   32196         (WebCore::ScrollView::viewportToContents):
   32197         (WebCore::ScrollView::contentsToViewport):
   32198         (WebCore::ScrollView::scrollOffset):
   32199         (WebCore::ScrollView::maximumScroll):
   32200         (WebCore::ScrollView::scrollBy):
   32201         (WebCore::ScrollView::hScrollBarMode):
   32202         (WebCore::ScrollView::vScrollBarMode):
   32203         (WebCore::ScrollView::suppressScrollBars):
   32204         (WebCore::ScrollView::setHScrollBarMode):
   32205         (WebCore::ScrollView::setVScrollBarMode):
   32206         (WebCore::ScrollView::setScrollBarsMode):
   32207         (WebCore::ScrollView::setStaticBackground):
   32208         (WebCore::ScrollView::updateScrollInfo):
   32209         (WebCore::ScrollView::updateScrollBars):
   32210         (WebCore::ScrollView::wheelEvent):
   32211         * platform/win/WheelEventWin.cpp: Added.
   32212         (WebCore::positionForEvent):
   32213         (WebCore::globalPositionForEvent):
   32214         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   32215 
   32216 2006-09-20  Sean Gies  <seangies (a] apple.com>
   32217 
   32218         Reviewed by Adam Roben.
   32219 
   32220         Added platform/cg/ColorCG.cpp
   32221 
   32222         * WebCore.vcproj/WebCore.vcproj: Add ColorCG.cpp
   32223         * platform/cg/ColorCG.cpp: Added.
   32224 
   32225 2006-09-20  Sean Gies  <seangies (a] apple.com>
   32226 
   32227         Reviewed by Adam Roben.
   32228 
   32229         Fixed ugly text spacing issues with CG for Windows.
   32230 
   32231         * platform/win/FontDataWin.cpp: Reimplement platformWidthForGlyph using CG APIs.
   32232 
   32233 2006-09-19  Anders Carlsson  <acarlsson (a] apple.com>
   32234 
   32235         Reviewed by Dave Hyatt.
   32236         
   32237         <rdar://problem/4734743> Crash accessing YouTube.
   32238         
   32239         * config.h:
   32240         Enable some more of the JSC bindings code on Windows.
   32241         
   32242 2006-09-18  Brady Eidson  <beidson (a] apple.com>
   32243 
   32244         YABF, and merged a change from open source ResourceLoaderWin.cpp
   32245 
   32246         * bridge/win/FrameWin.h:
   32247         * platform/win/ResourceLoaderWin.cpp:
   32248         (WebCore::ResourceLoader::fileLoadTimer):
   32249         * platform/win/TemporaryLinkStubs.cpp:
   32250         (FrameWin::isLoadTypeReload):
   32251 
   32252 2006-09-18  Sean Gies  <seangies (a] apple.com>
   32253 
   32254         Reviewed by Adam Roben.
   32255 
   32256         Support bold & italics.
   32257 
   32258         * platform/win/FontPlatformDataWin.cpp: Use GetOutlineTextMetrics instead of GetTextFace to
   32259             query HFONT name.
   32260 
   32261 2006-09-18  Sean Gies  <seangies (a] apple.com>
   32262 
   32263         Reviewed by Adam Roben.
   32264 
   32265         Changes to bring up CoreGraphics on Windows.
   32266 
   32267         * WebCore.vcproj/WebCore.vcproj: Search platform/cg for headers.  Compile platform/cg/*.cpp.
   32268              Add AffineTransform.cpp to build.
   32269         * platform/win/FontDataWin.cpp: Include CG before using it.
   32270         * platform/win/FontPlatformDataWin.cpp: Fixed typo.
   32271         * platform/win/ImageWin.cpp: Include CG and winsock2.  Implement CG version of Image::getHBITMAP.
   32272              In Cairo version of Image::getHBITMAP, use correct bitmapInfo field and return true for success.
   32273              Fixed image loading bug.
   32274 
   32275 2006-09-18  Brady Eidson  <beidson (a] apple.com>
   32276 
   32277         Rubberstamp by Adam
   32278 
   32279         Build fix
   32280 
   32281         * bridge/win/FrameWin.h:
   32282         * platform/win/TemporaryLinkStubs.cpp:
   32283         (FrameWin::originalRequestURL):
   32284 
   32285 2006-09-18  Sean Gies  <seangies (a] apple.com>
   32286 
   32287         Reviewed by Adam Roben.
   32288 
   32289         Forked FontCacheWin.cpp from OpenSource tree r16421.
   32290 
   32291         * WebCore.vcproj/WebCore.vcproj: Point to Internal file.
   32292         * platform/win/FontCacheWin.cpp: Added.
   32293 
   32294 2006-09-15  Anders Carlsson  <acarlsson (a] apple.com>
   32295 
   32296         Reviewed by Steve.
   32297 
   32298         * WebCore.vcproj/WebCore.vcproj:
   32299         Add JavaScriptCore/ to include path.
   32300 
   32301 2006-09-15  Adam Roben  <aroben (a] apple.com>
   32302 
   32303         Reviewed by sfalken.
   32304 
   32305         Implement historyContains() on Windows (rdar://4733770)
   32306 
   32307         * WebCore.vcproj/WebCore.vcproj: Add
   32308         platform\win\WebCoreHistory.{cpp,h} and bridge\win\HistoryWin.cpp to
   32309         project.
   32310         * bridge/win/HistoryWin.cpp: Added.
   32311         (WebCore::historyContains):
   32312         * platform/win/TemporaryLinkStubs.cpp: Remove stub for
   32313         WebCore::historyContains()
   32314         * platform/win/WebCoreHistory.cpp: Added.
   32315         (WebCore::WebCoreHistory::setHistoryProvider):
   32316         (WebCore::WebCoreHistory::historyProvider):
   32317         * platform/win/WebCoreHistory.h: Added.
   32318 
   32319 2006-09-14  Steve Falkenburg  <sfalken (a] apple.com>
   32320 
   32321         Reviewed by Lou Amadio.
   32322 
   32323         iBench fix - fix WinInet form post code to not reference a stale pointer.
   32324         (found by Application Verifier)
   32325 
   32326         * platform/win/ResourceLoaderWin.cpp:
   32327         (WebCore::ResourceLoaderWndProc):
   32328 
   32329 2006-09-14  Adam Roben  <aroben (a] apple.com>
   32330 
   32331         Reviewed by sfalken.
   32332 
   32333         A little #include cleanup
   32334 
   32335         * WebCore.vcproj/WebCore.vcproj: Add loader/icon to
   32336         AdditionalIncludeDirectories
   32337         * platform/win/TemporaryLinkStubs.cpp: Remove "loader/icon" from
   32338         #include of IconLoader.h
   32339 
   32340 2006-09-14  Brady Eidson  <beidson (a] apple.com>
   32341 
   32342         Build Fix
   32343 
   32344         * WebCore.vcproj/WebCore.vcproj:
   32345         * platform/win/TemporaryLinkStubs.cpp:
   32346         (IconLoader::receivedResponse):
   32347         (IconLoader::notifyIconChanged):
   32348 
   32349 2006-09-13  Steve Falkenburg  <sfalken (a] apple.com>
   32350 
   32351         Fixes for submission of WebCore.  Doesn't affect build.
   32352 
   32353         * WebCore.vcproj/WebCore.vcproj:
   32354         * WebCore.vcproj/merge-opensource.sh:
   32355 
   32356 2006-09-12  Steve Falkenburg  <sfalken (a] apple.com>
   32357 
   32358         Rubber-stamped by Ada.
   32359 
   32360         Get Boomer ready for B&I submission.
   32361        
   32362         Projects can now all build independent of one another
   32363         without groping for headers or source across trees.
   32364 
   32365         * WebCore.vcproj/WebCore.sln: Fix standalone sln for use by B&I.
   32366         * WebCore.vcproj/WebCore.vcproj: Update to new obj layout.
   32367         * WebCore.vcproj/build-generated-files.sh: Build derived sources into obj, update to new obj layout.
   32368         * WebCore.vcproj/dstroot-to-sdk.cmd: Copy built bits back to WebKitSDKDir for dependent builds.
   32369 
   32370 2006-09-13  Adam Roben  <aroben (a] apple.com>
   32371 
   32372         Build fix
   32373 
   32374         * WebCore.vcproj/WebCore.vcproj: Rename KHTML_XSLT to XSLT_SUPPORT,
   32375         remove KHTML_NO_XBL
   32376         * config.h: Ditto.
   32377 
   32378 2006-09-13  Adam Roben  <aroben (a] apple.com>
   32379 
   32380         Reviewed by beidson.
   32381 
   32382         Initial implementation of Icon, FileChooser on Windows.
   32383 
   32384         * WebCore.vcproj/WebCore.vcproj: Added FileChooserWin.cpp, IconWin.cpp
   32385         * platform/win/FileChooserWin.cpp: Added.
   32386         (WebCore::FileChooser::FileChooser):
   32387         (WebCore::FileChooser::openFileChooser):
   32388         (WebCore::FileChooser::basenameForWidth):
   32389         (WebCore::FileChooser::uploadControlDetaching):
   32390         (WebCore::FileChooser::chooseFile):
   32391         * platform/win/IconWin.cpp: Added.
   32392         (WebCore::Icon::Icon):
   32393         (WebCore::Icon::~Icon):
   32394         (WebCore::Icon::newIconForFile):
   32395         (WebCore::Icon::paint):
   32396         * platform/win/TemporaryLinkStubs.cpp: Removed FileChooser, Icon stub
   32397         functions
   32398 
   32399 2006-09-13  Anders Carlsson  <acarlsson (a] apple.com>
   32400 
   32401         Reviewed by Tim O.
   32402 
   32403         Implement postURL and postURLNotify.
   32404 
   32405         * plugins/win/PluginStreamWin.cpp:
   32406         (WebCore::PluginStreamWin::~PluginStreamWin):
   32407         (WebCore::PluginStreamWin::start):
   32408         (WebCore::PluginStreamWin::startStream):
   32409         (WebCore::PluginStreamWin::cancelAndDestroyStream):
   32410         * plugins/win/PluginViewWin.cpp:
   32411         (WebCore::PluginViewWin::start):
   32412         (WebCore::PluginViewWin::loadURL):
   32413         (WebCore::PluginViewWin::getURLNotify):
   32414         (WebCore::PluginViewWin::getURL):
   32415         (WebCore::startsWithBlankLine):
   32416         (WebCore::locationAfterFirstBlankLine):
   32417         (WebCore::findEOL):
   32418         (WebCore::capitalizeRFC822HeaderFieldName):
   32419         (WebCore::parseRFC822HeaderFields):
   32420         (WebCore::PluginViewWin::handlePost):
   32421         (WebCore::PluginViewWin::postURLNotify):
   32422         (WebCore::PluginViewWin::postURL):
   32423         * plugins/win/PluginViewWin.h:
   32424 
   32425 2006-09-13  Lou Amadio  <lamadio (a] apple.com>
   32426 
   32427         Reviewed by sfalken
   32428 
   32429         * WebCore.vcproj/WebCore.vcproj:
   32430 
   32431 2006-09-13  Adam Roben  <aroben (a] apple.com>
   32432 
   32433         Build fix
   32434 
   32435         * WebCore.vcproj/build-generated-files.sh: Export SOURCE_ROOT which is
   32436         now used by CodeGenerator.pm
   32437 
   32438 2006-09-12  Anders Carlsson  <acarlsson (a] apple.com>
   32439 
   32440         Reviewed by Tim O.
   32441 
   32442         Add scripting support for plugins.
   32443         
   32444         * bridge/win/FrameWin.cpp:
   32445         (WebCore::FrameWin::FrameWin):
   32446         (WebCore::FrameWin::addPluginRootObject):
   32447         (WebCore::FrameWin::cleanupPluginObjects):
   32448         (WebCore::FrameWin::bindingRootObject):
   32449         (WebCore::FrameWin::windowScriptNPObject):
   32450         * bridge/win/FrameWin.h:
   32451         * plugins/win/PluginPackageWin.cpp:
   32452         (WebCore::PluginPackageWin::load):
   32453         * plugins/win/PluginViewWin.cpp:
   32454         (WebCore::PluginViewWin::getValue):
   32455         * plugins/win/npapi.cpp:
   32456         (NPN_RequestRead):
   32457         (NPN_InvalidateRect):
   32458         (NPN_InvalidateRegion):
   32459         (NPN_ForceRedraw):
   32460 
   32461 2006-09-12  Adam Roben  <aroben (a] apple.com>
   32462 
   32463         Reviewed many times by darin, hyatt.
   32464 
   32465         Add stubs for new engine-based file upload control implementation and
   32466         Icon class.
   32467 
   32468         * WebCore.vcproj/WebCore.vcproj: Add new engine-based files, remove old
   32469         widget-based files.
   32470         * platform/win/TemporaryLinkStubs.cpp: Add stubs for FileChooser and
   32471         Icon methods, and add two new LocalizedString methods.
   32472         (WebCore::fileButtonChooseFileLabel):
   32473         (WebCore::fileButtonNoFileSelectedLabel):
   32474         (FileChooser::FileChooser):
   32475         (FileChooser::~FileChooser):
   32476         (FileChooser::openFileChooser):
   32477         (FileChooser::basenameForWidth):
   32478         (FileChooser::uploadControlDetaching):
   32479         (Icon::~Icon):
   32480         (Icon::paint):
   32481 
   32482 2006-09-11  Anders Carlsson  <acarlsson (a] apple.com>
   32483 
   32484         Reviewed by Tim O.
   32485 
   32486         Add stream and URL handling to PluginViewWin. Include PluginStreamWin.cpp in the build.
   32487         Also fix a number of bugs discovered when loading various plugins.
   32488         
   32489         * WebCore.vcproj/WebCore.vcproj:
   32490         * plugins/win/PluginViewWin.cpp:
   32491         (WebCore::PluginRequestWin::PluginRequestWin):
   32492         (WebCore::PluginRequestWin::url):
   32493         (WebCore::PluginRequestWin::target):
   32494         (WebCore::PluginRequestWin::notifyData):
   32495         (WebCore::PluginRequestWin::sendNotification):
   32496         (WebCore::scriptStringIfJavaScriptURL):
   32497         (WebCore::registerPluginView):
   32498         (WebCore::PluginViewWndProc):
   32499         (WebCore::PluginViewWin::updateSize):
   32500         (WebCore::PluginViewWin::setFrameGeometry):
   32501         (WebCore::PluginViewWin::start):
   32502         (WebCore::PluginViewWin::stop):
   32503         (WebCore::createUTF8String):
   32504         (WebCore::PluginViewWin::performRequest):
   32505         (WebCore::PluginViewWin::requestTimerFired):
   32506         (WebCore::PluginViewWin::scheduleRequest):
   32507         (WebCore::PluginViewWin::loadURL):
   32508         (WebCore::makeURL):
   32509         (WebCore::PluginViewWin::getURLNotify):
   32510         (WebCore::PluginViewWin::getURL):
   32511         (WebCore::PluginViewWin::newStream):
   32512         (WebCore::PluginViewWin::write):
   32513         (WebCore::PluginViewWin::destroyStream):
   32514         (WebCore::PluginViewWin::userAgent):
   32515         (WebCore::PluginViewWin::~PluginViewWin):
   32516         (WebCore::PluginViewWin::PluginViewWin):
   32517         * plugins/win/PluginViewWin.h:
   32518 
   32519 2006-09-11  Anders Carlsson  <acarlsson (a] apple.com>
   32520 
   32521         * WebCore.vcproj/WebCore.vcproj:
   32522         Fix build.
   32523         
   32524 2006-09-11  Anders Carlsson  <acarlsson (a] apple.com>
   32525 
   32526         Reviewed by Tim O and Maciej.
   32527 
   32528         Add plugin stream object.
   32529         
   32530         * plugins/win/PluginStreamWin.cpp: Added.
   32531         (WebCore::PluginStreamWin::PluginStreamWin):
   32532         (WebCore::PluginStreamWin::~PluginStreamWin):
   32533         (WebCore::PluginStreamWin::setRequestHeaders):
   32534         (WebCore::PluginStreamWin::setPostData):
   32535         (WebCore::PluginStreamWin::start):
   32536         (WebCore::PluginStreamWin::stop):
   32537         (WebCore::PluginStreamWin::startStream):
   32538         (WebCore::PluginStreamWin::cancelAndDestroyStream):
   32539         (WebCore::PluginStreamWin::destroyStream):
   32540         (WebCore::PluginStreamWin::delayDeliveryTimerFired):
   32541         (WebCore::PluginStreamWin::deliverData):
   32542         (WebCore::PluginStreamWin::receivedResponse):
   32543         (WebCore::PluginStreamWin::receivedData):
   32544         (WebCore::PluginStreamWin::receivedAllData):
   32545         * plugins/win/PluginStreamWin.h: Added.
   32546 
   32547 2006-09-10  Brady Eidson  <beidson (a] apple.com>
   32548 
   32549         Reviewed by Steven Falkenburg
   32550 
   32551         Added IconDatabase related code and forked ImageWin for its HBITMAP blit
   32552 
   32553         * WebCore.vcproj/WebCore.vcproj: Added in all WebCore::IconDatabase stuffs
   32554         * platform/win/ImageWin.cpp: Added. (forked from OpenSource)
   32555         (WebCore::Image::initPlatformData):
   32556         (WebCore::Image::invalidatePlatformData):
   32557         (WebCore::Image::loadPlatformResource):
   32558         (WebCore::Image::supportsType):
   32559         (WebCore::Image::getHBITMAP): Added - blit the image to an HBITMAP 
   32560         
   32561 2006-09-10  David Hyatt  <hyatt (a] apple.com>
   32562 
   32563         Remove the addIntrinsicMargins code from the theme.  I did this
   32564         in the open source version but forgot to do it in the internal
   32565         version.
   32566 
   32567         * rendering/RenderThemeWin.cpp:
   32568         (WebCore::RenderThemeWin::adjustButtonStyle):
   32569         (WebCore::RenderThemeWin::adjustTextFieldStyle):
   32570         (WebCore::RenderThemeWin::adjustTextAreaStyle):
   32571         (WebCore::RenderThemeWin::adjustMenuListStyle):
   32572 
   32573 2006-09-10  Brady Eidson  <beidson (a] apple.com>
   32574 
   32575         Reviewed by YABF, and Adam's suggestive rubberstamp before he hopped offline
   32576 
   32577         Build fix + FIXME/Radar to reflect an OpenSource change to the Font.h header
   32578 
   32579         * platform/win/FontWin.cpp:
   32580         (WebCore::Font::drawGlyphs): Added the parameter and a FIXME 
   32581 
   32582 2006-09-10  Steve Falkenburg  <sfalken (a] apple.com>
   32583 
   32584         Rubber-stamp by aroben.
   32585         
   32586         * WebCore.vcproj/WebCore.vcproj:
   32587 
   32588 2006-09-09  Steve Falkenburg  <sfalken (a] apple.com>
   32589 
   32590         Reviewed by aroben.
   32591 
   32592         Added missing CF files to fix CFNetwork build variant
   32593 
   32594         * WebCore.vcproj/WebCore.vcproj: Use include paths, libs, DLLs from %SystemDrive%\AppleInternal
   32595         * WebCore.vcproj/build-generated-files.sh: Don't copy open source DLLs from WebKitLibraries
   32596 
   32597 2006-09-09  Adam Roben  <aroben (a] apple.com>
   32598 
   32599         Reviewed by hyatt.
   32600 
   32601         Remove unnecessary calls to setAffectedBy{Active,Hover}Rules
   32602 
   32603         * rendering/RenderThemeWin.cpp:
   32604         (WebCore::RenderThemeWin::adjustMenuListStyle): Remove unnecessary calls
   32605 
   32606 2006-09-06  Brady Eidson  <beidson (a] apple.com>
   32607 
   32608         YABF (Yet another build fix)
   32609 
   32610         * platform/win/FontDataWin.cpp: Added missing header
   32611 
   32612 2006-09-06  Brady Eidson  <beidson (a] apple.com>
   32613 
   32614         Reviewed by Steve's rubberstamp
   32615 
   32616         Three stubs were added this morning, however the methods were already implemented in
   32617         Internal/OpenSourceWin/WebCoreWin/bridge/win/FrameWin.cpp
   32618 
   32619         * platform/win/TemporaryLinkStubs.cpp: Nuked some repeat symbols
   32620 
   32621 2006-09-06  Adam Roben  <aroben (a] apple.com>
   32622 
   32623         Reviewed by Darin.
   32624 
   32625         Fixed various Windows build issues caused by previous checkins.
   32626 
   32627         * bridge/win/FrameWin.h: Added missing #include, updated Selection to SelectionController.
   32628         * platform/win/FontWin.cpp: Reorganized #includes.
   32629         (WebCore::Font::drawGlyphs): Used a const_cast hack to fix ultimately broken code.
   32630         * platform/win/ResourceLoaderWin.cpp: Added missing #include of CString.h and removed double #include of config.h.
   32631         (WebCore::ResourceLoaderWndProc): Removed use of String::ascii.
   32632         (WebCore::ResourceLoader::start): Ditto.
   32633         * platform/win/TemporaryLinkStubs.cpp: Added missing stubs.
   32634         (FrameWin::markMisspellings):
   32635         (FrameWin::shouldChangeSelection):
   32636         (FrameWin::respondToChangedSelection):
   32637         (FrameWin::respondToChangedContents):
   32638         (FrameWin::handledOnloadEvents):
   32639         (FrameWin::createPlugin):
   32640         (FrameWin::objectContentType):
   32641         * rendering/RenderPopupMenuWin.cpp: Added missing #include.
   32642 
   32643 2006-09-05  Darin Adler  <darin (a] apple.com>
   32644 
   32645         - build fix part of http://bugzilla.opendarwin.org/show_bug.cgi?id=10728
   32646           text encodings should work without a numeric ID
   32647 
   32648         * WebCore.vcproj/WebCore.vcproj: Update for new headers.
   32649 
   32650 2006-09-01  Steve Falkenburg  <sfalken (a] apple.com>
   32651 
   32652         Reviewed by adachan.
   32653 
   32654         Process redirects received in networking layer through to application.
   32655         With this change, the address bar url edit field shows the proper
   32656         redirected URL.
   32657 
   32658         * platform/win/ResourceLoaderWin.cpp:
   32659         (WebCore::ResourceLoaderWndProc):
   32660         (WebCore::transferJobStatusCallback):
   32661         (WebCore::ResourceLoader::start):
   32662 
   32663 2006-09-01  Ada Chan  <adachan (a] apple.com>
   32664 
   32665         Reviewed by lamadio.
   32666 
   32667         Fixed build break.
   32668 
   32669         * bridge/win/FrameWin.h:
   32670         * platform/win/TemporaryLinkStubs.cpp:
   32671         (FrameWin::respondToChangedContents):
   32672 
   32673 2006-08-31  Anders Carlsson  <acarlsson (a] apple.com>
   32674 
   32675         Reviewed by Steve.
   32676 
   32677         Add our own internal config.h so we can make changes to it.
   32678         
   32679         * WebCore.vcproj/WebCore.vcproj:
   32680         Add config.h to the file list, move the KXMLCORE_PLATFORM_CF to the new config.h file 
   32681                        
   32682         * config.h: Added.
   32683         
   32684         * platform/win/ResourceLoaderWin.cpp:
   32685         Include config.h        
   32686 
   32687 2006-08-31  Dave Hyatt <hyatt (a] apple.com>
   32688 
   32689         Add a platform scrollbar class for Windows.  It doesn't really work yet.
   32690 
   32691         * WebCore.vcproj/WebCore.vcproj:
   32692         * platform/win/TemporaryLinkStubs.cpp:
   32693         * platform/win/PlatformScrollBarWin.cpp
   32694 
   32695 2006-08-31  Anders Carlsson  <acarlsson (a] apple.com>
   32696 
   32697         Fix the build.
   32698 
   32699         * WebCore.vcproj/WebCore.vcproj:
   32700 
   32701 2006-08-30  Steve Falkenburg  <sfalken (a] apple.com>
   32702 
   32703         Reviewed by Ada Chan.
   32704 
   32705         * bridge/win/FrameWin.cpp:
   32706         (WebCore::FrameWin::submitForm): Pass form values to submit form delegate
   32707         * bridge/win/FrameWin.h: Pass form values to submit form delegate
   32708 
   32709 2006-08-29  David Hyatt  <hyatt (a] apple.com>
   32710 
   32711         Make project changes so that the forked Font files (and Cairo/JPG/PNG) are all used.
   32712 
   32713         * WebCore.vcproj/WebCore.vcproj:
   32714 
   32715 2006-08-29  David Hyatt  <hyatt (a] apple.com>
   32716 
   32717         This patch lands all the font changes.  It does not patch the project file
   32718         yet, since this was done on Mac.  Will switch to Win32 after landing this
   32719         and then fix any glitches.
   32720 
   32721         * platform/cairo/cairo-all.c: Added.
   32722         * platform/cairo/pixman-all.c: Added.
   32723         * platform/image-decoders/jpeg/jpeg-part1.c: Added.
   32724         * platform/image-decoders/jpeg/jpeg-part2.c: Added.
   32725         * platform/image-decoders/jpeg/jpeg-part3.c: Added.
   32726         * platform/image-decoders/png/png-part1.c: Added.
   32727         * platform/image-decoders/png/png-part2.c: Added.
   32728         * platform/win/FontDataWin.cpp:
   32729         (WebCore::FontData::platformInit):
   32730         (WebCore::FontData::platformDestroy):
   32731         (WebCore::FontData::platformWidthForGlyph):
   32732         * platform/win/FontPlatformData.h:
   32733         (WebCore::FontPlatformData::FontPlatformData):
   32734         (WebCore::FontPlatformData::cgFont):
   32735         (WebCore::FontPlatformData::operator==):
   32736         * platform/win/FontPlatformDataWin.cpp:
   32737         (WebCore::m_size):
   32738         * platform/win/FontWin.cpp:
   32739         (WebCore::Font::drawGlyphs):
   32740 
   32741 2006-08-29  David Hyatt  <hyatt (a] apple.com>
   32742 
   32743         Forking the font files in preparation for dropping in CG code.
   32744 
   32745         Reviewed by adam
   32746 
   32747         * WebCore.vcproj/WebCore.vcproj:
   32748         * platform/win/FontDataWin.cpp: Added.
   32749         (WebCore::FontData::platformInit):
   32750         (WebCore::FontData::platformDestroy):
   32751         (WebCore::FontData::smallCapsFontData):
   32752         (WebCore::FontData::containsCharacters):
   32753         (WebCore::FontData::determinePitch):
   32754         (WebCore::FontData::platformWidthForGlyph):
   32755         * platform/win/FontPlatformData.h: Added.
   32756         (WebCore::FontPlatformData::FontPlatformData):
   32757         (WebCore::FontPlatformData::hfont):
   32758         (WebCore::FontPlatformData::fontFace):
   32759         (WebCore::FontPlatformData::scaledFont):
   32760         (WebCore::FontPlatformData::size):
   32761         (WebCore::FontPlatformData::hash):
   32762         (WebCore::FontPlatformData::operator==):
   32763         * platform/win/FontPlatformDataWin.cpp: Added.
   32764         (WebCore::m_size):
   32765         (WebCore::FontPlatformData::~FontPlatformData):
   32766         * platform/win/FontWin.cpp: Added.
   32767         (WebCore::notImplemented):
   32768         (WebCore::Font::drawGlyphs):
   32769         (WebCore::Font::selectionRectForComplexText):
   32770         (WebCore::Font::drawComplexText):
   32771         (WebCore::Font::floatWidthForComplexText):
   32772         (WebCore::Font::offsetForPositionForComplexText):
   32773 
   32774 2006-08-28  Geoffrey Garen  <ggaren (a] apple.com>
   32775 
   32776         Reviewed by Maciej.
   32777 
   32778         Landed CFNetwork loader, off by default. To enable, define:
   32779             KXMLCORE_PLATFORM_CF
   32780             KXMLCORE_USE_CFNETWORK
   32781 
   32782         CFNetwork uses winsock2. If you do this, you need to make sure that winsock2.h
   32783         is included before windows.h in any translation unit in which it's used.
   32784         A lot of the jiggering in this patch is devoted to that.
   32785         
   32786         * WebCore.vcproj/WebCore.vcproj:
   32787         * platform/win/ResourceLoaderWin.cpp: Removed reliance on PlatformData
   32788         since it wasn't being used, and removing it made easy work of integrating
   32789         CFNetwork in a Windows-independent way.
   32790         (WebCore::ResourceLoaderWndProc):
   32791         (WebCore::ResourceLoader::fileLoadTimer):
   32792         (WebCore::ResourceLoader::cancel):
   32793         * platform/win/TemporaryLinkStubs.cpp:
   32794         (Path::contains):
   32795         * platform/win/WidgetWin.cpp:
   32796         * plugins/win/PluginDatabaseWin.cpp:
   32797         * plugins/win/PluginPackageWin.h:
   32798         * plugins/win/PluginViewWin.h:
   32799         * plugins/win/npapi.cpp:
   32800         * rendering/RenderPopupMenuWin.cpp:
   32801         * rendering/RenderPopupMenuWin.h:
   32802         * rendering/RenderThemeWin.cpp:
   32803 
   32804 2006-08-28  Ada Chan  <adachan (a] apple.com>
   32805 
   32806         Reviewed by ggaren.
   32807 
   32808         Fixed build.
   32809 
   32810         * platform/win/TemporaryLinkStubs.cpp:
   32811         (Path::contains):
   32812 
   32813 2006-08-25  David Hyatt  <hyatt (a] apple.com>
   32814 
   32815         Land CG/Cairo refactoring (and add some winsock2.h).  (I do not really
   32816         understand why the winsock2.h stuff would suddenly be needed.)
   32817 
   32818         * platform/win/ResourceLoaderWin.h:
   32819         * platform/win/TemporaryLinkStubs.cpp:
   32820         (GraphicsContext::setAlpha):
   32821         (GraphicsContext::drawFocusRing):
   32822         (GraphicsContext::drawLineForMisspelling):
   32823         (GraphicsContext::setCompositeOperation):
   32824         * plugins/win/PluginPackageWin.h:
   32825         * plugins/win/PluginViewWin.h:
   32826         * plugins/win/npapi.cpp:
   32827         * rendering/RenderThemeWin.cpp:
   32828         (WebCore::prepareForDrawing):
   32829         (WebCore::doneDrawing):
   32830 
   32831 2006-08-24  Geoffrey Garen  <ggaren (a] apple.com>
   32832 
   32833         Reviewed by Darin.
   32834 
   32835         Frame refactoring: changed FrameView clients so they no longer assume that
   32836         FrameViews are Widgets that can tell you things about the platform, in 
   32837         preparation for divorcing FrameViews from heavy-weight Widgets altogether.
   32838 
   32839         This patch makes Page, rather than Widget, responsible for holding the
   32840         page's HWND. Refactoring aside, I think this makes more sense.
   32841 
   32842 2006-08-24  Geoffrey Garen  <ggaren (a] apple.com>
   32843 
   32844         Reviewed by Hyatt.
   32845 
   32846         Branching PageWin.cpp from r15969.
   32847 
   32848         * WebCore.vcproj/WebCore.vcproj:
   32849         * bridge/win/PageWin.cpp: Added.
   32850         (WebCore::Page::Page):
   32851         (WebCore::Page::windowRect):
   32852         (WebCore::Page::setWindowRect):
   32853 
   32854 2006-08-23  Adam Roben  <aroben (a] apple.com>
   32855 
   32856         Reviewed by Ada.
   32857 
   32858         Fixed placement of popups when document is scrolled.
   32859 
   32860         * rendering/RenderPopupMenuWin.cpp:
   32861         (WebCore::RenderPopupMenuWin::setPositionAndSize):
   32862 
   32863 2006-08-23  Steve Falkenburg  <sfalken (a] apple.com>
   32864 
   32865         Build fix (many of our include paths were wrong!)
   32866 
   32867         * WebCore.vcproj/WebCore.vcproj:
   32868 
   32869 2006-08-23  Adam Roben  <aroben (a] apple.com>
   32870 
   32871         Reviewed by Darin, Lou, Adele.
   32872 
   32873         Initial implementation of <select> elements on Windows.
   32874 
   32875         * WebCore.vcproj/WebCore.vcproj:
   32876             Added RenderPopupMenuWin.cpp
   32877         * platform/win/TemporaryLinkStubs.cpp:
   32878         (RenderPopupMenuWin::addGroupLabel):
   32879         * rendering/RenderPopupMenuWin.cpp: Added.
   32880         (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
   32881         (WebCore::RenderPopupMenuWin::~RenderPopupMenuWin):
   32882         (WebCore::RenderPopupMenuWin::clear):
   32883         (WebCore::RenderPopupMenuWin::populate):
   32884         (WebCore::RenderPopupMenuWin::showPopup):
   32885         (WebCore::RenderPopupMenuWin::hidePopup):
   32886         (WebCore::RenderPopupMenuWin::setPositionAndSize):
   32887         (WebCore::RenderPopupMenuWin::addOption):
   32888         (WebCore::RenderPopupMenuWin::down):
   32889         (WebCore::RenderPopupMenuWin::up):
   32890         (WebCore::registerPopup):
   32891         (WebCore::PopupWndProc):
   32892         * rendering/RenderPopupMenuWin.h:
   32893             Added useful properties.
   32894         (WebCore::RenderPopupMenuWin::popupHandle):
   32895         (WebCore::RenderPopupMenuWin::containerHandle):
   32896         (WebCore::RenderPopupMenuWin::wasClicked):
   32897         (WebCore::RenderPopupMenuWin::setWasClicked):
   32898         * rendering/RenderThemeWin.cpp:
   32899         (WebCore::RenderThemeWin::RenderThemeWin):
   32900         (WebCore::RenderThemeWin::openButtonTheme):
   32901         (WebCore::RenderThemeWin::openTextFieldTheme):
   32902         (WebCore::RenderThemeWin::openMenuListTheme):
   32903         (WebCore::RenderThemeWin::close):
   32904         (WebCore::RenderThemeWin::supportsFocus):
   32905         (WebCore::RenderThemeWin::determineState):
   32906         (WebCore::RenderThemeWin::getThemeData):
   32907         (WebCore::RenderThemeWin::paintButton):
   32908         (WebCore::RenderThemeWin::paintTextField):
   32909             Refactored the above methods and added cases for
   32910             MenulistAppearance where appropriate.
   32911         (WebCore::RenderThemeWin::paintMenuList):
   32912         (WebCore::RenderThemeWin::adjustMenuListStyle):
   32913             Implemented the above methods.
   32914         * rendering/RenderThemeWin.h:
   32915 
   32916 2006-08-22  Geoffrey Garen  <ggaren (a] apple.com>
   32917 
   32918         My first Windows build fix.
   32919 
   32920         * WebCore.vcproj/WebCore.vcproj:
   32921             - Link against version.lib, since the new plug-in stuff requires it
   32922             - Sync the release and debug header search paths, so release
   32923               finds the JS bindings.
   32924 
   32925 2006-08-18  Anders Carlsson  <acarlsson (a] apple.com>
   32926 
   32927         * plugins/win/PluginViewWin.cpp:
   32928         (WebCore::PluginViewWin::write):
   32929         (WebCore::PluginViewWin::destroyStream):
   32930         Another attempt at fixing the build. Make these two functions into instance methods of PluginViewWin.
   32931 
   32932 2006-08-18  Anders Carlsson  <acarlsson (a] apple.com>
   32933 
   32934         * plugins/win/PluginViewWin.cpp:
   32935         (WebCore::write):
   32936         (WebCore::destroyStream):
   32937         * plugins/win/PluginViewWin.h:
   32938         Fix build by removing unneeded parameters.
   32939 
   32940 2006-08-18  Anders Carlsson  <acarlsson (a] apple.com>
   32941 
   32942         Reviewed by Adele.
   32943 
   32944         Have the NPN functions call into the plugin view. Implement some of the plugin view methods.
   32945 
   32946         * plugins/win/PluginViewWin.cpp:
   32947         (WebCore::PluginViewWin::start):
   32948         (WebCore::PluginViewWin::setCurrentPluginView):
   32949         (WebCore::PluginViewWin::currentPluginView):
   32950         (WebCore::PluginViewWin::getURLNotify):
   32951         (WebCore::PluginViewWin::getURL):
   32952         (WebCore::PluginViewWin::postURLNotify):
   32953         (WebCore::PluginViewWin::postURL):
   32954         (WebCore::PluginViewWin::newStream):
   32955         (WebCore::write):
   32956         (WebCore::destroyStream):
   32957         (WebCore::PluginViewWin::userAgent):
   32958         (WebCore::PluginViewWin::status):
   32959         (WebCore::PluginViewWin::getValue):
   32960         (WebCore::PluginViewWin::setValue):
   32961         (WebCore::PluginViewWin::~PluginViewWin):
   32962         (WebCore::PluginViewWin::PluginViewWin):
   32963         * plugins/win/PluginViewWin.h:
   32964         * plugins/win/npapi.cpp:
   32965         (pluginViewForInstance):
   32966         (NPN_ReloadPlugins):
   32967         (NPN_GetURLNotify):
   32968         (NPN_GetURL):
   32969         (NPN_PostURLNotify):
   32970         (NPN_PostURL):
   32971         (NPN_NewStream):
   32972         (NPN_Write):
   32973         (NPN_DestroyStream):
   32974         (NPN_UserAgent):
   32975         (NPN_Status):
   32976         (NPN_GetValue):
   32977         (NPN_SetValue):
   32978 
   32979 2006-08-17  Anders Carlsson  <acarlsson (a] apple.com>
   32980 
   32981         Reviewed by Steve and Maciej.
   32982 
   32983         Add initial implementation of plugin view.
   32984 
   32985         * WebCore.vcproj/WebCore.vcproj:
   32986         Add files.
   32987         
   32988         * bridge/win/FrameWin.cpp:
   32989         (WebCore::FrameWin::objectContentType):
   32990         (WebCore::FrameWin::createPlugin):
   32991         Implement these functions.
   32992         
   32993         * platform/win/TemporaryLinkStubs.cpp:
   32994         Remove implemented functions.
   32995         
   32996         * platform/win/WidgetWin.cpp: Add this file from the open source repo
   32997         (WebCore::Widget::~Widget):
   32998         Call DestroyWindow on the hWnd.
   32999         
   33000         * plugins/win/PluginDatabaseWin.cpp:
   33001         (WebCore::PluginDatabaseWin::createPluginView):
   33002         New function which creates a plugin view.
   33003         
   33004         * plugins/win/PluginDatabaseWin.h:
   33005         
   33006         * plugins/win/PluginPackageWin.cpp:
   33007         (WebCore::PluginPackageWin::load):
   33008         Assign the browser functions. They are just stubs for now.
   33009                
   33010         * plugins/win/PluginViewWin.cpp: Added.
   33011         (WebCore::registerPluginView):
   33012         (WebCore::PluginViewWndProc):
   33013         (WebCore::PluginViewWin::invokeSetWindow):
   33014         (WebCore::PluginViewWin::start):
   33015         (WebCore::PluginViewWin::stop):
   33016         (WebCore::createUTF8String):
   33017         (WebCore::createUTF8StringArray):
   33018         (WebCore::freeStringArray):
   33019         (WebCore::PluginViewWin::~PluginViewWin):
   33020         (WebCore::PluginViewWin::PluginViewWin):
   33021         * plugins/win/PluginViewWin.h: Added.
   33022         (WebCore::PluginViewWin::plugin):
   33023         (WebCore::PluginViewWin::instance):
   33024         * plugins/win/npapi.cpp: Added.
   33025         (NPN_MemAlloc):
   33026         (NPN_MemFree):
   33027         (NPN_MemFlush):
   33028         (NPN_ReloadPlugins):
   33029         (NPN_RequestRead):
   33030         (NPN_GetURLNotify):
   33031         (NPN_GetURL):
   33032         (NPN_PostURLNotify):
   33033         (NPN_PostURL):
   33034         (NPN_NewStream):
   33035         (NPN_Write):
   33036         (NPN_DestroyStream):
   33037         (NPN_UserAgent):
   33038         (NPN_Status):
   33039         (NPN_InvalidateRect):
   33040         (NPN_InvalidateRegion):
   33041         (NPN_ForceRedraw):
   33042         (NPN_GetValue):
   33043         (NPN_SetValue):
   33044         (NPN_GetJavaEnv):
   33045         (NPN_GetJavaPeer):
   33046 
   33047 2006-08-17  Anders Carlsson  <acarlsson (a] apple.com>
   33048 
   33049         Reviewed by Maciej.
   33050 
   33051         Add initial implementation of plugin database.
   33052         
   33053         * WebCore.vcproj/WebCore.vcproj:
   33054         Add new files.
   33055         
   33056         * platform/win/TemporaryLinkStubs.cpp:
   33057         Get rid of the PlugInInfoStore stubs.
   33058 
   33059         * plugins/win/PlugInInfoStoreWin.cpp: Added.
   33060         (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
   33061         (WebCore::PlugInInfoStore::pluginCount):
   33062         (WebCore::PlugInInfoStore::supportsMIMEType):
   33063         (WebCore::refreshPlugins):
   33064         * plugins/win/PluginDatabaseWin.cpp: Added.
   33065         (WebCore::PluginDatabaseWin::installedPlugins):
   33066         (WebCore::PluginDatabaseWin::refresh):
   33067         (WebCore::PluginDatabaseWin::plugins):
   33068         (WebCore::PluginDatabaseWin::getPluginsInPaths):
   33069         (WebCore::PluginDatabaseWin::defaultPluginPaths):
   33070         (WebCore::PluginDatabaseWin::isMIMETypeRegistered):
   33071         (WebCore::PluginDatabaseWin::pluginForMIMEType):
   33072         (WebCore::PluginDatabaseWin::pluginForExtension):
   33073         * plugins/win/PluginDatabaseWin.h: Added.
   33074         (WebCore::PluginDatabaseWin::setPluginPaths):
   33075         * plugins/win/PluginPackageWin.cpp: Added.
   33076         (WebCore::PluginPackageWin::~PluginPackageWin):
   33077         (WebCore::getVersionInfo):
   33078         (WebCore::splitString):
   33079         (WebCore::PluginPackageWin::PluginPackageWin):
   33080         (WebCore::PluginPackageWin::fetchInfo):
   33081         (WebCore::PluginPackageWin::load):
   33082         (WebCore::PluginPackageWin::unload):
   33083         (WebCore::PluginPackageWin::unloadWithoutShutdown):
   33084         (WebCore::PluginPackageWin::createPackage):
   33085         (WebCore::PluginPackageWin::hash):
   33086         (WebCore::PluginPackageWin::equal):
   33087         * plugins/win/PluginPackageWin.h: Added.
   33088         (WebCore::PluginPackageWin::name):
   33089         (WebCore::PluginPackageWin::description):
   33090         (WebCore::PluginPackageWin::fileName):
   33091         (WebCore::PluginPackageWin::mimeToDescriptions):
   33092         (WebCore::PluginPackageWin::mimeToExtensions):
   33093         (WebCore::PluginPackageWin::pluginFuncs):
   33094         (WebCore::PluginPackageWinHash::hash):
   33095         (WebCore::PluginPackageWinHash::equal):
   33096         (WTF::):
   33097         * plugins/win/npfunctions.h: Added.
   33098 
   33099 2006-08-17  Adam Roben  <aroben (a] apple.com>
   33100 
   33101         Removing this unintentionally added file.
   33102 
   33103         * rendering/RenderPopupMenuWin.cpp: Removed.
   33104 
   33105 2006-08-17  Adam Roben  <aroben (a] apple.com>
   33106 
   33107         Reviewed by Steve.
   33108 
   33109         Branching files from OpenSource tree r15924 to prepare for <select>
   33110         element implementation.
   33111 
   33112         * WebCore.vcproj/WebCore.vcproj:
   33113         * rendering/RenderPopupMenuWin.h: Added.
   33114         (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
   33115         * rendering/RenderThemeWin.cpp: Added.
   33116         (WebCore::theme):
   33117         (WebCore::m_textFieldTheme):
   33118         (WebCore::RenderThemeWin::~RenderThemeWin):
   33119         (WebCore::RenderThemeWin::close):
   33120         (WebCore::RenderThemeWin::platformActiveSelectionBackgroundColor):
   33121         (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
   33122         (WebCore::RenderThemeWin::platformActiveSelectionForegroundColor):
   33123         (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
   33124         (WebCore::RenderThemeWin::addIntrinsicMargins):
   33125         (WebCore::RenderThemeWin::supportsFocus):
   33126         (WebCore::RenderThemeWin::determineState):
   33127         (WebCore::RenderThemeWin::getThemeData):
   33128         (WebCore::RenderThemeWin::adjustButtonStyle):
   33129         (WebCore::prepareForDrawing):
   33130         (WebCore::doneDrawing):
   33131         (WebCore::RenderThemeWin::paintButton):
   33132         (WebCore::RenderThemeWin::setCheckboxSize):
   33133         (WebCore::RenderThemeWin::setRadioSize):
   33134         (WebCore::RenderThemeWin::adjustTextFieldStyle):
   33135         (WebCore::RenderThemeWin::paintTextField):
   33136         (WebCore::RenderThemeWin::adjustTextAreaStyle):
   33137         (WebCore::RenderThemeWin::paintTextArea):
   33138         (WebCore::RenderThemeWin::createPopupMenu):
   33139         * rendering/RenderThemeWin.h: Added.
   33140         (WebCore::ThemeData::m_state):
   33141         (WebCore::RenderThemeWin::supportsHover):
   33142         (WebCore::RenderThemeWin::paintCheckbox):
   33143         (WebCore::RenderThemeWin::paintRadio):
   33144 
   33145 2006-08-15  Steve Falkenburg  <sfalken (a] apple.com>
   33146 
   33147         Pull TemporaryLinkStubs.cpp into internal tree to fix the build.
   33148 
   33149         * WebCore.vcproj/WebCore.vcproj:
   33150         * platform/win/TemporaryLinkStubs.cpp: Added.
   33151         (notImplemented):
   33152         (FrameView::updateBorder):
   33153         (FrameView::isFrameView):
   33154         (PopUpButton::focusPolicy):
   33155         (PopUpButton::populate):
   33156         (Widget::enableFlushDrawing):
   33157         (Widget::isEnabled):
   33158         (Widget::focusPolicy):
   33159         (Widget::disableFlushDrawing):
   33160         (Widget::lockDrawingFocus):
   33161         (Widget::unlockDrawingFocus):
   33162         (JavaAppletWidget::JavaAppletWidget):
   33163         (TextField::selectAll):
   33164         (TextField::addSearchResult):
   33165         (TextField::selectionStart):
   33166         (TextField::hasSelectedText):
   33167         (TextField::selectedText):
   33168         (TextField::setAutoSaveName):
   33169         (TextField::checksDescendantsForFocus):
   33170         (TextField::setSelection):
   33171         (TextField::setMaxResults):
   33172         (TextField::edited):
   33173         (Slider::Slider):
   33174         (Slider::sizeHint):
   33175         (Slider::setValue):
   33176         (Slider::setMaxValue):
   33177         (Slider::setMinValue):
   33178         (Slider::~Slider):
   33179         (Slider::setFont):
   33180         (Slider::value):
   33181         (ListBox::setSelected):
   33182         (ListBox::sizeForNumberOfLines):
   33183         (ListBox::isSelected):
   33184         (ListBox::appendItem):
   33185         (ListBox::doneAppendingItems):
   33186         (ListBox::setWritingDirection):
   33187         (ListBox::setEnabled):
   33188         (ListBox::clear):
   33189         (ListBox::checksDescendantsForFocus):
   33190         (FileButton::FileButton):
   33191         (FileButton::click):
   33192         (FileButton::sizeForCharacterWidth):
   33193         (FileButton::focusPolicy):
   33194         (FileButton::frameGeometry):
   33195         (FileButton::setFilename):
   33196         (FileButton::baselinePosition):
   33197         (FileButton::setFrameGeometry):
   33198         (FileButton::setDisabled):
   33199         (Slider::focusPolicy):
   33200         (ListBox::focusPolicy):
   33201         (TextField::focusPolicy):
   33202         (Cursor::Cursor):
   33203         (PlatformMouseEvent::PlatformMouseEvent):
   33204         (WebCore::searchableIndexIntroduction):
   33205         (WebCore::findNextSentenceFromIndex):
   33206         (WebCore::findSentenceBoundary):
   33207         (WebCore::findNextWordFromIndex):
   33208         (WebCore::ServeSynchronousRequest):
   33209         (FrameWin::focusWindow):
   33210         (FrameWin::unfocusWindow):
   33211         (FrameWin::locationbarVisible):
   33212         (FrameWin::issueRedoCommand):
   33213         (FrameWin::getObjectInstanceForWidget):
   33214         (FrameWin::getEmbedInstanceForWidget):
   33215         (FrameWin::canRedo):
   33216         (FrameWin::canUndo):
   33217         (FrameWin::registerCommandForRedo):
   33218         (FrameWin::runJavaScriptPrompt):
   33219         (FrameWin::shouldInterruptJavaScript):
   33220         (FrameWin::openURL):
   33221         (FrameWin::print):
   33222         (FrameWin::getAppletInstanceForWidget):
   33223         (FrameWin::passMouseDownEventToWidget):
   33224         (FrameWin::issueCutCommand):
   33225         (FrameWin::issueCopyCommand):
   33226         (FrameWin::passWheelEventToChildWidget):
   33227         (FrameWin::issueUndoCommand):
   33228         (FrameWin::mimeTypeForFileName):
   33229         (FrameWin::issuePasteCommand):
   33230         (FrameWin::scheduleClose):
   33231         (FrameWin::markMisspellings):
   33232         (FrameWin::menubarVisible):
   33233         (FrameWin::personalbarVisible):
   33234         (FrameWin::statusbarVisible):
   33235         (FrameWin::toolbarVisible):
   33236         (FrameWin::issueTransposeCommand):
   33237         (FrameWin::canPaste):
   33238         (FrameWin::objectContentType):
   33239         (FrameWin::canGoBackOrForward):
   33240         (FrameWin::issuePasteAndMatchStyleCommand):
   33241         (FrameWin::createPlugin):
   33242         (BrowserExtensionWin::canRunModal):
   33243         (BrowserExtensionWin::createNewWindow):
   33244         (BrowserExtensionWin::canRunModalNow):
   33245         (BrowserExtensionWin::runModal):
   33246         (BrowserExtensionWin::goBackOrForward):
   33247         (BrowserExtensionWin::historyURL):
   33248         (GraphicsContext::addRoundedRectClip):
   33249         (GraphicsContext::addInnerRoundedRectClip):
   33250         (WebCore::screenDepthPerComponent):
   33251         (WebCore::screenIsMonochrome):
   33252         (WebCore::moveCursor):
   33253         (WebCore::historyContains):
   33254         (WebCore::submitButtonDefaultLabel):
   33255         (WebCore::inputElementAltText):
   33256         (WebCore::resetButtonDefaultLabel):
   33257         (WebCore::defaultLanguage):
   33258         (WebCore::findWordBoundary):
   33259         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
   33260         (PlugInInfoStore::pluginCount):
   33261         (WebCore::PlugInInfoStore::supportsMIMEType):
   33262         (WebCore::refreshPlugins):
   33263         (WebCore::ResourceLoader::assembleResponseHeaders):
   33264         (WebCore::ResourceLoader::retrieveCharset):
   33265         (FrameWin::restoreDocumentState):
   33266         (FrameWin::partClearedInBegin):
   33267         (FrameWin::createEmptyDocument):
   33268         (FrameWin::overrideMediaType):
   33269         (FrameWin::handledOnloadEvents):
   33270         (FrameWin::markedTextRange):
   33271         (FrameWin::passSubframeEventToSubframe):
   33272         (FrameWin::lastEventIsMouseUp):
   33273         (FrameWin::addMessageToConsole):
   33274         (FrameWin::shouldChangeSelection):
   33275         (FrameWin::respondToChangedSelection):
   33276         (FrameWin::createFrame):
   33277         (FrameWin::saveDocumentState):
   33278         (FrameWin::registerCommandForUndo):
   33279         (FrameWin::clearUndoRedoOperations):
   33280         (FrameWin::incomingReferrer):
   33281         (FrameWin::markMisspellingsInAdjacentWords):
   33282         (FrameWin::respondToChangedContents):
   33283         (BrowserExtensionWin::BrowserExtensionWin):
   33284         (BrowserExtensionWin::setTypedIconURL):
   33285         (BrowserExtensionWin::setIconURL):
   33286         (BrowserExtensionWin::getHistoryLength):
   33287         (WebCore::CheckIfReloading):
   33288         (WebCore::CheckCacheObjectStatus):
   33289         (Widget::setEnabled):
   33290         (Widget::paint):
   33291         (Widget::setIsSelected):
   33292         (ScrollView::addChild):
   33293         (ScrollView::removeChild):
   33294         (ScrollView::scrollPointRecursively):
   33295         (ScrollView::inWindow):
   33296         (GraphicsContext::setShadow):
   33297         (GraphicsContext::clearShadow):
   33298         (GraphicsContext::beginTransparencyLayer):
   33299         (GraphicsContext::endTransparencyLayer):
   33300         (GraphicsContext::clearRect):
   33301         (GraphicsContext::strokeRect):
   33302         (GraphicsContext::setLineWidth):
   33303         (GraphicsContext::setLineCap):
   33304         (GraphicsContext::setLineJoin):
   33305         (GraphicsContext::setMiterLimit):
   33306         (GraphicsContext::setAlpha):
   33307         (GraphicsContext::setCompositeOperation):
   33308         (GraphicsContext::clip):
   33309         (GraphicsContext::translate):
   33310         (GraphicsContext::rotate):
   33311         (GraphicsContext::scale):
   33312         (Path::Path):
   33313         (Path::~Path):
   33314         (Path::contains):
   33315         (Path::translate):
   33316         (Path::boundingRect):
   33317         (Path::operator=):
   33318         (Path::clear):
   33319         (Path::moveTo):
   33320         (Path::addLineTo):
   33321         (Path::addQuadCurveTo):
   33322         (Path::addBezierCurveTo):
   33323         (Path::addArcTo):
   33324         (Path::closeSubpath):
   33325         (Path::addArc):
   33326         (Path::addRect):
   33327         (Path::addEllipse):
   33328         (TextField::TextField):
   33329         (TextField::~TextField):
   33330         (TextField::setFont):
   33331         (TextField::setAlignment):
   33332         (TextField::setWritingDirection):
   33333         (TextField::maxLength):
   33334         (TextField::setMaxLength):
   33335         (TextField::text):
   33336         (TextField::setText):
   33337         (TextField::cursorPosition):
   33338         (TextField::setCursorPosition):
   33339         (TextField::setEdited):
   33340         (TextField::setReadOnly):
   33341         (TextField::setPlaceholderString):
   33342         (TextField::setColors):
   33343         (TextField::sizeForCharacterWidth):
   33344         (TextField::baselinePosition):
   33345         (TextField::setLiveSearch):
   33346         (PopUpButton::PopUpButton):
   33347         (PopUpButton::~PopUpButton):
   33348         (PopUpButton::setFont):
   33349         (PopUpButton::baselinePosition):
   33350         (PopUpButton::setWritingDirection):
   33351         (PopUpButton::clear):
   33352         (PopUpButton::appendItem):
   33353         (PopUpButton::setCurrentItem):
   33354         (PopUpButton::sizeHint):
   33355         (PopUpButton::frameGeometry):
   33356         (PopUpButton::setFrameGeometry):
   33357         (PlatformScrollBar::PlatformScrollBar):
   33358         (PlatformScrollBar::~PlatformScrollBar):
   33359         (PlatformScrollBar::width):
   33360         (PlatformScrollBar::height):
   33361         (PlatformScrollBar::setEnabled):
   33362         (PlatformScrollBar::paint):
   33363         (PlatformScrollBar::setScrollBarValue):
   33364         (PlatformScrollBar::setKnobProportion):
   33365         (PlatformScrollBar::setRect):
   33366         (ScrollBar::ScrollBar):
   33367         (ScrollBar::setSteps):
   33368         (ScrollBar::scroll):
   33369         (ScrollBar::setValue):
   33370         (ScrollBar::setKnobProportion):
   33371         (ListBox::ListBox):
   33372         (ListBox::~ListBox):
   33373         (ListBox::setSelectionMode):
   33374         (ListBox::setFont):
   33375         (WebCore::focusRingColor):
   33376         (WebCore::setFocusRingColorChangeFunction):
   33377         (Frame::setNeedsReapplyStyles):
   33378         (Image::drawTiled):
   33379         (RenderPopupMenuWin::~RenderPopupMenuWin):
   33380         (RenderPopupMenuWin::clear):
   33381         (RenderPopupMenuWin::populate):
   33382         (RenderPopupMenuWin::showPopup):
   33383         (RenderPopupMenuWin::addSeparator):
   33384         (RenderPopupMenuWin::addGroupLabel):
   33385         (RenderPopupMenuWin::addOption):
   33386         (RenderThemeWin::paintMenuList):
   33387         (RenderThemeWin::adjustMenuListStyle):
   33388         (RenderThemeWin::systemFont):
   33389 
   33390 2006-08-15  Steve Falkenburg  <sfalken (a] apple.com>
   33391 
   33392         Fix the build with TOT.
   33393 
   33394         * WebCore.vcproj/WebCore.vcproj:
   33395 
   33396 2006-08-15  Steve Falkenburg  <sfalken (a] apple.com>
   33397 
   33398         Get this building.
   33399 
   33400         * WebCore.vcproj/WebCore.sln:
   33401         * WebCore.vcproj/WebCore.vcproj:
   33402         * WebCore.vcproj/build-generated-files.sh:
   33403 
   33404 2006-08-15  Steve Falkenburg  <sfalken (a] apple.com>
   33405 
   33406         Initial check-in.
   33407 
   33408         * ChangeLog: Added.
   33409         * WebCore.vcproj/WebCore.sln: Added.
   33410         * WebCore.vcproj/WebCore.vcproj: Added.
   33411         * WebCore.vcproj/build-generated-files.sh: Added.
   33412         * bridge/win/FrameWin.cpp: Added.
   33413         (WebCore::FrameWin::FrameWin):
   33414         (WebCore::FrameWin::~FrameWin):
   33415         (WebCore::FrameWin::urlSelected):
   33416         (WebCore::FrameWin::submitForm):
   33417         (WebCore::FrameWin::userAgent):
   33418         (WebCore::FrameWin::runJavaScriptAlert):
   33419         (WebCore::FrameWin::runJavaScriptConfirm):
   33420         (WebCore::FrameWin::keyPress):
   33421         (WebCore::FrameWin::setTitle):
   33422         (WebCore::FrameWin::setStatusBarText):
   33423         (WebCore::FrameWin::textFieldDidBeginEditing):
   33424         (WebCore::FrameWin::textFieldDidEndEditing):
   33425         (WebCore::FrameWin::textDidChangeInTextField):
   33426         (WebCore::FrameWin::doTextFieldCommandFromEvent):
   33427         (WebCore::FrameWin::textWillBeDeletedInTextField):
   33428         (WebCore::FrameWin::textDidChangeInTextArea):
   33429         * bridge/win/FrameWin.h: Added.
   33430         (WebCore::Win):
   33431         * platform/win/ResourceLoaderWin.cpp: Added.
   33432         (WebCore::addToOutstandingJobs):
   33433         (WebCore::removeFromOutstandingJobs):
   33434         (WebCore::lookupResourceLoader):
   33435         (WebCore::ResourceLoaderWndProc):
   33436         (WebCore::initializeOffScreenResourceLoaderWindow):
   33437         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
   33438         (WebCore::ResourceLoader::~ResourceLoader):
   33439         (WebCore::transferJobStatusCallback):
   33440         (WebCore::ResourceLoader::start):
   33441         (WebCore::ResourceLoader::fileLoadTimer):
   33442         (WebCore::ResourceLoader::cancel):
   33443         * platform/win/ResourceLoaderWin.h: Added.
   33444 
   33445 === End of merged changes from branches/WindowsMerge ===
   33446 
   33447 2007-06-10  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   33448 
   33449          Reviewed by Maciej.
   33450  
   33451          Disable whole-view editing for the Gdk port in order to improve the browsing experience.
   33452  
   33453          * platform/gdk/EditorClientGdk.cpp:
   33454          (WebCore::EditorClientGdk::isEditable): Return false to disable whole-view editing
   33455  
   33456 2007-06-08  Sam Weinig  <sam (a] webkit.org>
   33457 
   33458         Reviewed by Oliver.
   33459 
   33460         Patch for http://bugs.webkit.org/show_bug.cgi?id=14044
   33461         Autogenerate the JS bindings for HTMLCollection
   33462 
   33463         - also moves JSHTMLAllCollection into it's own file.
   33464 
   33465         * DerivedSources.make:
   33466         * WebCore.pro:
   33467         * WebCore.xcodeproj/project.pbxproj:
   33468         * bindings/js/JSHTMLAllCollection.h: Added.
   33469         (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
   33470         (WebCore::JSHTMLAllCollection::toBoolean):
   33471         (WebCore::JSHTMLAllCollection::masqueradeAsUndefined):
   33472         * bindings/js/JSHTMLCollectionCustom.cpp: Added.
   33473         (WebCore::getNamedItems):
   33474         (WebCore::JSHTMLCollection::callAsFunction):
   33475         (WebCore::JSHTMLCollection::implementsCall):
   33476         (WebCore::JSHTMLCollection::canGetItemsForName):
   33477         (WebCore::JSHTMLCollection::nameGetter):
   33478         (WebCore::JSHTMLCollection::item):
   33479         (WebCore::JSHTMLCollection::namedItem):
   33480         (WebCore::toJS):
   33481         * bindings/js/JSHTMLDocumentCustom.cpp:
   33482         (WebCore::JSHTMLDocument::nameGetter):
   33483         (WebCore::JSHTMLDocument::all):
   33484         * bindings/js/JSXMLHttpRequest.cpp:
   33485         * bindings/js/kjs_html.cpp:
   33486         (WebCore::ImageConstructorImp::ImageConstructorImp):
   33487         (WebCore::ImageConstructorImp::construct):
   33488         * bindings/js/kjs_html.h:
   33489         (WebCore::ImageConstructorImp::implementsConstruct):
   33490         * bindings/js/kjs_window.cpp:
   33491         (KJS::Window::namedItemGetter):
   33492         * bindings/objc/DOMUtility.mm:
   33493         (KJS::createDOMWrapper):
   33494         * bindings/scripts/CodeGeneratorJS.pm:
   33495         * html/HTMLCollection.cpp:
   33496         (WebCore::HTMLCollection::tags):
   33497         * html/HTMLCollection.h:
   33498         (WebCore::HTMLCollection::collectionType):
   33499         * html/HTMLCollection.idl:
   33500         * html/HTMLOptionsCollection.idl:
   33501 
   33502 2007-06-08  Justin Garcia  <justin.garcia (a] apple.com>
   33503 
   33504         Reviewed by John.
   33505         
   33506         <rdar://problem/5232159> REGRESSION: Cannot select text in RSS view
   33507 
   33508         The selection is updated both on mouse movement and
   33509         when the autoscroll timer fires.  The autoscroll
   33510         code wasn't converting mouse coordinates to layer
   33511         coordinates correctly, and was then using those
   33512         coordinates to create a bad selection.
   33513 
   33514         * rendering/RenderLayer.cpp:
   33515         (WebCore::RenderLayer::autoscroll): Use convertToLayerCoordinates.
   33516 
   33517 2007-06-08  Anders Carlsson  <andersca (a] apple.com>
   33518 
   33519         Reviewed by Geoff.
   33520 
   33521         Store the root object in a hash set, keyed by the plugin view. This is in preparation for 
   33522         letting plugins invalidate the root object upon destruction
   33523 
   33524         * page/Frame.cpp:
   33525         (WebCore::Frame::createRootObject):
   33526         (WebCore::Frame::cleanupScriptObjects):
   33527         * page/FramePrivate.h:
   33528 
   33529 2007-06-08  Lars Knoll <lars (a] trolltech.com>
   33530 
   33531         Reviewed by Zack.
   33532 
   33533         Add qwebobjectpluginconnector to the build.
   33534 
   33535         * WebCore.pro:
   33536 
   33537 2007-06-07  Justin Garcia  <justin.garcia (a] apple.com>
   33538 
   33539         Reviewed by Tristan.
   33540         
   33541         <rdar://problem/5250997> A crash occurs when selecting Undo Typing for a page that has been closed in tab
   33542 
   33543         * WebCore.exp: Added clearUndoRedoOperations.
   33544         * page/Page.cpp:
   33545         (WebCore::Page::clearUndoRedoOperations): Added.
   33546         * page/Page.h:
   33547         
   33548 2007-06-07  David Hyatt  <hyatt (a] apple.com>
   33549 
   33550         Fix crash.  Null check layer.  Bug 13984.
   33551 
   33552         Reviewed by andersca
   33553 
   33554         * WebCore.xcodeproj/project.pbxproj:
   33555         * page/FrameView.cpp:
   33556         (WebCore::FrameView::windowClipRectForLayer):
   33557 
   33558 2007-06-07  Oliver Hunt  <oliver (a] apple.com>
   33559 
   33560         Reviewed by Justin.
   33561 
   33562         Remove incorrect assertions.
   33563         
   33564         These assertions were made on the assumption that 
   33565         TSM would always call with a range that was contained 
   33566         by an editable region.
   33567         
   33568         TSM may call -[WebHTMLView characterIndexForPoint:] on a mouse
   33569         event that is otherwise unrelated to editing, which may
   33570         be outside the current editing region, triggering these 
   33571         assertions.
   33572 
   33573         * page/mac/WebCoreFrameBridge.mm:
   33574         (-[WebCoreFrameBridge convertToNSRange:]):
   33575 
   33576 2007-06-07  Justin Garcia  <justin.garcia (a] apple.com>
   33577 
   33578         Reviewed by John.
   33579         
   33580         <rdar://problem/5237074> REGRESSION: editing/unsupported-content/table-delete-003 is failing (13931)
   33581         
   33582         * editing/DeleteSelectionCommand.cpp:
   33583         (WebCore::DeleteSelectionCommand::initializeStartEnd):
   33584         We wouldn't expand the selection to include a special element 
   33585         at the start of the selection unless the end of the selection 
   33586         was at the end of a special element. Avoid a special 
   33587         element at the start as long as it's fully selected. Ditto for 
   33588         the end.
   33589         * editing/htmlediting.cpp:
   33590         (WebCore::positionBeforeContainingSpecialElement):
   33591         (WebCore::positionAfterContainingSpecialElement):
   33592 
   33593 2007-06-07  Sam Weinig  <sam (a] webkit.org>
   33594 
   33595         Reviewed by Anders.
   33596 
   33597         Patch for  http://bugs.webkit.org/show_bug.cgi?id=14028
   33598         Finish autogenerating the JS bindings for Node
   33599 
   33600         * DerivedSources.make:
   33601         * WebCore.pro:
   33602         * WebCore.xcodeproj/project.pbxproj:
   33603         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   33604         (WebCore::createJSHTMLWrapper):
   33605         * bindings/js/JSHTMLElementWrapperFactory.h:
   33606         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   33607         * bindings/js/JSNamedNodeMapCustom.cpp:
   33608         * bindings/js/JSNodeCustom.cpp:
   33609         (WebCore::JSNode::insertBefore):
   33610         (WebCore::JSNode::replaceChild):
   33611         (WebCore::JSNode::removeChild):
   33612         (WebCore::JSNode::appendChild):
   33613         (WebCore::JSNode::mark):
   33614         (WebCore::toJS):
   33615         * bindings/js/JSSVGElementWrapperFactory.cpp:
   33616         (WebCore::createJSSVGWrapper):
   33617         * bindings/js/JSSVGElementWrapperFactory.h:
   33618         * bindings/js/JSXSLTProcessor.cpp:
   33619         (KJS::XSLTProcessorPrototypeFunction::callAsFunction):
   33620         * bindings/js/kjs_binding.cpp:
   33621         (KJS::ScriptInterpreter::getDOMNodeForDocument):
   33622         (KJS::ScriptInterpreter::putDOMNodeForDocument):
   33623         (KJS::ScriptInterpreter::markDOMNodesForDocument):
   33624         (KJS::ScriptInterpreter::updateDOMNodeDocument):
   33625         * bindings/js/kjs_binding.h:
   33626         * bindings/js/kjs_dom.cpp:
   33627         (WebCore::toAttr):
   33628         * bindings/js/kjs_dom.h:
   33629         * bindings/js/kjs_domnode.h: Removed.
   33630         * bindings/objc/DOMUtility.mm:
   33631         (KJS::createDOMWrapper):
   33632         * bindings/scripts/CodeGeneratorJS.pm:
   33633         * dom/Node.h:
   33634         (WebCore::Node::parentElement):
   33635         * dom/Node.idl:
   33636 
   33637 2007-06-07  Sam Weinig  <sam (a] webkit.org>
   33638 
   33639         Another Gdk and Qt build fix.
   33640 
   33641         * WebCore.pro:
   33642 
   33643 2007-06-07  Sam Weinig  <sam (a] webkit.org>
   33644 
   33645         Gdk and Qt build fix.
   33646 
   33647         * WebCore.pro:
   33648 
   33649 2007-06-06  Sam Weinig  <sam (a] webkit.org>
   33650 
   33651         Reviewed by Hyatt.
   33652 
   33653         Patch for http://bugs.webkit.org/show_bug.cgi?id=13973
   33654         Autogenerate most of the rest of kjs_dom.h/cpp
   33655 
   33656         - Autogenerate JSNodeList and JSNamedNodeMap.
   33657         - Move JSEventTargetNode, JSNamedNodesCollection, and JSDOMExceptionConstructor 
   33658           into their own files.
   33659         - Rename KJS::DOMEventTargeNode to WebCore::JSEventTargetNode to adhere
   33660           to convention and allow easier code generation.
   33661         - Add JS constructors for JSNodeList and JSNamedNodeMap.
   33662         - Moved more toJS methods into the correct (corresponding) header files.
   33663         - Cleaned up code in order for changes to work.
   33664 
   33665         * DerivedSources.make:
   33666         * WebCore.xcodeproj/project.pbxproj:
   33667         * bindings/js/JSDOMExceptionConstructor.cpp: Added.
   33668         (WebCore::):
   33669         (WebCore::JSDOMExceptionConstructor::JSDOMExceptionConstructor):
   33670         (WebCore::JSDOMExceptionConstructor::getOwnPropertySlot):
   33671         (WebCore::JSDOMExceptionConstructor::getValueProperty):
   33672         (WebCore::getDOMExceptionConstructor):
   33673         * bindings/js/JSDOMExceptionConstructor.h: Added.
   33674         (WebCore::JSDOMExceptionConstructor::classInfo):
   33675         * bindings/js/JSDOMWindowCustom.cpp: Added.
   33676         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
   33677         * bindings/js/JSDocumentCustom.cpp:
   33678         (WebCore::JSDocument::mark):
   33679         (WebCore::toJS):
   33680         * bindings/js/JSEventTargetNode.cpp: Added.
   33681         (WebCore::JSEventTargetNode::JSEventTargetNode):
   33682         (WebCore::JSEventTargetNode::getOwnPropertySlot):
   33683         (WebCore::JSEventTargetNode::getValueProperty):
   33684         (WebCore::JSEventTargetNode::put):
   33685         (WebCore::JSEventTargetNode::putValueProperty):
   33686         (WebCore::JSEventTargetNode::setListener):
   33687         (WebCore::JSEventTargetNode::getListener):
   33688         (WebCore::JSEventTargetNode::pushEventHandlerScope):
   33689         (WebCore::JSEventTargetNodePrototypeFunction::callAsFunction):
   33690         (WebCore::toEventTargetNode):
   33691         * bindings/js/JSEventTargetNode.h: Added.
   33692         (WebCore::JSEventTargetNode::):
   33693         * bindings/js/JSHTMLElementCustom.cpp:
   33694         * bindings/js/JSHTMLFormElementCustom.cpp:
   33695         (WebCore::JSHTMLFormElement::nameGetter):
   33696         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   33697         * bindings/js/JSNamedNodeMapCustom.cpp: Added.
   33698         (WebCore::JSNamedNodeMap::canGetItemsForName):
   33699         (WebCore::JSNamedNodeMap::nameGetter):
   33700         * bindings/js/JSNamedNodesCollection.cpp: Added.
   33701         (WebCore::):
   33702         (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
   33703         (WebCore::JSNamedNodesCollection::lengthGetter):
   33704         (WebCore::JSNamedNodesCollection::indexGetter):
   33705         (WebCore::JSNamedNodesCollection::getOwnPropertySlot):
   33706         * bindings/js/JSNamedNodesCollection.h: Added.
   33707         (WebCore::JSNamedNodesCollection::classInfo):
   33708         * bindings/js/JSNodeCustom.cpp: Added.
   33709         (WebCore::toJS):
   33710         * bindings/js/JSNodeListCustom.cpp: Added.
   33711         (WebCore::JSNodeList::callAsFunction):
   33712         (WebCore::JSNodeList::implementsCall):
   33713         (WebCore::JSNodeList::canGetItemsForName):
   33714         (WebCore::JSNodeList::nameGetter):
   33715         * bindings/js/kjs_dom.cpp:
   33716         * bindings/js/kjs_dom.h:
   33717         * bindings/js/kjs_domnode.h:
   33718         * bindings/js/kjs_events.cpp:
   33719         (KJS::JSLazyEventListener::parseCode):
   33720         * bindings/js/kjs_html.cpp:
   33721         (KJS::JSHTMLCollection::getNamedItems):
   33722         * bindings/js/kjs_html.h:
   33723         * bindings/js/kjs_window.cpp:
   33724         (WebCore::toJS):
   33725         * bindings/js/kjs_window.h:
   33726         * bindings/objc/DOMInternal.mm:
   33727         (-[WebScriptObject _initializeScriptDOMNodeImp]):
   33728         * bindings/objc/DOMUtility.mm:
   33729         (KJS::createDOMWrapper):
   33730         * bindings/scripts/CodeGeneratorJS.pm:
   33731         * bridge/mac/WebCoreAXObject.mm:
   33732         * dom/Attr.idl:
   33733         * dom/CharacterData.idl:
   33734         * dom/Document.idl:
   33735         * dom/DocumentFragment.idl:
   33736         * dom/DocumentType.idl:
   33737         * dom/Element.idl:
   33738         * dom/NamedNodeMap.idl:
   33739         * dom/Node.idl:
   33740         * dom/NodeList.idl:
   33741         * page/DOMWindow.idl:
   33742 
   33743 2007-06-06  Justin Garcia  <justin.garcia (a] apple.com>
   33744 
   33745         Reviewed by Oliver.
   33746         
   33747         <rdar://problem/5245519> CrashTracer: [USER] 457 crashes in Mail at WebCore::CSSComputedStyleDeclaration::copyInheritableProperties()
   33748         
   33749         If the user pastes something into a region that ends up being
   33750         invisible, or if the pasted content contains style spans 
   33751         that are render-less, we'll crash when we try to remove
   33752         redundant styles from style spans.
   33753 
   33754         * css/CSSComputedStyleDeclaration.cpp:
   33755         (WebCore::CSSComputedStyleDeclaration::copyInheritableProperties):
   33756         Add null checks.
   33757 
   33758 2007-06-06  Justin Garcia  <justin.garcia (a] apple.com>
   33759 
   33760         Reviewed by Harrison.
   33761 
   33762         <rdar://problem/4889598> Problems with moveDown: and moveUp: in Notes with ToDos
   33763         
   33764         The caret would disappear when moving from content above or below
   33765         a ToDo if that ToDo doesn't have any content in it with the same
   33766         x position as the caret. That's because closestLeafChildForXPos
   33767         would return non-editable leaves, and which turn into non-editable
   33768         VisiblePositions, which are invisible.
   33769 
   33770         * editing/visible_units.cpp:
   33771         (WebCore::previousLinePosition): Ask closestLeafForXPos to only
   33772         return editable leaves.
   33773         (WebCore::nextLinePosition): Ditto.
   33774         * rendering/RootInlineBox.cpp:
   33775         (WebCore::isEditableLeaf): Added.
   33776         (WebCore::RootInlineBox::closestLeafChildForXPos): If requested,
   33777         return the closest editable leaf. Removed an early return if the
   33778         position is before the first leaf, it's not really much of an
   33779         optimization.
   33780         * rendering/RootInlineBox.h:
   33781 
   33782 2007-06-06  Sam Weinig  <sam (a] webkit.org>
   33783 
   33784         Reviewed by Anders.
   33785 
   33786         Fix release build.
   33787 
   33788         * bindings/objc/DOM.mm:
   33789         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]): Add missing null initialization.
   33790         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]): Add missing null initialization.
   33791 
   33792 2007-06-06  Sam Weinig  <sam (a] webkit.org>
   33793 
   33794         Reviewed by Hyatt.
   33795 
   33796         Patch for http://bugs.webkit.org/show_bug.cgi?id=13947
   33797         Finish autogenerating the JS DOM traversal code
   33798 
   33799         - Completely generate JSNodeFilter.
   33800         - Move JSNodeFilterCondition into its own file
   33801 
   33802         * DerivedSources.make:
   33803         * WebCore.pro:
   33804         * WebCore.xcodeproj/project.pbxproj:
   33805         * bindings/js/JSNodeFilterCondition.cpp: Copied from WebCore/bindings/js/kjs_traversal.cpp.
   33806         (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
   33807         (WebCore::JSNodeFilterCondition::mark):
   33808         (WebCore::JSNodeFilterCondition::acceptNode):
   33809         * bindings/js/JSNodeFilterCondition.h: Copied from WebCore/bindings/js/kjs_traversal.h.
   33810         * bindings/js/JSNodeFilterCustom.cpp: Added.
   33811         (WebCore::JSNodeFilter::mark):
   33812         (WebCore::toNodeFilter):
   33813         * bindings/js/kjs_dom.cpp:
   33814         * bindings/js/kjs_traversal.cpp: Removed.
   33815         * bindings/js/kjs_traversal.h: Removed.
   33816         * bindings/js/kjs_window.cpp:
   33817         * bindings/objc/DOM.mm:
   33818         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
   33819         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
   33820         * bindings/scripts/CodeGeneratorJS.pm:
   33821         * dom/Document.cpp:
   33822         (WebCore::Document::createNodeIterator):
   33823         (WebCore::Document::createTreeWalker):
   33824         * dom/Document.h:
   33825         * dom/NodeFilter.idl:
   33826 
   33827 2007-06-06  Alp Toker  <alp.toker (a] collabora.co.uk>
   33828 
   33829         Reviewed by Eric Seidel.
   33830 
   33831         http://bugs.webkit.org/show_bug.cgi?id=14017
   33832         Cairo: Unwanted gradient effect for small stretched images
   33833 
   33834         * platform/graphics/cairo/ImageCairo.cpp: Use CAIRO_FILTER_NEAREST to
   33835         work around the issue.
   33836         (WebCore::BitmapImage::draw):
   33837         (WebCore::Image::drawPattern):
   33838 
   33839 2007-06-06  Lars Knoll <lars (a] trolltech.com>
   33840 
   33841         Reviewed by Zack
   33842 
   33843         Add an API to create and load plugins.
   33844         Don't include moc files by hand anymore, rather let
   33845         qmake handle them.
   33846 
   33847         * WebCore.pro:
   33848         * platform/qt/MimeTypeRegistryQt.cpp:
   33849         (WebCore::):
   33850         (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
   33851         * platform/qt/QWebPopup.cpp:
   33852         * platform/qt/SharedTimerQt.cpp:
   33853 
   33854 2007-06-06  Mark Rowe  <mrowe (a] apple.com>
   33855 
   33856         Qt build fix.
   33857 
   33858         * rendering/RenderTextControl.cpp: Fix case of #include filename.
   33859 
   33860 2007-06-06  Lars Knoll  <lars (a] trolltech.com>
   33861 
   33862         Reviewed by Maciej.
   33863 
   33864         Define WTF_USE_NPOBJECT for Qt. Fix includes
   33865         in HTMLPluginElement and add proper forwarding headers
   33866         from JavaScriptCore.
   33867 
   33868         * ForwardingHeaders/bindings/npruntime.h: Added.
   33869         * ForwardingHeaders/bindings/runtime.h: Added.
   33870         * config.h:
   33871         * html/HTMLPlugInElement.cpp:
   33872         * html/HTMLPlugInElement.h:
   33873 
   33874 2007-06-06  David Hyatt  <hyatt (a] apple.com>
   33875 
   33876         Bulletproof windowClipRect, since it can be called at crazy times.
   33877         Part of fix for 13972.
   33878 
   33879         Reviewed by olliej
   33880 
   33881         * bindings/objc/DOM.mm:
   33882         (-[DOMElement _windowClipRect]):
   33883 
   33884 2007-06-05  Darin Fisher  <darin (a] chromium.org>
   33885 
   33886         Reviewed by Dave Hyatt.
   33887 
   33888         Fixes http://bugs.webkit.org/show_bug.cgi?id=14008
   33889 
   33890         * rendering/RenderTextControl.cpp:
   33891         (WebCore::RenderTextControl::calcHeight):
   33892         (WebCore::RenderTextControl::calcPrefWidths):
   33893 
   33894 2007-06-05  Kevin McCullough  <kmccullough (a] apple.com>
   33895 
   33896         - Respelling Oliver's name right.
   33897 
   33898 2007-06-05  Kevin McCullough  <kmccullough (a] apple.com>
   33899 
   33900         Reviewed by Mark and Oliver.
   33901 
   33902         - http://bugs.webkit.org/show_bug.cgi?id=13352  REGRESSION: Gmail hangs on send message.
   33903         - Now we don't hang, but we do so by avoiding certain legitimate characters, the evangelism bug for this is: <rdar://problem/5252577> gmail does not accept legal characters in the form boundary
   33904 
   33905         * html/HTMLFormElement.cpp:
   33906         (WebCore::getUniqueBoundaryString):
   33907 
   33908 2007-06-05  Anders Carlsson  <andersca (a] apple.com>
   33909 
   33910         Build fix.
   33911         
   33912         * xml/xmlhttprequest.cpp:
   33913         (WebCore::isValidToken):
   33914 
   33915 2007-06-05  Anders Carlsson  <andersca (a] apple.com>
   33916 
   33917         Reviewed by Geoff.
   33918 
   33919         <rdar://problem/5245555> REGRESSION: HTTP header injection in XMLHttpRequest.setRequestHeader
   33920         <rdar://problem/5246208> HTTP injection in XMLHttpRequest.open method parameter
   33921         <rdar://problem/5246242> HTTP header injection in HXMLHttpRequest.setRequestHeader header parameter
   33922         
   33923         Check method names, header names and header values and throw exceptions if any of them are
   33924         invalid. This is what the new XMLHttpRequest spec states that we should do.
   33925         
   33926         * xml/xmlhttprequest.cpp:
   33927         (WebCore::isValidToken):
   33928         (WebCore::isValidHeaderValue):
   33929         (WebCore::XMLHttpRequest::open):
   33930         (WebCore::XMLHttpRequest::setRequestHeader):
   33931 
   33932 2007-06-05  Sam Weinig  <sam (a] webkit.org>
   33933 
   33934         Reviewed by Geoff.
   33935 
   33936         Optimize JSCSSStyleDeclaration after performance regression in r21854.
   33937 
   33938         - Check static table before name getter in JSCSSStyleDeclaration::getOwnPropertySlot()
   33939         - Get rid of a string allocation by keeping string as KJS::Identifier for canGetItemsForName()
   33940           functions.
   33941 
   33942         * WebCore.xcodeproj/project.pbxproj:
   33943         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
   33944         (WebCore::JSCSSStyleDeclaration::canGetItemsForName):
   33945         * bindings/js/JSHTMLAppletElementCustom.cpp:
   33946         (WebCore::JSHTMLAppletElement::canGetItemsForName):
   33947         * bindings/js/JSHTMLDocumentCustom.cpp:
   33948         (WebCore::JSHTMLDocument::canGetItemsForName):
   33949         * bindings/js/JSHTMLEmbedElementCustom.cpp:
   33950         (WebCore::JSHTMLEmbedElement::canGetItemsForName):
   33951         * bindings/js/JSHTMLFormElementCustom.cpp:
   33952         (WebCore::JSHTMLFormElement::canGetItemsForName):
   33953         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
   33954         (WebCore::JSHTMLFrameSetElement::canGetItemsForName):
   33955         * bindings/js/JSHTMLObjectElementCustom.cpp:
   33956         (WebCore::JSHTMLObjectElement::canGetItemsForName):
   33957         * bindings/scripts/CodeGeneratorJS.pm:
   33958         * css/CSSStyleDeclaration.idl:
   33959 
   33960 2007-06-04  Sam Weinig  <sam (a] webkit.org>
   33961 
   33962         Reviewed, tweaked and landed by Anders.
   33963 
   33964         <rdar://problem/5247178> REGRESSION: With CSS Edit 2.5, a crash occurs at WebCore::DeprecatedString::DeprecatedString when page fails to be extracted
   33965         
   33966         Null check the provisional document loader. If an application stops the load 
   33967         inside of the didFailProvisionalLoad delegate method, the provisional document loader will be nulled out.
   33968 
   33969         * loader/FrameLoader.cpp:
   33970         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   33971 
   33972 2007-06-04  Alp Toker  <alp.toker (a] collabora.co.uk>
   33973 
   33974         Reviewed by Anders.
   33975 
   33976         http://bugs.webkit.org/show_bug.cgi?id=13986
   33977         Cairo graphics fixes and cleanups
   33978 
   33979         * platform/graphics/ImageBuffer.h:
   33980         * platform/graphics/cairo/ImageBufferCairo.cpp:
   33981         (WebCore::ImageBuffer::surface): Provide surface() accessor.
   33982         * platform/graphics/cairo/AffineTransformCairo.cpp:
   33983         (WebCore::AffineTransform::rotate): Convert from degrees to radians to
   33984         fix rotation.
   33985         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   33986         (WebCore::GraphicsContext::drawRect): Add save/restore.
   33987         (WebCore::GraphicsContext::rotate): Rename parameter to "radians" to
   33988         avoid further confusion.
   33989         * platform/graphics/cairo/PathCairo.cpp:
   33990         (WebCore::Path::boundingRect): The cairo_fill_extents() parameters do
   33991         not describe a point/size but rather the two control points of the
   33992         rectangular region.
   33993         (WebCore::Path::contains): Remove needless casts.
   33994 
   33995 2007-06-04  Sam Weinig  <sam (a] webkit.org>
   33996 
   33997         Reviewed by Adam Roben.
   33998 
   33999         Fix the buildbot.
   34000 
   34001         * rendering/RenderSVGContainer.cpp:
   34002         (WebCore::RenderSVGContainer::layout):
   34003 
   34004 2007-06-04  Justin Garcia  <justin.garcia (a] apple.com>
   34005 
   34006         Reviewed by Kimon Tsinteris.
   34007 
   34008         <rdar://problem/5241148> REGRESSION: ActivEdit can't perform operations on certain selections
   34009         
   34010         Return valid equivalents from these methods (no [img, 1] for 
   34011         example). ActivEdit was using positions returned from these
   34012         methods to create new DOM Ranges.
   34013         
   34014         * editing/SelectionController.cpp:
   34015         (WebCore::SelectionController::baseNode):
   34016         (WebCore::SelectionController::baseOffset):
   34017         (WebCore::SelectionController::extentNode):
   34018         (WebCore::SelectionController::extentOffset):
   34019         (WebCore::SelectionController::anchorNode):
   34020         (WebCore::SelectionController::anchorOffset):
   34021         (WebCore::SelectionController::focusNode):
   34022         (WebCore::SelectionController::focusOffset):
   34023         * editing/SelectionController.h:
   34024 
   34025 2007-06-04  Rob Buis  <buis (a] kde.org>
   34026 
   34027         Fix the svg experimental build.
   34028 
   34029         * ksvg2/svg/SVGFEFloodElement.cpp:
   34030 
   34031 2007-06-04  Rob Buis  <buis (a] kde.org>
   34032 
   34033         Reviewed by Hyatt.
   34034 
   34035         http://bugs.webkit.org/show_bug.cgi?id=6170
   34036         CSS1: Properties for :first-letter aren't recalculated on color change
   34037 
   34038         Mark styles with first-letter as unique.
   34039 
   34040         * css/cssstyleselector.cpp:
   34041         (WebCore::CSSStyleSelector::styleForElement):
   34042 
   34043 2007-06-01  Anders Carlsson  <acarlsson (a] apple.com>
   34044 
   34045         Reviewed by David Harrison.
   34046 
   34047         <rdar://problem/5236843> 
   34048         CrashTracer: [USER] 3 crashes in Mail at WebCore::Loader::didReceiveResponse(WebCore::SubresourceLoader*, WebCore::ResourceResponse const&)
   34049 
   34050         This is by no means the best solution for handling user style sheets. I've filed <rdar://problem/5244734> 
   34051         for tracking that.
   34052         
   34053         * loader/loader.cpp:
   34054         (WebCore::Loader::didReceiveResponse):
   34055         If a load starts while the frame is still in the provisional state 
   34056         (this can be the case when loading the user style sheet), committing the load then causes all
   34057         requests to be removed from the m_requestsLoading map. This means that req might be null here.
   34058         In that case we just return early. 
   34059         
   34060 2007-06-01  Mitz Pettel  <mitz (a] webkit.org>
   34061 
   34062         Reviewed by Adele.
   34063 
   34064         - fix http://bugs.webkit.org/show_bug.cgi?id=13958
   34065           REGRESSION: Form select menu in iframe destroys form select menu on page
   34066 
   34067         * page/mac/EventHandlerMac.mm:
   34068         (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking): Instead of calling
   34069         the event handler methods directly, post the fake event on the application event
   34070         queue. This ensures that the fake event is handled only after handling of the
   34071         initiating event has ended, and is seen by ancestor frames' event handlers.
   34072 
   34073 2007-06-01  George Staikos  <staikos (a] kde.org>
   34074 
   34075         Reviewed by bdash.
   34076 
   34077         Redo the build fix again after it was backed out
   34078 
   34079         * WebCore.pro: add an include guard around CSSGrammar.h
   34080 
   34081 2007-05-31  Geoffrey Garen  <ggaren (a] apple.com>
   34082 
   34083         Reviewed by Beth Dakin.
   34084 
   34085         Fixed <rdar://problem/5238177> Continuing after hitting breakpoint doesn't 
   34086         execute the next step.
   34087         
   34088         No test because the only code affected is the debugger, and none of the
   34089         relevant API is exported.
   34090         
   34091         Reverted an accidental change in 21324 that caused originRootObject for
   34092         the window object always to be 0. We could probably just remove the debugger's
   34093         dependency on originRootObject, but I wanted to be safe.
   34094 
   34095         * page/mac/FrameMac.mm:
   34096         (WebCore::Frame::windowScriptObject):
   34097 
   34098 2007-05-31  David Hyatt  <hyatt (a] apple.com>
   34099 
   34100         Fix for 11768, Flash plugin does not respect clips set via CSS.
   34101 
   34102         Reviewed by olliej
   34103 
   34104         * bindings/objc/DOM.mm:
   34105         (-[DOMElement _windowClipRect]):
   34106         * bindings/objc/DOMPrivate.h:
   34107         * page/FrameView.cpp:
   34108         (WebCore::FrameView::windowClipRect):
   34109         (WebCore::FrameView::windowClipRectForLayer):
   34110         * platform/ScrollView.h:
   34111         (WebCore::ScrollView::contentsToWindow):
   34112         (WebCore::ScrollView::windowToContents):
   34113         * platform/mac/ScrollViewMac.mm:
   34114         (WebCore::ScrollView::contentsToWindow):
   34115         (WebCore::ScrollView::windowToContents):
   34116 
   34117 2007-05-31  Sam Weinig  <sam (a] webkit.org>
   34118 
   34119         Reviewed by Adam.
   34120 
   34121         Fix build bot.
   34122 
   34123         * ksvg2/svg/SVGSVGElement.cpp:
   34124         (WebCore::SVGSVGElement::setCurrentScale):
   34125 
   34126 2007-05-31  Sam Weinig  <sam (a] webkit.org>
   34127 
   34128         Fix Qt and Gdk builds.
   34129 
   34130         * WebCore.pro: remove bindings/js/JSHTMLAnchorElementCustom.cpp
   34131 
   34132 2007-05-31  Sam Weinig  <sam (a] webkit.org>
   34133 
   34134         Reviewed by Geoff.
   34135 
   34136         Patch for http://bugs.webkit.org/show_bug.cgi?id=10782
   34137         Classes should not override JSObject::toString(ExecState *)
   34138 
   34139         Remove all overrides of JSObject::toString and JSObject::toPrimitive
   34140         which is a bad practice.  Instead, if an object, like the 
   34141         HTMLAnchorElement, needs to override to toString, it should add
   34142         a function to the JS object which will be called when needed.  This
   34143         also allows developers to override toString and valueOf from within JS.
   34144 
   34145         Test: fast/js/toString-and-valueOf-override.html
   34146 
   34147         * WebCore.xcodeproj/project.pbxproj:
   34148         * bindings/js/JSHTMLAnchorElementCustom.cpp: Removed.
   34149         * bindings/js/kjs_binding.cpp:
   34150         * bindings/js/kjs_binding.h:
   34151         * bindings/js/kjs_dom.cpp:
   34152         * bindings/js/kjs_dom.h:
   34153         * bindings/js/kjs_domnode.h:
   34154         * bindings/js/kjs_window.cpp:
   34155         (KJS::History::):
   34156         (KJS::LocationFunc::callAsFunction):
   34157         (KJS::SelectionFunc::callAsFunction):
   34158         * bindings/js/kjs_window.h:
   34159         * bindings/scripts/CodeGeneratorJS.pm:
   34160         * html/HTMLAnchorElement.cpp:
   34161         (WebCore::HTMLAnchorElement::toString):
   34162         * html/HTMLAnchorElement.h:
   34163         * html/HTMLAnchorElement.idl:
   34164 
   34165 2007-05-31  Rob Buis  <buis (a] kde.org>
   34166 
   34167         Reviewed by Darin.
   34168 
   34169         http://bugs.webkit.org/show_bug.cgi?id=11272
   34170         Implement currentScale(), setCurrentScale() and currentTranslate() in SVGSVGElement
   34171 
   34172         Allow zooming and panning, thereby implementing the above methods.
   34173 
   34174         * ksvg2/svg/SVGDocument.cpp:
   34175         (WebCore::SVGDocument::zoomEnabled):
   34176         (WebCore::SVGDocument::startPan):
   34177         (WebCore::SVGDocument::updatePan):
   34178         * ksvg2/svg/SVGDocument.h:
   34179         * ksvg2/svg/SVGSVGElement.cpp:
   34180         (WebCore::SVGSVGElement::currentScale):
   34181         (WebCore::SVGSVGElement::setCurrentScale):
   34182         (WebCore::SVGSVGElement::currentTranslate):
   34183         (WebCore::SVGSVGElement::setCurrentTranslate):
   34184         * ksvg2/svg/SVGSVGElement.h:
   34185         * page/EventHandler.cpp:
   34186         (WebCore::EventHandler::EventHandler):
   34187         (WebCore::EventHandler::handleMousePressEvent):
   34188         (WebCore::EventHandler::handleMouseMoveEvent):
   34189         (WebCore::EventHandler::handleMouseReleaseEvent):
   34190         * page/EventHandler.h:
   34191         * page/Frame.cpp:
   34192         (WebCore::Frame::setZoomFactor):
   34193         * rendering/RenderSVGContainer.cpp:
   34194         (WebCore::RenderSVGContainer::layout):
   34195         (WebCore::RenderSVGContainer::paint):
   34196         (WebCore::RenderSVGContainer::absoluteTransform):
   34197         * rendering/RenderSVGContainer.h:
   34198 
   34199 2007-05-31  Eric Seidel  <eric (a] webkit.org>
   34200 
   34201         Reviewed by Niko.
   34202 
   34203         Links are activated based on mouse down events instead of click events
   34204         http://bugs.webkit.org/show_bug.cgi?id=12570
   34205         
   34206         Test: svg/custom/prevent-default.svg
   34207 
   34208         * html/HTMLAnchorElement.cpp: use MiddleButton and RightButton instead of 1 and 2
   34209         (WebCore::HTMLAnchorElement::defaultEventHandler):
   34210         * ksvg2/svg/SVGAElement.cpp:
   34211         (WebCore::SVGAElement::defaultEventHandler): make it function more like the HTML side
   34212 
   34213 2007-05-30  Maciej Stachowiak  <mjs (a] apple.com>
   34214 
   34215         Reviewed by Hyatt.
   34216 
   34217         - fix layout test editing/style/table-selection.html
   34218         
   34219         This was broken by the change to keep whitespace text nodes in tables. They safely didn't render,
   34220         but the font delta style change command would wrap them in spans, creating extra anonymous table
   34221         cells.
   34222 
   34223         * editing/ApplyStyleCommand.cpp:
   34224         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Don't wrap in a span if the text node
   34225         is not rendered.
   34226 
   34227 2007-05-31  Alp Toker  <alp.toker (a] collabora.co.uk>
   34228 
   34229         Reviewed by Eric Seidel.
   34230 
   34231         http://bugs.webkit.org/show_bug.cgi?id=13941
   34232         Rename WebCore/platform/network/gdk to WebCore/platform/network/curl
   34233 
   34234         * WebCore.pro:
   34235 
   34236 2007-05-31  Alp Toker  <alp.toker (a] collabora.co.uk>
   34237 
   34238         Reviewed by Niko.
   34239 
   34240         Patch for http://bugs.webkit.org/show_bug.cgi?id=13945
   34241         GraphicsContextCairo enhancements necessary for SVG support
   34242 
   34243         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   34244         (WebCore::GraphicsContext::concatCTM):
   34245         (WebCore::GraphicsContext::beginPath):
   34246         (WebCore::GraphicsContext::addPath):
   34247 
   34248 2007-05-31  Patti Hoa <patti (a] apple.com>
   34249 
   34250         Reviewed by Darin.
   34251         
   34252         <rdar://problem/5221920> AXLink is returning a CFString instead of a CFURL for AXURL
   34253 
   34254         * bridge/mac/WebCoreAXObject.mm:
   34255         (-[WebCoreAXObject accessibilityAttributeValue:]):
   34256         Convert the url string to an NSURL before returning as the AXURLAttribute
   34257 
   34258 2007-05-30  Sam Weinig  <sam (a] webkit.org>
   34259 
   34260         Reviewed by Oliver.
   34261 
   34262         Patch for http://bugs.webkit.org/show_bug.cgi?id=13943
   34263         Autogenerate the JS bindings for the CSSStyleSheet
   34264 
   34265         * DerivedSources.make:
   34266         * WebCore.pro:
   34267         * WebCore.xcodeproj/project.pbxproj:
   34268         * bindings/js/JSStyleSheetCustom.cpp:
   34269         (WebCore::toJS):
   34270         * bindings/js/kjs_css.cpp:
   34271         * bindings/js/kjs_css.h:
   34272         * bindings/scripts/CodeGeneratorJS.pm:
   34273         * css/CSSStyleSheet.cpp:
   34274         (WebCore::CSSStyleSheet::addRule):
   34275         (WebCore::CSSStyleSheet::cssRules):
   34276         * css/CSSStyleSheet.h:
   34277         (WebCore::CSSStyleSheet::rules):
   34278         (WebCore::CSSStyleSheet::removeRule):
   34279         * css/CSSStyleSheet.idl:
   34280         * page/DOMWindow.idl:
   34281 
   34282 2007-05-30  Sam Weinig  <sam (a] webkit.org>
   34283 
   34284         Reviewed by Oliver.
   34285 
   34286         Patch for http://bugs.webkit.org/show_bug.cgi?id=13937
   34287         Autogenerate the JS bindings for the CSSValue
   34288 
   34289         * WebCore.pro:
   34290         * WebCore.xcodeproj/project.pbxproj:
   34291         * bindings/js/JSCSSValueCustom.cpp: Added.
   34292         (WebCore::toJS):
   34293         * bindings/js/kjs_css.cpp:
   34294         * bindings/js/kjs_css.h:
   34295         * bindings/objc/DOMUtility.mm:
   34296         (KJS::createDOMWrapper):
   34297         * bindings/scripts/CodeGeneratorJS.pm:
   34298         * css/CSSValue.h:
   34299         (WebCore::CSSValue::setCssText):
   34300         * css/CSSValue.idl:
   34301 
   34302 2007-05-30  Sam Weinig  <sam (a] webkit.org>
   34303 
   34304         Reviewed by Oliver the Hun.
   34305 
   34306         Patch for http://bugs.webkit.org/show_bug.cgi?id=13944
   34307         Generate and add missing JS constructors
   34308 
   34309         * css/CSSRuleList.idl:
   34310         * css/CSSValueList.idl:
   34311         * css/Counter.idl:
   34312         * page/DOMWindow.idl:
   34313 
   34314 2007-05-30  Justin Garcia  <justin.garcia (a] apple.com>
   34315  
   34316         Reviewed by Darin.
   34317  
   34318         http://bugs.webkit.org/show_bug.cgi?id=13915
   34319         REGRESSION(r21687): editing/inserting/paragraph-separator-* failing pixel test (misspelling markers)
   34320 
   34321         After r21687, SimplifiedBackwardsTextIterator was no longer 
   34322         emitting a '\n' as it left the first block of a range ending 
   34323         at [block, 0]. So, foo<div>^<br></div> looked like foo^ to
   34324         spell checking (foo wasn't marked as misspelled).
   34325 
   34326         After r21687, SBTI stopped emitting '\n's in the above case 
   34327         because 1) we stopped incorrectly emitting '\n's for nodes as 
   34328         we entered them and 2) we were and still are incorrectly calling 
   34329         code that should only be called when entering nodes as we leave 
   34330         them and 3) we don't call exitNode(), which is responsible 
   34331         for emitting the '\n' in the above testcase, when we should.
   34332 
   34333         Before and after r21687, we'd call exitNode() for a node as 
   34334         we traversed in reverse pre-order from its first descendant 
   34335         out to its sibling or one of its ancestors' siblings.  We 
   34336         weren't calling it a) after we'd enter a node that could 
   34337         have children but had none and b) when leaving a container 
   34338         that contained the end of the range used to create the iterator.
   34339 
   34340         * editing/TextIterator.cpp:
   34341         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
   34342         (WebCore::SimplifiedBackwardsTextIterator::advance): Call exitNode() as we
   34343         leave a childless container node and a node where the range ended.
   34344         * editing/TextIterator.h: Track the end of the range used to create
   34345         the SimplifiedBackwardsTextIterator.
   34346 
   34347 2007-05-30  Alp Toker  <alp.toker (a] collabora.co.uk>
   34348 
   34349         Reviewed by Brady.
   34350 
   34351         Enable logging in the Gdk port.
   34352         http://bugs.webkit.org/show_bug.cgi?id=13936
   34353 
   34354         * WebCore.pro:
   34355         * platform/NotImplemented.h: Changed to use WTFLogVerbose.
   34356         * platform/gdk/LoggingGdk.cpp: Added.
   34357         (WebCore::InitializeLoggingChannelsIfNecessary):
   34358 
   34359 2007-05-30  Beth Dakin  <bdakin (a] apple.com>
   34360 
   34361         Reviewed by Hyatt.
   34362 
   34363         Fix for <rdar://problem/5198882> CrashTracer: [USER] 7 crashes in 
   34364         Safari at com.apple.WebCore: WebCore::RenderBlock::layoutBlock + 
   34365         2360
   34366 
   34367         The problem is that we are re-entering layout when we should not. 
   34368         http://trac.webkit.org/projects/webkit/changeset/21778 actually 
   34369         fixed this crash, but we have been inspired to add the same guard 
   34370         in two other possibly-dangerous places.
   34371 
   34372         * page/FrameView.cpp:
   34373         (WebCore::FrameView::layout): Add the guard in two more places.
   34374 
   34375 2007-05-30  Justin Garcia  <justin.garcia (a] apple.com>
   34376 
   34377         Reviewed by Oliver.
   34378 
   34379         <rdar://problem/5096134> VO gets stuck on Howto.apple.com
   34380         http://bugs.webkit.org/show_bug.cgi?id=8622
   34381         VisiblePositions aren't canonicalized in some cases
   34382         
   34383         No new test cases added: can't write automated tests 
   34384         for VO.
   34385 
   34386         * editing/IndentOutdentCommand.cpp:
   34387         (WebCore::IndentOutdentCommand::outdentParagraph):
   34388         VisiblePositions must be recomputed after nodes that
   34389         may have effected their canonicalization are removed.
   34390         * editing/VisiblePosition.cpp:
   34391         (WebCore::canonicalizeCandidate): Added.
   34392         (WebCore::VisiblePosition::canonicalPosition): Canonicalize
   34393         the candidates returned by next/previousCandidate before
   34394         returning them.
   34395         * editing/VisiblePosition.h:
   34396         (WebCore::operator==): Remove the workaround for 8622.
   34397         * editing/visible_units.cpp:
   34398         (WebCore::startOfParagraph): Ditto.
   34399 
   34400 2007-05-30  Sam Weinig  <sam (a] webkit.org>
   34401 
   34402         Reviewed by Dr. Harrison.
   34403 
   34404         Patch for http://bugs.webkit.org/show_bug.cgi?id=13868
   34405         REGRESSION: crash on accessing a new iframe's contentWindow property
   34406 
   34407         Adds a null check in for the contentWindow property for HTMLIFrameElement
   34408         and HTMLFrameElement.
   34409 
   34410         * bindings/scripts/CodeGeneratorJS.pm:
   34411         * html/HTMLFrameElement.idl:
   34412         * html/HTMLIFrameElement.idl:
   34413 
   34414 2007-05-30  Mitz Pettel  <mitz (a] webkit.org>
   34415 
   34416         Reviewed by Darin.
   34417 
   34418         - fix http://bugs.webkit.org/show_bug.cgi?id=13775
   34419           REGRESSION: Popup button text should use "natural" directionality to match the items in the popup menu
   34420 
   34421         Test: fast/forms/select-writing-direction-natural.html
   34422 
   34423         * platform/PopupMenu.h: Added the static method itemWritingDirectionIsNatural
   34424         which says whether items in the popup ignore the CSS text-align and direction
   34425         properties and instead are left-aligned and use natural writing direction.
   34426         * platform/gdk/PopupMenuGdk.cpp:
   34427         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   34428         * platform/mac/PopupMenuMac.mm:
   34429         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   34430         * platform/qt/PopupMenuQt.cpp:
   34431         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   34432         * platform/win/TemporaryLinkStubs.cpp:
   34433         (WebCore::PopupMenu::itemWritingDirectionIsNatural):
   34434         * platform/wx/TemporaryLinkStubs.cpp:
   34435         (PopupMenu::itemWritingDirectionIsNatural):
   34436         * rendering/RenderMenuList.cpp:
   34437         (WebCore::textDirectionForParagraph): Added this helper function that uses
   34438         the Unicode Bidi Algorithm rules P2 and P3 to determine the writing direction
   34439         of text.
   34440         (WebCore::RenderMenuList::adjustInnerStyle): Made the alignment and direction
   34441         adjustment conditional on the popup implementation.
   34442         (WebCore::RenderMenuList::setText): Added call to adjustInnerStyle() since
   34443         the style depends on the text when natural writing direction is used.
   34444 
   34445 2007-05-30  Timothy Hatcher  <timothy (a] apple.com>
   34446 
   34447         Reviewed by Darin.
   34448 
   34449         <rdar://problem/5200795> REGRESSION (r21057): lineBoxRects doesn't match actual text when wrapping occurs
   34450 
   34451         Use box->end() instead of box->len().
   34452 
   34453         * rendering/RenderText.cpp:
   34454         (WebCore::RenderText::addLineBoxRects):
   34455 
   34456 2007-05-30  Sam Weinig  <sam (a] webkit.org>
   34457 
   34458         Reviewed by Darin.
   34459 
   34460         Patch for http://bugs.webkit.org/show_bug.cgi?id=13919
   34461         Autogenerate the JS bindings for the CSSRule and its subclasses
   34462 
   34463         - subclasses generated are CSSCharsetRule, CSSFontFaceRule, CSSImportRule
   34464           CSSMediaRule, CSSPageRule and CSSStyleRule.
   34465 
   34466         * DerivedSources.make:
   34467         * WebCore.pro:
   34468         * WebCore.xcodeproj/project.pbxproj:
   34469         * bindings/js/JSCSSRuleCustom.cpp: Added.
   34470         (WebCore::toJS):
   34471         * bindings/js/kjs_css.cpp:
   34472         * bindings/js/kjs_css.h:
   34473         * bindings/objc/DOMUtility.mm:
   34474         (KJS::createDOMWrapper):
   34475         * bindings/scripts/CodeGeneratorJS.pm:
   34476         * css/CSSCharsetRule.h:
   34477         (WebCore::CSSCharsetRule::setEncoding):
   34478         * css/CSSCharsetRule.idl:
   34479         * css/CSSFontFaceRule.idl:
   34480         * css/CSSImportRule.idl:
   34481         * css/CSSMediaRule.idl:
   34482         * css/CSSPageRule.cpp:
   34483         (WebCore::CSSPageRule::setSelectorText):
   34484         * css/CSSPageRule.h:
   34485         * css/CSSPageRule.idl:
   34486         * css/CSSRule.cpp:
   34487         (WebCore::CSSRule::setCssText):
   34488         * css/CSSRule.h:
   34489         * css/CSSRule.idl:
   34490         * css/CSSStyleRule.cpp:
   34491         (WebCore::CSSStyleRule::setSelectorText):
   34492         * css/CSSStyleRule.h:
   34493         * css/CSSStyleRule.idl:
   34494         * page/DOMWindow.idl: add new constructors.
   34495 
   34496 2007-05-30  Mark Rowe  <mrowe (a] apple.com>
   34497 
   34498         Build fixes after r21889.  Add missing #includes.
   34499 
   34500         * ForwardingHeaders/kjs/function.h: Added.
   34501         * bindings/js/kjs_binding.h:
   34502         * bindings/js/kjs_dom.h:
   34503         * bindings/js/kjs_window.h:
   34504 
   34505 2007-05-30  Mark Rowe  <mrowe (a] apple.com>
   34506 
   34507         Gdk build fix.  Update WidgetGdk to use NotImplemented.h.
   34508 
   34509         * platform/gdk/WidgetGdk.cpp:
   34510         (WebCore::Widget::setEnabled):
   34511         (WebCore::Widget::isEnabled):
   34512         (WebCore::Widget::removeFromParent):
   34513         (WebCore::Widget::paint):
   34514         (WebCore::Widget::setIsSelected):
   34515 
   34516 2007-05-29  Holger Freyther  <zecke (a] selfish.org>
   34517 
   34518         Reviewed by Anders.
   34519 
   34520         Make ScrollView use a GtkLayout. This class matches QScrollView the most and promises
   34521         to ease the implementation of ScrollView::addChild. GtkLayout should be resource friendly
   34522         even with huge width and heights of frames.
   34523         Make Widget aware of GtkLayout to use the right GdkWindow as drawable. For GtkLayout one must
   34524         draw on the bin_window.
   34525         Remove the layer violation from FrameGdk.cpp and ScrollView. FrameGdk is no longer responsible to
   34526         implement scrolling on keyboard events. ScrollView is no longer required to know that it could be
   34527         a FrameView and handles scrolling of Frames magically.
   34528 
   34529         * platform/ScrollView.h:
   34530         * platform/gdk/FrameGdk.cpp:
   34531         (WebCore::FrameGdk::keyPress):
   34532         (WebCore::FrameGdk::handleGdkEvent):
   34533         * platform/gdk/ScrollViewGdk.cpp:
   34534         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
   34535         (WebCore::ScrollView::updateContents):
   34536         (WebCore::ScrollView::visibleWidth):
   34537         (WebCore::ScrollView::visibleHeight):
   34538         (WebCore::ScrollView::visibleContentRect):
   34539         (WebCore::ScrollView::resizeContents):
   34540         (WebCore::ScrollView::contentsX):
   34541         (WebCore::ScrollView::contentsY):
   34542         (WebCore::ScrollView::scrollOffset):
   34543         (WebCore::ScrollView::scrollBy):
   34544         (WebCore::ScrollView::setFrameGeometry):
   34545         (WebCore::ScrollView::updateGeometry):
   34546         (WebCore::ScrollView::setGtkWidget):
   34547         (WebCore::ScrollView::updateScrollbars):
   34548         (WebCore::ScrollView::windowToContents):
   34549         (WebCore::ScrollView::contentsToWindow):
   34550         (WebCore::ScrollView::scrollbarUnderMouse):
   34551         * platform/gdk/TemporaryLinkStubs.cpp: Move Widget methods to WidgetGdk.cpp
   34552         * platform/gdk/WidgetGdk.cpp:
   34553         (WebCore::Widget::setGtkWidget):
   34554         (WebCore::Widget::setFrameGeometry):
   34555         (WebCore::Widget::setEnabled):
   34556         (WebCore::Widget::isEnabled):
   34557         (WebCore::Widget::removeFromParent):
   34558         (WebCore::Widget::paint):
   34559         (WebCore::Widget::setIsSelected):
   34560         (WebCore::Widget::invalidate):
   34561         (WebCore::Widget::invalidateRect):
   34562 
   34563 2007-05-29  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   34564 
   34565         Reviewed by Maciej.
   34566 
   34567         Curl (linux/gdk) networking improvements: 
   34568         a) POST support
   34569         b) don't use CURL in a re-entrant way.
   34570         c) turn on curl's internal debugging support in a debug build if the DEBUG_CURL environment variable is set.
   34571 
   34572         * platform/network/ResourceHandleInternal.h:
   34573         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   34574         * platform/network/gdk/ResourceHandleCurl.cpp:
   34575         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   34576         * platform/network/gdk/ResourceHandleManager.cpp:
   34577         (WebCore::ResourceHandleManager::ResourceHandleManager):
   34578         (WebCore::writeCallback):
   34579         (WebCore::ResourceHandleManager::downloadTimerCallback):
   34580         (WebCore::ResourceHandleManager::setupPOST):
   34581         (WebCore::ResourceHandleManager::add):
   34582         (WebCore::ResourceHandleManager::removeScheduledJob):
   34583         (WebCore::ResourceHandleManager::startScheduledJobs):
   34584         (WebCore::ResourceHandleManager::startJob):
   34585         (WebCore::ResourceHandleManager::cancel):
   34586         * platform/network/gdk/ResourceHandleManager.h:
   34587         (WebCore::ResourceHandleList::ResourceHandleList):
   34588         (WebCore::ResourceHandleList::next):
   34589         (WebCore::ResourceHandleList::job):
   34590         (WebCore::ResourceHandleList::setRemoved):
   34591         (WebCore::ResourceHandleList::removed):
   34592 
   34593 2007-05-29  Sam Weinig  <sam (a] webkit.org>
   34594 
   34595         Fix the Qt and Gdk builds.
   34596 
   34597         * WebCore.pro:
   34598 
   34599 2007-05-29  Adele Peterson  <adele (a] apple.com>
   34600 
   34601         Reviewed by Adam.
   34602 
   34603         Fix for <rdar://problem/5109711> REGRESSION: Focus ring artifacts appear around a widget's search field at times (Address Book, Dictionary)
   34604 
   34605         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintSearchField):
   34606           We only need this hack for drawing the search field focus ring on Tiger.  On Leopard, drawWithFrame correctly draws the cell's focus ring.
   34607 
   34608 2007-05-29  Alp Toker  <alp.toker (a] collabora.co.uk>
   34609 
   34610         Reviewed by Mitz.
   34611 
   34612         Patch for http://bugs.webkit.org/show_bug.cgi?id=13899
   34613 
   34614         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   34615         (WebCore::GraphicsContext::strokeArc): Use cairo_arc_negative() to fix
   34616         CSS rounded borders.
   34617         (WebCore::GraphicsContext::beginTransparencyLayer):
   34618         (WebCore::GraphicsContext::endTransparencyLayer): save/restore is
   34619         redundant. push/pop group does this implicitly.
   34620 
   34621 2007-05-29  Sam Weinig  <sam (a] webkit.org>
   34622 
   34623         Reviewed by Oliver.
   34624 
   34625         Patch for http://bugs.webkit.org/show_bug.cgi?id=13912
   34626         Autogenerate the JS bindings for the MediaList
   34627 
   34628         * DerivedSources.make:
   34629         * WebCore.xcodeproj/project.pbxproj:
   34630         * bindings/js/kjs_css.cpp:
   34631         * bindings/js/kjs_css.h:
   34632         * bindings/objc/DOMUtility.mm:
   34633         (KJS::createDOMWrapper):
   34634         * bindings/scripts/CodeGeneratorJS.pm:
   34635         * css/MediaList.idl:
   34636         * page/DOMWindow.idl: Add constructor.
   34637 
   34638 2007-05-29  Matt Perry  <mpComplete (a] gmail.com>
   34639 
   34640         Reviewed by Maciej.
   34641 
   34642         Fixed some rendering issues for <select>s on Windows.
   34643 
   34644         * rendering/RenderThemeWin.cpp:
   34645         (WebCore::RenderThemeWin::adjustMenuListStyle):
   34646         (WebCore::RenderThemeWin::paintMenuList):
   34647         * rendering/RenderThemeWin.h:
   34648 
   34649 2007-05-29  David Hyatt  <hyatt (a] apple.com>
   34650 
   34651         Fold the invalidateVerticalPositions crawl into the bidi iteration.
   34652         This makes it more correct (since we won't drill into elements that
   34653         did not need to be reset) and cuts out an extra walk of all our children.
   34654         We're still O(n^2) as new content streams in, but this at least cuts
   34655         out one separate O(n^2) crawl.
   34656 
   34657         Reviewed by olliej
   34658 
   34659         * rendering/RenderObject.cpp:
   34660         * rendering/RenderObject.h:
   34661         (WebCore::RenderObject::invalidateVerticalPosition):
   34662         * rendering/bidi.cpp:
   34663         (WebCore::RenderBlock::layoutInlineChildren):
   34664 
   34665 2007-05-29  Sam Weinig  <sam (a] webkit.org>
   34666 
   34667         Reviewed by Oliver.
   34668 
   34669         Patch for http://bugs.webkit.org/show_bug.cgi?id=13908
   34670         Autogenerate the JS bindings for the StyleSheet
   34671 
   34672         * DerivedSources.make:
   34673         * WebCore.xcodeproj/project.pbxproj:
   34674         * bindings/js/JSStyleSheetCustom.cpp: Added.
   34675         (WebCore::toJS):
   34676         (WebCore::JSStyleSheet::toBoolean):
   34677         * bindings/js/kjs_css.cpp:
   34678         (KJS::):
   34679         (KJS::DOMCSSStyleSheet::DOMCSSStyleSheet):
   34680         (KJS::DOMCSSStyleSheet::getOwnPropertySlot):
   34681         * bindings/js/kjs_css.h:
   34682         * bindings/objc/DOMUtility.mm:
   34683         (KJS::createDOMWrapper):
   34684         * bindings/scripts/CodeGeneratorJS.pm:
   34685         * css/StyleSheet.idl:
   34686         * page/DOMWindow.idl: Add new constructor.
   34687 
   34688 2007-05-29  David Hyatt  <hyatt (a] apple.com>
   34689 
   34690         Make sure <embed> does not allow an end tag.
   34691 
   34692         Reviewed by olliej
   34693 
   34694         * html/HTMLEmbedElement.h:
   34695         (WebCore::HTMLEmbedElement::endTagRequirement):
   34696 
   34697 2007-05-29  Adele Peterson  <adele (a] apple.com>
   34698 
   34699         Reviewed by Brady.
   34700 
   34701         Fix for <rdar://problem/5213039> REGRESSION: Wells Fargo registration page returns blank
   34702 
   34703         Roll out updated fix for 11866 that tried to make reset work for hidden inputs.  Since
   34704         all browsers update the value attribute when setting the value, it doesn't really make sense to reset.
   34705         Its true that IE does support resetting these controls, but in this case, it doesn't really make sense to have
   34706         another place to store an alternate version of the value.
   34707 
   34708         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::reset):
   34709         * html/HTMLInputElement.h:
   34710 
   34711 2007-05-29  Darin Adler  <darin (a] apple.com>
   34712 
   34713         Reviewed by Anders.
   34714 
   34715         - removed the general case optimization for innerHTML because some sites
   34716           rely on setting innerHTML to trigger loading plug-ins for example; we
   34717           could consider bringing it back some day, perhaps with a list of element
   34718           types to exclude
   34719 
   34720         * dom/CharacterData.cpp: (WebCore::CharacterData::setData):
   34721         Do nothing if the old data is identical to the new data.
   34722 
   34723         * html/HTMLElement.cpp:
   34724         (WebCore::replaceChildrenWithFragment): Remove childrenAreEqual optimization.
   34725         (WebCore::replaceChildrenWithText): Remove optimization for cases where the
   34726         text data is identical to the new data, since CharacterData handles that now.
   34727         (WebCore::HTMLElement::setOuterHTML): Remove childrenAreEqual optimization.
   34728 
   34729 2007-05-29  Mitz Pettel  <mitz (a] webkit.org>
   34730 
   34731         Reviewed by Maciej.
   34732 
   34733         - fix http://bugs.webkit.org/show_bug.cgi?id=13904
   34734           REGRESSION: Search fields with a results popup do not always draw the popup arrow
   34735 
   34736         Covered by fast/forms/box-shadow-override.html
   34737 
   34738         The search button draws a popup arrow depending on whether the
   34739         search menu template is set, rather than on the maximum number of recent
   34740         search strings.
   34741 
   34742         * rendering/RenderThemeMac.h:
   34743         * rendering/RenderThemeMac.mm:
   34744         (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration): Removed the
   34745         call to -setMaxmiumRecents:.
   34746         (WebCore::RenderThemeMac::paintSearchFieldResultsButton): Replaced calling
   34747         -setMaximumRecents: with setting the search menu template.
   34748         (WebCore::RenderThemeMac::search): Removed initialization of the menu.
   34749         (WebCore::RenderThemeMac::searchMenuTemplate): Added. Returns an empty
   34750         NSMenu to be used as the search menu template.
   34751 
   34752 2007-05-29  David Hyatt  <hyatt (a] apple.com>
   34753 
   34754         Fix for bug 13907, <noscript> should be allowed inside <head> when
   34755         scripting is enabled.
   34756 
   34757         Reviewed by aroben
   34758 
   34759         * html/HTMLHeadElement.cpp:
   34760         (WebCore::HTMLHeadElement::checkDTD):
   34761         * html/HTMLParser.cpp:
   34762         (WebCore::HTMLParser::handleError):
   34763         * html/HTMLParserErrorCodes.cpp:
   34764         (WebCore::htmlParserErrorMessageTemplate):
   34765         * html/HTMLParserErrorCodes.h:
   34766 
   34767 2007-05-29  Mitz Pettel  <mitz (a] webkit.org>
   34768 
   34769         Reviewed by Maciej.
   34770 
   34771         - fix crash in http://bugs.webkit.org/show_bug.cgi?id=13792
   34772           REGRESSION: WebKit doesn't show this javascript screenshot page (and crashes after click on its "hidden link")
   34773 
   34774         Test: fast/frames/removal-before-attach-crash.html
   34775 
   34776         Delayed the queueing of the post-attach callback until attach().
   34777 
   34778         * html/HTMLFrameElementBase.cpp:
   34779         (WebCore::HTMLFrameElementBase::HTMLFrameElementBase):
   34780         (WebCore::HTMLFrameElementBase::parseMappedAttribute): Replaced call to the
   34781         HTMLElement implementation with a call to the HTMLFrameOwnerElement
   34782         implementation, as the latter is the parent class.
   34783         (WebCore::HTMLFrameElementBase::insertedIntoDocument): Instead of queueing
   34784         the post-attach callback here, just set a flag telling us to do so
   34785         at the beginning of attach().
   34786         (WebCore::HTMLFrameElementBase::removedFromDocument): Reset the above flag.
   34787         (WebCore::HTMLFrameElementBase::attach): If this is the first attach() after
   34788         being inserted into the document, queue a post-attach callback to load the
   34789         frame.
   34790         (WebCore::HTMLFrameElementBase::willRemove): Changed to call up to the correct
   34791         parent class.
   34792         (WebCore::HTMLFrameElementBase::setFocus): Ditto.
   34793         * html/HTMLFrameElementBase.h:
   34794         * html/HTMLPlugInElement.cpp:
   34795         (WebCore::HTMLPlugInElement::mapToEntry): Replaced call to the HTMLElement
   34796         implementation with a call to the HTMLFrameOwnerElement implementation,
   34797         as the latter is the parent class.
   34798         (WebCore::HTMLPlugInElement::parseMappedAttribute): Ditto.
   34799         (WebCore::HTMLPlugInElement::checkDTD): Ditto.
   34800         (WebCore::HTMLPlugInElement::detach): Ditto.
   34801 
   34802 2007-05-29  Darin Adler  <darin (a] apple.com>
   34803 
   34804         Reviewed by Maciej.
   34805 
   34806         - fix http://bugs.webkit.org/show_bug.cgi?id=13602
   34807           Amazon product pages keep repainting over and over again
   34808 
   34809         - fix first-letter when the text of the affected text node is changed
   34810 
   34811         Optimize setInnerHTML, setOuterHTML, and setInnerText so they don't change the DOM at all
   34812         if they don't need to.
   34813 
   34814         Test: fast/dom/HTMLElement/set-inner-outer-optimization.html
   34815         Test: fast/css/first-letter-detach.html
   34816 
   34817         * html/HTMLElement.cpp:
   34818         (WebCore::equal): Added. Helper function that compares two Text nodes or two NamedAttrMap
   34819         attribute maps.
   34820         (WebCore::shallowEqual): Added. Helper function that compares two Element nodes or two
   34821         arbitrary nodes.
   34822         (WebCore::childrenAreEqual): Added. Helper functions that compare children of nodes.
   34823         (WebCore::hasOneChild): Added. Helper function.
   34824         (WebCore::hasOneTextChild): Added. Helper function.
   34825         (WebCore::replaceChildrenWithFragment): Added. Helper function used by setInnerHTML and
   34826         setInnerText. Optimizes the cases where all the nodes are the same, where both the current
   34827         and the new content are single text nodes, and where the current content is a single node
   34828         that can be replaced with replaceChild.
   34829         (WebCore::replaceChildrenWithText): Added. Helper function used by setInnerText. Optimizes
   34830         the case where the current content is a single text node or a single node that can be
   34831         replaced with replaceChild.
   34832         (WebCore::HTMLElement::setInnerHTML): Changed to call replaceChildrenWithFragment.
   34833         (WebCore::HTMLElement::setOuterHTML): Added special case to optimize when the new content
   34834         exactly matches the current node.
   34835         (WebCore::HTMLElement::setInnerText): Changed to call replaceChildrenWithText in a few
   34836         cases instead of doing removeChildren/appendChild. Changed code that was using
   34837         DeprecatedString to instead use String. Changed general case to use a document fragment
   34838         and replaceChildrenWithFragment.
   34839 
   34840         * dom/CharacterData.cpp: (WebCore::CharacterData::dispatchModifiedEvent):
   34841         Fixed bug where we would not dispatch the DOMSubtreeModified event unless someone
   34842         was registered for the DOMCharacterDataModified event. Caused trouble in the test.
   34843 
   34844         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::updateFirstLetter): Set first-letter
   34845         after the setStyle call so calls to setTextInternal inside setStyle don't clear it.
   34846 
   34847         * rendering/RenderText.h: Made setTextInternal virtual so that RenderTextFragment can do
   34848         appropriate work when the text changes.
   34849 
   34850         * rendering/RenderTextFragment.h: Added an override of setTextInternal. Removed the
   34851         firstLetter parameter to the constructor and made it a separate setter. Also changed
   34852         m_generatedContentStr to m_contentString to match the getter function.
   34853         * rendering/RenderTextFragment.cpp:
   34854         (WebCore::RenderTextFragment::RenderTextFragment): Removed firstLetter parameter.
   34855         (WebCore::RenderTextFragment::setTextInternal): When the text changes, destroy the
   34856         first-letter node and reset the fragment values so that RenderBlock::updateFirstLetter,
   34857         which will run during layout, will create a new first-letter child. Otherwise we end up
   34858         with the first letter of the old text.
   34859 
   34860 2007-05-29  Sam Weinig  <sam (a] webkit.org>
   34861 
   34862         Fix Qt build.
   34863 
   34864         * platform/NotImplemented.h:
   34865 
   34866 2007-05-29  Sam Weinig  <sam (a] webkit.org>
   34867 
   34868         Reviewed by Adam Roben.
   34869 
   34870         Consolidate platform dependent notImplemented() macros
   34871         into one platform independent macro that uses WTFLog.
   34872 
   34873         * platform/NotImplemented.h:
   34874 
   34875 2007-05-29  Darin Adler  <darin (a] apple.com>
   34876 
   34877         Reviewed by Sam.
   34878 
   34879         - a clean-up pass on form-related aspects of the recent JSHTMLElement patch
   34880 
   34881         * bindings/js/JSHTMLElementCustom.cpp: (WebCore::JSHTMLElement::pushEventHandlerScope):
   34882         Replace the call to formForEventHandlerScope() with a call to the new form() function.
   34883         And removed the now-uneeded code to search for a form ancestor.
   34884 
   34885         * html/HTMLElement.h: Added a general-purpose form() function. The intent is to return
   34886         the form ancestor if any, but return the associated form for a form control, which isn't
   34887         always an ancestor of the control. To keep form() efficient for form controls, it's an
   34888         inline that calls a virtual, allowing a derived class to override it with an inline.
   34889         This replaces formForEventHandlerScope(). Also added findFormAncestor() to use here and
   34890         to replace the multiple loops found elsewhere to search for the nearest form ancestor.
   34891         * html/HTMLElement.cpp:
   34892         (WebCore::HTMLElement::findFormAncestor): Added.
   34893         (WebCore::HTMLElement::virtualForm): Added. Calls findFormAncestor().
   34894 
   34895         * html/HTMLGenericFormElement.h: Suggested name change to HTMLFormControlElement.
   34896         Removed the confusing getForm() function, which is superceded by findFormAncestor.
   34897         Removed the unused onSelect() function. Removed the override of formForEventHandlerScope(),
   34898         replacing it with an override of virtualForm().
   34899         * html/HTMLGenericFormElement.cpp:
   34900         (WebCore::HTMLGenericFormElement::HTMLGenericFormElement): Use findFormAncestor
   34901         instead of getForm.
   34902         (WebCore::HTMLGenericFormElement::insertedIntoTree): Ditto.
   34903         (WebCore::HTMLGenericFormElement::virtualForm): Added.
   34904 
   34905         * html/HTMLLabelElement.h: Removed now-unneeded form() and formForEventHandlerScope()
   34906         functions, since base class behavior is now good enough. Renamed formElement() to
   34907         correspondingControl(), since that's the terminology used elsewhere in the code,
   34908         and the old name was unnecessarily confusing.
   34909         * html/HTMLLabelElement.cpp:
   34910         (WebCore::HTMLLabelElement::correspondingControl): Renamed. Removed unnecessary
   34911         special case for empty ID, since getElementById already returns 0 for that case.
   34912         (WebCore::HTMLLabelElement::setActive): Updated for name change.
   34913         (WebCore::HTMLLabelElement::setHovered): Ditto.
   34914         (WebCore::HTMLLabelElement::defaultEventHandler): Ditto.
   34915         (WebCore::HTMLLabelElement::focus): Ditto.
   34916         (WebCore::HTMLLabelElement::accessKeyAction): Ditto.
   34917 
   34918         * html/HTMLObjectElement.h: Removed now-unneeded form() and formForEventHandlerScope()
   34919         functions, since base class behavior is now good enough. Also removed forward
   34920         declaration of KJS::Bindings::Instance -- since the type is the return value of a
   34921         function from the base class, it's guaranteed to be declared in the base class header.
   34922         * html/HTMLObjectElement.cpp: Ditto.
   34923 
   34924         * bridge/mac/WebCoreAXObject.mm: (labelForElement): Updated for name change.
   34925 
   34926 2007-05-29  Zack Rusin  <zrusin (a] trolltech.com>
   34927 
   34928         Reviewed by George and Niko
   34929 
   34930         Making the convenience method notImplemented convenient
   34931         for the Qt port.
   34932 
   34933         * platform/NotImplemented.h:
   34934 
   34935 2007-05-28  Sam Weinig  <sam (a] webkit.org>
   34936 
   34937         Reviewed by Geoff.
   34938 
   34939         - Patch for http://bugs.webkit.org/show_bug.cgi?id=13902
   34940           Autogenerate the JS bindings for the CSSStyleDeclaration
   34941 
   34942         * WebCore.pro:
   34943         * WebCore.xcodeproj/project.pbxproj:
   34944         * bindings/js/JSCSSStyleDeclarationCustom.cpp: Added.
   34945         (WebCore::cssPropertyName):
   34946         (WebCore::isCSSPropertyName):
   34947         (WebCore::JSCSSStyleDeclaration::canGetItemsForName):
   34948         (WebCore::JSCSSStyleDeclaration::nameGetter):
   34949         (WebCore::JSCSSStyleDeclaration::customPut):
   34950         * bindings/js/kjs_binding.h:
   34951         * bindings/js/kjs_css.cpp:
   34952         * bindings/js/kjs_css.h:
   34953         * bindings/objc/DOMUtility.mm:
   34954         (KJS::createDOMWrapper):
   34955         * bindings/scripts/CodeGeneratorJS.pm:
   34956         * css/CSSStyleDeclaration.idl:
   34957 
   34958 2007-05-28  Mitz Pettel  <mitz (a] webkit.org>
   34959 
   34960         Reviewed by Darin.
   34961 
   34962         - fix http://bugs.webkit.org/show_bug.cgi?id=13896
   34963           REGRESSION (NativePopup): Reproductible crasher on Google Coop control panel
   34964 
   34965         Test: fast/forms/select-display-none-style-resolve.html
   34966 
   34967         * html/HTMLOptGroupElement.cpp:
   34968         (WebCore::HTMLOptGroupElement::attach): Do not compute style if the parent
   34969         does not have style.
   34970         * html/HTMLOptionElement.cpp:
   34971         (WebCore::HTMLOptionElement::attach): Ditto.
   34972 
   34973 2007-05-28  Sam Weinig  <sam (a] webkit.org>
   34974 
   34975         Fix Gdk and Qt builds.
   34976 
   34977         * WebCore.pro:
   34978 
   34979 2007-05-28  Sam Weinig  <sam (a] webkit.org>
   34980 
   34981         Reviewed by Darin.
   34982 
   34983         Patch for http://bugs.webkit.org/show_bug.cgi?id=13894
   34984         Remove the legacy class KJS::JSHTMLElement
   34985 
   34986         - Now that all of the subclasses of JSHTMLElement are
   34987           autogenerated and no longer rely on the legacy parent,
   34988           we can remove it and update all the HTML idl files to
   34989           reflect so.
   34990 
   34991         - Also adds JSHTMLBlockquoteElement's JS constructor which
   34992           was mistakingly missing.
   34993 
   34994         * WebCore.xcodeproj/project.pbxproj:
   34995         * bindings/js/JSHTMLAnchorElementCustom.cpp:
   34996         (WebCore::JSHTMLAnchorElement::toString):
   34997         * bindings/js/JSHTMLElementCustom.cpp: Added.
   34998         (WebCore::JSHTMLElement::pushEventHandlerScope):
   34999         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   35000         (WebCore::createJSHTMLWrapper):
   35001         * bindings/js/JSHTMLInputElementBase.cpp:
   35002         (WebCore::):
   35003         (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
   35004         (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
   35005         (WebCore::JSHTMLInputElementBase::put):
   35006         * bindings/js/JSHTMLInputElementBase.h:
   35007         * bindings/js/JSHTMLSelectElementCustom.cpp:
   35008         * bindings/js/kjs_html.cpp:
   35009         (KJS::runtimeObjectCustomGetOwnPropertySlot):
   35010         * bindings/js/kjs_html.h:
   35011         * bindings/scripts/CodeGeneratorJS.pm:
   35012         * html/HTMLAnchorElement.idl:
   35013         * html/HTMLAppletElement.idl:
   35014         * html/HTMLAreaElement.idl:
   35015         * html/HTMLBRElement.idl:
   35016         * html/HTMLBaseElement.idl:
   35017         * html/HTMLBaseFontElement.idl:
   35018         * html/HTMLBlockquoteElement.idl:
   35019         * html/HTMLBodyElement.idl:
   35020         * html/HTMLButtonElement.idl:
   35021         * html/HTMLCanvasElement.idl:
   35022         * html/HTMLDListElement.idl:
   35023         * html/HTMLDirectoryElement.idl:
   35024         * html/HTMLDivElement.idl:
   35025         * html/HTMLElement.cpp:
   35026         (WebCore::HTMLElement::formForEventHandlerScope):
   35027         * html/HTMLElement.h:
   35028         * html/HTMLElement.idl:
   35029         * html/HTMLEmbedElement.idl:
   35030         * html/HTMLFieldSetElement.idl:
   35031         * html/HTMLFontElement.idl:
   35032         * html/HTMLFormElement.idl:
   35033         * html/HTMLFrameElement.idl:
   35034         * html/HTMLFrameSetElement.idl:
   35035         * html/HTMLGenericFormElement.cpp:
   35036         (WebCore::HTMLGenericFormElement::formForEventHandlerScope):
   35037         * html/HTMLGenericFormElement.h:
   35038         * html/HTMLHRElement.idl:
   35039         * html/HTMLHeadElement.idl:
   35040         * html/HTMLHeadingElement.idl:
   35041         * html/HTMLHtmlElement.idl:
   35042         * html/HTMLIFrameElement.idl:
   35043         * html/HTMLImageElement.idl:
   35044         * html/HTMLIsIndexElement.idl:
   35045         * html/HTMLLIElement.idl:
   35046         * html/HTMLLabelElement.cpp:
   35047         (WebCore::HTMLLabelElement::form):
   35048         (WebCore::HTMLLabelElement::formForEventHandlerScope):
   35049         * html/HTMLLabelElement.h:
   35050         * html/HTMLLabelElement.idl:
   35051         * html/HTMLLegendElement.idl:
   35052         * html/HTMLLinkElement.idl:
   35053         * html/HTMLMapElement.idl:
   35054         * html/HTMLMarqueeElement.idl:
   35055         * html/HTMLMenuElement.idl:
   35056         * html/HTMLMetaElement.idl:
   35057         * html/HTMLModElement.idl:
   35058         * html/HTMLOListElement.idl:
   35059         * html/HTMLObjectElement.cpp:
   35060         (WebCore::HTMLObjectElement::formForEventHandlerScope):
   35061         * html/HTMLObjectElement.h:
   35062         * html/HTMLObjectElement.idl:
   35063         * html/HTMLOptGroupElement.idl:
   35064         * html/HTMLOptionElement.idl:
   35065         * html/HTMLParagraphElement.idl:
   35066         * html/HTMLParamElement.idl:
   35067         * html/HTMLPreElement.idl:
   35068         * html/HTMLQuoteElement.idl:
   35069         * html/HTMLScriptElement.idl:
   35070         * html/HTMLSelectElement.idl:
   35071         * html/HTMLStyleElement.idl:
   35072         * html/HTMLTableCaptionElement.idl:
   35073         * html/HTMLTableCellElement.idl:
   35074         * html/HTMLTableColElement.idl:
   35075         * html/HTMLTableElement.idl:
   35076         * html/HTMLTableRowElement.idl:
   35077         * html/HTMLTableSectionElement.idl:
   35078         * html/HTMLTextAreaElement.idl:
   35079         * html/HTMLTitleElement.idl:
   35080         * html/HTMLUListElement.idl:
   35081         * page/DOMWindow.idl:
   35082 
   35083 2007-05-28  Zack Rusin  <zrusin (a] trolltech.com>
   35084 
   35085         Reviewed by andersca
   35086 
   35087         Adding Qt related constructor/casting operators
   35088         to the AtomicString and updating the project
   35089         file for new Qt settings api using those.
   35090 
   35091         * WebCore.pro:
   35092         * platform/AtomicString.h:
   35093 
   35094 2007-05-27  Sam Weinig  <sam (a] webkit.org>
   35095 
   35096         Qt and Gdk build fix.
   35097 
   35098         * WebCore.pro:
   35099 
   35100 2007-05-27  Sam Weinig  <sam (a] webkit.org>
   35101 
   35102         Reviewed by Hyatt.
   35103 
   35104         Patch for http://bugs.webkit.org/show_bug.cgi?id=13893
   35105         Autogenerate the JS bindings for the HTMLObjectElement, 
   35106         HTMLEmbedElement and HTMLAppletElement
   35107 
   35108         * DerivedSources.make:
   35109         * WebCore.xcodeproj/project.pbxproj:
   35110         * bindings/js/JSHTMLAppletElementCustom.cpp: Added.
   35111         (WebCore::JSHTMLAppletElement::customGetOwnPropertySlot):
   35112         (WebCore::JSHTMLAppletElement::customPut):
   35113         (WebCore::JSHTMLAppletElement::implementsCall):
   35114         (WebCore::JSHTMLAppletElement::callAsFunction):
   35115         (WebCore::JSHTMLAppletElement::canGetItemsForName):
   35116         (WebCore::JSHTMLAppletElement::nameGetter):
   35117         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   35118         * bindings/js/JSHTMLEmbedElementCustom.cpp: Added.
   35119         (WebCore::JSHTMLEmbedElement::customGetOwnPropertySlot):
   35120         (WebCore::JSHTMLEmbedElement::customPut):
   35121         (WebCore::JSHTMLEmbedElement::implementsCall):
   35122         (WebCore::JSHTMLEmbedElement::callAsFunction):
   35123         (WebCore::JSHTMLEmbedElement::canGetItemsForName):
   35124         (WebCore::JSHTMLEmbedElement::nameGetter):
   35125         * bindings/js/JSHTMLObjectElementCustom.cpp: Added.
   35126         (WebCore::JSHTMLObjectElement::customGetOwnPropertySlot):
   35127         (WebCore::JSHTMLObjectElement::customPut):
   35128         (WebCore::JSHTMLObjectElement::implementsCall):
   35129         (WebCore::JSHTMLObjectElement::callAsFunction):
   35130         (WebCore::JSHTMLObjectElement::canGetItemsForName):
   35131         (WebCore::JSHTMLObjectElement::nameGetter):
   35132         * bindings/js/kjs_html.cpp:
   35133         (KJS::):
   35134         (KJS::JSHTMLElement::toString):
   35135         (KJS::JSHTMLElement::pushEventHandlerScope):
   35136         (KJS::runtimeObjectGetter):
   35137         (KJS::runtimeObjectPropertyGetter):
   35138         (KJS::runtimeObjectCustomGetOwnPropertySlot):
   35139         (KJS::runtimeObjectCustomPut):
   35140         (KJS::runtimeObjectImplementsCall):
   35141         (KJS::runtimeObjectCallAsFunction):
   35142         * bindings/js/kjs_html.h:
   35143         (KJS::JSHTMLElement::classInfo):
   35144         * bindings/scripts/CodeGeneratorJS.pm: Add support for 
   35145         CustomGetOwnPropertySlot, CustomPutFunction, CustomCall,
   35146         and SVGCheckSecurityDocument properties.
   35147         * html/HTMLAppletElement.idl:
   35148         * html/HTMLEmbedElement.idl:
   35149         * html/HTMLObjectElement.idl:
   35150         * page/DOMWindow.idl: Uncomment constructors.
   35151 
   35152 2007-05-27  Sam Weinig  <sam (a] webkit.org>
   35153 
   35154         Reviewed by Oliver.
   35155 
   35156         Gdk build fix.
   35157 
   35158         * platform/graphics/Path.h:
   35159 
   35160 2007-05-27  Sam Weinig  <sam (a] webkit.org>
   35161 
   35162         Gdk build fix.  Forgot to update a few instances of notImplementedGdk() to notImplemented().
   35163 
   35164         * page/gdk/EventHandlerGdk.cpp:
   35165         (WebCore::EventHandler::passMousePressEventToScrollbar):
   35166         * platform/gdk/EditorClientGdk.cpp:
   35167         (WebCore::EditorClientGdk::ignoreWordInSpellDocument):
   35168         (WebCore::EditorClientGdk::learnWord):
   35169         (WebCore::EditorClientGdk::checkSpellingOfString):
   35170         (WebCore::EditorClientGdk::checkGrammarOfString):
   35171         (WebCore::EditorClientGdk::updateSpellingUIWithGrammarString):
   35172         (WebCore::EditorClientGdk::updateSpellingUIWithMisspelledWord):
   35173         (WebCore::EditorClientGdk::showSpellingUI):
   35174         (WebCore::EditorClientGdk::spellingUIIsShowing):
   35175         (WebCore::EditorClientGdk::getGuessesForWord):
   35176         * platform/gdk/FrameGdk.cpp:
   35177         (WebCore::Frame::dashboardRegionsChanged):
   35178         * platform/gdk/PlatformScrollBarGdk.cpp:
   35179         (PlatformScrollbar::paint):
   35180         (PlatformScrollbar::updateThumbPosition):
   35181         (PlatformScrollbar::updateThumbProportion):
   35182         * platform/gdk/TemporaryLinkStubs.cpp:
   35183         (Widget::setEnabled):
   35184         (Widget::isEnabled):
   35185         (Widget::removeFromParent):
   35186         (Widget::paint):
   35187         (Widget::setIsSelected):
   35188         (Widget::invalidate):
   35189         (Widget::invalidateRect):
   35190 
   35191 2007-05-27  Alp Toker  <alp.toker (a] collabora.co.uk>
   35192 
   35193         Reviewed by Sam and Oliver.
   35194 
   35195         Implement PathCairo. This patch is based on changes in Mike Emmel's
   35196         WebKit fork with some additional clean-ups and updates.
   35197 
   35198         * platform/graphics/Path.h:
   35199         * platform/graphics/cairo/CairoPath.h: Added.
   35200         (CairoPath::CairoPath):
   35201         (CairoPath::~CairoPath):
   35202         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   35203         (WebCore::GraphicsContext::clip):
   35204         * platform/graphics/cairo/PathCairo.cpp:
   35205         (WebCore::Path::Path):
   35206         (WebCore::Path::~Path):
   35207         (WebCore::Path::operator=):
   35208         (WebCore::Path::clear):
   35209         (WebCore::Path::isEmpty):
   35210         (WebCore::Path::translate):
   35211         (WebCore::Path::moveTo):
   35212         (WebCore::Path::addLineTo):
   35213         (WebCore::Path::addRect):
   35214         (WebCore::Path::addQuadCurveTo):
   35215         (WebCore::Path::addBezierCurveTo):
   35216         (WebCore::Path::addArc):
   35217         (WebCore::Path::addArcTo):
   35218         (WebCore::Path::addEllipse):
   35219         (WebCore::Path::closeSubpath):
   35220         (WebCore::Path::boundingRect):
   35221         (WebCore::Path::contains):
   35222         (WebCore::Path::apply):
   35223         (WebCore::Path::transform):
   35224         (WebCore::Path::debugString):
   35225 
   35226 2007-05-27  Kevin Ollivier  <kevino (a] theolliviers.com>
   35227 
   35228         Reviewed by Sam Weinig.
   35229 
   35230         Consolidate all notImplemented() macro definitions into
   35231         one header file for all platforms.
   35232 
   35233         * loader/gdk/DocumentLoaderGdk.cpp:
   35234         (WebCore::DocumentLoader::getResponseModifiedHeader):
   35235         * loader/gdk/FrameLoaderClientGdk.cpp:
   35236         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveAuthenticationChallenge):
   35237         (WebCore::FrameLoaderClientGdk::dispatchDidCancelAuthenticationChallenge):
   35238         (WebCore::FrameLoaderClientGdk::dispatchWillSendRequest):
   35239         (WebCore::FrameLoaderClientGdk::assignIdentifierToInitialRequest):
   35240         (WebCore::FrameLoaderClientGdk::createPlugin):
   35241         (WebCore::FrameLoaderClientGdk::createFrame):
   35242         (WebCore::FrameLoaderClientGdk::redirectDataToPlugin):
   35243         (WebCore::FrameLoaderClientGdk::createJavaAppletWidget):
   35244         (WebCore::FrameLoaderClientGdk::objectContentType):
   35245         (WebCore::FrameLoaderClientGdk::overrideMediaType):
   35246         (WebCore::FrameLoaderClientGdk::windowObjectCleared):
   35247         (WebCore::FrameLoaderClientGdk::hasWebView):
   35248         (WebCore::FrameLoaderClientGdk::hasFrameView):
   35249         (WebCore::FrameLoaderClientGdk::frameLoadCompleted):
   35250         (WebCore::FrameLoaderClientGdk::saveViewStateToItem):
   35251         (WebCore::FrameLoaderClientGdk::restoreViewState):
   35252         (WebCore::FrameLoaderClientGdk::privateBrowsingEnabled):
   35253         (WebCore::FrameLoaderClientGdk::makeDocumentView):
   35254         (WebCore::FrameLoaderClientGdk::makeRepresentation):
   35255         (WebCore::FrameLoaderClientGdk::forceLayout):
   35256         (WebCore::FrameLoaderClientGdk::forceLayoutForNonHTML):
   35257         (WebCore::FrameLoaderClientGdk::setCopiesOnScroll):
   35258         (WebCore::FrameLoaderClientGdk::detachedFromParent1):
   35259         (WebCore::FrameLoaderClientGdk::detachedFromParent2):
   35260         (WebCore::FrameLoaderClientGdk::detachedFromParent3):
   35261         (WebCore::FrameLoaderClientGdk::detachedFromParent4):
   35262         (WebCore::FrameLoaderClientGdk::loadedFromCachedPage):
   35263         (WebCore::FrameLoaderClientGdk::dispatchDidHandleOnloadEvents):
   35264         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveServerRedirectForProvisionalLoad):
   35265         (WebCore::FrameLoaderClientGdk::dispatchDidCancelClientRedirect):
   35266         (WebCore::FrameLoaderClientGdk::dispatchWillPerformClientRedirect):
   35267         (WebCore::FrameLoaderClientGdk::dispatchDidChangeLocationWithinPage):
   35268         (WebCore::FrameLoaderClientGdk::dispatchWillClose):
   35269         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveIcon):
   35270         (WebCore::FrameLoaderClientGdk::dispatchDidStartProvisionalLoad):
   35271         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveTitle):
   35272         (WebCore::FrameLoaderClientGdk::dispatchDidCommitLoad):
   35273         (WebCore::FrameLoaderClientGdk::dispatchDidFinishDocumentLoad):
   35274         (WebCore::FrameLoaderClientGdk::dispatchDidFirstLayout):
   35275         (WebCore::FrameLoaderClientGdk::dispatchShow):
   35276         (WebCore::FrameLoaderClientGdk::cancelPolicyCheck):
   35277         (WebCore::FrameLoaderClientGdk::dispatchDidLoadMainResource):
   35278         (WebCore::FrameLoaderClientGdk::revertToProvisionalState):
   35279         (WebCore::FrameLoaderClientGdk::clearUnarchivingState):
   35280         (WebCore::FrameLoaderClientGdk::willChangeTitle):
   35281         (WebCore::FrameLoaderClientGdk::finishedLoading):
   35282         (WebCore::FrameLoaderClientGdk::finalSetupForReplace):
   35283         (WebCore::FrameLoaderClientGdk::setDefersLoading):
   35284         (WebCore::FrameLoaderClientGdk::isArchiveLoadPending):
   35285         (WebCore::FrameLoaderClientGdk::cancelPendingArchiveLoad):
   35286         (WebCore::FrameLoaderClientGdk::clearArchivedResources):
   35287         (WebCore::FrameLoaderClientGdk::canHandleRequest):
   35288         (WebCore::FrameLoaderClientGdk::canShowMIMEType):
   35289         (WebCore::FrameLoaderClientGdk::representationExistsForURLScheme):
   35290         (WebCore::FrameLoaderClientGdk::generatedMIMETypeForURLScheme):
   35291         (WebCore::FrameLoaderClientGdk::provisionalLoadStarted):
   35292         (WebCore::FrameLoaderClientGdk::didFinishLoad):
   35293         (WebCore::FrameLoaderClientGdk::prepareForDataSourceReplacement):
   35294         (WebCore::FrameLoaderClientGdk::setTitle):
   35295         (WebCore::FrameLoaderClientGdk::setDocumentViewFromCachedPage):
   35296         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveContentLength):
   35297         (WebCore::FrameLoaderClientGdk::dispatchDidFinishLoading):
   35298         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoading):
   35299         (WebCore::FrameLoaderClientGdk::dispatchDidLoadResourceFromMemoryCache):
   35300         (WebCore::FrameLoaderClientGdk::dispatchDidFailProvisionalLoad):
   35301         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoad):
   35302         (WebCore::FrameLoaderClientGdk::download):
   35303         (WebCore::FrameLoaderClientGdk::cancelledError):
   35304         (WebCore::FrameLoaderClientGdk::blockedError):
   35305         (WebCore::FrameLoaderClientGdk::cannotShowURLError):
   35306         (WebCore::FrameLoaderClientGdk::interruptForPolicyChangeError):
   35307         (WebCore::FrameLoaderClientGdk::cannotShowMIMETypeError):
   35308         (WebCore::FrameLoaderClientGdk::fileDoesNotExistError):
   35309         (WebCore::FrameLoaderClientGdk::shouldFallBack):
   35310         (WebCore::FrameLoaderClientGdk::willUseArchive):
   35311         (WebCore::FrameLoaderClientGdk::saveDocumentViewToCachedPage):
   35312         (WebCore::FrameLoaderClientGdk::canCachePage):
   35313         (WebCore::FrameLoaderClientGdk::dispatchCreatePage):
   35314         (WebCore::FrameLoaderClientGdk::dispatchUnableToImplementPolicy):
   35315         (WebCore::FrameLoaderClientGdk::setMainDocumentError):
   35316         (WebCore::FrameLoaderClientGdk::startDownload):
   35317         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForStandardLoad):
   35318         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForReload):
   35319         * loader/qt/DocumentLoaderQt.cpp:
   35320         * page/gdk/ContextMenuClientGdk.cpp:
   35321         (WebCore::ContextMenuClientGdk::contextMenuDestroyed):
   35322         (WebCore::ContextMenuClientGdk::getCustomMenuFromDefaultItems):
   35323         (WebCore::ContextMenuClientGdk::contextMenuItemSelected):
   35324         (WebCore::ContextMenuClientGdk::downloadURL):
   35325         (WebCore::ContextMenuClientGdk::copyImageToClipboard):
   35326         (WebCore::ContextMenuClientGdk::searchWithGoogle):
   35327         (WebCore::ContextMenuClientGdk::lookUpInDictionary):
   35328         (WebCore::ContextMenuClientGdk::speak):
   35329         (WebCore::ContextMenuClientGdk::stopSpeaking):
   35330         * page/gdk/EventHandlerGdk.cpp:
   35331         (WebCore::EventHandler::passMouseDownEventToWidget):
   35332         (WebCore::EventHandler::eventActivatedView):
   35333         (WebCore::EventHandler::passSubframeEventToSubframe):
   35334         (WebCore::EventHandler::passWheelEventToWidget):
   35335         (WebCore::EventHandler::createDraggingClipboard):
   35336         * page/qt/EventHandlerQt.cpp:
   35337         * page/qt/FrameQt.cpp:
   35338         * platform/NotImplemented.h: Added.
   35339         * platform/gdk/CursorGdk.cpp:
   35340         (WebCore::Cursor::Cursor):
   35341         * platform/gdk/EditorClientGdk.cpp:
   35342         (WebCore::EditorClientGdk::shouldDeleteRange):
   35343         (WebCore::EditorClientGdk::isContinuousSpellCheckingEnabled):
   35344         (WebCore::EditorClientGdk::isGrammarCheckingEnabled):
   35345         (WebCore::EditorClientGdk::spellCheckerDocumentTag):
   35346         (WebCore::EditorClientGdk::shouldBeginEditing):
   35347         (WebCore::EditorClientGdk::shouldEndEditing):
   35348         (WebCore::EditorClientGdk::shouldInsertText):
   35349         (WebCore::EditorClientGdk::shouldChangeSelectedRange):
   35350         (WebCore::EditorClientGdk::shouldApplyStyle):
   35351         (WebCore::EditorClientGdk::didBeginEditing):
   35352         (WebCore::EditorClientGdk::respondToChangedContents):
   35353         (WebCore::EditorClientGdk::respondToChangedSelection):
   35354         (WebCore::EditorClientGdk::didEndEditing):
   35355         (WebCore::EditorClientGdk::didWriteSelectionToPasteboard):
   35356         (WebCore::EditorClientGdk::didSetSelectionTypesForPasteboard):
   35357         (WebCore::EditorClientGdk::selectWordBeforeMenuEvent):
   35358         (WebCore::EditorClientGdk::isEditable):
   35359         (WebCore::EditorClientGdk::registerCommandForUndo):
   35360         (WebCore::EditorClientGdk::registerCommandForRedo):
   35361         (WebCore::EditorClientGdk::clearUndoRedoOperations):
   35362         (WebCore::EditorClientGdk::canUndo):
   35363         (WebCore::EditorClientGdk::canRedo):
   35364         (WebCore::EditorClientGdk::undo):
   35365         (WebCore::EditorClientGdk::redo):
   35366         (WebCore::EditorClientGdk::shouldInsertNode):
   35367         (WebCore::EditorClientGdk::pageDestroyed):
   35368         (WebCore::EditorClientGdk::smartInsertDeleteEnabled):
   35369         (WebCore::EditorClientGdk::toggleContinuousSpellChecking):
   35370         (WebCore::EditorClientGdk::handleInputMethodKeypress):
   35371         (WebCore::EditorClientGdk::textFieldDidBeginEditing):
   35372         (WebCore::EditorClientGdk::textFieldDidEndEditing):
   35373         (WebCore::EditorClientGdk::textDidChangeInTextField):
   35374         (WebCore::EditorClientGdk::doTextFieldCommandFromEvent):
   35375         (WebCore::EditorClientGdk::textWillBeDeletedInTextField):
   35376         (WebCore::EditorClientGdk::textDidChangeInTextArea):
   35377         * platform/gdk/FrameGdk.cpp:
   35378         (WebCore::Frame::print):
   35379         (WebCore::Frame::issueTransposeCommand):
   35380         (WebCore::Frame::cleanupPlatformScriptObjects):
   35381         (WebCore::Frame::dragImageForSelection):
   35382         * platform/gdk/NotImplementedGdk.h: Removed.
   35383         * platform/gdk/PopupMenuGdk.cpp:
   35384         (WebCore::PopupMenu::PopupMenu):
   35385         (WebCore::PopupMenu::~PopupMenu):
   35386         (WebCore::PopupMenu::show):
   35387         (WebCore::PopupMenu::hide):
   35388         (WebCore::PopupMenu::updateFromElement):
   35389         * platform/gdk/RenderThemeGdk.cpp:
   35390         (WebCore::RenderThemeGdk::setCheckboxSize):
   35391         (WebCore::RenderThemeGdk::setRadioSize):
   35392         (WebCore::RenderThemeGdk::adjustTextFieldStyle):
   35393         * platform/gdk/ScreenGdk.cpp:
   35394         (WebCore::screenDepthPerComponent):
   35395         (WebCore::screenIsMonochrome):
   35396         (WebCore::screenRect):
   35397         (WebCore::screenAvailableRect):
   35398         * platform/gdk/ScrollViewGdk.cpp:
   35399         (WebCore::ScrollView::update):
   35400         (WebCore::ScrollView::addChild):
   35401         (WebCore::ScrollView::removeChild):
   35402         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   35403         (WebCore::ScrollView::inWindow):
   35404         (WebCore::ScrollView::wheelEvent):
   35405         (WebCore::ScrollView::updateScrollbars):
   35406         (WebCore::ScrollView::updateScrollInfo):
   35407         (WebCore::ScrollView::windowToContents):
   35408         (WebCore::ScrollView::contentsToWindow):
   35409         (WebCore::ScrollView::scrollbarUnderMouse):
   35410         * platform/gdk/TemporaryLinkStubs.cpp:
   35411         (FrameView::updateBorder):
   35412         (WebCore::findNextWordFromIndex):
   35413         (WebCore::currentTextBreakLocaleID):
   35414         (ChromeClientGdk::chromeDestroyed):
   35415         (ChromeClientGdk::windowRect):
   35416         (ChromeClientGdk::setWindowRect):
   35417         (ChromeClientGdk::pageRect):
   35418         (ChromeClientGdk::scaleFactor):
   35419         (ChromeClientGdk::focus):
   35420         (ChromeClientGdk::unfocus):
   35421         (ChromeClientGdk::createWindow):
   35422         (ChromeClientGdk::createModalDialog):
   35423         (ChromeClientGdk::show):
   35424         (ChromeClientGdk::canRunModal):
   35425         (ChromeClientGdk::runModal):
   35426         (ChromeClientGdk::setToolbarsVisible):
   35427         (ChromeClientGdk::toolbarsVisible):
   35428         (ChromeClientGdk::setStatusbarVisible):
   35429         (ChromeClientGdk::statusbarVisible):
   35430         (ChromeClientGdk::setScrollbarsVisible):
   35431         (ChromeClientGdk::scrollbarsVisible):
   35432         (ChromeClientGdk::setMenubarVisible):
   35433         (ChromeClientGdk::menubarVisible):
   35434         (ChromeClientGdk::setResizable):
   35435         (ChromeClientGdk::closeWindowSoon):
   35436         (ChromeClientGdk::canTakeFocus):
   35437         (ChromeClientGdk::takeFocus):
   35438         (ChromeClientGdk::canRunBeforeUnloadConfirmPanel):
   35439         (ChromeClientGdk::addMessageToConsole):
   35440         (ChromeClientGdk::runBeforeUnloadConfirmPanel):
   35441         (ChromeClientGdk::runJavaScriptAlert):
   35442         (ChromeClientGdk::runJavaScriptConfirm):
   35443         (ChromeClientGdk::runJavaScriptPrompt):
   35444         (ChromeClientGdk::setStatusbarText):
   35445         (ChromeClientGdk::shouldInterruptJavaScript):
   35446         (ChromeClientGdk::tabsToLinks):
   35447         (ChromeClientGdk::windowResizerRect):
   35448         (ChromeClientGdk::addToDirtyRegion):
   35449         (ChromeClientGdk::scrollBackingStore):
   35450         (ChromeClientGdk::updateBackingStore):
   35451         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
   35452         (PlugInInfoStore::pluginCount):
   35453         (WebCore::PlugInInfoStore::supportsMIMEType):
   35454         (WebCore::refreshPlugins):
   35455         (SearchPopupMenu::saveRecentSearches):
   35456         (SearchPopupMenu::loadRecentSearches):
   35457         (SearchPopupMenu::SearchPopupMenu):
   35458         (SearchPopupMenu::enabled):
   35459         (FileChooser::FileChooser):
   35460         (FileChooser::~FileChooser):
   35461         (FileChooser::openFileChooser):
   35462         (FileChooser::basenameForWidth):
   35463         (ResourceHandle::willLoadFromCache):
   35464         (ResourceHandle::loadsBlocked):
   35465         (ResourceHandle::loadResourceSynchronously):
   35466         (Icon::Icon):
   35467         (Icon::~Icon):
   35468         (Icon::newIconForFile):
   35469         (Icon::paint):
   35470         (Font::selectionRectForComplexText):
   35471         (Font::drawComplexText):
   35472         (Font::floatWidthForComplexText):
   35473         (Font::offsetForPositionForComplexText):
   35474         (CachedPage::close):
   35475         (Editor::newGeneralClipboard):
   35476         (Pasteboard::generalPasteboard):
   35477         (Pasteboard::writeSelection):
   35478         (Pasteboard::writeURL):
   35479         (Pasteboard::writeImage):
   35480         (Pasteboard::clear):
   35481         (Pasteboard::canSmartReplace):
   35482         (Pasteboard::documentFragment):
   35483         (Pasteboard::plainText):
   35484         (Pasteboard::Pasteboard):
   35485         (Pasteboard::~Pasteboard):
   35486         (ContextMenu::ContextMenu):
   35487         (ContextMenu::~ContextMenu):
   35488         (ContextMenu::appendItem):
   35489         (ContextMenuItem::ContextMenuItem):
   35490         (ContextMenuItem::~ContextMenuItem):
   35491         (ContextMenuItem::releasePlatformDescription):
   35492         (ContextMenuItem::type):
   35493         (ContextMenuItem::setType):
   35494         (ContextMenuItem::action):
   35495         (ContextMenuItem::setAction):
   35496         (ContextMenuItem::title):
   35497         (ContextMenuItem::setTitle):
   35498         (ContextMenuItem::platformSubMenu):
   35499         (ContextMenuItem::setSubMenu):
   35500         (ContextMenuItem::setChecked):
   35501         (ContextMenuItem::setEnabled):
   35502         (WebCore::supportedKeySizes):
   35503         (WebCore::systemBeep):
   35504         (WebCore::userIdleTime):
   35505         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   35506         * platform/graphics/cairo/ImageBufferCairo.cpp:
   35507         * platform/graphics/cairo/PathCairo.cpp:
   35508         * platform/graphics/gdk/ImageGdk.cpp:
   35509         * platform/graphics/qt/GraphicsContextQt.cpp:
   35510         * platform/graphics/qt/IconQt.cpp:
   35511         * platform/graphics/qt/ImageQt.cpp:
   35512         * platform/network/gdk/ResourceHandleCurl.cpp:
   35513         (WebCore::ResourceHandle::setDefersLoading):
   35514         * platform/network/gdk/ResourceHandleManager.cpp:
   35515         (WebCore::ResourceHandleManager::setupPUT):
   35516         (WebCore::ResourceHandleManager::setupPOST):
   35517         * platform/network/qt/ResourceHandleQt.cpp:
   35518         * platform/qt/ClipboardQt.cpp:
   35519         * platform/qt/CursorQt.cpp:
   35520         * platform/qt/DragDataQt.cpp:
   35521         * platform/qt/FileChooserQt.cpp:
   35522         * platform/qt/MimeTypeRegistryQt.cpp:
   35523         * platform/qt/PasteboardQt.cpp:
   35524         * platform/qt/PlatformScrollBarQt.cpp:
   35525         * platform/qt/PopupMenuQt.cpp:
   35526         * platform/qt/ScrollViewQt.cpp:
   35527         * platform/qt/TemporaryLinkStubs.cpp:
   35528         * platform/qt/TextBoundaries.cpp:
   35529         * platform/qt/WidgetQt.cpp:
   35530         * platform/win/FontWin.cpp:
   35531         * platform/win/TemporaryLinkStubs.cpp:
   35532         * platform/wx/ClipboardWx.cpp:
   35533         * platform/wx/FontWx.cpp:
   35534         * platform/wx/ScrollViewWx.cpp:
   35535         * platform/wx/SharedTimerWx.cpp:
   35536         * platform/wx/TemporaryLinkStubs.cpp:
   35537 
   35538 2007-05-27  Rob Buis  <buis (a] kde.org>
   35539 
   35540         Reviewed by Oliver.
   35541 
   35542         http://bugs.webkit.org/show_bug.cgi?id=13828
   35543         x/y values on rootmost <svg> elements should be ignored
   35544 
   35545         Make sure that root-most <svg> elements do not take into account x/y.
   35546 
   35547         * ksvg2/svg/SVGSVGElement.cpp:
   35548         (WebCore::SVGSVGElement::viewport):
   35549         (WebCore::SVGSVGElement::getCTM):
   35550         (WebCore::SVGSVGElement::getScreenCTM):
   35551         * rendering/RenderSVGContainer.cpp:
   35552         (WebCore::RenderSVGContainer::calcViewport):
   35553 
   35554 2007-05-26  David Hyatt  <hyatt (a] apple.com>
   35555 
   35556         Fix for radar bug 5219562, PNG isn't displayed on SVG test suite.
   35557         Improve <object> error handling so that it recovers properly when
   35558         <td> is used inside it.
   35559 
   35560         Reviewed by olliej
   35561 
   35562         Added fast/invalid/td-inside-object.html
   35563 
   35564         * html/HTMLObjectElement.h:
   35565         (WebCore::HTMLObjectElement::tagPriority):
   35566         * html/HTMLParser.cpp:
   35567         (WebCore::HTMLParser::handleError):
   35568         * html/HTMLParserErrorCodes.cpp:
   35569         (WebCore::htmlParserErrorMessageTemplate):
   35570         * html/HTMLParserErrorCodes.h:
   35571 
   35572 2007-05-26  David Hyatt  <hyatt (a] apple.com>
   35573 
   35574         Don't compare the "isset" variables in background layers, since they
   35575         lead us to turn off the Aqua look incorrectly, even when the background
   35576         matches the default.
   35577 
   35578         Reviewed by olliej
   35579 
   35580         * rendering/RenderStyle.cpp:
   35581         (WebCore::BackgroundLayer::operator==):
   35582 
   35583 2007-05-26  David Hyatt  <hyatt (a] apple.com>
   35584 
   35585         Improve the </p> -> <p></p> error message to not spew two errors.
   35586         Fix a bug where errors reported inside document.write didn't get
   35587         reported as such because of a mistake in the notation of SegmentedString.
   35588 
   35589         Reviewed by aroben
   35590 
   35591         * html/HTMLParser.cpp:
   35592         (WebCore::HTMLParser::processCloseTag):
   35593         * platform/SegmentedString.h:
   35594         (WebCore::SegmentedSubstring::clear):
   35595 
   35596 2007-05-26  David Hyatt  <hyatt (a] apple.com>
   35597 
   35598         Fix for bug 13887, percentage height block not sized correctly inside
   35599         positioned percentage height containing block.
   35600 
   35601         Reviewed by mitz
   35602 
   35603         fast/block/positioning/complex-percentage-height.html
   35604 
   35605         * rendering/RenderBox.cpp:
   35606         (WebCore::RenderBox::calcPercentageHeight):
   35607 
   35608 2007-05-26  Mitz Pettel  <mitz (a] webkit.org>
   35609 
   35610         Reviewed by Oliver Hunt.
   35611 
   35612         - finish fixing http://bugs.webkit.org/show_bug.cgi?id=13871
   35613           Box shadow should not apply to Aqua-themed controls
   35614 
   35615         Covered by fast/forms/box-shadow-override.html
   35616 
   35617         I forgot to include adjustSliderThumbStyle in the previous patch and the
   35618         test didn't detect it because of a bug introduced in r21739.
   35619 
   35620         * rendering/RenderThemeMac.h:
   35621         * rendering/RenderThemeMac.mm:
   35622         (WebCore::RenderThemeMac::adjustSliderThumbStyle):
   35623 
   35624 2007-05-26  Mitz Pettel  <mitz (a] webkit.org>
   35625 
   35626         Reviewed by Hyatt.
   35627 
   35628         - fix http://bugs.webkit.org/show_bug.cgi?id=13876
   35629           Box-Shadow disappears if shadow doesn't fit in the window size
   35630 
   35631         Tests: fast/repaint/box-shadow-h.html
   35632                fast/repaint/box-shadow-v.html
   35633 
   35634         * rendering/RenderTable.cpp:
   35635         (WebCore::RenderTable::layout):
   35636 
   35637 2007-05-26  Alexey Proskuryakov  <ap (a] webkit.org>
   35638 
   35639         Reviewed by Darin.
   35640 
   35641         http://bugs.webkit.org/show_bug.cgi?id=13605
   35642         REGRESSION: Browser crashes when switching Kotoeri input modes
   35643 
   35644         The problem could no longer be reproduced with Kotoeri thanks to
   35645         a fix in <http://trac.webkit.org/projects/webkit/changeset/21728>,
   35646         but we still need to protect from invalid ranges passed from
   35647         input methods.
   35648 
   35649         Test: editing/input/replace-invalid-range.html
   35650 
   35651         * page/mac/WebCoreFrameBridge.mm:
   35652         (-[WebCoreFrameBridge selectNSRange:]): Added a null check.
   35653 
   35654 2007-05-26  Darin Adler  <darin (a] apple.com>
   35655 
   35656         * platform/network/mac/ResourceResponseMac.mm:
   35657         (WebCore::ResourceResponse::doUpdateResourceResponse):
   35658         Alexey pointed out that I was wrong about object lifetime, so
   35659         rolling this change out.
   35660 
   35661 2007-05-26  Darin Adler  <darin (a] apple.com>
   35662 
   35663         Reviewed by Anders.
   35664 
   35665         * platform/network/mac/ResourceResponseMac.mm:
   35666         (WebCore::ResourceResponse::doUpdateResourceResponse):
   35667         Fixed code where a temporary String is used after destroyed.
   35668 
   35669 2007-05-26  Mitz Pettel  <mitz (a] webkit.org>
   35670 
   35671         Reviewed by Darin.
   35672 
   35673         - http://bugs.webkit.org/show_bug.cgi?id=13842
   35674           Simplify Color::light() and Color::dark()
   35675 
   35676         Not testable.
   35677 
   35678         * platform/graphics/Color.cpp:
   35679         (WebCore::Color::light):
   35680         (WebCore::Color::dark):
   35681 
   35682 2007-05-26  Mitz Pettel  <mitz (a] webkit.org>
   35683 
   35684         Reviewed by Darin.
   35685 
   35686         - fix http://bugs.webkit.org/show_bug.cgi?id=13870
   35687           RenderFrameSet should only allow frame and frameset children
   35688 
   35689         Covered by fast/frames/inline-object-inside-frameset.html
   35690 
   35691         * rendering/RenderFrame.h:
   35692         (WebCore::RenderFrame::isFrame): Added.
   35693         * rendering/RenderFrameSet.cpp:
   35694         (WebCore::RenderFrameSet::paint): Removed check for inline objects that is
   35695         no longer needed.
   35696         (WebCore::RenderFrameSet::isChildAllowed): Added. Allows the child only
   35697         if it is a frame or another frameset.
   35698         * rendering/RenderFrameSet.h:
   35699         * rendering/RenderObject.h:
   35700         (WebCore::RenderObject::isFrame): Added.
   35701 
   35702 2007-05-26  Mitz Pettel  <mitz (a] webkit.org>
   35703 
   35704         Reviewed by Darin.
   35705 
   35706         - http://bugs.webkit.org/show_bug.cgi?id=13871
   35707           Box shadow should not apply to Aqua-themed controls
   35708 
   35709         Test: fast/forms/box-shadow-override.html
   35710 
   35711         * rendering/RenderTheme.cpp:
   35712         (WebCore::RenderTheme::adjustCheckboxStyle):
   35713         (WebCore::RenderTheme::adjustRadioStyle):
   35714         * rendering/RenderThemeMac.h:
   35715         * rendering/RenderThemeMac.mm:
   35716         (WebCore::RenderThemeMac::adjustButtonStyle):
   35717         (WebCore::RenderThemeMac::adjustMenuListStyle):
   35718         (WebCore::RenderThemeMac::adjustSliderTrackStyle):
   35719         (WebCore::RenderThemeMac::adjustSearchFieldStyle):
   35720         (WebCore::RenderThemeMac::adjustSearchFieldCancelButtonStyle):
   35721         (WebCore::RenderThemeMac::adjustSearchFieldDecorationStyle):
   35722         (WebCore::RenderThemeMac::adjustSearchFieldResultsDecorationStyle):
   35723         (WebCore::RenderThemeMac::adjustSearchFieldResultsButtonStyle):
   35724 
   35725 2007-05-26  Holger Freyther  <zecke (a] selfish.org>
   35726 
   35727         Reviewed by Anders.
   35728 
   35729         * platform/gdk/FrameGdk.cpp: Catch up to make it compile
   35730         (WebCore::FrameGdk::FrameGdk): The Settings is now owned by the Page
   35731 
   35732 2007-05-25  Sam Weinig  <sam (a] webkit.org>
   35733 
   35734         Reviewed by Oliver of the Hunt.
   35735 
   35736         Fixed <rdar://problem/5230247> at least 43 xhtml tests fail in 
   35737         Leopard because they are being interpreted as html
   35738 
   35739         Adds a work around for <rdar://problem/5230154> which explicitly
   35740         sets local .xhtml files to have the MIME type application/xhtml+xml.
   35741 
   35742         * platform/network/mac/ResourceResponseMac.mm:
   35743         (WebCore::ResourceResponse::doUpdateResourceResponse):
   35744 
   35745 2007-05-25  Geoffrey Garen  <ggaren (a] apple.com>
   35746 
   35747         Reviewed by Darin Adler.
   35748 
   35749         Fixed <rdar://problem/5055182> The page cache has no global cap.
   35750         
   35751         Beefed up the PageCache class to track which HistoryItems are 
   35752         cached, and decide how to evict old HistoryItems as new ones are
   35753         added.
   35754 
   35755         * history/BackForwardList.cpp: Removed support for managing the page cache
   35756         through the BackForwardList since this is deprecated in Mac's 
   35757         WebBackForwardList, and doesn't exist on other platforms.
   35758         
   35759         Added a Page* back pointer so that Mac WebBackForwardList can still support 
   35760         its deprecated API, using the new hotness. This isn't a big burden, since 
   35761         Page is responsible for calling BackForwardList::close upon destruction, 
   35762         anyway.
   35763 
   35764         * history/HistoryItem.cpp: Replaced CachedPage* with boolean that tells
   35765         you whether you're in the page cache. This prevents us from having more
   35766         than one persistent repository for cached pages.
   35767 
   35768         * history/PageCache.cpp: If you're playing along at home, this code is 
   35769         the reason for the patch.
   35770 
   35771         * loader/FrameLoader.cpp: If you're playing along at home, the minuses in
   35772         this file are the reason for the patch.
   35773         
   35774         Replaced call to FrameLoaderClient::loadedFromCachedPage with its one-line
   35775         implementation because WebCore calling itself through WebKit is uncivilized.
   35776 
   35777         * page/Settings.cpp: Added support for removing a Page's HistoryItems from
   35778         the page cache.
   35779 
   35780 2007-05-25  Mitz Pettel  <mitz (a] webkit.org>
   35781 
   35782         Reviewed by Darin.
   35783 
   35784         - fix http://bugs.webkit.org/show_bug.cgi?id=13869
   35785           Many leaks seen on buildbot after r21735
   35786 
   35787         - fix another regression from r21739: ::-webkit-slider-thumb style not
   35788           applied.
   35789 
   35790         Test: fast/forms/slider-thumb-stylability.html
   35791 
   35792         * rendering/RenderSlider.cpp:
   35793         (WebCore::RenderSlider::setStyle):
   35794         (WebCore::RenderSlider::createThumbStyle):
   35795 
   35796 2007-05-25  Justin Garcia  <justin.garcia (a] apple.com>
   35797 
   35798         Reviewed by Harrison.
   35799 
   35800         <rdar://problem/5228141> 
   35801         REGRESSION: Can't apply style to selection that ends after an image
   35802 
   35803         * editing/ApplyStyleCommand.cpp:
   35804         (WebCore::ApplyStyleCommand::applyInlineStyle):
   35805         Use range compliant equivalents when creating the Range
   35806         used to compute pastEndNode(), otherwise Range's constructor
   35807         ASSERTs and pastEndNode() returns null. Added a testcase.
   35808         If the incoming Range is collapsed at [br, 0], callers want
   35809         the style to be applied to the br, so expand the Range to include
   35810         it.  We got away without expanding before because pastEndNode
   35811         of a Range from [br, 0] to [br, 0] is the node after the br.
   35812         Using range compliant equivalents changed that. There's already
   35813         test coverage for this change.
   35814         Changed while loop termination for finding the end of a run 
   35815         so that we don't process pastEnd.  end.node() may now be 
   35816         non-atomic and we'd blow past it. There's already test
   35817         coverage for this change.
   35818 
   35819 2007-05-25  Beth Dakin  <bdakin (a] apple.com>
   35820 
   35821         Rubber stamped by Hyatt
   35822 
   35823         Adding an ASSERT for good measure.
   35824 
   35825         * page/FrameView.cpp:
   35826         (WebCore::FrameView::layout):
   35827 
   35828 2007-05-25  Kevin McCullough  <kmccullough (a] apple.com>
   35829  
   35830         Reviewed by Geoff.
   35831 
   35832         - <rdar://problem/5183523> REGRESSION: Excel: Worksheet tabs in spreadsheet saved as web page don't work 
   35833         - Change load to check the URL as well as the referrer since it is possilbe to have a referrer which limits a load even thought the URL would allow it.  There is a bug about how we need to re-evaluate the whole load architecture: <rdar://problem/5227992> Rethink canLoad() to have a consistent and comprehensive architecture.
   35834 
   35835         * loader/FrameLoader.cpp:
   35836         (WebCore::FrameLoader::loadSubframe):
   35837         (WebCore::FrameLoader::load):
   35838         (WebCore::FrameLoader::canLoad):
   35839         * loader/FrameLoader.h:
   35840 
   35841 2007-05-25  Anders Carlsson  <andersca (a] apple.com>
   35842 
   35843         Reviewed by Brady.
   35844 
   35845         <rdar://problem/5209536>
   35846         http://bugs.webkit.org/show_bug.cgi?id=13757
   35847         REGRESSION: Leaks seen on buildbot after r21497.
   35848         
   35849         Fix multipart data loading so it works like Tiger Safari. When one part of a multipart connection has been loaded,
   35850         move the subresource loader from the subresource loaders set and into a special multipart subresource loader set. This set 
   35851         is not considered when asking a document loader if it's currently loading. 
   35852                 
   35853         * loader/DocumentLoader.cpp:
   35854         (WebCore::DocumentLoader::stopLoading):
   35855         Always stop the multipart subresource loaders here.
   35856         
   35857         (WebCore::DocumentLoader::subresourceLoaderFinishedLoadingOnePart):
   35858         New function that moves the loader from m_subresourceLoaders to m_multipartSubresourceLoaders and updates the document loader's state.
   35859         
   35860         * loader/ProgressTracker.cpp:
   35861         (WebCore::ProgressTracker::incrementProgress):
   35862         If a progress item already exists, reuse it. This can happen in some rare circumstances when dealing with multipart data.
   35863         
   35864         * loader/SubresourceLoader.cpp:
   35865         (WebCore::SubresourceLoader::didReceiveResponse):
   35866         Call subresourceLoaderFinishedLoadingOnePart if the response is multipart.
   35867 
   35868 2007-05-25  Patti Hoa  <patti (a] apple.com>
   35869 
   35870         Reviewed by Tim Hatcher.
   35871 
   35872         <rdar://problem/4918397> Exception raise inspecting note contents in the background
   35873         
   35874         * bridge/mac/WebCoreAXObject.mm:
   35875         (-[WebCoreAXObject accessibilityDescription]):
   35876         Only allow asking the attachmentView for description if attachmentView supports this description attribute
   35877 
   35878 2007-05-25  Beth Dakin  <bdakin (a] apple.com>
   35879 
   35880         Reviewed by Oliver and Hyatt.
   35881 
   35882         Fix for <rdar://problem/5228363> REGRESSION: In Mail, attempting to 
   35883         create a To Do results in a crash
   35884 
   35885         This regressed with r21635. Now that -boundingBox updates layout if 
   35886         it is needed, we infinitely recurse when Mail draws a custom 
   35887         highlight. The fix is to put a guard around laying out the render 
   35888         tree.
   35889 
   35890         * page/FrameView.cpp:
   35891         (WebCore::FrameViewPrivate::reset):
   35892         (WebCore::FrameView::layout):
   35893 
   35894 2007-05-25  Patti Hoa <patti (a] apple.com>
   35895 
   35896         Reviewed by John Sullivan.
   35897         
   35898         <rdar://problem/5221986> selection in web areas doesn't seem to be working for text navigation
   35899         
   35900         * bridge/mac/WebCoreAXObject.mm:
   35901         (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
   35902         Fixed up incorrect string comparison for AXSelectedTextMarkerRange ax attribute so 
   35903         this attribute can actually announce its settability. 
   35904 
   35905 2007-05-25  Darin Adler  <darin (a] apple.com>
   35906 
   35907         Reviewed by Alice.
   35908 
   35909         - fix <rdar://problem/5228048> REGRESSION: In a new Mail message, the caret isn't
   35910           immediately inserted when tabbing into or clicking in the message body
   35911 
   35912         This latent problem was uncovered by <http://trac.webkit.org/projects/webkit/changeset/21476>,
   35913         which removed some code that did extra work whenever setCaretVisible made the caret visible.
   35914 
   35915         * page/Frame.cpp: (WebCore::Frame::selectionLayoutChanged): Call invalidateCaretRect
   35916         when turning the caret on. All other call sites that touched m_caretPaint were doing
   35917         this, but this was not.
   35918 
   35919 2007-05-25  Darin Adler  <darin (a] apple.com>
   35920 
   35921         Reviewed by Harrison.
   35922 
   35923         * DerivedSources.make: Tweaked spelling.
   35924 
   35925 2007-05-25  Mitz Pettel  <mitz (a] webkit.org>
   35926 
   35927         Reviewed by Darin.
   35928 
   35929         - fix http://bugs.webkit.org/show_bug.cgi?id=13872
   35930           REGRESSION: An empty search field can have a cancel button
   35931 
   35932         Test: fast/forms/search-cancel-button-style-sharing.html
   35933 
   35934         * rendering/RenderTextControl.cpp:
   35935         (WebCore::RenderTextControl::createCancelButtonStyle): Prevented sharing of
   35936         the cancel button style between search fields that share style, because
   35937         each search field mutates the style to show and hide the cancel button.
   35938 
   35939 2007-05-25  David Harrison  <harrison (a] apple.com>
   35940 
   35941         Reviewed by Kevin and Geoff.
   35942 
   35943         * DerivedSources.make:
   35944         Add an inclusion guard for CSSGrammar.h and XPathGrammar.h, because older versions of bison do not
   35945         
   35946         * css/maketokenizer:
   35947         Unconditionally define the flex basic types that are not part of newer versions of flex. Was
   35948         only needed on Linux. Now needed on Mac OS 10.5, and is OK to do on 10.4.9.
   35949 
   35950 2007-05-25  Geoffrey Garen  <ggaren (a] apple.com>
   35951 
   35952         Reviewed by Darin Adler.
   35953         
   35954         Moved JavaScriptCore-related pending public API to public API.
   35955 
   35956         Moved -JSObject
   35957 
   35958         * bindings/objc/WebScriptObjectPendingPublic.h: from here
   35959         * bindings/objc/WebScriptObject.h: to here
   35960         * bindings/objc/WebScriptObject.mm: and out of its temporary category
   35961 
   35962 2007-05-25  Mitz Pettel  <mitz (a] webkit.org>
   35963 
   35964         Reviewed by Darin.
   35965 
   35966         - fix http://bugs.webkit.org/show_bug.cgi?id=13767
   35967           REGRESSION: Multipart image documents are garbled
   35968 
   35969         Test: http/tests/multipart/invalid-image-data-standalone.html
   35970 
   35971         * loader/DocumentLoader.cpp:
   35972         (WebCore::DocumentLoader::isLoadingMultipartContent): Added.
   35973         * loader/DocumentLoader.h:
   35974         * loader/ImageDocument.cpp:
   35975         (WebCore::ImageTokenizer::finish): If the image is multipart, make a copy
   35976         of the current part instead of using the resource data, which is going to be
   35977         overwritten by the next part.
   35978         * loader/MainResourceLoader.h:
   35979         (WebCore::MainResourceLoader::isLoadingMultipartContent): Added.
   35980 
   35981 2007-05-25  Anders Carlsson  <andersca (a] apple.com>
   35982 
   35983         Fix no-svg build.
   35984         
   35985         * bindings/js/kjs_html.cpp:
   35986         (KJS::HTMLElementFunction::callAsFunction):
   35987 
   35988 2007-05-25  Anders Carlsson  <andersca (a] apple.com>
   35989 
   35990         Reviewed by Mitz.
   35991 
   35992         <rdar://problem/5226788> After resizing the window larger than the image, hovering over the image still shows magnify glass
   35993         
   35994         One part of the bug was already fixed by my previous commit. This fixes the case where the window is sized so the image fit
   35995         after it has been zoomed in.
   35996         
   35997         * loader/ImageDocument.cpp:
   35998         (WebCore::ImageDocument::windowSizeChanged):
   35999 
   36000 2007-05-25  John Sullivan  <sullivan (a] apple.com>
   36001 
   36002         Reviewed by Anders and Tim
   36003 
   36004         - WebCore change for: 
   36005           <rdar://problem/5226000> REGRESSION: In Gmail and Mail, a hang occurs when attempting to grammar/spellcheck a word in a reply 
   36006 
   36007         * editing/Editor.cpp:
   36008         (WebCore::findFirstBadGrammarInRange):
   36009         Use the more obvious way to check whether a range is empty. In this case the more obvious way
   36010         would also have caused no problem to occur. Also added an assertion. Though this change is
   36011         enough to fix the symptom of the bug, the real fix is in WebKit.
   36012 
   36013 2007-05-25  Anders Carlsson  <andersca (a] apple.com>
   36014 
   36015         Reviewed by Darin (Sorta).
   36016 
   36017         * loader/ImageDocument.cpp:
   36018         (WebCore::ImageDocument::restoreImageSize):
   36019         Use removeProperty here.
   36020 
   36021 2007-05-25  Geoffrey Garen  <ggaren (a] apple.com>
   36022 
   36023         Reviewed by Darin Adler.
   36024 
   36025         Some cleanup to Cache while Fixing <rdar://problem/5055182> The page cache 
   36026         has no global cap.
   36027         
   36028         * loader/Cache.cpp: Removed destructor to help identify this class as a
   36029         singleton.
   36030 
   36031         * loader/Cache.h: Made constructor and destructor private to match the
   36032         singleton model of PageCache.
   36033         
   36034         Put structs related to Cache inside its declaration to fix some namespace
   36035         conflicts I had while writing my patch. (They don't exist anymore, but
   36036         I figured this might help future development.)
   36037 
   36038 2007-05-24  Geoffrey Garen  <ggaren (a] apple.com>
   36039 
   36040         Reviewed by Darin Adler.
   36041 
   36042         Fixed a bug with Settings where a number of different objects held bare 
   36043         Settings* data members, even though the Page owns the Settings object and 
   36044         deletes it upon destruction.
   36045 
   36046         Added NULL checks since the Page can be deleted before the frame/document.
   36047 
   36048         * page/Settings.cpp: Removed reliance on setNeedsReapplyStylesForSettingsChange.
   36049 
   36050         * css/cssstyleselector.cpp: CSSStyleSelector was the worst offender. It 
   36051         held a number of back pointers that were not guaranteed. I removed the 
   36052         Settings*, Frame*, and FrameView* back pointers, but others could probably 
   36053         go, too. I replaced them with a single Document* pointer, which is guaranteed
   36054         because the Document owns the CSSStyleSelector.
   36055 
   36056         * page/Page.cpp: Removed setNeedsReapplyStylesForSettingsChange -- the 
   36057         Settings object is now a proper subcontroller of Page, so it doesn't need
   36058         to use a global table to find its page anymore. Also, this function
   36059         confusingly implied that the Frames in a page can have heterogeneous settings,
   36060         which is not true.
   36061 
   36062 2007-05-25  David Hyatt  <hyatt (a] apple.com>
   36063 
   36064         Make sure -webkit-border-fit accounts for padding as well as border.
   36065 
   36066         Reviewed by aroben
   36067 
   36068         * rendering/RenderBlock.cpp:
   36069         (WebCore::RenderBlock::borderFitAdjust):
   36070 
   36071 2007-05-25  David Hyatt  <hyatt (a] apple.com>
   36072 
   36073         Rework line numbering (again).  This time I finally think I have
   36074         it right for all the document.write insanity that can occur.
   36075 
   36076         Reviewed by aroben
   36077 
   36078         * html/HTMLParser.cpp:
   36079         (WebCore::HTMLParser::reportErrorToConsole):
   36080         * html/HTMLParserErrorCodes.cpp:
   36081         (WebCore::htmlParserDocumentWriteMessage):
   36082         * html/HTMLParserErrorCodes.h:
   36083         * html/HTMLTokenizer.cpp:
   36084         (WebCore::HTMLTokenizer::write):
   36085         * html/HTMLTokenizer.h:
   36086         (WebCore::HTMLTokenizer::lineNumberPtr):
   36087         (WebCore::HTMLTokenizer::processingContentWrittenByScript):
   36088         * platform/SegementedSring.cpp
   36089         (WebCore::SegmentedString::setExcludeLineNumbers):
   36090         * platform/SegmentedString.h:
   36091         (WebCore::SegmentedSubstring::SegmentedSubstring):
   36092         (WebCore::SegmentedSubstring::clear):
   36093         (WebCore::SegmentedSubstring::excludeLineNumbers):
   36094         (WebCore::SegmentedSubstring::setExcludeLineNumbers):
   36095         (WebCore::SegmentedString::excludeLineNumbers):
   36096         (WebCore::SegmentedString::advance):
   36097 
   36098 2007-05-24  Geoffrey Garen  <ggaren (a] apple.com>
   36099 
   36100         Reviewed by Adam Roben.
   36101 
   36102         Added a debug-only CachedPage counter. This helped me track down an SVG 
   36103         timer bug in my recent page cache work.
   36104                 
   36105         * history/CachedPage.cpp:
   36106 
   36107 2007-05-24  David Hyatt  <hyatt (a] apple.com>
   36108 
   36109         Improve <form> error reporting to catch <form>s inside table parts.
   36110         Tweak the wording of some of the error messages to be a bit better.
   36111 
   36112         Reviewed by olliej
   36113 
   36114         * html/HTMLParser.cpp:
   36115         (WebCore::HTMLParser::insertNode):
   36116         (WebCore::HTMLParser::processCloseTag):
   36117         (WebCore::HTMLParser::popBlock):
   36118         * html/HTMLParserErrorCodes.cpp:
   36119         (WebCore::htmlParserErrorMessageTemplate):
   36120         * html/HTMLParserErrorCodes.h:
   36121 
   36122 2007-05-24  Rob Buis  <buis (a] kde.org>
   36123 
   36124         Reviewed by Hyatt.
   36125 
   36126         http://bugs.webkit.org/show_bug.cgi?id=4104
   36127         first-letter not updating style with hover
   36128         http://bugs.webkit.org/show_bug.cgi?id=13169
   36129         css-formatted first letter won't hide dynamically
   36130 
   36131         Update first letter when RenderBlock::setStyle is called. 
   36132 
   36133         * css/cssstyleselector.cpp:
   36134         (WebCore::CSSStyleSelector::checkOneSelector):
   36135         * dom/Document.cpp:
   36136         (WebCore::Document::Document):
   36137         (WebCore::Document::createElement):
   36138         * dom/Document.h:
   36139         (WebCore::Document::usesFirstLetterRules):
   36140         (WebCore::Document::setUsesFirstLetterRules):
   36141         * rendering/RenderBlock.cpp:
   36142         (WebCore::RenderBlock::setStyle):
   36143         (WebCore::RenderBlock::updateFirstLetter):
   36144 
   36145 2007-05-24  Mitz Pettel  <mitz (a] webkit.org>
   36146 
   36147         Reviewed by Darin.
   36148 
   36149         - fix http://bugs.webkit.org/show_bug.cgi?id=13800
   36150           REGRESSION: Moving a slider moves another unrelated slider
   36151 
   36152         Test: fast/forms/slider-thumb-shared-style.html
   36153 
   36154         RenderSlider mutates the thumb's style, therefore it must not be shared
   36155         with another slider's thumb, a situation that could occur if the sliders
   36156         themselves shared style.
   36157 
   36158         * rendering/RenderSlider.cpp:
   36159         (WebCore::RenderSlider::createThumbStyle): Always use a private copy for
   36160         the thumb style.
   36161 
   36162 2007-05-24  Adele Peterson  <adele (a] apple.com>
   36163 
   36164         Reviewed by Darin.
   36165 
   36166         Fix for <rdar://problem/5211921> Form values sometimes get transposed (iGoogle)
   36167 
   36168         Test: fast/history/redirect-load-no-form-restoration.html
   36169 
   36170         * history/HistoryItem.cpp:
   36171         (WebCore::HistoryItem::setURL): Clear the document state when the url changes for a HistoryItem.
   36172         (WebCore::HistoryItem::isCurrentDocument): Added. Compares the HistoryItem url to the document's url.  This might not be the best way to do this, but it works for now.
   36173         * history/HistoryItem.h:
   36174         * loader/FrameLoader.cpp: (WebCore::FrameLoader::saveDocumentState): Only set the document (and form) state if the document is current for the history item.
   36175 
   36176 2007-05-24  Mitz Pettel  <mitz (a] webkit.org>
   36177 
   36178         Reviewed by Adele.
   36179 
   36180         - fix http://bugs.webkit.org/show_bug.cgi?id=13857
   36181           REGRESSION: onChange function applied to select element executes twice when focus is set
   36182 
   36183         Test: fast/forms/select-double-onchange.html
   36184 
   36185         * html/HTMLSelectElement.cpp:
   36186         (WebCore::HTMLSelectElement::menuListOnChange): Changed to update m_lastOnChangeIndex
   36187         before dispatching the change event to avoid reentrancy.
   36188 
   36189 2007-05-24  Darin Adler  <darin (a] apple.com>
   36190 
   36191         Reviewed by Hyatt.
   36192 
   36193         - fix <rdar://problem/5226451> REGRESSION (21618): Mail block quotes
   36194           are missing the lines on the side
   36195 
   36196         This patch fixes three problems:
   36197 
   36198         1) makes the "skip canLoad check" boolean also skip the check
   36199            that prevents any loads while the document is in provisional
   36200            state; this is the proximate cause of the bug
   36201 
   36202         * loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::create):
   36203         Don't check the frame's state if skipCanLoadCheck is true.
   36204 
   36205         2) moves the "skip canLoad check" boolean to the Request object;
   36206            the old implementation would cause that flag to affect the
   36207            new request we served, which might not be the resource with
   36208            that flag set
   36209 
   36210         3) fixes error-handling code path that would leak requests
   36211 
   36212         * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
   36213         Pass false to the CachedImage constructor to indicate we are not making
   36214         this object for the cache.
   36215 
   36216         * loader/Cache.cpp:
   36217         (WebCore::createResource): Pass true to the CachedImage constructor to
   36218         indicate we are making this object for the cache.
   36219         (WebCore::Cache::requestResource): Add new code that assumes the object
   36220         will already have the inCache bit set, and that will delete the object
   36221         and return 0 if the cache is disabled and the load failed.
   36222 
   36223         * loader/CachedImage.h:
   36224         * loader/CachedImage.cpp: (WebCore::CachedImage::CachedImage):
   36225         Added a forCache boolean parameter. Always false for the constructor
   36226         that's only used outside the cache code, and passed in as a boolean
   36227         for the constructor that's used both in cache and outside cache.
   36228 
   36229         * loader/CachedResource.h:
   36230         * loader/CachedResource.cpp:
   36231         (WebCore::CachedResource::CachedResource): Added a forCache boolean
   36232         parameter that determines the initial state of the m_inCache flag.
   36233         This is needed to prevent a resource from being destroyed if an
   36234         error occurs during the initial load.
   36235 
   36236         * loader/DocLoader.cpp:
   36237         (WebCore::DocLoader::requestCSSStyleSheet): Added FIXME.
   36238         (WebCore::DocLoader::setLoadInProgress): Added null check.
   36239 
   36240         * loader/Request.h:
   36241         * loader/Request.cpp: (WebCore::Request::Request):
   36242         Added a shouldSkipCanLoadCheck boolean here, since we need to track
   36243         this for each request.
   36244 
   36245         * loader/loader.h:
   36246         * loader/loader.cpp:
   36247         (WebCore::Loader::load): Pass the skipCanLoadCheck boolean to the
   36248         Request constructor rather than to the servePendingRequests function.
   36249         (WebCore::Loader::servePendingRequests): Add a loop so we can handle
   36250         cases where the request fails immediately without leaking the request
   36251         and thinking that we're loading forever.
   36252 
   36253 2007-05-24  David Hyatt  <hyatt (a] apple.com>
   36254 
   36255         Add error reporting for residual style.
   36256 
   36257         Reviewed by aroben
   36258 
   36259         * html/HTMLParser.cpp:
   36260         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
   36261         (WebCore::HTMLParser::reopenResidualStyleTags):
   36262         * html/HTMLParserErrorCodes.cpp:
   36263         (WebCore::htmlParserErrorMessageTemplate):
   36264         * html/HTMLParserErrorCodes.h:
   36265 
   36266 2007-05-24  David Hyatt  <hyatt (a] apple.com>
   36267 
   36268         Report <script/> as a warning instead of an error for now, since we
   36269         actually do close it.  (Sigh.)
   36270 
   36271         Reviewed by beth
   36272 
   36273         * html/HTMLParser.cpp:
   36274         (WebCore::HTMLParser::parseToken):
   36275         (WebCore::HTMLParser::reportErrorToConsole):
   36276         * html/HTMLParserErrorCodes.cpp:
   36277         (WebCore::htmlParserErrorMessageTemplate):
   36278         (WebCore::isWarning):
   36279         * html/HTMLParserErrorCodes.h:
   36280 
   36281 2007-05-24  David Hyatt  <hyatt (a] apple.com>
   36282 
   36283         Add error reporting for the </p> -> <p></p> quirk.
   36284 
   36285         Add error reporting when a stray close tag is encountered with no
   36286         corresponding open tag.
   36287 
   36288         Reviewed by adele
   36289 
   36290         * html/HTMLParser.cpp:
   36291         (WebCore::HTMLParser::HTMLParser):
   36292         (WebCore::HTMLParser::processCloseTag):
   36293         (WebCore::HTMLParser::popBlock):
   36294         * html/HTMLParser.h:
   36295         (WebCore::HTMLParser::popBlock):
   36296         * html/HTMLParserErrorCodes.cpp:
   36297         (WebCore::htmlParserErrorMessageTemplate):
   36298         * html/HTMLParserErrorCodes.h:
   36299 
   36300 2007-05-24  Kevin McCullough  <kmccullough (a] apple.com>
   36301 
   36302         Reviewed by.
   36303 
   36304         - Rolling back change to fix the build until I have a good fix for data: urls.
   36305 
   36306         * ChangeLog:
   36307         * loader/FrameLoader.cpp:
   36308         (WebCore::FrameLoader::load):
   36309         (WebCore::FrameLoader::open):
   36310         * platform/String.cpp:
   36311 
   36312 2007-05-24  David Hyatt  <hyatt (a] apple.com>
   36313 
   36314         Add two more error messages to the HTMLParser.
   36315 
   36316         Report when the </br> -> <br> quirk is triggered.
   36317 
   36318         Also report whenever the broken XML self-closing tag syntax is used on
   36319         tags that can actually have an end tag (either optional or required).
   36320 
   36321         Reviewed by aroben
   36322 
   36323         * html/HTMLParser.cpp:
   36324         (WebCore::HTMLParser::parseToken):
   36325         * html/HTMLParserErrorCodes.cpp:
   36326         (WebCore::htmlParserErrorMessageTemplate):
   36327         * html/HTMLParserErrorCodes.h:
   36328         (WebCore::):
   36329         * html/HTMLTokenizer.cpp:
   36330         (WebCore::HTMLTokenizer::parseTag):
   36331         * html/HTMLTokenizer.h:
   36332         (WebCore::Token::reset):
   36333 
   36334 2007-05-24  Sam Weinig  <sam (a] webkit.org>
   36335 
   36336         Reviewed by Anders.
   36337 
   36338         Rename JSHTMLFrameSetCustom.cpp to JSHTMLFrameSetElementCustom.cpp
   36339         for consistency.
   36340 
   36341         * WebCore.xcodeproj/project.pbxproj:
   36342         * bindings/js/JSHTMLFrameSetCustom.cpp: Removed.
   36343         * bindings/js/JSHTMLFrameSetElementCustom.cpp: Added.
   36344 
   36345 2007-05-24  David Hyatt  <hyatt (a] apple.com>
   36346 
   36347         Fix for <rdar://problem/5208440> (13753)
   36348 
   36349         REGRESSION: Raw text needs to be pulled outside of tables
   36350 
   36351         Reviewed by aroben
   36352 
   36353         * html/HTMLParser.cpp:
   36354         (WebCore::HTMLParser::handleError):
   36355         * html/HTMLTableColElement.cpp:
   36356         (WebCore::HTMLTableColElement::checkDTD):
   36357         * html/HTMLTableElement.cpp:
   36358         (WebCore::HTMLTableElement::checkDTD):
   36359         * html/HTMLTableRowElement.cpp:
   36360         (WebCore::HTMLTableRowElement::checkDTD):
   36361         * html/HTMLTableSectionElement.cpp:
   36362         (WebCore::HTMLTableSectionElement::checkDTD):
   36363 
   36364 2007-05-24  Mitz Pettel  <mitz (a] webkit.org>
   36365 
   36366         Reviewed by Darin.
   36367 
   36368         - fix http://bugs.webkit.org/show_bug.cgi?id=13837
   36369           Separator in new <select> widget disappears when block element with border is in document.
   36370 
   36371         Test: fast/forms/menulist-separator-painting.html
   36372 
   36373         * platform/graphics/cg/GraphicsContextCG.cpp:
   36374         (WebCore::GraphicsContext::drawConvexPolygon): Changed this function to
   36375         actually do both filling and stroking when needed, even though all existing
   36376         callers set the stroke to none.
   36377         * rendering/RenderThemeMac.mm:
   36378         (WebCore::RenderThemeMac::paintMenuListButton): Added calls to set the stroke
   36379         style and thickness when painting the arrows and the separator.
   36380 
   36381 2007-05-24  Timothy Hatcher  <timothy (a] apple.com>
   36382 
   36383         Reviewed by Sam Weinig.
   36384 
   36385         Remove the OBJC_NEW_PROPERTIES #ifdef and only export the new @property syntax.
   36386 
   36387         * bindings/objc/DOMObject.h:
   36388         * bindings/scripts/CodeGeneratorObjC.pm:
   36389 
   36390 2007-05-24  Sam Weinig  <sam (a] webkit.org>
   36391 
   36392         Reviewed by Anders.
   36393 
   36394         Uncomment HTMLFramesSetElement constructor now that it exists.
   36395 
   36396         * page/DOMWindow.idl:
   36397 
   36398 2007-05-24  Anders Carlsson  <andersca (a] apple.com>
   36399 
   36400         Try fixing the buildbot build.
   36401         
   36402         * loader/ImageDocument.cpp:
   36403         (WebCore::ImageDocument::resizeImageToFit):
   36404         (WebCore::ImageDocument::imageClicked):
   36405 
   36406 2007-05-24  Sam Weinig  <sam (a] webkit.org>
   36407 
   36408         Reviewed by Darin.
   36409 
   36410         Patch for http://bugs.webkit.org/show_bug.cgi?id=13853
   36411         Autogenerate the JS bindings for the HTMLFrameSetElement
   36412 
   36413         * DerivedSources.make:
   36414         * WebCore.pro:
   36415         * WebCore.xcodeproj/project.pbxproj:
   36416         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   36417         * bindings/js/JSHTMLFrameSetCustom.cpp: Added.
   36418         (WebCore::JSHTMLFrameSetElement::canGetItemsForName):
   36419         (WebCore::JSHTMLFrameSetElement::nameGetter):
   36420         * bindings/js/kjs_html.cpp:
   36421         (KJS::):
   36422         (KJS::JSHTMLElement::classInfo):
   36423         (KJS::JSHTMLElement::accessors):
   36424         (KJS::JSHTMLElement::getOwnPropertySlot):
   36425         * bindings/js/kjs_html.h:
   36426         (KJS::JSHTMLElement::):
   36427         * html/HTMLFrameSetElement.idl:
   36428 
   36429 2007-05-24  Zack Rusin  <zrusin (a] trolltech.com>
   36430 
   36431         Reviewed by andersca
   36432 
   36433         Fixing check for incorrent font size - it should
   36434         check fixed not normal.
   36435 
   36436         * page/Settings.cpp:
   36437         (WebCore::Settings::setDefaultFixedFontSize):
   36438 
   36439 2007-05-24  Mitz Pettel  <mitz (a] webkit.org>
   36440 
   36441         Speculative buildbot build fix.
   36442 
   36443         * css/cssstyleselector.cpp:
   36444         (WebCore::CSSStyleSelector::applyProperty):
   36445 
   36446 2007-05-24  Adam Roben  <aroben (a] apple.com>
   36447 
   36448         Made Chrome::addMessageToConsole more flexible
   36449 
   36450         addMessageToConsole now takes two additional parameters to specify the
   36451         message source (HTML, JS, CSS, XML) and level (error, warning, log). To
   36452         maintain our old behavior, all current messages were given
   36453         JSMessageSource and ErrorMessageLevel parameters. Messages matching
   36454         these characteristics are passed up to the ChromeClient.
   36455 
   36456         Reviewed by Hyatt.
   36457 
   36458         * bindings/js/JSCustomXPathNSResolver.cpp:
   36459         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   36460         * bindings/js/kjs_events.cpp:
   36461         (KJS::JSAbstractEventListener::handleEvent):
   36462         * bindings/js/kjs_proxy.cpp:
   36463         (WebCore::KJSProxy::evaluate):
   36464         * bindings/js/kjs_window.cpp:
   36465         (KJS::Window::isSafeScript):
   36466         (KJS::ScheduledAction::execute):
   36467         * html/HTMLParser.cpp:
   36468         (WebCore::HTMLParser::reportErrorToConsole):
   36469         * ksvg2/misc/SVGDocumentExtensions.cpp:
   36470         (WebCore::SVGDocumentExtensions::reportWarning):
   36471         (WebCore::SVGDocumentExtensions::reportError):
   36472         * loader/FrameLoader.cpp:
   36473         (WebCore::FrameLoader::reportLocalLoadFailed):
   36474         * page/Chrome.cpp:
   36475         (WebCore::Chrome::addMessageToConsole):
   36476         * page/Chrome.h:
   36477         (WebCore::):
   36478         * xml/xmlhttprequest.cpp:
   36479         (WebCore::XMLHttpRequest::setRequestHeader):
   36480 
   36481 2007-05-24  David Hyatt  <hyatt (a] apple.com>
   36482 
   36483         Rework how HTML handles line numbering so that it is not fooled by
   36484         \r without a following \n and so that document.write doesn't lead
   36485         to line numbering confusion.
   36486 
   36487         Reviewed by aroben
   36488 
   36489         * html/HTMLParser.cpp:
   36490         (WebCore::HTMLParser::reportErrorToConsole):
   36491         * html/HTMLTokenizer.cpp:
   36492         (WebCore::HTMLTokenizer::processListing):
   36493         (WebCore::HTMLTokenizer::parseSpecial):
   36494         (WebCore::HTMLTokenizer::parseComment):
   36495         (WebCore::HTMLTokenizer::parseServer):
   36496         (WebCore::HTMLTokenizer::parseProcessingInstruction):
   36497         (WebCore::HTMLTokenizer::parseText):
   36498         (WebCore::HTMLTokenizer::parseEntity):
   36499         (WebCore::HTMLTokenizer::parseTag):
   36500         (WebCore::HTMLTokenizer::write):
   36501         (WebCore::HTMLTokenizer::processToken):
   36502         (WebCore::HTMLTokenizer::setSrc):
   36503         * html/HTMLTokenizer.h:
   36504         (WebCore::HTMLTokenizer::lineNumberPtr):
   36505         * html/HTMLViewSourceDocument.cpp:
   36506         (WebCore::HTMLViewSourceDocument::addLine):
   36507         * loader/TextDocument.cpp:
   36508         (WebCore::TextTokenizer::write):
   36509         * platform/SegmentedString.cpp:
   36510         (WebCore::SegmentedString::SegmentedString):
   36511         (WebCore::SegmentedString::operator=):
   36512         (WebCore::SegmentedString::clear):
   36513         * platform/SegmentedString.h:
   36514         (WebCore::SegmentedString::SegmentedString):
   36515         (WebCore::SegmentedString::advance):
   36516         (WebCore::SegmentedString::escaped):
   36517 
   36518 2007-05-23  David Hyatt  <hyatt (a] apple.com>
   36519 
   36520         Make the delete/InsertRows/Cells methods as well as the rowIndex method
   36521         able to work properly even when whitespace or comment nodes are present.
   36522 
   36523         Reviewed by aroben
   36524 
   36525         fast/table/rowindex-comment-nodes.html
   36526 
   36527         * html/HTMLTableRowElement.cpp:
   36528         (WebCore::HTMLTableRowElement::rowIndex):
   36529         (WebCore::HTMLTableRowElement::insertCell):
   36530         (WebCore::HTMLTableRowElement::deleteCell):
   36531         * html/HTMLTableSectionElement.cpp:
   36532         (WebCore::HTMLTableSectionElement::insertRow):
   36533         (WebCore::HTMLTableSectionElement::deleteRow):
   36534 
   36535 2007-05-23  David Hyatt  <hyatt (a] apple.com>
   36536 
   36537         <optgroup> should allow <script> and text nodes inside it, just like
   36538         <select> does.
   36539 
   36540         Reviewed by aroben
   36541 
   36542         fast/forms/stuff-on-my-optgroup.html
   36543 
   36544         * html/HTMLOptGroupElement.cpp:
   36545         (WebCore::HTMLOptGroupElement::checkDTD):
   36546         * html/HTMLSelectElement.cpp:
   36547         (WebCore::HTMLSelectElement::checkDTD):
   36548 
   36549 2007-05-23  David Hyatt  <hyatt (a] apple.com>
   36550 
   36551         Framesets should allow whitespace text nodes as children.
   36552 
   36553         Reviewed by aroben
   36554 
   36555         * html/HTMLFrameSetElement.cpp:
   36556         (WebCore::HTMLFrameSetElement::checkDTD):
   36557 
   36558 2007-05-24  Mark Rowe  <mrowe (a] apple.com>
   36559 
   36560         Fix the Qt build after r21685.
   36561 
   36562         * platform/qt/CursorQt.cpp:
   36563         (WebCore::notAllowedCursor):
   36564         (WebCore::zoomInCursor):
   36565         (WebCore::zoomOutCursor):
   36566 
   36567 2007-05-23  Alp Toker  <alp.toker (a] collabora.co.uk>
   36568 
   36569         Reviewed by Adam.
   36570 
   36571         Fix the gdk build following changes in r21685.
   36572 
   36573         * platform/gdk/CursorGdk.cpp:
   36574         (WebCore::zoomInCursor):
   36575         (WebCore::zoomOutCursor):
   36576 
   36577 2007-05-23  David Hyatt  <hyatt (a] apple.com>
   36578 
   36579         Fix for <rdar://problem/5222611> REGRESSION: Paint ordering problems at
   36580         http://buymeasoda.com/dev/issues/image_onload/image_onload.html
   36581 
   36582         Clamp z-index so that values that exceed maxint (or that are below minint)
   36583         are clamped to those values.
   36584 
   36585         Reviewed by darin
   36586 
   36587         * css/cssstyleselector.cpp:
   36588         (WebCore::CSSStyleSelector::applyProperty):
   36589 
   36590 2007-05-23  Mitz Pettel  <mitz (a] webkit.org>
   36591 
   36592         Reviewed by David Hyatt.
   36593 
   36594         - fix http://bugs.webkit.org/show_bug.cgi?id=13563
   36595           REGRESSION: Crash loading message in Yahoo! Mail
   36596 
   36597         Tests: fast/css/stale-style-selector-crash-1.html
   36598                fast/css/stale-style-selector-crash-2.html
   36599 
   36600         * dom/Document.cpp:
   36601         (WebCore::Document::Document): Initialize the m_didCalculateStyleSelector
   36602         flag to 'false'.
   36603         (WebCore::Document::updateStyleSelector): Do not bail out if we have ever
   36604         calculated a non-trivial style selector, even if at the moment we are
   36605         pending style sheets. We could have calculated a non-trivial selector
   36606         already either because at some point there were no pending style sheets
   36607         (so the currently pending ones were added dynamically) or because we were
   36608         forced to do a layout ignoring pending style sheets. Either way, once
   36609         there is a style selector, we need to keep it up to date, otherwise we can
   36610         crash under recalcStyle() during updateRendering() or simply not recalculate
   36611         style correctly for dynamic changes.
   36612         (WebCore::Document::recalcStyleSelector): Set m_didCalculateStyleSelector
   36613         to 'true' when creating a new style selector.
   36614         * dom/Document.h:
   36615 
   36616 2007-05-23  Anders Carlsson  <andersca (a] apple.com>
   36617 
   36618         Reviewed by Adam.
   36619 
   36620         <rdar://problem/5224749> Show a zoom/unzoom cursor for resizable image documents
   36621         
   36622         * WebCore.xcodeproj/project.pbxproj:
   36623         Install the zoom cursors.
   36624         
   36625         * loader/ImageDocument.cpp:
   36626         (WebCore::ImageDocument::resizeImageToFit):
   36627         Set the cursor to the zoom in cursor.
   36628         
   36629         (WebCore::ImageDocument::restoreImageSize):
   36630         If the image fits, reset the cursor. Otherwise, set it to the zoom in cursor.
   36631 
   36632 2007-05-23  Darin Adler  <darin (a] apple.com>
   36633 
   36634         Reviewed by Hyatt.
   36635 
   36636         - fix problems where unrendered nodes were affecting on plain text serialization
   36637 
   36638         * editing/TextIterator.cpp:
   36639         (WebCore::TextIterator::advance): Don't call handleXXX functions or exitNode for
   36640         nodes without renderers.
   36641         (WebCore::shouldEmitNewlineAfterNode): Only consider rendered nodes when deciding
   36642         if this is the last node in the document.
   36643 
   36644 2007-05-23  Anders Carlsson  <andersca (a] apple.com>
   36645 
   36646         Reviewed by Geoff.
   36647 
   36648         <rdar://problem/3663808> Resize large images to fit in the browser window
   36649         
   36650         * WebCore.exp:
   36651         Add new settings method.
   36652         
   36653         * loader/ImageDocument.cpp:
   36654         (WebCore::ImageEventListener::ImageEventListener):
   36655         New class that handles resize events and click events and forwards them to the image document.
   36656         
   36657         (WebCore::ImageTokenizer::ImageTokenizer):
   36658         (WebCore::ImageTokenizer::writeRawData):
   36659         (WebCore::ImageTokenizer::finish):
   36660         (WebCore::ImageDocument::ImageDocument):
   36661         (WebCore::ImageDocument::createDocumentStructure):
   36662         (WebCore::ImageDocument::cachedImage):
   36663         Let the ImageDocument class keep track of its document structure.
   36664         
   36665         (WebCore::ImageDocument::scale):
   36666         Returns the scale that should be used when resizing the image.
   36667         
   36668         (WebCore::ImageDocument::resizeImage):
   36669         Update the image size.
   36670         
   36671         (WebCore::ImageDocument::imageClicked):
   36672         Toggle between resized and not resized. When restoring the size, scroll the image so that the area under
   36673         the mouse stays the same.
   36674         
   36675         (WebCore::ImageDocument::imageChanged):
   36676         When the image size is known, resize the image if needed.
   36677         
   36678         (WebCore::ImageDocument::restoreImageSize):
   36679         Restore the image size.
   36680         
   36681         (WebCore::ImageDocument::imageNeedsResizing):
   36682         Return whether the image is too big for its window or not.
   36683         
   36684         (WebCore::ImageDocument::windowSizeChanged):
   36685         Called when the window's size changes. Determine if the window fits or not and resize it if it doesn't fit.
   36686         
   36687         (WebCore::ImageEventListener::handleEvent):
   36688         Forward events to the image document.
   36689         
   36690         * page/Settings.cpp:
   36691         (WebCore::Settings::Settings):
   36692         (WebCore::Settings::setEnableAutomaticImageResizing):
   36693         * page/Settings.h:
   36694         (WebCore::Settings::enableAutomaticImageResizing):
   36695         Add new setting.
   36696         
   36697 2007-05-23  Anders Carlsson  <andersca (a] apple.com>
   36698 
   36699         Reviewed by Darin.
   36700 
   36701         Add -webkit-zoom-in and -webkit-zoom-out cursors.
   36702         
   36703         * Resources/zoomInCursor.png: Added.
   36704         * Resources/zoomOutCursor.png: Added.
   36705         * css/CSSComputedStyleDeclaration.cpp:
   36706         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   36707         * css/CSSValueKeywords.in:
   36708         * page/EventHandler.cpp:
   36709         (WebCore::selectCursor):
   36710         * platform/Cursor.h:
   36711         * platform/mac/CursorMac.mm:
   36712         (WebCore::zoomInCursor):
   36713         (WebCore::zoomOutCursor):
   36714         * rendering/RenderStyle.h:
   36715         (WebCore::):
   36716 
   36717 2007-05-23  Sam Weinig  <sam (a] webkit.org>
   36718 
   36719         Reviewed by Darin.
   36720 
   36721         Part one of patch for http://bugs.webkit.org/show_bug.cgi?id=13830
   36722         Auto-generate JS DOM bindings for HTMLDocument and most of the rest
   36723         of HTMLElement
   36724 
   36725         - Just the HTMLElement part.
   36726 
   36727         * bindings/js/kjs_html.cpp:
   36728         (KJS::JSHTMLElement::getValueProperty):
   36729         (KJS::JSHTMLElement::putValueProperty):
   36730         * bindings/js/kjs_html.h:
   36731         (KJS::JSHTMLElement::):
   36732         * html/HTMLElement.idl:
   36733 
   36734 2007-05-22  Kevin McCullough  <kmccullough (a] apple.com>
   36735 
   36736         Reviewed by Darin.
   36737 
   36738         - rdar://problem/5183523
   36739         - We now check the document's URL to see if it can load a resource in the case of a URL click, instead of checking the referrer, which is blank for local files.
   36740 
   36741         * loader/FrameLoader.cpp:
   36742         (WebCore::FrameLoader::load):
   36743         (WebCore::FrameLoader::open):
   36744         * platform/PlatformString.h:
   36745         (WebCore::debugPrintString):
   36746 
   36747 2007-05-23  Sam Weinig  <sam (a] webkit.org>
   36748 
   36749         Reviewed by Darin.
   36750 
   36751         Part two of patch for http://bugs.webkit.org/show_bug.cgi?id=13830
   36752         Auto-generate JS DOM bindings for HTMLDocument and most of the rest
   36753         of HTMLElement
   36754 
   36755         - Just the HTMLDocument part.
   36756 
   36757         * WebCore.pro:
   36758         * WebCore.xcodeproj/project.pbxproj:
   36759         * bindings/js/JSHTMLDocumentCustom.cpp: Added.
   36760         (WebCore::JSHTMLDocument::canGetItemsForName):
   36761         (WebCore::JSHTMLDocument::nameGetter):
   36762         (WebCore::JSHTMLDocument::all):
   36763         (WebCore::JSHTMLDocument::setAll):
   36764         (WebCore::JSHTMLDocument::location):
   36765         (WebCore::JSHTMLDocument::setLocation):
   36766         (WebCore::JSHTMLDocument::open):
   36767         (WebCore::writeHelper):
   36768         (WebCore::JSHTMLDocument::write):
   36769         (WebCore::JSHTMLDocument::writeln):
   36770         (WebCore::JSHTMLDocument::clear):
   36771         * bindings/js/kjs_dom.cpp:
   36772         (KJS::toJS):
   36773         * bindings/js/kjs_dom.h:
   36774         * bindings/js/kjs_html.cpp:
   36775         * bindings/js/kjs_html.h:
   36776         * bindings/objc/DOMPrivate.h:
   36777         * bindings/scripts/CodeGeneratorJS.pm: Add [Deletable] property
   36778         for Document.all and fix HasOverridingNameGetter to allow correct
   36779         prototype chain
   36780         * dom/Document.cpp:
   36781         (WebCore::Document::plugins): adds alias to embeds() for bindings
   36782         * dom/Document.h:
   36783         * html/HTMLDocument.cpp:
   36784         (WebCore::HTMLDocument::width):
   36785         (WebCore::HTMLDocument::height):
   36786         (WebCore::HTMLDocument::dir):
   36787         (WebCore::HTMLDocument::setDir):
   36788         (WebCore::HTMLDocument::designMode):
   36789         (WebCore::HTMLDocument::setDesignMode):
   36790         (WebCore::HTMLDocument::bgColor):
   36791         (WebCore::HTMLDocument::setBgColor):
   36792         (WebCore::HTMLDocument::fgColor):
   36793         (WebCore::HTMLDocument::setFgColor):
   36794         (WebCore::HTMLDocument::alinkColor):
   36795         (WebCore::HTMLDocument::setAlinkColor):
   36796         (WebCore::HTMLDocument::linkColor):
   36797         (WebCore::HTMLDocument::setLinkColor):
   36798         (WebCore::HTMLDocument::vlinkColor):
   36799         (WebCore::HTMLDocument::setVlinkColor):
   36800         (WebCore::HTMLDocument::captureEvents):
   36801         (WebCore::HTMLDocument::releaseEvents):
   36802         * html/HTMLDocument.h:
   36803         * html/HTMLDocument.idl:
   36804 
   36805 2007-05-23  David Hyatt  <hyatt (a] apple.com>
   36806 
   36807         Fix for <rdar://problem/5221838> REGRESSION (r21581): no content in idisk
   36808         window at mac.com.
   36809 
   36810         Back out the change to make self-closed <script/> into a Dashboard quirk
   36811         only.
   36812 
   36813         Reviewed by aroben
   36814 
   36815         * html/HTMLTokenizer.cpp:
   36816         (WebCore::HTMLTokenizer::parseTag):
   36817 
   36818 2007-05-23  Patti  <patti (a] apple.com>
   36819 
   36820         Reviewed by David Harrison.
   36821 
   36822         <rdar://problem/5078453> AXNext/PrevLineEndTextMarkerForTextMarker returns kAXErrorNoValue for attachment range
   36823         
   36824         Floating objects, such as aligned images, are not included as part of any line.  So when the given 
   36825         text marker is on the floating object, the returned line edge cannot be found and asserts are fired.
   36826         In addition, this paints an inconsistent text layout (in the accessibility sense) of where the floating 
   36827         object resides.  Character/word methods report floating object at the beginning of the text line(s).  Yet
   36828         line methods never present floating objects anywhere.  
   36829         To fix this, the ax line methods will now do more checking to ensure floating object nodes are included
   36830         when determining the line range/position. That way, assistive apps won't get stuck using the line methods 
   36831         to read line-by-line
   36832 
   36833         * bridge/mac/WebCoreAXObject.mm:
   36834         (updateAXLineStartForVisiblePosition):
   36835         Added a helper method to adjust line start position to account for floating objects
   36836         (-[WebCoreAXObject doAXLeftLineTextMarkerRangeForTextMarker:]):
   36837         (-[WebCoreAXObject doAXRightLineTextMarkerRangeForTextMarker:]):
   36838         (-[WebCoreAXObject doAXNextLineEndTextMarkerForTextMarker:]):
   36839         (-[WebCoreAXObject doAXPreviousLineStartTextMarkerForTextMarker:]):
   36840         Fixed up line routines to include floating object nodes in line position calculation.
   36841         startOfLine/endOLine may return null for position next to a floating position.  So now there's extra checks to prevent
   36842         returning null line position/ranges back to AX.
   36843 
   36844 
   36845 2007-05-23  Simon Hausmann  <hausmann (a] kde.org>
   36846 
   36847         Reviewed by Zack, discussed also with Lars.
   36848 
   36849         Make it possible to have per-QWebPage network interface
   36850         implementations.
   36851 
   36852         * platform/network/qt/ResourceHandleQt.cpp:
   36853         (WebCore::ResourceHandle::start): Pass the page's network interface to
   36854         the network manager.
   36855 
   36856 2007-05-23  Rob Buis  <buis (a] kde.org>
   36857 
   36858         Reviewed by Dave Hyatt.
   36859 
   36860         http://bugs.webkit.org/show_bug.cgi?id=13174
   36861         line-height in font shorthand does not override a previously stated line-height property
   36862 
   36863         Make sure line-height is calculated against definite font-size and
   36864         uses the last set line-height, ie. directly or through font shorthand.
   36865 
   36866         * css/cssstyleselector.cpp:
   36867         (WebCore::CSSStyleSelector::styleForElement):
   36868         (WebCore::CSSStyleSelector::pseudoStyleForElement):
   36869         (WebCore::CSSStyleSelector::applyDeclarations):
   36870         (WebCore::CSSStyleSelector::applyProperty):
   36871         * css/cssstyleselector.h:
   36872 
   36873 2007-05-23  Lars Knoll <lars (a] trolltech.com>
   36874 
   36875         Reviewed by Zack and Valgrind
   36876 
   36877         Initialize variable.
   36878 
   36879         * platform/qt/PlatformMouseEventQt.cpp:
   36880         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   36881 
   36882 2007-05-23  Rob Buis  <buis (a] kde.org>
   36883 
   36884         Reviewed by Darin.
   36885 
   36886         http://bugs.webkit.org/show_bug.cgi?id=13784
   36887         REGRESSION (r13744-13750): Crash with empty gradient when drawing to canvas
   36888 
   36889         Fix crash by testing for zero stops, and returning transparent black
   36890         in this case.
   36891 
   36892         * html/CanvasGradient.cpp:
   36893         (WebCore::CanvasGradient::getColor):
   36894 
   36895 2007-05-23  Rob Buis  <buis (a] kde.org>
   36896 
   36897         Reviewed by Darin.
   36898 
   36899         http://bugs.webkit.org/show_bug.cgi?id=13801
   36900         Crash when loading nonexisting symbol
   36901 
   36902         Check for referenced element and when not found just return.
   36903 
   36904         * ksvg2/svg/SVGUseElement.cpp:
   36905         (WebCore::SVGUseElement::buildPendingResource):
   36906 
   36907 2007-05-22  Sam Weinig  <sam (a] webkit.org>
   36908 
   36909         Rubber stamped by Adam.
   36910 
   36911         Fix license.
   36912 
   36913         * bindings/js/JSHTMLAnchorElementCustom.cpp:
   36914 
   36915 2007-05-22  Sam Weinig  <sam (a] webkit.org>
   36916 
   36917         Reviewed by Adam.
   36918 
   36919         Patch for http://bugs.webkit.org/show_bug.cgi?id=13833
   36920         Add ObjC DOM binding for HTMLMarqeeElement
   36921 
   36922         - Also adds missing DOMHTMLFramePrivate.
   36923 
   36924         * DerivedSources.make:
   36925         * WebCore.xcodeproj/project.pbxproj:
   36926         * bindings/objc/DOM.mm:
   36927         (WebCore::createElementClassMap):
   36928         * bindings/objc/DOMHTML.h:
   36929         * bindings/objc/DOMInternal.h:
   36930         * bindings/objc/DOMPrivate.h:
   36931         * bindings/objc/PublicDOMInterfaces.h:
   36932 
   36933 2007-05-22  Justin Garcia  <justin.garcia (a] apple.com>
   36934 
   36935         Reviewed by darin, who found the fix independently.
   36936 
   36937         http://bugs.webkit.org/show_bug.cgi?id=13804
   36938         REGRESSION(r21611): Several new layout test pixel failures (misspelling markers)
   36939         
   36940         r21611 exposed a bug in the way removeMarkers computes
   36941         the end of the range to remove markers from.  It also
   36942         introduced a bug: removeMarkers expects a startOffset
   36943         and a length, not a startOffset and an endOffset (added 
   36944         a layout test).
   36945 
   36946         * dom/Document.cpp:
   36947         (WebCore::Document::removeMarkers): The other removeMarkers
   36948         expects a startOffset and a length, not a startOffset and
   36949         an endOffset.
   36950         (WebCore::Document::removeMarkers): Fixed the endOffset
   36951         from length and startOffset calculation.
   36952 
   36953 2007-05-22  David Hyatt  <hyatt (a] apple.com>
   36954 
   36955         Fix for bug 13802, background colors can't be reset to default
   36956         color.  Fix the value cssText method to do the right thing for background
   36957         and background-position values.
   36958 
   36959         Reviewed by beth
   36960 
   36961         fast/dom/background-shorthand-csstext.html
   36962 
   36963         * css/CSSInitialValue.h:
   36964         (WebCore::CSSInitialValue:::m_implicit):
   36965         (WebCore::CSSInitialValue::isImplicitInitialValue):
   36966         * css/CSSMutableStyleDeclaration.cpp:
   36967         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   36968         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue):
   36969         * css/CSSMutableStyleDeclaration.h:
   36970         * css/CSSValue.h:
   36971         (WebCore::CSSValue::isImplicitInitialValue):
   36972         * css/cssparser.cpp:
   36973         (WebCore::CSSParser::parseValue):
   36974         (WebCore::CSSParser::parseBackgroundShorthand):
   36975         (WebCore::CSSParser::parseShorthand):
   36976 
   36977 2007-05-22  Darin Adler  <darin (a] apple.com>
   36978 
   36979         Reviewed by Geoff.
   36980 
   36981         - fix <rdar://problem/5215830> REGRESSION: ebay.com layout is wrong
   36982 
   36983         The code on ebay was looking for the "document" property on a iframe.
   36984         We changed that to be the ownerDocument rather than the contentDocument,
   36985         which was not what ebay was expecting. The best fix seems to be removing
   36986         the document property altogether.
   36987 
   36988         Test: fast/dom/iframe-document.html
   36989 
   36990         * bindings/js/kjs_html.h: Remove ElementDocument.
   36991         * bindings/js/kjs_html.cpp: (KJS::JSHTMLElement::getValueProperty): Ditto.
   36992 
   36993 2007-05-22  Adele Peterson  <adele (a] apple.com>
   36994 
   36995         Reviewed by Darin.
   36996 
   36997         A little cleanup from my last checkin.
   36998 
   36999         * page/Chrome.h: Formatting change.
   37000         * page/mac/ChromeMac.mm: Fixed copyright.
   37001 
   37002 2007-05-22  Adele Peterson  <adele (a] apple.com>
   37003 
   37004         Reviewed by Darin.
   37005 
   37006         Fix for http://bugs.webkit.org/show_bug.cgi?id=13796
   37007         Crash in [NSInputContext currentInputContext] when you click on this map
   37008 
   37009         This is another case of <rdar://problem/5171145> Safari crashed closing tab in NSInputContext updateInputContexts
   37010 
   37011         Test: fast/frames/frame-display-none-focus.html
   37012 
   37013         * WebCore.xcodeproj/project.pbxproj: Added ChromeMac.mm
   37014         * page/Chrome.h:
   37015         * page/mac/ChromeMac.mm: Added.
   37016         (WebCore::Chrome::focusNSView): Moved code from Widget::setFocus so it can be used whenever we need to make a view the first responder.
   37017         * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::focusDocumentView): Calls focusNSView.
   37018         * platform/mac/WidgetMac.mm: (WebCore::Widget::setFocus): Calls focusNSView.
   37019 
   37020 2007-05-22  Justin Garcia  <justin.garcia (a] apple.com>
   37021 
   37022         Reviewed by darin
   37023         
   37024         <rdar://problem/4875189> 
   37025         List is deleted when replacing contents with Chinese/Japanese characters
   37026 
   37027         * editing/htmlediting.cpp:
   37028         (WebCore::isSpecialElement): Lists are no longer special.
   37029         They can be removed by removing their content and then 
   37030         then hitting delete inside of the empty list item that's 
   37031         left over. Even when that list item is the first thing 
   37032         in the editable region.
   37033 
   37034 2007-05-22  Darin Adler  <darin (a] apple.com>
   37035 
   37036         Reviewed by Tim Hatcher.
   37037 
   37038         - fix <rdar://problem/5206089> REGRESSION: hovering over amazon.com "product categories"
   37039           tab makes page content disappear
   37040 
   37041         The contentWindow property was doing a cross-frame security check, but it shouldn't.
   37042         Window objects are responsible for protecting themselves from cross-frame activity.
   37043         Because contentWindow returned undefined, we then ended up setting visibility on the
   37044         body of the main frame to "hidden".
   37045 
   37046         No layout test yet. When we make cross-domain tests, we should include this one.
   37047 
   37048         * html/HTMLFrameElement.idl: Removed CheckFrameSecurity attribute from contentWindow.
   37049         * html/HTMLIFrameElement.idl: Ditto.
   37050 
   37051 2007-05-22  Justin Garcia  <justin.garcia (a] apple.com>
   37052 
   37053         Reviewed by oliver
   37054 
   37055         <rdar://problem/5213963>
   37056         REGRESSION(r21467): Active selection remains in text field after clicking on a button
   37057 
   37058         * page/EventHandler.cpp:
   37059         (WebCore::EventHandler::dispatchMouseEvent): Call
   37060         FocusController::setFocusedNode, because Document::setFocusedNode
   37061         no longer clears the selection.
   37062         Begin passing the new focused frame to 
   37063         FocusController::setFocusedNode, because when the 
   37064         new focus node is null, the selection should only be 
   37065         cleared if the focused frame isn't changing.
   37066         (WebCore::Element::focus): Begin passing the new focused
   37067         frame.
   37068         (WebCore::Element::blur): Ditto.
   37069         * html/HTMLInputElement.cpp:
   37070         (WebCore::HTMLInputElement::focus): Ditto.
   37071         * html/HTMLTextAreaElement.cpp:
   37072         (WebCore::HTMLTextAreaElement::focus): Ditto.
   37073         * page/Frame.cpp:
   37074         (WebCore::Frame::setFocusedNodeIfNeeded): Ditto.
   37075         * page/FocusController.cpp:
   37076         (WebCore::clearSelectionIfNeeded): Take in the new
   37077         focused frame.  If it's not changing, don't clear the
   37078         selection.
   37079         (WebCore::FocusController::setFocusedNode): Take
   37080         in the new focused frame.
   37081         * page/FocusController.h:
   37082 
   37083 2007-05-22  Marius Bugge Monsen  <mbm (a] trolltech.com>
   37084 
   37085         Reviewed by Zack.
   37086 
   37087         Implement some more functions in ClipboardQt.
   37088 
   37089         * platform/qt/ClipboardQt.cpp:
   37090         (WebCore::ClipboardQt::ClipboardQt):
   37091         (WebCore::ClipboardQt::getData):
   37092         (WebCore::ClipboardQt::setData):
   37093         (WebCore::ClipboardQt::types):
   37094 
   37095 2007-05-21  Oliver Hunt  <oliver (a] apple.com>
   37096 
   37097         Reviewed by Sam.
   37098         
   37099         Fix for http://bugs.webkit.org/show_bug.cgi?id=13789 
   37100         -- SVGLocatable::getScreenCTM() faulty
   37101         
   37102         Needed to update SVGLength to handle the case where the SVGElement is
   37103         not the root document element -- we do this by falling back on the 
   37104         renderer for the context.
   37105         
   37106         For <svg> elements embedded as mixed content in xhtml we consider the
   37107         absolutePosition of the parent to be the origin for the <svg> element.
   37108 
   37109         * ksvg2/svg/SVGLength.cpp:
   37110         (WebCore::SVGLength::PercentageOfViewport):
   37111         * ksvg2/svg/SVGSVGElement.cpp:
   37112         (WebCore::SVGSVGElement::getScreenCTM):
   37113 
   37114 2007-05-21  Timothy Hatcher  <timothy (a] apple.com>
   37115 
   37116         Reviewed by Adam.
   37117 
   37118         <rdar://problem/5084400> -[DOMRange lineBoxRects] returns an empty array when the DOM nodes have just been created
   37119 
   37120         Do a updateLayoutIgnorePendingStylesheets before asking the Node or Range for it's box rects.
   37121 
   37122         * bindings/objc/DOM.mm:
   37123         (-[DOMNode boundingBox]):
   37124         (-[DOMNode lineBoxRects]):
   37125         (-[DOMRange boundingBox]):
   37126         (-[DOMRange lineBoxRects]):
   37127 
   37128 2007-05-21  Sam Weinig  <sam (a] webkit.org>
   37129 
   37130         Reviewed by George Staikos.
   37131 
   37132         Fix Qt build.
   37133 
   37134         * WebCore.pro: add missing IDL files.
   37135 
   37136 2007-05-21  Sam Weinig  <sam (a] webkit.org>
   37137 
   37138         Reviewed by Darin.
   37139 
   37140         Patch for http://bugs.webkit.org/show_bug.cgi?id=13803
   37141         Autogenerate the JS bindings for the HTMLMarqueeElement.
   37142 
   37143         * DerivedSources.make:
   37144         * WebCore.xcodeproj/project.pbxproj:
   37145         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   37146         * bindings/js/kjs_css.cpp:
   37147         (KJS::DOMCSSRule::getOwnPropertySlot): Fix possible null pointer issue.
   37148         (KJS::DOMCSSRule::put): Fix possible null pointer issue.
   37149         * bindings/js/kjs_html.cpp:
   37150         (KJS::):
   37151         (KJS::JSHTMLElement::classInfo):
   37152         (KJS::JSHTMLElement::accessors):
   37153         (KJS::JSHTMLElement::getOwnPropertySlot): Fix null pointer issue.
   37154         (KJS::HTMLElementFunction::callAsFunction):
   37155         (KJS::JSHTMLElement::put):
   37156         * bindings/js/kjs_html.h:
   37157         (KJS::JSHTMLElement::):
   37158         * html/HTMLMarqueeElement.cpp:
   37159         (WebCore::HTMLMarqueeElement::start):
   37160         (WebCore::HTMLMarqueeElement::stop):
   37161         * html/HTMLMarqueeElement.h: Add start() and stop() functions.
   37162         * html/HTMLMarqueeElement.idl: Added.
   37163         * page/DOMWindow.idl: Add marquee constructor.
   37164 
   37165 2007-05-21  Adele Peterson  <adele (a] apple.com>
   37166 
   37167         Fix by Darin, reviewed by me.
   37168 
   37169         Fix for <rdar://problem/5171145> Safari crashed closing tab in NSInputContext updateInputContexts
   37170 
   37171         * platform/mac/WidgetMac.mm:
   37172         (WebCore::safeRemoveFromSuperview): Added. If the view is the window's first responder, then 
   37173          set the window's first responder to nil so we don't leave the window pointing to a view that's no longer in it.
   37174         (WebCore::Widget::setFocus): Don't attempt to focus the view if it has no window.
   37175         (WebCore::Widget::removeFromSuperview): Call safeRemoveFromSuperview.
   37176         (WebCore::Widget::afterMouseDown): ditto.
   37177 
   37178 2007-05-21  David Hyatt  <hyatt (a] apple.com>
   37179 
   37180         Make a line gutter backdrop so that tiny view source docs don't look
   37181         bad.
   37182 
   37183         Reviewed by aroben
   37184 
   37185         * css/view-source.css:
   37186         * html/HTMLViewSourceDocument.cpp:
   37187         (WebCore::HTMLViewSourceDocument::createContainingTable):
   37188 
   37189 2007-05-21  David Hyatt  <hyatt (a] apple.com>
   37190 
   37191         Make sure to distinguish between links to internal resources and
   37192         real links (anchors) in view source mode.
   37193 
   37194         Reviewed by aroben
   37195 
   37196         * css/view-source.css:
   37197         * html/HTMLViewSourceDocument.cpp:
   37198         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   37199         (WebCore::HTMLViewSourceDocument::addLink):
   37200         * html/HTMLViewSourceDocument.h:
   37201 
   37202 2007-05-21  Sam Weinig  <sam (a] webkit.org>
   37203 
   37204         Reviewed by Adam and Darin.
   37205 
   37206         Patch for http://bugs.webkit.org/show_bug.cgi?id=13791
   37207         Autogenerate the JS bindings for the HTMLIFrameElement and HTMLFrameElement.
   37208 
   37209         * DerivedSources.make:
   37210         * WebCore.xcodeproj/project.pbxproj:
   37211         * bindings/js/JSHTMLAnchorElementCustom.cpp:
   37212         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   37213         * bindings/js/kjs_html.cpp:
   37214         (KJS::):
   37215         (KJS::JSHTMLElement::classInfo):
   37216         (KJS::JSHTMLElement::accessors):
   37217         (KJS::HTMLElementFunction::callAsFunction):
   37218         * bindings/js/kjs_html.h:
   37219         (KJS::JSHTMLElement::):
   37220         * bindings/scripts/CodeGeneratorJS.pm:
   37221         * html/HTMLFrameElement.idl:
   37222         * html/HTMLFrameElementBase.cpp:
   37223         (WebCore::HTMLFrameElementBase::location):
   37224         * html/HTMLFrameElementBase.h:
   37225         * html/HTMLFrameOwnerElement.h:
   37226         (WebCore::HTMLFrameOwnerElement::contentWindow):
   37227         * html/HTMLIFrameElement.idl:
   37228         * page/DOMWindow.idl:
   37229 
   37230 2007-05-21  Lars Knoll <lars (a] trolltech.com>
   37231 
   37232         Reviewed by Zack.
   37233 
   37234         Remove the ResourceHandleManager class, it is now part of 
   37235         QWebNetworkInterface. Adapt ResourceHandle to the new way 
   37236         of things.
   37237 
   37238         * WebCore.pro:
   37239         * platform/network/ResourceHandleInternal.h:
   37240         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   37241         * platform/network/qt/ResourceHandleManagerKDE.cpp: Removed.
   37242         * platform/network/qt/ResourceHandleManagerKDE.h: Removed.
   37243         * platform/network/qt/ResourceHandleManagerQt.cpp: Removed.
   37244         * platform/network/qt/ResourceHandleManagerQt.h: Removed.
   37245         * platform/network/qt/ResourceHandleQt.cpp:
   37246         (WebCore::ResourceHandle::~ResourceHandle):
   37247         (WebCore::ResourceHandle::start):
   37248         (WebCore::ResourceHandle::cancel):
   37249 
   37250 2007-05-21  David Hyatt  <hyatt (a] apple.com>
   37251 
   37252         Second half of fix for 13793, make sure rules=groups works properly with
   37253         spanning colgroups.
   37254 
   37255         Also make sure colgroups get an actual span of 1 (instead of incorrectly
   37256         giving them a span of 0).
   37257 
   37258         Reviewed by mitz
   37259 
   37260         fast/table/colgroup-spanning-groups-rules.html
   37261 
   37262         * html/HTMLTableColElement.cpp:
   37263         (WebCore::HTMLTableColElement::HTMLTableColElement):
   37264         * rendering/RenderTable.cpp:
   37265         (WebCore::RenderTable::colElement):
   37266         * rendering/RenderTable.h:
   37267         * rendering/RenderTableCell.cpp:
   37268         (WebCore::RenderTableCell::collapsedLeftBorder):
   37269         (WebCore::RenderTableCell::collapsedRightBorder):
   37270 
   37271 2007-05-20  David Hyatt  <hyatt (a] apple.com>
   37272 
   37273         Half of a fix for 13793, make sure rules=groups and border behave properly
   37274         together.
   37275 
   37276         Reviewed by mitz
   37277 
   37278         No tests added, two Mozilla table tests now pass that failed before.
   37279 
   37280         * html/HTMLTableElement.cpp:
   37281         (WebCore::HTMLTableElement::getSharedCellDecl):
   37282 
   37283 2007-05-20  Brady Eidson <beidson (a] apple.com>
   37284 
   37285         Reviewed by Geoose Garen
   37286 
   37287         <rdar://problem/4758919> - Incorrect favicon shown for URL after going back
   37288 
   37289         When restoring a cached page, we'd try to kick off the icon load for it, which ended up causing 
   37290         shenanigans with the icon url -> page url mapping.  
   37291 
   37292         * loader/FrameLoader.cpp:
   37293         (WebCore::FrameLoader::endIfNotLoading): Only try an icon load if we're not restoring from the page cache
   37294         (WebCore::FrameLoader::startIconLoader): Added helpful logging that helped me track this down
   37295         (WebCore::FrameLoader::commitIconURLToIconDatabase): Ditto (and fixed a comment typo)
   37296 
   37297         * loader/icon/IconLoader.cpp:
   37298         (WebCore::IconLoader::stopLoading): Don't null out the ResourceLoader here, as clearLoadingState() does that
   37299         (WebCore::IconLoader::finishLoading): Added helpful logging that helped me track this down
   37300 
   37301 
   37302 2007-05-20  Darin Adler  <darin (a] apple.com>
   37303 
   37304         Reviewed by Oliver Hunt.
   37305 
   37306         - fix <rdar://problem/5193416> REGRESSION: Selection on large pages extremely slow
   37307 
   37308         * dom/Document.cpp: (WebCore::Document::removeMarkers): Added an early exit for the common
   37309         case where there are no markers. Changed code to iterate over all the nodes in the range
   37310         instead of using TextIterator, which is more efficient.
   37311         
   37312         * page/Frame.cpp: (WebCore::Frame::respondToChangedSelection): Added checks for editable,
   37313         so we don't bother doing work related to spell checking and grammar checking when changing
   37314         the selection in non-editable text. Also rearranged the code so we only compute the old
   37315         word boundaries and sentence boundaries when actually needed, and don't do the sentence
   37316         range checks unless grammar checking is enabled.
   37317 
   37318         * platform/TextBreakIteratorICU.cpp:
   37319         (WebCore::setUpIterator): Don't take a locale parameter. Always pass in currentTextBreakLocaleID.
   37320         (WebCore::characterBreakIterator): Removed local parameter.
   37321         (WebCore::wordBreakIterator): Ditto.
   37322         (WebCore::lineBreakIterator): Ditto.
   37323         (WebCore::sentenceBreakIterator): Ditto.
   37324 
   37325         * platform/mac/TextBreakIteratorInternalICUMac.mm:
   37326         (WebCore::getTextBreakLocale): Broke out the code to actually get the locale.
   37327         (WebCore::currentTextBreakLocaleID): This function now handles only the caching and calls
   37328         getTextBreakLocale to actually figure it out.
   37329 
   37330         * editing/visible_units.cpp: Added lots of FIXME comments, but no code change.
   37331 
   37332 2007-05-20  Adam Treat  <adam (a] staikos.net>
   37333 
   37334         Add -f to cp to deal with some obscure build environments.
   37335 
   37336         Reviewed by George Staikos.
   37337 
   37338         * move-js-headers.sh:
   37339 
   37340 2007-05-20  Adam Treat  <adam (a] staikos.net>
   37341 
   37342         Add missing include for auto_ptr
   37343 
   37344         Reviewed by George Staikos.
   37345 
   37346         * platform/graphics/ImageBuffer.h:
   37347 
   37348 2007-05-19  David Hyatt  <hyatt (a] apple.com>
   37349 
   37350         Fix for bug 13785, O(n^2) counter creation.
   37351 
   37352         Reviewed by darin
   37353 
   37354         * rendering/RenderCounter.cpp:
   37355         (WebCore::findPlaceForCounter):
   37356         (WebCore::RenderCounter::originalText):
   37357 
   37358 2007-05-19  Mitz Pettel  <mitz (a] webkit.org>
   37359 
   37360         Reviewed by Dave Hyatt.
   37361 
   37362         - fix http://bugs.webkit.org/show_bug.cgi?id=12729
   37363           box-shadow disappears when scrolling a div that it falls on/under
   37364 
   37365         Tests: fast/repaint/box-shadow-dynamic.html
   37366                fast/repaint/box-shadow-h.html
   37367                fast/repaint/box-shadow-v.html
   37368 
   37369         * rendering/InlineFlowBox.cpp:
   37370         (WebCore::InlineFlowBox::placeBoxesHorizontally): Factor in box shadow.
   37371         (WebCore::InlineFlowBox::placeBoxesVertically): Ditto.
   37372         (WebCore::InlineFlowBox::paint): Account for box shadow when checking if
   37373         the damage rect intersects.
   37374         * rendering/RenderBlock.cpp:
   37375         (WebCore::RenderBlock::overflowHeight): For overflow areas, when asked
   37376         for the "exterior" overflow, add box shadow overflow.
   37377         (WebCore::RenderBlock::overflowWidth): Ditto.
   37378         (WebCore::RenderBlock::overflowLeft): Ditto.
   37379         (WebCore::RenderBlock::overflowTop): Ditto.
   37380         (WebCore::RenderBlock::overflowRect): Ditto.
   37381         (WebCore::RenderBlock::layoutBlock): Factor box shadow into visual overflow.
   37382         * rendering/RenderFlexibleBox.cpp:
   37383         (WebCore::RenderFlexibleBox::layoutBlock): Ditto.
   37384         * rendering/RenderFlow.cpp:
   37385         (WebCore::RenderFlow::lowestPosition): For overflow areas, when asked for
   37386         the "exterior" extreme position, add box shadow.
   37387         (WebCore::RenderFlow::rightmostPosition): Ditto.
   37388         (WebCore::RenderFlow::leftmostPosition): Ditto.
   37389         * rendering/RenderLayer.cpp:
   37390         (WebCore::RenderLayer::calculateRects): Avoid clipping out box shadow.
   37391         * rendering/RenderObject.cpp:
   37392         (WebCore::RenderObject::repaintAfterLayoutIfNeeded): Make sure to paint
   37393         the box shadow when an edge with a shadow moves.
   37394         (WebCore::RenderObject::adjustRectForOutlineAndShadow): Helper function
   37395         that expands a given rectangle to encompass outline and box shadow.
   37396         (WebCore::RenderObject::absoluteOutlineBox): Changed to include box shadow.
   37397         * rendering/RenderObject.h:
   37398 
   37399 2007-05-19  Mitz Pettel  <mitz (a] webkit.org>
   37400 
   37401         Reviewed by Dave Hyatt.
   37402 
   37403         - fix http://bugs.webkit.org/show_bug.cgi?id=13783
   37404           REGRESSION (r21120): Frame resizers not repainted properly when dragged
   37405 
   37406         * rendering/RenderFrameSet.cpp:
   37407         (WebCore::RenderFrameSet::layout):
   37408 
   37409 2007-05-19  Mitz Pettel  <mitz (a] webkit.org>
   37410 
   37411         Reviewed by Darin.
   37412 
   37413         - fix http://bugs.webkit.org/show_bug.cgi?id=13774
   37414           REGRESSION: Crash emailing blog entry using Google Reader
   37415 
   37416         Test: fast/table/stale-grid-crash.html
   37417 
   37418         * rendering/RenderTable.cpp:
   37419         (WebCore::RenderTable::recalcSections): Made const and replaced
   37420         setNeedsLayout(true) with an assertion that the table is already
   37421         marked for layout.
   37422         (WebCore::RenderTable::sectionAbove): Added call to recalcSectionsIfNeeded().
   37423         (WebCore::RenderTable::sectionBelow): Ditto.
   37424         (WebCore::RenderTable::cellAbove): Ditto.
   37425         (WebCore::RenderTable::cellBelow): Ditto.
   37426         (WebCore::RenderTable::cellBefore): Ditto.
   37427         (WebCore::RenderTable::cellAfter): Ditto.
   37428         * rendering/RenderTable.h:
   37429         Made some private member variables which are used in section recalc mutable.
   37430         (WebCore::RenderTable::setNeedsSectionRecalc): Moved the call to
   37431         setNeedsLayout() from recalcSections() into here, because I made
   37432         recalcSections() const.
   37433         (WebCore::RenderTable::recalcSectionsIfNeeded): Made const.
   37434 
   37435 2007-05-19  Mitz Pettel  <mitz (a] webkit.org>
   37436 
   37437         Reviewed by Darin.
   37438 
   37439         - http://bugs.webkit.org/show_bug.cgi?id=13320
   37440           rounded corners with drop shadows are really slow
   37441 
   37442         Test for a rendering bug fixed by this patch:
   37443             fast/box-shadow/border-radius-big.html
   37444 
   37445         No test for the performance ingredient.
   37446 
   37447         * platform/graphics/GraphicsContext.cpp:
   37448         (WebCore::GraphicsContext::addRoundedRectClip): Made cross-platform.
   37449         Changed to use a single clipping path. If all the radii cannot be
   37450         accommodated, clips to a rect.
   37451         (WebCore::GraphicsContext::clipOutRoundedRect): Changed to use a single
   37452         clipping path. If all the radii cannot be accommodated, clips out a rect.
   37453         * platform/graphics/GraphicsContext.h: Added clipOut(const Path&).
   37454         * platform/graphics/Path.cpp:
   37455         (WebCore::Path::createRoundedRectangle): Added. Returns a rounded rectangle
   37456         with the specified radii. If all the radii cannot be accommodated, returns
   37457         a rectangular path.
   37458         * platform/graphics/Path.h:
   37459         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   37460         (WebCore::GraphicsContext::clipOut): Added.
   37461         * platform/graphics/cg/GraphicsContextCG.cpp:
   37462         (WebCore::GraphicsContext::fillRoundedRect): Changed to use a single path.
   37463         (WebCore::GraphicsContext::clipOut): Added.
   37464         * platform/graphics/qt/GraphicsContextQt.cpp:
   37465         (WebCore::GraphicsContext::clipOut): Added.
   37466 
   37467 2007-05-19  Anders Carlsson  <andersca (a] apple.com>
   37468 
   37469         Reviewed by Mitz.
   37470 
   37471         Test: fast/frames/inline-object-inside-frameset.html
   37472         
   37473         http://bugs.webkit.org/show_bug.cgi?id=13771
   37474         Assertion failure ASSERT(m_layer) when running Hamachi fuzz tester
   37475 
   37476         Don't paint inline objects.
   37477         
   37478         * rendering/RenderFrameSet.cpp:
   37479         (WebCore::RenderFrameSet::paint):
   37480 
   37481 2007-05-19  David Hyatt  <hyatt (a] apple.com>
   37482 
   37483         Add support for plain text MIME types (CSS/JS/TXT) to view source mode.
   37484         CSS/JS will eventually tokenize via their own special tokenizers so that
   37485         they can also be syntax-highlighted, but for now just treat them as
   37486         plain text.
   37487 
   37488         Reviewed by aroben
   37489 
   37490         * dom/DOMImplementation.cpp:
   37491         (WebCore::DOMImplementation::createDocument):
   37492         * html/HTMLViewSourceDocument.cpp:
   37493         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
   37494         (WebCore::HTMLViewSourceDocument::createTokenizer):
   37495         (WebCore::HTMLViewSourceDocument::createContainingTable):
   37496         (WebCore::HTMLViewSourceDocument::addViewSourceText):
   37497         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   37498         * html/HTMLViewSourceDocument.h:
   37499         * loader/TextDocument.cpp:
   37500         (WebCore::TextTokenizer::TextTokenizer):
   37501         (WebCore::TextTokenizer::write):
   37502         * loader/TextDocument.h:
   37503         (WebCore::TextTokenizer::checkBuffer):
   37504 
   37505 2007-05-18  David Hyatt  <hyatt (a] apple.com>
   37506 
   37507         Fix a glitch in view source mode attribute names.
   37508 
   37509         * html/HTMLViewSourceDocument.cpp:
   37510         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   37511 
   37512 2007-05-18  David Hyatt  <hyatt (a] apple.com>
   37513 
   37514         "Linkify" view source mode links.
   37515 
   37516         Reviewed by andersca
   37517 
   37518         * css/view-source.css:
   37519         * html/HTMLViewSourceDocument.cpp:
   37520         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   37521         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
   37522         (WebCore::HTMLViewSourceDocument::addLink):
   37523         * html/HTMLViewSourceDocument.h:
   37524 
   37525 2007-05-18  Oliver Hunt  <oliver (a] apple.com>
   37526 
   37527         Reviewed by Sam
   37528 
   37529         No longer need to pass HTMLImageElement and HTMLImageLoader on to WebKit
   37530         Need to expose CachedResourceClient constructor
   37531 
   37532         * WebCore.exp:
   37533         * WebCore.xcodeproj/project.pbxproj:
   37534 
   37535 2007-05-18  David Hyatt  <hyatt (a] apple.com>
   37536 
   37537         Fix for <rdar://problem/5214338> REGRESSION: / mishandled in 
   37538         HTML tokenization (13780).
   37539 
   37540         Reviewed by ggaren
   37541 
   37542         * html/HTMLTokenizer.cpp:
   37543         (WebCore::Token::addAttribute):
   37544         (WebCore::HTMLTokenizer::parseTag):
   37545 
   37546 2007-05-18  Brady Eidson  <beidson (a] apple.com>
   37547 
   37548         Reviewed by Maciej
   37549 
   37550         http://bugs.webkit.org/show_bug.cgi?id=12681 and
   37551         <rdar://problem/5166149> - window.open() causes server to be hit twice
   37552 
   37553         This regressed in http://trac.webkit.org/projects/webkit/changeset/14637
   37554         That patch was to fix broken behavior when opening an already existant window.
   37555         The unfortunate side effect was to cause the server to be hit twice.  
   37556         Once during the call to frame->loader()->createWindow(), and again via a 
   37557         scheduled redirection.
   37558 
   37559         I decided to restore the original de-facto behavior by making the new window
   37560         open via a scheduled redirection - there is a FIXME that was already here that
   37561         explains the reason why we have to do it this way for now.
   37562 
   37563         Additionally, there were two distinct places that had their own logic to open
   37564         a new window - the logic for window.open() and the logic for 
   37565         window.showModalDialog().  The logic was almost identical so I condensed them
   37566         into one utility function that takes a flag to handle the slight difference.
   37567 
   37568         A layout test is not possible at this time since it would involve capturing 
   37569         server logs (the 1st connection does not exist long enough to result in any
   37570         delegate callbacks).  That task is documented in 
   37571         http://bugs.webkit.org/show_bug.cgi?id=13769
   37572 
   37573         * bindings/js/kjs_window.cpp:
   37574         (KJS::createWindow): Merged the two slightly different versions of "creating a window" 
   37575           logic here.  For the modal dialog case the load is an immediate call to changeLocation(),
   37576           which is triggered by the "immediate" flag, and the other cases load via scheduleLocationChange()
   37577         (KJS::showModalDialog): Call createWindow()
   37578         (KJS::WindowFunc::callAsFunction): Handle frame targets of _top or _parent immediately and call 
   37579           createWindow() for all others
   37580 
   37581 2007-05-18  Sam Weinig  <sam (a] webkit.org>
   37582 
   37583         Reviewed by Geoff.
   37584 
   37585         Autogenerate the JS bindings for the HTMLTableElement, HTMLTableCaptionElement,
   37586         HTMLTableCellElement, HTMLTableColElement, HTMLTableRowElement, HTMLTableSectionElement.
   37587 
   37588         * DerivedSources.make:
   37589         * WebCore.pro:
   37590         * WebCore.xcodeproj/project.pbxproj:
   37591         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   37592         (WebCore::createJSHTMLWrapper):
   37593         * bindings/js/kjs_html.cpp:
   37594         (KJS::):
   37595         (KJS::JSHTMLElement::classInfo):
   37596         (KJS::JSHTMLElement::accessors):
   37597         (KJS::HTMLElementFunction::callAsFunction):
   37598         * bindings/js/kjs_html.h:
   37599         (KJS::JSHTMLElement::):
   37600         * html/HTMLTableCaptionElement.idl:
   37601         * html/HTMLTableCellElement.idl:
   37602         * html/HTMLTableColElement.idl:
   37603         * html/HTMLTableElement.idl:
   37604         * html/HTMLTableRowElement.idl:
   37605         * html/HTMLTableSectionElement.idl:
   37606         * page/DOMWindow.idl:
   37607 
   37608 2007-05-18  Oliver Hunt  <oliver (a] apple.com>
   37609 
   37610         Reviewed by Sam.
   37611 
   37612         Fix for <rdar://problem/5211122> DRT crash below
   37613         SVGTimer::applyAnimations when page cache is enabled 
   37614         (SVG animation timers do not properly cancel themselves)
   37615 
   37616         There were still a few paths in the SVG Animation code
   37617         that could cause timers to be created and used.  This 
   37618         patch inserts addition SVG_EXPERIMENTAL blocks to prevent
   37619         these timers from being used.
   37620 
   37621         * ksvg2/misc/SVGDocumentExtensions.cpp:
   37622         (WebCore::SVGDocumentExtensions::startAnimations):
   37623         * ksvg2/misc/SVGTimer.cpp:
   37624         (WebCore::SVGTimer::animationsByElement):
   37625         (WebCore::SVGTimer::applyAnimations):
   37626         (WebCore::SVGTimer::notifyAll):
   37627         (WebCore::SVGTimer::addNotify):
   37628         (WebCore::SVGTimer::removeNotify):
   37629         * ksvg2/misc/TimeScheduler.cpp:
   37630         (WebCore::TimeScheduler::addTimer):
   37631         (WebCore::TimeScheduler::connectIntervalTimer):
   37632         (WebCore::TimeScheduler::disconnectIntervalTimer):
   37633         (WebCore::TimeScheduler::startAnimations):
   37634         (WebCore::TimeScheduler::toggleAnimations):
   37635         (WebCore::TimeScheduler::timerFired):
   37636         * ksvg2/svg/SVGAnimationElement.h:
   37637 
   37638 2007-05-18  Marius Bugge Monsen <mbm (a] trolltech.com>
   37639 
   37640         Reviewed by Zack Rusin. 
   37641 
   37642         Return a valid pointer to a Clipboard object
   37643         from newGeneralClipboard. 
   37644 
   37645         * editing/qt/EditorQt.cpp:
   37646         (WebCore::Editor::newGeneralClipboard):
   37647 
   37648 2007-05-18  Mark Rowe  <mrowe (a] apple.com>
   37649 
   37650         Attempt to fix the Gdk build after r21562.
   37651 
   37652         * platform/gdk/TemporaryLinkStubs.cpp:
   37653         (Widget::isEnabled):
   37654         * platform/gdk/WidgetGdk.cpp:
   37655 
   37656 2007-05-18  Adam Treat <treat (a] kde.org>
   37657 
   37658         Reviewed by Lars
   37659 
   37660         Remove dead code.
   37661 
   37662         * platform/Widget.h:
   37663         * platform/mac/WidgetMac.mm:
   37664         * platform/qt/WidgetQt.cpp:
   37665 
   37666 2007-05-18  Holger Freyther  <zecke (a] selfish.org>
   37667 
   37668         Reviewed by Maciej.
   37669 
   37670         Return true to make loading of pages working again
   37671 
   37672         * loader/gdk/FrameLoaderClientGdk.cpp:
   37673         (WebCore::FrameLoaderClientGdk::canHandleRequest):
   37674 
   37675 2007-05-18  Holger Freyther  <zecke (a] selfish.org>
   37676 
   37677         Reviewed by Maciej.
   37678 
   37679         Make WebCore::Widget use GtkWidget to fix focus handling.
   37680 
   37681         * WebCore.pro: Add PlatformScrollBar
   37682         * platform/ScrollView.h: Gtk stuff
   37683         * platform/Widget.h: Take a GtkWidget
   37684         * platform/gdk/PlatformScrollBarGdk.cpp: Added.
   37685         (PlatformScrollbar::PlatformScrollbar):
   37686         (PlatformScrollbar::~PlatformScrollbar):
   37687         (PlatformScrollbar::width):
   37688         (PlatformScrollbar::height):
   37689         (PlatformScrollbar::setEnabled):
   37690         (PlatformScrollbar::paint):
   37691         (PlatformScrollbar::updateThumbPosition):
   37692         (PlatformScrollbar::updateThumbProportion):
   37693         (PlatformScrollbar::setRect):
   37694         * platform/gdk/ScreenGdk.cpp: Implement depth handling
   37695         (WebCore::screenDepth):
   37696         * platform/gdk/ScrollViewGdk.cpp: use setGtkWidget, not setDrawable
   37697         (WebCore::ScrollView::setGtkWidget):
   37698         * platform/gdk/TemporaryLinkStubs.cpp:
   37699         * platform/gdk/WidgetGdk.cpp:
   37700         (WebCore::Widget::Widget):
   37701         (WebCore::Widget::gtkWidget):
   37702         (WebCore::Widget::setGtkWidget):
   37703         (WebCore::Widget::hasFocus):
   37704         (WebCore::Widget::setFocus):
   37705 
   37706 2007-05-18  Lars Knoll  <lars (a] trolltech.com>
   37707 
   37708         Reviewed by Zack
   37709 
   37710         Correctly implement initialiseSupportedImageMIMETypes.
   37711 
   37712         * platform/MimeTypeRegistry.cpp:
   37713         (WebCore::initialiseSupportedImageMIMETypes):
   37714         * platform/qt/MimeTypeRegistryQt.cpp:
   37715         (WebCore::):
   37716 
   37717 2007-05-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   37718 
   37719         Reviewed by Maciej.
   37720 
   37721         Build fix for non-Qt and non-Mac ports.
   37722 
   37723         * html/HTMLCanvasElement.h:
   37724 
   37725 2007-05-18  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   37726 
   37727         Reviewed by Mark Rowe.
   37728 
   37729         No test added as this is hard to time.
   37730 
   37731         * platform/gdk/FrameGdk.cpp: Use needsLayout() to decide if layout()
   37732         is needed.
   37733 
   37734         (WebCore::FrameGdk::dumpRenderTree):
   37735         (WebCore::FrameGdk::handleGdkEvent):
   37736 
   37737 2007-05-18  Simon Hausmann  <hausmann (a] kde.org>
   37738 
   37739         Reviewed by Lars.
   37740 
   37741         * WebCore.pro: Create a pkg-config file to make it easier to locate
   37742         and use WebKitQt.
   37743 
   37744 2007-05-18  Lars Knoll <lars (a] trolltech.com>
   37745 
   37746         Reviewed by Hyatt.
   37747 
   37748         Remove unused handleMouseEvent methods in the Widget
   37749         and derived classes.
   37750 
   37751         * page/EventHandler.cpp:
   37752         (WebCore::EventHandler::handleMouseMoveEvent):
   37753         * page/FrameView.cpp:
   37754         * page/FrameView.h:
   37755         * page/mac/EventHandlerMac.mm:
   37756         (WebCore::EventHandler::mouseDragged):
   37757         (WebCore::EventHandler::mouseMoved):
   37758         * platform/ScrollBar.h:
   37759         * platform/Widget.h:
   37760         * platform/win/PlatformScrollBar.h:
   37761         * platform/win/TemporaryLinkStubs.cpp:
   37762         (WebCore::PlatformScrollbar::setRect):
   37763         * platform/wx/PlatformScrollBar.h:
   37764 
   37765 2007-05-18  George Staikos  <staikos (a] kde.org>
   37766 
   37767         Reviewed by Lars.
   37768 
   37769         Use the proper clipping algorithm.  Might be a bit slow but we
   37770         can optimize it later.
   37771 
   37772         * platform/graphics/qt/GraphicsContextQt.cpp:
   37773         (WebCore::GraphicsContext::clip):
   37774 
   37775 2007-05-17  Sam Weinig  <sam (a] webkit.org>
   37776 
   37777         Reviewed by George Staikos.
   37778 
   37779         Fix Qt build after adding JSHTMLAnchorElementCustom.cpp. 
   37780 
   37781         * WebCore.pro:
   37782 
   37783 2007-05-17  George Staikos  <staikos (a] kde.org>
   37784 
   37785         Reviewed by hyatt.
   37786 
   37787         Fix preprocessor logic for CG/QT
   37788 
   37789         * html/HTMLCanvasElement.cpp:
   37790         (WebCore::HTMLCanvasElement::reset):
   37791 
   37792 2007-05-17  David Hyatt  <hyatt (a] apple.com>
   37793 
   37794         Add a line gutter to view source mode.  The gutter uses counters, and this exposed the fact
   37795         that pseudoStyleForElement was not walking all UA rules properly.
   37796 
   37797         Reviewed by aroben
   37798 
   37799         * css/cssstyleselector.cpp:
   37800         (WebCore::CSSStyleSelector::pseudoStyleForElement):
   37801         * css/view-source.css:
   37802         * html/HTMLViewSourceDocument.cpp:
   37803         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
   37804         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   37805         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
   37806         (WebCore::HTMLViewSourceDocument::addLine):
   37807         (WebCore::HTMLViewSourceDocument::addText):
   37808         * html/HTMLViewSourceDocument.h:
   37809 
   37810 2007-05-17  Justin Garcia  <justin.garcia (a] apple.com>
   37811 
   37812         Reviewed by ggaren
   37813 
   37814         <rdar://problem/5209984> REGRESSION: Crash on click after clearing Facebook status
   37815         
   37816         comparePositions() expects non-null positions.  It's 
   37817         given a null position by contains() if the current 
   37818         selection is a range selection but contains only invisible 
   37819         content *and* visible positions cannot be created from its 
   37820         end points.  This can happen when there is a range selection 
   37821         inside shadow content (like that inside text fields) that 
   37822         is made invisible.
   37823 
   37824         * editing/SelectionController.cpp:
   37825         (WebCore::SelectionController::contains): Check for
   37826         invisible end points.
   37827 
   37828 2007-05-17  Sam Weinig  <sam (a] webkit.org>
   37829 
   37830         Reviewed by Adam.
   37831 
   37832         Fix for <rdar://problem/5201423> REGRESSION: Links in 
   37833         sidebar don't work on Honda website
   37834 
   37835         Anchor elements need to have the same behavior for implicit and 
   37836         explicit toString() calls.
   37837 
   37838         Test: fast/dom/anchor-toString.html
   37839 
   37840         * WebCore.xcodeproj/project.pbxproj:
   37841         * bindings/js/JSHTMLAnchorElementCustom.cpp: Added.
   37842         (WebCore::JSHTMLAnchorElement::toString):
   37843         * html/HTMLAnchorElement.idl:
   37844 
   37845 2007-05-17  Geoffrey Garen  <ggaren (a] apple.com>
   37846         
   37847         Build fix.
   37848 
   37849 2007-05-17  Adele Peterson  <adele (a] apple.com>
   37850 
   37851         Reviewed by Hyatt.
   37852 
   37853         Update RenderMenuList PopupClient methods to consider style of inner block.
   37854 
   37855         * rendering/RenderMenuList.cpp:
   37856         (WebCore::RenderMenuList::itemStyle):
   37857         (WebCore::RenderMenuList::clientStyle):
   37858 
   37859 2007-05-17  Maciej Stachowiak  <mjs (a] apple.com>
   37860 
   37861         Not reviewed, emergency test fix.
   37862 
   37863         - avoid crash on layout tests.
   37864         
   37865         Patched up my last change so that  widgets don't crash.
   37866 
   37867         * loader/FrameLoader.cpp:
   37868         (WebCore::FrameLoader::mainReceivedCompleteError):
   37869 
   37870 2007-05-17  Antti Koivisto  <antti (a] apple.com>
   37871 
   37872         Reviewed by Darin.
   37873 
   37874         Fix for http://bugs.webkit.org/show_bug.cgi?id=13727
   37875         REGRESSION: Reproducible hang setting the selection's extent offset to -1
   37876         <rdar://problem/5206890>
   37877         
   37878         Rise INDEX_SIZE_ERR if used selection index is negative. This matches HTML5 for
   37879         getRangeAt() and collapse() which are part of the spec (FF throws NS_ERROR_FAILURE). 
   37880         
   37881         Not throwing exceptions yet for too high offsets (except getRangeAt()) as it is
   37882         unclear if WebCore's definition of offsets is the same as other browsers.
   37883 
   37884         * bindings/js/kjs_window.cpp:
   37885         * WebCore/editing/SelectionController.cpp:
   37886         * WebCore/editing/SelectionController.h:
   37887         * WebCore/editing/VisiblePosition.cpp:
   37888         
   37889 2007-05-17  Adele Peterson  <adele (a] apple.com>
   37890 
   37891         Reviewed by Mitz.
   37892 
   37893         Fix for <rdar://problem/5096035> REGRESSION: rtl text should be left-aligned in <select>s
   37894 
   37895         Test: fast/text/international/bidi-menulist.html
   37896 
   37897         * rendering/RenderMenuList.cpp:
   37898         (WebCore::RenderMenuList::adjustInnerStyle): Set the inner block style to direction: ltr, and text-align: left.  This means that
   37899          we will ignore those settings in the button to match the way the text is displayed in the popup menu.
   37900         (WebCore::RenderMenuList::createInnerBlock): Call adjustInnerStyle.
   37901         (WebCore::RenderMenuList::setStyle): ditto.
   37902         * rendering/RenderMenuList.h: Added adjustInnerStyle.
   37903 
   37904 2007-05-17  Justin Garcia  <justin.garcia (a] apple.com>
   37905 
   37906         Reviewed by harrison
   37907 
   37908         <rdar://problem/4924441> List becomes nested when changing its type
   37909         <rdar://problem/5210032> Content before a list is placed at the end of the list when its made into a list item
   37910         <rdar://problem/5207369> Crash when removing ordering from a nested list
   37911 
   37912         * editing/InsertListCommand.cpp:
   37913         (WebCore::InsertListCommand::doApply):
   37914         The outermostEnclosingList of the position before the start isn't
   37915         the previousList if it contains the start.
   37916         Ditto for the position after the end and the nextList.
   37917         If we're putting the newly created list item into the next list,
   37918         insert it at the start of that list, not the end (don't append).
   37919         Avoid nesting newly created lists inside list items.
   37920         
   37921 2007-05-17  Patti Hoa  <patti (a] apple.com>
   37922 
   37923         Reviewed by Darin.
   37924         
   37925         <rdar://problem/4775672> AXTextMarkerRangeForUnorderedTextMarkers returns incorrect order
   37926         
   37927         * bridge/mac/WebCoreAXObject.mm:
   37928         (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
   37929         A selection's m_start is not guranteed to equal m_base since m_start can actually be m_base's downstream().
   37930         A more accurate way to determine the order from selection is to ask directly for isBaseFirst().
   37931         In addition, if the two visible positions given are the same position but different affinity, we need to 
   37932         handle it here rather than depend on the selection. This is because selection does not retain the
   37933         affinity of both selection start/end visible positions as part of the selection validation. 
   37934 
   37935 2007-05-17  Mitz Pettel  <mitz (a] webkit.org>
   37936 
   37937         Reviewed by Brady
   37938 
   37939         - fix http://bugs.webkit.org/show_bug.cgi?id=13759
   37940           REGRESSION (r20182-r20184): Incorrect rendering of multipart images
   37941 
   37942         Test: http/tests/multipart/invalid-image-data.html
   37943 
   37944         * loader/loader.cpp:
   37945         (WebCore::Loader::didReceiveData): Make a copy of the current part's data
   37946         instead of using the resource data, because the latter is going to be
   37947         overwritten by the new part being received.
   37948 
   37949 2007-05-17  Oliver Hunt  <oliver (a] apple.com>
   37950 
   37951         Reviewed by Justin.
   37952 
   37953         Fix for <rdar://problem/4244861> Safari fails to create image file
   37954         after releasing dragged image that has changed on source page
   37955 
   37956         Tell xcode to copy HTMLImageElement.h and HTMLImageLoader.h headers
   37957         across to WebKit as private headers.
   37958 
   37959         * WebCore.xcodeproj/project.pbxproj:
   37960 
   37961 2007-05-17  Justin Garcia  <justin.garcia (a] apple.com>
   37962 
   37963         Reviewed by harrison
   37964 
   37965         <rdar://problem/5190926> 
   37966         Gmail Editor: Crash when removing list style from underlined, multi-item list
   37967         
   37968         The user underlined some text, then created a list.
   37969         The list was placed inside the inline element carrying 
   37970         the underline style, so, that element surrounded the 
   37971         list instead of being at the lowest level (just above 
   37972         text nodes). This kind of markup is more difficult to 
   37973         edit. Filed 5192089 and added a workaround so that we 
   37974         don't produce this kind of markup.
   37975 
   37976         * editing/InsertListCommand.cpp:
   37977         (WebCore::InsertListCommand::doApply): Avoid inline
   37978         elements when inserting the new list.
   37979 
   37980 2007-05-17  David Hyatt  <hyatt (a] apple.com>
   37981 
   37982         Allow redundant attributes with the same name in view source mode.
   37983 
   37984         Reviewed by aroben
   37985 
   37986         * dom/NamedAttrMap.h:
   37987         (WebCore::NamedAttrMap::insertAttribute):
   37988         * html/HTMLTokenizer.cpp:
   37989         (WebCore::Token::addAttribute):
   37990 
   37991 2007-05-17  George Staikos  <staikos (a] kde.org>
   37992 
   37993         - Back out last patch based on discussion with Zack.
   37994 
   37995         * platform/qt/WidgetQt.cpp:
   37996         (WebCore::Widget::paint):
   37997 
   37998 2007-05-16  Anders Carlsson  <andersca (a] apple.com>
   37999 
   38000         Reviewed by Darin.
   38001 
   38002         <rdar://problem/5207156> Hamachi test tool causes assertion in FormCompletionController in Safari
   38003 
   38004         This happens because the form delegate gets passed the wrong source frame during the second submit().
   38005         If a frame with the given name is found, FrameLoader::load is called with the same parameters on the found frame.
   38006         This causes the found frame to be used as the source frame, which is wrong.
   38007         
   38008         The fix is to create the form state object before checking what frame to load the new request in. 
   38009         
   38010         * WebCore.exp:
   38011         * loader/FrameLoader.cpp:
   38012         (WebCore::FrameLoader::load):
   38013         (WebCore::FrameLoader::checkNavigationPolicy):
   38014         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   38015         * loader/FrameLoader.h:
   38016         * manual-tests/submit-form-with-target-twice.html: Added.
   38017 
   38018 2007-05-16  Maciej Stachowiak  <mjs (a] apple.com>
   38019 
   38020         Reviewed by Oliver.
   38021 
   38022         <rdar://problem/5205914> REGRESSION: PLT stops after loading first page due to r21479
   38023         
   38024         * loader/FrameLoader.cpp:
   38025         (WebCore::FrameLoader::frameHasLoaded):
   38026 
   38027 2007-05-16  David Hyatt  <hyatt (a] apple.com>
   38028 
   38029         Improve the syntax-highlighted view source mode.  It now preserves all whitespace properly
   38030         and highlights doctypes and comments (in addition to all the stuff it could highlight before).
   38031 
   38032         Reviewed by aroben
   38033 
   38034         * html/HTMLTokenizer.cpp:
   38035         (WebCore::Token::addAttribute):
   38036         (WebCore::HTMLTokenizer::parseTag):
   38037         * html/HTMLTokenizer.h:
   38038         (WebCore::Token::Token):
   38039         (WebCore::Token::~Token):
   38040         (WebCore::Token::reset):
   38041         (WebCore::Token::addViewSourceChar):
   38042         * html/HTMLViewSourceDocument.cpp:
   38043         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
   38044         * html/HTMLViewSourceDocument.h:
   38045 
   38046 2007-05-16  Maciej Stachowiak  <mjs (a] apple.com>
   38047 
   38048         Reviewed by Adam.
   38049 
   38050         <rdar://problem/5191024> Page never loads completely (emonome.vodpod.com)
   38051         <rdar://problem/5205162> REGRESSION (r21367): In the Address URL field, typing a site name doesn't redirect to site after pressing return
   38052         http://bugs.webkit.org/show_bug.cgi?id=13683
   38053         <rdar://problem/5208951> REGRESSION: Progress bar never completes on link click that downloads (13694)
   38054         http://bugs.webkit.org/show_bug.cgi?id=13694
   38055         <rdar://problem/5201598> REGRESSION: After uploading file to iDisk at mac.com, "loading" status remains and file does not appear in the list
   38056         
   38057         * loader/FrameLoader.cpp:
   38058         (WebCore::FrameLoader::mainReceivedCompleteError): Make sure to always check whether the overall
   38059         load completed, even if we think the current frame load is already complete.
   38060 
   38061 2007-05-16  Beth Dakin  <bdakin (a] apple.com>
   38062 
   38063         Reviewed by Hyatt.
   38064 
   38065         Fix for <rdar://problem/5204107> REGRESSION: CSS web forum site 
   38066         layout not displaying properly in latest WebKit
   38067 
   38068         Hyatt's http://trac.webkit.org/projects/webkit/changeset/21428 
   38069         exposed this bug. We were not handling error cases with <caption> 
   38070         correctly. This patch makes them do the same thing as colgroup.
   38071 
   38072         * html/HTMLParser.cpp:
   38073         (WebCore::HTMLParser::handleError):
   38074         * html/HTMLParserErrorCodes.cpp: No need any more for caption-
   38075         specific errors.
   38076         (WebCore::htmlParserErrorMessageTemplate):
   38077         * html/HTMLParserErrorCodes.h:
   38078         (WebCore::):
   38079 
   38080 2007-05-16  Kevin McCullough  <kmccullough (a] apple.com>
   38081 
   38082         Reviewed by Darin and Geoff.
   38083 
   38084         - rdar://problem/4981886
   38085         - Now windows opened by the DOM can be closed by JS.
   38086 
   38087         * bindings/js/kjs_window.cpp:
   38088         (KJS::createNewWindow):
   38089         (KJS::WindowFunc::callAsFunction):
   38090         * loader/FrameLoader.cpp:
   38091         (WebCore::FrameLoader::FrameLoader):
   38092         (WebCore::FrameLoader::openedByDOM):
   38093         (WebCore::FrameLoader::setOpenedByDOM):
   38094         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
   38095         * loader/FrameLoader.h:
   38096 
   38097 2007-05-16  Darin Adler  <darin (a] apple.com>
   38098 
   38099         Reviewed by Hyatt.
   38100 
   38101         - fix <rdar://problem/4928671> Crash due to runaway recursion when fieldset has display: table-row (12066)
   38102 
   38103         Test: fast/css/fieldset-display-row.html
   38104 
   38105         * rendering/RenderContainer.cpp: (WebCore::RenderContainer::addChild):
   38106         Change all decision making about special handling for new children to use
   38107         the class of the render object instead of the style, except for the cases
   38108         where the style is the only way to tell (TABLE_COLUMN_GROUP and TABLE_CAPTION).
   38109         Thus a RenderFieldset with table-row style won't get handled as if it was
   38110         a table row.
   38111 
   38112         * rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): Same thing.
   38113         Except that here the styles that we ahave to look at are TABLE_CAPTION,
   38114         TABLE_HEADER_GROUP, TABLE_FOOTER_GROUP, and TABLE_ROW_GROUP.
   38115 
   38116 2007-05-16  Zack Rusin  <zrusin (a] trolltech.com>
   38117 
   38118         Reviewed by Lars.
   38119 
   38120         Implement bigger parts of the Canvas element in the
   38121         Qt port. Gradients and patterns are missing.
   38122 
   38123         * WebCore/html/CanvasRenderingContext2D.cpp:
   38124         * WebCore/html/CanvasStyle.cpp:
   38125         * WebCore/html/HTMLCanvasElement.cpp:
   38126         * WebCore/html/HTMLCanvasElement:
   38127 
   38128 2007-05-16  Zack Rusin  <zrusin (a] trolltech.com>
   38129 
   38130         Reviewed by Lars
   38131 
   38132         Fix shared timers, make them use miliseconds. Based
   38133         on a patch from George.
   38134 
   38135         * WebCore/platform/qt/SharedTimerQt.cpp:
   38136        (WebCore::setSharedTimerFireTime):
   38137 
   38138 2007-05-16  David Hyatt  <hyatt (a] apple.com>
   38139 
   38140         Add rudimentary error reporting to the HTML parser.  This is disabled
   38141         for now until it gets beefed up a bit more (and until we work out how
   38142         best to pass the messages up without hurting perf).
   38143 
   38144         Clean up and remove dead error handling code and incorrect error handling
   38145         code as well.
   38146 
   38147         Reviewed by mjs
   38148 
   38149         * WebCore.xcodeproj/project.pbxproj:
   38150         * html/HTMLParser.cpp:
   38151         (WebCore::HTMLParser::HTMLParser):
   38152         (WebCore::HTMLParser::handleError):
   38153         (WebCore::HTMLParser::headCreateErrorCheck):
   38154         (WebCore::HTMLParser::reportErrorToConsole):
   38155         * html/HTMLParser.h:
   38156         (WebCore::HTMLParser::reportError):
   38157         * html/HTMLParserErrorCodes.cpp: Added.
   38158         (WebCore::htmlParserErrorMessageTemplate):
   38159         * html/HTMLParserErrorCodes.h: Added.
   38160         (WebCore::):
   38161         * html/HTMLTokenizer.h:
   38162         (WebCore::HTMLTokenizer::tagStartLineNumber):
   38163 
   38164 2007-05-15  David Hyatt  <hyatt (a] apple.com>
   38165 
   38166         Make FrameLoader write "<html><body>" instead of just "<body>".
   38167 
   38168         Reviewed by aroben
   38169 
   38170         * loader/FrameLoader.cpp:
   38171         (WebCore::FrameLoader::init):
   38172 
   38173 2007-05-15  George Staikos  <staikos (a] kde.org>
   38174 
   38175         Reviewed by Adam Roben.
   38176 
   38177         - Pass cookies through from the loader.
   38178 
   38179         * platform/network/qt/ResourceHandleManagerQt.cpp:
   38180         (WebCore::ResourceHandleManager::receivedResponse):
   38181 
   38182 2007-05-15  Adam Treat  <adam (a] staikos.net>
   38183 
   38184         Reviewed by George Staikos.
   38185 
   38186         - Implement drawArc with proper units.
   38187 
   38188         * platform/graphics/qt/GraphicsContextQt.cpp:
   38189         (WebCore::GraphicsContext::strokeArc):
   38190 
   38191 2007-05-15  Adam Treat  <adam (a] staikos.net>
   38192 
   38193         Reviewed by George Staikos.
   38194 
   38195         - Add missing paint for nested subframes.
   38196 
   38197         * platform/qt/WidgetQt.cpp:
   38198         (WebCore::Widget::paint):
   38199 
   38200 2007-05-15  Sam Weinig  <sam (a] webkit.org>
   38201 
   38202         Reviewed by Oliver.
   38203 
   38204         - Patch for http://bugs.webkit.org/show_bug.cgi?id=13722
   38205           Finish testing and fixing the setting of DOM attributes to JS null
   38206 
   38207           Convert JS null to null string for SVG attributes.
   38208 
   38209         Test: fast/dom/svg-element-attribute-js-null.xhtml
   38210 
   38211         * ksvg2/svg/SVGAngle.idl:
   38212         * ksvg2/svg/SVGElement.idl:
   38213         * ksvg2/svg/SVGLength.idl:
   38214         * ksvg2/svg/SVGScriptElement.idl:
   38215 
   38216 2007-05-15  Sam Weinig  <sam (a] webkit.org>
   38217 
   38218         Reviewed by Oliver.
   38219 
   38220         - Patch for http://bugs.webkit.org/show_bug.cgi?id=13722
   38221           Finish testing and fixing the setting of DOM attributes to JS null
   38222 
   38223           Convert JS null to null string for CanvasRenderingContext2D attributes.
   38224 
   38225         Test: fast/dom/canvasContext2d-element-attribute-js-null.html
   38226 
   38227         * html/CanvasRenderingContext2D.idl:
   38228 
   38229 2007-05-15  Oliver Hunt  <oliver (a] apple.com>
   38230 
   38231         Reviewed by Sam and Geoff.
   38232 
   38233         Removing dead code left behind from drag and drop refactoring.
   38234 
   38235         * page/mac/WebCoreFrameBridge.h:
   38236 
   38237 2007-05-15  Sam Weinig  <sam (a] webkit.org>
   38238 
   38239         Reviewed by Oliver.
   38240 
   38241         - Second Patch for http://bugs.webkit.org/show_bug.cgi?id=13722
   38242           Finish testing and fixing the setting of DOM attributes to JS null
   38243 
   38244           Convert JS null to null string for remaining CSSOM attributes.
   38245 
   38246         Test: fast/dom/css-element-attribute-js-null.html
   38247 
   38248         * bindings/js/kjs_css.cpp:
   38249         (KJS::DOMCSSStyleDeclaration::put):
   38250         (KJS::DOMMediaList::put):
   38251         (KJS::DOMCSSRule::putValueProperty):
   38252         (KJS::DOMCSSValue::put):
   38253         * css/CSSPageRule.idl:
   38254         * css/CSSRule.idl:
   38255         * css/CSSStyleDeclaration.idl:
   38256         * css/CSSStyleRule.idl:
   38257         * css/CSSValue.idl:
   38258         * css/MediaList.idl:
   38259 
   38260 2007-05-15  Darin Adler  <darin (a] apple.com>
   38261 
   38262         Reviewed by Hyatt.
   38263 
   38264         * css/html4.css: Remove wbr style rule -- not needed any more.
   38265 
   38266 2007-05-15  Mitz Pettel  <mitz (a] webkit.org>
   38267 
   38268         Reviewed by Brady
   38269 
   38270         - fix http://bugs.webkit.org/show_bug.cgi?id=13360
   38271           REGRESSION: Crash closing live web cam viewer page
   38272 
   38273         Test: http/tests/misc/multipart.html
   38274 
   38275         * loader/ResourceLoader.cpp:
   38276         (WebCore::ResourceLoader::didFail): Avoid calling didFailToLoad() if
   38277         didFinishLoad() has already been called (when the first part of a
   38278         multipart resource arrived).
   38279         (WebCore::ResourceLoader::didCancel): Ditto.
   38280 
   38281 2007-05-15  Sam Weinig  <sam (a] webkit.org>
   38282 
   38283         Reviewed by Darin.
   38284 
   38285         - Patch for http://bugs.webkit.org/show_bug.cgi?id=13722
   38286           Finish testing and fixing the setting of DOM attributes to JS null
   38287 
   38288           Convert JS null to null string for remaining Core DOM attributes.
   38289 
   38290         Test: fast/dom/coreDOM-element-attribute-js-null.xhtml
   38291 
   38292         * dom/Attr.cpp:
   38293         (WebCore::Attr::setValue): Don't throw an expection for null values as this
   38294         is not in the spec and Firefox does not do it either.
   38295         * dom/Attr.idl:
   38296         * dom/CharacterData.idl:
   38297         * dom/ProcessingInstruction.idl:
   38298 
   38299 2007-05-15  Mitz Pettel  <mitz (a] webkit.org>
   38300 
   38301         Reviewed by Hyatt.
   38302 
   38303         - fix http://bugs.webkit.org/show_bug.cgi?id=13718
   38304           REGRESSION (r21093): editing/execCommand/5136770.html failing pixel test
   38305 
   38306         * rendering/RenderContainer.cpp:
   38307         (WebCore::RenderContainer::removeChildNode): Moved the code that clears the
   38308         selection when moving a selection border into the fast path.
   38309 
   38310 2007-05-15  Rob Buis  <buis (a] kde.org>
   38311 
   38312         Reviewed by Hyatt.
   38313 
   38314         http://bugs.webkit.org/show_bug.cgi?id=6487
   38315         "Make Text Bigger/Smaller" affects SVGs when it probably shouldn't
   38316 
   38317         Ignore Make Text Bigger/Smaller for SVG text.
   38318 
   38319         * css/svg.css:
   38320 
   38321 2007-05-15  Anders Carlsson  <andersca (a] apple.com>
   38322 
   38323         Reviewed by Maciej.
   38324 
   38325         <rdar://problem/5183685>
   38326         http://bugs.webkit.org/show_bug.cgi?id=13301
   38327         ASSERT or null value when trying to use a getter defined on a window object
   38328 
   38329         Handle the case where the value returned is a getter/setter object.
   38330         
   38331         * bindings/js/kjs_window.cpp:
   38332         (KJS::Window::getOverridePropertySlot):
   38333 
   38334 2007-05-14  Anders Carlsson  <andersca (a] apple.com>
   38335 
   38336         Reviewed by Geoff.
   38337 
   38338         <rdar://problem/5200816>
   38339         REGRESSION: With Shiira 1.2.2 , I can't open embedded link in flash object by clicking (http:/www.adobe.com )
   38340         
   38341         Shiira under some circumstances passes nil as the request to -[WebFrame loadRequest:]. ToT WebKit doesn't call any policy
   38342         delegate methods in this case, which means that the page is actually being loaded. 
   38343         
   38344         This patch makes ToT WebKit behave in the same way as Tiger WebKit when the request is nil.
   38345         
   38346         * loader/FrameLoader.cpp:
   38347         (WebCore::FrameLoader::checkNavigationPolicy):
   38348         Don't continue without calling the navigation policy method if the request is null.
   38349         
   38350         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   38351         If the request can't be handled, don't continue the load.
   38352         
   38353         * platform/network/mac/ResourceRequestMac.mm:
   38354         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   38355         Don't create an NSURLRequest object if the request is null.
   38356 
   38357 2007-05-15  Maciej Stachowiak  <mjs (a] apple.com>
   38358 
   38359         Reviewed by Hyatt and Lars.
   38360 
   38361         - fixed <rdar://problem/5201758> REGRESSION: Stop button enabled and other problems caused by [WebView currentURL] returning non-nil for empty window
   38362 
   38363         * WebCore.exp: export new symbol
   38364         * loader/FrameLoader.cpp:
   38365         (WebCore::FrameLoader::begin): move marker that we committed a real doc load from here...
   38366         (WebCore::FrameLoader::transitionToCommitted): ...to here
   38367         (WebCore::FrameLoader::frameHasLoaded): check that we have at least started loading something
   38368         besides the initial empty doc.
   38369         * loader/FrameLoader.h:
   38370 
   38371 2007-05-14  Justin Garcia  <justin.garcia (a] apple.com>
   38372 
   38373         Reviewed by ggaren
   38374         
   38375         <http://bugs.webkit.org/show_bug.cgi?id=13716>
   38376         REGRESSION: Three new layout test failures
   38377         
   38378         Two failures are correct.  Updated their expected results.
   38379         
   38380         In fast/events/frame-tab-focus.html, as we advance
   38381         through focusable nodes, we descend into a subframe
   38382         to focus a node and then ascend out of it into the
   38383         main frame to focus the next.  When we focus the main 
   38384         frame, the node in that frame that was previously 
   38385         focused and contains an inactive selection is focused 
   38386         momentarily because setCaretVisible tries to focus the 
   38387         node containing the caret.
   38388 
   38389         * page/Frame.cpp:
   38390         (WebCore::Frame::setCaretVisible): Don't focus the
   38391         node containing the caret. FocusController will focus
   38392         the previously focused node (which will contain the
   38393         caret) if necessary when the frame gains focus.
   38394         
   38395 2007-05-14  Maciej Stachowiak  <mjs (a] apple.com>
   38396 
   38397         Reviewed by Brady.
   38398 
   38399         - fixed <rdar://problem/5203036> REGRESSION: Assertion failure in WebCore::FrameLoader::restoreScrollPositionAndViewState() going back from fark.com Photoshop contest (13684)
   38400 
   38401         Test: http/tests/navigation/back-to-slow-frame.html
   38402         
   38403         * loader/FrameLoader.cpp:
   38404         (WebCore::FrameLoader::restoreScrollPositionAndViewState): Add needed early return.
   38405 
   38406 2007-05-14  Mitz Pettel  <mitz (a] webkit.org>
   38407 
   38408         Reviewed by Dave Hyatt.
   38409 
   38410         - fix http://bugs.webkit.org/show_bug.cgi?id=13603
   38411           style leaks in washingtonpost.com
   38412           also known as http://bugs.webkit.org/show_bug.cgi?id=8750
   38413           w3c.org: incorrect recovery from unclosed <a> elements
   38414           also known as http://bugs.webkit.org/show_bug.cgi?id=12808
   38415           Handling of misnested tags results in entire page appearing as link
   38416           also known as http://bugs.webkit.org/show_bug.cgi?id=12861
   38417           Post text renders as link
   38418 
   38419         Test: fast/parser/residual-style-close-across-n-blocks.html
   38420 
   38421         * html/HTMLParser.cpp:
   38422         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Changed to
   38423         deal with multiple block crossings instead of bailing out, by doing multiple
   38424         reparenting passes, starting from the outermost block.
   38425 
   38426 2007-05-14  Mitz Pettel  <mitz (a] webkit.org>
   38427 
   38428         Reviewed by Darin.
   38429 
   38430         - fix http://bugs.webkit.org/show_bug.cgi?id=13711
   38431           REGRESSION - Bookmark Bar text rendering changed
   38432 
   38433         No test possible since this patch affects only Safari chrome.
   38434 
   38435         * platform/Font.cpp:
   38436         (WebCore::Font::Font): Initialize m_isPlatformFont according to whether
   38437         the Font object is derived from a FontPlatformData or not.
   38438         * platform/Font.h:
   38439         (WebCore::Font::isPlatformFont): Added. Returns whether this Font was
   38440         derived from a platform font.
   38441         * platform/mac/FontCacheMac.mm:
   38442         (WebCore::FontCache::getFontDataForCharacters): Changed to not enable
   38443         synthetic bold and italic in the fallback fonts if the original font
   38444         was derived from a platform font.
   38445 
   38446 2007-05-14  Sam Weinig  <sam (a] webkit.org>
   38447 
   38448         Reviewed by Alice!
   38449 
   38450         - Patch for http://bugs.webkit.org/show_bug.cgi?id=13541
   38451           REGRESSION: Setting a DOMString attribute to JS null in the 
   38452           JS bindings should default to converting to the empty string
   38453 
   38454           Convert JS null to the empty string when passing it to an attribute that takes
   38455           a DOMString.
   38456 
   38457         Test: fast/dom/document-attribute-js-null.html
   38458         Test: fast/dom/element-attribute-js-null.html
   38459 
   38460         * bindings/js/kjs_dom.cpp:
   38461         (KJS::DOMNode::putValueProperty):
   38462         * bindings/js/kjs_html.cpp:
   38463         (KJS::JSHTMLDocument::putValueProperty):
   38464         (KJS::JSHTMLElement::objectSetter):
   38465         (KJS::JSHTMLElement::embedSetter):
   38466         (KJS::JSHTMLElement::tableSetter):
   38467         (KJS::JSHTMLElement::tableCaptionSetter):
   38468         (KJS::JSHTMLElement::tableColSetter):
   38469         (KJS::JSHTMLElement::tableSectionSetter):
   38470         (KJS::JSHTMLElement::tableRowSetter):
   38471         (KJS::JSHTMLElement::tableCellSetter):
   38472         (KJS::JSHTMLElement::frameSetSetter):
   38473         (KJS::JSHTMLElement::frameSetter):
   38474         (KJS::JSHTMLElement::iFrameSetter):
   38475         (KJS::JSHTMLElement::marqueeSetter):
   38476         (KJS::JSHTMLElement::putValueProperty):
   38477         * bindings/js/kjs_html.h:
   38478         * dom/Document.idl:
   38479         * dom/Node.idl:
   38480         * html/HTMLAnchorElement.idl:
   38481         * html/HTMLAppletElement.idl:
   38482         * html/HTMLAreaElement.idl:
   38483         * html/HTMLBRElement.idl:
   38484         * html/HTMLBaseElement.idl:
   38485         * html/HTMLBaseFontElement.idl:
   38486         * html/HTMLBlockquoteElement.idl:
   38487         * html/HTMLBodyElement.idl:
   38488         * html/HTMLButtonElement.idl:
   38489         * html/HTMLDivElement.idl:
   38490         * html/HTMLDocument.idl:
   38491         * html/HTMLElement.idl:
   38492         * html/HTMLEmbedElement.idl:
   38493         * html/HTMLFontElement.idl:
   38494         * html/HTMLFormElement.idl:
   38495         * html/HTMLFrameElement.idl:
   38496         * html/HTMLFrameSetElement.idl:
   38497         * html/HTMLHRElement.idl:
   38498         * html/HTMLHeadElement.idl:
   38499         * html/HTMLHeadingElement.idl:
   38500         * html/HTMLHtmlElement.idl:
   38501         * html/HTMLIFrameElement.idl:
   38502         * html/HTMLImageElement.idl:
   38503         * html/HTMLInputElement.idl:
   38504         * html/HTMLIsIndexElement.idl:
   38505         * html/HTMLLIElement.idl:
   38506         * html/HTMLLabelElement.idl:
   38507         * html/HTMLLegendElement.idl:
   38508         * html/HTMLLinkElement.idl:
   38509         * html/HTMLMapElement.idl:
   38510         * html/HTMLMetaElement.idl:
   38511         * html/HTMLModElement.idl:
   38512         * html/HTMLOListElement.idl:
   38513         * html/HTMLObjectElement.idl:
   38514         * html/HTMLOptGroupElement.idl:
   38515         * html/HTMLOptionElement.idl:
   38516         * html/HTMLParagraphElement.idl:
   38517         * html/HTMLParamElement.idl:
   38518         * html/HTMLQuoteElement.idl:
   38519         * html/HTMLScriptElement.idl:
   38520         * html/HTMLSelectElement.idl:
   38521         * html/HTMLStyleElement.idl:
   38522         * html/HTMLTableCaptionElement.idl:
   38523         * html/HTMLTableCellElement.idl:
   38524         * html/HTMLTableColElement.idl:
   38525         * html/HTMLTableElement.idl:
   38526         * html/HTMLTableRowElement.idl:
   38527         * html/HTMLTableSectionElement.idl:
   38528         * html/HTMLTextAreaElement.idl:
   38529         * html/HTMLTitleElement.idl:
   38530         * html/HTMLUListElement.idl:
   38531 
   38532 2007-05-14  Geoffrey Garen  <ggaren (a] apple.com>
   38533 
   38534         Trying to fix the Qt build.
   38535 
   38536         * WebCore.pro:
   38537 
   38538 2007-05-14  Geoffrey Garen  <ggaren (a] apple.com>
   38539 
   38540         Reviewed by Oliver Hunt.
   38541         
   38542         Some improvements on my last patch, suggested by Darin.
   38543 
   38544         * history/PageCache.cpp:
   38545         (WebCore::PageCache::autoreleaseNow): Swap with an empty set instead of 
   38546         building up an array and then calling clear(). This is slightly more 
   38547         efficient and the code is cleaner.
   38548 
   38549 2007-05-14  Justin Garcia  <justin.garcia (a] apple.com>
   38550 
   38551         Reviewed by darin
   38552         
   38553         <rdar://problem/5136696> Selection is removed when focusing a node in another frame
   38554         <rdar://problem/5192388> WordPress: Can't insert links/images
   38555         
   38556         Don't clear a selection when changing focus if the new
   38557         focus node is in a different frame than the old selection.
   38558 
   38559         * dom/Document.cpp:
   38560         (WebCore::Document::setFocusedNode): Moved code to clear 
   38561         selections to the FocusController, since it is Page level 
   38562         and will know about the frame/document that contained the 
   38563         old selection. Moved code to call shouldEndEditing to the 
   38564         FocusController because selections are now cleared before
   38565         calling Document::setFocusedNode and shouldEndEditing must
   38566         be called before selections are cleared.
   38567         * dom/Element.cpp:
   38568         (WebCore::Element::blur): Call FocusController::setFocusNode
   38569         instead of Document::setFocusNode, if possible.
   38570         * page/EventHandler.cpp:
   38571         (WebCore::EventHandler::dispatchMouseEvent): Ditto.
   38572         * page/FocusController.cpp:
   38573         (WebCore::relinquishesEditingFocus): Moved from Document.cpp.
   38574         (WebCore::clearSelectionIfNeeded): Ditto.  Don't clear if
   38575         the old selection is in a frame that's different than the 
   38576         one that contains the new focus node.
   38577         (WebCore::FocusController::setFocusedNode): Moved code
   38578         here from Document::setFocusedNode.
   38579         * page/Frame.cpp:
   38580         (WebCore::Frame::setFocusedNodeIfNeeded): Call
   38581         FocusController::setFocusNode.
   38582 
   38583 2007-05-14  Geoffrey Garen  <ggaren (a] apple.com>
   38584 
   38585         Reviewed by Darin Adler.
   38586         
   38587         Next step toward fixing <rdar://problem/5055182> The back cache has no 
   38588         global cap.
   38589         
   38590         Created a PageCache singleton. Right now, it only handles the timer-based
   38591         deallocation of cached pages. I plan to add HistoryItem->CachedPage tracking
   38592         and eviction logic in later patches.
   38593 
   38594         Updated for renames and file changes:
   38595 
   38596         * WebCore.exp:
   38597         * WebCore.xcodeproj/project.pbxproj:
   38598         * history/BackForwardList.cpp:
   38599         (WebCore::BackForwardList::setPageCacheSize):
   38600         (WebCore::BackForwardList::clearPageCache):
   38601 
   38602         Removed global timed release code, moved into new PageCache class, since
   38603         it's eventually going to be in charge of deciding when things are released:
   38604         
   38605         * history/HistoryItem.cpp:
   38606         (WebCore::HistoryItem::setCachedPage):
   38607         * history/HistoryItem.h:
   38608 
   38609         Folded into PageCache:
   38610         
   38611         * history/HistoryItemTimer.cpp: Removed.
   38612         * history/HistoryItemTimer.h: Removed.
   38613 
   38614         New singleton. Right now, it just handles timed release of cached pages:
   38615         
   38616         * history/PageCache.cpp: Added.
   38617         (WebCore::pageCache):
   38618         (WebCore::PageCache::PageCache):
   38619         (WebCore::PageCache::autoreleaseNowOrReschedule):
   38620         (WebCore::PageCache::autoreleaseNow):
   38621         (WebCore::PageCache::autorelease):
   38622         * history/PageCache.h: Added.
   38623 
   38624 2007-05-14  Adele Peterson  <adele (a] apple.com>
   38625 
   38626         Reviewed by Darin.
   38627 
   38628         Fix for <rdar://problem/5200081> Repro crash in PopupMenu::show clicking popup menu button after reload
   38629 
   38630         * platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::show): Added call to dismissPopup so the cell gets unattached properly.
   38631 
   38632 2007-05-14  Adele Peterson  <adele (a] apple.com>
   38633 
   38634         Reviewed by Darin.
   38635 
   38636         Remove incorrect assertion.
   38637 
   38638         * page/FrameView.cpp: (WebCore::FrameView::setContentsPos):
   38639 
   38640 2007-05-14  Anders Carlsson  <andersca (a] apple.com>
   38641 
   38642         Reviewed by Geoff.
   38643 
   38644         <rdar://problem/5172056> Regression: cannot open txt file, get broken image
   38645 
   38646         Never let plug-ins override text/plain.
   38647         
   38648         * dom/DOMImplementation.cpp:
   38649         (WebCore::DOMImplementation::createDocument):
   38650 
   38651 2007-05-14  Zack Rusin  <zrusin (a] trolltech.com>
   38652 
   38653         Reviewed by Simon.
   38654 
   38655         Do some magic to get better dependency tracking for header
   38656         files in the qmake project files.
   38657 
   38658         * ChangeLog:
   38659 
   38660 2007-05-14  Lars Knoll <lars (a] trolltech.com>
   38661 
   38662         Reviewed by Zack
   38663 
   38664         Required updates after Maciej's frame change.
   38665 
   38666         * loader/FrameLoader.cpp:
   38667         (WebCore::FrameLoader::mainReceivedCompleteError):
   38668               Call checkLoadCompleted() at the end of the method. Without it
   38669               we never get the loadDone() signal on the Qt port.
   38670         * platform/network/qt/ResourceHandleManagerQt.cpp:
   38671         (WebCore::ResourceHandleManager::receivedFinished):
   38672               Don't pass a null error to didFail().
   38673 
   38674 2007-05-14  Darin Adler  <darin (a] apple.com>
   38675 
   38676         Reviewed by Antti.
   38677 
   38678         - fix <rdar://problem/3109180> VIP: after go back, page jumps after loading even if I scrolled while loading
   38679 
   38680         * history/CachedPage.cpp: (WebCore::CachedPage::clear): Call clearFrame rather than
   38681         clearPart -- the "part" term was leftover prehistoric terminology.
   38682 
   38683         * loader/FrameLoader.cpp:
   38684         (WebCore::FrameLoader::open): Call setWasScrolledByUser(false) on the page, so that we
   38685         can detect any user scrolling that happens during the "go back" process.
   38686         (WebCore::FrameLoader::restoreScrollPositionAndViewState): Don't scroll if the view's
   38687         wasScrolledByUser flag is set.
   38688         (WebCore::FrameLoader::loadItem): Call setWasScrolledByUser(false) false when we do
   38689         a new "load" (actually just a scroll) using the same frame. Also moved the line of code that
   38690         sets m_currentHistoryItem to make this code path mroe similar to recursiveGoToItem.
   38691         (WebCore::FrameLoader::recursiveGoToItem): Ditto.
   38692 
   38693         * page/Frame.cpp:
   38694         (WebCore::Frame::~Frame): Call clearFrame rather than stting m_frame directly.
   38695         (WebCore::Frame::sendScrollEvent): Call setWasScrolledByUser(true) on FrameView. The FrameView
   38696         itself knows to ignore this if the scrolling is being done programmatically instead of by the user.
   38697 
   38698         * page/FrameView.h: Added wasScrolledByUser and setWasScrolledByUser. Also removed unneeded
   38699         include and class forward declarations, renamed clearPart to clearFrame, removed uneeded function
   38700         haveDelayedLayoutScheduled, and removed unneeded friend declarations.
   38701         * page/FrameView.cpp:
   38702         (WebCore::FrameViewPrivate::FrameViewPrivate): Added m_inProgrammaticScroll and m_wasScrolledByUser.
   38703         (WebCore::FrameViewPrivate::reset): Set m_wasScrolledByUser to false.
   38704         (WebCore::FrameView::clearFrame): Renamed from clearPart.
   38705         (WebCore::FrameView::scrollRectIntoViewRecursively): Added code to set the m_inProgrammaticScroll flag.
   38706         (WebCore::FrameView::setContentsPos): Ditto.
   38707         (WebCore::FrameView::wasScrolledByUser): Added.
   38708         (WebCore::FrameView::setWasScrolledByUser): Added. Does nothing if called when m_inProgrammaticScroll
   38709         is true.
   38710 
   38711 2007-05-14  Darin Adler  <darin (a] apple.com>
   38712 
   38713         Reviewed by Antti.
   38714 
   38715         - <rdar://problem/4865655> REGRESSION: find function does not work for the character 
   38716 
   38717         The trick was to fold case consistently in the CircularSearchBuffer class.
   38718 
   38719         The problem was that we were folding the search target string with full case folding and
   38720         the characters of the text we were searching with simple case folding. We now use full
   38721         case folding in both cases.
   38722 
   38723         * editing/TextIterator.cpp:
   38724         (WebCore::CircularSearchBuffer::CircularSearchBuffer): Changed the buffer to be a
   38725         Vector<UChar>. Added a Vector<bool> to record which characters were starts of characters
   38726         in the text we are searching. Changed the cursor to be an int rather than a pointer.
   38727         (WebCore::CircularSearchBuffer::append): New function that knows how to append multiple
   38728         characters when folding case turns one character into many -- uses the full foldCase
   38729         rather than the simplified single-character foldCase. Also removed the append function
   38730         that did multiple characters at once; that was part of an optimization we don't need.
   38731         (WebCore::CircularSearchBuffer::isMatch): Instead of asserting that the buffer is full,
   38732         changed this to return false if it's not full, which lets us fill up the buffer with
   38733         the normal loop. Also return false if the start of the buffer is half-way through a
   38734         case-folded character and updated this since m_cursor is now an integer.
   38735         (WebCore::CircularSearchBuffer::length): This returns the length in non-case-folded
   38736         characters of the characters that were appended, which may not be the same as the length
   38737         of the original target string. To do that we have to total up the character start
   38738         booleans for the current state of the circular buffer.
   38739         (WebCore::findPlainText): Streamlined the logic in a few ways: 1) Moved more of the
   38740         return value setup to the top of the function so it could be shared with the early
   38741         error exit. 2) Removed the separate "fill the buffer" logic, which allowed me to
   38742         remove some of the functions from CircularSearchBuffer and eliminated the need for
   38743         two nested loops. 3) Replaced the CharacterIterator and bool that were used to record
   38744         the location we found with integers matchStart and matchLength. 4) Got rid of the use
   38745         of goto since we don't have two nested loops any more.
   38746 
   38747 2007-05-14  Andrew Wellington  <proton (a] wiretapped.net>
   38748 
   38749         Reviewed by Darin.
   38750 
   38751         Fix http://bugs.webkit.org/show_bug.cgi?id=13275
   38752         Safari crashed when trying to login using the windows live contact control
   38753 
   38754         Check for cleared windowObj in JSAbstractEventListener::handleEvent
   38755 
   38756         * bindings/js/kjs_events.cpp:
   38757         (KJS::JSAbstractEventListener::handleEvent):
   38758 
   38759 2007-05-13  Alexey Proskuryakov  <ap (a] webkit.org>
   38760 
   38761         Reviewed by Darin.
   38762 
   38763         http://bugs.webkit.org/show_bug.cgi?id=13690
   38764         JavaScript Form Validation issue on Banco do Brasil site
   38765 
   38766         Test: fast/forms/input-setvalue-selection.html
   38767 
   38768         * html/HTMLInputElement.cpp:
   38769         (WebCore::HTMLInputElement::setValue): In other browsers, changing textInput.value
   38770         always moves the insertion point past the text. In 10.4.9 WebKit, this only worked
   38771         for inactive controls, and it never worked in ToT.
   38772 
   38773 2007-05-13  Brady Eidson  <beidson (a] apple.com>
   38774 
   38775         Reviewed by Mitz
   38776 
   38777         http://bugs.webkit.org/show_bug.cgi?id=13701
   38778 
   38779         Since HTMLInputElements register themselves with their Document for special handling, if their document
   38780         ever changes then bad things can happen.
   38781 
   38782         Unfortunately, with adoptNode, the document can change.  This has been a long standing crasher with all 
   38783         input fields but was given recent high visibility by r21430
   38784 
   38785         The solution is to add functionality for a Node to react to its owner document changing via a pair of 
   38786         virtual callbacks.  Then we can tap into those callbacks in HTMLInputElement.
   38787 
   38788         No layout test possible until http://bugs.webkit.org/show_bug.cgi?id=13672 is resolved
   38789 
   38790         * dom/Node.cpp:
   38791         (WebCore::Node::setDocument): Call willMoveToNewOwnerDocument and didMoveToNewOwnerDocument
   38792 
   38793         * dom/Node.h:
   38794         (WebCore::Node::willMoveToNewOwnerDocument): Virtual callback to a node for before an owner document change
   38795         (WebCore::Node::didMoveToNewOwnerDocument): Virtual callback to a node for after an owner document change
   38796 
   38797         * html/HTMLInputElement.cpp:
   38798         (WebCore::HTMLInputElement::~HTMLInputElement): Unconditionally unregister both for both form state
   38799           and the cache restoration callback
   38800         (WebCore::HTMLInputElement::setInputType): Change registration with the document only if we're in one
   38801         (WebCore::HTMLInputElement::attach): Don't bother registering for the callback here - that will be
   38802           handled by setInputType() or by a change in owner document
   38803         (WebCore::HTMLInputElement::willMoveToNewOwnerDocument): Unregister with the old owner document
   38804         (WebCore::HTMLInputElement::didMoveToNewOwnerDocument): Register with the new owner document
   38805         * html/HTMLInputElement.h:
   38806 
   38807 2007-05-13  Darin Adler  <darin (a] apple.com>
   38808 
   38809         * platform/mac/TextBreakIteratorInternalICUMac.mm: Fix comment typo.
   38810 
   38811 2007-05-13  Rob Buis  <buis (a] kde.org>
   38812 
   38813         Reviewed by Darin.
   38814 
   38815         http://bugs.webkit.org/show_bug.cgi?id=13529
   38816         DOM3 keyIdentifier text is incorrect
   38817 
   38818         Use 4 digits for the Unicode based key identifiers.
   38819 
   38820         * html/HTMLButtonElement.cpp:
   38821         (WebCore::HTMLButtonElement::defaultEventHandler):
   38822         * html/HTMLInputElement.cpp:
   38823         (WebCore::HTMLInputElement::defaultEventHandler):
   38824         * html/HTMLSelectElement.cpp:
   38825         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
   38826         * page/EventHandler.cpp:
   38827         (WebCore::EventHandler::defaultKeyboardEventHandler):
   38828         * page/gdk/EventHandlerGdk.cpp:
   38829         (WebCore::isKeyboardOptionTab):
   38830         * page/mac/EventHandlerMac.mm:
   38831         (WebCore::isKeyboardOptionTab):
   38832         * page/qt/EventHandlerQt.cpp:
   38833         (WebCore::isKeyboardOptionTab):
   38834         * platform/gdk/KeyEventGdk.cpp:
   38835         (WebCore::keyIdentifierForGdkKeyCode):
   38836         * platform/mac/KeyEventMac.mm:
   38837         (WebCore::keyIdentifierForKeyEvent):
   38838         * platform/qt/PlatformKeyboardEventQt.cpp:
   38839         (WebCore::keyIdentifierForQtKeyCode):
   38840         * platform/win/KeyEventWin.cpp:
   38841         (WebCore::keyIdentifierForWindowsKeyCode):
   38842         * platform/wx/KeyEventWin.cpp:
   38843         (WebCore::keyIdentifierForWindowsKeyCode):
   38844         * platform/wx/KeyboardEventWx.cpp:
   38845         (WebCore::keyIdentifierForWxKeyCode):
   38846 
   38847 2007-05-12  Darin Adler  <darin (a] apple.com>
   38848 
   38849         Reviewed by Antti.
   38850 
   38851         - fix <rdar://problem/5174903> Safari crashes opening the attached webarchive (made by OmniWeb)
   38852 
   38853         * loader/icon/IconLoader.cpp:
   38854         (WebCore::IconLoader::didReceiveResponse): Check ResourceHandle for nil before calling url() on it.
   38855         (WebCore::IconLoader::didFail): Ditto.
   38856         (WebCore::IconLoader::didFinishLoading): Ditto.
   38857 
   38858 2007-05-12  Rob Buis  <buis (a] kde.org>
   38859 
   38860         Reviewed by Oliver.
   38861 
   38862         Cleanup, get rid of the SVGStyledElement::view() call.
   38863 
   38864         * ksvg2/svg/SVGClipPathElement.cpp:
   38865         (WebCore::SVGClipPathElement::canvasResource):
   38866         * ksvg2/svg/SVGFEFloodElement.cpp:
   38867         (WebCore::SVGFEFloodElement::filterEffect):
   38868         * ksvg2/svg/SVGGradientElement.cpp:
   38869         (WebCore::SVGGradientElement::buildStops):
   38870         * ksvg2/svg/SVGStyledElement.cpp:
   38871         * ksvg2/svg/SVGStyledElement.h:
   38872 
   38873 2007-05-12  Mitz Pettel  <mitz (a] webkit.org>
   38874 
   38875         Reviewed by Hyatt.
   38876 
   38877         - fix http://bugs.webkit.org/show_bug.cgi?id=13680
   38878           Incomplete repaint of focus ring around continuation
   38879 
   38880         Test: fast/repaint/continuation-after-outline.html
   38881 
   38882         * rendering/RenderFlow.cpp:
   38883         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   38884 
   38885 2007-05-12  Oliver Hunt  <oliver (a] apple.com>
   38886 
   38887         Reviewed by Hyatt.
   38888 
   38889         <rdar://problem/4728842> Can't drag-and-drop files onto <input type="file">
   38890         
   38891         This patch allows a file to be dropped on to a file input field.  There
   38892         are a few changes for data handling and a  few to allow the data to be
   38893         threaded to the appropriate places.
   38894 
   38895         * page/DragController.cpp:
   38896         (WebCore::asFileInput):
   38897            When dropping a file onto a file input we may mouse over either 
   38898            the element itself, or the contained button element.  This method
   38899            returns the base element for the file input in either of these
   38900            cases.
   38901         (WebCore::DragController::tryDocumentDrag):
   38902            Don't try to set the drag caret to a file input.
   38903         (WebCore::DragController::concludeDrag):
   38904            Handle dropping onto a file input element.
   38905         (WebCore::DragController::canProcessDrag):
   38906            We can now process a file being dragged onto a file input element.
   38907            
   38908         * platform/DragData.h:
   38909            New accessors
   38910            
   38911         * platform/gdk/DragDataGdk.cpp:
   38912         (WebCore::DragData::containsFiles):
   38913         (WebCore::DragData::asFilenames):
   38914            Link stubs.
   38915            
   38916         * platform/mac/DragDataMac.mm:
   38917         (WebCore::DragData::containsFiles):
   38918         (WebCore::DragData::asFilenames):
   38919            Implement new accessors
   38920         (WebCore::DragData::containsCompatibleContent):
   38921            Update containsCompatibleContent to allow standalone files.
   38922           
   38923         * platform/qt/DragDataQt.cpp:
   38924         (WebCore::DragData::containsFiles):
   38925         (WebCore::DragData::asFilenames):
   38926            Link stubs
   38927                       
   38928         * rendering/RenderFileUploadControl.cpp:
   38929         (WebCore::RenderFileUploadControl::receiveDroppedFile):
   38930         * rendering/RenderFileUploadControl.h:
   38931            For security reasons we don't have an api to allow us to set 
   38932            a value directly on a file input -- attempts to do so are
   38933            blocked.  By adding a method to set the target through the 
   38934            render we bypass such restrictions, and ensure the renderer
   38935            is updated correctly.
   38936 
   38937 2007-05-12  Mitz Pettel  <mitz (a] webkit.org>
   38938 
   38939         Reviewed by Hyatt.
   38940 
   38941         - fix http://bugs.webkit.org/show_bug.cgi?id=13695
   38942           REGRESSION (r21387): Replaced elements' highlight rects are wrongly positioned
   38943 
   38944         Test: fast/replaced/selection-rect.html
   38945 
   38946         Also fixes the same problem with list markers, covered by existing test
   38947         fast/lists/markers-in-selection.html.
   38948 
   38949         * rendering/RenderListMarker.cpp:
   38950         (WebCore::RenderListMarker::selectionRect):
   38951         * rendering/RenderReplaced.cpp:
   38952         (WebCore::RenderReplaced::selectionRect):
   38953 
   38954 2007-05-12  Mitz Pettel  <mitz (a] webkit.org>
   38955 
   38956         Reviewed by Darin.
   38957 
   38958         - fix http://bugs.webkit.org/show_bug.cgi?id=13685
   38959           REGRESSION (r21368-r21388): Highlighting text in scrolled textareas behaves oddly
   38960 
   38961         Test: fast/repaint/text-selection-rect-in-overflow.html
   38962 
   38963         * rendering/RenderText.cpp:
   38964         (WebCore::RenderText::selectionRect):
   38965 
   38966 2007-05-12  Brady Eidson  <beidson (a] apple.com>
   38967 
   38968         Rubber stamped by Mitz
   38969 
   38970         * html/HTMLInputElement.cpp:
   38971         (WebCore::HTMLInputElement::attach): unregister->register - I screwed this one up in last minute renaming
   38972           before committing  :(
   38973 
   38974 2007-05-11  Brady Eidson  <beidson (a] apple.com>
   38975 
   38976         Reviewed by Darin and Geoff
   38977 
   38978         Fix for http://bugs.webkit.org/show_bug.cgi?id=13630
   38979         and
   38980         <rdar://problem/4873628>
   38981 
   38982         Back/Forward cache should work with pages with login fields.
   38983 
   38984         First change is to relocate the "useSecureKeyboardEntry" flag to the document.  This lets
   38985         it persist through page cache transitions and it is truly a per-document concept more than
   38986         per-frame anyways since its the document that has a password field, not the frame.
   38987 
   38988         Second change is to introduce the concept of an Element getting a "didRestoreFromCache()" callback.
   38989         The idea is for elements to register with the document if they need work to be done when the
   38990         page comes out of the back/forward cache.  Currently the only client of this service is 
   38991         HTMLInputElements that are input type == PASSWORD.  Such an element's implementation for this
   38992         method is to call reset()
   38993 
   38994         Finally, after a page is restored from the cache we have the document send the didRestoreFromCache()
   38995         callback to its registered Elements.  The whole design is to clear the password fields after 
   38996         restoring the page instead of when caching the page because we want to defer work for the common
   38997         case - there shouldn't be extra work here just to navigate away from a page when the common case
   38998         is that you'll never go back!
   38999 
   39000         No layout tests possible until http://bugs.webkit.org/show_bug.cgi?id=13672 is resolved
   39001 
   39002         * dom/Document.cpp:
   39003         (WebCore::Document::Document):
   39004         (WebCore::Document::registerForDidRestoreFromCacheCallback): Add an Element to the special page-restoration callback list
   39005         (WebCore::Document::unregisterForDidRestoreFromCacheCallback): Remove such an element
   39006         (WebCore::Document::didRestoreFromCache): Called by FrameLoader - dispatch to all the registered elements
   39007         (WebCore::Document::setUseSecureKeyboardEntryWhenActive): Set the local flag and call updateSecureKeyboardEntryIfActive
   39008           on the Frame
   39009         (WebCore::Document::useSecureKeyboardEntryWhenActive): Return the flag
   39010 
   39011         * dom/Document.h:
   39012         (WebCore::Document::unregisterFormElementWithState): Renamed
   39013 
   39014         * dom/Element.h:
   39015         (WebCore::Element::didRestoreFromCache): Added virtual base method
   39016 
   39017         * html/HTMLInputElement.cpp:
   39018         (WebCore::HTMLInputElement::~HTMLInputElement): Deregister from the document if inputType == PASSWORD
   39019         (WebCore::HTMLInputElement::dispatchFocusEvent): Set the flag on the document, not the frame
   39020         (WebCore::HTMLInputElement::dispatchBlurEvent): Ditto
   39021         (WebCore::HTMLInputElement::setInputType): If changing to/from PASSWORD, register/deregister in the document accordingly
   39022         (WebCore::HTMLInputElement::attach): Call registerForDidRestoreFromCacheCallback(this) instead of passwordFieldAdded()
   39023         (WebCore::HTMLInputElement::didRestoreFromCache): Call reset();
   39024         * html/HTMLInputElement.h:
   39025 
   39026         * html/HTMLSelectElement.cpp:
   39027         (WebCore::HTMLSelectElement::~HTMLSelectElement): Renamed deregisterFormElementWithState to unregisterFormElementWithState
   39028         * html/HTMLTextAreaElement.cpp:
   39029         (WebCore::HTMLTextAreaElement::~HTMLTextAreaElement): Ditto
   39030 
   39031         * loader/FrameLoader.cpp:
   39032         (WebCore::FrameLoader::canCachePage): Remove the check for password fields - they're allowed now!
   39033         (WebCore::FrameLoader::opened): Tell the document to dispatch to the registered elements
   39034         (WebCore::FrameLoader::saveDocumentState): Remove the check for password fields.  Turns out that when we grab a copy a the
   39035           form state we're only copying the state of form elements that are registered with the Document - and that set 
   39036           explicitly excludes Password elements
   39037 
   39038         * page/Frame.cpp:
   39039         (WebCore::Frame::setDocument): If the frame is active, set the setUseSecureKeyboardEntry based on the setting contained
   39040           in the new document
   39041         (WebCore::Frame::updateSecureKeyboardEntryIfActive): Notification for the secure entry flag changing - if the Frame is
   39042           active, then update to the new setting from the document
   39043         (WebCore::Frame::setIsActive): Grab the useSecureKeyboardEntry flag from the document instead of FramePrivate
   39044         (WebCore::FramePrivate::FramePrivate):
   39045         * page/Frame.h:
   39046         * page/FramePrivate.h:
   39047 
   39048 2007-05-12  David Hyatt  <hyatt (a] apple.com>
   39049 
   39050         FIx for 13696.  Rework residual style to be much more aggressive about reopening.  Added
   39051         a comprehensive test case of HTML tags to guarantee we match Firefox.  We now have an exclusion
   39052         set rather than an inclusion set, so unknown future tags will also participate in residual style.
   39053 
   39054         Reviewed by olliej
   39055 
   39056         fast/invalid/residual-style.html
   39057 
   39058 2007-05-12  David Hyatt  <hyatt (a] apple.com>
   39059 
   39060         Fix for bug 12740, bmw.com doesn't work.  We were missing a rule that is covered by the HTML5
   39061         parsing spec.  A <table> encountered while inside stray table content should close up the
   39062         table responsible for the stray content and start the new table as a sibling of the first.
   39063 
   39064         Reviewed by mjs
   39065 
   39066         fast/invalid/table-inside-stray-table-content.html
   39067 
   39068 2007-05-12  Eric Seidel  <eric (a] webkit.org>
   39069 
   39070         Reviewed by mjs.
   39071 
   39072         Crash starting Safari with JavaScript disabled.
   39073         http://bugs.webkit.org/show_bug.cgi?id=13691
   39074         
   39075         Test: none possible.
   39076 
   39077         * page/mac/FrameMac.mm:
   39078         (WebCore::Frame::cleanupPlatformScriptObjects): NULL check d->m_script
   39079 
   39080 2007-05-11  David Hyatt  <hyatt (a] apple.com>
   39081 
   39082         Fix for http://bugs.webkit.org/show_bug.cgi?id=13688, Colloquy is broken!
   39083 
   39084         Make sure to adjust the baseline of a percentage height table cell's row if the
   39085         cell flexes (and lowers the baseline).
   39086 
   39087         Reviewed by olliej
   39088 
   39089         fast/tables/vertical-align-baseline-readjust.html
   39090 
   39091         (WebCore::RenderTableSection::calcRowHeight):
   39092         (WebCore::RenderTableSection::layoutRows):
   39093         * rendering/RenderTableSection.h:
   39094         (WebCore::RenderTableSection::getBaseline):
   39095         
   39096 2007-05-11  David Hyatt  <hyatt (a] apple.com>
   39097 
   39098         Make sure focus rings are always using the exterior style, regardless
   39099         of what the OS default is.
   39100 
   39101         Reviewed by beth
   39102 
   39103         * rendering/RenderThemeMac.mm:
   39104         (WebCore::RenderThemeMac::checkbox):
   39105         (WebCore::RenderThemeMac::radio):
   39106         (WebCore::RenderThemeMac::popupButton):
   39107         (WebCore::RenderThemeMac::search):
   39108         (WebCore::RenderThemeMac::sliderThumbHorizontal):
   39109         (WebCore::RenderThemeMac::sliderThumbVertical):
   39110 
   39111 2007-05-11  Oliver Hunt  <oliver (a] apple.com>
   39112 
   39113         Reviewed by Hyatt.
   39114         
   39115         <rdar://problem/5195473> REGRESSION: "Curly quote" fails to 
   39116         be displayed correctly even when META tag specifies charset=x-mac-roman
   39117 
   39118 
   39119         * platform/TextCodecICU.cpp:
   39120         (WebCore::TextCodecICU::registerExtendedEncodingNames):
   39121         Register the xmacroman encoding
   39122 
   39123 2007-05-11  Maciej Stachowiak  <mjs (a] apple.com>
   39124 
   39125         Reviewed by Hyatt.
   39126 
   39127         REGRESSION (r21367): Crash due to null document deref when closing bookmarks
   39128         http://bugs.webkit.org/show_bug.cgi?id=13662
   39129 
   39130         * loader/FrameLoader.cpp:
   39131         (WebCore::FrameLoader::provisionalLoadStarted): Remove some useless and now harmful
   39132         code - there's no need to clear in this case.
   39133 
   39134 2007-05-11  Oliver Hunt  <oliver (a] apple.com>
   39135 
   39136         GDK Build fix
   39137 
   39138         * ChangeLog:
   39139         * dom/Document.cpp:
   39140         (WebCore::Document::importNode):
   39141 
   39142 2007-05-11  Maciej Stachowiak  <mjs (a] apple.com>
   39143 
   39144         Reviewed by Geoff.
   39145         
   39146         - fixed <rdar://problem/5197621> closing second window crashed webkit (13660)
   39147         http://bugs.webkit.org/show_bug.cgi?id=13660
   39148 
   39149         No test case; not testable.
   39150 
   39151         * page/mac/FrameMac.mm:
   39152         (WebCore::Frame::cleanupPlatformScriptObjects): Check if the interpreter is null;
   39153         if so, we don't want to do work that may lazily create it while the Frame is being
   39154         destroyed.
   39155 
   39156 2007-05-11  Oliver Hunt  <oliver (a] apple.com>
   39157 
   39158         Reviewed by Brady.
   39159         
   39160         <rdar://problem/5017375> WebKit should disable SVG in Dashboard
   39161         
   39162         Prevents an SVG document or element from being created when in
   39163         dashboard compatibility mode.
   39164         
   39165         Manually parsing, or using XHR to created a document removes our 
   39166         ability to detect Dashboard compatibility mode, so we also perform
   39167         the check when importing nodes from one document into another.
   39168 
   39169         * dom/DOMImplementation.cpp:
   39170         (WebCore::DOMImplementation::createDocument):
   39171           Don't create an SVGDocument if we're in dashboard compatibility mode
   39172           
   39173         * dom/Document.cpp:
   39174         (WebCore::Document::importNode):
   39175           Don't import SVG nodes if we're in dashboard compatibility mode
   39176           
   39177         * ksvg2/scripts/make_names.pl:
   39178           Don't create SVG elements for documents that are in dashboard
   39179           compatibility mode
   39180 
   39181 2007-05-11  Holger Hans Peter Freyther  <zecke (a] selfish.org>
   39182 
   39183         Reviewed by Maciej.
   39184 
   39185         Bug 13676: [cairo/gdk] Provide implementation for ImageBufferCairo
   39186         http://bugs.webkit.org/show_bug.cgi?id=13676
   39187 
   39188         There are no test cases that explicitly cover platform/graphics at present.
   39189 
   39190         * platform/graphics/ImageBuffer.h: Add cairo bits
   39191         * platform/graphics/cairo/ImageBufferCairo.cpp: Untested implementation of the ImagerBuffer using the image_surface
   39192         (WebCore::ImageBuffer::create): Create a reasonable sized surface
   39193         (WebCore::ImageBuffer::ImageBuffer): Use a cairo_surface and create a GraphicsContext. GraphicsContext takes the cairo_t ownership
   39194         (WebCore::ImageBuffer::~ImageBuffer): Unref the surface
   39195         (WebCore::ImageBuffer::context): simply return the GraphicsContext, it should be possible to directly draw on it.
   39196 
   39197 2007-05-11  Mitz Pettel  <mitz (a] webkit.org>
   39198 
   39199         Release build fix.
   39200 
   39201         * platform/mac/ShapeArabic.c:
   39202         (shapeArabic):
   39203 
   39204 2007-05-11  Geoffrey Garen  <ggaren (a] apple.com>
   39205 
   39206         Reviewed by Darin Adler.
   39207 
   39208         Removed +[WebScriptObject scriptObjectForJSObject:frame:] because the
   39209         WebScriptObject API has some serious limitations that make it not ready
   39210         to be used everywhere the C API is used. Hopefully we can add a good
   39211         ObjC API in the future that doesn't suffer from this problem.
   39212         
   39213         Preliminary notes about these limitations are in <rdar://problem/4876466>.
   39214 
   39215         * bindings/objc/WebScriptObject.mm:
   39216         * bindings/objc/WebScriptObjectPendingPublic.h:
   39217 
   39218 2007-05-11  Mitz Pettel  <mitz (a] webkit.org>
   39219 
   39220         Reviewed by Darin.
   39221 
   39222         - fix http://bugs.webkit.org/show_bug.cgi?id=13635
   39223           REGRESSION: Cannot log in to webmail.co.za account
   39224 
   39225         Test: fast/dom/HTMLOptionElement/option-text.html
   39226 
   39227         Despite the specification that the 'text' attribute of HTMLOptionElement
   39228         is "the text contained within the option element", other browsers return
   39229         the text as displayed in the list box or popup, which is without leading,
   39230         trailing and collapsible whitespace.
   39231 
   39232         * html/HTMLOptionElement.cpp:
   39233         (WebCore::HTMLOptionElement::text): Moved the code to trim and collapse
   39234         whitespace and replace backslashes with the currency symbol into this
   39235         function.
   39236         (WebCore::HTMLOptionElement::optionText): Left only the code that adds
   39237         the leading spaces for grouped options. Removed code that, in quirks mode,
   39238         displayed the label if the option element contained no text. That behavior
   39239         did not match WinIE and the description of the expected behavior in
   39240         fast/forms/HTMLOptionElement_label06.html.
   39241 
   39242 2007-05-11  Mitz Pettel  <mitz (a] webkit.org>
   39243 
   39244         Reviewed by Darin.
   39245 
   39246         - fix http://bugs.webkit.org/show_bug.cgi?id=13572
   39247           Arabic characters are not correctly joined when using Arial
   39248 
   39249         No tests added because standard fonts do not use the character-based shaping
   39250         code path.
   39251 
   39252         Added shapeArabic(), a private version of u_shapeArabic() from ICU,
   39253         patched to shape Arabic characters used in Persian, Urdu, Sindhi, etc.
   39254         (whose contextual forms belong to the Arabic Presentation Forms-A block).
   39255 
   39256         * WebCore.xcodeproj/project.pbxproj: Added ShapeArabic.{c,h}.
   39257         * platform/mac/FontMac.mm:
   39258         (WebCore::shapeArabic): Changed to call shapeArabic() instead of u_shapeArabic().
   39259         * platform/mac/ShapeArabic.c: Added. Based on ushape.c from ICU, with
   39260         additional shaping data and logic for Arabic Presentation Forms-A. Removed
   39261         many options that are not used in WebKit and code that malloc()ed a temporary
   39262         buffer and reversed the string.
   39263         (changeLamAlef):
   39264         (specialChar):
   39265         (getLink):
   39266         (isTashkeelChar):
   39267         (shapeUnicode):
   39268         (shapeArabic):
   39269         * platform/mac/ShapeArabic.h: Added.
   39270 
   39271 2007-05-11  Darin Adler  <darin (a] apple.com>
   39272 
   39273         Reviewed by Mitz.
   39274 
   39275         - fix http://bugs.webkit.org/show_bug.cgi?id=7452
   39276           <rdar://problem/3211749> line breaks ignored after <wbr> in <pre> block (affects livejournal.com)
   39277 
   39278         - fix http://bugs.webkit.org/show_bug.cgi?id=10657
   39279           <rdar://problem/4274588> <wbr> tags are ignored
   39280 
   39281         - fix http://bugs.webkit.org/show_bug.cgi?id=12689
   39282           <wbr> :before/:after content causes line break
   39283 
   39284         - fix <rdar://problem/5127366> DOM tree isn't correct when parsing with <wbr>
   39285 
   39286         Test: fast/text/wbr-pre.html
   39287         Test: fast/text/wbr.html
   39288         Test: fast/css-generated-content/wbr-with-before-content.html
   39289         Test: fast/parser/parse-wbr.html
   39290 
   39291         * html/HTMLElement.h:
   39292         * html/HTMLElement.cpp:
   39293         (WebCore::HTMLElement::endTagRequirement): Use the same end tag requirement for a <wbr>
   39294         element as for a <br> element, TagStatusForbidden.
   39295         (WebCore::HTMLElement::tagPriority): Use the same priority for a <wbr> element as for a
   39296         <br> element, 0.
   39297         (WebCore::HTMLElement::createRenderer): Added. Create a RenderWordBreak to trigger the
   39298         new rendering code paths.
   39299 
   39300         * rendering/RenderFlow.h: Add a virtual isWordBreak so we can detect RenderWordBreak.
   39301 
   39302         * rendering/RenderWordBreak.h: Added.
   39303         * rendering/RenderWordBreak.cpp: Added.
   39304 
   39305         * WebCore.pro: Added new files.
   39306         * WebCore.xcodeproj/project.pbxproj: Added new files.
   39307         * WebCoreSources.bkl: Added new files.
   39308 
   39309         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::calcInlinePrefWidths): Reset the
   39310         line when we hit a <wbr>.
   39311         * rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): Add a line break when
   39312         we hit a <wbr>.
   39313 
   39314         * dom/Node.cpp: (Node::createRendererIfNeeded): Fix a null check for the case where
   39315         createRenderer returns 0 even though rendererIsNeeded returned true. I can't reproduce
   39316         it on demand, but while running layout tests I hit this once. Since there was already
   39317         a null check here, I rearranged it so it guards all the code that uses the renderer.
   39318         Later we might want to figure out under exactly what circumstances rendererIsNeeded
   39319         will return true but createRenderer return 0 and consider eliminating them.
   39320 
   39321 2007-05-11  David Hyatt  <hyatt (a] apple.com>
   39322 
   39323         Fix for bug 13675, focus rings don't repaint properly on editable
   39324         continuations.
   39325 
   39326         Reviewed by olliej
   39327 
   39328         (WebCore::InlineFlowBox::paint):
   39329         * rendering/RenderBlock.cpp:
   39330         (WebCore::RenderBlock::paintObject):
   39331         (WebCore::continuationOutlineTable):
   39332         (WebCore::RenderBlock::addContinuationWithOutline):
   39333         (WebCore::RenderBlock::paintContinuationOutlines):
   39334         * rendering/RenderBlock.h:
   39335         * rendering/RenderBox.cpp:
   39336         (WebCore::RenderBox::absoluteClippedOverflowRect):
   39337         * rendering/RenderObject.cpp:
   39338         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   39339         (WebCore::RenderObject::absoluteOutlineBox):
   39340 
   39341 2007-05-11  Rob Buis  <buis (a] kde.org>
   39342 
   39343         Reviewed by Oliver.
   39344 
   39345         Cleanups mostly inspired by Coverage results.
   39346 
   39347         * ksvg2/css/SVGCSSParser.cpp:
   39348         (WebCore::CSSParser::parseSVGValue):
   39349         (WebCore::CSSParser::parseSVGStrokeDasharray):
   39350         * ksvg2/css/SVGRenderStyleDefs.cpp:
   39351         (StyleFillData::operator==):
   39352         * ksvg2/svg/SVGColor.cpp:
   39353         (WebCore::SVGColor::colorFromRGBColorString):
   39354 
   39355 2007-05-11  Holger Freyther <freyther (a] kde.org>
   39356 
   39357         Reviewed by Mark Rowe.
   39358 
   39359         Move libcurl configuration into WebKit.pri so it will be used by GdkLauncher.
   39360 
   39361         * WebCore.pro:
   39362 
   39363 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39364 
   39365         <rdar://problem/5015522> Bounds rectangle of unloaded images is 
   39366         drawn briefly while loading
   39367         
   39368         When the image is null and has no size, don't draw the grey
   39369         rectangles or alt text any more.  Wait for an actual error to
   39370         occur with the image before we start showing alt text and borders.
   39371 
   39372         (Images with no source set at all will continue to show alt text and
   39373         borders immediately.)
   39374 
   39375         Reviewed by bradee-oh
   39376 
   39377         * rendering/RenderImage.cpp:
   39378         (WebCore::RenderImage::paint):
   39379 
   39380 2007-05-10  Mitz Pettel  <mitz (a] webkit.org>
   39381 
   39382         Reviewed by Darin.
   39383 
   39384         - fix http://bugs.webkit.org/show_bug.cgi?id=13655
   39385           Incomplete repaint when text-shadow is used in a render layer with explicit height
   39386 
   39387         Test: fast/repaint/layer-full-repaint.html
   39388 
   39389         Removed custom repaint logic from RenderLayer. repaintAfterLayoutIfNeeded()
   39390         knows how to do everything we need now. The only catch is that we cannot
   39391         rely on its "do a full repaint if the object needs layout" behavior, since
   39392         by the time we call it, the needs layout flag has been reset. The solution
   39393         is to cache the need for a full repaint in the layer.
   39394 
   39395         * page/FrameView.cpp:
   39396         (WebCore::FrameView::layout): Removed call to checkForRepaintOnResize().
   39397         * rendering/RenderLayer.cpp:
   39398         (WebCore::RenderLayer::checkForRepaintOnResize): Removed.
   39399         (WebCore::RenderLayer::RenderLayer): Replaced the m_repaintOverflowOnResize
   39400         flag with a m_needsFullRepaint flag, which indicates that the layer needs
   39401         to do a full repaint in the next call to updateLayerPositions().
   39402         (WebCore::RenderLayer::updateLayerPositions): Simplified the repaint logic.
   39403         Either call repaintAfterLayoutIfNeeded() or do a full repaint, depending on
   39404         m_needsFullRepaint.
   39405         * rendering/RenderLayer.h:
   39406         (WebCore::RenderLayer::setNeedsFullRepaint):
   39407         * rendering/RenderObject.cpp:
   39408         (WebCore::RenderObject::setNeedsLayout): Mark the layer for full repaint.
   39409 
   39410 2007-05-10  Justin Garcia  <justin.garcia (a] apple.com>
   39411 
   39412         Reviewed by ggaren
   39413 
   39414         <rdar://problem/5195166> Incorrect proposedRange DOMRange passed to WebViewEditing delegate
   39415         
   39416         In setModifyBias, we must cache the start and the end 
   39417         because the calls to setBase and setExtent can modify 
   39418         them (added a testcase).
   39419         The temporary SelectionController that we use in modify() to
   39420         produce the proposed range that will be passed to 
   39421         shouldChangeSelectedDOMRange must have the same m_modifyBias
   39422         as the original SelectionController, or else when the 
   39423         modification is performed, setModifyBias can swap the base 
   39424         and the extent incorrectly (added a testcase).
   39425         Renamed m_modifyBias to m_lastChangeWasHorizontalExtension.
   39426         Renamed setModifyBias to willBeModified.
   39427 
   39428         * editing/SelectionController.cpp:
   39429         (WebCore::SelectionController::SelectionController):
   39430         (WebCore::SelectionController::setSelection):
   39431         (WebCore::SelectionController::willBeModified):
   39432         (WebCore::SelectionController::modify):
   39433         * editing/SelectionController.h:
   39434         (WebCore::SelectionController::setLastChangeWasHorizontalExtension):
   39435         * page/EventHandler.cpp:
   39436         (WebCore::EventHandler::handleMousePressEventSingleClick):
   39437         (WebCore::EventHandler::updateSelectionForMouseDragOverPosition):
   39438 
   39439 2007-05-10  Geoffrey Garen  <ggaren (a] apple.com>
   39440 
   39441         Reviewed by Darin Adler.
   39442 
   39443         "IconDatabase::sharedIconDatabase()" => "iconDatabase()" for terseness,
   39444         in the style of WebCore::cache().
   39445 
   39446         * WebCore.exp:
   39447         * history/HistoryItem.cpp: Removed retainIconInDatabase because calling
   39448         "retain" in order to release something is really confusing and, now that
   39449         iconDatabase() is more terse, we don't need this helper to shorten the
   39450         syntax. (The isEmpty() check is also done by the database, so we don't 
   39451         need it either.)
   39452 
   39453         (WebCore::IconDatabase::~IconDatabase): ASSERT that our destructor isn't
   39454         called. We're a singleton, so it's confusing to have tear-down code.
   39455 
   39456 2007-05-10  Adele Peterson  <adele (a] apple.com>
   39457 
   39458         Reviewed by Hyatt.
   39459 
   39460         WebCore part of fix for <rdar://problem/4100616> Doing a "find" in RSS doesn't scroll to result
   39461 
   39462         Test: fast/overflow/scroll-nested-positioned-layer-in-overflow.html
   39463 
   39464         Merged visibleSelectionRect into selectionRect.  selectionRect() now takes an argument to determine
   39465         whether or not to return a rect that clips to the visible content.  This change makes all of the implementations of selectionRect
   39466         consistent by having them all consider the repaint rect when clipping to visible content.
   39467 
   39468         * page/Frame.cpp:
   39469         (WebCore::Frame::revealSelection): Call selectionRect with clipToVisibleContent = false, so we can get a rect that's not visible to reveal.
   39470         (WebCore::Frame::selectionRect): Added clipToVisibleContent argument, and merged visibleSelectionRect into this method.
   39471         (WebCore::Frame::setIsActive): Use selectionRect instead of visibleSelectionRect.
   39472         * page/Frame.h:
   39473         * page/mac/FrameMac.mm: (WebCore::Frame::selectionImage): Update layout before creating the image.  Use selectionRect instead of visibleSelectionRect.
   39474         * page/DragController.cpp: (WebCore::dragLocForSelectionDrag): Use selectionRect instead of visibleSelectionRect.
   39475 
   39476         * rendering/RenderBR.h: (WebCore::RenderBR::selectionRect): Updated argument.
   39477         * rendering/RenderBlock.h: (WebCore::RenderBlock::selectionRect): ditto.
   39478         * rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::selectionRect): ditto.
   39479         * rendering/RenderSVGInlineText.h: ditto.
   39480         * rendering/RenderObject.h: 
   39481         (WebCore::RenderObject::selectionRect): ditto.
   39482         (WebCore::RenderObject::SelectionInfo::SelectionInfo): ditto.
   39483         * rendering/RenderView.cpp:
   39484         (WebCore::RenderView::selectionRect): ditto.
   39485         (WebCore::RenderView::setSelection): ditto.
   39486         * rendering/RenderView.h:
   39487 
   39488         * rendering/RenderText.h:
   39489         * rendering/RenderText.cpp: (WebCore::RenderText::selectionRect): Only call computeAbsoluteRepaintRect when clipping to visible content.
   39490         Otherwise, just adjust the rect to the correct position.
   39491         * rendering/RenderListMarker.h:
   39492         * rendering/RenderListMarker.cpp: (WebCore::RenderListMarker::selectionRect):
   39493           To match what we do in RenderText, if we're trying to clip to visible content, just call computeAbsoluteRepaintRect.
   39494         * rendering/RenderReplaced.h:
   39495         * rendering/RenderReplaced.cpp: (WebCore::RenderReplaced::selectionRect): ditto.
   39496 
   39497         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollRectToVisible): Check for a parent layer at the beginning, so we can try to scroll all of our parent layers 
   39498           first, before trying to scroll the top level view.  Also, don't try to scroll overflow layers that have -webkit-line-clamp restricting the height.
   39499           This will prevent us from revealing text hidden by the slider in Safari RSS.
   39500 
   39501         * WebCore.exp: Update symbols for WebKit.
   39502 
   39503 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39504 
   39505         Fix for:
   39506 
   39507         <rdar://problem/5195272> REGRESSION: broke outline rings for continuations 
   39508         with empty inline containers
   39509         
   39510         http://bugs.webkit.org/show_bug.cgi?id=13667
   39511 
   39512         Make sure to only include collapsed top/bottom margins of the block portion
   39513         of the continuation if we know for sure that we have inline line boxes before
   39514         and after that would prevent the collapse from going further.
   39515 
   39516         In plain English: the focus rings were too tall. :)
   39517 
   39518         Reviewed by beth
   39519 
   39520         * rendering/RenderFlow.cpp:
   39521         (WebCore::RenderFlow::addFocusRingRects):
   39522 
   39523 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39524 
   39525         Fix for:
   39526 
   39527         <rdar://problem/5067235> REGRESSION: Excessively wide table, impossible to resize
   39528 
   39529         The table used white-space: pre-wrap, which is supported only by WebKit.  There
   39530         was a bug with the computation of min pref width for pre-wrap text.
   39531 
   39532         Reviewed by mitzpettel
   39533 
   39534         fast/text/white-space/pre-wrap-line-test.html
   39535 
   39536         * rendering/RenderText.cpp:
   39537         (WebCore::RenderText::calcPrefWidths):
   39538 
   39539 2007-05-10  Brady Eidson  <beidson (a] apple.com>
   39540 
   39541         Reviewed by Oliver
   39542 
   39543         Cleanup from my earlier Java Applet patch.  We should keep a central location to query if 
   39544         a mime type counts as a Java Applet
   39545 
   39546         * html/HTMLObjectElement.cpp:
   39547         (WebCore::HTMLObjectElement::containsJavaApplet): Query MimeTypeRegistry on the type
   39548 
   39549         * platform/MimeTypeRegistry.cpp:
   39550         (WebCore::MimeTypeRegistry::isSupportedImageMIMEType): Update style
   39551         (WebCore::MimeTypeRegistry::isSupportedImageResourceMIMEType): Ditto
   39552         (WebCore::MimeTypeRegistry::isSupportedNonImageMIMEType): Ditto
   39553         (WebCore::MimeTypeRegistry::isJavaAppletMIMEType): Perform the Java Applet check
   39554         * platform/MimeTypeRegistry.h:
   39555 
   39556         * rendering/RenderPartObject.cpp:
   39557         (WebCore::RenderPartObject::updateWidget): Query MimeTypeRegistry on the type
   39558 
   39559 2007-05-10  Patti Hoa  <patti (a] apple.com>
   39560 
   39561         Reviewed by Darin.
   39562         
   39563         <rdar://problem/4720109> Sentence textMarker methods do not work well with empty lines
   39564         
   39565         * bridge/mac/WebCoreAXObject.mm:
   39566         (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
   39567         (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
   39568         When a marker position is given, the sentence ax methods automatically shift position by one to make sure
   39569         not to ask for the current sentence again.  This is generally fine except when the position
   39570         shift over an empty line break, which is should be considered a separate sentence. In this case, 
   39571         if we used the shifted position to ask for sentence boundary, ICU parser is not given the text data
   39572         containing the newline to correctly determine the sentence boundary.  Since the ax sentence method is 
   39573         explicitly shifting the position to ask for sentence boundary, it should make sure not to skip over important
   39574         character that can be a standalone sentence.
   39575         * editing/visible_units.cpp:
   39576         (WebCore::nextBoundary):
   39577         When determining boundary, don't stop on a collapsed range, such as newline.  
   39578         Just pick the next valid position to use as boundary.
   39579 
   39580 2007-05-10  Maciej Stachowiak  <mjs (a] apple.com>
   39581 
   39582         Reviewed by Oliver.
   39583 
   39584         - WebCore part of fix for:
   39585         <rdar://problem/5063277> blank screen after login to Citibank Online (accessing document before frame starts loading cancels load)
   39586         <rdar://problem/5159541> REGRESSION (r20972): Wall Street Journal pages replaced by advertisements (13465)
   39587 
   39588         The basic approach is to have Frames start out containing an empty document instead of absolutely nothing,
   39589         so there is no need to initialize them on demand. Various side effects of that cause both of these bugs.
   39590         
   39591         However, this caused many regressions so I had to fix the fallout.
   39592         
   39593         * WebCore.exp: fix symbol exports
   39594         * bindings/js/kjs_window.cpp:
   39595         (KJS::createNewWindow): useless "created" bool (we don't need it here)
   39596         (KJS::WindowFunc::callAsFunction): detect if we created a new frame, because if so,
   39597         we need to initialize the domain (can't count on it not having a document), also
   39598         don't try to make a new document for it.
   39599         Also, stop properly.
   39600         * css/cssstyleselector.cpp:
   39601         (WebCore::CSSStyleSelector::CSSStyleSelector): don't count on document having a view here
   39602         * html/HTMLObjectElement.cpp:
   39603         (WebCore::HTMLObjectElement::isImageType): Ask client, to match how other <object> renderer
   39604         decisions are made.
   39605         * loader/FrameLoader.cpp:
   39606         (WebCore::FrameLoader::FrameLoader): Initialize new data members
   39607         (WebCore::FrameLoader::init): Do the slightly tricky sequence of steps to properly make
   39608         an empty document with everything hooked up.
   39609         (WebCore::FrameLoader::createWindow): Added "created" bool.
   39610         (WebCore::FrameLoader::stopLoading): (whitespace change)
   39611         (WebCore::FrameLoader::begin): Don't try to create an empty document.
   39612         (WebCore::FrameLoader::finishedParsing): If creating an initial empty document, don't
   39613         do any of this work.
   39614         (WebCore::FrameLoader::checkCompleted): Do checkLoadComplete() as well.
   39615         (WebCore::FrameLoader::baseURL): don't check for null document
   39616         (WebCore::FrameLoader::baseTarget): ditto
   39617         (WebCore::FrameLoader::completeURL): ditto
   39618         (WebCore::FrameLoader::didTellBridgeAboutLoad): ditto
   39619         (WebCore::FrameLoader::scheduleLocationChange): determine duringLoad differently; doc won't
   39620         be null.
   39621         (WebCore::FrameLoader::gotoAnchor): don't check for null document
   39622         (WebCore::FrameLoader::canTarget): don't check for null document
   39623         (WebCore::FrameLoader::stopForUserCancel): new method for explicit stops like window.stop().
   39624         (WebCore::FrameLoader::transitionToCommitted): check for pre-loaded state properly
   39625         (WebCore::FrameLoader::createEmptyDocument): removed
   39626         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): don't send delegate callbacks when making initial
   39627         doc.
   39628         (WebCore::FrameLoader::tokenizerProcessedData): Assume document; just checkCompleted now that it
   39629         does checkLoadComplete.
   39630         (WebCore::FrameLoader::receivedMainResourceError): assume document
   39631         (WebCore::FrameLoader::saveDocumentState): Assume there's a document except during initial load
   39632         (WebCore::FrameLoader::mainReceivedCompleteError): do checkCompleted, not checkLoadComplete
   39633         (WebCore::FrameLoader::continueLoadWithData): assume document
   39634         * loader/FrameLoader.h:
   39635         * loader/MainResourceLoader.cpp:
   39636         (WebCore::MainResourceLoader::receivedError): Add more ref protection and do things in a slightly
   39637         different order.
   39638         * page/DOMWindow.cpp:
   39639         (WebCore::DOMWindow::document): don't force document creation, just assert there is one.
   39640         * page/Frame.cpp:
   39641         (WebCore::Frame::init): Added init method.
   39642         (WebCore::Frame::pageDestroyed): when a frame is removed, make sure to check if the parent is
   39643         done loading.
   39644         * page/Frame.h:
   39645         * page/mac/WebCoreFrameBridge.mm:
   39646         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]): No need to force
   39647         document.
   39648         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]): ditto
   39649         * platform/graphics/svg/SVGImage.cpp:
   39650         (WebCore::SVGImage::dataChanged): init the frame
   39651         * rendering/RenderPart.cpp:
   39652         (WebCore::RenderPart::updateWidgetPosition): If a subframe needs layout, then lay it out even
   39653         if the bounds did not change; the content size might be wrong.
   39654         * rendering/RenderTreeAsText.cpp:
   39655         (WebCore::externalRepresentation): Don't crash if the frame lacks a view.
   39656 
   39657 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39658 
   39659         Fix for:
   39660 
   39661         <rdar://problem/5146757> REGRESSION: div that wrapped to screen width in 
   39662         tiger no longer wraps
   39663         
   39664         http://bugs.webkit.org/show_bug.cgi?id=13654
   39665 
   39666         Reviewed by mitz
   39667 
   39668         fast/text/whitespace/normal-after-nowrap-breaking.html
   39669 
   39670         * rendering/RenderBlock.cpp:
   39671         (WebCore::RenderBlock::calcInlinePrefWidths):
   39672 
   39673 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39674 
   39675         Fix for:
   39676 
   39677         <rdar://problem/4778099> Links with nested continuations fail to 
   39678         paint their outlines (11255)
   39679         
   39680         http://bugs.webkit.org/show_bug.cgi?id=11255
   39681 
   39682         Fix multiple bugs with outline painting of continuations to ensure that
   39683         all combos work (empty/full inline - block with/without margins - 
   39684         empty/full inline).
   39685 
   39686         Reviewed by mitz
   39687 
   39688         fast/inline/continuation-outlines.html
   39689 
   39690         * rendering/RenderBlock.cpp:
   39691         (WebCore::RenderBlock::paintObject):
   39692         * rendering/RenderFlow.cpp:
   39693         (WebCore::RenderFlow::addFocusRingRects):
   39694 
   39695 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39696 
   39697         Fix for:
   39698 
   39699         <rdar://problem/5193529> REGRESSION: RTL Overflows scrollbar not showing 
   39700         when they should be
   39701         
   39702         Fallout from fix for bug 11926.  Make sure to restrict the fix to the
   39703         RenderView for now, since the full-blown overflow case is pretty involved.
   39704 
   39705         Reviewed by mitzpettel
   39706 
   39707         fast/overflow/unreachable-content-bug-rtl.html
   39708 
   39709         * rendering/RenderBlock.cpp:
   39710         (WebCore::RenderBlock::lowestPosition):
   39711         (WebCore::RenderBlock::rightmostPosition):
   39712         (WebCore::RenderBlock::leftmostPosition):
   39713 
   39714 2007-05-10  Brady Eidson <beidson (a] apple.com>
   39715 
   39716         Reviewed by Oliver
   39717 
   39718         Fix for http://bugs.webkit.org/show_bug.cgi?id=13636 and <rdar://problem/5190816>
   39719 
   39720         When creating the applets collection, be sure to only count Objects if they contain
   39721         a java applet
   39722 
   39723         * html/HTMLCollection.cpp:
   39724         (WebCore::HTMLCollection::traverseNextItem): Add the qualifier for Objects that 
   39725           containsJavaApplet() must be true
   39726 
   39727         * html/HTMLObjectElement.cpp:
   39728         (WebCore::HTMLObjectElement::containsJavaApplet): Check this Object element and inner
   39729           nodes for any Java applets
   39730         * html/HTMLObjectElement.h: 
   39731 
   39732 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39733 
   39734         Fix for:
   39735 
   39736         <rdar://problem/4694859> SAP: HTML tags with overflow:hidden consume
   39737         space on page, do not consume space in Firefox (11926)
   39738 
   39739         http://bugs.webkit.org/show_bug.cgi?id=11926
   39740 
   39741         Make sure that unreachable objects along one axis (e.g., top/left) do not
   39742         contribute to the scrollable area in the opposite axis (e.g., right/bottom).
   39743 
   39744         Reviewed by olliej
   39745 
   39746         fast/overflow/unreachable-content-test.html
   39747 
   39748         * rendering/RenderBlock.cpp:
   39749         (WebCore::RenderBlock::lowestPosition):
   39750         (WebCore::RenderBlock::rightmostPosition):
   39751         (WebCore::RenderBlock::leftmostPosition):
   39752 
   39753 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39754 
   39755         Fix for:
   39756 
   39757         <rdar://problem/4656825> REGRESSION: Japanese TV time table widget:
   39758         part of the number in background has been cut off.
   39759 
   39760         Now that opacity uses a tight bounding box to clip, we need to make sure
   39761         to factor spillout caused by negative letter spacing into our right
   39762         overflow.  Latch on to the code that does this already for text-stroke
   39763         and text-shadow.
   39764 
   39765         Reviewed by olliej
   39766 
   39767         fast/text/letter-spacing-negative-opacity.html
   39768 
   39769        * rendering/InlineFlowBox.cpp:
   39770         (WebCore::InlineFlowBox::placeBoxesHorizontally):
   39771 
   39772 2007-05-10  Geoffrey Garen  <ggaren (a] apple.com>
   39773 
   39774         Reviewed by Maciej Stachowiak.
   39775         
   39776         More fix-ups to the WebScriptObject/WebScripting APIs, related to
   39777         <rdar://problem/5140447> API for fetching JSGlobalContextRef from WebView 
   39778         or WebFrame
   39779 
   39780         * bindings/objc/WebScriptObject.h: Fully specified the surprising rules for
   39781         type conversion between JavaScript and ObjC.
   39782         * bindings/objc/WebScriptObject.mm: Added up-call accessor to WebFrame.
   39783         This is kind of stinky, but I'm OK with it because eventually all of this
   39784         code should move up into WebKit.
   39785         (+[WebScriptObject scriptObjectForJSObject:frame:]):
   39786         (-[WebScriptObject valueForKey:]):
   39787         (-[WebScriptObject JSObject]): 
   39788             - Added _rootObject check because if _rootObject returns NULL it means 
   39789             that _imp is no longer GC protected, so it's not safe to use. 
   39790             - Added _isSafeScript check because that's what WebScriptObject methods
   39791             typically do, even though the value of doing so isn't clear to me.
   39792         * bindings/objc/WebScriptObjectPendingPublic.h: Added WebFrame* parameter
   39793         to -scriptObjectForJSObject:. This is required to wrap JS objects that
   39794         are not already in the wrapper cache. It would be nice to remove this
   39795         limitation of WebScriptObject some day.
   39796         * page/mac/FrameMac.mm:
   39797         (WebCore::Frame::cleanupPlatformScriptObjects): Force removal of m_windowScriptObject
   39798         from the cache, to avoid retrieving the m_windowScriptObject from the previous
   39799         page on a new page load. (It would be non-functional in that case.)
   39800 
   39801 2007-05-10  David Hyatt  <hyatt (a] apple.com>
   39802 
   39803         Fix for <rdar://problem/5183697>.
   39804 
   39805         http://bugs.webkit.org/show_bug.cgi?id=13576
   39806 
   39807         Make sure verticalPositionHint is not called on an inline-block from
   39808         content inside the inline-block (like text).
   39809 
   39810         Reviewed by olliej
   39811 
   39812         fast/inline-block/inline-block-vertical-align.html
   39813 
   39814         * rendering/RenderObject.cpp:
   39815         (WebCore::RenderObject::verticalPositionHint):
   39816         * rendering/RenderText.cpp:
   39817         (WebCore::RenderText::verticalPositionHint):
   39818         * rendering/RenderThemeMac.mm:
   39819         (WebCore::RenderThemeMac::setFontFromControlSize):
   39820 
   39821 2007-05-09  Holger Freyther <zecke (a] selfish.org>
   39822 
   39823         Reviewed by Mark Rowe.
   39824 
   39825         Gdk build fix with SVG enabled.  Stub out ImageBufferCairo.
   39826 
   39827         * WebCore.pro: Build ImageBufferCairo.cpp
   39828         * platform/graphics/cairo/ImageBufferCairo.cpp: Added.
   39829         (WebCore::ImageBuffer::create):
   39830         (WebCore::ImageBuffer::~ImageBuffer):
   39831         (WebCore::ImageBuffer::context):
   39832 
   39833 2007-05-08  Justin Garcia  <justin.garcia (a] apple.com>
   39834 
   39835         Reviewed by darin
   39836         
   39837         <rdar://problem/5017613> Style changes don't effect fully selected ToDo content
   39838 
   39839         * editing/ApplyStyleCommand.cpp:
   39840         (WebCore::ApplyStyleCommand::applyInlineStyle):
   39841         Use a for loop instead of while(1).
   39842         Simplify loop termination using Range::pastEndNode.
   39843         Don't handle the start.node() == end.node() case 
   39844         specially, it's unnecessary.
   39845         Apply the style change to fully selected plaintext-only
   39846         regions, not with wrapper spans inside the region, but 
   39847         by changing the element's inline style declaration.
   39848         Don't descend into nodes whose children we should ignore.
   39849 
   39850 2007-05-09  Adele Peterson  <adele (a] apple.com>
   39851 
   39852         Reviewed by Hyatt.
   39853 
   39854         Fix for <rdar://problem/5113578> REGRESSION: textfields that set the height but not the font 
   39855         look different from IE & FF because the font is small
   39856 
   39857         For plain text fields, don't stretch the inner text box.  Center it vertically in the field.
   39858 
   39859         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::layout):
   39860 
   39861 2007-05-09  Atul Mehrotra  <atul.mehrotra (a] celunite.com>
   39862 
   39863         Gdk build fix.
   39864 
   39865         * platform/gdk/TemporaryLinkStubs.cpp:
   39866         (Editor::newGeneralClipboard):
   39867 
   39868 2007-05-09  Mitz Pettel  <mitz (a] webkit.org>
   39869 
   39870         Reviewed by Dave Hyatt.
   39871 
   39872         - fix http://bugs.webkit.org/show_bug.cgi?id=13037
   39873           REGRESSION: Copy-on-scroll not reset properly after back/forward navigation
   39874 
   39875         * page/FrameView.cpp:
   39876         (WebCore::FrameViewPrivate::FrameViewPrivate): Moved initialization of
   39877         m_slowRepaintObjectCount here.
   39878         (WebCore::FrameViewPrivate::reset): Do not reset the slow repaint object
   39879         count here.
   39880         (WebCore::FrameView::useSlowRepaints):
   39881         (WebCore::FrameView::addSlowRepaintObject):
   39882         (WebCore::FrameView::removeSlowRepaintObject): Added an assertion that the
   39883         object count is positive.
   39884         * rendering/RenderObject.cpp:
   39885         (WebCore::RenderObject::setStyle): Corrected a mix up between old and new
   39886         style, which caused the object count to be decremented when it was supposed
   39887         to be incremented and vice versa.
   39888 
   39889 2007-05-09  Peter Mller <pm (a] one.com>
   39890 
   39891         Reviewed by Dave Hyatt.
   39892 
   39893         Changed the hardcoded colors that are used for CSS 2.1 system colors.
   39894         Previous colors had numerous conflicts in semantic pairs, which
   39895         made text invisible in highlight, info and menu colored areas.
   39896         The new hardcoded colors are inspired by Aqua.
   39897 
   39898         Ideally these colors should be fetched through AppKit instead,
   39899         though I am not sure if it is possible to make a 1:1 mapping
   39900         between CSS2.1 system colors and Mac OS X.
   39901 
   39902         * css/cssstyleselector.cpp:
   39903         (WebCore::):
   39904 
   39905 2007-05-09  Lars Knoll <lars (a] trolltech.com>
   39906 
   39907         Fix the Qt build.
   39908 
   39909         * editing/qt/EditorQt.cpp:
   39910 
   39911 2007-05-08  Geoffrey Garen  <ggaren (a] apple.com>
   39912 
   39913         Reviewed by Darin Adler.
   39914         
   39915         More fix-ups to the WebScriptObject/WebScripting APIs, related to
   39916         <rdar://problem/5140447> API for fetching JSGlobalContextRef from WebView 
   39917         or WebFrame
   39918         
   39919         1. Added -scriptObjectForJSObject: SPI so you can bridge back from JavaScriptCore
   39920         to WebScriptObject.
   39921         
   39922         2. Fixed WebScriptObject bridging so that you always get the same WebScriptObject
   39923         for a JSObject (like in the DOM). This makes -scriptObjectForJSObject: a
   39924         lot more coherent as an API.
   39925 
   39926         * bindings/objc/DOMInternal.mm: Renamed wrapperCache to DOMWrapperCache
   39927         to distinguish from the JSWrapperCache. Added typedef for readability.
   39928         (WebCore::getDOMWrapper):
   39929         (WebCore::addDOMWrapper):
   39930         (WebCore::removeDOMWrapper):
   39931         * bindings/objc/WebScriptObject.mm: Added JSWrapperCache, which works just
   39932         like the DOMWrapperCache.
   39933         (WebCore::getJSWrapper):
   39934         (WebCore::addJSWrapper):
   39935         (WebCore::removeJSWrapper):
   39936         (WebCore::createJSWrapper):
   39937         (+[WebScriptObject scriptObjectForJSObject:]): This is the new API. It attempts
   39938         to return a specific DOM wrapper object, or, barring that, it returns a 
   39939         generic WebScriptObject.
   39940         (+[WebScriptObject scriptObjectForJSObject:originRootObject:rootObject:]):
   39941         Added this method to support our old WebScriptObject security and leak 
   39942         checking model, even though it doesn't work very well. 
   39943         (-[WebScriptObject _setImp:originRootObject:rootObject:]):
   39944         (-[WebScriptObject dealloc]):
   39945         (-[WebScriptObject finalize]):
   39946         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   39947         * bindings/objc/WebScriptObjectPendingPublic.h:
   39948         * bindings/objc/WebScriptObjectPrivate.h:
   39949         * page/mac/FrameMac.mm:
   39950         (WebCore::Frame::windowScriptObject): Changed to use the new API. This
   39951         fixes a bug where the object sent to -windowScriptObjectAvailable: and returned
   39952         from -windowScriptObject could not be round-tripped.
   39953 
   39954 2007-05-09  Mark Rowe  <mrowe (a] apple.com>
   39955 
   39956         Build fix.
   39957 
   39958         * editing/Editor.cpp:
   39959         (WebCore::findFirstGrammarDetailInRange): Use unsigned rather than int.
   39960         (WebCore::findFirstBadGrammarInRange): Cast to unsigned in assertion.
   39961         (WebCore::isRangeUngrammatical): Remove unused variables.
   39962 
   39963 2007-05-08  Oliver Hunt  <oliver (a] apple.com>
   39964 
   39965         Reviewed by Darin.
   39966         
   39967         Fix <rdar://problem/5188938> arc method on Canvas causes hang or crash
   39968         
   39969         Workaround bad behaviour of CGPathAddArc when passed inf as start or
   39970         end angles.
   39971 
   39972         * platform/graphics/cg/PathCG.cpp:
   39973         (WebCore::Path::addArc):
   39974 
   39975 2007-05-08  Darin Adler  <darin (a] apple.com>
   39976 
   39977         Reviewed by Hyatt and Hatcher.
   39978 
   39979         - fix auto-activation code path so Tiger and Leopard aren't different
   39980 
   39981         * platform/mac/WebFontCache.mm: (+[WebFontCache fontWithFamily:traits:size:]):
   39982         Do the auto-activation dance first before doing anything else, and ignore the
   39983         font that it returns.
   39984 
   39985 2007-05-08  Steve Falkenburg  <sfalken (a] apple.com>
   39986 
   39987         Reviewed by Darin.
   39988 
   39989         Moved most spelling/grammar logic to C++.  Now calls through to
   39990         WebKit to actually invoke NSSpellChecker.
   39991 
   39992         * editing/Editor.cpp:
   39993         (WebCore::Editor::ignoreSpelling): Added (ported from EditorMac).
   39994         (WebCore::Editor::learnSpelling): Added (ported from EditorMac).
   39995         (WebCore::findFirstMisspellingInRange): Added (ported from EditorMac).
   39996         (WebCore::paragraphAlignedRangeForRange): Added (ported from EditorMac).
   39997         (WebCore::findFirstGrammarDetailInRange): Added (ported from EditorMac).
   39998         (WebCore::findFirstBadGrammarInRange): Added (ported from EditorMac).
   39999         (WebCore::Editor::advanceToNextMisspelling): Added (ported from EditorMac).
   40000         (WebCore::Editor::isSelectionMisspelled): Added (ported from EditorMac).
   40001         (WebCore::isRangeUngrammatical): Added (ported from EditorMac).
   40002         (WebCore::Editor::isSelectionUngrammatical): Added (ported from EditorMac).
   40003         (WebCore::Editor::guessesForUngrammaticalSelection): Added (ported from EditorMac).
   40004         (WebCore::Editor::guessesForMisspelledSelection): Added (ported from EditorMac).
   40005         (WebCore::Editor::showSpellingGuessPanel): Added (ported from EditorMac).
   40006         (WebCore::Editor::spellingPanelIsShowing): Added (ported from EditorMac).
   40007         (WebCore::Editor::markMisspellingsAfterTypingToPosition): Added (ported from EditorMac).
   40008         (WebCore::markAllMisspellingsInRange): Added (ported from EditorMac).
   40009         (WebCore::markAllBadGrammarInRange): Added (ported from EditorMac).
   40010         (WebCore::markMisspellingsOrBadGrammar): Added (ported from EditorMac).
   40011         (WebCore::Editor::markMisspellings): Added (ported from EditorMac).
   40012         (WebCore::Editor::markBadGrammar): Added (ported from EditorMac).
   40013         * editing/mac/EditorMac.mm: Removed Objective C version of spelling/grammar calls.
   40014 
   40015 2007-05-08  Steve Falkenburg  <sfalken (a] apple.com>
   40016 
   40017         Reviewed by Ada.
   40018 
   40019         Slight modification to last editor method fix.
   40020 
   40021         * bridge/EditorClient.h:
   40022         * platform/gdk/EditorClientGdk.cpp:
   40023         (WebCore::EditorClientGdk::updateSpellingUIWithGrammarString):
   40024         * platform/gdk/EditorClientGdk.h:
   40025         * platform/graphics/svg/SVGImageEmptyClients.h:
   40026         (WebCore::SVGEmptyEditorClient::updateSpellingUIWithGrammarString):
   40027 
   40028 2007-05-08  Alexey Proskuryakov  <ap (a] webkit.org>
   40029 
   40030         Reviewed by Hyatt.
   40031 
   40032         http://bugs.webkit.org/show_bug.cgi?id=13480
   40033         window.Attr is undefined
   40034 
   40035         Test: fast/dom/Window/attr-constructor.html
   40036 
   40037         * dom/Attr.idl:
   40038         * dom/CDATASection.idl:
   40039         * dom/CharacterData.idl:
   40040         * dom/Comment.idl:
   40041         * dom/DOMImplementation.idl:
   40042         * dom/DocumentType.idl:
   40043         * dom/Entity.idl:
   40044         * dom/EntityReference.idl:
   40045         * dom/Notation.idl:
   40046         * dom/ProcessingInstruction.idl:
   40047         * dom/Text.idl:
   40048         Added GenerateConstructor.
   40049 
   40050         * page/DOMWindow.idl: Added constructor properties for DOM interfaces.
   40051 
   40052 2007-05-07  Geoffrey Garen  <ggaren (a] apple.com>
   40053 
   40054         Reviewed by Maciej Stachowiak.
   40055 
   40056         Fixed <rdar://problem/5140447> API for fetching JSGlobalContextRef from 
   40057         WebView or WebFrame
   40058         
   40059         Added support for new -[WebScriptObject JSObject] and -[WebFrame globalContext]
   40060         APIs.
   40061         
   40062         Also fixed some more cases of <rdar://problem/4395622> API: 
   40063         WebScriptObject.h incorrectly reports that -isSelectorExcludedFromWebScript 
   40064         returns NO by default, and generally cleaned up that documentation.
   40065 
   40066         * WebCore.exp: A lot of the diff here is from sorting.
   40067         * WebCore.xcodeproj/project.pbxproj:
   40068         * bindings/objc/WebScriptObject.h:
   40069         * bindings/objc/WebScriptObject.mm:
   40070         (-[WebScriptObject JSObject]):
   40071         * bindings/objc/WebScriptObjectPendingPublic.h: Added.
   40072 
   40073 2007-05-08  Lars Knoll <lars (a] trolltech.com>
   40074 
   40075         Reviewed by Hyatt.
   40076 
   40077         Fix valgrind reported uninitialized memory read.
   40078 
   40079         * rendering/RenderText.cpp:
   40080         (WebCore::RenderText::RenderText):
   40081 
   40082 2007-05-07  Justin Garcia  <justin.garcia (a] apple.com>
   40083 
   40084         Reviewed by oliver
   40085 
   40086         <rdar://problem/4895428> Can't drag selected ToDo
   40087         
   40088         The user tries to drag a selection by mousing down
   40089         on the editable part of a ToDo, which is focusable,
   40090         since it is an editable node within non-editable 
   40091         content.  But we focus focusable elements on mouse 
   40092         down, and focusing the editable piece blows away 
   40093         the selection and prevents the drag. This is how 
   40094         IE behaves, but content seems generally difficult 
   40095         to drag in IE, so this doesn't make it any worse.
   40096         
   40097         Since focus doesn't appear to be cancelable, either
   40098         with a DOM event or an editing delegate, I fixed this
   40099         by delaying the focus of focusable nodes that are 
   40100         selected and inside an already focused node.  The 
   40101         node will be focused if the user mouses up without 
   40102         doing any dragging because the mouse up sets a
   40103         selection, which calls setFocusNodeIfNeeded.
   40104 
   40105         * page/EventHandler.cpp:
   40106         (WebCore::EventHandler::dispatchMouseEvent):
   40107 
   40108 2007-05-07  Atul Mehrotra <atul.mehrotra (a] celunite.com>
   40109 
   40110         Reviewed by Maciej.
   40111 
   40112         GDK Build fix
   40113 
   40114         * platform/gdk/TemporaryLinkStubs.cpp:
   40115 
   40116 2007-05-07  Oliver Hunt  <oliver (a] apple.com>
   40117 
   40118         Reviewed by Maciej.
   40119 
   40120         Correcting comparisons to handle NaN in the same manner
   40121         as other Canvas methods.
   40122 
   40123         * html/CanvasRenderingContext2D.cpp:
   40124         (WebCore::CanvasRenderingContext2D::arcTo):
   40125         (WebCore::CanvasRenderingContext2D::arc):
   40126           Correcting arc/arcTo to match the WHAT WG draft.
   40127         (WebCore::CanvasRenderingContext2D::rect):
   40128         (WebCore::CanvasRenderingContext2D::clearRect):
   40129         (WebCore::CanvasRenderingContext2D::fillRect):
   40130         (WebCore::CanvasRenderingContext2D::strokeRect):
   40131 
   40132 2007-05-07  David Hyatt  <hyatt (a] apple.com>
   40133 
   40134         Add some comments to the glyph/font code (patch from Brett Wilson, tweaked by
   40135         me to correct a few bits and to make it forward-compatible with the work
   40136         going on in 3315.
   40137 
   40138         Reviewed by me
   40139 
   40140         * ChangeLog:
   40141         * platform/Font.cpp:
   40142         (WebCore::Font::glyphDataForCharacter):
   40143         * platform/GlyphPageTreeNode.cpp:
   40144         (WebCore::GlyphPageTreeNode::initializePage):
   40145         * platform/GlyphPageTreeNode.h:
   40146 
   40147 2007-05-07  Justin Garcia  <justin.garcia (a] apple.com>
   40148 
   40149         Fix layout test failures.
   40150 
   40151         * editing/SelectionController.cpp:
   40152         (WebCore::SelectionController::contains): Use comparePositions
   40153         instead of Range::comparePoint, because comparePositions can
   40154         handle positions inside shadow trees.
   40155 
   40156 2007-05-07  Justin Garcia  <justin.garcia (a] apple.com>
   40157 
   40158         Reviewed by darin
   40159         
   40160         <rdar://problem/4895428> Can't drag selected To Do if it is not showing a due date
   40161         
   40162         The code in SelectionController::contains returned false 
   40163         incorrectly if the selection end just after a table 
   40164         and the position was inside that table.
   40165 
   40166         * editing/SelectionController.cpp:
   40167         (WebCore::SelectionController::contains): Compare the position with the
   40168         ends of the selection and then use Range::comparePoint.
   40169 
   40170 2007-05-07  Darin Adler  <darin (a] apple.com>
   40171 
   40172         - rolling out setInnerHTML optimization until I can figure out why tests are failing
   40173 
   40174 2007-05-07  Darin Adler  <darin (a] apple.com>
   40175 
   40176         Reviewed by Hyatt.
   40177 
   40178         - fix http://bugs.webkit.org/show_bug.cgi?id=13602
   40179           Amazon product pages keep repainting over and over again
   40180 
   40181         Optimize setInnerHTML, setOuterHTML, and setInnerText so they don't change the DOM at all
   40182         if they don't need to.
   40183 
   40184         Test: fast/dom/HTMLElement/set-inner-outer-optimization.html
   40185 
   40186         * html/HTMLElement.cpp:
   40187         (WebCore::equal): Added. Helper function that compares two Text nodes or two NamedAttrMap
   40188         attribute maps.
   40189         (WebCore::shallowEqual): Added. Helper function that compares two Element nodes or two
   40190         arbitrary nodes.
   40191         (WebCore::replaceChildrenWithFragment): Added. Helper function used by setInnerHTML and
   40192         setInnerText. Optimizes the cases where all the nodes are the same, where both the current
   40193         and the new content are single text nodes, and where the current content is a single node
   40194         that can be replaced with replaceChild.
   40195         (WebCore::replaceChildrenWithText): Added. Helper function used by setInnerText. Optimizes
   40196         the case where the current content is a single text node or a single node that can be
   40197         replaced with replaceChild.
   40198         (WebCore::HTMLElement::setInnerHTML): Changed to call replaceChildrenWithFragment.
   40199         (WebCore::HTMLElement::setOuterHTML): Added special case to optimize when the new content
   40200         exactly matches the current node.
   40201         (WebCore::HTMLElement::setInnerText): Changed to call replaceChildrenWithText in a few
   40202         cases instead of doing removeChildren/appendChild. Changed code that was using
   40203         DeprecatedString to instead use String. Changed general case to use a document fragment
   40204         and replaceChildrenWithFragment.
   40205 
   40206         * dom/CharacterData.cpp: (WebCore::CharacterData::dispatchModifiedEvent):
   40207         Fixed bug where we would not dispatch the DOMSubtreeModified event unless someone
   40208         was registered for the DOMCharacterDataModified event. Caused trouble in the test.
   40209 
   40210 2007-05-06  Darin Adler  <darin (a] apple.com>
   40211 
   40212         - blind try at fixing the Qt build
   40213 
   40214         * platform/qt/TextBreakIteratorQt.cpp: (WebCore::sentenceBreakIterator):
   40215         Added a placeholder.
   40216 
   40217 2007-05-06  Darin Adler  <darin (a] apple.com>
   40218 
   40219         Reviewed by Hyatt.
   40220 
   40221         - fix http://bugs.webkit.org/show_bug.cgi?id=13537
   40222           Canvex example starts rendering strangely after a while
   40223 
   40224         * html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::drawImage):
   40225         Don't raise an exception if the source or destination rectangle is empty.
   40226 
   40227 2007-05-06  Darin Adler  <darin (a] apple.com>
   40228 
   40229         Reviewed by Hyatt.
   40230 
   40231         - fix <rdar://problem/4585593> REGRESSION: Some 2-byte characters in printed page
   40232           header are drawn with too-large font and clipped
   40233 
   40234         Doesn't affect text within web pages, so no layout test.
   40235 
   40236         * platform/mac/FontCacheMac.mm: (WebCore::FontCache::getFontDataForCharacters):
   40237         Base the substitute font on the FontPlatformData rather than the FontDescription.
   40238         Before, it was a mix of both. This works properly for fonts where we have no
   40239         FontDescription and is also more internally consistent.
   40240 
   40241 2007-05-06  Darin Adler  <darin (a] apple.com>
   40242 
   40243         Reviewed by Hyatt.
   40244 
   40245         - http://bugs.webkit.org/show_bug.cgi?id=13606
   40246           some functions are virtual that don't need to be
   40247 
   40248         * dom/Node.h: Made first/lastChild be inline functions that call virtual functions.
   40249         This lets us hide the functions with another inline function in a derived class,
   40250         yet still override the behavior here in the base class by overriding the virtual
   40251         functions too.
   40252         * dom/Node.cpp:
   40253         (WebCore::Node::virtualFirstChild): Renamed virtual functions. There are now
   40254         non-virtual inline functions that call these virtual functions.
   40255         (WebCore::Node::virtualLastChild): Ditto.
   40256 
   40257         * dom/ContainerNode.h: Added non-virtual first/lastChild functions that hide the ones
   40258         inherited from the Node class; these also replace the fastFirst/LastChild functions,
   40259         and transparently give callers the faster form if they have a pointer of the right
   40260         type. But still override the virtual functions named virtualFirst/LastChild, because
   40261         those can still be called through a Node*. Removed the "fast" from the names of
   40262         fastSetFirst/LastChild.
   40263         * dom/ContainerNode.cpp:
   40264         (WebCore::ContainerNode::virtualFirstChild): Renamed virtual functions. There are now
   40265         also non-virtual inline versions.
   40266         (WebCore::ContainerNode::virtualLastChild): Ditto.
   40267 
   40268         * dom/CharacterData.cpp: Removed implementations of data and length functons.
   40269         * dom/CharacterData.h: Made data, setData, length, substringData, appendData,
   40270         insertData, deleteData, and replaceData all non-virtual, and made data and length
   40271         both be inline.
   40272 
   40273         * dom/NamedAttrMap.h: (WebCore::NamedAttrMap::attributeItem): Removed a null check
   40274         from this function. If the length of the map is known to be greater than 0, then
   40275         the null check isn't needed. But if the length of the map hasn't been checked at all,
   40276         then it's unsafe to call this function since it doesn't range check the array
   40277         index. Thus the null check is never needed. I also looked at all callers.
   40278 
   40279         * dom/Attr.cpp: (WebCore::Attr::createTextChild):
   40280         * dom/Document.cpp: (WebCore::Document::recalcStyle):
   40281         * dom/Element.cpp: (WebCore::Element::recalcStyle):
   40282         * ksvg2/svg/SVGElement.cpp:
   40283         (WebCore::SVGElement::haveLoadedRequiredResources):
   40284         Removed "fast" prefix from calls to fastFirst/LastChild and fastSetFirst/LastChlld.
   40285         It's not needed any more -- you still get fast behavior if the pointer has a type
   40286         that's ContainerNode or derived from it.
   40287 
   40288 2007-05-06  Mitz Pettel  <mitz (a] webkit.org>
   40289 
   40290         Reviewed by Hyatt.
   40291 
   40292         - fix http://bugs.webkit.org/show_bug.cgi?id=13557
   40293           Crash when dragging selection over absolutely positioned generated content on block element
   40294 
   40295         Test: fast/css-generated-content/positioned-background-hit-test-crash.html
   40296 
   40297         * rendering/RenderLayer.cpp:
   40298         (WebCore::RenderLayer::enclosingElement): Added. Factored out of hitTestLayer().
   40299         (WebCore::RenderLayer::hitTestLayer): Implemented the fix for <rdar://problem/3552346>
   40300         from r6106 to the self hit test as well, namely: return the enclosing element
   40301         for generated positioned content.
   40302         * rendering/RenderLayer.h:
   40303 
   40304 2007-05-06  Alexey Proskuryakov  <ap (a] webkit.org>
   40305 
   40306         Reviewed by Darin.
   40307 
   40308         http://bugs.webkit.org/show_bug.cgi?id=13584
   40309         <script> code wrongly assumes requests can't fail
   40310 
   40311         Test: fast/loader/unloadable-script.html
   40312 
   40313         * html/HTMLScriptElement.cpp:
   40314         (WebCore::HTMLScriptElement::parseMappedAttribute):
   40315         (WebCore::HTMLScriptElement::insertedIntoDocument):
   40316         Check the return value of requestScript().
   40317 
   40318 2007-05-06  Alexey Proskuryakov  <ap (a] webkit.org>
   40319 
   40320         Reviewed by Darin.
   40321 
   40322         http://bugs.webkit.org/show_bug.cgi?id=13304
   40323         REGRESSION(14784): WebKit doesn't dynamically reflect changes to the highlight color in System Preferences
   40324 
   40325         Implemented a notification observer that invalidates cached system colors.
   40326 
   40327         No automated test possible.
   40328 
   40329         * rendering/RenderTheme.cpp:
   40330         (WebCore::RenderTheme::activeSelectionBackgroundColor):
   40331         (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
   40332         (WebCore::RenderTheme::platformColorsDidChange):
   40333         * rendering/RenderTheme.h:
   40334         * rendering/RenderThemeMac.h:
   40335         * rendering/RenderThemeMac.mm:
   40336         (-[WebCoreRenderThemeNotificationObserver initWithTheme:WebCore::]):
   40337         (-[WebCoreRenderThemeNotificationObserver systemColorsDidChange:]):
   40338         (WebCore::theme):
   40339         (WebCore::RenderThemeMac::RenderThemeMac):
   40340         (WebCore::RenderThemeMac::~RenderThemeMac):
   40341         (WebCore::RenderThemeMac::checkbox):
   40342         (WebCore::RenderThemeMac::radio):
   40343         (WebCore::RenderThemeMac::button):
   40344         (WebCore::RenderThemeMac::popupButton):
   40345         (WebCore::RenderThemeMac::search):
   40346         (WebCore::RenderThemeMac::sliderThumbHorizontal):
   40347         (WebCore::RenderThemeMac::sliderThumbVertical):
   40348 
   40349 2007-05-05  Rob Buis  <buis (a] kde.org>
   40350 
   40351         Reviewed by Oliver.
   40352 
   40353         http://bugs.webkit.org/show_bug.cgi?id=13592
   40354         parseMappedAttribute inconsistency
   40355 
   40356         Do not use local vars in parseMappedAttribute for attr name and value.
   40357 
   40358         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   40359         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
   40360         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   40361         (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
   40362         * ksvg2/svg/SVGAnimationElement.cpp:
   40363         (WebCore::SVGAnimationElement::parseMappedAttribute):
   40364         * ksvg2/svg/SVGCircleElement.cpp:
   40365         (WebCore::SVGCircleElement::parseMappedAttribute):
   40366         * ksvg2/svg/SVGClipPathElement.cpp:
   40367         (WebCore::SVGClipPathElement::parseMappedAttribute):
   40368         * ksvg2/svg/SVGCursorElement.cpp:
   40369         (WebCore::SVGCursorElement::parseMappedAttribute):
   40370         * ksvg2/svg/SVGEllipseElement.cpp:
   40371         (WebCore::SVGEllipseElement::parseMappedAttribute):
   40372         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
   40373         (WebCore::SVGExternalResourcesRequired::parseMappedAttribute):
   40374         * ksvg2/svg/SVGGradientElement.cpp:
   40375         (WebCore::SVGGradientElement::parseMappedAttribute):
   40376         * ksvg2/svg/SVGImageElement.cpp:
   40377         (WebCore::SVGImageElement::parseMappedAttribute):
   40378         * ksvg2/svg/SVGLineElement.cpp:
   40379         (WebCore::SVGLineElement::parseMappedAttribute):
   40380         * ksvg2/svg/SVGLinearGradientElement.cpp:
   40381         (WebCore::SVGLinearGradientElement::parseMappedAttribute):
   40382         * ksvg2/svg/SVGMarkerElement.cpp:
   40383         (WebCore::SVGMarkerElement::parseMappedAttribute):
   40384         * ksvg2/svg/SVGMaskElement.cpp:
   40385         (WebCore::SVGMaskElement::parseMappedAttribute):
   40386         * ksvg2/svg/SVGPathElement.cpp:
   40387         (WebCore::SVGPathElement::parseMappedAttribute):
   40388         * ksvg2/svg/SVGPatternElement.cpp:
   40389         (WebCore::SVGPatternElement::parseMappedAttribute):
   40390         * ksvg2/svg/SVGRadialGradientElement.cpp:
   40391         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
   40392         * ksvg2/svg/SVGRectElement.cpp:
   40393         (WebCore::SVGRectElement::parseMappedAttribute):
   40394         * ksvg2/svg/SVGSVGElement.cpp:
   40395         (WebCore::SVGSVGElement::parseMappedAttribute):
   40396         * ksvg2/svg/SVGScriptElement.cpp:
   40397         (WebCore::SVGScriptElement::parseMappedAttribute):
   40398         * ksvg2/svg/SVGStopElement.cpp:
   40399         (WebCore::SVGStopElement::parseMappedAttribute):
   40400         * ksvg2/svg/SVGTests.cpp:
   40401         (WebCore::SVGTests::parseMappedAttribute):
   40402         * ksvg2/svg/SVGTextContentElement.cpp:
   40403         (WebCore::SVGTextContentElement::parseMappedAttribute):
   40404         * ksvg2/svg/SVGTextPositioningElement.cpp:
   40405         (WebCore::SVGTextPositioningElement::parseMappedAttribute):
   40406         * ksvg2/svg/SVGUseElement.cpp:
   40407         (WebCore::SVGUseElement::parseMappedAttribute):
   40408         * ksvg2/svg/SVGViewElement.cpp:
   40409         (WebCore::SVGViewElement::parseMappedAttribute):
   40410         * ksvg2/svg/SVGZoomAndPan.cpp:
   40411         (WebCore::SVGZoomAndPan::parseMappedAttribute):
   40412 
   40413 2007-05-05  Oliver Hunt  <oliver (a] apple.com>
   40414 
   40415         Reviewed by Hyatt.
   40416 
   40417         Initialise default fill with Color::black rather than parsing
   40418         the string "black"
   40419 
   40420         * ksvg2/svg/SVGPaint.cpp:
   40421         (WebCore::SVGPaint::defaultFill):
   40422 
   40423 2007-05-04  Steve Falkenburg  <sfalken (a] apple.com>
   40424 
   40425         Reviewed by Oliver.
   40426 
   40427         Use TextBreakIterator for sentence breaking instead of TextBoundaries.
   40428 
   40429         * WebCore.xcodeproj/project.pbxproj: Added TextBreakIeratorInternalICUMac.mm
   40430         * editing/visible_units.cpp:
   40431         (WebCore::startSentenceBoundary): Call TextBreakIterator instead of TextBoundaries.
   40432         (WebCore::endSentenceBoundary): Call TextBreakIterator instead of TextBoundaries.
   40433         (WebCore::previousSentencePositionBoundary): Call TextBreakIterator instead of TextBoundaries.
   40434         (WebCore::nextSentencePositionBoundary): Call TextBreakIterator instead of TextBoundaries.
   40435         * platform/TextBoundaries.h: Removed findSentenceBoundary, findNextSentenceFromIndex.
   40436         * platform/TextBreakIterator.h: Added sentenceBreakIterator.
   40437         * platform/TextBreakIteratorICU.cpp:
   40438         (WebCore::setUpIterator): Add locale parameter (needed to maintain functionality that TextBoundaries code had).
   40439         (WebCore::characterBreakIterator): Pass en_us for locale (same as old code).
   40440         (WebCore::wordBreakIterator): Pass en_us for locale (same as old code).
   40441         (WebCore::lineBreakIterator): Pass en_us for locale (same as old code).
   40442         (WebCore::sentenceBreakIterator): Added.
   40443         * platform/TextBreakIteratorInternalICU.h: Added.
   40444         * platform/gdk/TemporaryLinkStubs.cpp: Removed findNextSentenceFromIndex, findSentenceBoundary.
   40445         (WebCore::currentTextBreakLocaleID): Added stub.
   40446         * platform/mac/TextBoundaries.mm: Removed currentTextBreakLocaleID, findSentenceBoundary, findNextSentenceFromIndex.
   40447         * platform/mac/TextBreakIteratorInternalICUMac.mm: Added.
   40448         (WebCore::currentTextBreakLocaleID): Moved from TextBoundaries.mm
   40449         * platform/qt/TextBoundaries.cpp: Removed findNextSentenceFromIndex, findSentenceBoundary.
   40450 
   40451 2007-05-04  Adele Peterson  <adele (a] apple.com>
   40452 
   40453         Reviewed by Hyatt.
   40454 
   40455         Fix for <rdar://problem/5116871> REGRESSION: Can't select options in widget's listbox
   40456 
   40457         Don't use user-select to determine whether or not options can be selected in listboxes.
   40458         This will match Firefox behavior for -moz-user-select.
   40459 
   40460         * html/HTMLSelectElement.cpp:
   40461         (WebCore::HTMLSelectElement::canSelectAll):
   40462         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   40463 
   40464 2007-05-04  Geoffrey Garen  <ggaren (a] apple.com>
   40465 
   40466         Reviewed by Tim Hatcher.
   40467 
   40468         First step in fixing <rdar://problem/5055182> The back cache has no global cap
   40469 
   40470         Stop giving SnapBack infinite cache-ability. Instead, make SnapBack rely
   40471         on the underlying back cache.
   40472 
   40473         * WebCore.exp:
   40474         * history/HistoryItem.cpp:
   40475         (WebCore::HistoryItem::HistoryItem):
   40476         * history/HistoryItem.h:
   40477         * loader/FrameLoader.cpp:
   40478         (WebCore::FrameLoader::purgePageCache):
   40479 
   40480 2007-05-04  Geoffrey Garen  <ggaren (a] apple.com>
   40481 
   40482         Reviewed by Brady Eidson.
   40483         
   40484         Removed export of clearPageCache(), since it was unused externally. I plan
   40485         to remove its use from WebCore eventually, too.
   40486 
   40487         Removed usesPageCache(), since it was unused and it duplicated pageCacheSize().
   40488 
   40489         * WebCore.exp:
   40490         * history/BackForwardList.cpp:
   40491         * history/BackForwardList.h: Moved statics to the top of the class definition.
   40492         * loader/FrameLoader.cpp:
   40493         (WebCore::FrameLoader::canCachePage):
   40494 
   40495 2007-05-04  Anders Carlsson  <andersca (a] apple.com>
   40496 
   40497         Reviewed by Antti.
   40498 
   40499         <rdar://problem/5179977> Use the correct URLs when dispatching delegate methods for data loads.
   40500 
   40501         Restore behavior to matching release WebKit by adding a response URL to SubstituteData. If a nil base URL is
   40502         passed, set the _request_ URL to "about:blank", but the response URL to a generated "applewebdata" URL.
   40503 
   40504         * loader/FrameLoader.cpp:
   40505         (WebCore::FrameLoader::commitProvisionalLoad):
   40506         First, check for the SubstituteData's response URL.
   40507 
   40508         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   40509         No need to special case applewebdata URLs here, they're only used in the response.
   40510 
   40511         * loader/MainResourceLoader.cpp:
   40512         (WebCore::MainResourceLoader::handleDataLoadNow):
   40513         If the substitute data has a response URL, use it.
   40514 
   40515         (WebCore::MainResourceLoader::loadNow):
   40516         Only load "about:blank" as an empty document if there's no substitute data.
   40517 
   40518         * loader/SubstituteData.h:
   40519         (WebCore::SubstituteData::SubstituteData):
   40520         (WebCore::SubstituteData::responseURL):
   40521         Add responseURL member to SubstituteData.
   40522 
   40523 2007-05-03  Steve Falkenburg  <sfalken (a] apple.com>
   40524 
   40525         Reviewed by Oliver.
   40526 
   40527         Add missing user description parameter to spelling-related editor client method.
   40528 
   40529         * bridge/EditorClient.h:
   40530         * platform/gdk/EditorClientGdk.cpp:
   40531         (WebCore::EditorClientGdk::updateSpellingUIWithGrammarString):
   40532         * platform/gdk/EditorClientGdk.h:
   40533         * platform/graphics/svg/SVGImageEmptyClients.h:
   40534         (WebCore::SVGEmptyEditorClient::updateSpellingUIWithGrammarString):
   40535 
   40536 2007-05-03  Brady Eidson  <beidson (a] apple.com>
   40537 
   40538         Reviewed by Oliver
   40539 
   40540         Resolve an outstanding FIXME in Loader::numRequests()
   40541 
   40542         Before, numRequests() would iterate through the list of requests pending load and the list of currently
   40543         loading requests and tally up a count matching the current DocLoader.
   40544 
   40545         I noticed while studying and cleaning up the loader code that numRequests() is potentially very hot!
   40546         Indeed load a complex site with many resources and multiple frames, and this method gets called very often,
   40547         tallying up this number every time.
   40548 
   40549         The FIXME was to keep a collection of Requests mapped to each DocLoader.  In reality, since this map would
   40550         simply be used for retrieving a count, that was overkill.  Keeping a request count in the DocLoader itself
   40551         along with maintaining that count in Loader as requests come and go is a much better way to do this.
   40552 
   40553         * loader/DocLoader.cpp:
   40554         (WebCore::DocLoader::DocLoader):
   40555         (WebCore::DocLoader::incrementRequestCount):
   40556         (WebCore::DocLoader::decrementRequestCount):
   40557         (WebCore::DocLoader::requestCount): Emulate the defunct Loader::numRequests()
   40558         * loader/DocLoader.h:
   40559 
   40560         * loader/FrameLoader.cpp:
   40561         (WebCore::numRequests): Call DocLoader::requestCount() directly
   40562         (WebCore::FrameLoader::checkCompleted): Use numRequests()
   40563 
   40564         * loader/loader.cpp:
   40565         (WebCore::Loader::load): Increment the DocLoader's request count
   40566         (WebCore::Loader::servePendingRequests): If the SubresourceLoader failed to create, decrement the count
   40567         (WebCore::Loader::didFinishLoading): If the Request is not Multipart, decrement the count
   40568         (WebCore::Loader::didFail): If the Request is not Multipart, decrement the count
   40569         (WebCore::Loader::didReceiveResponse): If the Request becomes Multipart, decrement the count
   40570         (WebCore::Loader::cancelRequests): Decrement the count for the pending requests being tossed, and ASSERT the
   40571           count is zero after all requests have been cancelled
   40572         * loader/loader.h:
   40573 
   40574 2007-05-03  Geoffrey Garen  <ggaren (a] apple.com>
   40575 
   40576         Reviewed by Brady Eidson.
   40577         
   40578         Some cleanup in preparation for fixing <rdar://problem/5055182> The 
   40579         back/forward cache has no global cap
   40580 
   40581         * loader/FrameLoader.cpp:
   40582         (WebCore::FrameLoader::provisionalLoadStarted): Moved "Can I cache this
   40583         page?" logic to canCachePage(). Moved "I am caching this page" logic to
   40584         cachePageToHistoryItem().
   40585         (WebCore::FrameLoader::canCachePage): Moved above logic here.
   40586         (WebCore::FrameLoader::cachePageToHistoryItem): Removed bogus NULL check
   40587         and failure return value. Moved above logic here. Don't call setCachedPage()
   40588         until the CachedPage is fully constructed.
   40589         (WebCore::FrameLoader::purgePageCache): Removed comment that duplicated
   40590         the function name.
   40591         * loader/FrameLoader.h:
   40592 
   40593 2007-05-03  Justin Garcia  <justin.garcia (a] apple.com>
   40594 
   40595         Reviewed by harrison.
   40596 
   40597         <rdar://problem/5120281> CrashTracer: [USER] 1 crash in Mail at WebCore::CSSComputedStyleDeclaration::copyInheritableProperties() const
   40598 
   40599         Problem is that checkAncestor and lastClosed can be nil when createMarkup is called unrendered nodes, and that was not checked for.
   40600         
   40601         * editing/markup.cpp:
   40602         (WebCore::createMarkup):
   40603         Nil-check checkAncestor and lastClosed.
   40604 
   40605 2007-05-03  Timothy Hatcher  <timothy (a] apple.com>
   40606 
   40607         Reviewed by Kevin.
   40608 
   40609         <rdar://problem/5016318> Contextual menu item for opening links is missing in compose windows but present in viewer
   40610 
   40611         Add the Open Link, Open Link in New Window, Download Linked File and Copy Link menu
   40612         items to the content editable context menu.
   40613 
   40614         * platform/ContextMenu.cpp:
   40615         (WebCore::ContextMenu::populate):
   40616 
   40617 2007-05-03  Holger Freyther <freyther (a] kde.org>
   40618 
   40619         Reviewed by Zack, landed by Simon.
   40620         This is bugzilla bug 13499.
   40621 
   40622         * WebCore.pro: Place the Qt port into the qt-port scope, add the Gdk port
   40623 
   40624 2007-05-03  Adele Peterson  <adele (a] apple.com>
   40625 
   40626         Use BUILDING_ON_TIGER.
   40627 
   40628         * page/mac/FrameMac.mm: (WebCore::Frame::setUseSecureKeyboardEntry):
   40629 
   40630 2007-05-03  Brady Eidson  <beidson (a] apple.com>
   40631 
   40632         Reviewed by Darin
   40633 
   40634         Some more minor cleanup that resolves a FIXME and ditches another pointless method
   40635 
   40636         No change in functionality == no layout test
   40637 
   40638         * loader/FrameLoader.cpp:
   40639         (WebCore::FrameLoader::commitProvisionalLoad):  Updated a comment
   40640         (WebCore::FrameLoader::continueLoadAfterWillSubmitForm): Folded startLoading() into this method
   40641         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): continueAfterWillSubmitForm becomes continueLoadAfterWillSubmitForm
   40642         * loader/FrameLoader.h: Removed startLoading()
   40643 
   40644 2007-05-03  Adele Peterson  <adele (a] apple.com>
   40645 
   40646         Reviewed by Tim Hatcher.
   40647 
   40648         Fix for <rdar://problem/4727607> REGRESSION: KeyScript is deprecated, need a new solution for forcing Roman input for password fields on Leopard
   40649 
   40650         * page/mac/FrameMac.mm: (WebCore::Frame::setUseSecureKeyboardEntry):
   40651         Use TSMSetDocumentProperty and TSMRemoveDocumentProperty on Leopard disable and enable non-ascii input sources.
   40652 
   40653 2007-05-03  Brady Eidson  <beidson (a] apple.com>
   40654 
   40655         Reviewed by Anders
   40656 
   40657         commitProvisionalLoad() was the name of two methods.
   40658         One of them was private and only called from one other private place.
   40659         This was driving me crazy.  I had to change that.
   40660 
   40661         No change in functionality == no layout test
   40662 
   40663         * loader/FrameLoader.cpp:
   40664         (WebCore::FrameLoader::transitionToCommitted): roll commitProvisionalLoad() into this method
   40665         * loader/FrameLoader.h: Removed commitProvisionalLoad()
   40666 
   40667 2007-05-03  Darin Adler  <darin (a] apple.com>
   40668 
   40669         Reviewed by Anders.
   40670 
   40671         - make ICU initialization lazy to speed up application start-up time
   40672           (when it includes an initial webpage load)
   40673 
   40674         * platform/TextCodecICU.h: Replaced registerEncodingNames and
   40675         registerCodecs with registerBaseEncodingNames, registerBaseCodecs,
   40676         registerExtendedEncodingNames, and registerExtendedCodecs.
   40677         * platform/TextCodecICU.cpp:
   40678         (WebCore::newTextCodecICU): Moved up to the top of the file.
   40679         (WebCore::TextCodecICU::registerBaseEncodingNames): Added. Registers
   40680         just UTF-8.
   40681         (WebCore::TextCodecICU::registerBaseCodecs): Ditto.
   40682         (WebCore::TextCodecICU::registerExtendedEncodingNames): Renamed.
   40683         (WebCore::TextCodecICU::registerExtendedCodecs): Ditto.
   40684         (WebCore::TextCodecICU::createICUConverter): Compare with the name
   40685         "GBK" in a way that does not require extending the maps.
   40686 
   40687         * platform/TextEncoding.cpp:
   40688         (WebCore::TextEncoding::usesVisualOrdering): Added code so this will
   40689         just return false if we haven't used any extended encoding names yet.
   40690         The result will be correct, and we won't ask for an encoding name that
   40691         will require registering the extended encoding names.
   40692         (WebCore::TextEncoding::isJapanese): Ditto.
   40693         (WebCore::TextEncoding::backslashAsCurrencySymbol): Ditto, but return
   40694         a backslash instead of false.
   40695 
   40696         * platform/TextEncodingRegistry.h: Added a new function named
   40697          noExtendedTextEncodingNameUsed.
   40698         * platform/TextEncodingRegistry.cpp:
   40699         (WebCore::buildBaseTextCodecMaps): Added. Registers the base encodings,
   40700         including Latin-1 because it's the default, and the UTF encodings.
   40701         (WebCore::extendTextCodecMaps): Added. Registers all the other encodings.
   40702         (WebCore::newTextCodec): Removed the all to buildTextCodecMap because
   40703         we always build the map when making the canonical encoding name.
   40704         (WebCore::atomicCanonicalTextEncodingName): Changed code to build only
   40705         the base maps at first, then extend the maps the first time we run into
   40706         a name we don't know.
   40707         (WebCore::noExtendedTextEncodingNameUsed): Added.
   40708 
   40709 2007-05-03  Mark Rowe  <mrowe (a] apple.com>
   40710 
   40711         Qt build fix.  In r21185 the Qt version of WebCore::scaleDragImage was
   40712         updated to have the incorrect signature.
   40713 
   40714         * platform/qt/DragImageQt.cpp:
   40715         (WebCore::scaleDragImage):
   40716 
   40717 2007-05-02  Beth Dakin  <bdakin (a] apple.com>
   40718 
   40719         * dom/Node.h: Just fixing a variable name because it's driving me 
   40720         mad.
   40721 
   40722 2007-05-02  Beth Dakin  <bdakin (a] apple.com>
   40723 
   40724         Reviewed by Hyatt.
   40725 
   40726         Fix for <rdar://problem/4513966> Never-ending identical repaint @ 
   40727         orbitz.com (Safari eating 85% CPU)
   40728 
   40729         We need to be a little bit more savvy about when we do a FULL style 
   40730         recalc since it can be unnecessary and expensive.
   40731 
   40732         * css/CSSMutableStyleDeclaration.cpp:
   40733         (WebCore::CSSMutableStyleDeclaration::setChanged): Now takes a 
   40734         StyleChangeType as a parameter.
   40735         (WebCore::CSSMutableStyleDeclaration::setProperty): Send 
   40736         InlineStyleChange as the paramter. This is the optimization!
   40737         * css/CSSMutableStyleDeclaration.h: setChanged takes a 
   40738         StyleChangeType as a parameter.
   40739         * dom/Document.cpp: setChanged now takes a StyleChangeType instead 
   40740         of a bool.
   40741         (WebCore::Document::recalcStyle): Same.
   40742         * dom/Element.cpp: 
   40743         (WebCore::Element::recalcStyle): This is the fix!! Only set change 
   40744         to Force is we use descendant rules AND it's a FullStyleChange.
   40745         * dom/Node.cpp: m_hasStyle was an unused bit on Node, so this patch 
   40746         gets rid of it and uses that extra bit for m_changed to be a 
   40747         StyleChangeType instead of a bool.
   40748         (WebCore::Node::Node):
   40749         (WebCore::Node::setChanged):
   40750         (WebCore::Node::dump):
   40751         * dom/Node.h: Same.
   40752         (WebCore::): Define the StyleChangeType enum.
   40753         (WebCore::Node::hasClass):
   40754         (WebCore::Node::changed):
   40755         (WebCore::Node::styleChangeType):
   40756         (WebCore::Node::setHasClass):
   40757         * dom/StyledElement.cpp:
   40758         (WebCore::StyledElement::parseMappedAttribute): Don't bother 
   40759         calling setHasStyle() since m_hasStyle is gone now. It was never 
   40760         used, and this was the only place it was set.
   40761         * dom/Text.cpp:
   40762         (WebCore::Text::recalcStyle): setChanged now takes a 
   40763         StyleChangeType instead of a bool.
   40764         * html/HTMLFrameSetElement.cpp:
   40765         (WebCore::HTMLFrameSetElement::recalcStyle): Same.
   40766         * html/HTMLSelectElement.cpp:
   40767         (WebCore::HTMLSelectElement::restoreState): Same.
   40768         (WebCore::HTMLSelectElement::reset): Same.
   40769         * html/HTMLTextAreaElement.cpp:
   40770         (WebCore::HTMLTextAreaElement::setValue): Same.
   40771         * ksvg2/misc/SVGTimer.cpp:
   40772         (WebCore::SVGTimer::applyAnimations): Same.
   40773         * ksvg2/svg/SVGUseElement.cpp:
   40774         (WebCore::SVGUseElement::recalcStyle): Same.
   40775         * platform/graphics/svg/SVGResource.cpp:
   40776         (WebCore::SVGResource::repaintClients): Same.
   40777 
   40778 2007-05-02  David Harrison  <harrison (a] apple.com>
   40779 
   40780         Reviewed by Antti.
   40781 
   40782         <rdar://problem/4859132> Grammar must always be checked in entire-sentence chunks, and shouldn't show markers for current sentence
   40783 
   40784         Restore the remainder of the original fix now that blocking bug rdar://5174862 is addressed.
   40785 
   40786         John made the original patch on 2007-04-10, but this fell prey to rdar://5157329.
   40787         Justin backed out the whole patch on 2007-04-30 to avoid the crash.
   40788         Justin then restored most of the original patch, but used word granularity instead, to keep the build working.
   40789         I just addressed the root cause of rdar://5157329 in rdar://5174862.
   40790         This patch switches the temp uses of word granularity back to sentence granularity.
   40791         
   40792         * editing/mac/EditorMac.mm:
   40793         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   40794         * page/Frame.cpp:
   40795         (WebCore::Frame::respondToChangedSelection):
   40796 
   40797 2007-05-02  David Harrison  <harrison (a] apple.com>
   40798 
   40799         Reviewed by Antti.
   40800 
   40801         <rdar://problem/5174862> Crash resulting from DeprecatedString::insert()
   40802         
   40803         Test added: editing/selection/move-by-sentence-001.html
   40804 
   40805         * editing/visible_units.cpp:
   40806         (WebCore::previousBoundary):
   40807         (WebCore::nextBoundary):
   40808         Use a UChar Vector instead of DeprecatedString.
   40809         Avoid creating an extra string for secure bullet replacement unless it is actually needed.
   40810         
   40811         * platform/DeprecatedString.cpp:
   40812         (WebCore::DeprecatedString::insert):
   40813         Call forceUnicode() before setLength(), so that only the unicode buffer is resized.
   40814 
   40815        (WebCore::DeprecatedString::setLength):
   40816         Adjust the unicode buffer even if the ascii buffer is valid.
   40817         
   40818 2007-05-02  Mitz Pettel  <mitz (a] webkit.org>
   40819 
   40820         Reviewed by Brady.
   40821 
   40822         - http://bugs.webkit.org/show_bug.cgi?id=13564
   40823           Remove friend class FrameLoader from Frame
   40824 
   40825         No test added since there is no change in functionality.
   40826 
   40827         * loader/FrameLoader.cpp:
   40828         (WebCore::FrameLoader::didOpenURL):
   40829         (WebCore::FrameLoader::begin):
   40830         (WebCore::FrameLoader::open):
   40831         * loader/FrameLoader.h: Made clear() private.
   40832         * page/Frame.cpp:
   40833         (WebCore::Frame::setDocument): Changed the argument into a PassRefPtr.
   40834         * page/Frame.h:
   40835         * xml/XSLTProcessor.cpp:
   40836         (WebCore::XSLTProcessor::createDocumentFromSource):
   40837 
   40838 2007-05-02  Mitz Pettel  <mitz (a] webkit.org>
   40839 
   40840         Reviewed by Dave Hyatt.
   40841 
   40842         - fix http://bugs.webkit.org/show_bug.cgi?id=9276
   40843           Quirksmode: Image swap resize bug
   40844 
   40845         Test: fast/replaced/image-resize-width.html
   40846 
   40847         * rendering/RenderImage.cpp:
   40848         (WebCore::RenderImage::imageChanged): Moved the call to dirtyPrefWidths()
   40849         before the call to calcWidth().
   40850 
   40851 2007-05-02  David Hyatt  <hyatt (a] apple.com>
   40852 
   40853         Fix for bug 13566, broken Dashboard widgets.  setPrefWidthsDirty did
   40854         the wrong thing for text children of a positioned element.
   40855 
   40856         Reviewed by mitz
   40857 
   40858         fast/block/positioning/pref-width-change.html
   40859 
   40860         * rendering/RenderObject.cpp:
   40861         (WebCore::RenderObject::setPrefWidthsDirty):
   40862 
   40863 2007-05-01  Darin Adler  <darin (a] apple.com>
   40864 
   40865         * rendering/RenderReplaced.cpp: Fix typo in a comment.
   40866 
   40867 2007-05-01  David Hyatt  <hyatt (a] apple.com>
   40868 
   40869         Fix for 13558, crash when using absolutely positioned generated content
   40870         inside an inline.
   40871 
   40872         Reviewed by darin
   40873 
   40874         fast/css-generated-content/absolute-position-inside-inline.html
   40875 
   40876         * rendering/RenderContainer.cpp:
   40877         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
   40878 
   40879 2007-05-01  Justin Garcia  <justin.garcia (a] apple.com>
   40880 
   40881         Reviewed by darin
   40882 
   40883         <rdar://problem/5002441> 
   40884         Pressing space key does nothing above quoted content or a signature
   40885         
   40886         Inserting a space under these circumstances inserts a single 
   40887         text node containing a regular space and then does a layout. 
   40888         That space isn't rendered (which is correct).  Whitespace 
   40889         rebalancing is supposed to correct it but failed.  It replaces 
   40890         the space with a non-breaking space, but that change doesn't 
   40891         dirty line boxes (9441) and so the space isn't rendered.
   40892         
   40893         This workaround turns all incoming spaces into non-breaking 
   40894         spaces before they're inserted (they're rebalanced after 
   40895         insertion and turned back into regular spaces if possible).
   40896 
   40897         * editing/InsertTextCommand.cpp:
   40898         (WebCore::InsertTextCommand::prepareForTextInsertion): Removed
   40899         an old irrelevant FIXME.
   40900         (WebCore::InsertTextCommand::input): Turn incoming spaces into
   40901         non breaking spaces before inserting them.
   40902         
   40903 2007-05-01  Darin Adler  <darin (a] apple.com>
   40904 
   40905         Reviewed by Hyatt.
   40906 
   40907         - fix http://bugs.webkit.org/show_bug.cgi?id=13559
   40908           REGRESSION: Canvas aspect ratio is incorrect
   40909 
   40910         - remove intrinsicWidth/Height functions from RenderObject
   40911 
   40912         Test: fast/canvas/canvas-size-change-after-layout.html
   40913 
   40914         * html/HTMLCanvasElement.cpp:
   40915         (WebCore::HTMLCanvasElement::createRenderer): Removed code to set
   40916         the intrinsic size, because the renderer now takes care of this
   40917         in its constructor.
   40918         (WebCore::HTMLCanvasElement::reset): Instead of calling the
   40919         setIntrinsicWidth/Height functions, call canvasSizeChanged, which
   40920         takes care of layout, but only if the size actually changed. Also
   40921         call repaint if the contents of the canvas changed.
   40922 
   40923         * rendering/RenderApplet.h:
   40924         * rendering/RenderApplet.cpp: (WebCore::RenderApplet::intrinsicSize):
   40925         Override the new intrinsicSize function. This override still doesn't
   40926         make sense, so left a FIXME in here.
   40927 
   40928         * rendering/RenderBox.h: Added an intrinsicSize function here to replace
   40929         the intrinsicWidth/Height functions removed from RenderObject.
   40930         * rendering/RenderBox.cpp:
   40931         (WebCore::RenderBox::calcReplacedWidthUsing): Use intrinsicSize instead
   40932         of intrinsicWidth.
   40933         (WebCore::RenderBox::calcReplacedHeightUsing): Ditto, but for height.
   40934 
   40935         * rendering/RenderHTMLCanvas.h: Changed the constructor parameter to be
   40936         an HTMLCanvasElement* instead of Node*. Also added a canvasSizeChanged
   40937         function.
   40938         * rendering/RenderHTMLCanvas.cpp:
   40939         (WebCore::RenderHTMLCanvas::RenderHTMLCanvas): Pass an initial intrinsic
   40940         size based on the current size of the canvas element. This is now the
   40941         responsibility of the renderer and the DOM element calls the canvasSizeChanged
   40942         function when the size changes.
   40943         (WebCore::RenderHTMLCanvas::paint): Removed checks of the type of the element,
   40944         and used the node() function because we don't have to worry about the anonymous
   40945         case in this class.
   40946         (WebCore::RenderHTMLCanvas::canvasSizeChanged): Added. Changes the size and
   40947         then calls setNeedsLayout and setPrefWidthsDirty as needed. I based the logic
   40948         here on careful reading of RenderImage::imageChanged.
   40949 
   40950         * rendering/RenderImage.cpp:
   40951         (WebCore::RenderImage::RenderImage): Pass a default intrinsic size of 0,0
   40952         instead of calling setIntrinsicWidth/Height.
   40953         (WebCore::RenderImage::setImageSizeForAltText): Call the new intrinsic size
   40954         functions instead of the width/height ones. Simplifies the logic since we
   40955         handle both dimensions at once.
   40956         (WebCore::RenderImage::imageChanged): Ditto.
   40957         (WebCore::RenderImage::layout): Ditto.
   40958         (WebCore::RenderImage::calcAspectRatioWidth): Ditto.
   40959         (WebCore::RenderImage::calcAspectRatioHeight): Ditto.
   40960 
   40961         * rendering/RenderObject.h: Removed intrinsicWidth/Height virtual functions.
   40962 
   40963         * rendering/RenderReplaced.h: Replaced intrinsicWidth, intrinsicHeight,
   40964         setIntrinsicWidth, setIntrinsicHeight, m_intrinsicWidth, and m_intrinsicHeight
   40965         with intrinsicSize, setIntrinsicSize, and m_intrinsicSize.
   40966         * rendering/RenderReplaced.cpp:
   40967         (WebCore::RenderReplaced::RenderReplaced): Added a second contructor that takes
   40968         an intrinsic size parameter. Also updated constructor since the intrinsic size
   40969         is now an IntSize instead of two integers.
   40970         (WebCore::RenderReplaced::intrinsicSize): Added. No point in making this inline
   40971         because it's a virtual function.
   40972         (WebCore::RenderReplaced::setIntrinsicSize): Added. Didn't make this inline,
   40973         partly because in the future we might want this to be more than just a simple
   40974         setter function, factoring in common code used in both RenderImage and
   40975         RenderHTMLCanvas.
   40976 
   40977         * rendering/RenderWidget.h: Removed a stray using declaration that wasn't needed.
   40978 
   40979 2007-05-01  David Hyatt  <hyatt (a] apple.com>
   40980 
   40981         Fix for hang when incorrectly trying to add before/after content to
   40982         a <select>.  Disallow generated content in all selects and also turn it
   40983         off for <input> buttons.
   40984 
   40985         Reviewed by aroben
   40986 
   40987         * rendering/RenderBlock.cpp:
   40988         (WebCore::RenderBlock::setStyle):
   40989         * rendering/RenderButton.cpp:
   40990         (WebCore::RenderButton::canHaveChildren):
   40991         * rendering/RenderButton.h:
   40992 
   40993 2007-05-01  Darin Adler  <darin (a] apple.com>
   40994 
   40995         Reviewed by Hyatt.
   40996 
   40997         - removed the m_implicit bit from Node, freeing up a bit
   40998 
   40999         - fixed <rdar://problem/5172607> XML parser is creating implicit tbody elements
   41000         - fixed <rdar://problem/5172596> HTML-parser-created tbody elements are being
   41001           ignored when processing CSS child rules
   41002 
   41003         Test: fast/css/child-selector-implicit-tbody.html
   41004 
   41005         * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::checkSelector):
   41006         Removed code that used to look at implicitNode(), which no longer exists.
   41007 
   41008         * css/html4.css: Added a style rule to handle cases where we have a tr
   41009         inside a table with no intervening table section.
   41010 
   41011         * dom/Node.h: Removed the bit.
   41012         * dom/Node.cpp:
   41013         (WebCore::Node::Node): Don't initialize the bit.
   41014         (WebCore::Node::dump): Don't dump the bit.
   41015 
   41016         * dom/XMLTokenizer.cpp:
   41017         (WebCore::XMLTokenizer::startElementNs): Remove the code that made a
   41018         table body element. This is handled in the render tree, the DOM tree
   41019         should not be mangled.
   41020         (WebCore::XMLTokenizer::endElementNs): Removed code that used to look at
   41021         implicitNode(), which no longer exists.
   41022 
   41023         * html/HTMLElementFactory.cpp: (WebCore::tableSectionConstructor):
   41024         Removed boolean parameter that was passed to the HTMLTableSectionElement
   41025         constructor.
   41026         * html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Ditto.
   41027         * html/HTMLTableElement.cpp:
   41028         (WebCore::HTMLTableElement::createTHead): Ditto.
   41029         (WebCore::HTMLTableElement::createTFoot): Ditto.
   41030         (WebCore::HTMLTableElement::insertRow): Changed to return a PassRefPtr,
   41031         because it's possible the row could be removed from the table by JavaScript
   41032         code responding to DOM mutation events before the function returns. Just
   41033         something I noticed by code inspection.
   41034 
   41035         * html/HTMLTableSectionElement.cpp:
   41036         (WebCore::HTMLTableSectionElement::HTMLTableSectionElement): Removed
   41037         boolean "implicit" parameter to the constructor.
   41038         (WebCore::HTMLTableSectionElement::insertRow): Changed to return a
   41039         PassRefPtr for the same reason cited above.
   41040 
   41041         * html/HTMLTableElement.h: Changed the return value of insertRow to be
   41042         a PassRefPtr.
   41043         * html/HTMLTableSectionElement.h: Ditto.
   41044 
   41045 2007-04-30  David Hyatt  <hyatt (a] apple.com>
   41046 
   41047         Fix for bug 12691, generated content and display: table-cell duplicates
   41048         content on a size change.  Make sure that the code to update before/after
   41049         content is smart enough to drill into anonymous containers to find the
   41050         old child.
   41051 
   41052         Reviewed by olliej
   41053 
   41054         Added fast/css-generated-content/table-cell-before-content.html
   41055 
   41056         * rendering/RenderBlock.cpp:
   41057         (WebCore::RenderBlock::setStyle):
   41058         * rendering/RenderButton.cpp:
   41059         (WebCore::RenderButton::updateBeforeAfterContent):
   41060         * rendering/RenderButton.h:
   41061         * rendering/RenderContainer.cpp:
   41062         (WebCore::RenderContainer::beforeAfterContainer):
   41063         (WebCore::RenderContainer::updateBeforeAfterContent):
   41064         (WebCore::RenderContainer::updateBeforeAfterContentForObject):
   41065         * rendering/RenderContainer.h:
   41066         * rendering/RenderInline.cpp:
   41067         (WebCore::RenderInline::setStyle):
   41068         (WebCore::RenderInline::addChildToFlow):
   41069         (WebCore::RenderInline::splitInlines):
   41070 
   41071 2007-04-30  Jungshik Shin <jungshik.shin (a] gmail.com>
   41072 
   41073         Reviewed by justin
   41074         
   41075         <http://bugs.webkit.org/show_bug.cgi?id=13552>
   41076         comment to Range::comparePoint in dom/Range.cpp has 
   41077         '0xD0' in place of '-': leading to a compiler warning
   41078 
   41079         * dom/Range.cpp:
   41080         (WebCore::Range::comparePoint):
   41081 
   41082 2007-04-30  Justin Garcia  <justin.garcia (a] apple.com>
   41083 
   41084         Reviewed by darin
   41085 
   41086         <rdar://problem/4875189> List gets deleted when replacing contents
   41087 
   41088         * editing/ReplaceSelectionCommand.cpp:
   41089         (WebCore::ReplaceSelectionCommand::doApply): Don't expand
   41090         to include elements, like lists, when deleting a selection 
   41091         to replace it.
   41092 
   41093 2007-04-30  Justin Garcia  <justin.garcia (a] apple.com>
   41094 
   41095         Reviewed by ggaren
   41096         
   41097         Buildfix.  Leave in grammar checking machinery to 
   41098         keep WebKit building on other platforms but don't
   41099         operate on sentence sized chunks so that we don't
   41100         re-introduce 5157329.
   41101 
   41102         * editing/Editor.h:
   41103         * editing/mac/EditorMac.mm:
   41104         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   41105         (WebCore::markMisspellingsOrBadGrammar):
   41106         (WebCore::Editor::markMisspellings):
   41107         (WebCore::Editor::markBadGrammar):
   41108         * page/Frame.cpp:
   41109         (WebCore::Frame::respondToChangedSelection):
   41110 
   41111 2007-04-30  Justin Garcia  <justin.garcia (a] apple.com>
   41112 
   41113         Reviewed by darin
   41114 
   41115         <rdar://problem/5168598> 
   41116         Crash when deleting a link inside an input field
   41117         
   41118         Deletion code tries to update one of its positions to keep 
   41119         it valid and nullifies it.  Later in mergeParagraphs we try 
   41120         to find out if it's valid by checking to see if it's still in 
   41121         the document and crash.
   41122         
   41123         The fix is just to not bother keeping the position, 
   41124         m_upstreamStart, valid, since after the point in the code 
   41125         under examination, it doesn't need to be valid anymore.  
   41126         Besides, code to update DeleteSelectionCommand's positions 
   41127         should go in the functions that handle the content removal 
   41128         that might invalid them (there are already FIXMEs about this).
   41129         
   41130         Also, users shouldn't be able to insert links (or any rich content)
   41131         into plaintext-only regions like text fields, even if those
   41132         text fields are inside richly editable regions.  This is a 
   41133         separate bug and is filed as 5171552.
   41134 
   41135         * editing/DeleteSelectionCommand.cpp:
   41136         (WebCore::DeleteSelectionCommand::handleGeneralDelete): Don't
   41137         bother updating m_upstreamStart.
   41138 
   41139 2007-04-30  Patti Hoa  <patti (a] apple.com>
   41140 
   41141         Reviewed by Dave Hyatt.
   41142         
   41143         <rdar://problem/5108546> REGRESSION: Zoom follows keyboard focus does not work
   41144 
   41145         * WebCore.xcodeproj/project.pbxproj:
   41146         Add new file SelectionControllerMac.mm
   41147         * dom/Document.cpp:
   41148         (WebCore::Document::updateSelection):
   41149         Move the code to fire off AXSelectedTextChanged notification to a new method notifyAccessibilityForSelectionChange in SelectionControllerMac.mm
   41150         * editing/SelectionController.cpp:
   41151         (WebCore::SelectionController::setSelection):
   41152         call notifyAccessibilityForSelectionChange to handle firing of accessibility notification and zoomFocusChange
   41153         * editing/SelectionController.h:
   41154         Add notifyAccessibilityForSelectionChange method for Mac platform
   41155         * platform/Widget.h:
   41156         * platform/mac/WidgetMac.mm:
   41157         (WebCore::Widget::convertToScreenCoordinate):
   41158         Add a helper routine that takes IntPoint in local coordinate and convert that to screen coordinate
   41159 
   41160 2007-04-30  Justin Garcia  <justin.garcia (a] apple.com>
   41161 
   41162         Reviewed by harrison
   41163 
   41164         <rdar://problem/5157329> 
   41165         REGRESSION: Crash at WTF::fastFree() when arrowing or deleting backward through editable text (13493)
   41166         
   41167         Backing out the changes for 4859132.
   41168 
   41169         * editing/Editor.h:
   41170         * editing/mac/EditorMac.mm:
   41171         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   41172         (WebCore::Editor::markMisspellings):
   41173         * page/Frame.cpp:
   41174         (WebCore::Frame::respondToChangedSelection):
   41175 
   41176 2007-04-29  Antti Koivisto  <antti (a] apple.com>
   41177 
   41178         Reviewed by Oliver.
   41179 
   41180         Fix <rdar://problem/5169261>
   41181         REGRESSION: Google Maps zooming too sensitive when using two fingers on trackpad
   41182         
   41183         Use line based delta values when generating DOM wheel events, use pixel deltas
   41184         for scrolling only.
   41185         
   41186         No test case, requires user interaction and specific hardware.
   41187 
   41188         * page/EventHandler.cpp:
   41189         (WebCore::EventHandler::handleWheelEvent):
   41190         * platform/PlatformWheelEvent.h:
   41191         (WebCore::PlatformWheelEvent::continuousDeltaX):
   41192         (WebCore::PlatformWheelEvent::continuousDeltaY):
   41193         * platform/mac/WheelEventMac.mm:
   41194         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   41195 
   41196 2007-04-29  Oliver Hunt  <oliver (a] apple.com>
   41197 
   41198         Reviewed by Brady.
   41199 
   41200         Build fix for experimental features build
   41201 
   41202         * rendering/RenderForeignObject.cpp:
   41203 
   41204 2007-04-29  Mitz Pettel  <mitz (a] webkit.org>
   41205 
   41206         Reviewed by Dave Hyatt.
   41207 
   41208         - fix http://bugs.webkit.org/show_bug.cgi?id=13544
   41209           REGRESSION (r21120): Member profile frame not erased at Yahoo! Answers
   41210 
   41211         Test: fast/repaint/layer-hide-when-needs-layout.html
   41212 
   41213         * rendering/RenderObject.cpp:
   41214         (WebCore::RenderObject::setStyle): If we get a layout hint, we count on
   41215         layout() or updateLayerPositions() to repaint. In the case of a layer
   41216         going invisible, however, we need to repaint here since neither of the
   41217         above will do it.
   41218 
   41219 2007-04-29  Oliver Hunt  <oliver (a] apple.com>
   41220 
   41221         Reviewed by Steve.
   41222 
   41223         Fix for <rdar://problem/5126393> REGRESSION (r19672-19697): Safari drag image drags at original size (13261)
   41224 
   41225         Added logic to ensure that when we create the drag image
   41226         we're looking at the rendered image size.
   41227 
   41228         * page/DragController.cpp:
   41229         (WebCore::DragController::doImageDrag):
   41230           Pass the rendered image size to fitDragImageToMaxSize
   41231 
   41232         * platform/DragImage.cpp:
   41233         (WebCore::fitDragImageToMaxSize):
   41234            Need to do scaling relative to rendered image size
   41235 
   41236         * platform/DragImage.h:
   41237            scaleDragImage needs x and y scales to allow for them to be
   41238            scaled seperately on a page
   41239 
   41240         * platform/gdk/DragImageGdk.cpp:
   41241         (WebCore::scaleDragImage):
   41242            Prevent build bustage
   41243 
   41244         * platform/mac/DragImageMac.mm:
   41245         (WebCore::scaleDragImage):
   41246            scale width and height independently
   41247 
   41248         * platform/qt/DragImageQt.cpp:
   41249         (WebCore::scaleDragImage):
   41250            Prevent build bustage
   41251 
   41252 2007-04-29  Darin Adler  <darin (a] apple.com>
   41253 
   41254         Reviewed by Adele.
   41255 
   41256         - fix the Gmail part of http://bugs.webkit.org/show_bug.cgi?id=12798
   41257           and <rdar://problem/4118559>
   41258 
   41259         This patch changes things so that resizing can make things larger than their
   41260         initial size, but not smaller. I believe this resolves the problem for Gmail,
   41261         but you can still get strange behavior if you have a small right-aligned <textarea>.
   41262 
   41263         * rendering/RenderLayer.cpp:
   41264         (WebCore::RenderLayer::resize): Rewrote to use more IntPoint and IntSize and add
   41265         in a new minimum-size algorithm. This function now has the side effect of storing
   41266         a new minimumSizeForResizing in the element being resized, and respects any existing
   41267         minimum as well.
   41268         (WebCore::RenderLayer::offsetFromResizeCorner): Reversed this so it converts the
   41269         point into coordinates relative to the resize corner, hence negative numbers mean
   41270         the point is above and to the left. This is used only in the algorithm above.
   41271 
   41272         * dom/Element.h: Removed unneeded include of Attr.h, and added forward declarations
   41273         as needed. Removed all friend declarations; there was no need for any of them.
   41274         Tweaked formatting of various declarations and removed unneeded parameter names.
   41275         Made as much as possible private, and a couple things public to avoid the need for
   41276         friend classes. Added minimumSizeForResizing, setMinimumSizeForResizing, rareData,
   41277         and createRareData functions.
   41278 
   41279         * dom/Element.cpp:
   41280         (WebCore::rareDataMap): Added. Function to return the single global map.
   41281         (WebCore::rareDataFromMap): Added. For use by inlined functions to get the
   41282         data from the map in the case where it's present.
   41283         (WebCore::ElementRareData::ElementRareData): Added.
   41284         (WebCore::Element::~Element): Added code to delete the element from the rare
   41285         data map when appropriate.
   41286         (WebCore::Element::rareData): Added.
   41287         (WebCore::Element::createRareData): Added.
   41288         (WebCore::Element::setAttributeNodeNS): Got rid of the old inline version of this,
   41289         since it was the sole reason we had to include Attr.h in Element.h.
   41290         (WebCore::Element::minimumSizeForResizing): Added. Accesses rare data.
   41291         (WebCore::Element::setMinimumSizeForResizing): Ditto.
   41292 
   41293         * dom/Node.h: Renamed the m_specified bit since it's now used for two purposes.
   41294         Its new long name is m_attrWasSpecifiedOrElementHasRareData.
   41295 
   41296         * dom/Attr.cpp: (WebCore::Attr::Attr): Updated for bit name change.
   41297         * dom/Attr.h:
   41298         (WebCore::Attr::specified): Ditto.
   41299         (WebCore::Attr::setSpecified): Added, since setting the bit directly is pretty ugly now.
   41300         * dom/Document.cpp: (WebCore::Document::adoptNode): Updated for bit name change.
   41301         * dom/Node.cpp:
   41302         (WebCore::Node::Node): Ditto.
   41303         (WebCore::Node::dump): Ditto.
   41304 
   41305         * dom/NamedAttrMap.cpp: (WebCore::NamedAttrMap::isReadOnlyNode): Moved out of line,
   41306         since this was the sole reason we had to include Element.h in NamedAttrMap.h.
   41307 
   41308         * html/HTMLElement.cpp:
   41309         (WebCore::HTMLElement::nodeName): Changed to use tagQName() since that's a public
   41310         way to do something that's now private.
   41311         (WebCore::HTMLElement::cloneNode): Ditto.
   41312 
   41313         * dom/Attribute.cpp:
   41314         * dom/NamedAttrMap.h:
   41315         * dom/NamedMappedAttrMap.cpp:
   41316         * dom/StyledElement.h:
   41317         * html/HTMLTokenizer.h:
   41318         * xml/XPathFunctions.cpp:
   41319         * xml/XPathStep.cpp:
   41320         Updated includes, and other administrivia.
   41321 
   41322 2007-04-29  Mitz Pettel  <mitz (a] webkit.org>
   41323 
   41324         Reviewed by Darin and Hyatt.
   41325 
   41326         - http://bugs.webkit.org/show_bug.cgi?id=13487
   41327           Implement O(1) absoluteClippedOverflowRect and absoluteOutlineBox during layout for a possible speed gain
   41328 
   41329         Test for a bug fixed by this patch: fast/repaint/intermediate-layout-position-clip.html
   41330 
   41331         By keeping track of the total translation and clip during layout, absolutePosition and
   41332         computeAbsoluteRepaintRect become O(1).
   41333 
   41334         * WebCore.pro: Added LayoutState.cpp
   41335         * WebCore.vcproj/WebCore/WebCore.vcproj: Added LayoutState.{cpp,h}
   41336         * WebCore.xcodeproj/project.pbxproj: Added LayoutState.{cpp,h}
   41337         * WebCoreSources.bkl: Added LayoutState.cpp
   41338         * page/FrameView.cpp:
   41339         (WebCore::FrameView::layout): When doing subtree layout, push an initial layout state for the
   41340         layout root.
   41341         * rendering/LayoutState.cpp: Added. A LayoutState corresponding to a box consists of the origin of
   41342         its coordinate system in view coordinates and possibly the clip rect, in view coordinates, which
   41343         applies to its children.
   41344         (WebCore::LayoutState::LayoutState):
   41345         (WebCore::LayoutState::destroy):
   41346         (WebCore::throw):
   41347         (WebCore::LayoutState::operator delete):
   41348         * rendering/LayoutState.h: Added.
   41349         (WebCore::LayoutState::LayoutState):
   41350         * rendering/RenderBlock.cpp:
   41351         (WebCore::RenderBlock::layoutBlock): Factored out the "only positioned objects" case into
   41352         layoutOnlyPositionedObjects(). Added code to push/pop LayoutState, unless we have columns, in
   41353         which case we disable/enable LayoutState. Removed the translation by the layout delta
   41354         of the old absolute rects, since that is now integral to absoluteClippedOverflowRect() and
   41355         absoluteOutlineBox().
   41356         (WebCore::RenderBlock::layoutOnlyPositionedObjects): Added this helper function that checks for
   41357         and handles the case where only positioned objects need layout. Returns true in that case.
   41358         (WebCore::RenderBlock::repaintOverhangingFloats): Disabled LayoutState when repainting floats, since
   41359         they may belong to other containers.
   41360         (WebCore::RenderBlock::updateFirstLetter): Disabled LayoutState when adding and removing from the
   41361         first letter container, since it may be different than ourselves.
   41362         * rendering/RenderBlock.h:
   41363         * rendering/RenderBox.cpp:
   41364         (WebCore::RenderBox::setStyle): Minor cleanup: changed element()->document() to the equivalent document().
   41365         (WebCore::RenderBox::offsetForPositionedInContainer): Added. Factored out common code from
   41366         absolutePosition, computeAbsoluteRepaintRect and RenderLayer::updateLayerPosition into this function.
   41367         (WebCore::RenderBox::absolutePosition): Added an O(1) code path when this function is called during
   41368         layout (and LayoutState has not been disabled). Factored out some code into
   41369         offsetForPositionedInContainer.
   41370         (WebCore::RenderBox::absoluteClippedOverflowRect): Added the layout delta here, so callers don't need
   41371         to.
   41372         (WebCore::RenderBox::computeAbsoluteRepaintRect): Added an O(1) code path when this function is called
   41373         during layout (and LayoutState has not been disabled). Factored out some code into
   41374         offsetForPositionedInContainer.
   41375         * rendering/RenderContainer.cpp:
   41376         (WebCore::RenderContainer::layout): Added LayoutState push/pop.
   41377         * rendering/RenderFlexibleBox.cpp:
   41378         (WebCore::RenderFlexibleBox::layoutBlock): Factored out the "only positioned objects" case into
   41379         layoutOnlyPositionedObjects(). Added LayoutState push/pop. Removed the translation by the layout delta
   41380         of the old absolute rects, since that is now integral to absoluteClippedOverflowRect() and
   41381         absoluteOutlineBox().
   41382         * rendering/RenderFlow.cpp:
   41383         (WebCore::RenderFlow::absoluteClippedOverflowRect): Added an ASSERT.
   41384         * rendering/RenderForeignObject.cpp:
   41385         (WebCore::RenderForeignObject::layout): Disabled LayoutState because it is incompatible with arbitrary
   41386         affine transforms.
   41387         * rendering/RenderHTMLCanvas.cpp:
   41388         (WebCore::RenderHTMLCanvas::layout): Removed the translation by the layout delta of the old absolute
   41389         rects, since that is now integral to absoluteClippedOverflowRect() and absoluteOutlineBox().
   41390         * rendering/RenderImage.cpp:
   41391         (WebCore::RenderImage::layout): Ditto.
   41392         * rendering/RenderLayer.cpp:
   41393         (WebCore::RenderLayer::updateLayerPositions): Added ASSERTs. Factored out some code into
   41394         RenderBox::offsetForPositionedInContainer.
   41395         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Disabled LayoutState around the call to
   41396         scrollToOffset.
   41397         * rendering/RenderListItem.cpp:
   41398         (WebCore::RenderListItem::updateMarkerLocation): Disabled LayoutState when moving the list marker, since
   41399         it can trigger repainting in other containers.
   41400         * rendering/RenderObject.cpp:
   41401         (WebCore::RenderObject::isRoot): Minor cleanup: changed element()->document() to the equivalent
   41402         document().
   41403         (WebCore::RenderObject::computeAbsoluteRepaintRect): Removed 'return' at the end of the function.
   41404         (WebCore::RenderObject::container): Reordered to avoid calling isText() twice.
   41405         (WebCore::RenderObject::absoluteOutlineBox): Added the layout delta here, so callers don't need to.
   41406         * rendering/RenderSVGContainer.cpp:
   41407         (WebCore::RenderSVGContainer::layout): Disabled LayoutState because it is incompatible with arbitrary
   41408         affine transforms.
   41409         * rendering/RenderTable.cpp:
   41410         (WebCore::RenderTable::layout):  Factored out the "only positioned objects" case into
   41411         layoutOnlyPositionedObjects(). Added LayoutState push/pop. Removed the translation by the layout delta
   41412         of the old absolute rects, since that is now integral to absoluteClippedOverflowRect() and
   41413         absoluteOutlineBox().
   41414         * rendering/RenderTableCell.cpp:
   41415         (WebCore::RenderTableCell::absoluteClippedOverflowRect): Added the layout delta here, so callers
   41416         don't need to.
   41417         (WebCore::RenderTableCell::computeAbsoluteRepaintRect): For the O(1) code path, skipped the correction
   41418         for the parent row, because RenderTableRow doesn't push a translation into LayoutState.
   41419         (WebCore::RenderTableCell::absolutePosition): Ditto.
   41420         * rendering/RenderTableRow.cpp:
   41421         (WebCore::RenderTableRow::layout): Added LayoutState push/pop.
   41422         * rendering/RenderTableSection.cpp:
   41423         (WebCore::RenderTableSection::setCellWidths): Added LayoutState push/pop if cells are repainted or
   41424         receive layout.
   41425         (WebCore::RenderTableSection::calcRowHeight): Ditto.
   41426         (WebCore::RenderTableSection::layoutRows): Added LayoutState push/pop.
   41427         * rendering/RenderView.cpp:
   41428         (WebCore::RenderView::RenderView):
   41429         (WebCore::RenderView::layout): Added initial LayoutState setup for the layout.
   41430         (WebCore::RenderView::paintBoxDecorations): Minor cleanup: changed element()->document() to the
   41431         equivalent document().
   41432         (WebCore::RenderView::repaintViewRectangle): Ditto.
   41433         (WebCore::RenderView::pushLayoutState): Added. Pushes initial layout state for subtree layout.
   41434         * rendering/RenderView.h:
   41435         (WebCore::RenderView::pushLayoutState):
   41436         (WebCore::RenderView::popLayoutState):
   41437         (WebCore::RenderView::layoutState):
   41438         (WebCore::RenderView::disableLayoutState):
   41439         (WebCore::RenderView::enableLayoutState):
   41440 
   41441 2007-04-29  David Hyatt  <hyatt (a] apple.com>
   41442 
   41443         Fix for bugzilla 13535, regression from positioning cleanup a while
   41444         back.  Some code got added to compute available width for a relpositioned
   41445         inline, only the code meant to be used for inline flows and not inline blocks.
   41446 
   41447         Reviewed by mjs
   41448 
   41449         fast/block/positioning/inline-block-relposition.html
   41450 
   41451         * rendering/RenderBox.cpp:
   41452         (WebCore::RenderBox::containingBlockWidthForPositioned):
   41453 
   41454 2007-04-29  Oliver Hunt  <oliver (a] apple.com>
   41455 
   41456         Reviewed by Zack.
   41457 
   41458         Implement basic drag and drop support for qt
   41459         this allows content and link dragging but does not
   41460         provide the DOM data access methods.
   41461 
   41462         * platform/DragData.h:
   41463         * platform/qt/ClipboardQt.cpp:
   41464         (WebCore::ClipboardQt::ClipboardQt):
   41465         (WebCore::ClipboardQt::~ClipboardQt):
   41466         (WebCore::ClipboardQt::clearData):
   41467         (WebCore::ClipboardQt::clearAllData):
   41468         (WebCore::ClipboardQt::setData):
   41469         (WebCore::ClipboardQt::declareAndWriteDragImage):
   41470         (WebCore::ClipboardQt::writeURL):
   41471         (WebCore::ClipboardQt::writeRange):
   41472         (WebCore::ClipboardQt::hasData):
   41473         * platform/qt/ClipboardQt.h:
   41474         (WebCore::ClipboardQt::clipboardData):
   41475         (WebCore::ClipboardQt::invalidateWritableData):
   41476         * platform/qt/DragDataQt.cpp:
   41477         (WebCore::DragData::canSmartReplace):
   41478         (WebCore::DragData::containsPlainText):
   41479         (WebCore::DragData::asPlainText):
   41480         (WebCore::DragData::createClipboard):
   41481         (WebCore::DragData::containsCompatibleContent):
   41482         (WebCore::DragData::containsURL):
   41483         (WebCore::DragData::asURL):
   41484         (WebCore::DragData::asFragment):
   41485 
   41486 2007-04-28  Maciej Stachowiak  <mjs (a] apple.com>
   41487 
   41488         Reviewed by Darin and Oliver.
   41489 
   41490         - change Document to hold onto Frame* instead of FrameView*
   41491         
   41492         This is an architectural cleanup and a prerequisite to fixing citibank login
   41493         in an architecturally sound way.
   41494 
   41495         Some fixups for the page cache:
   41496         
   41497         * history/CachedPage.cpp:
   41498         (WebCore::CachedPage::restore): Add an assert that the document's view
   41499         matches the cached page's view - this needs to be true by the time this
   41500         function is called.
   41501         (WebCore::CachedPage::clear): Change assert to require frame matching, not
   41502         view matching.
   41503         * history/CachedPage.h:
   41504         (WebCore::CachedPage::view): Add a way to get the view out.
   41505         * loader/FrameLoader.cpp:
   41506         (WebCore::FrameLoader::begin): pass Frame, not FrameView, when creating document
   41507         (WebCore::FrameLoader::open): restore view based on CachedPage, not Document. 
   41508 
   41509         Remaining changes are just straightforward updates based on which
   41510         pointer is held or passed:
   41511         
   41512         * dom/DOMImplementation.cpp:
   41513         (WebCore::DOMImplementation::createDocument):
   41514         (WebCore::DOMImplementation::createHTMLDocument):
   41515         * dom/DOMImplementation.h:
   41516         * dom/Document.cpp:
   41517         (WebCore::Document::Document):
   41518         (WebCore::Document::view):
   41519         (WebCore::Document::frame):
   41520         (WebCore::Document::recalcStyle):
   41521         (WebCore::Document::updateLayout):
   41522         (WebCore::Document::attach):
   41523         (WebCore::Document::detach):
   41524         (WebCore::Document::createTokenizer):
   41525         (WebCore::Document::recalcStyleSelector):
   41526         (WebCore::Document::setInPageCache):
   41527         (WebCore::Document::applyXSLTransform):
   41528         * dom/Document.h:
   41529         * html/HTMLDocument.cpp:
   41530         (WebCore::HTMLDocument::HTMLDocument):
   41531         * html/HTMLDocument.h:
   41532         * html/HTMLViewSourceDocument.cpp:
   41533         (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
   41534         * html/HTMLViewSourceDocument.h:
   41535         * ksvg2/svg/SVGDocument.cpp:
   41536         (WebCore::SVGDocument::SVGDocument):
   41537         * ksvg2/svg/SVGDocument.h:
   41538         * loader/ImageDocument.cpp:
   41539         (WebCore::ImageDocument::ImageDocument):
   41540         * loader/ImageDocument.h:
   41541         * loader/PluginDocument.cpp:
   41542         (WebCore::PluginDocument::PluginDocument):
   41543         * loader/PluginDocument.h:
   41544         * loader/TextDocument.cpp:
   41545         (WebCore::TextDocument::TextDocument):
   41546         * loader/TextDocument.h:
   41547         * xml/XSLTProcessor.cpp:
   41548         (WebCore::XSLTProcessor::createDocumentFromSource):
   41549         (WebCore::XSLTProcessor::transformToDocument):
   41550         * xml/XSLTProcessor.h:
   41551 
   41552 2007-04-28  Adele Peterson  <adele (a] apple.com>
   41553 
   41554         RS by Darin.
   41555 
   41556         Update to fix for <rdar://problem/5152299>
   41557 
   41558         Test: fast/events/no-blur-on-enter-button.html
   41559 
   41560         * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::defaultEventHandler):
   41561         Don't blur the button when handling the enter key.  This matches our new behavior for input elements.
   41562 
   41563 2007-04-28  Adele Peterson  <adele (a] apple.com>
   41564 
   41565         Fix by Darin, reviewed by me.
   41566 
   41567         Fix for <rdar://problem/5152299> REGRESSION: <button> elements do not respond to space and return key as similar <input> elements do
   41568 
   41569         Tests:
   41570         fast/forms/button-spacebar-click.html
   41571         fast/forms/button-enter-click.html
   41572 
   41573         * html/HTMLButtonElement.h: (WebCore::HTMLButtonElement::): Made type enum private.
   41574         Removed unnecessary m_value and m_currValue, and unused m_dirty.
   41575         * html/HTMLButtonElement.cpp:
   41576         (WebCore::HTMLButtonElement::HTMLButtonElement): Removed initialization of m_dirty.
   41577         (WebCore::HTMLButtonElement::parseMappedAttribute): Removed case to parse value and accesskey attributes, which don't do anything.
   41578         (WebCore::HTMLButtonElement::defaultEventHandler): Removed unnecessary check for button type.
   41579          Added cases to handle spacebar and enter keys in the same way that they're handled for <input type=button/reset/submit> buttons.
   41580         (WebCore::HTMLButtonElement::isSuccessfulSubmitButton): Shortened comment.
   41581         (WebCore::HTMLButtonElement::appendFormData): Use value() instead of m_currValue.  Renamed encoding argument to formData.
   41582 
   41583 2007-04-28  Mitz Pettel  <mitz (a] webkit.org>
   41584 
   41585         Reviewed by Darin.
   41586 
   41587         - fix http://bugs.webkit.org/show_bug.cgi?id=13501
   41588           REGRESSION (r21093): Pasting into text field fails and makes the caret disappear
   41589 
   41590         Test: fast/dynamic/anonymous-block-layer-lost.html
   41591 
   41592         * rendering/RenderBlock.cpp:
   41593         (WebCore::RenderBlock::removeChild): Avoid cutting off layers when removing
   41594         the anonymous block.
   41595 
   41596 2007-04-28  Mitz Pettel  <mitz (a] webkit.org>
   41597 
   41598         Reviewed by Darin.
   41599 
   41600         - fix http://bugs.webkit.org/show_bug.cgi?id=13471
   41601           REGRESSION (r21045): Secure keyboard entry mode remains in effect after leaving a password field by submitting
   41602 
   41603         * loader/FrameLoader.cpp:
   41604         (WebCore::FrameLoader::clear): Replaced direct access to Frame's d->m_doc
   41605         with a call to Frame::setDocument.
   41606         (WebCore::FrameLoader::begin): Ditto.
   41607         (WebCore::FrameLoader::open): Ditto.
   41608         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady): Ditto.
   41609         (WebCore::FrameLoader::canCachePage): Added a comment.
   41610         * manual-tests/secure-keyboard-enabled-after-submit.html: Added.
   41611         * page/Frame.cpp:
   41612         (WebCore::Frame::setDocument): Reset secure keyboard entry, in case the
   41613         old document's focused node has set it.
   41614 
   41615 2007-04-28  Mitz Pettel  <mitz (a] webkit.org>
   41616 
   41617         Reviewed by Adele.
   41618 
   41619         - fix http://bugs.webkit.org/show_bug.cgi?id=13379
   41620           REGRESSION: Cannot add an option to a selected popup
   41621 
   41622         * manual-tests/update-empty-popup.html: Added.
   41623         * platform/mac/PopupMenuMac.mm:
   41624         (WebCore::PopupMenu::show): Added a call to the client's hidePopup()
   41625         callback before returning in the case that the menu is empty. Otherwise
   41626         the client thinks that the menu stayed open.
   41627 
   41628 2007-04-28  Adele Peterson  <adele (a] apple.com>
   41629 
   41630         Reviewed by Darin.
   41631 
   41632         Fix for <rdar://problem/4806988> REGRESSION: history.go(0) doesn't reload page (affects buttons at facebook.com)
   41633 
   41634         Test: fast/history/history_reload.html
   41635 
   41636         * loader/FrameLoader.cpp: (WebCore::FrameLoader::scheduleHistoryNavigation):
   41637         We avoid doing a redirection when going to the same url in a history navigation, but we have to still
   41638         schedule a redirection when the number of steps is zero so we can force a reload.
   41639 
   41640 2007-04-28  Alexey Proskuryakov  <ap (a] webkit.org>
   41641 
   41642         Reviewed by Darin.
   41643 
   41644         http://bugs.webkit.org/show_bug.cgi?id=13514
   41645         REGRESSION (r20997-21003): Crash in WebCore::Node::document
   41646 
   41647         Test: fast/dom/NodeList/childNodes-reset-cache.html
   41648 
   41649         * dom/Node.cpp:
   41650         (WebCore::Node::notifyLocalNodeListsChildrenChanged): Reset the common caches for child node
   41651         lists. We cannot rely on notifications, since there may be no list objects left around.
   41652 
   41653         * dom/ChildNodeList.cpp:
   41654         (WebCore::ChildNodeList::rootNodeChildrenChanged):
   41655         * dom/ChildNodeList.h:
   41656         Override rootNodeChildrenChanged() with an empty implementation, now that caches are reset
   41657         in Node::notifyLocalNodeListsChildrenChanged().
   41658 
   41659 2007-04-28  Mark Rowe  <mrowe (a] apple.com>
   41660 
   41661         Build fix.  Change use of nil to 0 in C++ source file.
   41662 
   41663         * editing/Editor.cpp:
   41664         (WebCore::Editor::increaseSelectionListLevel):
   41665         (WebCore::Editor::increaseSelectionListLevelOrdered):
   41666         (WebCore::Editor::increaseSelectionListLevelUnordered):
   41667 
   41668 2007-04-28  Darin Adler  <darin (a] apple.com>
   41669 
   41670         Reviewed by Adele.
   41671 
   41672         - fix http://bugs.webkit.org/show_bug.cgi?id=6216
   41673           REGRESSION: getElementsByTagNameNS with empty namespace doesn't work
   41674 
   41675         * dom/Node.cpp:
   41676         (WebCore::TagNodeList::TagNodeList): Changed parameter to PassRefPtr, tweaked formatting.
   41677         (WebCore::TagNodeList::item): Tweaked formatting.
   41678         (WebCore::TagNodeList::nodeMatches): Tweaked formatting.
   41679         (WebCore::Node::setPrefix): Tweaked formatting.
   41680         (WebCore::Node::getElementsByTagNameNS): Added special case to turn empty namespaces into
   41681         null namespaces.
   41682 
   41683 2007-04-28  Darin Adler  <darin (a] apple.com>
   41684 
   41685         Reviewed by Kevin Decker.
   41686 
   41687         - fix <rdar://problem/5148271> Chinese numbers are incorrect in numbered lists
   41688           (including pasting from TextEdit to Mail)
   41689 
   41690         Covered by an existing regression test, which had wrong results checked in.
   41691 
   41692         Hyatt told me not to use the algorithm in the CSS 3 specification, but I didn't listen!
   41693         This corrects mistakes there and makes our results match current Firefox.
   41694 
   41695         * rendering/RenderListMarker.cpp:
   41696         (WebCore::toCJKIdeographic): Added code to strip off trailing zero digits.
   41697         Added special case for zero, since that's the one case where we don't want
   41698         to strip off trailing zero digits. Fixed mixed-up logic that would put the
   41699         digits in each group backwards.
   41700         (WebCore::listMarkerText): Corrected character values for the CJK_IDEOGRAPHIC case.
   41701 
   41702 2007-04-28  Darin Adler  <darin (a] apple.com>
   41703 
   41704         Reviewed by Oliver.
   41705 
   41706         - fix <rdar://problem/5138250> REGRESSION (r18245): Changing any one aspect
   41707           of a font applies all the aspects to selected text
   41708 
   41709         Since this bug is only visible with the font panel, I don't
   41710         think there's any way to make a DumpRenderTree-driven test.
   41711 
   41712         * editing/Editor.cpp: (WebCore::Editor::fontForSelection):
   41713         Set hasMultipleFonts properly. The old code had an early exit
   41714         that was left over from when hasMultipleFonts was a pointer.
   41715 
   41716 2007-04-27  Mitz Pettel  <mitz (a] webkit.org>
   41717 
   41718         Reviewed by Dave Hyatt.
   41719 
   41720         - fix http://bugs.webkit.org/show_bug.cgi?id=13525
   41721           Repainting a listbox schedules a relayout
   41722 
   41723         No test possible as there is no change to functionality.
   41724 
   41725         - fix the root cause of http://bugs.webkit.org/show_bug.cgi?id=10862
   41726           REGRESSION: Collapsing form input on www.myspace.com
   41727 
   41728         No test possible since text fields are no longer implemented as flexboxes.
   41729 
   41730         * rendering/RenderObject.cpp:
   41731         (WebCore::RenderObject::scheduleRelayout): Added a check that the subtree
   41732         root is in the tree and not free-floating.
   41733         * rendering/bidi.cpp:
   41734         (WebCore::RenderBlock::bidiReorderCharacters): Changed addChild and removeChild
   41735         to appendChildNode and removeChildNode to save some unnecessary overhead.
   41736         These calls still mark the tree for relayout, but the change in scheduleRelayout 
   41737         ensures that a layout won't be scheduled.
   41738 
   41739 2007-04-27  Patti Hoa  <patti (a] apple.com>
   41740 
   41741         Reviewed by Darin.
   41742         
   41743         <rdar://problem/5153017> REPRODUCIBLE ASSERT: range != nil in WebViewFactory.mm:415 -[WebViewFactory startOfTextMarkerRange:] (13354)
   41744         
   41745         * bridge/mac/WebCoreAXObject.mm:
   41746         (-[WebCoreAXObject textMarkerRangeForRange:]):
   41747         Fix the range length check.  It was incorrectly assuming that the max range requested cannot be equal
   41748         to the length of the string.  Since NSRange location is index based, it's perfectly valid to have the max
   41749         range equal to the the text length.
   41750 
   41751 2007-04-27  David Harrison  <harrison (a] apple.com>
   41752 
   41753         Reviewed by Darin.
   41754 
   41755         <rdar://problem/5160627> Export JS list creation support as ObjC SPI for Mail
   41756 
   41757         * WebCore.exp:
   41758         * editing/Editor.h:
   41759         * editing/Editor.cpp:
   41760         (WebCore::Editor::insertOrderedList):
   41761         (WebCore::Editor::insertUnorderedList):
   41762         (WebCore::Editor::canIncreaseSelectionListLevel):
   41763         (WebCore::Editor::canDecreaseSelectionListLevel):
   41764         (WebCore::Editor::increaseSelectionListLevel):
   41765         (WebCore::Editor::increaseSelectionListLevelOrdered):
   41766         (WebCore::Editor::increaseSelectionListLevelUnordered):
   41767         (WebCore::Editor::decreaseSelectionListLevel):
   41768         Add insertOrderedList() and insertUnorderedList().
   41769         Move existing list management functions from WebCoreFrameBridge.
   41770         The level increasing functions now return a PassRefPtr<Node> instead of Node.
   41771         Add check for canEditRichly.
   41772         
   41773         - in many other functions, condense the check for nil client().
   41774         
   41775         * editing/InsertListCommand.h:
   41776         * editing/InsertListCommand.cpp:
   41777         (WebCore::InsertListCommand::insertList):
   41778         (WebCore::InsertListCommand::fixOrphanedListChild):
   41779         (WebCore::InsertListCommand::doApply):
   41780         Add insertList(), which returns the new list element.
   41781         Don't set the list element's ID if the specified ID was an empty string.
   41782                 
   41783         * editing/ModifySelectionListLevel.h:
   41784         * editing/ModifySelectionListLevel.cpp:
   41785         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
   41786         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevel):
   41787         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelOrdered):
   41788         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelUnordered):
   41789         Return PassRefPtr<Node> instead of Node.
   41790 
   41791         * page/mac/WebCoreFrameBridge.h:
   41792         * page/mac/WebCoreFrameBridge.mm:
   41793         Move list management functions to Editor.h and Editor.cpp.
   41794 
   41795 
   41796 2007-04-27  David Hyatt  <hyatt (a] apple.com>
   41797 
   41798         Fix for <rdar://problem/5134254>, toolbar buttons don't work in gmail after double-click.  Make sure
   41799         to clear out the capturing frame, since you don't get a second up when a double-click happens.
   41800 
   41801         Reviewed by mjs
   41802 
   41803         * page/EventHandler.cpp:
   41804         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   41805 
   41806 2007-04-27  Justin Garcia  <justin.garcia (a] apple.com>
   41807 
   41808         Reviewed by oliver
   41809 
   41810         <rdar://problem/5164796> 
   41811         Enable execCommand("CreateLink", ...) for caret selections
   41812 
   41813         * editing/CreateLinkCommand.cpp:
   41814         (WebCore::CreateLinkCommand::doApply): For a caret
   41815         selection, insert a link at the caret position
   41816         with the url as the link text.
   41817         * editing/JSEditor.cpp: Enable CreateLink for caret 
   41818         selections.
   41819 
   41820 2007-04-27  Antti Koivisto  <antti (a] apple.com>
   41821 
   41822         Reviewed by Darin, Hyatt.
   41823         
   41824         Fix http://bugs.webkit.org/show_bug.cgi?id=13081
   41825         Empty table cells not handled correctly
   41826         <rdar://problem/5067926>
   41827         
   41828         To match Firefox and IE, empty table cells with variable width need to be
   41829         treated as special case. They generally get zero width.
   41830 
   41831         * rendering/AutoTableLayout.cpp:
   41832         (WebCore::AutoTableLayout::recalcColumn):
   41833         (WebCore::AutoTableLayout::calcEffectiveWidth):
   41834         (WebCore::AutoTableLayout::layout):
   41835         * rendering/AutoTableLayout.h:
   41836         (WebCore::AutoTableLayout::Layout::Layout):
   41837         * rendering/RenderStyle.h:
   41838         (WebCore::RenderStyle::hasPadding):
   41839 
   41840 2007-04-27  Rob Buis  <buis (a] kde.org>
   41841 
   41842         Reviewed by Oliver.
   41843 
   41844         http://bugs.webkit.org/show_bug.cgi?id=13052
   41845         Text not rendered in a second inline SVG element
   41846 
   41847         Correct the rendering of svg text when embedded in non-svg container.
   41848 
   41849         * rendering/RenderSVGText.cpp:
   41850         (WebCore::RenderSVGText::paint):
   41851 
   41852 2007-04-27  Mark Rowe  <mrowe (a] apple.com>
   41853 
   41854         Reviewed by Maciej.
   41855 
   41856         * WebCore.pro: Remove non-existent paths from qmake files.
   41857 
   41858 2007-04-25  Lars Naesbye Christensen <lars (a] naesbye.dk>
   41859 
   41860         Reviewed by Timothy Hatcher.
   41861 
   41862         http://bugs.webkit.org/show_bug.cgi?id=13477
   41863         Bug 13477: Help and context menu cursors need dropshadows.
   41864 
   41865         * Resources/cellCursor.png:
   41866         * Resources/contextMenuCursor.png:
   41867         * Resources/helpCursor.png:
   41868         * platform/mac/CursorMac.mm:
   41869         (WebCore::contextMenuCursor):
   41870         (WebCore::copyCursor):
   41871         (WebCore::progressCursor):
   41872         (WebCore::noDropCursor):
   41873 
   41874 2007-04-27  Holger Freyther <freyther (a] kde.org>
   41875 
   41876         Reviewed by Maciej.
   41877 
   41878         Remove unmaintained CMake build system.
   41879 
   41880         * CMakeLists.txt: Removed.
   41881 
   41882 2007-04-26  Matt Perry  <mpComplete (a] gmail.com>
   41883 
   41884         Reviewed by Maciej.
   41885 
   41886         Added a version check to hackAroundLibXMLEntityBug, since that bug has
   41887         been fixed in recent versions of libxml2.
   41888 
   41889         * dom/XMLTokenizer.cpp:
   41890         (WebCore::hackAroundLibXMLEntityBug):
   41891 
   41892 2007-04-26  Christopher Brichford  <chrisb (a] adobe.com>
   41893 
   41894         Reviewed by Timothy Hatcher.
   41895 
   41896         - Fix for Bug 13204: Submit initial version of mac project files for apollo
   41897           port of WebCore
   41898           http://bugs.webkit.org/show_bug.cgi?id=13204
   41899 
   41900         * WebCore.apolloproj/mac/WebCore.Debug.xcconfig: Added.
   41901         * WebCore.apolloproj/mac/WebCore.Release.xcconfig: Added.
   41902         * WebCore.apolloproj/mac/WebCore.xcconfig: Added.
   41903         * WebCore.apolloproj/mac/WebCore.xcodeproj/project.pbxproj: Added.
   41904 
   41905 2007-04-26  Alp Toker  <alp (a] atoker.com>
   41906 
   41907         Reviewed by Maciej.
   41908 
   41909         http://bugs.webkit.org/show_bug.cgi?id=13505
   41910         Cast loses precision on x86_64
   41911 
   41912         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   41913         (WebCore::GraphicsContext::beginTransparencyLayer):
   41914         (WebCore::GraphicsContext::endTransparencyLayer):
   41915         Use a stack of opacity values instead of Cairo user data.
   41916 
   41917 2007-04-26  Mitz Pettel  <mitz (a] webkit.org>
   41918 
   41919         Reviewed by Darin.
   41920 
   41921         - fix http://bugs.webkit.org/show_bug.cgi?id=13500
   41922           REGRESSION: Listbox scrollbar does not reflect actual scrolled position when selected option is added after layout
   41923 
   41924         Test: fast/forms/listbox-scrollbar-incremental-load.html
   41925 
   41926         The scroller position was not updated correctly during insertion, since
   41927         scrollbar proportions are updated only during layout
   41928 
   41929         * rendering/RenderListBox.cpp:
   41930         (WebCore::RenderListBox::selectionChanged): Delay scrolling to reveal the
   41931         selection until after layout if m_optionsChanged is set. Layout is
   41932         guaranteed to happen soon when the flag is set.
   41933 
   41934 2007-04-26  David Hyatt  <hyatt (a] apple.com>
   41935 
   41936         Fix for 13511, crash on a counters page.  Make sure that RenderTexts
   41937         never get a null StringImpl.  I would have added an assert that the length
   41938         had to be nonzero also, but unfortunately editing creates empty RenderTexts
   41939         because of its EditingText DOM subclass that always forces renderers to be
   41940         made.  I suppose there is a good reason for this...
   41941 
   41942         Reviewed by aroben
   41943 
   41944         * dom/CharacterData.cpp:
   41945         (WebCore::CharacterData::setData):
   41946         (WebCore::CharacterData::appendData):
   41947         (WebCore::CharacterData::insertData):
   41948         (WebCore::CharacterData::deleteData):
   41949         (WebCore::CharacterData::replaceData):
   41950         * rendering/RenderCounter.cpp:
   41951         (WebCore::RenderCounter::RenderCounter):
   41952         * rendering/RenderText.cpp:
   41953         (WebCore::RenderText::RenderText):
   41954         (WebCore::RenderText::trimmedPrefWidths):
   41955         (WebCore::RenderText::setTextWithOffset):
   41956         (WebCore::RenderText::setTextInternal):
   41957         (WebCore::RenderText::setText):
   41958 
   41959 2007-04-26  Alice Liu  <alice.liu (a] apple.com>
   41960 
   41961         Reviewed by Oliver.
   41962 
   41963         * editing/SelectionController.cpp:
   41964         (WebCore::SelectionController::selectAll):
   41965         adding null check
   41966 
   41967 2007-04-26  Justin Garcia  <justin.garcia (a] apple.com>
   41968 
   41969         Reviewed by oliver
   41970 
   41971         <rdar://problem/5120591> 
   41972         Crash when creating a link in Leopard wiki server
   41973 
   41974         * editing/CreateLinkCommand.cpp:
   41975         (WebCore::CreateLinkCommand::doApply): Use a RefPtr,
   41976         setting the anchor's href can destroy it if there is
   41977         an ancestor with a subtree modified event listener.
   41978 
   41979 2007-04-26  Mitz Pettel  <mitz (a] webkit.org>
   41980 
   41981         Reviewed by hyatt
   41982 
   41983         - http://bugs.webkit.org/show_bug.cgi?id=13496
   41984           Eliminate repaintObjectsBeforeLayout
   41985 
   41986         No tests added since there is no change to functionality. Several
   41987         tests in fast/repaint test repainting of objects that move during layout.
   41988 
   41989         * page/FrameView.cpp:
   41990         (WebCore::FrameView::layout):
   41991         * rendering/RenderBlock.cpp:
   41992         (WebCore::RenderBlock::layoutBlockChildren): Removed an early
   41993         setNeedsLayout(false). Resetting the bit here prevents the full repaint
   41994         that we rely on when we decide not to repaint children that move.
   41995         * rendering/RenderBlock.h:
   41996         * rendering/RenderObject.cpp:
   41997         * rendering/RenderObject.h:
   41998         * rendering/RenderTableSection.cpp:
   41999         (WebCore::RenderTableSection::setCellWidths): Replaced the call to
   42000         repaintObjectsBeforeLayout() if the cell didn't need layout with
   42001         an unconditional repaint(). We don't bother with repainting only the
   42002         delta between the old and new widths, since by marking the cell for
   42003         layout results in a full repaint with the new width anyway.
   42004 
   42005 2007-04-26  David Hyatt  <hyatt (a] apple.com>
   42006 
   42007         Fix for 13509.  Don't recur to parent inline flows if they have been
   42008         marked as needing layout themselves.
   42009 
   42010         Reviewed by adele
   42011 
   42012         * rendering/RenderFlow.cpp:
   42013         (WebCore::RenderFlow::dirtyLinesFromChangedChild):
   42014 
   42015 2007-04-26  Matt Perry  <mpComplete (a] gmail.com>
   42016 
   42017         Reviewed and landed by Alexey.
   42018 
   42019         http://bugs.webkit.org/show_bug.cgi?id=13495
   42020         Crash when referencing an undefined entity in an XHTML document
   42021 
   42022         Test: fast/parser/badentity.xhtml
   42023 
   42024         * dom/XMLTokenizer.cpp:
   42025         (WebCore::getEntityHandler): Check for a NULL returned from getXHTMLEntity
   42026 
   42027 2007-04-26  Anders Carlsson  <andersca (a] apple.com>
   42028 
   42029         Reviewed by Hyatt.
   42030 
   42031         <rdar://problem/4851944>
   42032         REGRESSION: With TOT, BMP images can no longer be opened in the browser window
   42033         
   42034         On Tiger, the MIME type for the com.microsoft.bmp UTI isn't in the registry, so add it manually.
   42035         
   42036         * platform/MimeTypeRegistry.cpp:
   42037         (WebCore::initialiseSupportedImageMIMETypes):
   42038 
   42039 2007-04-26  David Hyatt  <hyatt (a] apple.com>
   42040 
   42041         Fix for bug 13503, invalidateContainingBlockPrefWidths is 15% of the
   42042         nesting PLT.  Avoid O(n^2) behavior by including inlines in the minmax
   42043         dirty chain.
   42044 
   42045         Reviewed by kevin
   42046 
   42047         * rendering/RenderBlock.cpp:
   42048         (WebCore::RenderBlock::calcInlinePrefWidths):
   42049         * rendering/RenderObject.cpp:
   42050         (WebCore::RenderObject::setPrefWidthsDirty):
   42051         (WebCore::RenderObject::invalidateContainerPrefWidths):
   42052         * rendering/RenderObject.h:
   42053 
   42054 2007-04-26  Anders Carlsson  <andersca (a] apple.com>
   42055 
   42056         Reviewed by Darin.
   42057 
   42058         <rdar://problem/5067925>
   42059         Reproducible crash (infinite recursion) with a layout test that submits on unload (13078)
   42060         
   42061         Ask the document loader whether it's loading the main resource, since there are cases where the frame 
   42062         loader's variable isn't updated correctly.
   42063         
   42064         In the distant future, the frame loader shouldn't have an instance variable but this is the least intrusive fix for now.
   42065         
   42066         I couldn't come up with a good test case for this since it requires running three tests in a row and scheduleLoad didn't work. Also,
   42067         calling submit in the onunload prevents any new tests from loading!
   42068         
   42069         * loader/FrameLoader.cpp:
   42070         (WebCore::FrameLoader::isLoading):
   42071 
   42072 2007-04-26  Anders Carlsson  <andersca (a] apple.com>
   42073 
   42074         ... and fix the build.
   42075         
   42076         * loader/FrameLoader.cpp:
   42077         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   42078 
   42079 2007-04-26  Anders Carlsson  <andersca (a] apple.com>
   42080 
   42081         Revert the previous change - activeDocumentLoader never returns the policy document loader.
   42082         Instead, add a null check for the policy document loader.
   42083         
   42084         * loader/FrameLoader.cpp:
   42085         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   42086 
   42087 2007-04-26  Anders Carlsson  <andersca (a] apple.com>
   42088 
   42089         Use the active document loader instead of the policy document loader.
   42090         
   42091         * loader/FrameLoader.cpp:
   42092         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   42093 
   42094 2007-04-26  Anders Carlsson  <andersca (a] apple.com>
   42095 
   42096         Reviewed by Maciej.
   42097 
   42098         <rdar://problem/5049099> documents no longer have a default base URL
   42099 
   42100         Don't call canHandleRequest if we have valid substitute data and the protocol is "applewebdata".
   42101         
   42102         * loader/FrameLoader.cpp:
   42103         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   42104 
   42105 2007-04-25  Stephanie Lewis <slewis (a] apple.com>
   42106 
   42107         Reviewed by Darin.
   42108 
   42109         Fix the build for platforms that overload the abs function.        
   42110 
   42111         * dom/ChildNodeList.cpp:
   42112         (WebCore::ChildNodeList::item):
   42113 
   42114 2007-04-25  David Hyatt  <hyatt (a] apple.com>
   42115 
   42116         Fix for bug 13373, make sure to invalidate the pref widths for objects
   42117         with percentage padding.
   42118 
   42119         Reviewed by beth
   42120 
   42121         * rendering/RenderBlock.cpp:
   42122         (WebCore::RenderBlock::layoutBlockChildren):
   42123         (WebCore::RenderBlock::layoutPositionedObjects):
   42124         * rendering/bidi.cpp:
   42125         (WebCore::RenderBlock::layoutInlineChildren):
   42126 
   42127 2007-04-25  David Harrison  <harrison (a] apple.com>
   42128 
   42129         Comment change. Correct the header name in the endif comment.
   42130         
   42131         * editing/FormatBlockCommand.h:
   42132         Change InsertListCommand_h to FormatBlockCommand_h.
   42133 
   42134 2007-04-25  Darin Adler  <darin (a] apple.com>
   42135 
   42136         Reviewed by Hyatt.
   42137 
   42138         * platform/AtomicString.cpp: (WebCore::AtomicString::add):
   42139         Removed unnecessary use of strlen to check if a string is empty.
   42140 
   42141 2007-04-25  Mitz Pettel  <mitz (a] webkit.org>
   42142 
   42143         Build fix.
   42144 
   42145         * rendering/RenderListMarker.h: Undeleted the m_text member.
   42146 
   42147 2007-04-25  David Hyatt  <hyatt (a] apple.com>
   42148 
   42149         Rearchitect calcPrefWidths.  The calculation is now done lazily only when minPrefWidth
   42150         or maxPrefWidth are asked for.  The result of the calculation is cached.
   42151 
   42152         The new invalidation scheme for pref width invalidation follows the
   42153         containing block hierarchy and knows to halt at positioned objects, since
   42154         they cannot influence the size of their containers.
   42155 
   42156         Reviewed by darin
   42157 
   42158         * css/cssstyleselector.cpp:
   42159         (WebCore::CSSStyleSelector::init):
   42160         (WebCore::CSSStyleSelector::initForStyleResolve):
   42161         * page/FrameView.cpp:
   42162         (WebCore::FrameView::layout):
   42163         * rendering/RenderApplet.cpp:
   42164         (WebCore::RenderApplet::layout):
   42165         * rendering/RenderBlock.cpp:
   42166         (WebCore::RenderBlock::makeChildrenNonInline):
   42167         (WebCore::RenderBlock::removeChild):
   42168         (WebCore::RenderBlock::layout):
   42169         (WebCore::RenderBlock::layoutBlock):
   42170         (WebCore::RenderBlock::calcPrefWidths):
   42171         (WebCore::InlineMinMaxIterator::endOfInline):
   42172         (WebCore::shouldGrowTableCellForImage):
   42173         (WebCore::RenderBlock::calcInlinePrefWidths):
   42174         (WebCore::RenderBlock::calcBlockPrefWidths):
   42175         * rendering/RenderBlock.h:
   42176         * rendering/RenderBox.cpp:
   42177         (WebCore::RenderBox::setStyle):
   42178         (WebCore::RenderBox::minPrefWidth):
   42179         (WebCore::RenderBox::maxPrefWidth):
   42180         (WebCore::RenderBox::calcWidth):
   42181         (WebCore::RenderBox::calcWidthUsing):
   42182         (WebCore::RenderBox::calcAbsoluteHorizontal):
   42183         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   42184         * rendering/RenderBox.h:
   42185         * rendering/RenderContainer.cpp:
   42186         (WebCore::RenderContainer::removeChildNode):
   42187         (WebCore::RenderContainer::appendChildNode):
   42188         (WebCore::RenderContainer::insertChildNode):
   42189         (WebCore::RenderContainer::layout):
   42190         * rendering/RenderContainer.h:
   42191         (WebCore::RenderContainer::moveChildNode):
   42192         * rendering/RenderCounter.cpp:
   42193         (WebCore::RenderCounter::dirtyLineBoxes):
   42194         (WebCore::RenderCounter::calcPrefWidths):
   42195         * rendering/RenderCounter.h:
   42196         * rendering/RenderFileUploadControl.cpp:
   42197         (WebCore::RenderFileUploadControl::calcPrefWidths):
   42198         * rendering/RenderFlexibleBox.cpp:
   42199         (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
   42200         (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
   42201         (WebCore::RenderFlexibleBox::calcPrefWidths):
   42202         (WebCore::RenderFlexibleBox::layoutBlock):
   42203         * rendering/RenderForeignObject.cpp:
   42204         (WebCore::RenderForeignObject::layout):
   42205         * rendering/RenderFrameSet.cpp:
   42206         (WebCore::RenderFrameSet::layout):
   42207         * rendering/RenderHTMLCanvas.cpp:
   42208         (WebCore::RenderHTMLCanvas::layout):
   42209         * rendering/RenderImage.cpp:
   42210         (WebCore::RenderImage::layout):
   42211         * rendering/RenderInline.cpp:
   42212         * rendering/RenderInline.h:
   42213         * rendering/RenderListBox.cpp:
   42214         (WebCore::RenderListBox::updateFromElement):
   42215         (WebCore::RenderListBox::calcPrefWidths):
   42216         * rendering/RenderListItem.cpp:
   42217         (WebCore::firstNonMarkerChild):
   42218         (WebCore::RenderListItem::updateMarkerLocation):
   42219         (WebCore::RenderListItem::calcPrefWidths):
   42220         (WebCore::RenderListItem::layout):
   42221         * rendering/RenderListMarker.cpp:
   42222         (WebCore::RenderListMarker::layout):
   42223         (WebCore::RenderListMarker::calcPrefWidths):
   42224         (WebCore::RenderListMarker::updateMargins):
   42225         * rendering/RenderListMarker.h:
   42226         * rendering/RenderObject.cpp:
   42227         (WebCore::RenderObject::RenderObject):
   42228         (WebCore::RenderObject::removeChildNode):
   42229         (WebCore::RenderObject::moveChildNode):
   42230         (WebCore::RenderObject::appendChildNode):
   42231         (WebCore::RenderObject::insertChildNode):
   42232         (WebCore::RenderObject::setPrefWidthsDirty):
   42233         (WebCore::RenderObject::invalidateContainingBlockPrefWidths):
   42234         (WebCore::RenderObject::information):
   42235         (WebCore::RenderObject::setStyle):
   42236         * rendering/RenderObject.h:
   42237         (WebCore::RenderObject::layer):
   42238         (WebCore::RenderObject::hasLayer):
   42239         (WebCore::RenderObject::prefWidthsDirty):
   42240         (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc):
   42241         (WebCore::RenderObject::setHasLayer):
   42242         * rendering/RenderPartObject.cpp:
   42243         (WebCore::RenderPartObject::layout):
   42244         * rendering/RenderSVGContainer.cpp:
   42245         (WebCore::RenderSVGContainer::layout):
   42246         * rendering/RenderSVGContainer.h:
   42247         * rendering/RenderSVGHiddenContainer.cpp:
   42248         * rendering/RenderSVGHiddenContainer.h:
   42249         * rendering/RenderSVGText.cpp:
   42250         (WebCore::RenderSVGText::layout):
   42251         * rendering/RenderTable.cpp:
   42252         (WebCore::RenderTable::calcWidth):
   42253         (WebCore::RenderTable::layout):
   42254         (WebCore::RenderTable::removeChildNode):
   42255         * rendering/RenderTable.h:
   42256         * rendering/RenderTableRow.cpp:
   42257         (WebCore::RenderTableRow::layout):
   42258         * rendering/RenderTableSection.cpp:
   42259         (WebCore::RenderTableSection::removeChildNode):
   42260         * rendering/RenderTableSection.h:
   42261         * rendering/RenderText.cpp:
   42262         (WebCore::RenderText::trimmedPrefWidths):
   42263         (WebCore::isSpaceAccordingToStyle):
   42264         (WebCore::RenderText::minPrefWidth):
   42265         (WebCore::RenderText::maxPrefWidth):
   42266         (WebCore::RenderText::calcPrefWidths):
   42267         (WebCore::RenderText::width):
   42268         * rendering/RenderText.h:
   42269         * rendering/RenderView.cpp:
   42270         (WebCore::RenderView::RenderView):
   42271         (WebCore::RenderView::calcPrefWidths):
   42272         (WebCore::RenderView::layout):
   42273         * rendering/RenderWidget.cpp:
   42274         (WebCore::RenderWidget::layout):
   42275 
   42276 2007-04-25  Steve Falkenburg  <sfalken (a] apple.com>
   42277 
   42278         Reviewed by Adam.
   42279 
   42280         Fix spelling error in spelling method name.
   42281         Expose new spelling callback methods to all platforms.
   42282 
   42283         * bridge/EditorClient.h:
   42284         * platform/gdk/EditorClientGdk.cpp:
   42285         (WebCore::EditorClientGdk::updateSpellingUIWithGrammarString):
   42286         * platform/gdk/EditorClientGdk.h:
   42287         * platform/graphics/svg/SVGImageEmptyClients.h:
   42288         (WebCore::SVGEmptyEditorClient::updateSpellingUIWithGrammarString):
   42289         (WebCore::SVGEmptyEditorClient::getGuessesForWord):
   42290 
   42291 2007-04-24  Geoffrey Garen  <ggaren (a] apple.com>
   42292 
   42293         Reviewed by Darin Adler, Tim Hatcher.
   42294 
   42295         Fixed a few NSAutoreleasePool issues I noticed while reviewing Brady's patch.
   42296 
   42297         * platform/graphics/mac/GraphicsContextMac.mm:
   42298         (WebCore::GraphicsContext::setCompositeOperation): Call -drain instead of 
   42299         -release, since -release is a no-op in a GC world.
   42300 
   42301 2007-04-25  Alexey Proskuryakov  <ap (a] webkit.org>
   42302 
   42303         Reviewed by Darin.
   42304 
   42305         http://bugs.webkit.org/show_bug.cgi?id=13445
   42306         NodeList access by index is slow
   42307 
   42308         * dom/ChildNodeList.cpp:
   42309         (WebCore::ChildNodeList::item): Support iterating backwards from the last accessed node
   42310         or from the last child.
   42311         * dom/NodeList.h: Make cachedLength unsigned.
   42312 
   42313 2007-04-26  Mark Rowe  <mrowe (a] apple.com>
   42314 
   42315         Gdk build fix.  Add missing stub.
   42316 
   42317         * platform/gdk/TemporaryLinkStubs.cpp:
   42318         (Editor::advanceToNextMisspelling):
   42319 
   42320 2007-04-25  Rob Buis  <buis (a] kde.org>
   42321 
   42322         Reviewed by Darin.
   42323 
   42324         http://bugs.webkit.org/show_bug.cgi?id=12163
   42325         SVG text does not appear in a scrolling <div>
   42326 
   42327         Make sure SVG text is painted when scrolling by taking into account the relative offset of the non-SVG parent in the paintInfo rect.
   42328 
   42329         * rendering/RenderSVGContainer.cpp:
   42330         (WebCore::RenderSVGContainer::paint):
   42331 
   42332 2007-04-26  Mark Rowe  <mrowe (a] apple.com>
   42333 
   42334         Fix non-Mac builds after r21081.
   42335 
   42336         Stub out new Editor methods for Qt and Gdk, and new SVGEmptyEditorClient methods
   42337         for all non-Mac builds.
   42338 
   42339         * editing/qt/EditorQt.cpp:
   42340         (WebCore::Editor::showSpellingGuessPanel):
   42341         (WebCore::Editor::spellingPanelIsShowing):
   42342         * page/qt/EventHandlerQt.cpp:
   42343         (WebCore::EventHandler::passWheelEventToWidget):
   42344         (WebCore::EventHandler::passMousePressEventToScrollbar):
   42345         * platform/gdk/TemporaryLinkStubs.cpp:
   42346         (Editor::showSpellingGuessPanel):
   42347         (Editor::spellingPanelIsShowing):
   42348         * platform/graphics/svg/SVGImageEmptyClients.h:
   42349         (WebCore::SVGEmptyEditorClient::ignoreWordInSpellDocument):
   42350         (WebCore::SVGEmptyEditorClient::learnWord):
   42351         (WebCore::SVGEmptyEditorClient::checkSpellingOfString):
   42352         (WebCore::SVGEmptyEditorClient::checkGrammarOfString):
   42353         (WebCore::SVGEmptyEditorClient::udpateSpellingUIWithGrammarString):
   42354         (WebCore::SVGEmptyEditorClient::updateSpellingUIWithMisspelledWord):
   42355         (WebCore::SVGEmptyEditorClient::showSpellingUI):
   42356         (WebCore::SVGEmptyEditorClient::spellingUIIsShowing):
   42357         (WebCore::SVGEmptyEditorClient::getGuessesForWord):
   42358 
   42359 2007-04-25  Anders Carlsson  <andersca (a] apple.com>
   42360 
   42361         Reviewed by Ada.
   42362 
   42363         <rdar://problem/5122153>
   42364         Crash occurs at WebCore::Frame::loader() when switching to Bookmarks view while loading standalone image
   42365 
   42366         Don't call writeRawData if the data length is 0. (This is checked by the decoder for the non-raw case).
   42367 
   42368         * loader/FrameLoader.cpp:
   42369         (WebCore::FrameLoader::write):
   42370 
   42371 2007-04-26  Mark Rowe  <mrowe (a] apple.com>
   42372 
   42373         Gdk build fix courtesy of Alp Toker.
   42374 
   42375         * make-generated-sources.sh:  Remove conditional logic to ensure the
   42376         script exits with the correct exit code.
   42377 
   42378 2007-04-24  Anders Carlsson  <andersca (a] apple.com>
   42379 
   42380         Reviewed by Mitz.
   42381 
   42382         <rdar://problem/4869095> 
   42383         default content type for XMLHttpRequest POSTs changed (breaks Flickrator 0.1 widget)
   42384         
   42385         Use the right MIME type.
   42386         
   42387         * xml/xmlhttprequest.cpp:
   42388         (WebCore::XMLHttpRequest::send):
   42389 
   42390 2007-04-24  Darin Adler  <darin (a] apple.com>
   42391 
   42392         Reviewed by Maciej.
   42393 
   42394         - second round of preparation for Hyatt's "lazy minMaxWidth" change
   42395           http://bugs.webkit.org/show_bug.cgi?id=13431
   42396 
   42397         These are small changes that are either safe to do first, or unrelated to the main
   42398         change in Hyatt's patch.
   42399 
   42400         - Preallocate 4 entries each in m_layoutStruct and m_spanCells to save allocation
   42401           in AutoTableLayout.
   42402         - Add an early exit to RenderFlow::dirtyLinesFromChangedChild.
   42403         - Change InlineBox::hasTextChildren() to use a bit directly and never a virtual function.
   42404         - Save a virtual function call by using a local bool variable for isTableCell().
   42405 
   42406         - Fix containingBlock() so it returns 0 for table cells with no parent.
   42407 
   42408         - Change all callers who are getting at layer() as a boolean to use hasLayer().
   42409         - Change if statements to max() function calls (only the ones Hyatt had in his patch).
   42410         - Remove some old kdDebug calls.
   42411         - Tweak formatting of some code.
   42412         - Add const in one place.
   42413 
   42414         * bindings/js/kjs_html.cpp:
   42415         (KJS::HTMLElementFunction::callAsFunction):
   42416         * page/EventHandler.cpp:
   42417         (WebCore::EventHandler::eventMayStartDrag):
   42418         * page/Frame.cpp:
   42419         (WebCore::Frame::clearTimers):
   42420         * rendering/AutoTableLayout.cpp:
   42421         (WebCore::AutoTableLayout::recalcColumn):
   42422         * rendering/AutoTableLayout.h:
   42423         * rendering/InlineBox.h:
   42424         (WebCore::InlineBox::InlineBox):
   42425         (WebCore::InlineBox::hasTextChildren):
   42426         * rendering/InlineFlowBox.cpp:
   42427         (WebCore::InlineFlowBox::nodeAtPoint):
   42428         * rendering/InlineFlowBox.h:
   42429         (WebCore::InlineFlowBox::InlineFlowBox):
   42430         * rendering/RenderBlock.cpp:
   42431         (WebCore::RenderBlock::layoutBlock):
   42432         (WebCore::RenderBlock::repaintOverhangingFloats):
   42433         (WebCore::RenderBlock::paintChildren):
   42434         (WebCore::RenderBlock::paintFloats):
   42435         (WebCore::RenderBlock::fillBlockSelectionGaps):
   42436         (WebCore::RenderBlock::insertFloatingObject):
   42437         (WebCore::RenderBlock::floatRect):
   42438         (WebCore::RenderBlock::lowestPosition):
   42439         (WebCore::RenderBlock::rightmostPosition):
   42440         (WebCore::RenderBlock::leftmostPosition):
   42441         (WebCore::RenderBlock::addOverhangingFloats):
   42442         (WebCore::RenderBlock::nodeAtPoint):
   42443         (WebCore::RenderBlock::hitTestContents):
   42444         (WebCore::RenderBlock::calcPrefWidths):
   42445         (WebCore::InlineMinMaxIterator::next):
   42446         (WebCore::getBorderPaddingMargin):
   42447         (WebCore::RenderBlock::calcInlinePrefWidths):
   42448         (WebCore::RenderBlock::calcBlockPrefWidths):
   42449         * rendering/RenderContainer.cpp:
   42450         (WebCore::RenderContainer::appendChildNode):
   42451         (WebCore::RenderContainer::insertChildNode):
   42452         * rendering/RenderFlexibleBox.cpp:
   42453         (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
   42454         (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
   42455         * rendering/RenderFlow.cpp:
   42456         (WebCore::RenderFlow::dirtyLinesFromChangedChild):
   42457         * rendering/RenderLayer.cpp:
   42458         (WebCore::RenderLayer::updateVisibilityStatus):
   42459         (WebCore::RenderLayer::updateLayerPosition):
   42460         * rendering/RenderObject.cpp:
   42461         (WebCore::RenderObject::containingBlock):
   42462         * rendering/RenderTable.cpp:
   42463         (WebCore::RenderTable::paint):
   42464         * rendering/RenderTableCell.cpp:
   42465         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   42466         * rendering/RenderTableRow.cpp:
   42467         (WebCore::RenderTableRow::nodeAtPoint):
   42468         (WebCore::RenderTableRow::paint):
   42469         * rendering/RenderTableSection.cpp:
   42470         (WebCore::RenderTableSection::nodeAtPoint):
   42471         * rendering/RenderTreeAsText.cpp:
   42472         (WebCore::write):
   42473 
   42474 2007-04-24  Steve Falkenburg  <sfalken (a] apple.com>
   42475 
   42476         Reviewed by Darin, Oliver.
   42477 
   42478         Refactor spelling codepaths
   42479 
   42480         * bridge/EditorClient.h:
   42481         * page/ContextMenuController.cpp:
   42482         (WebCore::ContextMenuController::contextMenuItemSelected):
   42483         * platform/ContextMenu.cpp:
   42484         (WebCore::ContextMenu::populate):
   42485         (WebCore::ContextMenu::checkOrEnableIfNeeded):
   42486         * platform/gdk/EditorClientGdk.cpp:
   42487         (WebCore::EditorClientGdk::ignoreWordInSpellDocument):
   42488         (WebCore::EditorClientGdk::learnWord):
   42489         (WebCore::EditorClientGdk::checkSpellingOfString):
   42490         (WebCore::EditorClientGdk::checkGrammarOfString):
   42491         (WebCore::EditorClientGdk::udpateSpellingUIWithGrammarString):
   42492         (WebCore::EditorClientGdk::updateSpellingUIWithMisspelledWord):
   42493         (WebCore::EditorClientGdk::showSpellingUI):
   42494         (WebCore::EditorClientGdk::spellingUIIsShowing):
   42495         (WebCore::EditorClientGdk::getGuessesForWord):
   42496         * platform/gdk/EditorClientGdk.h:
   42497 
   42498 2007-04-24  Darin Adler  <darin (a] apple.com>
   42499 
   42500         Reviewed by Adele.
   42501 
   42502         - first round of preparation for Hyatt's "lazy minMaxWidth" change
   42503           http://bugs.webkit.org/show_bug.cgi?id=13431
   42504 
   42505         This patch limits itself to renaming and making other super-simple
   42506         changes so that the above change will be smaller and easier to review
   42507         and understand.
   42508 
   42509         Rename:
   42510 
   42511             calcHorizontalMinMaxWidth -> calcHorizontalPrefWidths
   42512             calcMinMaxWidth -> calcPrefWidths
   42513             calcMinMaxWidthInternal -> calcPrefWidthsInternal
   42514             calcVerticalMinMaxWidth -> calcVerticalPrefWidths
   42515             setNeedsLayoutAndMinMaxRecalc -> setNeedsLayoutAndPrefWidthsRecalc
   42516             trimmedMinMaxWidth -> trimmedPrefWidths
   42517 
   42518             RenderObject::m_maxWidth -> RenderObject::m_maxPrefWidth
   42519             RenderObject::m_minWidth -> RenderObject::m_minPrefWidth
   42520             RenderObject::maxWidth() -> RenderObject::maxPrefWidth()
   42521             RenderObject::minWidth() -> RenderObject::minPrefWidth()
   42522 
   42523         Replace m_minMaxKnown, minMaxKnown(), and setMinMaxKnown() with
   42524         m_prefWidthsDirty, prefWidthsDirty(), and setPrefWidthsDirty(),
   42525         a boolean with the opposite sense.
   42526 
   42527         Convert some uses of if statements into "max".
   42528 
   42529         Change many uses of layer() to hasLayer(). For now it's just a boolean
   42530         version of layer(), but Hyatt's patch makes it faster by using a bit.
   42531 
   42532         Added a guard to use of axObjectCache() to make RenderObject destruction
   42533         a little faster for the normal case.
   42534 
   42535         Removed some assertions that will be removed in Hyatt's patch.
   42536 
   42537         Made some functions const that will be const in Hyatt's patch.
   42538 
   42539         Put in some revised comments from Hyatt's patch.
   42540 
   42541         Removed an unneeded nil check from RenderListMarker::setStyle.
   42542 
   42543         Moved RootInlineBox::setHorizontalOverflowPositions and
   42544         RootInlineBox::setVerticalSelectionPositions to the RootInlineBox.h
   42545         header and marked them inline.
   42546 
   42547         * dom/Document.cpp:
   42548         (WebCore::Document::updateStyleSelector):
   42549         * html/HTMLTextAreaElement.cpp:
   42550         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
   42551         * page/Frame.cpp:
   42552         (WebCore::Frame::forceLayoutWithPageWidthRange):
   42553         * rendering/AutoTableLayout.cpp:
   42554         (WebCore::AutoTableLayout::recalcColumn):
   42555         (WebCore::AutoTableLayout::calcPrefWidths):
   42556         (WebCore::AutoTableLayout::calcEffectiveWidth):
   42557         * rendering/AutoTableLayout.h:
   42558         * rendering/CounterNode.cpp:
   42559         (WebCore::CounterNode::recount):
   42560         * rendering/FixedTableLayout.cpp:
   42561         (WebCore::FixedTableLayout::calcPrefWidths):
   42562         * rendering/FixedTableLayout.h:
   42563         * rendering/InlineFlowBox.cpp:
   42564         (WebCore::InlineFlowBox::paint):
   42565         * rendering/RenderApplet.cpp:
   42566         (WebCore::RenderApplet::layout):
   42567         * rendering/RenderBlock.cpp:
   42568         (WebCore::RenderBlock::removeChild):
   42569         (WebCore::RenderBlock::layoutBlock):
   42570         (WebCore::RenderBlock::handleCompactChild):
   42571         (WebCore::RenderBlock::getClearDelta):
   42572         (WebCore::RenderBlock::calcPrefWidths):
   42573         (WebCore::RenderBlock::calcInlinePrefWidths):
   42574         (WebCore::RenderBlock::calcBlockPrefWidths):
   42575         * rendering/RenderBlock.h:
   42576         * rendering/RenderBox.cpp:
   42577         (WebCore::RenderBox::RenderBox):
   42578         (WebCore::RenderBox::nodeAtPoint):
   42579         (WebCore::RenderBox::calcWidth):
   42580         (WebCore::RenderBox::calcWidthUsing):
   42581         (WebCore::RenderBox::calcAbsoluteHorizontal):
   42582         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   42583         * rendering/RenderBox.h:
   42584         (WebCore::RenderBox::minPrefWidth):
   42585         (WebCore::RenderBox::maxPrefWidth):
   42586         * rendering/RenderContainer.cpp:
   42587         (WebCore::RenderContainer::removeChildNode):
   42588         (WebCore::RenderContainer::appendChildNode):
   42589         (WebCore::RenderContainer::insertChildNode):
   42590         (WebCore::RenderContainer::layout):
   42591         * rendering/RenderContainer.h:
   42592         (WebCore::RenderContainer::calcPrefWidths):
   42593         * rendering/RenderCounter.cpp:
   42594         (WebCore::RenderCounter::calcPrefWidths):
   42595         * rendering/RenderCounter.h:
   42596         * rendering/RenderFieldset.cpp:
   42597         (WebCore::RenderFieldset::calcPrefWidths):
   42598         * rendering/RenderFieldset.h:
   42599         * rendering/RenderFileUploadControl.cpp:
   42600         (WebCore::RenderFileUploadControl::calcPrefWidths):
   42601         * rendering/RenderFileUploadControl.h:
   42602         * rendering/RenderFlexibleBox.cpp:
   42603         (WebCore::RenderFlexibleBox::calcHorizontalPrefWidths):
   42604         (WebCore::RenderFlexibleBox::calcVerticalPrefWidths):
   42605         (WebCore::RenderFlexibleBox::calcPrefWidths):
   42606         (WebCore::RenderFlexibleBox::layoutBlock):
   42607         (WebCore::RenderFlexibleBox::allowedChildFlex):
   42608         * rendering/RenderFlexibleBox.h:
   42609         (WebCore::RenderFlexibleBox::hasMultipleLines):
   42610         (WebCore::RenderFlexibleBox::isVertical):
   42611         (WebCore::RenderFlexibleBox::isHorizontal):
   42612         * rendering/RenderFlow.cpp:
   42613         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   42614         * rendering/RenderForeignObject.cpp:
   42615         (WebCore::RenderForeignObject::layout):
   42616         * rendering/RenderFrameSet.cpp:
   42617         (WebCore::RenderFrameSet::layout):
   42618         * rendering/RenderHTMLCanvas.cpp:
   42619         (WebCore::RenderHTMLCanvas::layout):
   42620         * rendering/RenderImage.cpp:
   42621         (WebCore::RenderImage::imageChanged):
   42622         (WebCore::RenderImage::layout):
   42623         (WebCore::RenderImage::calcPrefWidths):
   42624         * rendering/RenderImage.h:
   42625         * rendering/RenderInline.cpp:
   42626         (WebCore::RenderInline::addChildToFlow):
   42627         (WebCore::RenderInline::splitInlines):
   42628         (WebCore::RenderInline::splitFlow):
   42629         (WebCore::RenderInline::calcPrefWidths):
   42630         * rendering/RenderInline.h:
   42631         * rendering/RenderListBox.cpp:
   42632         (WebCore::RenderListBox::updateFromElement):
   42633         (WebCore::RenderListBox::calcPrefWidths):
   42634         * rendering/RenderListBox.h:
   42635         * rendering/RenderListItem.cpp:
   42636         (WebCore::RenderListItem::updateValue):
   42637         (WebCore::RenderListItem::updateMarkerLocation):
   42638         (WebCore::RenderListItem::calcPrefWidths):
   42639         (WebCore::RenderListItem::layout):
   42640         (WebCore::RenderListItem::explicitValueChanged):
   42641         * rendering/RenderListItem.h:
   42642         * rendering/RenderListMarker.cpp:
   42643         (WebCore::RenderListMarker::setStyle):
   42644         (WebCore::RenderListMarker::layout):
   42645         (WebCore::RenderListMarker::imageChanged):
   42646         (WebCore::RenderListMarker::calcPrefWidths):
   42647         (WebCore::RenderListMarker::calcWidth):
   42648         * rendering/RenderListMarker.h:
   42649         * rendering/RenderMenuList.cpp:
   42650         (WebCore::RenderMenuList::updateOptionsWidth):
   42651         (WebCore::RenderMenuList::calcPrefWidths):
   42652         * rendering/RenderMenuList.h:
   42653         * rendering/RenderObject.cpp:
   42654         (WebCore::RenderObject::RenderObject):
   42655         (WebCore::addLayers):
   42656         (WebCore::RenderObject::removeLayers):
   42657         (WebCore::RenderObject::moveLayers):
   42658         (WebCore::RenderObject::addAbsoluteRectForLayer):
   42659         (WebCore::RenderObject::checkForRepaintDuringLayout):
   42660         (WebCore::RenderObject::dump):
   42661         (WebCore::RenderObject::setStyle):
   42662         (WebCore::RenderObject::destroy):
   42663         (WebCore::RenderObject::recalcMinMaxWidths):
   42664         * rendering/RenderObject.h:
   42665         (WebCore::RenderObject::hasLayer):
   42666         (WebCore::RenderObject::prefWidthsDirty):
   42667         (WebCore::RenderObject::setPrefWidthsDirty):
   42668         (WebCore::RenderObject::setNeedsLayoutAndPrefWidthsRecalc):
   42669         (WebCore::RenderObject::calcPrefWidths):
   42670         (WebCore::RenderObject::minPrefWidth):
   42671         (WebCore::RenderObject::maxPrefWidth):
   42672         * rendering/RenderPart.cpp:
   42673         (WebCore::RenderPart::setWidget):
   42674         * rendering/RenderPartObject.cpp:
   42675         (WebCore::RenderPartObject::updateWidget):
   42676         (WebCore::RenderPartObject::layout):
   42677         * rendering/RenderReplaced.cpp:
   42678         (WebCore::RenderReplaced::calcPrefWidths):
   42679         * rendering/RenderReplaced.h:
   42680         * rendering/RenderSVGContainer.cpp:
   42681         (WebCore::RenderSVGContainer::calcPrefWidths):
   42682         (WebCore::RenderSVGContainer::layout):
   42683         * rendering/RenderSVGContainer.h:
   42684         * rendering/RenderSVGHiddenContainer.cpp:
   42685         (WebCore::RenderSVGHiddenContainer::calcPrefWidths):
   42686         * rendering/RenderSVGHiddenContainer.h:
   42687         * rendering/RenderSVGText.cpp:
   42688         (WebCore::RenderSVGText::layout):
   42689         * rendering/RenderSlider.cpp:
   42690         (WebCore::RenderSlider::calcPrefWidths):
   42691         * rendering/RenderSlider.h:
   42692         * rendering/RenderTable.cpp:
   42693         (WebCore::RenderTable::calcWidth):
   42694         (WebCore::RenderTable::layout):
   42695         (WebCore::RenderTable::calcPrefWidths):
   42696         (WebCore::RenderTable::splitColumn):
   42697         (WebCore::RenderTable::appendColumn):
   42698         * rendering/RenderTable.h:
   42699         * rendering/RenderTableCell.cpp:
   42700         (WebCore::RenderTableCell::updateFromElement):
   42701         (WebCore::RenderTableCell::styleOrColWidth):
   42702         (WebCore::RenderTableCell::calcPrefWidths):
   42703         * rendering/RenderTableCell.h:
   42704         * rendering/RenderTableCol.cpp:
   42705         (WebCore::RenderTableCol::updateFromElement):
   42706         * rendering/RenderTableRow.cpp:
   42707         (WebCore::RenderTableRow::layout):
   42708         * rendering/RenderTableSection.cpp:
   42709         (WebCore::RenderTableSection::paint):
   42710         * rendering/RenderText.cpp:
   42711         (WebCore::RenderText::trimmedPrefWidths):
   42712         (WebCore::RenderText::calcPrefWidths):
   42713         (WebCore::RenderText::calcPrefWidthsInternal):
   42714         (WebCore::RenderText::setText):
   42715         * rendering/RenderText.h:
   42716         (WebCore::RenderText::minPrefWidth):
   42717         (WebCore::RenderText::maxPrefWidth):
   42718         * rendering/RenderTextControl.cpp:
   42719         (WebCore::RenderTextControl::calcPrefWidths):
   42720         * rendering/RenderTextControl.h:
   42721         * rendering/RenderView.cpp:
   42722         (WebCore::RenderView::RenderView):
   42723         (WebCore::RenderView::calcPrefWidths):
   42724         (WebCore::RenderView::layout):
   42725         * rendering/RenderView.h:
   42726         * rendering/RenderWidget.cpp:
   42727         (WebCore::RenderWidget::layout):
   42728         * rendering/RootInlineBox.cpp:
   42729         * rendering/RootInlineBox.h:
   42730         (WebCore::RootInlineBox::setHorizontalOverflowPositions):
   42731         (WebCore::RootInlineBox::setVerticalSelectionPositions):
   42732         * rendering/TableLayout.h:
   42733 
   42734 2007-04-24  Justin Garcia  <justin.garcia (a] apple.com>
   42735 
   42736         Reviewed by oliver
   42737         
   42738         <rdar://problem/5156401> 
   42739         Crash when dragging text into a link inside a table cell
   42740 
   42741         * editing/CompositeEditCommand.cpp:
   42742         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
   42743         Don't avoid the anchor if doing so would skip over a line break, that
   42744         would put content in the wrong paragraph, which can throw ReplaceSelectionCommand,
   42745         which relies on moveParagraphs into infinite recursion.
   42746         Renamed the input position.
   42747         Don't need to re-fetch the enclosing anchor when preparing to push it down,
   42748         since it hasn't changed since the top of the function.
   42749 
   42750 2007-04-24  Timothy Hatcher  <timothy (a] apple.com>
   42751 
   42752         Reviewed by Adam.
   42753 
   42754         <rdar://problem/5133011> 64-bit: Attempting to paste copied text in a input field results in a crash at WebCore::Range::startPosition()
   42755 
   42756         Change a couple incorrect uses of LONG_MAX to INT_MAX to match the variable type they are used in.
   42757         The LONG_MAX on 64-bit was overflowing the int variables, causing this crash on paste.
   42758 
   42759         * bridge/mac/WebCoreAXObject.mm:
   42760         (-[WebCoreAXObject value]):
   42761         * editing/TextIterator.cpp:
   42762         (WebCore::TextIterator::handleTextNode):
   42763         (WebCore::TextIterator::handleTextBox):
   42764 
   42765 2007-04-24  Timothy Hatcher  <timothy (a] apple.com>
   42766 
   42767         Reviewed by Adam.
   42768 
   42769         <rdar://problem/4966982> 64-bit: In a unordered list, TYPE=DISC and TYPE=CIRCLE attribute values are ignored
   42770 
   42771         We need to draw our full-circle arcs counter-clockwise, since a clockwise arc from 0 to 2 is no arc at all!
   42772         This only worked on 32-bit due to a rounding error in CoreGraphics, causing it to draw a full circle anyway.
   42773 
   42774         * platform/graphics/cg/GraphicsContextCG.cpp:
   42775         (WebCore::GraphicsContext::drawEllipse):
   42776 
   42777 2007-04-24  Brady Eidson  <beidson (a] apple.com>
   42778 
   42779         Reviewed by Beth, Hyatt, Ada, and Darin
   42780 
   42781         <rdar://problem/5011477> and <rdar://problem/5011514>
   42782         Provide support for the icon.db to be moved to a different directory from the old WebKit-style
   42783         icons, and remove the old directory if that is the case
   42784 
   42785         Support for this starts in WebCore, where we can use the metadata table in the icon.db to track
   42786         whether or not we've ever done the import
   42787 
   42788         * WebCore.exp:
   42789         * loader/icon/IconDatabase.cpp:
   42790         (WebCore::IconDatabase::defaultDatabaseFilename): Changed to "Icons.db"
   42791         (WebCore::IconDatabase::IconDatabase):
   42792         (WebCore::IconDatabase::deleteAllPreparedStatements): Delete the new statements added
   42793         (WebCore::IconDatabase::imported): Grab this flag from the DB or return the cached flag
   42794         (WebCore::IconDatabase::setImported): Store this flag into the DB
   42795         (WebCore::IconDatabase::importedQuery): Actually do the DB query for this save
   42796         (WebCore::IconDatabase::setImportedQuery): Actually do the DB query for this retrieval
   42797         * loader/icon/IconDatabase.h:
   42798 
   42799 2007-04-24  Darin Adler  <darin (a] apple.com>
   42800 
   42801         Reviewed by Justin.
   42802 
   42803         - fix <rdar://problem/4356361> Selection after multiple delete
   42804           keypresses and undo selects only the last deleted character
   42805 
   42806         Test: editing/undo/undo-combined-delete-boundary.html
   42807         Test: editing/undo/undo-combined-delete.html
   42808         Test: editing/undo/undo-delete-boundary.html
   42809         Test: editing/undo/undo-delete.html
   42810         Test: editing/undo/undo-forward-delete-boundary.html
   42811         Test: editing/undo/undo-forward-delete.html
   42812 
   42813         * editing/TypingCommand.cpp:
   42814         (WebCore::TypingCommand::insertText): Fix obviously-wrong code where there were missing
   42815         braces. I couldn't find any real symptom of this, but I think the fix should go in anyway.
   42816         All layout tests still pass.
   42817         (WebCore::TypingCommand::deleteKeyPressed): Added code to compute a selection that goes
   42818         back to the beginning of the composite editing operation.
   42819         (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
   42820 
   42821         * editing/Selection.h:
   42822         * editing/Selection.cpp: (WebCore::Selection::setWithoutValidation):
   42823         Added. Back door to allow setting the ends of a selection without revalidating,
   42824         because we need to use it on a selection where the endpoints may no longer be
   42825         valid due to mutations done by earlier pieces of the editing operation.
   42826 
   42827         * editing/EditCommand.h:
   42828         (WebCore::EditCommand::startingSelection): Return a const& for speed.
   42829         (WebCore::EditCommand::endingSelection): Ditto.
   42830 
   42831 2007-04-24  Sam Weinig  <sam (a] webkit.org>
   42832 
   42833         Reviewed by Mitz.
   42834 
   42835         - fix for http://bugs.webkit.org/show_bug.cgi?id=13448
   42836           REGRESSION: setting an input element's value to JavaScript null gives "null"
   42837 
   42838         Test: fast/forms/input-null.html
   42839 
   42840         * html/HTMLInputElement.idl: Convert JS null to the empty string on setting
   42841         DOMString attributes.
   42842 
   42843 2007-04-24  Mitz Pettel  <mitz (a] webkit.org>
   42844 
   42845         Reviewed by Dave Hyatt.
   42846 
   42847         - fix http://bugs.webkit.org/show_bug.cgi?id=13453
   42848           Control clip isn't applied to children's backgrounds, outlines and floats
   42849 
   42850         Test: fast/forms/control-clip.html
   42851 
   42852         * rendering/RenderBlock.cpp:
   42853         (WebCore::RenderBlock::paint): Apply the clip in all phases that paint
   42854         children. Split PaintPhaseOutline and PaintPhaseChildBlockBackground into
   42855         two phases each, applying the clip only to the children.
   42856         * rendering/RenderListBox.cpp:
   42857         (WebCore::RenderListBox::paintObject): Treat the scrollbar as part of the
   42858         background rather than as a child's background, now that children are
   42859         clipped out.
   42860 
   42861 2007-04-24  Benjamin Otte  <otte (a] gnome.org>
   42862 
   42863         Reviewed by Mark Rowe.
   42864 
   42865         Gdk build system improvements.
   42866 
   42867         * make-generated-sources.sh: Exit with failure status if make fails.
   42868 
   42869 2007-04-24  Benjamin Otte  <otte (a] gnome.org>
   42870 
   42871         Reviewed by Mark Rowe.
   42872 
   42873         Gdk build system improvements.
   42874 
   42875         * Projects/gdk/webcore-gdk.bkl:
   42876         fail if running any of the commands failed. In particular
   42877         make-generated-sources.sh
   42878 
   42879 2007-04-23  Beth Dakin  <bdakin (a] apple.com>
   42880 
   42881         Reviewed by Adam.
   42882 
   42883         Fix for <rdar://problem/5155507> REGRESSION: Crash in 
   42884         RenderLayer::setHasVisibleContent()
   42885 
   42886         * rendering/RenderContainer.cpp:
   42887         (WebCore::RenderContainer::appendChildNode): Must null-check 
   42888         enclosingLayer()
   42889         (WebCore::RenderContainer::insertChildNode): Same.
   42890 
   42891 2007-04-23  David Hyatt  <hyatt (a] apple.com>
   42892 
   42893         Fix for bug 13337, deep tag nesting is slow.  This patch fixes a number of O(n^2) issues as well as making
   42894         a few performance optimizations based off profiling.  Details next to each change below.
   42895 
   42896         Note that calcMinMaxWidth being slow is a critical separate piece of this puzzle.  Until bug 13430 is fixed,
   42897         render tree construction will be O(n^2) (because of the minmaxrecalc bit setting being stupid enough to
   42898         always crawl to the root of the tree) and calcMinMaxWidth will waste tons of unnecessary time.
   42899 
   42900         When these fixes are combined with the calcMinMaxWidth fix in 13430, the penguin page specified in 13337
   42901         loads in < 2 seconds (down from an infinite hang before).
   42902 
   42903         Reviewed by aroben, ollie
   42904 
   42905         * css/cssstyleselector.cpp:
   42906         (WebCore::CSSStyleSelector::locateCousinList):
   42907         (WebCore::CSSStyleSelector::locateSharedStyle):
   42908         * css/csstyleselector.h
   42909         Cap the depth of cousin searching on the shared style optimization.  We will be willing to (at most) crawl
   42910         up the tree the same distance that we were willing to crawl backwards through sibling lists.  Leaving it
   42911         uncapped resulted in pathological style resolution for the case of an infinitely nested chain of singletons.
   42912 
   42913         * html/HTMLParser.cpp:
   42914         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
   42915         (WebCore::HTMLParser::popBlock):
   42916         Cap the number of residual style tags that we are willing to reopen.  We will reopen at most 200
   42917         residual style tags, since the assumption is that once that many tags are on the stack, you're probably already
   42918         every kind of bold, italic, and color of the rainbow.
   42919 
   42920         * rendering/RenderFlow.cpp:
   42921         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   42922         absoluteClippedOverflowRect can just return the empty rect when the inline flow has no line boxes instead of
   42923         doing a bunch of work (and calling containingBlock()) for no reason.
   42924 
   42925         * rendering/RenderInline.cpp:
   42926         (WebCore::RenderInline::addChildToFlow):
   42927         Remove the useless containingBlock() check from addChildToFlow.  Obviously every inline's containing block
   42928         is a block flow.
   42929 
   42930         * rendering/bidi.cpp:
   42931         (WebCore::inlineWidth):
   42932         (WebCore::RenderBlock::createLineBoxes):
   42933         Cap the depth of individual line trees to 200.  Again the assumption is that once that many open inlines exist
   42934         all on one line that there's no way this would be intentional.
   42935 
   42936 2007-04-23  David Hyatt  <hyatt (a] apple.com>
   42937 
   42938         Fix for bug 13430, cap inline splitting for continuations to a maximum depth of 200.
   42939 
   42940         Reviewed by olliej, antti
   42941 
   42942         * rendering/RenderInline.cpp:
   42943         (WebCore::RenderInline::splitInlines):
   42944 
   42945 2007-04-23  Alp Toker  <alp (a] atoker.com>
   42946 
   42947         Gdk build fix. Track EventHandler change made in r21042.
   42948 
   42949         * page/gdk/EventHandlerGdk.cpp:
   42950         (WebCore::EventHandler::passWheelEventToWidget):
   42951         (WebCore::EventHandler::passMousePressEventToScrollbar):
   42952 
   42953 2007-04-23  Timothy Hatcher  <timothy (a] apple.com>
   42954 
   42955         Reviewed by Darin.
   42956 
   42957         <rdar://problem/5024945> -[DOMRange lineBoxRects] doesn't include start and end nodes that have offsets
   42958 
   42959         * rendering/RenderText.cpp:
   42960         (WebCore::RenderText::addLineBoxRects): Use min(box->len(), end) instead of special-casing UINT_MAX.
   42961 
   42962 2007-04-23  Adele Peterson  <adele (a] apple.com>
   42963 
   42964         Fix by Darin, reviewed by me.
   42965 
   42966         Fix for REGRESSION: Can't upload attachments to bugzilla since the file upload control is reset immediately 
   42967         http://bugs.webkit.org/show_bug.cgi?id=13461
   42968 
   42969         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::updateFromElement):
   42970         Only clear the FileChooser if the value is empty *and* (not or) the filename is empty.
   42971 
   42972 2007-04-23  Adele Peterson  <adele (a] apple.com>
   42973 
   42974         Reviewed by Adam.
   42975 
   42976         Updated fix for <rdar://problem/4887426> Set a reasonable maximum number of recent searches for search menu
   42977 
   42978         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::parseMappedAttribute): Use a const int maxSavedResults instead of magic number 256.
   42979 
   42980 2007-04-23  Timothy Hatcher  <timothy (a] apple.com>
   42981 
   42982         Reviewed by Hyatt.
   42983 
   42984         <rdar://problem/5024945> -[DOMRange lineBoxRects] doesn't include start and end nodes that have offsets
   42985 
   42986         Don't call selectionRect with a -1 end position, instead use the text length.
   42987 
   42988         * rendering/RenderText.cpp:
   42989         (WebCore::RenderText::addLineBoxRects):
   42990 
   42991 2007-04-23  Adele Peterson  <adele (a] apple.com>
   42992 
   42993         Fixed and reviewed by Darin, Adele, and Oliver.
   42994 
   42995         WebCore part of fix for <rdar://problem/5107538> REGRESSION: Page scroll when selecting characters from inline input candidate window by arrow buttons
   42996         http://bugs.webkit.org/show_bug.cgi?id=13263
   42997 
   42998         * dom/KeyboardEvent.h: (WebCore::KeypressCommand::isEmpty): Added helper method.
   42999 
   43000 2007-04-23  Patti Hoa  <patti (a] apple.com>
   43001         
   43002         <rdar://problem/4938364> Attachment button has different string length between attributeStringForRange and stringForRange
   43003         <rdar://problem/4939536> AXLengthForTextMarkerRange returns zero length for the range of an attachment
   43004         
   43005         Reviewed by Darin.
   43006 
   43007         * bridge/mac/WebCoreAXObject.mm:
   43008         (nsStringForReplacedNode):
   43009         Added helper routine to check if the replaced node should be exposed as an attachment character in string representation.
   43010         Added an additional check to make sure that text node is not considered a replaced node.
   43011         Removed helper routine AXAttributedStringAppendReplaced since half of the functions are now taken care by nsStringForReplacedNode.
   43012         The other half is directly used in the doAXAttributedStringForTextMarkerRange method.
   43013         (-[WebCoreAXObject doAXStringForTextMarkerRange:]):
   43014         (-[WebCoreAXObject doAXAttributedStringForTextMarkerRange:]):
   43015         Both string and AttrbributedString methods will now utilize the helper routine nsStringForReplacedNode to return replacement
   43016         characters for range occupied by attachment.
   43017         
   43018 2007-04-23  Adele Peterson  <adele (a] apple.com>
   43019 
   43020         Reviewed by Oliver.
   43021 
   43022         Fix for <rdar://problem/4887426> Set a reasonable maximum number of recent searches for search menu
   43023 
   43024         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::parseMappedAttribute):
   43025         Enforce a maximum of 256 saved results for the search field.
   43026 
   43027 2007-04-23  Adele Peterson  <adele (a] apple.com>
   43028 
   43029         Reviewed by Hyatt & Adam.
   43030 
   43031         Fix for <rdar://problem/4807799> REGRESSION: calling select() in onSearch handler doesn't work if you hit enter to trigger the event
   43032         Fix for <rdar://problem/5153970> onChange doesn't fire when focusing a popup, using type-ahead to select, and leaving
   43033 
   43034         This previous behavior to blur controls when hitting enter was added to achieve the result of firing the change event.  Firefox does not
   43035         fire blur- just the change event, so this fix will match Firefox behavior.
   43036 
   43037         This also fixes a bug where we didn't fire the change event when using type-ahead selection with the popup menu.
   43038 
   43039         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Fire change event instead of blur event when hitting enter.
   43040 
   43041         * html/HTMLSelectElement.cpp:
   43042         (WebCore::HTMLSelectElement::dispatchFocusEvent): Now that we have type-ahead selection for popups that can be opened with the arrow keys,
   43043          we should always save the last selection when a popup gets focus, so it can be compared to the current selection when it loses focus.
   43044         (WebCore::HTMLSelectElement::dispatchBlurEvent): For the same reasons as above, we should fire onChange for all popups on blur.
   43045 
   43046         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Fire change event instead of blur event when hitting enter.  Removed an unnecessary
   43047          check for form() before calling menuListOnChange().  Removed an unnecessary check for renderer() and usesMenuList().
   43048         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Remove call to blur.  Since list boxes fire the change event immediately after an
   43049          action is taken, we don't need to fire anything after hitting enter.
   43050         (WebCore::HTMLSelectElement::menuListOnChange): Reset m_lastOnChangeIndex after firing the change event.
   43051 
   43052 2007-04-23  Anders Carlsson  <andersca (a] apple.com>
   43053 
   43054         Reviewed by Ada.
   43055 
   43056         <rdar://problem/5061022>
   43057         REGRESSION: Acrobat 8 plug-in fails to scroll with trackpad two-finger scroll or mouse wheel (12995)
   43058         
   43059         Pass wheel events to all widgets.
   43060         
   43061         * page/EventHandler.cpp:
   43062         (WebCore::EventHandler::handleWheelEvent):
   43063         * page/EventHandler.h:
   43064         * page/mac/EventHandlerMac.mm:
   43065         (WebCore::EventHandler::passWheelEventToWidget):
   43066 
   43067 2007-04-23  Alp Toker  <alp (a] atoker.com>
   43068 
   43069         Reviewed by Mark.
   43070 
   43071         Save and restore the context state when beginning and ending a transparency layer.
   43072 
   43073         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   43074         (WebCore::GraphicsContext::beginTransparencyLayer):
   43075         (WebCore::GraphicsContext::endTransparencyLayer):
   43076 
   43077 2007-04-23  Alp Toker  <alp (a] atoker.com>
   43078 
   43079         Reviewed by Mark.
   43080 
   43081         Further implementation and checks. The opacity layer code is not so beautiful
   43082         but gets the job done with fewer complications than maintaining our own stack.
   43083 
   43084         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   43085         (WebCore::GraphicsContext::translate):
   43086         (WebCore::GraphicsContext::setPlatformStrokeThickness):
   43087         (WebCore::GraphicsContext::beginTransparencyLayer):
   43088         (WebCore::GraphicsContext::endTransparencyLayer):
   43089         (WebCore::GraphicsContext::setCompositeOperation):
   43090         (WebCore::GraphicsContext::rotate):
   43091         (WebCore::GraphicsContext::scale):
   43092 
   43093 2007-04-23  Darin Adler  <darin (a] apple.com>
   43094 
   43095         Reviewed by Hyatt.
   43096 
   43097         - rename box-sizing to -webkit-box-sizing
   43098           because of <rdar://problem/4667227> REGRESSION: Shifted table on page at
   43099           https://us.etrade.com/e/t/home (due to box-sizing)
   43100 
   43101         * css/CSSComputedStyleDeclaration.cpp:
   43102         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Rename.
   43103         * css/CSSPropertyNames.in: Ditto.
   43104         * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Rename and take out comment
   43105         explaining why we aren't prefacing with -webkit.
   43106         * css/cssstyleselector.cpp:
   43107         (WebCore::CSSStyleSelector::applyProperty): Rename.
   43108         * css/html4.css: Rename.
   43109         * css/quirks.css: Rename.
   43110 
   43111 2007-04-23  Alp Toker  <alp (a] atoker.com>
   43112 
   43113         Reviewed by Hyatt.
   43114 
   43115         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   43116         (WebCore::GraphicsContext::drawEllipse):
   43117         (WebCore::GraphicsContext::drawConvexPolygon):
   43118         Fix stroking and filling of ellipses and polygons.
   43119         * platform/graphics/cairo/ImageCairo.cpp:
   43120         (WebCore::BitmapImage::draw): Make use of a new GraphicsContext
   43121         function to simplify the code.
   43122         (WebCore::Image::drawPattern): Now implemented. This makes content
   43123         with tiled patterns (eg. CSS repeat) render correctly.
   43124         * platform/graphics/gdk/ImageGdk.cpp:
   43125         (WebCore::Image::drawPattern): Remove old stub.
   43126 
   43127 2007-04-22  Lars Naesbye Christensen  <lars (a] naesbye.dk>
   43128 
   43129         Reviewed by Tim Hatcher.
   43130 
   43131         Prettier, more modern 'cell' cursor
   43132         http://bugs.webkit.org/show_bug.cgi?id=13441
   43133         Also updates past ChangeLog entries to new email address
   43134 
   43135         * ChangeLog:
   43136         * ChangeLog-2006-12-31:
   43137         * Resources/cellCursor.png:
   43138 
   43139 2007-04-23  Mark Rowe  <mrowe (a] apple.com>
   43140 
   43141         Rubber-stamped by Hyatt.
   43142 
   43143         Rename cMaxPenderingSourceLengthInLowBandwidthDisplay to cMaxPendingSourceLengthInLowBandwidthDisplay.
   43144 
   43145         * loader/FrameLoader.cpp:
   43146         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   43147 
   43148 2007-04-22  Maciej Stachowiak  <mjs (a] apple.com>
   43149 
   43150         Reviewed by Darin and Geoff.
   43151 
   43152         - move most of Window's data members into a separate private object, to avoid needing
   43153         to use the oversize allocator for it
   43154         http://bugs.webkit.org/show_bug.cgi?id=13381
   43155         
   43156         It was the only remaining JSObject subclass to use the oversize
   43157         allocator on 32-bit platforms, and having oversize objects around
   43158         makes garbage collection slower so this would hurt performance
   43159         with many tabs/windows open.
   43160         
   43161         No significant effect on JS iBench.
   43162 
   43163         * bindings/js/kjs_events.cpp:
   43164         (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener):
   43165         (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener):
   43166         (KJS::JSEventListener::JSEventListener):
   43167         (KJS::JSEventListener::~JSEventListener):
   43168         (KJS::JSLazyEventListener::parseCode):
   43169         * bindings/js/kjs_window.cpp:
   43170         (KJS::WindowPrivate::WindowPrivate):
   43171         (KJS::Window::Window):
   43172         (KJS::Window::~Window):
   43173         (KJS::Window::location):
   43174         (KJS::Window::selection):
   43175         (KJS::Window::locationbar):
   43176         (KJS::Window::menubar):
   43177         (KJS::Window::personalbar):
   43178         (KJS::Window::statusbar):
   43179         (KJS::Window::toolbar):
   43180         (KJS::Window::scrollbars):
   43181         (KJS::Window::mark):
   43182         (KJS::Window::getValueProperty):
   43183         (KJS::Window::findJSEventListener):
   43184         (KJS::Window::findJSUnprotectedEventListener):
   43185         (KJS::Window::clearHelperObjectProperties):
   43186         (KJS::Window::clear):
   43187         (KJS::Window::setCurrentEvent):
   43188         (KJS::Window::setReturnValueSlot):
   43189         (KJS::Window::clearAllTimeouts):
   43190         (KJS::Window::installTimeout):
   43191         (KJS::Window::pauseTimeouts):
   43192         (KJS::Window::resumeTimeouts):
   43193         (KJS::Window::clearTimeout):
   43194         (KJS::Window::timerFired):
   43195         (KJS::Window::disconnectFrame):
   43196         (KJS::Window::jsEventListeners):
   43197         (KJS::Window::jsHTMLEventListeners):
   43198         (KJS::Window::jsUnprotectedEventListeners):
   43199         (KJS::Window::jsUnprotectedHTMLEventListeners):
   43200         * bindings/js/kjs_window.h:
   43201 
   43202 2007-04-22  David Hyatt  <hyatt (a] apple.com>
   43203 
   43204         Fix 1% regression on the PLT.  Make sure roundToDevicePixels does no
   43205         work when no scale is in effect.
   43206 
   43207         Reviewed by mjs
   43208 
   43209 2007-04-22  Darin Adler  <darin (a] apple.com>
   43210 
   43211         Reviewed by Oliver.
   43212 
   43213         - fix small things noticed while looking into a font subsitution bug
   43214 
   43215         * platform/Font.h: (WebCore::Font::operator==): Corrected a misleading comment.
   43216 
   43217         * platform/Font.cpp:
   43218         (WebCore::Font::Font): Initialize m_pageZero to 0 in the empty constructor instead
   43219         of leaving it uninitialized. Initialize m_fontList for tighter code. Remove unneeded
   43220         initialization of RefPtr members to 0. Changed the copy constructor to use initialization
   43221         for tighter code.
   43222         (WebCore::Font::operator=): Sorted to match the order from the header and the copy
   43223         constructor, and removed the uneeded self-assignment check.
   43224 
   43225 2007-04-22  Darin Adler  <darin (a] apple.com>
   43226 
   43227         Reviewed by Maciej.
   43228 
   43229         - fix http://bugs.webkit.org/show_bug.cgi?id=5196
   43230           <rdar://problem/4537384> input type=file fields with style=display:none do not post
   43231           their values (5196)
   43232 
   43233         - fix http://bugs.webkit.org/show_bug.cgi?id=8248
   43234           Can not clear file input field
   43235 
   43236         * manual-tests/clear-input-file.html: Added.
   43237 
   43238         * html/HTMLInputElement.cpp:
   43239         (WebCore::HTMLInputElement::appendFormData): Remove check that prevents submission of
   43240         form data when there is no renderer or the renderer is invisible. While well-intentioned,
   43241         the rule does not match the behavior of other web browsers.
   43242         (WebCore::HTMLInputElement::setValue): Instead of disallowing all value changes for file
   43243         type, allow changes to the empty string.
   43244         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): Made file type return true
   43245         for this. 1) The file type does store its value separate from the value attribute.
   43246         2) The code in setInputType() should do the right thing given this new value, according to
   43247         my inspection of the code. 3) The code in both reset() and setValue() will work properly
   43248         if this is true, which was the motivation for changing it.
   43249 
   43250         * platform/FileChooser.h: Added a clear function.
   43251         * platform/FileChooser.cpp: (WebCore::FileChooser::clear): Clear the filename and the icon.
   43252 
   43253         * rendering/RenderFileUploadControl.cpp:
   43254         (WebCore::RenderFileUploadControl::valueChanged): Used a local variable to make the code
   43255         a little bit more readable (and match the change below).
   43256         (WebCore::RenderFileUploadControl::updateFromElement): Used local variables a bit more in
   43257         the old code. Added code that will call clear on the FileChooser and repaint if the DOM
   43258         element has an empty value and the FileChooser does not.
   43259 
   43260 2007-04-22  Grace Kloba  <klobag (a] gmail.com>
   43261 
   43262         Reviewed by Hyatt.
   43263 
   43264         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12279
   43265         Implemented two pass loading. Enabled by WTF_USE_LOW_BANDWIDTH_DISPLAY flag.
   43266 
   43267         * dom/Document.cpp:
   43268         (WebCore::Document::Document): initialize member variable m_inLowBandwidthDisplay
   43269 
   43270         * dom/Document.h:
   43271         (WebCore::Document::haveStylesheetsLoaded): while in low bandwidth display mode, ignore pending style sheets
   43272         (WebCore::Document::setDocLoader):
   43273         (WebCore::Document::inLowBandwidthDisplay):
   43274         (WebCore::Document::setLowBandwidthDisplay):
   43275         * html/HTMLTokenizer.cpp:
   43276         (WebCore::HTMLTokenizer::scriptHandler): while in low bandwidth display mode, don't execute JavaScript
   43277 
   43278         * loader/Cache.cpp:
   43279         (WebCore::Cache::requestResource): while in low bandwidth display mode, don't let style sheet and JavaScript block
   43280 
   43281         * loader/CachedCSSStyleSheet.cpp:
   43282         (WebCore::CachedCSSStyleSheet::checkNotify): add notifyFinished() as client may need "this" pointer
   43283 
   43284         * loader/DocLoader.h:
   43285         (WebCore::DocLoader::replaceDocument):
   43286         * loader/FrameLoader.cpp:
   43287         (WebCore::FrameLoader::FrameLoader):
   43288         (WebCore::FrameLoader::requestFrame): while in low bandwidth display mode, don't load sub-frame
   43289         (WebCore::FrameLoader::stopLoading):
   43290         (WebCore::FrameLoader::begin): set to low bandwidth display mode if the top frame is HTML document
   43291         (WebCore::FrameLoader::write):
   43292         (WebCore::FrameLoader::endIfNotLoading):
   43293         (WebCore::FrameLoader::checkCompleted): while in low bandwidth display mode, don't set complete
   43294         (WebCore::FrameLoader::requestObject): while in low bandwidth display mode, don't care Object
   43295         (WebCore::FrameLoader::addLowBandwidthDisplayRequest):
   43296         (WebCore::FrameLoader::removeAllLowbandwidthDisplayRequests):
   43297         (WebCore::FrameLoader::notifyFinished):
   43298         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
   43299         * loader/FrameLoader.h:
   43300         (WebCore::FrameLoader::FrameLoader::needToSwitchOutLowBandwidthDisplay):
   43301         (WebCore::FrameLoader::FrameLoader::setUseLowBandwidthDisplay):
   43302         (WebCore::FrameLoader::FrameLoader::useLowBandwidthDisplay):
   43303 
   43304 2007-04-22  Darin Adler  <darin (a] apple.com>
   43305 
   43306         Reviewed by Tim Hatcher.
   43307 
   43308         - fix http://bugs.webkit.org/show_bug.cgi?id=13439
   43309           4 problems found in dashboard-region parser and serializer
   43310 
   43311         Test: fast/css/dashboard-region-parser.html
   43312 
   43313         * css/CSSPrimitiveValue.cpp: (WebCore::CSSPrimitiveValue::cssText):
   43314         Fix code that overwrote each additional region with the previous one to
   43315         instead build a space-separated list. Check for the case of an identifier
   43316         that's invalid, since that's (accidentally) how we represent a region
   43317         value that doesn't have explicit top/right/bottom/left values. The old code
   43318         would end up writing out four spaces after the region type.
   43319 
   43320         * css/cssparser.cpp: (WebCore::CSSParser::parseDashboardRegions):
   43321         Fail to parse if there is something after the "none" identifier or after
   43322         the arguments inside the dashboard-region "function". Also replaced code
   43323         that produced a identifier with CSS_VAL_INVALID in a roundabout way with
   43324         code that does it explicitly.
   43325 
   43326 2007-04-22  Darin Adler  <darin (a] apple.com>
   43327 
   43328         Reviewed by Adele.
   43329 
   43330         - support for fix for <rdar://problem/5100240> REGRESSION: Control-O broken
   43331 
   43332         * dom/KeyboardEvent.h: Include a vector of command names in the KeypressCommand object
   43333         instead of a single command name.
   43334 
   43335 2007-04-22  Alexey Proskuryakov  <ap (a] webkit.org>
   43336 
   43337         Reviewed by Darin.
   43338 
   43339         http://bugs.webkit.org/show_bug.cgi?id=13115
   43340         REGRESSION: 1000% performance regression in DOM access by index, which was already slow
   43341 
   43342         * dom/NodeList.h: Move cached data into a separate class, so it can be shared.
   43343 
   43344         * dom/Node.h: Replace the set of registered NodeLists with a struct that also
   43345         contains a shared NodeList::Caches (so the size of Node doesn't change).
   43346 
   43347         * dom/NodeList.cpp:
   43348         (WebCore::NodeList::NodeList):
   43349         (WebCore::NodeList::~NodeList):
   43350         (WebCore::NodeList::recursiveLength):
   43351         (WebCore::NodeList::itemForwardsFromCurrent):
   43352         (WebCore::NodeList::itemBackwardsFromCurrent):
   43353         (WebCore::NodeList::recursiveItem):
   43354         (WebCore::NodeList::itemWithName):
   43355         (WebCore::NodeList::rootNodeChildrenChanged):
   43356         (WebCore::NodeList::NodeListInfo::NodeListInfo):
   43357         (WebCore::NodeList::NodeListInfo::reset):
   43358         * dom/ChildNodeList.cpp:
   43359         (WebCore::ChildNodeList::ChildNodeList):
   43360         (WebCore::ChildNodeList::length):
   43361         (WebCore::ChildNodeList::item):
   43362         (WebCore::ChildNodeList::nodeMatches):
   43363         * dom/ChildNodeList.h:
   43364         * dom/Node.cpp:
   43365         (WebCore::Node::childNodes):
   43366         (WebCore::Node::registerNodeList):
   43367         (WebCore::Node::unregisterNodeList):
   43368         (WebCore::Node::notifyLocalNodeListsAttributeChanged):
   43369         (WebCore::Node::notifyLocalNodeListsChildrenChanged):
   43370         Adjust for the above changes.
   43371 
   43372 2007-04-21  Mitz Pettel  <mitz (a] webkit.org>
   43373 
   43374         Reviewed by Darin.
   43375 
   43376         - fix http://bugs.webkit.org/show_bug.cgi?id=13391
   43377           REGRESSION (r18819): Incomplete repaint of button text
   43378 
   43379         Test: fast/repaint/control-clip.html
   43380 
   43381         Ignore controls' lightweight clip in repaint rect computation for now.
   43382 
   43383         * rendering/RenderBox.cpp:
   43384         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   43385 
   43386 2007-04-21  Darin Adler  <darin (a] apple.com>
   43387 
   43388         Reviewed by Adam.
   43389 
   43390         - fix <rdar://problem/4816343> :-khtml-drag CSS pseudo-class changed to :-webkit-drag, need alias
   43391 
   43392         * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
   43393         Since Apple documentation claims "-khtml-drag" works, we need to keep it working,
   43394         so add it back as an alias.
   43395 
   43396 2007-04-21  Darin Adler  <darin (a] apple.com>
   43397 
   43398         Reviewed by Oliver.
   43399 
   43400         - fix <rdar://problem/4782422> REGRESSION: -[stringByEvaluatingJavaScriptFromString]
   43401           returns an empty string instead of nil for non-string results
   43402 
   43403         * page/mac/WebCoreFrameBridge.mm:
   43404         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
   43405         Added a call to nsStringNilIfEmpty to restore the old behavior. It might be nice to
   43406         distinguish the empty string from a non-string result, but there's no obvious way
   43407         to do that, and for compatibility it's probably best to just restore the old
   43408         behavior instead.
   43409 
   43410 2007-04-21  David Hyatt  <hyatt (a] apple.com>
   43411 
   43412         Fix for bug 13432, determineFlowSpacing is O(n^2).
   43413 
   43414         Reviewed by aroben
   43415 
   43416         * rendering/InlineBox.cpp:
   43417         (WebCore::InlineBox::nextOnLineExists):
   43418         (WebCore::InlineBox::prevOnLineExists):
   43419         * rendering/InlineBox.h:
   43420         (WebCore::InlineBox::InlineBox):
   43421 
   43422 2007-04-21  Lamar Goddard <lamargoddard (a] gmail.com>
   43423 
   43424         Reviewed by Darin.
   43425 
   43426         Fix for http://bugs.webkit.org/show_bug.cgi?id=5262
   43427         <rdar://problem/5018778>
   43428         XMLSerializer drops Namespace information
   43429 
   43430         Updated WebCore::markup to output namespace information for elements/attributes whose namespace information
   43431         doesn't appear in its scope in the output.
   43432 
   43433         Added test case: fast/dom/serialize-nodes.xhtml
   43434 
   43435         * WebCore/editing/markup.cpp:
   43436         (WebCore::createMarkup(const Node*, ...)): Changed call to WebCore::markup to match parameters
   43437         (WebCore::markup): Changed recursive call to match tree structure, removed ASSERT and no longer needed includeSiblings parameter.
   43438         (WebCore::startMarkup): Added optional parameter to track namespaces in the current scope.
   43439         (WebCore::addNamespace): Function to add namespace information to markup.
   43440         (WebCore::shouldAddNamespaceAttr):
   43441         (WebCore::shouldAddNamespaceElem): Functions that test whether namespace information should be added for a given node.
   43442         * WebCore/dom/Document.idl:
   43443         (createElementNS):
   43444         (createAttributeNS):
   43445         (getElementsByTagNameNS): Added [ConvertNullToNullString] to namespaceURI parameter.
   43446         * WebCore/dom/Node.cpp:
   43447         (Node::getElementsByTagNameNS): removed test for namespaceURI being null as null can be a valid namespace.
   43448 
   43449 2007-04-21  Alexey Proskuryakov  <ap (a] webkit.org>
   43450 
   43451         Reviewed by Darin.
   43452 
   43453         http://bugs.webkit.org/show_bug.cgi?id=13300
   43454         Reproducible crash opening anekdot.ru
   43455 
   43456         * html/HTMLParser.cpp:
   43457         (WebCore::HTMLParser::HTMLParser):
   43458         (WebCore::HTMLParser::getNode):
   43459         (WebCore::HTMLParser::handleIsindex):
   43460         * html/HTMLParser.h:
   43461         Made HTMLParser::form a RefPtr, and renamed it to m_currentFormElement.
   43462         Made m_currentMapElement a RefPtr.
   43463 
   43464 2007-04-21  Mitz Pettel  <mitz (a] webkit.org>
   43465 
   43466         Reviewed by Darin.
   43467 
   43468         - fix http://bugs.webkit.org/show_bug.cgi?id=13353
   43469           REGRESSION (r20754-20766): Textarea does not resize when scrollbar is present
   43470 
   43471         Test: fast/overflow/hit-test-overflow-controls.html
   43472 
   43473         * page/EventHandler.cpp:
   43474         (WebCore::EventHandler::handleMouseMoveEvent): Avoid activating scrollbars
   43475         during layer resize.
   43476         * rendering/RenderBlock.cpp:
   43477         (WebCore::RenderBlock::isPointInOverflowControl): Renamed isPointInScrollbar
   43478         to this, to reflect that it returns true for points in the resize corner
   43479         as well. Changed it to call the layer to do the actual work.
   43480         (WebCore::RenderBlock::nodeAtPoint): Updated for the above rename.
   43481         * rendering/RenderBlock.h:
   43482         * rendering/RenderLayer.cpp:
   43483         (WebCore::RenderLayer::horizontalScrollbarWidget): Fixed typo in this function's
   43484         name (it was horizontaScrollbarWidget).
   43485         (WebCore::RenderLayer::hitTestOverflowControls): Added. Returns whether the
   43486         hit point is in one of the scrollbars or the resize corner, and updates the
   43487         platform scrollbar in the hit test result if a scrollbar was hit.
   43488         * rendering/RenderLayer.h:
   43489         * rendering/RenderListBox.cpp:
   43490         (WebCore::RenderListBox::isPointInOverflowControl): Rename.
   43491         * rendering/RenderListBox.h:
   43492 
   43493 2007-04-21  Mitz Pettel  <mitz (a] webkit.org>
   43494 
   43495         Reviewed by Darin.
   43496 
   43497         - fix http://bugs.webkit.org/show_bug.cgi?id=13417
   43498           Repro crash when the first argument to getMatchedCSSRules is not an element
   43499 
   43500         Test: fast/dom/Window/getMatchedCSSRules-null-crash.html
   43501 
   43502         * css/cssstyleselector.cpp:
   43503         (WebCore::CSSStyleSelector::styleRulesForElement): Added null check.
   43504 
   43505 2007-04-21  Mitz Pettel  <mitz (a] webkit.org>
   43506 
   43507         Reviewed by Darin.
   43508 
   43509         - fix http://bugs.webkit.org/show_bug.cgi?id=13416
   43510           Repro crash after referencing the user stylesheet from JavaScript
   43511 
   43512         No test included because DumpRenderTree does not support setting the user stylesheet.
   43513 
   43514         * css/cssstyleselector.cpp:
   43515         (WebCore::CSSStyleSelector::CSSStyleSelector):
   43516         (WebCore::CSSStyleSelector::~CSSStyleSelector):
   43517         * css/cssstyleselector.h: Made m_userSheet a RefPtr.
   43518 
   43519 2007-04-21  Darin Fisher  <darin (a] chromium.org>
   43520 
   43521         Reviewed by Adam.
   43522 
   43523         NPObject should be forward declared using 'struct' instead of 'class'
   43524 
   43525         * page/Frame.h:
   43526 
   43527 2007-04-21  Alp Toker  <alp (a] atoker.com>
   43528 
   43529         Gdk build fix.
   43530 
   43531         * platform/gdk/FontPlatformDataGdk.cpp:
   43532         (WebCore::FontPlatformData::FontPlatformData): Use the correct casts.
   43533 
   43534 2007-04-20  Brady Eidson  <beidson (a] apple.com>
   43535 
   43536         Reviewed by Oliver (Black Sheep)
   43537 
   43538         <rdar://problem/3559794>
   43539         [WebView setMaintainsBackForwardList:] doesn't actually flush out the current page caches
   43540 
   43541         * WebCore.exp:
   43542         * history/BackForwardList.cpp:
   43543         (WebCore::BackForwardList::BackForwardList): Set the flag to true by default
   43544         (WebCore::BackForwardList::addItem): Check the flag and bail if its false
   43545         (WebCore::BackForwardList::setCapacity): More correct if it set the m_current to 
   43546           NoCurrentItemIndex if we're setting capacity to 0
   43547         (WebCore::BackForwardList::enabled): 
   43548         (WebCore::BackForwardList::setEnabled): If we're disabling, cycle capacity to 0 and 
   43549           back to flush things out
   43550         * history/BackForwardList.h: Add enabled(), setEnabled(bool), and m_enabled
   43551 
   43552 2007-04-20  David Hyatt  <hyatt (a] apple.com>
   43553 
   43554         Bug 13424, firstLineStyle and verticalPositionHint together take
   43555         33% of the time on the new tag nesting PLT.  Don't waste time even
   43556         looking for first-line styles if no stylesheet used them.
   43557 
   43558         Reviewed by beth
   43559 
   43560         * css/CSSGrammar.y:
   43561         * dom/Document.cpp:
   43562         (WebCore::Document::Document):
   43563         * dom/Document.h:
   43564         (WebCore::Document::usesFirstLineRules):
   43565         (WebCore::Document::setUsesFirstLineRules):
   43566         * rendering/RenderObject.cpp:
   43567         (WebCore::RenderObject::verticalPositionHint):
   43568         (WebCore::RenderObject::firstLineStyle):
   43569 
   43570 2007-04-20  Peter Kasting  <pkasting (a] google.com>
   43571 
   43572         Reviewed by Oliver.
   43573 
   43574         - fix http://bugs.webkit.org/show_bug.cgi?id=13420
   43575 
   43576         * platform/TextEncodingRegistry.cpp:
   43577         (WebCore::addToTextEncodingNameMap): Change a pointer comparison to a
   43578         strcmp(), since the strings here are not necessarily
   43579         pointer-equivalent.
   43580 
   43581 2007-04-20  Darin Adler  <darin (a] apple.com>
   43582 
   43583         Reviewed by Geoff Garen and John Sullivan.
   43584 
   43585         - fix <rdar://problem/4671964> document property on <iframe> elements causes problems for SAP application
   43586 
   43587         Test: fast/dom/iframe-document.html
   43588 
   43589         * bindings/js/kjs_html.h: Removed IFrameDocument.
   43590         * bindings/js/kjs_html.cpp: (KJS::JSHTMLElement::iFrameGetter): Ditto.
   43591 
   43592 2007-04-19  Alp Toker  <alp (a] atoker.com>
   43593 
   43594         Reviewed by Mark.
   43595 
   43596         * platform/gdk/FontGdk.cpp:
   43597         (WebCore::Font::drawGlyphs):
   43598         * platform/gdk/FontPlatformDataGdk.cpp:
   43599         (WebCore::FontPlatformData::FontPlatformData): Fix font support in Gdk port.
   43600 
   43601 2007-04-19  David Hyatt  <hyatt (a] apple.com>
   43602 
   43603         Fix for bug 13208, implement word-break.  This patch produces a partial
   43604         implementation of word-break.  word-break: break-all is implemented.  In
   43605         addition, a custom value, word-break: break-word is added that is a hybrid
   43606         of word-wrap: break-word and word-break: break-all (and more useful than
   43607         either).
   43608 
   43609         Reviewed by beth
   43610 
   43611         Added fast/text/word-break.html
   43612 
   43613         * css/CSSComputedStyleDeclaration.cpp:
   43614         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   43615         * css/CSSPropertyNames.in:
   43616         * css/CSSValueKeywords.in:
   43617         * css/cssparser.cpp:
   43618         (WebCore::CSSParser::parseValue):
   43619         * css/cssstyleselector.cpp:
   43620         (WebCore::CSSStyleSelector::applyProperty):
   43621         * rendering/RenderStyle.cpp:
   43622         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
   43623         (WebCore::StyleRareInheritedData::operator==):
   43624         (WebCore::RenderStyle::diff):
   43625         * rendering/RenderStyle.h:
   43626         (WebCore::):
   43627         (WebCore::RenderStyle::breakWords):
   43628         (WebCore::RenderStyle::wordBreak):
   43629         (WebCore::RenderStyle::setWordBreak):
   43630         (WebCore::RenderStyle::initialWordBreak):
   43631         (WebCore::RenderStyle::initialWordWrap):
   43632         * rendering/RenderText.cpp:
   43633         (WebCore::RenderText::calcMinMaxWidthInternal):
   43634         * rendering/RenderTextControl.cpp:
   43635         (WebCore::RenderTextControl::createInnerTextStyle):
   43636         (WebCore::RenderTextControl::calcHeight):
   43637         * rendering/bidi.cpp:
   43638         (WebCore::RenderBlock::findNextLineBreak):
   43639 
   43640 2007-04-20  Mark Rowe  <mrowe (a] apple.com>
   43641 
   43642         Qt build fix for FreeBSD.
   43643 
   43644         * WebCore.pro: FreeBSD needs HAVE_PTHREAD_NP_H defined.
   43645 
   43646 2007-04-19  Mitz Pettel  <mitz (a] webkit.org>
   43647 
   43648         Reviewed by Darin.
   43649 
   43650         - fix http://bugs.webkit.org/show_bug.cgi?id=13403
   43651           REGRESSION (r18875-r18899): Can no longer type into search form field after searching and then clicking "back"
   43652 
   43653         The problem was that the page was loaded from the page cache with a subtree
   43654         marked for layout and the layout timer stopped (having been stopped when the
   43655         page entered the page cache). FrameView::needsLayout() was returning false
   43656         which prevented the pending layout from completing.
   43657 
   43658         * page/FrameView.cpp:
   43659         (WebCore::FrameView::clear): Removed the call to stop the layout timer, since
   43660         reset() does that already.
   43661         (WebCore::FrameView::needsLayout): Changed to return true if there's a subtree
   43662         pending relayout.
   43663 
   43664 2007-04-19  Justin Garcia  <justin.garcia (a] apple.com>
   43665 
   43666         Reviewed by harrison
   43667         
   43668         <rdar://problem/5144139> 
   43669         On delete, <BR> inserted into non-editable ToDo <TABLE> element
   43670         
   43671         The fact that the br was being inserted at a bad position 
   43672         (a non-editable position and one inside a table instead of 
   43673         before it) was fixed in the previous checkin. This change 
   43674         stops us from inserting a br at all, to fix the bug.
   43675         
   43676         After a delete, we need a placeholder if the selection
   43677         started at the start of a paragraph and ended at the end 
   43678         of a paragraph. But not if it starts just before a table 
   43679         and ends inside that table.  We need placeholders to hold 
   43680         open emptied out table cells, but that is handled separately.
   43681         
   43682         Also, moved lineBreakExistsAtPosition to htmlediting.cpp 
   43683         so that it can be used in more places.
   43684 
   43685         * editing/CompositeEditCommand.cpp:
   43686         (WebCore::CompositeEditCommand::removePlaceholderAt):
   43687         (WebCore::CompositeEditCommand::moveParagraphs):
   43688         * editing/DeleteSelectionCommand.cpp:
   43689         (WebCore::DeleteSelectionCommand::doApply):
   43690         * editing/InsertLineBreakCommand.cpp:
   43691         * editing/InsertParagraphSeparatorCommand.cpp:
   43692         (WebCore::InsertParagraphSeparatorCommand::doApply):
   43693         * editing/htmlediting.cpp:
   43694         (WebCore::lineBreakExistsAtPosition):
   43695         * editing/htmlediting.h:
   43696 
   43697 2007-04-19  Justin Garcia  <justin.garcia (a] apple.com>
   43698 
   43699         Reviewed by harrison
   43700         
   43701         Fixes some issues found while investigating:
   43702         <rdar://problem/5144139> On delete, <BR> inserted into non-editable ToDo <TABLE> element
   43703         
   43704         Move the code to handle inserting content before/after
   43705         tables for [table, 0/max] to insertNodeAt, so that
   43706         all insertions get it, not just some.
   43707         Changed insertNodeAt to take in a position instead of a
   43708         node and an offset.
   43709 
   43710         * editing/CompositeEditCommand.cpp:
   43711         (WebCore::CompositeEditCommand::insertNodeAt):
   43712         (WebCore::CompositeEditCommand::insertNodeAtTabSpanPosition):
   43713         (WebCore::CompositeEditCommand::insertBlockPlaceholder):
   43714         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
   43715         If paragrahStart.node() is an atomic node, insertNodeAt can handle
   43716         insertion, we don't need to special case it.
   43717         (WebCore::CompositeEditCommand::moveParagraphs):
   43718         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
   43719         * editing/CompositeEditCommand.h:
   43720         * editing/DeleteSelectionCommand.cpp:
   43721         (WebCore::DeleteSelectionCommand::mergeParagraphs):
   43722         (WebCore::DeleteSelectionCommand::doApply):
   43723         * editing/FormatBlockCommand.cpp:
   43724         (WebCore::FormatBlockCommand::doApply):
   43725         * editing/IndentOutdentCommand.cpp:
   43726         (WebCore::IndentOutdentCommand::indentRegion):
   43727         (WebCore::IndentOutdentCommand::outdentParagraph):
   43728         * editing/InsertLineBreakCommand.cpp:
   43729         (WebCore::InsertLineBreakCommand::doApply):
   43730         * editing/InsertListCommand.cpp:
   43731         (WebCore::InsertListCommand::doApply):
   43732         * editing/InsertParagraphSeparatorCommand.cpp:
   43733         (WebCore::InsertParagraphSeparatorCommand::doApply):
   43734         * editing/InsertTextCommand.cpp:
   43735         (WebCore::InsertTextCommand::prepareForTextInsertion): Removed some
   43736         dead code that handled insertion at non-editable positions.
   43737         (WebCore::InsertTextCommand::insertTab):
   43738         * editing/ReplaceSelectionCommand.cpp:
   43739         (WebCore::ReplaceSelectionCommand::doApply):
   43740         (WebCore::ReplaceSelectionCommand::insertNodeAtAndUpdateNodesInserted):
   43741         * editing/ReplaceSelectionCommand.h:
   43742 
   43743 2007-04-19  Mitz Pettel  <mitz (a] webkit.org>
   43744 
   43745         Reviewed by Darin.
   43746 
   43747         - fix http://bugs.webkit.org/show_bug.cgi?id=13336
   43748           REGRESSION (r20646): editing/execCommand/hilitecolor.html crashes under guardMalloc
   43749 
   43750         Avoid calling selectionRect() and selectionGapRects() on a renderer that needs
   43751         layout.
   43752 
   43753         * rendering/RenderBlock.cpp:
   43754         (WebCore::RenderBlock::selectionGapRects):
   43755         * rendering/RenderBlock.h:
   43756         (WebCore::RenderBlock::BlockSelectionInfo::BlockSelectionInfo):
   43757         * rendering/RenderListMarker.cpp:
   43758         (WebCore::RenderListMarker::selectionRect):
   43759         * rendering/RenderObject.h:
   43760         (WebCore::RenderObject::SelectionInfo::SelectionInfo):
   43761         * rendering/RenderReplaced.cpp:
   43762         (WebCore::RenderReplaced::selectionRect):
   43763         * rendering/RenderText.cpp:
   43764         (WebCore::RenderText::selectionRect):
   43765 
   43766 2007-04-19  Justin Garcia  <justin.garcia (a] apple.com>
   43767 
   43768         Reviewed by darin
   43769 
   43770         <rdar://problem/5142012> 
   43771         GoogleDocs: Crash at WebCore::Range::startPosition() when creating a list from a link
   43772         
   43773         List creation uses moveParagraphs to push content into list items.
   43774         Its fragment creation (using createMarkup) incorrectly uses regular
   43775         spaces instead of nbsps for spaces that were rendered (11475), which 
   43776         causes spaces to be collapsed during the move operation.  This results 
   43777         in a call to rangeFromLocationAndLength with a location past the end
   43778         of the document.  We use the result from rangeFromLocationAndLength
   43779         (null) and crash.
   43780         
   43781         Also when moveParagraphs tries to push content into a list item surrounded
   43782         by an anchor, it fails because positionAvoidingSpecialElementBoundary avoids 
   43783         the anchor, which also avoids the list item.  This was fixed by pushing
   43784         down anchors before avoiding them.
   43785         
   43786         * editing/CompositeEditCommand.cpp:
   43787         (WebCore::CompositeEditCommand::pushAnchorElementDown): Remove the
   43788         old anchor after we push down clones of it, this is what callers
   43789         expect.
   43790         (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown):
   43791         Call the new enclosingAnchorElement, that takes in a position instead
   43792         of a node.
   43793         (WebCore::CompositeEditCommand::moveParagraphs): If spaces collapsed
   43794         as a result of the move, rangeFromLocationAndLength can return null,
   43795         bail and don't try to preserve the selection in that case.
   43796         (WebCore::CompositeEditCommand::positionAvoidingSpecialElementBoundary):
   43797         Moved from htmlediting.cpp.
   43798         Make sure anchors are pushed down before avoiding them so that we don't
   43799         also avoid structural elements like lists and blocks.
   43800         * editing/CompositeEditCommand.h:
   43801         * editing/TypingCommand.cpp: Moved isFirst/LastPositionBefore/AfterTable
   43802         to htmlediting.cpp.
   43803         * editing/htmlediting.cpp:
   43804         Moved positionAvoidingSpecialElementBoundary so that it could call
   43805         pushAnchorElementDown.
   43806         (WebCore::isFirstPositionAfterTable): Moved here.
   43807         (WebCore::isLastPositionBeforeTable): Moved here.
   43808         (WebCore::enclosingAnchorElement): Moved here.
   43809         (WebCore::enclosingListChild): Removed an extraneous space.
   43810         * editing/htmlediting.h:
   43811 
   43812 2007-04-19  Beth Dakin  <bdakin (a] apple.com>
   43813 
   43814         Reviewed by Hyatt.
   43815 
   43816         Fix for <rdar://problem/5120889> Sized table cells w/borders not 
   43817         drawn to correct size
   43818 
   43819         When table cells have children with %-height, the cells were 
   43820         incorrectly shrinking down to be the size of the child. This 
   43821         exposed another problem with replaced children and sizing.
   43822 
   43823         * rendering/RenderBox.cpp:
   43824         (WebCore::RenderBox::calcReplacedHeightUsing): The exposed problem. 
   43825         Subtract our borders and padding in the auto or percent table cell 
   43826         containing block case.
   43827         * rendering/RenderTableSection.cpp:
   43828         (WebCore::RenderTableSection::layoutRows): When our children can 
   43829         flex, do not always set the cellTopExtra and cellBottomExtra to 0! 
   43830         That is bad! We should do the same as the non-flex case.
   43831 
   43832 2007-04-19  Anders Carlsson  <andersca (a] apple.com>
   43833 
   43834         Reviewed by Geoff.
   43835 
   43836         http://bugs.webkit.org/show_bug.cgi?id=13333
   43837         Support naturalWidth/naturalHeight on image elements
   43838 
   43839         * html/HTMLImageElement.cpp:
   43840         (WebCore::HTMLImageElement::naturalWidth):
   43841         (WebCore::HTMLImageElement::naturalHeight):
   43842         * html/HTMLImageElement.h:
   43843         * html/HTMLImageElement.idl:
   43844 
   43845 2007-04-19  Patti Hoa  <patti (a] apple.com>
   43846 
   43847         Reviewed by Darin.
   43848         - review suggestion for rdar://5145011 code change
   43849         
   43850         * bridge/mac/WebCoreAXObject.mm:
   43851         (-[WebCoreAXObject value]):
   43852         return early if value attribute is not supported by the attachment view.
   43853 
   43854 2007-04-19  Patti Hoa  <patti (a] apple.com>
   43855 
   43856         Reviewed by Darin.
   43857 
   43858         <rdar://problem/5145011> Allow attachment view of web object to handle accessibility actions
   43859         
   43860         * bridge/mac/WebCoreAXObject.mm:
   43861         (-[WebCoreAXObject value]):
   43862         Only allow asking the attachmentView for value if attachmentView supports this value attribute 
   43863         (-[WebCoreAXObject title]):
   43864         (-[WebCoreAXObject accessibilityAttributeNames]):
   43865         Should not return that long list of unrelated attributes for attachmentView.
   43866         (-[WebCoreAXObject accessibilityActionNames]):
   43867         (-[WebCoreAXObject accessibilityPerformAction:]):
   43868         Allow attachmentView a chance to handle actions.
   43869         (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
   43870         Should not return that long list of unrelated attributes for attachmentView.
   43871         
   43872 2007-04-19  Mitz Pettel  <mitz (a] webkit.org>
   43873 
   43874         Reviewed by Hyatt.
   43875 
   43876         - fix http://bugs.webkit.org/show_bug.cgi?id=13291
   43877           REGRESSION (r19595): WebViewDidBeginEditingNotification not posted when focusing with the mouse
   43878 
   43879         Covered by editing tests.
   43880 
   43881         * dom/Document.cpp:
   43882         (WebCore::Document::setFocusedNode): Moved the call to Editor::didBeginEditing()
   43883         back into here.
   43884         * dom/Element.cpp:
   43885         (WebCore::Element::updateFocusAppearance): Removed the call to didBeginEditing().
   43886         * html/HTMLInputElement.cpp:
   43887         (WebCore::HTMLInputElement::updateFocusAppearance): Ditto.
   43888 
   43889 2007-04-19  Sam Weinig  <sam (a] webkit.org>
   43890 
   43891         Reviewed by Darin.
   43892 
   43893         - Patch for http://bugs.webkit.org/show_bug.cgi?id=12249
   43894           FCKeditor: <hr>, <ul> and <ol> have id="undefined"
   43895 
   43896         Convert undefined and null to a null string for third argument of
   43897         execCommand(); 
   43898 
   43899         Test: editing/execCommand/arguments-combinations.html
   43900 
   43901         * WebCore.xcodeproj/project.pbxproj:
   43902         * bindings/js/kjs_binding.cpp:
   43903         (KJS::valueToStringWithUndefinedOrNullCheck):
   43904         * bindings/js/kjs_binding.h:
   43905         * bindings/scripts/CodeGeneratorJS.pm:
   43906         * dom/Document.idl:
   43907 
   43908 2007-04-19  Alp Toker  <alp (a] atoker.com>
   43909 
   43910         Reviewed by hyatt.
   43911 
   43912         * WebCoreSources.bkl: Remove obsolete source file from build.
   43913 
   43914 2007-04-18  Alp Toker  <alp (a] atoker.com>
   43915 
   43916         Gdk build fix.  Reviewed by Sam Weinig.
   43917 
   43918         Track changes to make GdkLauncher work again.
   43919 
   43920         * WebCoreSources.bkl:
   43921         * platform/gdk/ChromeClientGdk.h:
   43922         * platform/gdk/TemporaryLinkStubs.cpp:
   43923         (ChromeClientGdk::createWindow):
   43924         (ChromeClientGdk::createModalDialog):
   43925         (Editor::markBadGrammar):
   43926 
   43927 2007-04-17  Brady Eidson  <beidson (a] apple.com>
   43928 
   43929         Reviewed by Tim
   43930 
   43931         <rdar://problem/5008925>
   43932         Expose the NSURLConnection delegate willCacheResponse API to WebResourceLoadDelegate
   43933 
   43934         * WebCore.xcodeproj/project.pbxproj: Added ResourceLoaderMac.mm
   43935 
   43936         * loader/FrameLoaderClient.h: Add the willCacheResponse SPI for WebKit to implement
   43937 
   43938         * loader/ResourceLoader.h:
   43939         * loader/mac/ResourceLoaderMac.mm: Added.
   43940         (WebCore::ResourceLoader::willCacheResponse): Return the new cachedResponse from the client
   43941 
   43942         * platform/graphics/svg/SVGImageEmptyClients.h:
   43943         (WebCore::SVGEmptyFrameLoaderClient::willCacheResponse): Stub
   43944 
   43945         * platform/network/ResourceHandleClient.h:
   43946         (WebCore::ResourceHandleClient::willCacheResponse):  Return the new cachedResponse from the client
   43947 
   43948         * platform/network/mac/ResourceHandleMac.mm:
   43949         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]): Call to get the new 
   43950           cachedURLResponse before calling for the cache policy
   43951 
   43952 2007-04-18  Darin Adler  <darin (a] apple.com>
   43953 
   43954         Reviewed by Hyatt.
   43955 
   43956         - fix http://bugs.webkit.org/show_bug.cgi?id=13375
   43957           REGRESSION (r20901): failing fast/overflow/scrollRevealButton.html
   43958 
   43959         * dom/Document.cpp: (WebCore::Document::updateLayout):
   43960         If we have a parent frame, update its layout too.
   43961 
   43962 2007-04-18  Alp Toker  <alp (a] atoker.com>
   43963 
   43964         Gdk build fix.  Reviewed by Mark.
   43965 
   43966         * loader/gdk/FrameLoaderClientGdk.cpp:
   43967         (WebCore::FrameLoaderClientGdk::loadedFromCachedPage):
   43968         (WebCore::FrameLoaderClientGdk::setDocumentViewFromCachedPage):
   43969         (WebCore::FrameLoaderClientGdk::saveDocumentViewToCachedPage):
   43970         * loader/gdk/FrameLoaderClientGdk.h:
   43971         * platform/gdk/TemporaryLinkStubs.cpp:
   43972         (CachedPage::close): Track PageCache to CachedPage refactoring.
   43973 
   43974 2007-04-17  Mitz Pettel  <mitz (a] webkit.org>
   43975 
   43976         Reviewed by Darin.
   43977 
   43978         - fix http://bugs.webkit.org/show_bug.cgi?id=13369
   43979           REGRESSION (r13366): Invisible table cell background is painted
   43980 
   43981         Test: fast/table/invisible-cell-background.html
   43982 
   43983         * rendering/RenderTableCell.cpp:
   43984         (WebCore::RenderTableCell::paintBackgroundsBehindCell): Don't paint any
   43985         background if the cell is not visible. This behavior matches WinIE and Opera.
   43986 
   43987 2007-04-17  Justin Garcia  <justin.garcia (a] apple.com>
   43988 
   43989         Reviewed by harrison
   43990 
   43991         <rdar://problem/5119244> 
   43992         Crash when indenting a selected ToDo
   43993         
   43994         indentRegion() was using the old (incorrect) editable root 
   43995         getter, which returned null for a valid, editable position, 
   43996         causing the crash.
   43997 
   43998         * editing/IndentOutdentCommand.cpp:
   43999         (WebCore::IndentOutdentCommand::indentRegion):
   44000         The editable root for a position is editableRootForPosition(p),
   44001         not p.node()->rootEditableElement(), because of VisiblePositions 
   44002         before/after tables, replaced elements and others.
   44003 
   44004 2007-04-17  Justin Garcia  <justin.garcia (a] apple.com>
   44005 
   44006         Reviewed by hyatt
   44007 
   44008         <rdar://problem/5138441> 
   44009         GoogleDocs: Indented text looks like text that's been Quoted
   44010         
   44011         GoogleDocs uses FormatBlock, blockquotes and a style rule
   44012         for blockquotes to implement a "Quote Text" feature.  Styles
   44013         intended only for those blockquotes were added to the 
   44014         blockquotes that we use for indenting.
   44015 
   44016         * css/html4.css: Removed the webkit-indent-blockquote class rule.
   44017         * editing/IndentOutdentCommand.cpp:
   44018         (WebCore::createIndentBlockquoteElement): Use custom margins
   44019         and turn off border and padding to override author rules for
   44020         blockquotes.
   44021 
   44022 2007-04-17  Justin Garcia  <justin.garcia (a] apple.com>
   44023 
   44024         Reviewed by darin
   44025 
   44026         <rdar://problem/5136770> 
   44027         Gmail Editor: Hang when turning a particular multi-line selection into a list
   44028         
   44029         When InsertListCommand pushes content into list items, 
   44030         it creates an empty list item and then calls moveParagraphs.  
   44031         But moveParagraphs' selection preservation code fails when 
   44032         it encounters empty list items (list items w/o placeholders).
   44033         This causes InsertListCommand to lose track of where it has 
   44034         already been performed, which causes the hang.
   44035 
   44036         * editing/InsertListCommand.cpp:
   44037         (WebCore::InsertListCommand::doApply): Use brs to hold open 
   44038         empty list items.
   44039 
   44040 2007-04-17  Darin Adler  <darin (a] apple.com>
   44041 
   44042         Oops, rolled that last change out. I'll redo it again later after making
   44043         som additional refinments.
   44044 
   44045 2007-04-17  Darin Adler  <darin (a] apple.com>
   44046 
   44047         Reviewed by Brady.
   44048 
   44049         - a few baby steps to try to make lockHistory and userGesture less confusing
   44050 
   44051         * page/FrameLoadRequest.h:
   44052         (WebCore::FrameLoadRequest::FrameLoadRequest): Add initialization of m_isUserGesture
   44053         to true.
   44054         (WebCore::FrameLoadRequest::shouldLockHistory): Renamed from lockHistory to avoid having
   44055         a getter that sounds like a verb phrase.
   44056         (WebCore::FrameLoadRequest::setShouldLockHistory): Ditto.
   44057         (WebCore::FrameLoadRequest::isUserGesture): Added.
   44058         (WebCore::FrameLoadRequest::setIsUserGesture): Ditto.
   44059 
   44060         * loader/FrameLoader.h: Remove userGesture parameter from load that takes
   44061         FrameLoadRequest. Remove default values for lockHistory and userGesture parameters,
   44062         since that just makes it more likely we'll forget to pass them in. Remove one of
   44063         the overloads of urlSelected, since it's only called one place.
   44064 
   44065         * loader/FrameLoader.cpp:
   44066         (WebCore::FrameLoader::createWindow): Remove userGesture parameter, relying on
   44067         the true default in FrameLoadRequest.
   44068         (WebCore::FrameLoader::urlSelected): Call setShouldLockHistory and setIsUserGesture
   44069         on the FrameLoadRequest, and call load directly; also eliminate the other urlSelected
   44070         overload since this was the only place it was called.
   44071         (WebCore::FrameLoader::load): Remove userGesture parameter, relying on the true
   44072         default in FrameLoadRequest. In the other overload, clean up logic to eliminate the
   44073         argsReferrer variable and get rid of the userGesture parameter, using the value from
   44074         FrameLoadRequest.
   44075         (WebCore::FrameLoader::submitForm): Remove userGesture parameter, relying on the value
   44076         in the FrameLoadRequest. This actually changes behavior.
   44077 
   44078         * bindings/js/kjs_html.cpp: (KJS::JSHTMLDocument::putValueProperty): Pass
   44079         false for userGesture explicitly instead of relying on default argument.
   44080 
   44081         * page/ContextMenuController.cpp: (WebCore::ContextMenuController::contextMenuItemSelected):
   44082         Remove userGesture parameter, relying on the true default in FrameLoadRequest.
   44083 
   44084 2007-04-16  David Kilzer  <ddkilzer (a] webkit.org>
   44085 
   44086         Reviewed by NOBODY (fixed misspelling).
   44087 
   44088         * manual-tests/containing-block-position-chage.html: Removed.
   44089         * manual-tests/containing-block-position-change.html: Added.
   44090 
   44091 2007-04-16  Justin Garcia  <justin.garcia (a] apple.com>
   44092 
   44093         Reviewed by darin
   44094 
   44095         <rdar://problem/5134759> 
   44096         GMail Editor: Hang after pasting underlined text multiple times
   44097         
   44098         The moveParagraphs call that ReplaceSelectionCommand
   44099         performs must receive only inline content from createMarkup, 
   44100         or else it will result in another call to moveParagraphs 
   44101         when it performs the move, resulting in infinite recursion.
   44102 
   44103         * editing/markup.cpp:
   44104         (WebCore::startMarkup): We were only converting a block to
   44105         an inline if it had an inline style declaration or styles 
   44106         coming from matched rules.  Cleaned up this code a bit by 
   44107         handling an element's style separately from its other 
   44108         attributes.
   44109 
   44110 2007-04-16  Darin Adler  <darin (a] apple.com>
   44111 
   44112         - get layout tests going again
   44113 
   44114         * page/mac/FrameMac.mm: (WebCore::Frame::setUseSecureKeyboardEntry):
   44115         Replace assertion with a runtime check. We can consider changing it back to
   44116         an assertion some day, but it's not important.
   44117 
   44118 2007-04-16  Darin Adler  <darin (a] apple.com>
   44119 
   44120         Reviewed by John Sullivan.
   44121 
   44122         - fix http://bugs.webkit.org/show_bug.cgi?id=13303
   44123           <rdar://problem/5126341> REGRESSION: controls in a background Safari window
   44124           maintain active appearance if the address bar has focus (13303)
   44125 
   44126         - fix a related problem where elements could look focused in non-active windows
   44127 
   44128         - simplify secure keyboard entry logic in Frame::setIsActive
   44129 
   44130         * WebCore.exp: Add two new symbols for use by WebKit.
   44131 
   44132         * html/HTMLInputElement.cpp:
   44133         (WebCore::HTMLInputElement::dispatchFocusEvent): Call setUseSecureKeyboardEntryWhenActive
   44134         rather than calling setSecureKeyboardEntry directly -- does nothing if the frame is not active.
   44135         (WebCore::HTMLInputElement::dispatchBlurEvent): Ditto.
   44136 
   44137         * page/Frame.cpp:
   44138         (WebCore::Frame::setUseSecureKeyboardEntryWhenActive): Added. Calls
   44139         setUseSecureKeyboardEntry only if the frame is active, but also stores away the state,
   44140         so that the setIsActive function doesn't have to recompute it.
   44141         (WebCore::Frame::setIsActive): Rewrote all the comments in the function. Removed the code
   44142         to manage control tints, which are not based on the whether the frame is active but rather
   44143         on AppKit's concept of whether the window should have "key appearance". Simplified the
   44144         logic about when to call setUseSecureKeyboardEntry by using the value of
   44145         m_useSecureKeyboardEntryWhenActive.
   44146         (WebCore::FramePrivate::FramePrivate): Initialize m_useSecureKeyboardEntryWhenActive.
   44147         * page/Frame.h: Made setSecureKeyboardEntry private and renamed it to
   44148         setUseSecureKeyboardEntry, removed isSecureKeyboardEntry, and
   44149         added a public setUseSecureKeyboardEntryWhenActive.
   44150         * page/FramePrivate.h: Added m_useSecureKeyboardEntryWhenActive.
   44151         * page/mac/FrameMac.mm: (WebCore::Frame::setUseSecureKeyboardEntry): Added an assertion,
   44152         and removed isSecureKeyboardEntry().
   44153 
   44154         * page/FrameView.h: Added updateControlTints.
   44155         * page/FrameView.cpp: (WebCore::FrameView::updateControlTints): Added. Code was moved
   44156         here from setIsActive for two reasons: (1) it makes more sense in the view class, and
   44157         (2) it needs to be called at the appropriate time for AppKit, not when active changes.
   44158 
   44159         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isFocused): Added an isActive
   44160         check here to match the logic in the implementation of the CSS pseudo-state.
   44161         * rendering/RenderThemeMac.mm:
   44162         (WebCore::RenderThemeMac::updateFocusedState): Use the isFocused function instead of
   44163         repeating the logic here. Removed the "need to add a key window test here" comment.
   44164         (WebCore::RenderThemeMac::controlSupportsTints): Added a comment about the NSCell
   44165         SPI that's related to the _windowChangedKeyState method we now use in WebHTMLView.
   44166 
   44167 2007-04-16  Darin Adler  <darin (a] apple.com>
   44168 
   44169         Reviewed by John Sullivan.
   44170 
   44171         - fix http://bugs.webkit.org/show_bug.cgi?id=13227
   44172           StringImpl::isLower incorrectly assumes islower returns 1 (it can return any non-0)
   44173 
   44174         * platform/StringImpl.cpp:
   44175         (WebCore::StringImpl::isLower): Based on test application results, changed to use &&
   44176         instead of trying to use & to avoid branches. Use U16_NEXT so we can handle characters
   44177         outside the BMP. Improved comments.
   44178         (WebCore::StringImpl::lower): Improved comments.
   44179         (WebCore::equalIgnoringCase): Changed to use && instead of trying to use & to avoid
   44180         branches. Improved comments. Added an assertion about the assumption we're
   44181         making that characters in the char* are all ASCII.
   44182 
   44183 2007-04-13  David Kilzer  <ddkilzer (a] webkit.org>
   44184 
   44185         Patch and review by hyatt.  Testing and landing by ddkilzer.
   44186 
   44187         <rdar://problem/5078866>
   44188         tables don't inherit text-align (in strict mode; they're not supposed to in quirks mode)
   44189 
   44190         Test: fast/css/table-text-align-quirk.html
   44191               fast/css/table-text-align-strict.html
   44192 
   44193         Previous commit (r20731) removed the wrong property from WebCore/css/html4.css.  However,
   44194         when the correct property was removed, it caused tables to inherit alignment properties
   44195         from tags like <center> and <div align="center">.  This is fixed in
   44196         WebCore::CSSStyleSelector::adjustRenderStyle() by special-casing tables to reset the
   44197         text-align property.
   44198 
   44199         * css/CSSComputedStyleDeclaration.cpp:
   44200         (WebCore::valueForTextAlign): Renamed KHTML_CENTER, KHTML_LEFT and KHTML_RIGHT to
   44201         WEBKIT_CENTER, WEBKIT_LEFT and WEBKIT_RIGHT.
   44202         * css/cssparser.cpp:
   44203         (WebCore::CSSParser::parseValue): Ditto.
   44204         * css/cssstyleselector.cpp:
   44205         (WebCore::CSSStyleSelector::adjustRenderStyle): Tables should not support -webkit-center,
   44206         -webkit-left or -webkit-right values for text-align, so reset them back to auto.
   44207         * css/html4.css: Removed "text-align: -webkit-auto;" property from tables selector.  It
   44208         was previously added to css/quirks.css in r20731.
   44209         * rendering/RenderBlock.cpp:
   44210         (WebCore::RenderBlock::determineHorizontalPosition): Renamed KHTML_* to WEBKIT_*.
   44211         * rendering/RenderBox.cpp:
   44212         (WebCore::RenderBox::calcHorizontalMargins): Ditto.
   44213         * rendering/RenderFlow.cpp:
   44214         (WebCore::RenderFlow::caretRect): Ditto.
   44215         * rendering/RenderStyle.h: Ditto.
   44216         (WebCore::):
   44217         * rendering/bidi.cpp:
   44218         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Ditto.
   44219 
   44220 2007-04-12  Brady Eidson  <beidson (a] apple.com>
   44221 
   44222         Reviewed by Black Sheep
   44223 
   44224         <rdar://problem/4664154> and http://bugs.webkit.org/show_bug.cgi?id=3546
   44225 
   44226         When you click on a link that opens in a new window from within gmail, they first create a new window 
   44227         with an empty URL, then immediately document.write() into the window to schedule a redirect.
   44228 
   44229         Since the initial page doesn't have a URL associated with it, a history item never gets created.  The 
   44230         reasonable solution?  To actually create the history item after the redirect (in updateHistoryForInternalLoad)
   44231 
   44232         * loader/FrameLoader.cpp:
   44233         (WebCore::FrameLoader::addHistoryForCurrentLocation): Updates global and B/F history with a new history item
   44234         (WebCore::FrameLoader::updateHistoryForStandardLoad): Call addHistoryForCurrentLocation
   44235         (WebCore::FrameLoader::updateHistoryForInternalLoad): Call addHistoryForCurrentLocation if there is not already
   44236           a current history item
   44237         * loader/FrameLoader.h:
   44238 
   44239 2007-04-12  Oliver Hunt  <oliver (a] apple.com>
   44240 
   44241         Reviewed by Adam.
   44242 
   44243         This fixes <rdar://problem/5060766> -- Frameset with 
   44244         an empty frame crashes due to null document.  Debug
   44245         builds hit the frame->document() assertion in 
   44246         EventHandler::prepareMouseEvent
   44247 
   44248         This null check seems necessary now, having run through 
   44249         all the logic on the path to this crash it appears that
   44250         we can't avoid this null check.  
   44251 
   44252         * page/EventHandler.cpp:
   44253         (WebCore::EventHandler::updateDragAndDrop):
   44254 
   44255 2007-04-12  Justin Garcia  <justin.garcia (a] apple.com>
   44256 
   44257         Reviewed by darin
   44258         
   44259         <rdar://problem/5131716> 
   44260         Clicking just before a ToDo doesn't put the caret before the ToDo
   44261         
   44262         * rendering/RenderBlock.cpp:
   44263         (WebCore::RenderBlock::positionForCoordinates):
   44264         Consider clicks inside the blocks padding, instead of
   44265         incorrectly sending them to the position before the block.
   44266 
   44267 2007-04-12  John Sullivan  <sullivan (a] apple.com>
   44268 
   44269         Reviewed by Anders
   44270 
   44271         - WebCore part of fix for:
   44272         <rdar://problem/5128697> REGRESSION: At least one PDF context menu item isn't appearing on Leopard
   44273 
   44274         * platform/ContextMenuItem.h:
   44275         (WebCore::):
   44276         add two PDF-related context menu items to enum to keep it in sync with WebKit
   44277 
   44278         * platform/ContextMenu.cpp:
   44279         (WebCore::ContextMenu::checkOrEnableIfNeeded):
   44280         add the new context menu items to the do-nothing case of a big switch statement
   44281 
   44282 2007-04-12  Simon Hausmann  <hausmann (a] kde.org>
   44283 
   44284         Reviewed by Zack.
   44285 
   44286         Fixed drawing of justified text in the Qt port.
   44287 
   44288         * platform/qt/FontQt.cpp:
   44289         (Font::drawGlyphs):
   44290 
   44291 2007-04-11  Oliver Hunt  <oliver (a] apple.com>
   44292 
   44293         Reviewed by Maciej.
   44294 
   44295         Adding RetainPtr to the many global obj-c pointers we use in
   44296         C/C++ methods.  This is necessary to prevent GC from collecting
   44297         globals we want to keep around.
   44298 
   44299         We use RetainPtr in obj-c++ and c++ files, and CFRetain/Release in pure
   44300         obj-c.
   44301 
   44302         Also made the Pasteboard::m_pasteboard a RetainPtr although it
   44303         shouldn't be necessary as the only NSPasteboard instances that 
   44304         should ever be inserted are the system clipboard and dragging 
   44305         pasteboard.  Neither of which should ever be collected.
   44306 
   44307         * page/mac/WebCoreFrameBridge.mm:
   44308         (_getPreSmartSet):
   44309         (_getPostSmartSet):
   44310         * platform/Pasteboard.h:
   44311         * platform/graphics/mac/ColorMac.mm:
   44312         (WebCore::nsColor):
   44313         * platform/graphics/mac/GraphicsContextMac.mm:
   44314         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   44315         * platform/mac/FontDataMac.mm:
   44316         (WebCore::webFallbackFontFamily):
   44317         * platform/mac/PasteboardMac.mm:
   44318         (WebCore::writableTypesForURL):
   44319         (WebCore::writableTypesForImage):
   44320         (WebCore::Pasteboard::clear):
   44321         (WebCore::Pasteboard::writeSelection):
   44322         (WebCore::Pasteboard::writeURL):
   44323         (WebCore::Pasteboard::writeFileWrapperAsRTFDAttachment):
   44324         (WebCore::Pasteboard::writeImage):
   44325         (WebCore::Pasteboard::canSmartReplace):
   44326         (WebCore::Pasteboard::plainText):
   44327         (WebCore::Pasteboard::documentFragment):
   44328 
   44329 2007-04-11  Mitz Pettel  <mitz (a] webkit.org>
   44330 
   44331         Reviewed by Dave Hyatt.
   44332 
   44333         - fix http://bugs.webkit.org/show_bug.cgi?id=11362
   44334           Native popup with size="1" wraps options
   44335 
   44336         Test: fast/forms/menulist-option-wrap.html
   44337 
   44338         * css/html4.css: Added white-space declaration for select[size="0"] and
   44339         select[size="1"]. Added border-radius declaration for select.
   44340 
   44341 2007-04-11  Darin Fisher  <darin (a] chromium.org>
   44342 
   44343         Reviewed by Maciej.
   44344 
   44345         Add a Frame pointer to ChromeClient methods:
   44346         http://bugs.webkit.org/show_bug.cgi?id=13127
   44347 
   44348         * loader/FrameLoader.cpp:
   44349         (WebCore::FrameLoader::createWindow):
   44350         * page/Chrome.cpp:
   44351         (WebCore::Chrome::createWindow):
   44352         (WebCore::Chrome::createModalDialog):
   44353         * page/Chrome.h:
   44354         * page/ChromeClient.h:
   44355         * page/ContextMenuController.cpp:
   44356         (WebCore::openNewWindow):
   44357         * platform/graphics/svg/SVGImageEmptyClients.h:
   44358         (WebCore::SVGEmptyChromeClient::createWindow):
   44359         (WebCore::SVGEmptyChromeClient::createModalDialog):
   44360 
   44361 2007-04-11  Brady Eidson  <beidson (a] apple.com>
   44362 
   44363         Reviewed by Ada
   44364 
   44365         <rdar://problem/5080987> - Crash in DocumentLoader::frameLoader() const
   44366 
   44367         This was free nil checking lost during the ObjC -> C++ conversion
   44368 
   44369         * loader/FrameLoader.cpp:
   44370         (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Null check the DocumentLoader
   44371 
   44372 2007-04-11  Justin Garcia  <justin.garcia (a] apple.com>
   44373 
   44374         Reviewed by harrison
   44375 
   44376         <rdar://problem/5126166> 
   44377         Deleting selection starting at before ToDo checkbox to end of line, inserts a BR in the subsequent ToDo
   44378         
   44379         If a selection ends in a table cell, we shouldn't perform
   44380         a merge after deleting that selection.  We have code in
   44381         place to prevent those merges, but it failed here.
   44382         
   44383         It fails because the end of the selection was [tableCell, 0],
   44384         (normally not a valid VisiblePosition, but valid here
   44385         because the table cell is empty).  We prevent the merge
   44386         if the node of the position at the end of the selection 
   44387         has an enclosingTableCell.  Even though [tableCell, 0] has 
   44388         an enclosing table cell, the node tableCell doesn't, so 
   44389         the check fails.
   44390         
   44391         Fixed this by changing enclosingTableCell to take in
   44392         a position, instead of a node.  The other enclosing element
   44393         getters should be changed in this way as well.
   44394 
   44395         * editing/DeleteSelectionCommand.cpp:
   44396         (WebCore::DeleteSelectionCommand::initializePositionData):
   44397         Call the new enclosingTableCell.
   44398         * editing/ReplaceSelectionCommand.cpp:
   44399         (WebCore::ReplaceSelectionCommand::shouldMerge): Ditto.
   44400         * editing/htmlediting.cpp:
   44401         (WebCore::enclosingTableCell): Take in a position instead
   44402         of a node.
   44403         * editing/htmlediting.h:
   44404 
   44405 2007-04-12  Mark Rowe  <mrowe (a] apple.com>
   44406 
   44407         Qt build fix.
   44408 
   44409         * WebCore.pro:
   44410         * editing/qt/EditorQt.cpp:
   44411         (WebCore::Editor::markBadGrammar):
   44412         * history/qt/CachedPageQt.cpp: Added.
   44413         (WebCore::CachedPage::close):
   44414         * history/qt/PageCacheQt.cpp: Removed.
   44415 
   44416 2007-04-11  Brady Eidson  <beidson (a] apple.com>
   44417 
   44418         Reviewed by Antti
   44419 
   44420         <rdar://problem/5125648> and http://bugs.webkit.org/show_bug.cgi?id=13326
   44421 
   44422         Crash opening a link in a new window from Gmail
   44423 
   44424         Problem here is that the currentHistoryItem in the new window is null.  This *shouldn't* be the case, 
   44425         and is the cause of a very long standing bug - 
   44426         http://bugs.webkit.org/show_bug.cgi?id=3546 - Can't go back to first page in new window opened from gmail
   44427 
   44428         For now, adding a null check prevents this crash and restores the original, long standing regression
   44429  
   44430         * loader/FrameLoader.cpp:
   44431         (WebCore::FrameLoader::updateHistoryForInternalLoad): NULL check
   44432 
   44433 2007-04-11  Adam Roben  <aroben (a] apple.com>
   44434 
   44435         Reviewed by Anders.
   44436 
   44437         Made image document copying more cross-platform.
   44438 
   44439         All layout tests pass.
   44440 
   44441         * editing/Editor.cpp:
   44442         (WebCore::imageNodeFromImageDocument): Added.
   44443         (WebCore::Editor::canCopy): Called imageNodeFromImageDocument.
   44444         (WebCore::Editor::copy): Ditto.
   44445         (WebCore::Editor::copyImage): Updated for changes to Pasteboard.
   44446         * platform/Pasteboard.h: Made writeImage more general, which allowed
   44447         getting rid of its second incarnation.
   44448         * platform/gdk/TemporaryLinkStubs.cpp:
   44449         * platform/mac/PasteboardMac.mm:
   44450         (WebCore::Pasteboard::writeImage): Collapsed logic from the two
   44451         writeImage methods into one.
   44452         (Pasteboard::writeImage): Updated for Pasteboard changes.
   44453         * platform/qt/PasteboardQt.cpp:
   44454         (WebCore::Pasteboard::writeImage): Ditto.
   44455 
   44456 2007-04-11  Darin Adler  <darin (a] apple.com>
   44457 
   44458         * css/CSSValueKeywords.in: Fix a comment.
   44459 
   44460 2007-04-09  Justin Garcia  <justin.garcia (a] apple.com>
   44461 
   44462         Reviewed by harrison
   44463         
   44464         <rdar://problem/4932260> 
   44465         Invalid attributed string for attachment range obtained via AXPreviousWordStartTextMarkerForTextMarker
   44466         
   44467         By default, text iterators don't emit anything for replaced 
   44468         elements.  Boundary finding code works around this but has 
   44469         bugs: replaced elements act as sentence boundaries and the 
   44470         above bug, where previousBoundary moves past the start of a 
   44471         word if there is a replaced element just before it. This 
   44472         patch fixes these issues by treating replaced elements as 
   44473         punctuation for boundary finding.
   44474 
   44475         * editing/TextIterator.cpp:
   44476         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
   44477         Set m_pastStartNode, the node after (in a reverse pre-order traversal) the 
   44478         last one that should be processed.
   44479         (WebCore::SimplifiedBackwardsTextIterator::advance):
   44480         Stop at m_pastStartNode.
   44481         Iterate over nodes in reverse pre-order (TextIterator traverses in 
   44482         pre-orer). This makes knowing when to emit characters after nodes vs. when
   44483         to emit characters before nodes easier.
   44484         Remove the special case for entering a new block, emitting characters 
   44485         after nodes can now be handled generally, in handleNonTextNode(), because
   44486         of the way we traverse.
   44487         Set m_handledChildren to false every iteration since we now do traverse in 
   44488         reverse pre-order.
   44489         (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement):
   44490         Emit a comma for replaced elements.  We only use this kind of iterator 
   44491         for finding boundaries, so we can do this unconditionally.
   44492         (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode):
   44493         Don't use emitNewline, instead specify where the newline should be positioned.
   44494         A node is handled before its children, so characters emitted here should 
   44495         be positioned after the node, not before it.
   44496         (WebCore::SimplifiedBackwardsTextIterator::exitNode): 
   44497         Don't use emitNewline, instead specify where the newline should be positioned.
   44498         (WebCore::CharacterIterator::CharacterIterator): 
   44499         Create a TextIterator that emits content for replaced elements, if requested.
   44500         * editing/TextIterator.h:
   44501         * editing/visible_units.cpp:
   44502         (WebCore::previousBoundary): 
   44503         Removed replaced element handling code.
   44504         If the start of the chunk that contained the boundary was in a non-text
   44505         node, then the boundary is not necessarily in that node.  Particularly
   44506         because it is only the end of the chunk that is guaranteed to be a valid
   44507         position in those cases.  We must iterate backwards by character from 
   44508         the end of the chunk to find the boundary.
   44509         (WebCore::nextBoundary): Removed replaced element handling code.
   44510 
   44511 2007-04-10  Brady Eidson  <beidson (a] apple.com>
   44512 
   44513         Reviewed by Darin
   44514 
   44515         <rdar://problem/4887095> - PageCache and PageState should be combined
   44516 
   44517         These two objects are a relic of when the PageCache was split between WebCore and WebKit
   44518         It just makes good sense to combine them now, and the new object is more appropriately
   44519         called "CachedPage"
   44520 
   44521         This patch is vast in scope, but simple in depth - anywhere a PageCache or PageState object 
   44522         was used has been adjusted to use a CachedPage object instead.  The most notable change is
   44523         that HistoryItem - which always used to have a PageCache object which may or may not have 
   44524         had a PageState - now may or may not have a CachedPage.  This actually simplifies the 
   44525         HistoryItem code a bit while making the role of CachedPage much more clear.
   44526 
   44527         * WebCore.exp:
   44528         * WebCore.xcodeproj/project.pbxproj:
   44529 
   44530         * history/BackForwardList.cpp:
   44531         (WebCore::BackForwardList::addItem):
   44532         (WebCore::BackForwardList::setCapacity):
   44533         (WebCore::BackForwardList::setPageCacheSize):
   44534         (WebCore::BackForwardList::clearPageCache):
   44535         (WebCore::BackForwardList::close):
   44536 
   44537         * history/PageCache.cpp: Removed.
   44538         * history/PageCache.h: Removed.
   44539         * page/PageState.cpp: Removed.
   44540         * page/PageState.h: Removed.
   44541         * history/CachedPage.cpp: Added.
   44542         (WebCore::CachedPage::create):
   44543         (WebCore::CachedPage::CachedPage):
   44544         (WebCore::CachedPage::~CachedPage):
   44545         (WebCore::CachedPage::restore):
   44546         (WebCore::CachedPage::clear):
   44547         (WebCore::CachedPage::setDocumentLoader):
   44548         (WebCore::CachedPage::documentLoader):
   44549         (WebCore::CachedPage::setTimeStamp):
   44550         (WebCore::CachedPage::setTimeStampToNow):
   44551         (WebCore::CachedPage::timeStamp):
   44552         * history/CachedPage.h: Added.
   44553         (WebCore::CachedPage::document):
   44554         (WebCore::CachedPage::mousePressNode):
   44555         (WebCore::CachedPage::URL):
   44556 
   44557         * history/HistoryItem.cpp:
   44558         (WebCore::HistoryItem::HistoryItem):
   44559         (WebCore::HistoryItem::setCachedPage):
   44560         (WebCore::HistoryItem::setURL):
   44561         (WebCore::HistoryItem::alwaysAttemptToUseCachedPage):
   44562         (WebCore::HistoryItem::setAlwaysAttemptToUseCachedPage):
   44563         (WebCore::HistoryItem::cachedPage):
   44564         (WebCore::cachedPagesPendingRelease):
   44565         (WebCore::HistoryItem::releaseCachedPagesOrReschedule):
   44566         (WebCore::HistoryItem::releaseAllPendingCachedPages):
   44567         (WebCore::HistoryItem::scheduleCachedPageForRelease):
   44568         * history/HistoryItem.h:
   44569         * history/mac/HistoryItemMac.mm:
   44570 
   44571         * history/HistoryItemTimer.cpp:
   44572         (WebCore::HistoryItemTimer::HistoryItemTimer):
   44573         (WebCore::HistoryItemTimer::callReleaseCachedPagesOrReschedule):
   44574         * history/HistoryItemTimer.h:
   44575 
   44576         * history/mac/PageCacheMac.mm: Removed.
   44577         * history/mac/CachedPageMac.mm: Added.
   44578         (WebCore::CachedPage::close):
   44579         (WebCore::CachedPage::setDocumentView):
   44580         (WebCore::CachedPage::documentView):
   44581 
   44582         * loader/DocumentLoader.cpp:
   44583         (WebCore::DocumentLoader::DocumentLoader):
   44584         (WebCore::DocumentLoader::loadFromCachedPage):
   44585         (WebCore::DocumentLoader::setLoadingFromCachedPage):
   44586         (WebCore::DocumentLoader::isLoadingFromCachedPage):
   44587         * loader/DocumentLoader.h:
   44588 
   44589         * loader/FrameLoader.cpp:
   44590         (WebCore::FrameLoader::provisionalLoadStarted):
   44591         (WebCore::FrameLoader::commitProvisionalLoad):
   44592         (WebCore::FrameLoader::transitionToCommitted):
   44593         (WebCore::FrameLoader::open):
   44594         (WebCore::FrameLoader::startLoading):
   44595         (WebCore::FrameLoader::receivedMainResourceError):
   44596         (WebCore::FrameLoader::opened):
   44597         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
   44598         (WebCore::FrameLoader::loadProvisionalItemFromCachedPage):
   44599         (WebCore::FrameLoader::cachePageToHistoryItem):
   44600         (WebCore::FrameLoader::createHistoryItem):
   44601         (WebCore::FrameLoader::purgePageCache):
   44602         (WebCore::FrameLoader::invalidateCurrentItemCachedPage):
   44603         (WebCore::FrameLoader::loadItem):
   44604         (WebCore::FrameLoader::updateHistoryForStandardLoad):
   44605         (WebCore::FrameLoader::updateHistoryForClientRedirect):
   44606         (WebCore::FrameLoader::updateHistoryForBackForwardNavigation):
   44607         (WebCore::FrameLoader::updateHistoryForReload):
   44608         (WebCore::FrameLoader::updateHistoryForInternalLoad):
   44609         (WebCore::FrameLoader::updateHistoryForCommit):
   44610         * loader/FrameLoader.h:
   44611         * loader/FrameLoaderClient.h:
   44612 
   44613         * page/mac/WebCoreFrameBridge.h: Got rid of unused WebCorePageCacheStateKey
   44614         * page/mac/WebCoreFrameBridge.mm: Ditto
   44615 
   44616         * platform/graphics/svg/SVGImage.cpp:
   44617         * platform/graphics/svg/SVGImageEmptyClients.h: Update to reflect the new names
   44618         (WebCore::SVGEmptyFrameLoaderClient::loadProvisionalItemFromCachedPage):
   44619         (WebCore::SVGEmptyFrameLoaderClient::invalidateCurrentItemCachedPage):
   44620         (WebCore::SVGEmptyFrameLoaderClient::loadedFromCachedPage):
   44621         (WebCore::SVGEmptyFrameLoaderClient::clearLoadingFromCachedPage):
   44622         (WebCore::SVGEmptyFrameLoaderClient::isLoadingFromCachedPage):
   44623         (WebCore::SVGEmptyFrameLoaderClient::setDocumentViewFromCachedPage):
   44624         (WebCore::SVGEmptyFrameLoaderClient::saveDocumentViewToCachedPage):
   44625 
   44626 2007-04-10  Antti Koivisto  <antti (a] apple.com>
   44627 
   44628         Reviewed by Hyatt.
   44629 
   44630         Fix <rdar://5057686> 
   44631         Flex box layout example hangs in WebCore::RenderFlexibleBox::allowedChildFlex
   44632         
   44633         Forcibly distribute remaining pixels if the algorithm is not advancing.
   44634 
   44635         * rendering/RenderFlexibleBox.cpp:
   44636         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   44637         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   44638 
   44639 2007-04-11  Mark Rowe  <mrowe (a] apple.com>
   44640 
   44641         Build fix.
   44642 
   44643         * bridge/mac/WebCoreAXObject.mm:
   44644         (-[WebCoreAXObject accessibilityDescription]):
   44645 
   44646 2007-04-10  Patti Hoa <patti (a] apple.com>
   44647 
   44648         Reviewed by Justin Garcia.
   44649 
   44650         <rdar://problem/5122276> Allow focused frame to fire off notification
   44651         Improve accessibility support for Mail WebView embedded Notes.
   44652 
   44653         * bridge/mac/AXObjectCacheMac.mm:
   44654         (WebCore::AXObjectCache::postNotification):
   44655         The focused document with the selection change should fire the selection changed notification, not the top level document
   44656         * bridge/mac/WebCoreAXObject.mm:
   44657         (-[WebCoreAXObject accessibilityDescription]):
   44658         Allow the name attribute of the html body to be used as the accessibility description
   44659 
   44660 2007-04-09  Geoffrey Garen  <ggaren (a] apple.com>
   44661 
   44662         Reviewed by Maciej Stachowiak.
   44663         
   44664         Support for fixing fast/forms/textarea-paste-newline.html.
   44665         
   44666         Changed clients to use new preference specifying whether a Page should 
   44667         allow pasting through the DOM API, instead of a global flag.
   44668 
   44669         Removed old behavior of always allowing DOM paste in debug builds. In 
   44670         light of the new preference-based API, that behavior makes no sense anymore. 
   44671         Instead, developers who want to test paste inside Safari can set the 
   44672         preference for themselves.
   44673 
   44674         * WebCore.exp:
   44675         * editing/CommandByName.cpp: Removed crazy hack to keep an identically 
   44676         named but invalid copy of the global "pate allowed" flag in this file.
   44677         (WebCore::Frame::enabledPaste):
   44678         * editing/JSEditor.cpp: Removed "always allow" behavior for debug builds.
   44679         (WebCore::JSEditor::queryCommandSupported):
   44680         * editing/JSEditor.h:
   44681         * page/Settings.cpp:
   44682         (WebCore::Settings::setDOMPasteAllowed):
   44683         * page/Settings.h:
   44684         (WebCore::Settings::isDOMPasteAllowed):
   44685         * rendering/RenderTreeAsText.cpp:
   44686         (WebCore::externalRepresentation): Removed crazy hack to allow DOM paste
   44687         after this function has been called.
   44688 
   44689 2007-04-10  John Sullivan  <sullivan (a] apple.com>
   44690 
   44691         Reviewed by Tim Hatcher
   44692 
   44693         - fixed <rdar://problem/4859132> Grammar must always be checked in entire-sentence chunks, 
   44694           and shouldn't show markers for current sentence
   44695 
   44696         * editing/Editor.h:
   44697         add markBadGrammar, now distinct from markMisspellings
   44698 
   44699         * editing/mac/EditorMac.mm:
   44700         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   44701         call markMisspellings on one word, and markBadGrammar on entire sentence
   44702         (WebCore::markMisspellingsOrBadGrammar):
   44703         new static function, extracted from markMisspellings
   44704         (WebCore::Editor::markMisspellings):
   44705         now calls extracted function
   44706         (WebCore::Editor::markBadGrammar):
   44707         new method, calls extracted function
   44708 
   44709         * page/Frame.cpp:
   44710         (WebCore::Frame::respondToChangedSelection):
   44711         update grammar markers for entire new and old sentences
   44712 
   44713 2007-04-09  Anders Carlsson  <andersca (a] apple.com>
   44714 
   44715         Reviewed by John.
   44716 
   44717         * WebCore.exp:
   44718         Add __ZNK7WebCore11FrameLoader10isCompleteEv.
   44719         
   44720 2007-04-09  Brady Eidson  <beidson (a] apple.com>
   44721 
   44722         Reviewed by Darin
   44723 
   44724         Fixes <rdar://4921797> and http://bugs.webkit.org/show_bug.cgi?id=12005
   44725 
   44726         The original regression was to claim that more loads were the result of a "user gesture" than really
   44727         were.  A lot of the ways a frame load could be kicked off didn't properly set up this flag, and it 
   44728         wasn't properly propagated and respected where it should've been.
   44729 
   44730         This patch cleans much of that up.  One loose end is the "treatAsUserGesture" flag which is a stop
   44731         gap measure to keep "slow redirects" working to create a new history item.  In the future, we need
   44732         to cleanup the meaning and use of "userGesture" and "lockHistory."  This includes integrating them 
   44733         in to FrameLoadRequest and being very clear of what their meaning actually is at different stages of
   44734         the Frame load process.
   44735 
   44736         * dom/Document.cpp:
   44737         (WebCore::Document::processHttpEquiv): Pass only the delay for the redirect
   44738 
   44739         * html/HTMLAnchorElement.cpp:
   44740         (WebCore::HTMLAnchorElement::defaultEventHandler): Pass "lockHistory" false, "userGesture" true
   44741 
   44742         * ksvg2/svg/SVGAElement.cpp:
   44743         (WebCore::SVGAElement::defaultEventHandler): Pass "lockHistory" false, "userGesture" true
   44744 
   44745         * loader/FrameLoader.cpp:
   44746         (WebCore::ScheduledRedirection::ScheduledRedirection): Figure "lockHistory" and "userGesture" from the 
   44747           delay here, instead of at 3 other different sites that call this method
   44748         (WebCore::FrameLoader::changeLocation): Set userGesture correctly
   44749         (WebCore::FrameLoader::urlSelected): Propagate userGesture down
   44750         (WebCore::FrameLoader::requestFrame): 
   44751         (WebCore::FrameLoader::receivedFirstData):
   44752         (WebCore::FrameLoader::scheduleRedirection): Pass only the delay here
   44753         (WebCore::FrameLoader::redirectionTimerFired): Set userGesture correctly
   44754         (WebCore::FrameLoader::load):
   44755         (WebCore::FrameLoader::updateHistoryForInternalLoad): Insteading of asserting we aren't a redirect,
   44756           handle the case where we *are* a redirect by updating the previous history item
   44757         * loader/FrameLoader.h:
   44758 
   44759 2007-04-09  Anders Carlsson  <andersca (a] apple.com>
   44760 
   44761         Reviewed by Darin.
   44762 
   44763         <rdar://problem/5120801> 
   44764         http://bugs.webkit.org/show_bug.cgi?id=13247
   44765         Closing a page during slow cloning causes crash in setJSStatusBarText (13247)
   44766 
   44767         * bindings/js/kjs_window.cpp:
   44768         (KJS::Window::put):
   44769         Return early if m_frame is null. A closed window only has one property, "closed" 
   44770         so no properties should be settable in that case.
   44771 
   44772 2007-04-09  Andrew Wellington  <proton (a] wiretapped.net>
   44773 
   44774         Reviewed by Justin Garcia.
   44775         
   44776         Fix for http://bugs.webkit.org/show_bug.cgi?id=12959
   44777         "REGRESSION: Edit -> Copy not enabled on standalone images"
   44778 
   44779         * dom/Document.h: Add support for determining if a document is an image
   44780         (WebCore::Document::isImageDocument):
   44781         * editing/Editor.cpp:
   44782         (WebCore::Editor::canCopy): Image documents are copyable
   44783         (WebCore::Editor::copy): If copying an image document, call appropriate pasteboard methods
   44784         * loader/ImageDocument.h:
   44785         (WebCore::ImageDocument::isImageDocument): Override to return true for image documents
   44786         * platform/Pasteboard.h: Add new writeImage function to pasteboard
   44787         * platform/mac/PasteboardMac.mm:
   44788         (WebCore::Pasteboard::writeImage): Add writeImage implementation that takes Node and URL
   44789         * platform/qt/PasteboardQt.cpp:
   44790         (WebCore::Pasteboard::writeImage): Stub for Qt implementation of pasteboard
   44791 
   44792 2007-04-08  Oliver Hunt  <oliver (a] apple.com>
   44793 
   44794         rs=Adam.
   44795 
   44796         Add ASSERT(selectedRange) to previous change
   44797 
   44798         * platform/mac/PasteboardMac.mm:
   44799         (WebCore::Pasteboard::writeSelection):
   44800 
   44801 2007-04-08  Oliver Hunt  <oliver (a] apple.com>
   44802 
   44803         rs=Adam.
   44804 
   44805         Fix minor error when writing selection to pasteboard.
   44806         This shouldn't have an effect as selectedRange should be the
   44807         selected range from source frame, however this is safer.
   44808 
   44809         * platform/mac/PasteboardMac.mm:
   44810         (WebCore::Pasteboard::writeSelection):
   44811 
   44812 2007-04-08  David Hyatt  <hyatt (a] apple.com>
   44813 
   44814         Fix mouseover/out failing layout tests.
   44815 
   44816         Reviewed by aroben
   44817 
   44818         * page/EventHandler.cpp:
   44819         (WebCore::EventHandler::handleMouseMoveEvent):
   44820         (WebCore::EventHandler::updateMouseEventTargetNode):
   44821         (WebCore::EventHandler::dispatchMouseEvent):
   44822         * page/EventHandler.h:
   44823 
   44824 2007-04-08  Oliver Hunt  <oliver (a] apple.com>
   44825 
   44826         Reviewed by Adam.
   44827 
   44828         Fix for <rdar://problem/5113621> REGRESSION: Dragging PDF as image does not give any feedback
   44829 
   44830         If we fail when attempting to create a drag image for a dragged
   44831         image, we fall back to the appropriate icon.
   44832 
   44833         * page/DragController.cpp:
   44834         (WebCore::DragController::doImageDrag):
   44835 
   44836 2007-04-08  Adam Roben  <aroben (a] apple.com>
   44837 
   44838         Reviewed by Oliver.
   44839 
   44840         Bestowed the gift of -webkit-dashboard-region upon all platforms, since
   44841         there's nothing Mac-specific about it other than the name. This also
   44842         allowed me to get rid of FrameViewMac.mm.
   44843 
   44844         Removed a lot of #if PLATFORM(MAC):
   44845 
   44846         * css/CSSComputedStyleDeclaration.cpp:
   44847         (WebCore::):
   44848         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   44849         * css/CSSPrimitiveValue.cpp:
   44850         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   44851         (WebCore::CSSPrimitiveValue::cleanup):
   44852         (WebCore::CSSPrimitiveValue::cssText):
   44853         * css/CSSPrimitiveValue.h:
   44854         (WebCore::CSSPrimitiveValue::getDashboardRegionValue):
   44855         (WebCore::CSSPrimitiveValue::):
   44856         * css/cssparser.cpp:
   44857         (WebCore::CSSParser::parseValue):
   44858         (WebCore::CSSParser::parseDashboardRegions):
   44859         * css/cssparser.h:
   44860         * css/cssstyleselector.cpp:
   44861         (WebCore::CSSStyleSelector::applyProperty):
   44862         * dom/Document.cpp:
   44863         (WebCore::Document::Document):
   44864         * dom/Document.h:
   44865         * page/Frame.cpp:
   44866         (WebCore::Frame::paint):
   44867         * page/Frame.h:
   44868         * page/FrameView.cpp:
   44869         (WebCore::FrameView::layout):
   44870         (WebCore::FrameView::updateDashboardRegions): Moved from FrameViewMac.mm.
   44871         * page/FrameView.h:
   44872         * page/qt/FrameQt.cpp:
   44873         (WebCore::Frame::dashboardRegionsChanged): Stubbed out.
   44874         * platform/gdk/FrameGdk.cpp:
   44875         (WebCore::Frame::dashboardRegionsChanged): Ditto.
   44876         * rendering/RenderLayer.cpp:
   44877         (WebCore::RenderLayer::scrollToOffset):
   44878         (WebCore::RenderLayer::setHasHorizontalScrollbar):
   44879         (WebCore::RenderLayer::setHasVerticalScrollbar):
   44880         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   44881         * rendering/RenderObject.cpp:
   44882         (WebCore::RenderObject::setStyle):
   44883 
   44884         * WebCore.xcodeproj/project.pbxproj: Removed FrameViewMac.mm.
   44885         * bridge/mac/FrameViewMac.mm: Removed.
   44886 
   44887 2007-04-08  Mark Rowe  <mrowe (a] apple.com>
   44888 
   44889         Qt build fix.
   44890 
   44891         * platform/qt/TemporaryLinkStubs.cpp:
   44892 
   44893 2007-04-06  Geoffrey Garen  <ggaren (a] apple.com>
   44894 
   44895         Reviewed by Beth Dakin.
   44896         
   44897         Fixed one more case of <rdar://problem/5112273> REGRESSION(TOT): 
   44898         Reproducible crash loading an old version of amazon.com as a web archive
   44899 
   44900         * bindings/js/JSXMLHttpRequest.cpp:
   44901         (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
   44902 
   44903 2007-04-06  Oliver Hunt  <oliver (a] apple.com>
   44904 
   44905         Reviewed by Adam.
   44906 
   44907         Fix MouseEvent so it's possible to distinguish between
   44908         a MouseMouseEvent with NoButton down, and a move with
   44909         LeftButton down.  It would be nice if the DOM allowed 
   44910         for NoButton to exist, but it doesn't so this is necessary.
   44911 
   44912         * dom/EventTargetNode.cpp:
   44913         (WebCore::EventTargetNode::dispatchMouseEvent):
   44914         * dom/MouseEvent.cpp:
   44915         (WebCore::MouseEvent::MouseEvent):
   44916         (WebCore::MouseEvent::initMouseEvent):
   44917         * dom/MouseEvent.h:
   44918         (WebCore::MouseEvent::noButton):
   44919 
   44920 2007-04-06  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   44921 
   44922         Not reviewed - gdk build fix.
   44923 
   44924         * platform/gdk/MouseEventGdk.cpp:
   44925 
   44926 2007-04-06  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   44927 
   44928         Reviewed by darin.
   44929 
   44930         Coverity fix. Coverity says:
   44931         "Event var_deref_op: Variable "info_ptr" tracked as NULL was dereferenced."
   44932 
   44933         * platform/image-decoders/png/pngrutil.c:
   44934         (png_handle_gAMA):
   44935 
   44936 2007-04-06  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   44937 
   44938         Reviewed by darin.
   44939 
   44940         Coverity fix. Coverity says:
   44941         "Event var_deref_model: Variable "(this)->clientptr" tracked as NULL was passed to a function that dereferences it."
   44942 
   44943         * platform/image-decoders/gif/GIFImageReader.cpp:
   44944         (GIFImageReader::read):
   44945 
   44946 2007-04-06  David Hyatt  <hyatt (a] apple.com>
   44947 
   44948         Fix more of the layout test failures caused by fixing the slider layout test failure (sigh).  clear()
   44949         needs to null out the capturingMouseEventsNode in the case where a mousedown or move while captured
   44950         causes a navigation to another page.
   44951 
   44952         * page/EventHandler.cpp:
   44953         (WebCore::EventHandler::clear):
   44954         (WebCore::EventHandler::handleMouseReleaseEvent):
   44955 
   44956 2007-04-06  David Hyatt  <hyatt (a] apple.com>
   44957 
   44958         Fix failing slider layout test.  Don't clear the subframe capture unless we really were capturing on a
   44959         subframe.
   44960 
   44961         Reviewed by adele, darin
   44962 
   44963         * page/EventHandler.cpp:
   44964         (WebCore::EventHandler::handleMouseReleaseEvent):
   44965 
   44966 2007-04-06  Beth Dakin  <bdakin (a] apple.com>
   44967 
   44968         Reviewed by Geoff and Darin.
   44969 
   44970         Fix for <rdar://problem/4875433> WebView underlines are too thick 
   44971         when scaled small
   44972 
   44973         When we have a small scale factor, we should follow the line-
   44974         drawing code as if we were printing. Meaning, specifically, that we 
   44975         should not round to device pixels and we should antialias.
   44976 
   44977         * platform/graphics/cg/GraphicsContextCG.cpp:
   44978         (WebCore::GraphicsContext::drawLineForText):
   44979 
   44980 2007-04-06  Geoffrey Garen  <ggaren (a] apple.com>
   44981 
   44982         Reviewed by Beth Dakin.
   44983         
   44984         Fixed <rdar://problem/5112273> REGRESSION(TOT): Reproducible crash loading 
   44985         an old version of amazon.com as a web archive
   44986         
   44987         The problem was JavaScript executing inside a frame with a NULL document.
   44988         It's probably a bug that the document was NULL, but we don't want a minor
   44989         bug to be a crasher, and we don't want the DOM to depend on the implementation
   44990         details of the JS bindings, so I added NULL checks.
   44991 
   44992         * bindings/js/kjs_window.cpp: Call FrameLoader::completeURL instead of
   44993         Document::completeURL, since FrameLoader::completeURL is safe against a
   44994         NULL document.
   44995         (KJS::Window::put):
   44996         (KJS::WindowFunc::callAsFunction):
   44997         (KJS::Location::put):
   44998         (KJS::LocationFunc::callAsFunction):
   44999 
   45000 2007-04-06  David Hyatt  <hyatt (a] apple.com>
   45001 
   45002         Fix for bug 13274.  Rework mouse events so that subframe capturing works again.  Make sure
   45003         everything just comes down through the top FrameView even when capturing is in effect.  Update
   45004         scrollbar handling logic so that scrollbars receive events correctly while capturing is in
   45005         effect.  Eliminate the notion of widget capture.  Fix mouse moves so that they only fire
   45006         on the innermost hit frame.
   45007 
   45008         Reviewed by olliej
   45009 
   45010         * page/EventHandler.cpp:
   45011         (WebCore::EventHandler::handleMouseDraggedEvent):
   45012         (WebCore::subframeForTargetNode):
   45013         (WebCore::EventHandler::handleMousePressEvent):
   45014         (WebCore::EventHandler::handleMouseMoveEvent):
   45015         (WebCore::EventHandler::handleMouseReleaseEvent):
   45016         * page/EventHandler.h:
   45017         * platform/PopupMenu.h:
   45018         (WebCore::PopupMenu::scrollbarCapturingMouse):
   45019         (WebCore::PopupMenu::setScrollbarCapturingMouse):
   45020         * platform/ScrollBar.h:
   45021         (WebCore::Scrollbar::handleMouseReleaseEvent):
   45022         * platform/Widget.h:
   45023         (WebCore::Widget::geometryChanged):
   45024 
   45025 2007-04-06  Justin Garcia  <justin.garcia (a] apple.com>
   45026 
   45027         Reviewed by john
   45028 
   45029         <rdar://problem/5115601> 
   45030         REGRESSION: Crash deleting a selection that starts in an editable table cell
   45031         
   45032         The selection starts at the start of an editable 
   45033         root that's embedded in a non-editable ToDo (table).  
   45034         Removing the selection removes all editable 
   45035         VisiblePositions from the root.  Then, the creation 
   45036         of mergeDestination fails, and using it causes a crash.
   45037 
   45038         * editing/DeleteSelectionCommand.cpp:
   45039         (WebCore::DeleteSelectionCommand::mergeParagraphs):
   45040         Nil-check mergeDestination to avoid crashing and
   45041         also insert a break in that case at m_upstreamStart, 
   45042         so that we can create a valid mergeDestination and
   45043         perform the merge.
   45044         
   45045         
   45046 2007-04-06  Mitz Pettel  <mitz (a] webkit.org>
   45047 
   45048         Reviewed by Oliver.
   45049 
   45050         Eliminate PlatformMouseEvent::currentEvent.
   45051 
   45052         No test possible (no change to functionality).
   45053 
   45054         * page/EventHandler.cpp:
   45055         (WebCore::EventHandler::handleDrag):
   45056         * platform/PlatformMouseEvent.h:
   45057         * platform/gdk/TemporaryLinkStubs.cpp:
   45058         * platform/mac/PlatformMouseEventMac.mm:
   45059         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   45060         * platform/qt/PlatformMouseEventQt.cpp:
   45061         * platform/win/TemporaryLinkStubs.cpp:
   45062 
   45063 2007-04-05  Oliver Hunt  <oliver (a] apple.com>
   45064 
   45065         Reviewed by Maciej.
   45066 
   45067         Fix for rdar://problem/4849948 -- JSCanvasRenderingContext2D::drawImage
   45068         crashes when given invalid arguments.
   45069 
   45070         JSCanvasRenderingContext2D frequently casts from JSValue* to JSObject*
   45071         and then checks isObject *after* the cast.  JSObject::isObject is unsafe 
   45072         if applied to a JSImmediate value (null, undefined, etc).  This patch 
   45073         corrects the logic in a number of places by performing the isObject check
   45074         before casting to JSObject.
   45075 
   45076         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
   45077         (WebCore::JSCanvasRenderingContext2D::drawImage):
   45078         (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
   45079         (WebCore::JSCanvasRenderingContext2D::createPattern):
   45080 
   45081 2007-04-05  Adele Peterson  <adele (a] apple.com>
   45082 
   45083         Reviewed by Oliver.
   45084 
   45085         Fix for <rdar://problem/4965597> REGRESSION: mouseup doesn't fire for slider (causes it to always default to max)
   45086 
   45087         Test: fast/forms/slider-mouse-events.html
   45088 
   45089         * page/EventHandler.cpp: (WebCore::EventHandler::dispatchMouseEvent):
   45090         Since the actual target node of the event can't be a shadow node, set the target node to the capturing node before adjusting it.
   45091 
   45092 2007-04-05  Kevin McCullough  <kmccullough (a] apple.com>
   45093 
   45094         Reviewed by Darin.
   45095 
   45096         - Added reportLocalLoadFailed to FrameLoader to send an error to the console when
   45097         calls to canLoad fail. 
   45098 
   45099         * loader/Cache.cpp:
   45100         (WebCore::Cache::requestResource):
   45101         * loader/FrameLoader.cpp:
   45102         (WebCore::FrameLoader::loadSubframe):
   45103         (WebCore::FrameLoader::loadPlugin):
   45104         (WebCore::FrameLoader::load):
   45105         (WebCore::FrameLoader::reportLocalLoadFailed):
   45106         * loader/FrameLoader.h:
   45107         * loader/SubresourceLoader.cpp:
   45108         (WebCore::SubresourceLoader::create):
   45109 
   45110 2007-04-05  Adele Peterson  <adele (a] apple.com>
   45111 
   45112         Reviewed by Maciej.
   45113 
   45114         Add text-align: -webkit-auto for form controls.  Buttons already override this property to center their text.
   45115 
   45116         * css/html4.css:
   45117 
   45118 2007-04-05  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   45119 
   45120         Reviewed by rwlbuis.
   45121 
   45122         Coverity fix. Coverity says:
   45123         "Event var_deref_model: Variable "page" tracked as NULL was passed to a function that dereferences it."
   45124 
   45125         * platform/Font.cpp:
   45126         (WebCore::Font::glyphDataForCharacter):
   45127 
   45128 2007-04-05  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   45129 
   45130         Reviewed by darin.
   45131 
   45132         Coverity fix. Coverity says:
   45133         "Event var_deref_model: Variable "unicode" tracked as NULL was passed to a 
   45134         function that dereferences it."
   45135 
   45136         * platform/DeprecatedString.cpp:
   45137         (WebCore::DeprecatedString::DeprecatedString):
   45138 
   45139 2007-04-05  Adele Peterson  <adele (a] apple.com>
   45140 
   45141         Reviewed by Hyatt.
   45142 
   45143         Fix for <rdar://problem/5113593> REGRESSION: Search fields in RSS pages don't show ibeam cursor
   45144 
   45145         * css/html4.css: Set the cursor values explicitly for input, textarea (to auto), & select (to default).
   45146 
   45147 2007-04-05  David Hyatt  <hyatt (a] apple.com>
   45148 
   45149         Fix for <rdar://problem/5078866> tables should only reset text-align
   45150         in quirks mode.
   45151 
   45152         Reviewed by beth
   45153 
   45154         * css/html4.css:
   45155         * css/quirks.css:
   45156 
   45157 2007-04-05  Adele Peterson  <adele (a] apple.com>
   45158 
   45159         Fixing typo that's crashing.
   45160 
   45161         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler):
   45162           Use evt instead of null variable k.
   45163 
   45164 2007-04-05  Adele Peterson  <adele (a] apple.com>
   45165 
   45166         Reviewed by Hyatt.
   45167 
   45168         Fix for <rdar://problem/5021500> Cursor should stay as pointer when slider is being dragged
   45169 
   45170         Don't set the selection ibeam cursor when there's a node that's capturing mouse events.
   45171 
   45172         * page/EventHandler.cpp:
   45173         (WebCore::selectCursor):
   45174         (WebCore::EventHandler::handleMouseMoveEvent):
   45175 
   45176 2007-04-05  Geoffrey Garen  <ggaren (a] apple.com>
   45177 
   45178         Reviewed by Beth Dakin.
   45179 
   45180         More clean-up while fixing <rdar://problem/5112273> REGRESSION(TOT): 
   45181         Reproducible crash loading an old version of amazon.com as a web archive
   45182         
   45183         Layout tests pass.
   45184         
   45185         Removed more superfluous document NULL checks. (Node::document() never 
   45186         returns NULL, and it asserts as much.)
   45187         
   45188         Merged some duplicate editing code into a static inline function.
   45189         
   45190         * page/mac/WebCoreFrameBridge.mm:
   45191         (updateRenderingForBindings): Removed superfluous static_cast.
   45192 
   45193 2007-04-05  Adele Peterson  <adele (a] apple.com>
   45194 
   45195         Reviewed by Darin.
   45196 
   45197         A little cleanup from my last checkin.  Always check if an Event is really a MouseEvent or a KeyboardEvent
   45198         before casting it.
   45199 
   45200         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler):
   45201         * html/HTMLSelectElement.cpp:
   45202         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
   45203         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   45204         * html/HTMLTextFieldInnerElement.cpp:
   45205         (WebCore::HTMLSearchFieldResultsButtonElement::defaultEventHandler):
   45206         (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
   45207         * ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::defaultEventHandler):
   45208         * page/ContextMenuController.cpp: (WebCore::ContextMenuController::handleContextMenuEvent):
   45209         * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::userResize):
   45210         * rendering/RenderSlider.cpp: (WebCore::HTMLSliderThumbElement::defaultEventHandler):
   45211 
   45212 2007-04-05  Geoffrey Garen  <ggaren (a] apple.com>
   45213 
   45214         Reviewed by Beth Dakin.
   45215         
   45216         Some clean-up while fixing <rdar://problem/5112273> REGRESSION(TOT): 
   45217         Reproducible crash loading an old version of amazon.com as a web archive
   45218         
   45219         Removed superfluous document NULL checks. (Node::document() never returns
   45220         NULL, and it asserts as much.)
   45221         
   45222         Removed duplicate implementation of displayString.
   45223         
   45224         Layout tests pass.
   45225 
   45226         * bindings/objc/DOMInternal.h:
   45227         * bindings/objc/DOMInternal.mm:
   45228         * html/HTMLGenericFormElement.cpp:
   45229         (WebCore::HTMLGenericFormElement::supportsFocus):
   45230         * html/HTMLPlugInElement.cpp:
   45231         (WebCore::HTMLPlugInElement::createNPObject):
   45232         * platform/ContextMenu.cpp:
   45233         (WebCore::ContextMenu::checkOrEnableIfNeeded):
   45234         * rendering/HitTestResult.cpp:
   45235         (WebCore::displayString):
   45236         * rendering/HitTestResult.h:
   45237         * rendering/RenderLayer.cpp:
   45238         (WebCore::RenderLayer::updateHoverActiveState):
   45239 
   45240 === Safari-5522.6 ===
   45241 
   45242 2007-04-05  Oliver Hunt  <oliver (a] apple.com>
   45243 
   45244         Reviewed by Adam.
   45245 
   45246         Fix rdar://problem/5030934 -- landscape PDFs embedded as an image are cut off
   45247         also fixes scaling of pdf images
   45248 
   45249         PDFDocumentImage was not accounting for page rotation in a number of places
   45250 
   45251         * platform/graphics/cg/PDFDocumentImage.cpp:
   45252         (WebCore::PDFDocumentImage::size):
   45253           we need to account for rotation of the pdf image effecting our bounds
   45254         (WebCore::PDFDocumentImage::draw):
   45255           When compensating for flipped coords we need to use the correct rect for the 
   45256           coordinate space.  We can't pass size() to CGContextDrawPDFDocument as it
   45257           returns the rotated bounds now -- this is also save the old 
   45258           FloatSize -> IntSize -> FloatSize conversions.
   45259           
   45260 2007-04-04  Alexey Proskuryakov  <ap (a] webkit.org>
   45261 
   45262         Reviewed by Darin.
   45263 
   45264         http://bugs.webkit.org/show_bug.cgi?id=13278
   45265         REGRESSION: cannot change SELECT option
   45266 
   45267         Test: fast/forms/option-change-single-selected.html
   45268 
   45269         * html/HTMLSelectElement.cpp:
   45270         (WebCore::HTMLSelectElement::setSelectedIndex): If multiple selection is not allowed, 
   45271         be sure to deselect the previous option.
   45272 
   45273 2007-04-04  Adele Peterson  <adele (a] apple.com>
   45274 
   45275         Reviewed by Oliver.
   45276 
   45277         Fix for <rdar://5105009> Prepare for fix to send mousedown and mouseup (but not click) events when right-clicking
   45278 
   45279         * page/EventHandler.cpp: Don't ever send click events for right-clicks.
   45280         (WebCore::EventHandler::handleMouseDoubleClickEvent):
   45281         (WebCore::EventHandler::handleMouseReleaseEvent):
   45282         
   45283         Check that the mousedown and mouseup are not with the right button before performing default behavior.
   45284         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler):
   45285         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
   45286         * html/HTMLSelectElement.cpp:
   45287         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
   45288         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   45289         * html/HTMLTextFieldInnerElement.cpp:
   45290         (WebCore::HTMLSearchFieldResultsButtonElement::defaultEventHandler):
   45291         (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
   45292         * ksvg2/svg/SVGAElement.cpp:(WebCore::SVGAElement::defaultEventHandler):
   45293         * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::userResize):
   45294         * rendering/RenderSlider.cpp: (WebCore::HTMLSliderThumbElement::defaultEventHandler):
   45295 
   45296 2007-04-03  Justin Garcia  <justin.garcia (a] apple.com>
   45297 
   45298         Reviewed by darin
   45299         
   45300         <rdar://problem/5026848> Can cut/delete ToDo subunits
   45301         
   45302         We were removing non-editable content during a delete.
   45303 
   45304         * editing/DeleteSelectionCommand.cpp: 
   45305         (WebCore::DeleteSelectionCommand::initializePositionData): 
   45306         Set m_startRoot and m_endRoot.
   45307         (WebCore::DeleteSelectionCommand::removeNode): If a node
   45308         is not inside both the start and end roots, remove it only
   45309         if it is in editable content.
   45310         * editing/DeleteSelectionCommand.h: Added m_startRoot and 
   45311         m_endRoot, the editable roots that contain the start and end
   45312         of the selection, respectively.  We consult these every
   45313         time we remove a node, and don't want to recompute them 
   45314         on every call to removeNode().
   45315 
   45316 2007-04-03  David Hyatt  <hyatt (a] apple.com>
   45317 
   45318         Fix for <rdar://problem/5108896>, make sure the assert for setEncodedSize
   45319         deals with the error case.
   45320 
   45321         Reviewed by andersca
   45322 
   45323         * loader/CachedResource.cpp:
   45324         (WebCore::CachedResource::setEncodedSize):
   45325 
   45326 2007-04-03  Anders Carlsson  <andersca (a] apple.com>
   45327 
   45328         Reviewed by Dave Hyatt.
   45329 
   45330         * loader/ImageDocument.cpp:
   45331         Don't call error() in stopParsing.
   45332 
   45333 2007-04-03  Justin Garcia  <justin.garcia (a] apple.com>
   45334 
   45335         Reviewed by darin
   45336         
   45337         <rdar://problem/5107422> 
   45338         TOT REGRESSION: Delete key fails to delete text, and cursor disappears in Mail.app
   45339         <rdar://problem/5107413> 
   45340         TOT REGRESSION: Crash deleting text in email (infinite recursion in shouldInsertNode)
   45341 
   45342         * editing/CompositeEditCommand.cpp:
   45343         (WebCore::CompositeEditCommand::moveParagraphs):
   45344         Back out the call to shouldInsert until we
   45345         add WebViewInsertActionMoved, because Mail returns
   45346         NO from shouldInsert for WebViewInsertActionPasted
   45347         to override our Paste operation.
   45348 
   45349 2007-04-03  Anders Carlsson  <andersca (a] apple.com>
   45350 
   45351         Reviewed by Mitz.
   45352 
   45353         Make window.innerWidth/innerHeight include the size of any present scrollbar to match Firefox.
   45354         
   45355         Make document.body.clientWidth/clientHeight return the width/height of the visible content when in
   45356         quirks mode to match WinIE.
   45357         
   45358         * bindings/js/kjs_window.cpp:
   45359         (KJS::Window::getValueProperty):
   45360         Return the width and height of the scroll view, not the visible width and height.
   45361         
   45362         * dom/Element.cpp:
   45363         (WebCore::Element::clientWidth):        
   45364         (WebCore::Element::clientHeight):
   45365         Return the visible size if the element is the body element and we're in quirks mode.
   45366 
   45367 2007-04-03  Adele Peterson  <adele (a] apple.com>
   45368 
   45369         Reviewed by Darin.
   45370 
   45371         Updated fix for <rdar://problem/5107095> REGRESSION: disabled text color calculations are slowing down launchtime measurements
   45372 
   45373         * platform/graphics/Color.cpp: Moved optimization for lightening black and darkening white into the Color class.
   45374         (WebCore::Color::light):
   45375         (WebCore::Color::dark):
   45376         * rendering/RenderTextControl.cpp: (WebCore::disabledTextColor): Skip the difference calculation for black text, which will always be lightened.
   45377 
   45378 2007-04-03  Anders Carlsson  <andersca (a] apple.com>
   45379 
   45380         Reviewed by Tim.
   45381 
   45382         <rdar://problem/4649516> 
   45383         Turn off slow script dialog or crank up time that makes it come up
   45384         
   45385         * bindings/js/kjs_binding.cpp:
   45386         (KJS::ScriptInterpreter::ScriptInterpreter):
   45387         Increase the timeout to 10 seconds to match Firefox.
   45388 
   45389 2007-04-03  Mitz Pettel  <mitz (a] webkit.org>
   45390 
   45391         Reviewed by Darin.
   45392 
   45393         - fix http://bugs.webkit.org/show_bug.cgi?id=13251
   45394           editing/style/fontsize-1.html fails intermittently when run multiple times on Intel, generates incorrect DOM
   45395 
   45396         Covered by existing editing tests.
   45397 
   45398         * css/CSSPrimitiveValue.cpp:
   45399         (WebCore::CSSPrimitiveValue::getFloatValue): Added ASSERTs that the requested conversion
   45400         is from a scalar type to a scalar type. The intermittent failures in the test were
   45401         the result of trying to convert an identifier type to a scalar type.
   45402         * editing/ApplyStyleCommand.cpp:
   45403         (WebCore::StyleChange::checkForLegacyHTMLStyleChange): Added a check that the
   45404         font-size property value is an absolute length. If it is not (such as in the case
   45405         of relative units or keywords like "x-large"), then no corresponding 'size' attribute
   45406         will be generated for legacy HTML.
   45407 
   45408 2007-04-03  Mitz Pettel  <mitz (a] webkit.org>
   45409 
   45410         Reviewed by Darin.
   45411 
   45412         - fix http://bugs.webkit.org/show_bug.cgi?id=13218
   45413           <rdar://problem/5095977>
   45414           Reproducible crash after call to window.close()
   45415 
   45416         * manual-tests/stale-currentEvent.html: Added.
   45417         * page/EventHandler.cpp:
   45418         (WebCore::EventHandler::hoverTimerFired): Instead of faking a mouse event,
   45419         just hit-test the last mouse event coordinates and update for hover state
   45420         changes. This eliminates the use of currentEvent, which can be a non-mouse
   45421         event or even a stale event.
   45422 
   45423 2007-04-02  Adele Peterson  <adele (a] apple.com>
   45424 
   45425         Reviewed by Maciej.
   45426 
   45427         Fix for <rdar://problem/5107095> REGRESSION: disabled text color calculations are slowing down launchtime measurements
   45428 
   45429         Hardcode disabled text colors for the most common cases- black and white.
   45430 
   45431         * rendering/RenderTextControl.cpp: (WebCore::disabledTextColor):
   45432 
   45433 2007-04-02  David Hyatt  <hyatt (a] apple.com>
   45434 
   45435         Fix for <rdar://problem/5105784>, assertion failure in cache.  Encoded sizes were being set to
   45436         garbage by accident because of a mismatch between derived class and base class constructors.  This
   45437         patch cleans all of this up and gets rid of expiration date as a concept separate from the response.
   45438 
   45439         Reviewed by anders
   45440 
   45441         * dom/Document.cpp:
   45442         (WebCore::Document::processHttpEquiv):
   45443         * html/HTMLImageLoader.cpp:
   45444         (WebCore::HTMLImageLoader::updateFromElement):
   45445         * loader/Cache.cpp:
   45446         (WebCore::createResource):
   45447         (WebCore::Cache::requestResource):
   45448         * loader/Cache.h:
   45449         * loader/CachedCSSStyleSheet.cpp:
   45450         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
   45451         * loader/CachedCSSStyleSheet.h:
   45452         * loader/CachedImage.cpp:
   45453         (WebCore::CachedImage::CachedImage):
   45454         * loader/CachedImage.h:
   45455         * loader/CachedResource.cpp:
   45456         (WebCore::CachedResource::CachedResource):
   45457         (WebCore::CachedResource::finish):
   45458         * loader/CachedResource.h:
   45459         * loader/CachedScript.cpp:
   45460         (WebCore::CachedScript::CachedScript):
   45461         * loader/CachedScript.h:
   45462         * loader/CachedXBLDocument.cpp:
   45463         (WebCore::CachedXBLDocument::CachedXBLDocument):
   45464         * loader/CachedXBLDocument.h:
   45465         * loader/CachedXSLStyleSheet.cpp:
   45466         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
   45467         * loader/CachedXSLStyleSheet.h:
   45468         * loader/DocLoader.cpp:
   45469         (WebCore::DocLoader::DocLoader):
   45470         (WebCore::DocLoader::requestResource):
   45471         * loader/DocLoader.h:
   45472 
   45473 2007-04-03  Antti Koivisto  <antti (a] apple.com>
   45474 
   45475         Reviewed by Hyatt.
   45476 
   45477         Render tree memory savings, part 3
   45478         
   45479         These changes shrink all RenderBlocks by additional 28 bytes. Together with parts 1 and 2
   45480         RenderBlock goes from 172 bytes to 128 bytes, a saving of 26%.
   45481         
   45482         - Pack bitfields together in RenderFlow
   45483         - Move top/bottom min/max margin values to a struct that is only allocated in case these
   45484           variables have non default values. Usually this is <5% of all blocks. 
   45485         - Move rarely used column variables to hash
   45486 
   45487         * rendering/RenderBlock.cpp:
   45488         (WebCore::ColumnInfo::ColumnInfo):
   45489         (WebCore::RenderBlock::RenderBlock):
   45490         (WebCore::RenderBlock::~RenderBlock):
   45491         (WebCore::RenderBlock::layoutBlock):
   45492         (WebCore::RenderBlock::collapseMargins):
   45493         (WebCore::RenderBlock::clearFloatsIfNeeded):
   45494         (WebCore::RenderBlock::setCollapsedBottomMargin):
   45495         (WebCore::RenderBlock::layoutBlockChildren):
   45496         (WebCore::RenderBlock::paintColumns):
   45497         (WebCore::RenderBlock::paintObject):
   45498         (WebCore::RenderBlock::fillSelectionGaps):
   45499         (WebCore::RenderBlock::lowestPosition):
   45500         (WebCore::RenderBlock::rightmostPosition):
   45501         (WebCore::RenderBlock::leftmostPosition):
   45502         (WebCore::RenderBlock::nodeAtPoint):
   45503         (WebCore::RenderBlock::hitTestColumns):
   45504         (WebCore::RenderBlock::positionForCoordinates):
   45505         (WebCore::RenderBlock::availableWidth):
   45506         (WebCore::RenderBlock::calcColumnWidth):
   45507         (WebCore::RenderBlock::setDesiredColumnCountAndWidth):
   45508         (WebCore::RenderBlock::desiredColumnWidth):
   45509         (WebCore::RenderBlock::desiredColumnCount):
   45510         (WebCore::RenderBlock::columnRects):
   45511         (WebCore::RenderBlock::layoutColumns):
   45512         (WebCore::RenderBlock::adjustPointToColumnContents):
   45513         (WebCore::RenderBlock::adjustRectForColumns):
   45514         (WebCore::RenderBlock::setMaxTopMargins):
   45515         (WebCore::RenderBlock::setMaxBottomMargins):
   45516         * rendering/RenderBlock.h:
   45517         (WebCore::RenderBlock::maxTopMargin):
   45518         (WebCore::RenderBlock::maxBottomMargin):
   45519         (WebCore::RenderBlock::maxTopPosMargin):
   45520         (WebCore::RenderBlock::maxTopNegMargin):
   45521         (WebCore::RenderBlock::maxBottomPosMargin):
   45522         (WebCore::RenderBlock::maxBottomNegMargin):
   45523         (WebCore::RenderBlock::initMaxMarginValues):
   45524         (WebCore::RenderBlock::MaxMargin::MaxMargin):
   45525         (WebCore::RenderBlock::MaxMargin::topPosDefault):
   45526         (WebCore::RenderBlock::MaxMargin::topNegDefault):
   45527         (WebCore::RenderBlock::MaxMargin::bottomPosDefault):
   45528         (WebCore::RenderBlock::MaxMargin::bottomNegDefault):
   45529         * rendering/RenderFlexibleBox.cpp:
   45530         (WebCore::RenderFlexibleBox::layoutBlock):
   45531         * rendering/RenderFlow.h:
   45532         (WebCore::RenderFlow::RenderFlow):
   45533         (WebCore::RenderFlow::hasColumns):
   45534         * rendering/RenderInline.cpp:
   45535         (WebCore::RenderInline::RenderInline):
   45536         * rendering/RenderInline.h:
   45537 
   45538 2007-04-03  Antti Koivisto  <antti (a] apple.com>
   45539 
   45540         Reviewed by Hyatt.
   45541 
   45542         Fix asserts, these may also be called for rel positioned elements
   45543 
   45544         * rendering/RenderBox.cpp:
   45545         (WebCore::RenderBox::setStaticX):
   45546         (WebCore::RenderBox::setStaticY):
   45547 
   45548 2007-04-02  David Hyatt  <hyatt (a] apple.com>
   45549 
   45550         Throw in an assert to try to track down a problem where an image is being set to a smaller encoded
   45551         size.
   45552 
   45553         * loader/CachedResource.cpp:
   45554         (WebCore::CachedResource::setEncodedSize):
   45555 
   45556 2007-04-02  Ada Chan  <adachan (a] apple.com>
   45557 
   45558         Reviewed by Adele.
   45559 
   45560         <rdar://5105331> Missing null check in Editor::execCommand
   45561         Added null check.
   45562 
   45563         * editing/Editor.cpp:
   45564         (WebCore::Editor::execCommand):
   45565 
   45566 2007-04-02  Justin Garcia  <justin.garcia (a] apple.com>
   45567 
   45568         Reviewed by darin
   45569 
   45570         <rdar://problem/5058163> 
   45571         Hitting return inserts a new line between two To Dos, but caret is position after second ToDo
   45572 
   45573         * editing/InsertParagraphSeparatorCommand.cpp:
   45574         (WebCore::InsertParagraphSeparatorCommand::doApply):
   45575         Removed refPos, it was unused.
   45576         Don't assume that upstream() moves to a different
   45577         node.  This assumption caused the line break to
   45578         be inserted *after* the caret and a bad position
   45579         to be set (added a testcase).
   45580         Use isStartOfParagraph instead of checking
   45581         for the existence of a br because the line might 
   45582         be broken by a newline character in text that 
   45583         preserves newlines.  Paragraphs that are created 
   45584         in other ways, like with blocks, are handled 
   45585         above (added a testcase).
   45586 
   45587  2007-04-02  David Harrison  <harrison (a] apple.com>
   45588 
   45589         Reviewed by Darin.
   45590 
   45591         <rdar://problem/4906488> text attributes are not working for frame based web page
   45592 
   45593         Attribute handling now treats each WebArea as its own world, rather than sometimes
   45594         referring back up to the top WebArea. e.g. getting/setting the selection now
   45595         operates on the WebArea containing the WebCoreAXObject that is being messaged (self).
   45596         The methods that sit above this and are able to go into arbitrary WebAreas
   45597         are accessibilityFocusedUIElement and doAXTextMarkerForPosition, allowing VoiceOver
   45598         to navigate between frames.
   45599         
   45600         * bridge/mac/WebCoreAXObject.mm:
   45601         (-[WebCoreAXObject topRenderer]):
   45602         (-[WebCoreAXObject frameView]):
   45603         (-[WebCoreAXObject topFrameView]):
   45604         Removed topDocument, renamed topView to topFrameView, added frameView.
   45605         
   45606         (-[WebCoreAXObject accessibilityAttributeValue:]):
   45607         AXSelectedTextMarkerRange, AXStartTextMarker, and AXEndTextMarker now use
   45608         self's WebArea, rather than the top WebArea.
   45609         
   45610         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
   45611         Use self's WebArea, rather than the top WebArea.
   45612 
   45613         (-[WebCoreAXObject doAXTextMarkerForPosition:]):
   45614         Use renamed methods for accessing top WebArea.
   45615          
   45616         (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
   45617         Use renamed methods for accessing self's WebArea.
   45618 
   45619         (AXAttributeStringSetColor):
   45620         (AXAttributeStringSetNumber):
   45621         (AXAttributeStringSetFont):
   45622         (AXAttributeStringSetStyle):
   45623         (AXAttributeStringSetElement):
   45624         (-[WebCoreAXObject rendererForView:]):
   45625         Clean up uses of nil and NULL.
   45626         
   45627         (-[WebCoreAXObject accessibilityFocusedUIElement]):
   45628         Find the focused node on the whole page. If there is no focused node,
   45629         return the WebArea for the focused document.
   45630         
   45631         (-[WebCoreAXObject doSetAXSelectedTextMarkerRange:]):
   45632         Use self's WebArea, rather than the top WebArea.
   45633 
   45634 2007-04-02  Antti Koivisto  <antti (a] apple.com>
   45635 
   45636         Fix build. This one was not supposed to be checked in.
   45637 
   45638         * rendering/RenderFlexibleBox.cpp:
   45639         (WebCore::RenderFlexibleBox::layoutBlock):
   45640 
   45641 2007-03-30  Antti Koivisto  <antti (a] apple.com>
   45642 
   45643         Reviewed by Hyatt.
   45644 
   45645         Render tree memory savings, part 2
   45646         
   45647         - Move staticX and staticY variables to RenderLayer since they are only
   45648           applicable to positioned objects
   45649         - Move very rarely used overrideSize variable to hash
   45650         
   45651         These changes shrink all box types by 12 bytes
   45652 
   45653         * rendering/RenderBox.cpp:
   45654         (WebCore::RenderBox::RenderBox):
   45655         (WebCore::RenderBox::destroy):
   45656         (WebCore::RenderBox::overrideSize):
   45657         (WebCore::RenderBox::setOverrideSize):
   45658         (WebCore::RenderBox::overrideWidth):
   45659         (WebCore::RenderBox::overrideHeight):
   45660         (WebCore::RenderBox::position):
   45661         (WebCore::RenderBox::calcWidth):
   45662         (WebCore::RenderBox::calcHeight):
   45663         (WebCore::RenderBox::staticX):
   45664         (WebCore::RenderBox::staticY):
   45665         (WebCore::RenderBox::setStaticX):
   45666         (WebCore::RenderBox::setStaticY):
   45667         (WebCore::RenderBox::calcAbsoluteHorizontal):
   45668         (WebCore::RenderBox::calcAbsoluteVertical):
   45669         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   45670         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
   45671         * rendering/RenderBox.h:
   45672         * rendering/RenderLayer.cpp:
   45673         (WebCore::RenderLayer::RenderLayer):
   45674         * rendering/RenderLayer.h:
   45675         (WebCore::RenderLayer::staticX):
   45676         (WebCore::RenderLayer::staticY):
   45677         (WebCore::RenderLayer::setStaticX):
   45678         (WebCore::RenderLayer::setStaticY):
   45679         * rendering/RenderObject.cpp:
   45680         (WebCore::RenderObject::RenderObject):
   45681         * rendering/RenderObject.h:
   45682         (WebCore::):
   45683         (WebCore::RenderObject::hasOverrideSize):
   45684         (WebCore::RenderObject::setHasOverrideSize):
   45685         * rendering/RenderWidget.cpp:
   45686         (WebCore::RenderWidget::destroy):
   45687 
   45688 2007-03-31  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   45689 
   45690         Not reviewed - gdk build fix.
   45691 
   45692         * platform/gdk/TemporaryLinkStubs.cpp:
   45693         (Font::selectionRectForComplexText):
   45694         (Font::drawComplexText):
   45695 
   45696 2007-03-31  Alexey Proskuryakov  <ap (a] webkit.org>
   45697 
   45698         Reviewed by Darin.
   45699 
   45700         http://bugs.webkit.org/show_bug.cgi?id=12778
   45701         REGRESSION: Nightly won't load Curl plugin for full page use
   45702 
   45703         * dom/DOMImplementation.cpp:
   45704         (WebCore::DOMImplementation::createDocument): Re-order cases to give more priority to plugins.
   45705         This also fixes Adobe SVG Viewer and any plugins that register XML MIME types.
   45706         Added a case for XHTML to avoid enumerating plugins.
   45707 
   45708 2007-03-31  David Hyatt  <hyatt (a] apple.com>
   45709 
   45710         Fix for bug 13234, layout of selected justified text is broken.  Rework TextRuns to avoid having
   45711         from/to members.  Let those be passed in only by the functions that need them (drawing and selection rect).
   45712 
   45713         Reviewed by mitz
   45714 
   45715         fast/text/justified-selection-at-edge.html
   45716 
   45717         * platform/Font.cpp:
   45718         (WebCore::WidthIterator::WidthIterator):
   45719         (WebCore::WidthIterator::advance):
   45720         (WebCore::Font::canUseGlyphCache):
   45721         (WebCore::Font::drawSimpleText):
   45722         (WebCore::Font::drawText):
   45723         (WebCore::Font::floatWidth):
   45724         (WebCore::Font::floatWidthForSimpleText):
   45725         (WebCore::Font::selectionRectForText):
   45726         (WebCore::Font::selectionRectForSimpleText):
   45727         (WebCore::Font::offsetForPositionForSimpleText):
   45728         * platform/Font.h:
   45729         (WebCore::TextRun::m_len):
   45730         * platform/graphics/GraphicsContext.cpp:
   45731         (WebCore::GraphicsContext::drawText):
   45732         (WebCore::GraphicsContext::drawHighlightForText):
   45733         * platform/graphics/GraphicsContext.h:
   45734         * platform/mac/FontMac.mm:
   45735         (WebCore::addDirectionalOverride):
   45736         (WebCore::overrideLayoutOperation):
   45737         (WebCore::ATSULayoutParameters::initialize):
   45738         (WebCore::Font::selectionRectForComplexText):
   45739         (WebCore::Font::drawComplexText):
   45740         (WebCore::Font::floatWidthForComplexText):
   45741         (WebCore::Font::offsetForPositionForComplexText):
   45742         * platform/qt/FontQt.cpp:
   45743         (WebCore::Font::drawComplexText):
   45744         (WebCore::Font::floatWidthForComplexText):
   45745         * platform/qt/TemporaryLinkStubs.cpp:
   45746         (Font::selectionRectForComplexText):
   45747         * rendering/EllipsisBox.cpp:
   45748         (WebCore::EllipsisBox::paint):
   45749         * rendering/InlineTextBox.cpp:
   45750         (WebCore::InlineTextBox::selectionRect):
   45751         (WebCore::InlineTextBox::paint):
   45752         (WebCore::InlineTextBox::paintSelection):
   45753         (WebCore::InlineTextBox::paintMarkedTextBackground):
   45754         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   45755         (WebCore::InlineTextBox::paintTextMatchMarker):
   45756         (WebCore::InlineTextBox::offsetForPosition):
   45757         (WebCore::InlineTextBox::positionForOffset):
   45758         * rendering/RenderListMarker.cpp:
   45759         (WebCore::RenderListMarker::paint):
   45760         (WebCore::RenderListMarker::calcMinMaxWidth):
   45761         (WebCore::RenderListMarker::getRelativeMarkerRect):
   45762         * rendering/RenderMenuList.cpp:
   45763         (WebCore::RenderMenuList::updateOptionsWidth):
   45764         * rendering/RenderText.cpp:
   45765         (WebCore::RenderText::widthFromCache):
   45766         (WebCore::RenderText::width):
   45767 
   45768 2007-03-31  Mitz Pettel  <mitz (a] webkit.org>
   45769 
   45770         Reviewed by Darin.
   45771 
   45772         - fix http://bugs.webkit.org/show_bug.cgi?id=13243
   45773               <rdar://problem/5103226>
   45774           REGRESSION (r20506): Repro crash/assert when using scroll wheel on a list box taller than its contents
   45775 
   45776         * platform/ScrollBar.cpp:
   45777         (WebCore::Scrollbar::setValue): Cleaned up a little.
   45778         (WebCore::Scrollbar::scroll): Changed to apply the minimum and maximum constraints
   45779         in the right order, and cleaned up a little.
   45780 
   45781 2007-03-31  Mitz Pettel  <mitz (a] webkit.org>
   45782 
   45783         Reviewed by Darin.
   45784 
   45785         - fix http://bugs.webkit.org/show_bug.cgi?id=13242
   45786           REGRESSION: Repro crash when specifying the content property for an image
   45787 
   45788         Test: fast/images/text-content-crash.html
   45789 
   45790         * html/HTMLImageElement.cpp:
   45791         (WebCore::HTMLImageElement::parseMappedAttribute): Added a check that the
   45792         renderer is an image.
   45793         (WebCore::HTMLImageElement::attach): Ditto.
   45794 
   45795 2007-03-31  Mark Rowe  <mrowe (a] apple.com>
   45796 
   45797         Reviewed by Darin.
   45798 
   45799         A more correct fix for http://bugs.webkit.org/show_bug.cgi?id=13129
   45800         Bug 13129: Democracy Player dies in NSException from WebScriptObject on startup
   45801 
   45802         The previous attempt at a fix in r20343 attempted to conditionally expose the 'count'
   45803         method.  It did not work which resulted in 'count' always being hidden.  This change
   45804         disables -[WebScriptObject count] completely until it can be determined whether it is
   45805         needed and how to support it without breaking third-party applications.
   45806 
   45807         * bindings/objc/WebScriptObject.mm:
   45808         (-[WebScriptObject count]):
   45809         * bindings/objc/WebScriptObjectPrivate.h:
   45810 
   45811 2007-03-31  Nicholas Shanks  <webkit (a] nickshanks.com>
   45812 
   45813         Reviewed by Adele.
   45814 
   45815         http://bugs.webkit.org/show_bug.cgi?id=13184
   45816         HTMLImageElement longdesc should be complete resolved URL
   45817 
   45818         Test: fast/dom/HTMLImageElement/image-longdesc-absolute-url.html
   45819 
   45820         * html/HTMLImageElement.cpp:
   45821         (WebCore::HTMLImageElement::longDesc): Return absolute URL.
   45822         Behaviour now matches Firefox and Opera.
   45823 
   45824 2007-03-31  Mitz Pettel  <mitz (a] webkit.org>
   45825 
   45826         Reviewed by Hyatt.
   45827 
   45828         - fix http://bugs.webkit.org/show_bug.cgi?id=13209
   45829           REGRESSION (r18756-18765): Incomplete list marker repaint when resizing list item
   45830 
   45831         Test: fast/repaint/list-marker-2.html
   45832 
   45833         A list marker can increase the horizontal overflow after layoutInlineChildren(),
   45834         so made that function return only the vertical bounds of the repaint rect. As the
   45835         horizontal bounds, made layoutBlock() just use the overflow bounds after layout.
   45836 
   45837         * rendering/RenderBlock.cpp:
   45838         (WebCore::RenderBlock::layoutBlock):
   45839         * rendering/RenderBlock.h:
   45840         * rendering/bidi.cpp:
   45841         (WebCore::RenderBlock::layoutInlineChildren):
   45842 
   45843 2007-03-31  Mitz Pettel  <mitz (a] webkit.org>
   45844 
   45845         Reviewed by Hyatt.
   45846 
   45847         - http://bugs.webkit.org/show_bug.cgi?id=13178
   45848           Helvetica zero-width space has non-zero width
   45849 
   45850         Test: fast/text/wide-zero-width-space.html
   45851 
   45852         * platform/FontData.cpp:
   45853         (WebCore::FontData::FontData): Force the ZERO WIDTH SPACE glyph to have width
   45854         0, unless the SPACE character maps to the same glyph.
   45855 
   45856 2007-03-31  Mitz Pettel  <mitz (a] webkit.org>
   45857 
   45858         Reviewed by Darin.
   45859 
   45860         - fix http://bugs.webkit.org/show_bug.cgi?id=8016
   45861           REPRO: Safari hangs loading 18 MB page (deeply nested DOM tree)
   45862 
   45863         Test: fast/tokenizer/lessthan-terminates-tags-and-attrs.html
   45864 
   45865         * html/HTMLTokenizer.cpp:
   45866         (WebCore::HTMLTokenizer::parseTag): Made "<" terminate tag and attribute
   45867         names. This matches Firefox.
   45868 
   45869 2007-03-31  Alexey Proskuryakov  <ap (a] webkit.org>
   45870 
   45871         Debug build fix.
   45872 
   45873         * xml/XPathValue.cpp:
   45874         (WebCore::XPath::): Define Value::adopt.
   45875 
   45876 2007-03-30  Alexey Proskuryakov  <ap (a] webkit.org>
   45877 
   45878         Reviewed by Darin.
   45879 
   45880         http://bugs.webkit.org/show_bug.cgi?id=13021
   45881         XPath can be very slow
   45882 
   45883         This patch finally makes us faster than Firefox 2.0 on this test case.
   45884 
   45885         * xml/XPathFunctions.cpp:
   45886         (WebCore::XPath::FunConcat::evaluate): Use a Vector buffer for faster appending.
   45887         (WebCore::XPath::FunId::evaluate): Move the result NodeSet into Value instead of copying it.
   45888         (WebCore::XPath::FunLocalName::evaluate): Cosmetic changes.
   45889         (WebCore::XPath::FunNamespaceURI::evaluate): Ditto.
   45890         (WebCore::XPath::FunName::evaluate): Ditto.
   45891         (WebCore::XPath::FunNormalizeSpace::evaluate): Ditto.
   45892 
   45893         * xml/XPathValue.cpp:
   45894         (WebCore::XPath::Value::toNodeSet):
   45895         (WebCore::XPath::Value::modifiableNodeSet):
   45896         (WebCore::XPath::Value::toBoolean):
   45897         (WebCore::XPath::Value::toNumber):
   45898         (WebCore::XPath::Value::toString):
   45899         * xml/XPathValue.h:
   45900         (WebCore::XPath::ValueData::ValueData):
   45901         (WebCore::XPath::Value::Value):
   45902         Made Value copying faster by putting large data members into a separate refcounted ValueData class.
   45903         Added provisions for moving a NodeSet in and out of Value without copying.
   45904         Made construction safer by moving bool version to a template constructor.
   45905         Removed an (almost) unused default constructor.
   45906 
   45907         * xml/XPathPredicate.h: Store a Value for literal string and number expressions to avoid 
   45908         constructing one each time.
   45909 
   45910         * xml/XPathPath.cpp:
   45911         (WebCore::XPath::Filter::evaluate):
   45912         (WebCore::XPath::LocationPath::evaluate):
   45913         (WebCore::XPath::Path::evaluate):
   45914         * xml/XPathPath.h:
   45915         * xml/XPathPredicate.cpp:
   45916         (WebCore::XPath::NumericOp::evaluate):
   45917         (WebCore::XPath::Union::evaluate):
   45918         * xml/XPathResult.cpp:
   45919         (WebCore::XPathResult::snapshotItem):
   45920         * xml/XPathStep.cpp:
   45921         (WebCore::XPath::Step::evaluate):
   45922         (WebCore::XPath::Step::nodesInAxis):
   45923         * xml/XPathStep.h:
   45924         Got rid of unnecessary NodeSet copying in many cases.
   45925 
   45926 2007-03-30  Justin Garcia  <justin.garcia (a] apple.com>
   45927 
   45928         Reviewed by john
   45929 
   45930         <rdar://problem/5076323> Only one To Do can be created by a selection in a message
   45931 
   45932         When Mail's ToDoify operation called moveToEndOfDocument: 
   45933         with a selection that started just before a ToDo, we'd 
   45934         move them to the end of the document, not to the end
   45935         of the editable root, because we incorrectly checked
   45936         for the editability of positions before ToDos.  Then Mail
   45937         would refuse to create a ToDo because the selection was 
   45938         outside of the region where they allowed editing.
   45939 
   45940         * editing/SelectionController.cpp:
   45941         (WebCore::SelectionController::modifyExtendingRightForward):
   45942         Check the position for editability, not the position's node,
   45943         since there are editable positions of the form [node, offset]
   45944         where node is contenteditable=false.
   45945         Re-use pos.  Nothing that happens after it's created can invalidate
   45946         it or the position and affinity used to create it.
   45947         (WebCore::SelectionController::modifyMovingRightForward): Ditto.
   45948         (WebCore::SelectionController::modifyExtendingLeftBackward): Ditto.
   45949         (WebCore::SelectionController::modifyMovingLeftBackward): Ditto.
   45950         * rendering/RenderBlock.cpp:
   45951         (WebCore::RenderBlock::paintCaret): Ditto.
   45952 
   45953 2007-03-30  Adele Peterson  <adele (a] apple.com>
   45954 
   45955         Reviewed by Darin.
   45956 
   45957         Added DeleteWordBackward and DeleteWordForward to execCommand.
   45958 
   45959         * editing/Editor.cpp:
   45960         (WebCore::execDeleteWordBackward):
   45961         (WebCore::execDeleteWordForward):
   45962         (WebCore::CommandEntry::):
   45963 
   45964 2007-03-30  Simon Hausmann  <hausmann (a] kde.org>
   45965 
   45966         Reviewed by Zack
   45967 
   45968         * WebCore.pro: Fix release Qt builds.
   45969 
   45970 2007-03-30  Antti Koivisto  <antti (a] apple.com>
   45971 
   45972         Reviewed by bdash.
   45973 
   45974         Spotted an int that should be float in previous patch.
   45975 
   45976         * platform/Font.cpp:
   45977         (WebCore::WidthIterator::advance):
   45978 
   45979 2007-03-30  Antti Koivisto  <antti (a] apple.com>
   45980 
   45981         Reviewed by Hyatt.
   45982 
   45983         Render tree memory savings, part 1
   45984         
   45985         - Eliminate caching of monospace char width from RenderText. This optimization is not needed
   45986           anymore since Font already caches space width (RenderText -4 bytes)
   45987         - Eliminate caching of tab width from RenderBlock. Similary this optimization has become
   45988           obsolete (RenderBlock -4 bytes)
   45989 
   45990         * platform/Font.cpp:
   45991         (WebCore::WidthIterator::advance):
   45992         (WebCore::Font::spaceWidth):
   45993         * platform/Font.h:
   45994         (WebCore::Font::tabWidth):
   45995         * platform/TextStyle.h:
   45996         (WebCore::TextStyle::TextStyle):
   45997         (WebCore::TextStyle::allowTabs):
   45998         * rendering/InlineTextBox.cpp:
   45999         (WebCore::InlineTextBox::selectionRect):
   46000         (WebCore::InlineTextBox::paint):
   46001         (WebCore::InlineTextBox::paintSelection):
   46002         (WebCore::InlineTextBox::paintMarkedTextBackground):
   46003         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   46004         (WebCore::InlineTextBox::paintTextMatchMarker):
   46005         (WebCore::InlineTextBox::offsetForPosition):
   46006         (WebCore::InlineTextBox::positionForOffset):
   46007         * rendering/RenderBlock.cpp:
   46008         (WebCore:::RenderFlow):
   46009         (WebCore::RenderBlock::setStyle):
   46010         * rendering/RenderBlock.h:
   46011         * rendering/RenderObject.cpp:
   46012         * rendering/RenderObject.h:
   46013         * rendering/RenderText.cpp:
   46014         (WebCore::RenderText::RenderText):
   46015         (WebCore::RenderText::setStyle):
   46016         (WebCore::RenderText::widthFromCache):
   46017         (WebCore::RenderText::trimmedMinMaxWidth):
   46018         (WebCore::RenderText::calcMinMaxWidthInternal):
   46019         (WebCore::RenderText::setTextInternal):
   46020         (WebCore::RenderText::width):
   46021         * rendering/RenderText.h:
   46022         (WebCore::RenderText::allowTabs):
   46023         * rendering/bidi.cpp:
   46024 
   46025 2007-03-30  David Hyatt  <hyatt (a] apple.com>
   46026 
   46027         Fix (take 2) for bug 4334, flickering when floating elements gain/lose transparency.
   46028 
   46029         Reviewed by mitz
   46030 
   46031         * rendering/RenderBlock.cpp:
   46032         * rendering/RenderBlock.h:
   46033         * rendering/RenderBox.cpp:
   46034         (WebCore::RenderBox::setStyle):
   46035 
   46036 2007-03-29  Mitz Pettel  <mitz (a] webkit.org>
   46037 
   46038         Reviewed by Darin.
   46039 
   46040         - fix http://bugs.webkit.org/show_bug.cgi?id=13166
   46041           REGRESSION (2005-10-16 - 2005-10-19): Ampersands showing up in the last column of the Gmail contacts table
   46042 
   46043         Test: fast/tokenizer/write-partial-entity.html
   46044 
   46045         * html/HTMLTokenizer.cpp:
   46046         (WebCore::HTMLTokenizer::parseTag): Reordered to avoid resetting the buffer position
   46047         after script execution which can write to the buffer.
   46048 
   46049 2007-03-29  Justin Garcia  <justin.garcia (a] apple.com>
   46050 
   46051         Reviewed by john
   46052 
   46053         <rdar://problem/5099303> Deleting after a ToDo puts the caret in the wrong position
   46054         
   46055         We were failing to create the correct selection 
   46056         for DeleteSelectionCommand because the selection extension 
   46057         operations don't skip over non-editable content for editable 
   46058         selections.
   46059 
   46060         * editing/SelectionController.cpp:
   46061         (WebCore::SelectionController::modifyExtendingRightForward):
   46062         When extending an editable selection, don't extend into
   46063         non-editable content.
   46064         (WebCore::SelectionController::modifyExtendingLeftBackward):
   46065         Ditto.
   46066 
   46067 2007-03-29  Patti Hoa  <patti (a] apple.com>
   46068 
   46069         Reviewed by harrison.
   46070 
   46071         <rdar://problem/4918397> Exception raise inspecting note contents in the background
   46072         * WebCore.xcodeproj/project.pbxproj:
   46073         * bridge/mac/WebCoreAXObject.mm:
   46074         (-[WebCoreAXObject subrole]):
   46075         (-[WebCoreAXObject title]):
   46076         Check that attachment supports the attribute before requesting it.
   46077 
   46078 2007-03-29  Justin Garcia  <justin.garcia (a] apple.com>
   46079 
   46080         Reviewed by john
   46081 
   46082         <rdar://problem/5032066> Delete should work between ToDos
   46083         
   46084         Stop selecting the table when the user attempts to delete
   46085         the line break just after it, instead, extend the selection
   46086         into the last table cell.
   46087         Let deletion merge content into table cells (as long as 
   46088         its not from another table cell).  
   46089         Start calling shouldInsertNode:replacingDOMRange:givenAction: 
   46090         when moving content with moveParagraphs, so that Mail can 
   46091         modify content before it is moved into a ToDo during a delete.
   46092 
   46093         * editing/CompositeEditCommand.cpp:
   46094         (WebCore::CompositeEditCommand::moveParagraphs): Ask the
   46095         delegate before performing the move.  This will let Mail
   46096         prevent styles from entering a ToDo.
   46097         Added a FIXME about adding a new WebViewInsertAction
   46098         * editing/DeleteSelectionCommand.cpp:
   46099         (WebCore::DeleteSelectionCommand::initializePositionData):
   46100         Allow merging into table cells from content not in a table.
   46101         * editing/SelectionController.cpp:
   46102         (WebCore::SelectionController::modifyExtendingRightForward):
   46103         Don't select the table when extending by character/word from
   46104         just before it.  This code was here to make it easier to select
   46105         tables in order to delete them, but the deletion UI makes it 
   46106         largely unnecessary.
   46107         (WebCore::SelectionController::modifyExtendingLeftBackward):
   46108         Ditto.
   46109         * editing/TypingCommand.cpp:
   46110         (WebCore::isFirstPositionAfterTable): Added.
   46111         (WebCore::isLastPositionBeforeTable): Ditto.
   46112         (WebCore::TypingCommand::deleteKeyPressed): When pressing
   46113         the delete key with a caret at the beginning of a paragraph
   46114         just after a table, move the paragraph into the last table
   46115         cell.
   46116         Do not do this if it would mean moving a block table.
   46117         Removed some old irrelevant comments.
   46118         * editing/htmlediting.cpp: Removed unused functions.
   46119         * editing/htmlediting.h:
   46120 
   46121 2007-03-29  Adam Treat  <adam (a] staikos.net>
   46122 
   46123         Reviewed and committed by George Staikos.
   46124 
   46125         Remove redundant line.
   46126 
   46127         * platform/qt/FontDataQt.cpp:
   46128         (WebCore::FontData::platformInit):
   46129 
   46130 2007-03-29  Adam Treat  <adam (a] staikos.net>
   46131 
   46132         Reviewed by David Hyatt, committed by George Staikos.
   46133 
   46134         Test: fast/text/justified-selection.html
   46135 
   46136         Take into account the entire run length to get a proper selection.
   46137 
   46138         * platform/Font.cpp:
   46139         (WebCore::WidthIterator::WidthIterator):
   46140 
   46141 2007-03-29  David Hyatt  <hyatt (a] apple.com>
   46142 
   46143         Fix for <rdar://problem/4545060>, technorati and arstechnica fail because of getComputedStyle not
   46144         reporting display:none properly when it is set.  This is bugzilla bug 13103.
   46145 
   46146         Reviewed by mitz
   46147 
   46148         * css/CSSComputedStyleDeclaration.cpp:
   46149         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   46150 
   46151 2007-03-28  Oliver Hunt  <oliver (a] apple.com>
   46152 
   46153         Reviewed by Hyatt.
   46154 
   46155         Rename DocLoader::setPasteInProgress, etc to more generic 
   46156         setAllowStaleResources, etc
   46157 
   46158         * editing/Editor.cpp:
   46159         (WebCore::Editor::paste):
   46160         * loader/DocLoader.cpp:
   46161         (WebCore::DocLoader::DocLoader):
   46162         (WebCore::DocLoader::checkForReload):
   46163         * loader/DocLoader.h:
   46164         (WebCore::DocLoader::setAllowStaleResources):
   46165         * page/DragController.cpp:
   46166         (WebCore::DragController::concludeDrag):
   46167 
   46168 2007-03-28  Oliver Hunt  <oliver (a] apple.com>
   46169 
   46170         Reviewed by Anders and Steve.
   46171 
   46172         Add a flag to DocLoader to prevent it from reloading 
   46173         when performing a paste or drop operation.
   46174         
   46175         Remove m_cachePolicy from CachedResource as it is never used
   46176         
   46177         Fixes rdar://problem/5044366 : REGRESSION: Repro ASSERT failures 
   46178         dragging image into GMail message in _web_writeImage and 
   46179         documentFragmentFromDragData
   46180 
   46181         * editing/Editor.cpp:
   46182         (WebCore::Editor::paste):
   46183           prevent the docloader from reloading resources on paste
   46184         * html/HTMLImageLoader.cpp:
   46185         (WebCore::HTMLImageLoader::updateFromElement):
   46186         * loader/Cache.cpp:
   46187         (WebCore::createResource):
   46188         * loader/CachedCSSStyleSheet.cpp:
   46189         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
   46190         * loader/CachedCSSStyleSheet.h:
   46191         * loader/CachedImage.cpp:
   46192         (WebCore::CachedImage::CachedImage):
   46193         * loader/CachedImage.h:
   46194         * loader/CachedResource.cpp:
   46195         (WebCore::CachedResource::CachedResource):
   46196         * loader/CachedResource.h:
   46197         * loader/CachedScript.cpp:
   46198         (WebCore::CachedScript::CachedScript):
   46199         * loader/CachedScript.h:
   46200         * loader/CachedXBLDocument.cpp:
   46201         (WebCore::CachedXBLDocument::CachedXBLDocument):
   46202         * loader/CachedXBLDocument.h:
   46203         * loader/CachedXSLStyleSheet.cpp:
   46204         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
   46205         * loader/CachedXSLStyleSheet.h:
   46206         * loader/DocLoader.cpp:
   46207         (WebCore::DocLoader::DocLoader):
   46208            Tidy up constructor initialise new field
   46209         (WebCore::DocLoader::checkForReload):
   46210            Prevent reload when pasting
   46211         * loader/DocLoader.h:
   46212         (WebCore::DocLoader::setPasteInProgress):
   46213           new field and setter
   46214         * page/DragController.cpp:
   46215         (WebCore::DragController::concludeDrag):
   46216           prevent the docloader from reloading resources on drop
   46217 
   46218 2007-03-27  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   46219 
   46220         Not reviewed - fix typo in gdk build.
   46221 
   46222         * platform/gdk/ScrollViewGdk.cpp:
   46223         (WebCore::ScrollView::contentsToWindow):
   46224 
   46225 2007-03-28  Maciej Stachowiak  <mjs (a] apple.com>
   46226         
   46227         Reviewed by Darin.
   46228         
   46229         - fixed <rdar://problem/4820817> Autoscroll is broken in Mail.app (message jumps around when trying to select text)
   46230                 
   46231         Handle scrolling external scrollviews around the webview during
   46232         autoscroll or when scrolling into view.
   46233         
   46234         This should also restore performance on BenchJS test 6 lost due to Tim's partial fix.
   46235 
   46236         * page/FrameView.cpp:
   46237         (WebCore::FrameView::scrollRectIntoViewRecursively):
   46238         * page/FrameView.h:
   46239         * platform/ScrollView.h:
   46240         * platform/gdk/ScrollViewGdk.cpp:
   46241         (WebCore::ScrollView::visibleContentRectConsideringExternalScrollers):
   46242         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   46243         * platform/mac/ScrollViewMac.mm:
   46244         (WebCore::ScrollView::visibleContentRect):
   46245         (WebCore::ScrollView::visibleContentRectConsideringExternalScrollers):
   46246         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   46247         (WebCore::ScrollView::updateContents):
   46248         * platform/qt/ScrollViewQt.cpp:
   46249         (WebCore::ScrollView::visibleContentRectConsideringExternalScrollers):
   46250         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   46251         * platform/win/ScrollViewWin.cpp:
   46252         (WebCore::ScrollView::visibleContentRectConsideringExternalScrollers):
   46253         * platform/win/TemporaryLinkStubs.cpp:
   46254         (WebCore::ScrollView::scrollRectIntoViewRecursively):
   46255         * rendering/RenderLayer.cpp:
   46256         (WebCore::RenderLayer::scrollRectToVisible):
   46257        
   46258 2007-03-28  Jungshik Shin  <jungshik.shin (a] gmail.com>
   46259 
   46260         Reviewed  and landed by Darin
   46261 
   46262         Get rid of some misuses of |islower| and |tolower| for non-ASCII characters.
   46263         http://bugs.webkit.org/show_bug.cgi?id=13138
   46264 
   46265         * platform/StringImpl.cpp:
   46266         (WebCore::StringImpl::isLower):
   46267         (WebCore::StringImpl::lower):
   46268         (WebCore::StringImpl::equalIgnoringCase):
   46269 
   46270 2007-03-28  Antti Koivisto  <antti (a] apple.com>
   46271 
   46272         Reviewed by Hyatt.
   46273 
   46274         Fix <rdar://problem/5092653>
   46275         REGRESSION: Image decoding making scrolling slow
   46276         
   46277         If decoder gave back a null frame (which I think happens regularly if you don't have full frame 
   46278         data yet for image that does not decode incrementally) m_decodedSize was incremented anyway. This
   46279         led to massive growth in calculated image size and eventually made cache prune constantly. 
   46280         
   46281         No test, I don't know how to make one for this.
   46282 
   46283         * platform/graphics/BitmapImage.cpp:
   46284         (WebCore::BitmapImage::cacheFrame):
   46285 
   46286 2007-03-28  Adele Peterson  <adele (a] apple.com>
   46287 
   46288         Reviewed by Kevin M.
   46289 
   46290         WebCore part of fix for <rdar://problem/5095515> VitalSource Bookshelf should not pass return statements into stringByEvaluatingJavaScriptFromString
   46291 
   46292         * page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
   46293         Convert return value to a string.  This matches the behavior in Safari 2.0.
   46294 
   46295 2007-03-28  Alexey Proskuryakov  <ap (a] webkit.org>
   46296 
   46297         Reviewed by Darin.
   46298 
   46299         http://bugs.webkit.org/show_bug.cgi?id=13190
   46300         XPath incorrectly handles namespaces on attributes
   46301 
   46302         * xml/XPathStep.cpp:
   46303         (WebCore::XPath::Step::nodesInAxis): Added a special case for faster attribute lookup; gives a slight but 
   46304         measurable performance improvement for bug 13021.
   46305         (WebCore::XPath::Step::nodeMatches): Fixed NameTest for attribute nodes.
   46306 
   46307         * xml/XPathStep.h:
   46308         (WebCore::XPath::Step::NodeTest::NodeTest):
   46309         (WebCore::XPath::Step::NodeTest::namespaceURI):
   46310         (WebCore::XPath::Step::nodeTest):
   46311         (WebCore::XPath::Step::setNodeTest):
   46312         Move m_namespaceURI to NodeTest, where it belongs. Removed unused m_nodeTestData (oops!).
   46313 
   46314         * xml/XPathGrammar.y:
   46315         * xml/XPathPath.cpp:
   46316         (WebCore::XPath::LocationPath::optimizeStepPair):
   46317         Accounted for the above change.
   46318 
   46319 2007-03-28  Oliver Hunt  <oliver (a] apple.com>
   46320 
   46321         rs=Hyatt.
   46322 
   46323         Rollout local changes :-/
   46324 
   46325         * loader/Cache.cpp:
   46326         (WebCore::Cache::pruneAllResources):
   46327         (WebCore::Cache::remove):
   46328 
   46329 2007-03-28  Oliver Hunt  <oliver (a] apple.com>
   46330 
   46331         Reviewed by Hyatt.
   46332 
   46333         Roll out r20511 due to incredible badness
   46334 
   46335         * loader/Cache.cpp:
   46336         (WebCore::Cache::pruneAllResources):
   46337         (WebCore::Cache::remove):
   46338 
   46339 2007-03-27  Oliver Hunt  <oliver (a] apple.com>
   46340 
   46341         Reviewed by Adam.
   46342 
   46343         Don't enforce text-selection drag delay when we are
   46344         going to drag an image anyway.
   46345 
   46346         Fixes rdar://problem/4668935
   46347 
   46348         * page/EventHandler.cpp:
   46349         (WebCore::EventHandler::handleDrag):
   46350 
   46351 2007-03-27  Justin Garcia  <justin.garcia (a] apple.com>
   46352 
   46353         Build fix
   46354         
   46355         * editing/markup.cpp:
   46356         (WebCore::startMarkup):
   46357 
   46358 2007-03-27  Justin Garcia  <justin.garcia (a] apple.com>
   46359 
   46360         Reviewed by darin
   46361         
   46362         <rdar://problem/5091898> REGRESSION: GMail Editor: A line of underlined text copied with Select All pastes with wrong font family
   46363         
   46364         createMarkup skipped elements if they were blocks
   46365         when called from moveParagraphs (because that function 
   46366         must receive only inline content).  This patch adds 
   46367         code to inline these blocks instead of skipping them 
   46368         so that we don't lose any of the style that they 
   46369         contribute to the copied markup.
   46370 
   46371         * editing/markup.cpp:
   46372         (WebCore::startMarkup): Add an inlineBlocks option.
   46373         Make sure to overwrite display:block coming from
   46374         a style sheet or the inline style declaration.
   46375         (WebCore::createMarkup): Don't refuse to include a 
   46376         specialCommonAncestor that's a block if we were asked 
   46377         to include only inline content, since we can now inline 
   46378         block elements in startMarkup.
   46379 
   46380 2007-03-27  Adele Peterson  <adele (a] apple.com>
   46381 
   46382         Reviewed by Hyatt.
   46383 
   46384         Fix for <rdar://problem/5026141> REGRESSION: Aperture Viewer Flashes when switching from Index Page to Detail page in Web Gallery
   46385 
   46386         This disables the paint that occurs after WebCore finishes loading the document.  We should reenable this when we
   46387         move the dispatchDidFinishLoad delegate callback to happen around the same time as the JS onload call.  See <rdar://problem/5092361>.
   46388 
   46389         * dom/Document.cpp: (WebCore::Document::implicitClose):
   46390 
   46391 2007-03-26  Justin Garcia  <justin.garcia (a] apple.com>
   46392 
   46393         Reviewed by darin
   46394         
   46395         <rdar://problem/5065910> REGRESSION: In Mail and GMail, Can't apply color to pasted line of text
   46396         <rdar://problem/5084241> After deleting a paragraph of colored text, can't change text color
   46397         <rdar://problem/5065605> REGRESSION: Text copied with Select All + Copy loses color on Paste
   46398         <rdar://problem/4916887> GMAIL: Can't apply color to text once it becomes indented
   46399 
   46400         * css/CSSComputedStyleDeclaration.cpp:
   46401         (WebCore::CSSComputedStyleDeclaration::copyInheritableProperties):
   46402         If a node's text fill color is invalid, then its children use 
   46403         their font-color as their text fill color (they don't inherit 
   46404         it).  Likewise for stroke color.
   46405 
   46406 2007-03-27  Anders Carlsson  <acarlsson (a] apple.com>
   46407 
   46408         * platform/ScrollBar.h:
   46409         Use wtf/MathExtras.h instead of math.h
   46410 
   46411 2007-03-27  Zack Rusin  <zrusin (a] trolltech.com>
   46412 
   46413         Fix the compile - when using math.h functions
   46414         actually include the header with them.
   46415 
   46416         * platform/ScrollBar.h:
   46417 
   46418 2007-03-27  Oliver Hunt  <oliver (a] apple.com>
   46419 
   46420         Reviewed by Maciej.
   46421 
   46422         The WebArchiver needs all the subresources of a document to be accessible
   46423         through the DocLoader, so we can't remove a CachedResource simultaneously
   46424         from the global Cache and all DocLoaders, just because it needs to be 
   46425         reloaded in one.
   46426 
   46427         Fixes rdar://problem/5044366
   46428 
   46429         * loader/Cache.cpp:
   46430         (WebCore::Cache::remove):
   46431            Don't evict the resource from all DocLoaders
   46432         * manual-tests/test-iframes-loading-the-same-resource.html: Added.
   46433            Alas it wasn't possible to make a nice layout test, even this manual test
   46434            is not entirely deterministic
   46435 
   46436 2007-03-27  Mark Rowe  <mrowe (a] apple.com>
   46437 
   46438         Build fix.
   46439 
   46440         * platform/GlyphBuffer.h:
   46441         (WebCore::GlyphBuffer::clear):
   46442 
   46443 2007-03-27  Dave Hyatt  <hyatt (a] apple.com>
   46444 
   46445         Add support for glyph offsets to the GlyphBuffer.
   46446        
   46447         Reviewed by olliej
   46448 
   46449         * platform/Font.cpp:
   46450         (WebCore::Font::drawGlyphBuffer):
   46451         * platform/GlyphBuffer.h:
   46452         (WebCore::GlyphBuffer::clear):
   46453         (WebCore::GlyphBuffer::swap):
   46454         (WebCore::GlyphBuffer::offsetAt):
   46455         (WebCore::GlyphBuffer::add):
   46456 
   46457 2007-03-27  Antti Koivisto  <antti (a] apple.com>
   46458 
   46459         Keep buildbot happy.
   46460 
   46461         * platform/mac/PlatformScrollBarMac.mm:
   46462         (WebCore::PlatformScrollbar::scrollbarHit):
   46463 
   46464 2007-03-26  Antti Koivisto  <antti (a] apple.com>
   46465 
   46466         Reviewed by Darin.
   46467         
   46468         On Mac, support fine grained wheel events generated by trackpad and Mighty Mouse.
   46469         http://bugs.webkit.org/show_bug.cgi?id=13134
   46470         <rdar://problem/5076249?
   46471 
   46472         * WebCore.exp:
   46473             Export _wkGetWheelEventDeltas
   46474         * page/EventHandler.cpp:
   46475         (WebCore::EventHandler::handleWheelEvent):
   46476             Remove (0, 0) scroll event hack, it is not needed anymore.
   46477             Do per-pixel scrolling for fine grained events.
   46478         * platform/PlatformWheelEvent.h:
   46479         (WebCore::PlatformWheelEvent::isContinuous):
   46480             Add new m_isContinuous boolean to indicate fine grained wheel events.
   46481         * platform/ScrollBar.cpp:
   46482         (WebCore::Scrollbar::Scrollbar):
   46483         (WebCore::Scrollbar::setValue):
   46484         (WebCore::Scrollbar::setSteps):
   46485         (WebCore::Scrollbar::scroll):
   46486         * platform/ScrollBar.h:
   46487         (WebCore::Scrollbar::value):
   46488             Use float to represent current position to support finer grained scrolling.
   46489             Add ScrollByPixel, remove ScrollByWheel (which was same as ScrollByLine anyway)
   46490         * platform/ScrollTypes.h:
   46491         (WebCore::):
   46492         * platform/gdk/WheelEventGdk.cpp:
   46493         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   46494             Initalize m_isContinuous
   46495         * platform/mac/WebCoreSystemInterface.h:
   46496         * platform/mac/WebCoreSystemInterface.mm:
   46497             Add wkGetWheelEventDeltas for getting fine grained wheel events
   46498         * platform/mac/WheelEventMac.mm:
   46499         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   46500             Get the wheel deltas using new wkGetWheelEventDeltas interface
   46501         * platform/qt/WheelEventQt.cpp:
   46502         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   46503             Initalize m_isContinuous
   46504         * rendering/RenderListBox.cpp:
   46505         (WebCore::RenderListBox::calcHeight):
   46506             Pass item height to scrollbar
   46507 
   46508 2007-03-26  Geoffrey Garen  <ggaren (a] apple.com>
   46509 
   46510         Reviewed by Darin Adler.
   46511 
   46512         Fixed <rdar://problem/5088234> REGRESSION: Crash occurs at WebCore::Node::
   46513         createRendererIfNeeded() when changing map views with MS Virtual Earth 
   46514         (http://www.ziprealty.com/)
   46515         
   46516         The cause of the crash was the insertion of a <script> element whose
   46517         script removed it from the document. The <script> element would then be 
   46518         garbage when the insertion routine went on to attach() it.
   46519         
   46520         The solution here is to check that an element is still your child before
   46521         trying to attach() it. This matches the style of checks we do elsewhere
   46522         in the node insertion and removal code.
   46523 
   46524         * dom/ContainerNode.cpp:
   46525         (WebCore::ContainerNode::insertBefore):
   46526         (WebCore::ContainerNode::replaceChild):
   46527         (WebCore::ContainerNode::appendChild):
   46528 
   46529 2007-03-26  David Carson  <dacarson (a] gmail.com>
   46530 
   46531         Reviewed by Darin, landed by Anders.
   46532 
   46533         Manual test case for: REGRESSION (r19559): Java applet crash
   46534         http://bugs.webkit.org/show_bug.cgi?id=13142
   46535         <rdar://problem/5080340>
   46536 
   46537         * manual-tests/liveconnect-applet-get-boolean.html: Added.
   46538         * manual-tests/resources/CheckerApplet.class: Added.
   46539         * manual-tests/resources/CheckerApplet.java: Added.
   46540 
   46541 2007-03-26  Mitz Pettel  <mitz (a] webkit.org>
   46542 
   46543         Reviewed and landed by Darin.
   46544 
   46545         - fix http://bugs.webkit.org/show_bug.cgi?id=13194
   46546           <rdar://problem/5087738>
   46547           REGRESSION: Selection rects are wrong for images in search results from images.google.com
   46548 
   46549         Test: fast/replaced/selection-rect-in-table-cell.html
   46550 
   46551         * rendering/RenderReplaced.cpp:
   46552         (WebCore::RenderReplaced::selectionRect):
   46553 
   46554 2007-03-26  Geoffrey Garen  <ggaren (a] apple.com>
   46555 
   46556         Removed now-stale #includes of <assert.h>.
   46557         
   46558         * WebCorePrefix.h:
   46559         * config.h:
   46560         * css/CSSGrammar.y:
   46561         * platform/Arena.cpp:
   46562         * platform/KURL.cpp:
   46563         * platform/SegmentedString.h:
   46564         * rendering/DataRef.h:
   46565         * rendering/RenderArena.cpp:
   46566 
   46567 2007-03-26  Geoffrey Garen  <ggaren (a] apple.com>
   46568 
   46569         Reviewed by Kevin McCulough.
   46570 
   46571         Global replace of "assert(" with "ASSERT(" to assist debugging. Removed
   46572         one instance of commented-out code containing "assert(" instead of replacing it.
   46573 
   46574 2007-03-25  Antti Koivisto  <antti (a] apple.com>
   46575 
   46576         Reviewed by Adam.
   46577 
   46578         Fix <rdar://problem/5049842>
   46579         Gmail Editor: Dragging message text in the message body results in a crash at WebCore::Frame::eventHandler()
   46580 
   46581         Null check frame in m_dragTarget, it might be gone already.
   46582 
   46583         * page/EventHandler.cpp:
   46584         (WebCore::EventHandler::updateDragAndDrop):
   46585         (WebCore::EventHandler::cancelDragAndDrop):
   46586         (WebCore::EventHandler::performDragAndDrop):
   46587 
   46588 2007-03-25  Alexey Proskuryakov  <ap (a] webkit.org>
   46589 
   46590         Reviewed by Darin.
   46591 
   46592         A partial fix for http://bugs.webkit.org/show_bug.cgi?id=13021
   46593         XPath can be very slow
   46594 
   46595         * xml/XPathExpression.cpp:
   46596         (WebCore::XPathExpression::evaluate): Reset a reference to the context node, as this may prevent the whole document
   46597         from being destroyed in time.
   46598 
   46599         * dom/Attr.cpp:
   46600         (WebCore::Attr::createTextChild): Instead of calling appendChild(), just do the few operations it really needs to perform.
   46601         * dom/ContainerNode.h:
   46602         (WebCore::ContainerNode::fastSetFirstChild):
   46603         (WebCore::ContainerNode::fastSetLastChild):
   46604         Added operations that let Attr hack internal ContainerNode data (evil, but fast!).
   46605 
   46606         * xml/XPathStep.cpp:
   46607         (WebCore::XPath::Step::evaluate):
   46608         (WebCore::XPath::Step::nodesInAxis):
   46609         (WebCore::XPath::Step::nodeMatches):
   46610         * xml/XPathStep.h:
   46611         Merged node testing into axis enumeration. This saves a lot of Vector resizing and passing, and is necessary for future 
   46612         optimizations (sometimes, we can just pick the single result node instead of enumerating and filtering the whole axis).
   46613 
   46614 2007-03-24  Mitz Pettel  <mitz (a] webkit.org>
   46615 
   46616         Reviewed by Darin.
   46617 
   46618         - fix http://bugs.webkit.org/show_bug.cgi?id=13156
   46619           REGRESSION (r19621): Pasting breakable content where wrapped line is too long to fit in a textarea fails to draw a horizontal scrollbar
   46620 
   46621         Test: fast/text/midword-break-after-breakable-char.html
   46622 
   46623         Breaking in the middle of the word
   46624         is allowed only if no breaking opportunity between words has occurred yet. The
   46625         first position on the line should not be considered "between words" even if
   46626         it is a breaking opportunity.
   46627         
   46628         * rendering/bidi.cpp:
   46629         (WebCore::RenderBlock::findNextLineBreak): Changed according to the above. Also
   46630         cleaned up a couple of lines.
   46631 
   46632 2007-03-24  David Hyatt  <hyatt (a] apple.com>
   46633 
   46634         Fix for bugzilla bug 13187, place a hard limit on the amount of decoded data that WebCore will keep
   46635         around even on live pages (pages being displayed in tabs/windows or in the back/forward cache).
   46636         Images will decode to paint and once the decoded data exceeds the cache size, the decoded data will be
   46637         tossed.
   46638 
   46639         Refine the flushing algorithm to apply the two-pass decode/evict model to each LRU-SP queue individually, rather
   46640         than to all the lists at once.  This allows the cache to evict large encoded resources before flushing small
   46641         or frequently accessed decoded onces.
   46642 
   46643         Added information on live/decoded data to the cache statistics.
   46644 
   46645         Reviewed by darin
   46646 
   46647         * loader/Cache.cpp:
   46648         (WebCore::Cache::Cache):
   46649         (WebCore::Cache::pruneLiveResources):
   46650         (WebCore::Cache::pruneAllResources):
   46651         (WebCore::Cache::setMaximumSize):
   46652         (WebCore::Cache::remove):
   46653         (WebCore::Cache::lruListFor):
   46654         (WebCore::Cache::removeFromLRUList):
   46655         (WebCore::Cache::insertInLRUList):
   46656         (WebCore::Cache::liveLRUListFor):
   46657         (WebCore::Cache::removeFromLiveResourcesList):
   46658         (WebCore::Cache::insertInLiveResourcesList):
   46659         (WebCore::Cache::addToLiveResourcesSize):
   46660         (WebCore::Cache::removeFromLiveResourcesSize):
   46661         (WebCore::Cache::adjustSize):
   46662         (WebCore::Cache::getStatistics):
   46663         * loader/Cache.h:
   46664         (WebCore::Cache::TypeStatistic::TypeStatistic):
   46665         * loader/CachedImage.cpp:
   46666         (WebCore::CachedImage::decodedSizeWillChange):
   46667         (WebCore::CachedImage::decodedSizeChanged):
   46668         * loader/CachedImage.h:
   46669         * loader/CachedResource.cpp:
   46670         (WebCore::CachedResource::CachedResource):
   46671         (WebCore::CachedResource::ref):
   46672         (WebCore::CachedResource::deref):
   46673         (WebCore::CachedResource::setEncodedSize):
   46674         (WebCore::CachedResource::liveResourceAccessed):
   46675         * loader/CachedResource.h:
   46676         (WebCore::CachedResource::liveAccessCount):
   46677         (WebCore::CachedResource::resetLiveAccessCount):
   46678         (WebCore::CachedResource::increaseLiveAccessCount):
   46679         * platform/graphics/BitmapImage.cpp:
   46680         (WebCore::BitmapImage::destroyDecodedData):
   46681         (WebCore::BitmapImage::cacheFrame):
   46682         * platform/graphics/ImageObserver.h:
   46683         * rendering/RenderBox.cpp:
   46684         (WebCore::RenderBox::paintBackgroundExtended):
   46685         * rendering/RenderImage.cpp:
   46686         (WebCore::RenderImage::paint):
   46687         * rendering/RenderListMarker.cpp:
   46688         (WebCore::RenderListMarker::paint):
   46689         * rendering/RenderObject.cpp:
   46690         (WebCore::RenderObject::paintBorderImage):
   46691 
   46692 2007-03-24  Darin Adler  <darin (a] apple.com>
   46693 
   46694         Reviewed by Mitz.
   46695 
   46696         - fix http://bugs.webkit.org/show_bug.cgi?id=13123
   46697           CSS selectors that use :lang, :not, and namespaces do not serialize correctly
   46698 
   46699         Test: fast/css/css-selector-text.html
   46700 
   46701         * css/CSSSelector.cpp: (WebCore::CSSSelector::selectorText): Add the namespace
   46702         prefix for tag or attribute names, the sub-selector for :not, and the argument
   46703         for :lang.
   46704 
   46705 2007-03-24  Brady Eidson  <beidson (a] apple.com>
   46706 
   46707         Reviewed by Adam
   46708 
   46709         <rdar://problem/5086210> - Move RetainPtr to WTF
   46710 
   46711         * ForwardingHeaders/wtf/RetainPtr.h: Added.
   46712         * WebCore.xcodeproj/project.pbxproj: Removed WebCore/RetainPtr.h
   46713         
   46714         * history/HistoryItem.h: Changed #include to <wtf/RetainPtr.h>
   46715         * history/PageCache.h: Ditto
   46716         * page/mac/WebCoreFrameBridge.mm: Ditto
   46717         * platform/ContextMenu.h: Ditto
   46718         * platform/ContextMenuItem.h: Ditto
   46719         * platform/DragImage.h: Ditto
   46720         * platform/FileChooser.h: Ditto
   46721         * platform/PlatformKeyboardEvent.h: Ditto
   46722         * platform/PopupMenu.h: Ditto
   46723         * platform/SharedBuffer.h: Ditto
   46724         * platform/cf/RetainPtr.h: Removed.
   46725         * platform/graphics/Icon.h: Changed #include
   46726         * platform/mac/ClipboardMac.h: Ditto
   46727         * platform/mac/PasteboardMac.mm: Ditto
   46728         * platform/mac/WidgetMac.mm: Ditto
   46729         * platform/network/AuthenticationChallenge.h: Ditto
   46730         * platform/network/ResourceError.h: Ditto
   46731         * platform/network/ResourceHandle.h: Ditto
   46732         * platform/network/ResourceRequest.h: Ditto
   46733         * platform/network/ResourceResponse.h: Ditto
   46734         * rendering/RenderThemeMac.mm: Ditto
   46735 
   46736 2007-03-24  Mitz Pettel  <mitz (a] webkit.org>
   46737 
   46738         Fix for <rdar://problem/5086797>, layoutPending is now reporting incorrect results, which will lead
   46739         to all sorts of layout issues.  This is in bugzilla as 13179.
   46740 
   46741         Reviewed by hyatt
   46742 
   46743         - fix http://bugs.webkit.org/show_bug.cgi?id=13179
   46744           REGRESSION (r20410): In debug builds, loading a certain page is suspended until redisplay is forced
   46745 
   46746         Moved the root->needsLayout() check from layoutPending() to needsLayout()
   46747         to restore the behavior before r20324.
   46748 
   46749         * page/FrameView.cpp:
   46750         (WebCore::FrameView::layoutPending):
   46751         (WebCore::FrameView::needsLayout):
   46752 
   46753 2007-03-24  Mitz Pettel  <mitz (a] webkit.org>
   46754 
   46755         Reviewed by Adele.
   46756 
   46757         - fix http://bugs.webkit.org/show_bug.cgi?id=13180
   46758               <rdar://problem/5084478>
   46759           Another debug build crash from ASSERTION FAILED: !needsLayout()
   46760 
   46761         No test possible because updateRendering() is always called after script
   46762         execution.
   46763 
   46764         * page/FrameView.cpp:
   46765         (WebCore::FrameView::layout): Get the layout root after calling recalcStyle()
   46766         since a style recalc may result in needing to do start layout at the root.
   46767 
   46768 2007-03-24  Nikolas Zimmermann  <zimmermann (a] kde.org>
   46769 
   46770         Not reviewed. Build fix.
   46771 
   46772         Fix FloatRect vs. IntRect confusion.
   46773 
   46774         * rendering/RenderSVGImage.cpp:
   46775         (WebCore::RenderSVGImage::nodeAtPoint):
   46776 
   46777 2007-03-25  Mark Rowe  <mrowe (a] apple.com>
   46778 
   46779         Fix incorrect radar number.
   46780 
   46781         * platform/network/mac/ResourceHandleMac.mm:
   46782         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   46783 
   46784 2007-03-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   46785 
   46786         Reviewed by Oliver.
   46787 
   46788         Fix all known RenderSVGImage problems.
   46789 
   46790         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12126 (RenderSVGImage seems to suffer from integer overflow)
   46791         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12442 (raster images disappearing during script execution (SVG))
   46792         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12572 (WebKit does not properly invalidate image region after image load)
   46793 
   46794         Added test: svg/custom/scrolling-embedded-svg-file-image-repaint-problem.html
   46795 
   46796         In RenderSVGImage::paint, do not call shouldPaint() as this will never work properly for SVG renderers, as shouldPaint
   46797         doesn't take into account any special SVG transformation (localTransform/absoluteTransform). Just remove the call.
   46798 
   46799         Fix hit detection on RenderSVGImage - it didn't work properly at all. No idea why I didn't notice before.
   46800         Thanks Andreas Neumann once again for writing excellent bug reports and pointing me to them :-)
   46801 
   46802         The carto.net navigation tools work as expected now, and also the "dock like" image effect example.
   46803 
   46804         * rendering/RenderSVGImage.cpp:
   46805         (WebCore::RenderSVGImage::paint):
   46806         (WebCore::RenderSVGImage::nodeAtPoint):
   46807 
   46808 2007-03-24  Mitz Pettel  <mitz (a] webkit.org>
   46809 
   46810         Reviewed by Dave Hyatt.
   46811 
   46812         - http://bugs.webkit.org/show_bug.cgi?id=13177
   46813           Suppress control characters in the ATSUI code path
   46814 
   46815         * platform/mac/FontMac.mm:
   46816         (WebCore::overrideLayoutOperation):
   46817         (WebCore::ATSULayoutParameters::initialize):
   46818 
   46819 2007-03-24  David Hyatt  <hyatt (a] apple.com>
   46820 
   46821         Fix for <rdar://problem/5086400>, images scrolled offscreen continue to animate.  Safari 2 would
   46822         halt animations when images were no longer visible.
   46823 
   46824         Reviewed by mjs, olliej
   46825 
   46826         * platform/graphics/BitmapImage.cpp:
   46827         (WebCore::BitmapImage::advanceAnimation):
   46828 
   46829 2007-03-24  David Hyatt  <hyatt (a] apple.com>
   46830 
   46831         Fix for <rdar://problem/508328>, sluggish text entry in search field.  Make sure
   46832         our size actually changed before we decide to do a full repaint because of background/border
   46833         complexities.
   46834 
   46835         Reviewed by aroben
   46836 
   46837         * rendering/RenderObject.cpp:
   46838         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   46839 
   46840 2007-03-23  Dave Hyatt  <hyatt (a] apple.com>
   46841 
   46842         Fix for <rdar://problem/5048219>, spurious glyphs in gmail.   This is bugzilla bug 13136, which
   46843         will remain open to cover patching the complex text path.
   46844         
   46845         Reviewed by aroben
   46846 
   46847         * platform/Font.cpp:
   46848         (WebCore::Font::glyphDataForCharacter):
   46849         * platform/Font.h:
   46850         (WebCore::Font::treatAsZeroWidthSpace):
   46851         * platform/GlyphPageTreeNode.cpp:
   46852         (WebCore::GlyphPageTreeNode::initializePage):
   46853 
   46854 2007-03-23  Mitz Pettel  <mitz (a] webkit.org>
   46855 
   46856         Reviewed by Adele.
   46857 
   46858         - fix http://bugs.webkit.org/show_bug.cgi?id=13153
   46859           REGRESSION: Visual highlighting of pre-populated blank line in textarea is broken
   46860 
   46861         - fix a bug where selecting across a soft line break did not highlight to
   46862           the end of the first line if it contained skipped whitespace
   46863 
   46864         Test: fast/text/selection-hard-linebreak.html
   46865 
   46866         * rendering/InlineTextBox.cpp:
   46867         (WebCore::InlineTextBox::selectionState): Changed to treat a selection that ends on the
   46868         end of a hard line break as if it ends after the line break. Fixed the case of a selection
   46869         that starts and ends in the same text object as the box but does not intersect it
   46870         to return SelectionNone instead of selectionBoth.
   46871 
   46872 2007-03-23  Mitz Pettel  <mitz (a] webkit.org>
   46873 
   46874         Reviewed by Adele.
   46875 
   46876         - fix http://bugs.webkit.org/show_bug.cgi?id=13124
   46877           REGRESSION: Reproducible crash in Widget::getView
   46878 
   46879         Test: fast/frames/hover-timer-crash.html
   46880 
   46881         * page/Frame.cpp:
   46882         (WebCore::Frame::setView): Added a call to EventHandler::clear().
   46883 
   46884 2007-03-23  Justin Garcia  <justin.garcia (a] apple.com>
   46885 
   46886         Reviewed by adele
   46887 
   46888         <rdar://problem/5078739> 
   46889         Crash in in ReplaceSelectionCommand if the fragment contains only a style span
   46890 
   46891         * editing/ReplaceSelectionCommand.cpp:
   46892         (WebCore::ReplaceSelectionCommand::doApply): Check 
   46893         for an empty fragment after removing a redundant
   46894         style span instead of before.
   46895 
   46896 2007-03-23  David Hyatt  <hyatt (a] apple.com>
   46897 
   46898         <rdar://problem/5085063>
   46899 
   46900         Fix non-looping animation on cuteoverload.com. Just always flush
   46901         decoded data for large animated images to avoid our cache getting
   46902         out of sync with the image source.
   46903 
   46904         Reviewed by ggaren
   46905 
   46906         * platform/graphics/BitmapImage.cpp:
   46907         (WebCore::BitmapImage::advanceAnimation):
   46908 
   46909 2007-03-23  Adele Peterson  <adele (a] apple.com>
   46910 
   46911         Reviewed by Darin.
   46912 
   46913         Fix for <rdar://problem/5061024> REGRESSION: Returning false from onkeypress event on Input is ignored when key is Tab
   46914         http://bugs.webkit.org/show_bug.cgi?id= 13020
   46915 
   46916         No known way to add a layout test for this.  We would need a way to know exactly how the event was consumed.
   46917 
   46918         * page/EventHandler.cpp: (WebCore::EventHandler::defaultKeyboardEventHandler):
   46919           If the keypress event has its default behavior prevented, then we should consider the keydown event handled.
   46920 
   46921 2007-03-23  Justin Garcia  <justin.garcia (a] apple.com>
   46922 
   46923         Reviewed by darin
   46924 
   46925         <rdar://problem/5080333> 
   46926         REGRESSION: Selection changes when changing the alignment of an image
   46927         
   46928         Regression occurred when we started using moveParagraphs
   46929         to move content in applyBlockStyle.  moveParagraphs 
   46930         moves by copying, deleting and reinserting content, and
   46931         so must be accompanied by selection preservation code.
   46932         That code uses rangeFromLocationAndLength and rangeLength,
   46933         which use TextIterators, which don't emit anything for images 
   46934         and other replaced elements, causing this bug.
   46935 
   46936         * editing/ApplyStyleCommand.cpp:
   46937         (WebCore::ApplyStyleCommand::applyBlockStyle): Ask rangeLength 
   46938         and rangeFromLocationAndLength to request that their
   46939         TextIterators emit spaces for replaced elements.
   46940         Use rangeCompliantEquivalent()s when creating a Range from
   46941         VisiblePositions, since some VisiblePositions have illegal
   46942         deepEquivalent()s.
   46943         * editing/CompositeEditCommand.cpp:
   46944         (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
   46945         * editing/TextIterator.cpp:
   46946         (WebCore::TextIterator::TextIterator):
   46947         (WebCore::TextIterator::handleReplacedElement): Emit
   46948         a space if requested.
   46949         (WebCore::TextIterator::representNodeOffsetZero): Emit
   46950         ranges before m_node, not around m_lastTextNode.  These
   46951         ranges should represent the part of the document associated
   46952         with the emitted character. 
   46953         (WebCore::TextIterator::rangeLength): Take in the new bool.
   46954         (WebCore::TextIterator::rangeFromLocationAndLength): Ditto.
   46955         Also, don't loop an extra time after finding the end of the
   46956         range when we're looking for zero length ranges.  This appeared
   46957         to be a workaround for the bugs fixed in representNodeOffsetZero
   46958         in this patch.
   46959         * editing/TextIterator.h:
   46960 
   46961 2007-03-24  Mark Rowe  <mrowe (a] apple.com>
   46962 
   46963         Rubber-stamped by Darin.
   46964 
   46965         * Configurations/WebCore.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
   46966 
   46967 2007-03-23  Darin Adler  <darin (a] apple.com>
   46968 
   46969         * html/HTMLBodyElement.cpp: Fix comment typo.
   46970 
   46971 2007-03-23  Adam Treat  <adam (a] staikos.net>
   46972 
   46973         Reviewed and committed by George.
   46974 
   46975         Patch from Adam Treat to make the Qt build work without SVG and XSLT.
   46976         XMLNames is required in any case.
   46977 
   46978         * WebCore.pro:
   46979 
   46980 2007-03-23  Darin Adler  <darin (a] apple.com>
   46981 
   46982         Reviewed by Hyatt.
   46983 
   46984         - <rdar://problem/5074439> handle margins on frame and iframe elements
   46985           without involving FrameView, FrameLoader, etc.
   46986 
   46987         * html/HTMLBodyElement.cpp: (WebCore::HTMLBodyElement::insertedIntoDocument):
   46988         Grab the margin from the frame directly here. There was no real benefit
   46989         to doing this via FrameView. Later we can delete quite a bit of unneeded code
   46990         here and in WebKit that exists only to set up the margin values in FrameView,
   46991         which are now unused.
   46992 
   46993 2007-03-23  Adele Peterson  <adele (a] apple.com>
   46994 
   46995         Reviewed by Darin.
   46996 
   46997         Fix for <rdar://problem/5080428> REGRESSION: getting value for hidden input element fails after the fix for Bug 11866
   46998         http://bugs.webkit.org/show_bug.cgi?id=13121
   46999 
   47000         Rolled out the change for 11866 that made hidden input elements store the value separately from the value attribute.
   47001         Added an m_originalValue field that gets set when the element is done being parsed (in closeRenderer).  In reset,
   47002         use the m_originalValue for hidden input elements.
   47003 
   47004         * html/HTMLInputElement.cpp:
   47005         (WebCore::HTMLInputElement::closeRenderer):
   47006         (WebCore::HTMLInputElement::reset):
   47007         (WebCore::HTMLInputElement::setValue):
   47008         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
   47009         * html/HTMLInputElement.h:
   47010 
   47011 2007-03-23  Mitz Pettel  <mitz (a] webkit.org>
   47012 
   47013         Reviewed by Dave Hyatt.
   47014 
   47015         - fix http://bugs.webkit.org/show_bug.cgi?id=13157
   47016               <rdar://problem/5083995>
   47017           List markers positioned incorrectly and don't repaint properly on Oxford homepage
   47018 
   47019         Test: fast/lists/marker-image-error.html
   47020 
   47021         * rendering/RenderListMarker.cpp:
   47022         (WebCore::RenderListMarker::imageChanged): Mark ourselves for relayout if
   47023         the image failed to load, since that means we will use a bullet instead.
   47024 
   47025 2007-03-23  Zack Rusin  <zrusin (a] trolltech.com>
   47026 
   47027         Fix the compile.
   47028 
   47029         * platform/graphics/qt/ImageSourceQt.cpp:
   47030 
   47031 2007-03-22  Dave Hyatt  <hyatt (a] apple.com>
   47032 
   47033         Fix for <rdar://problem/5083072>.
   47034 
   47035         * page/Frame.cpp:
   47036         (WebCore::Frame::setPrinting):
   47037         (WebCore::Frame::forceLayoutWithPageWidthRange):
   47038         * page/Frame.h:
   47039         * page/mac/WebCoreFrameBridge.mm:
   47040         (-[WebCoreFrameBridge forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
   47041 
   47042 2007-03-22  Anders Carlsson  <acarlsson (a] apple.com>
   47043 
   47044         Reviewed by Ada.
   47045 
   47046         <rdar://problem/5074974>
   47047         CrashTracer: [USER] repro crash in Safari at com.apple.WebCore: WebCore::FrameLoader::activeDocumentLoader const + 6
   47048         
   47049         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
   47050         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
   47051         Don't use ResourceResponse:isHTTP here since that only looks at the protocol instead of if the response came from a 
   47052         HTTP server (and not a web archive).
   47053 
   47054 2007-03-22  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   47055 
   47056         Not reviewed - gdk build fix.
   47057 
   47058         * platform/graphics/cairo/ImageSourceCairo.cpp:
   47059 
   47060 2007-03-22  Dave Hyatt  <hyatt (a] apple.com>
   47061 
   47062         Fix for <rdar://problem/5083473>.  Make sure wheeling still forwards to the frame view even
   47063         when no node is hit.  Technically not ever hitting a node is a regression from the RenderView
   47064         size changes (making it be the size of the initial containing block according to CSS2.1), but
   47065         we should still handle this case gracefully in case it comes up again.
   47066        
   47067         Reviewed by olliej
   47068 
   47069         * page/EventHandler.cpp:
   47070         (WebCore::EventHandler::handleWheelEvent):
   47071 
   47072 2007-03-22  Justin Garcia  <justin.garcia (a] apple.com>
   47073 
   47074         Reviewed by kevin
   47075 
   47076         <rdar://problem/5081257> 
   47077         REGRESSION: New Mail signatures start out empty
   47078 
   47079         * editing/VisiblePosition.cpp:
   47080         (WebCore::VisiblePosition::canonicalPosition): Allow
   47081         descent from positions inside the document into an 
   47082         editable body.
   47083 
   47084 2007-03-22  Brady Eidson  <beidson (a] apple.com>
   47085 
   47086         Reviewed by Adele and John
   47087 
   47088         <rdar://5043528> - Prepare for new API
   47089         
   47090         * platform/network/ResourceHandle.cpp:
   47091         (WebCore::ResourceHandle::clearAuthentication): Clear CF type
   47092 
   47093 2007-03-22  Beth Dakin  <bdakin (a] apple.com>
   47094 
   47095         Patch by Hyatt, reviewed and committed by me.
   47096 
   47097         Does not reproduce consistently, so a layout test does not seem 
   47098         possible.
   47099 
   47100         Fix for <rdar://problem/5082421> Constantly hitting ASSERT(!
   47101         needsLayout()) in RenderView::paint()
   47102 
   47103         * page/FrameView.cpp:
   47104         (WebCore::FrameView::layoutPending): It is not enough to ask if the 
   47105         layout timer is active. There may be times that we don't have a 
   47106         body yet so we cannot schedule layout yet, but the root still needs 
   47107         layout.  
   47108 
   47109 2007-03-22  John Sullivan  <sullivan (a] apple.com>
   47110 
   47111         Reviewed by Darin
   47112         
   47113         Followup for recent fix to 5079700, found by assertion added to Safari.
   47114 
   47115         * page/mac/FrameMac.mm:
   47116         (WebCore::Frame::searchForLabelsBeforeElement):
   47117         Fixed another place in this method where an empty NSString was being returned instead of nil.
   47118         Cleaned up the style a little too.
   47119 
   47120 2007-03-22  David Hyatt  <hyatt (a] apple.com>
   47121 
   47122         Remove unnecessary destroyFrameAtIndex call.  Now that we throw away
   47123         the image source, it is no longer needed.
   47124 
   47125         Reviewed by beth
   47126 
   47127         * platform/graphics/BitmapImage.cpp:
   47128         (WebCore::BitmapImage::destroyDecodedData):
   47129 
   47130 2007-03-22  David Harrison  <harrison (a] apple.com>
   47131 
   47132         Reviewed by Geoff, Darin.
   47133 
   47134         <rdar://problem/5077892> In RapidWeaver 3.5.1, a crash occurs when attempting to load Safari Bookmarks in iMedia Browser
   47135         
   47136         * platform/mac/ThreadCheck.mm:
   47137         (WebCore::_WebCoreThreadViolationCheck):
   47138         Change default on Tiger to NSLog rather than raise an exception.
   47139 
   47140 2007-03-22  Darin Adler  <darin (a] apple.com>
   47141 
   47142         Reviewed by Brady.
   47143 
   47144         - use binary_search instead of hash table; slightly better performance and
   47145           less memory use
   47146 
   47147         * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::portAllowed):
   47148         Use binary_search.
   47149 
   47150 2007-03-22  Darin Adler  <darin (a] apple.com>
   47151 
   47152         Reviewed by Adele.
   47153 
   47154         - fix <rdar://problem/5074630> detachChildren call should move from WebKit to WebCore
   47155 
   47156         * loader/FrameLoader.cpp: (WebCore::FrameLoader::setDocumentLoader):
   47157         Add a call to detachChildren() after the call to prepareForDataSourceReplacement().
   47158         There was no reason for this crucial loading step to be left to the client.
   47159 
   47160 2007-03-22  David Hyatt  <hyatt (a] apple.com>
   47161 
   47162         Minor refactoring and cleanup of the bridge calls that want to control layout settings on the RenderView.
   47163         Have the bridge talk through the FrameView instead of just asking for the RenderView directly.
   47164 
   47165         Add an assert to help catch situations where the RenderView needs layout at paint time, since this is a known
   47166         catastrophic scenario that will (much of the time) result in a crash in RenderTableSection::paint.
   47167 
   47168         Reviewed by aroben
   47169 
   47170         * page/FrameView.cpp:
   47171         (WebCore::FrameView::adjustViewSize):
   47172         (WebCore::FrameView::needsLayout):
   47173         (WebCore::FrameView::setNeedsLayout):
   47174         * page/FrameView.h:
   47175         * page/mac/WebCoreFrameBridge.mm:
   47176         (-[WebCoreFrameBridge needsLayout]):
   47177         (-[WebCoreFrameBridge setNeedsLayout]):
   47178         * rendering/RenderView.cpp:
   47179         (WebCore::RenderView::paint):
   47180 
   47181 2007-03-21  Geoffrey Garen  <ggaren (a] apple.com>
   47182 
   47183         Reviewed by Beth Dakin.
   47184         
   47185         Re-worked the fix in r20375. 'M' and 'm' are not the only commands that
   47186         accept "extra" coordinates -- virtually all commands accept them.
   47187 
   47188         * ksvg2/svg/SVGParserUtilities.cpp:
   47189         (WebCore::SVGPathParser::parseSVG):
   47190 
   47191 2007-03-21  David Harrison  <harrison (a] apple.com>
   47192 
   47193         Reviewed by hyatt.
   47194 
   47195         <rdar://problem/5072460> CrashTracer: [USER] 1 crashes in Xcode at com.apple.ImageIO.framework: getBandProcPNG + 168
   47196 
   47197         An NSData object was being alloc/init'd, then returned callers who cast the pointer as a
   47198         CFDataRef, including calling CFRelease on it. The problem is that under garbage collection, the NS
   47199         retain count is ignored (it's always 0), but the CFRetain and CFRelease are not ignored. This
   47200         caused the object to be over-released. The solution that works in both GC and non-GC is to "transfer"
   47201         the initial NS retain count to the CF retain count, using HardRetainWithNSRelease.
   47202         
   47203         The creator of the NSData was SharedBuffer::createNSData. The callers were PDFDocumentImage::dataChanged()
   47204         and ImageSource::setData(). This particular crash involved the ImageSource::setData() case.
   47205 
   47206         * platform/SharedBuffer.h:
   47207         Declare createCFData().
   47208         
   47209         * platform/graphics/cg/ImageSourceCG.cpp:
   47210         (WebCore::ImageSource::setData):
   47211         Call createCFData instead of createNSData.
   47212         
   47213         * platform/graphics/cg/PDFDocumentImage.cpp:
   47214         (WebCore::PDFDocumentImage::dataChanged):
   47215         Call createCFData instead of createNSData.
   47216         
   47217        * platform/mac/SharedBufferMac.mm:
   47218         (WebCore::SharedBuffer::createCFData):
   47219         Implement createCFData(). Use HardRetainWithNSRelease for gc safety.
   47220         
   47221 2007-03-21  Mitz Pettel  <mitz (a] webkit.org>
   47222 
   47223         Reviewed by Darin.
   47224 
   47225         - fix http://bugs.webkit.org/show_bug.cgi?id=13145
   47226           Regression: Scrollbar not resizing after display none
   47227 
   47228         Test: fast/dynamic/view-overflow.html
   47229 
   47230         * rendering/RenderView.cpp:
   47231         (WebCore::RenderView::layout): Reset overflowHeight() and overflowWidth()
   47232         before calling docHeight() and docWidth(), since the former act as a lower
   47233         bound for the latter.
   47234 
   47235 2007-03-21  Geoffrey Garen  <ggaren (a] apple.com>
   47236 
   47237         Reviewed by Beth Dakin.
   47238         
   47239         A little cleanup based work I've been doing on the SVG parsers.
   47240 
   47241         * ksvg2/svg/SVGParserUtilities.h:
   47242         (WebCore::skipString):
   47243         * ksvg2/svg/SVGPreserveAspectRatio.cpp: Moved checkString into
   47244         SVGParserUtilities.h, so it could be with all its friends. Renamed 
   47245         "checkString" to "skipString" to match the rest of the code and to be 
   47246         clear about which functions move the buffer pointer.
   47247         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
   47248         * ksvg2/svg/SVGTransformable.cpp:
   47249         (WebCore::SVGTransformable::parseTransformAttribute): Changed gotos into 
   47250         returns. Removed unnecessary magic number.
   47251 
   47252 2007-03-21  Geoffrey Garen  <ggaren (a] apple.com>
   47253 
   47254         Reviewed by Beth Dakin.
   47255         
   47256         Fixed <rdar://problem/5078471> SVG rgb color parser runs past end of 
   47257         buffer when running fuzzing test
   47258 
   47259         * ksvg2/svg/SVGColor.cpp:
   47260         (WebCore::parseNumberOrPercent): Check for past the end condition.
   47261         (WebCore::SVGColor::colorFromRGBColorString): Reversed "read past end
   47262         of buffer, then check if you're past the end" logic.
   47263 
   47264 2007-03-21  Geoffrey Garen  <ggaren (a] apple.com>
   47265 
   47266         Reviewed by Beth Dakin.
   47267         
   47268         Fixed <rdar://problem/5079410> SVG path parser hangs, exhausts memory when 
   47269         running fuzzer test
   47270 
   47271         * ksvg2/svg/SVGParserUtilities.cpp:
   47272         (WebCore::SVGPathParser::parseSVG): Don't assume that extra digits are
   47273         always preceded by an 'M' or an 'm'.
   47274 
   47275 2007-03-21  John Sullivan  <sullivan (a] apple.com>
   47276 
   47277         Reviewed by Adam
   47278         
   47279         - fixed <rdar://problem/5079700> REGRESSION (r19702): Name/password aren't autofilled 
   47280           or saved for .Mac homepage login
   47281 
   47282         * page/mac/FrameMac.mm:
   47283         (WebCore::Frame::searchForLabelsBeforeElement):
   47284         don't count empty strings as valid results
   47285 
   47286 2007-03-21  Justin Garcia  <justin.garcia (a] apple.com>
   47287 
   47288         Reviewed by darin
   47289 
   47290         * editing/markup.cpp:
   47291         (WebCore::styleFromMatchedRulesAndInlineDecl): 
   47292         Release the RefPtr to avoid increasing/decreasing
   47293         the refcount unnecessarily.
   47294         (WebCore::propertyMissingOrEqualToNone): Added and used
   47295         instead of converting values to strings.
   47296         (WebCore::elementHasTextDecorationProperty): 
   47297         (WebCore::createMarkup):
   47298 
   47299 2007-03-21  Justin Garcia  <justin.garcia (a] apple.com>
   47300 
   47301         Reviewed by oliver
   47302 
   47303         <rdar://problem/5075944> 
   47304         REGRESSION: Partially selected underlined content pastes as plain text
   47305         
   47306         We stopped adding markup for all the ancestors
   47307         of lastClosed up to the commonAncestorBlock
   47308         because it was adding a lot of unnecessary markup.
   47309         This caused us to lose underlining when copying a 
   47310         partially selected underlined element (even though 
   47311         we put all styles that the copied markup inherits 
   47312         into a style span, because the text-decoration 
   47313         isn't inheritable).
   47314 
   47315         * editing/markup.cpp:
   47316         (WebCore::styleFromMatchedRulesAndInlineDecl): Moved
   47317         code here.
   47318         (WebCore::elementHasTextDecorationProperty): Added.
   47319         (WebCore::createMarkup): If the copied markup has a
   47320         text-decoration because some common ancestor has
   47321         a text-decoration property set, include that ancestor
   47322         and all its descendants in the copied markup.
   47323 
   47324 2007-03-21  Oliver Hunt  <oliver (a] apple.com>
   47325 
   47326         Reviewed by Antti.
   47327 
   47328         Update a few SVG attribute parsers to be more defensive against
   47329         reading beyond the end of input. 
   47330 
   47331         Fixes rdar://problem/5077218 -- SVG transform parser runs past
   47332         end of buffer when running fuzzing test
   47333 
   47334         * ksvg2/svg/SVGParserUtilities.cpp:
   47335         (WebCore::SVGPathParser::parseSVG):
   47336         * ksvg2/svg/SVGParserUtilities.h:
   47337         (WebCore::skipOptionalSpacesOrDelimiter):
   47338         * ksvg2/svg/SVGTransformable.cpp:
   47339         (WebCore::parseTransformParamList):
   47340         (WebCore::SVGTransformable::parseTransformAttribute):
   47341 
   47342 2007-03-21  Alexey Proskuryakov  <ap (a] webkit.org>
   47343 
   47344         Reviewed by Mitz.
   47345 
   47346         http://bugs.webkit.org/show_bug.cgi?id=13140
   47347         Crash after loading SVG fragment with XMLHttpRequest (Yosemite Map Geology Layer)
   47348 
   47349         Test: svg/carto.net/frameless-svg-parse-error.html
   47350 
   47351         * ksvg2/misc/SVGDocumentExtensions.cpp:
   47352         (WebCore::SVGDocumentExtensions::reportError): Added a null check.
   47353         (WebCore::SVGDocumentExtensions::reportWarning): Ditto.
   47354 
   47355 2007-03-21  Beth Dakin  <bdakin (a] apple.com>
   47356 
   47357         Reviewed by Geoff.
   47358 
   47359         Fix for <rdar://problem/5072678> Crash in
   47360         RenderLayer::scrollRectToVisible with MallocScribble enabled
   47361 
   47362         I tried to fix this earlier today but my fix caused a regression
   47363         scrolling through RSS pages. It turns out that sometimes scroll
   47364         events need to propagate immediately, and sometimes they must be
   47365         delayed or they risk deleting objects that are expected to be
   47366         around after the event has propagated. Mitz's original fix made
   47367         sheduleEvent() only delay events that happen during layout. This
   47368         fix marks two other places in addition to layout where events also
   47369         need to be delayed. These two places are places that were marked
   47370         with FIXMEs that Mitz removed in his original patch. (There was a
   47371         third FIXME in RenderLayer::updateScrollInfoAfterLayout() but that
   47372         case is only called through layout and is covered by Mitz's
   47373         original patch.)
   47374 
   47375         * page/FrameView.cpp:
   47376         (WebCore::FrameView::~FrameView): Added assertion.
   47377         (WebCore::FrameView::layout): Call new functions to increment and 
   47378         decrement the queued events count.
   47379         (WebCore::FrameView::pauseScheduledEvents):
   47380         (WebCore::FrameView::resumeScheduledEvents): Decrement queued 
   47381         events count and dispatch events if the count has zeroed.
   47382         * page/FrameView.h:
   47383         * rendering/RenderLayer.cpp:
   47384         (WebCore::RenderLayer::scrollRectToVisible):
   47385         (WebCore::Marquee::start):
   47386 
   47387 2007-03-21  Mitz Pettel  <mitz (a] webkit.org>
   47388 
   47389         Reviewed by John Sullivan.
   47390 
   47391         - fix http://bugs.webkit.org/show_bug.cgi?id=13130
   47392           REGRESSION: Sometimes a frame resizer keeps following the mouse after mouseup
   47393 
   47394         * rendering/RenderFrameSet.cpp:
   47395         (WebCore::RenderFrameSet::userResize): Reordered the code to allow resizing
   47396         to be terminated by a mouseup event regardless of whether the frameset needs
   47397         layout.
   47398 
   47399 2007-03-20  Anders Carlsson  <acarlsson (a] apple.com>
   47400 
   47401         Reviewed by Oliver.
   47402 
   47403         <rdar://problem/5077252> 
   47404         In NetNewsWire 2.1.1 and 3.0d62, a crash occurs after triple-clicking a link on the page
   47405         
   47406         * loader/FrameLoader.cpp:
   47407         (WebCore::FrameLoader::load):
   47408         Move the m_inStopAllLoaders check to the load function that's common for loading a request or substitute data.
   47409 
   47410 2007-03-20  Brady Eidson  <beidson (a] apple.com>
   47411 
   47412         Reviewed by Anders.
   47413 
   47414         <rdar://problem/5073391> and http://bugs.webkit.org/show_bug.cgi?id=13137
   47415 
   47416         Crash in IconDatabase when private browsing is enabled.
   47417 
   47418         The problem was caused by http://trac.webkit.org/projects/webkit/changeset/20182 
   47419         which changed many uses of char[] and Vector<char> to SharedBuffer.  The patch
   47420         tended to literally replace a Vector<char> with RefPtr<SharedBuffers> but forgot
   47421         to enforce the concept that Vector<char>'s always exist, whereas RefPtr<SharedBuffers>
   47422         can be null.  This led to derefs.
   47423 
   47424         I took the opportunity to rework the iconDB functions to live in a SharedBuffer 
   47425         world, as that didn't exist when they were originally written - now they just return
   47426         SharedBuffers instead of taking a Vector<char>& as a parameter
   47427 
   47428         * loader/icon/IconDatabase.cpp:
   47429         (WebCore::IconDatabase::imageDataForIconURL): Return a SharedBuffer
   47430         (WebCore::IconDatabase::iconForPageURL): Null check the SharedBuffer before asking
   47431           it if it's empty
   47432         (WebCore::IconDatabase::imageDataForIconURLQuery): Return a new SharedBuffer
   47433 
   47434         * loader/icon/IconDatabase.h: Return SharedBuffer's instead of taking Vector<char>&'s
   47435 
   47436 2007-03-20  Adam Roben  <aroben (a] apple.com>
   47437 
   47438         Rubberstamped by Adele.
   47439 
   47440         Roll out r20348 because it was causing crashes.
   47441 
   47442         * page/FrameView.cpp:
   47443         (WebCore::FrameViewPrivate::FrameViewPrivate):
   47444         (WebCore::FrameView::layout):
   47445         (WebCore::FrameView::scheduleEvent):
   47446 
   47447 2007-03-20  Timothy Hatcher  <timothy (a] apple.com>
   47448 
   47449         Reviewed by Kevin Decker.
   47450 
   47451         Rolling out part of r19828 that caused a scrolling regression in Mail.
   47452 
   47453         <rdar://problem/4820817> Message jumps around when trying to select text
   47454 
   47455         * platform/mac/ScrollViewMac.mm:
   47456         (WebCore::ScrollView::visibleContentRect):
   47457         (WebCore::ScrollView::updateContents):
   47458 
   47459 2007-03-20  Brady Eidson  <beidson (a] apple.com>
   47460 
   47461         Reviewed by John
   47462 
   47463         <rdar://5071341> - Crash in IconLoader::finishLoading()
   47464         
   47465         Though the reproducibility of the crash is still elusive, there's been a crasher likely uncovered 
   47466         Hyatt's recent caching changings to the IconLoader.  This crash tends to hit on sites without favicons,
   47467         that serve up complex 404 pages, often when the load is cancelled or redirected.  Occasionally, it *seems*
   47468         the IconLoader is getting failed/cancelled twice.
   47469         
   47470         This patch adds some assertions and a "fail gracefully in a release build" check that will have to
   47471         serve us until we know more about the cause.
   47472 
   47473         * loader/icon/IconLoader.cpp:
   47474         (WebCore::IconLoader::didFail): Add an assertion to catch this case
   47475         (WebCore::IconLoader::finishLoading): Add an assertion to catch the case, and fail
   47476           gracefully in debug builds.  Also add an efficiency check to not commit to the DB if there is no
   47477           IconURL
   47478 
   47479 2007-03-20  Antti Koivisto  <antti (a] apple.com>
   47480 
   47481         Reviewed by Darin.
   47482 
   47483         - fix http://bugs.webkit.org/show_bug.cgi?id=10747
   47484         REGRESSION: Using two fingers on a trackpad to scroll inside a text area makes the whole page move
   47485         <rdar://problem/5045710>
   47486         
   47487         Eat smooth scroll events in WebCore if pointer is over scrollable area. Not
   47488         really a good fix, smooth scrolling should be supported properly. It should do for now.
   47489 
   47490         * page/EventHandler.cpp:
   47491         (WebCore::EventHandler::handleWheelEvent):
   47492         * rendering/RenderListBox.cpp:
   47493         (WebCore::RenderListBox::isScrollable):
   47494         * rendering/RenderListBox.h:
   47495         * rendering/RenderObject.cpp:
   47496         (WebCore::RenderObject::isScrollable):
   47497         * rendering/RenderObject.h:
   47498         * rendering/RenderTextControl.cpp:
   47499         (WebCore::RenderTextControl::isScrollable):
   47500         * rendering/RenderTextControl.h:
   47501 
   47502 2007-03-20  Beth Dakin  <bdakin (a] apple.com>
   47503 
   47504         Reviewed by Geoff.
   47505 
   47506         Covered by existing test case.
   47507 
   47508         Fix for <rdar://problem/5072678> Crash in 
   47509         RenderLayer::scrollRectToVisible with MallocScribble enabled
   47510 
   47511         This removes some code that was added with http://bugs.webkit.org/
   47512         show_bug.cgi?id=8360. This code was not needed to fix that bug, but 
   47513         the idea behind it was that there are times when it is safe for 
   47514         scheduleEvent() to propagate the event immediately. The 
   47515         MallocScribble crash revealed that this assumption was a bit too 
   47516         broad; the cause of the crash was that we were propagating events 
   47517         immediately when it was not safe. Mitz and I discussed this online 
   47518         and we agree that the safest solution is to revert to the old 
   47519         behavior here, and always delay the propagation of the event. 
   47520 
   47521         * page/FrameView.cpp:
   47522         (WebCore::FrameViewPrivate::FrameViewPrivate):
   47523         (WebCore::FrameView::layout):
   47524         (WebCore::FrameView::scheduleEvent):
   47525 
   47526 2007-03-20  Brady Eidson  <beidson (a] apple.com>
   47527 
   47528         Reviewed by John Sullivan
   47529 
   47530         Add some very helpful logging to the IconLoader's SubresourceLoaderClient impl.
   47531 
   47532         * loader/icon/IconLoader.cpp:
   47533         (WebCore::IconLoader::didReceiveResponse):
   47534         (WebCore::IconLoader::didReceiveData):
   47535         (WebCore::IconLoader::didFail):
   47536         (WebCore::IconLoader::didFinishLoading):
   47537 
   47538 2007-03-20  Justin Garcia  <justin.garcia (a] apple.com>
   47539 
   47540         Reviewed by darin
   47541 
   47542         <rdar://problem/5071074> 
   47543         REGRESSION: Links are pasted as plain text at certain positions
   47544         
   47545         moveParagraphs calls createMarkup without annotation, which leaves
   47546         out anchor elements that aren't fully selected.
   47547 
   47548         * editing/CompositeEditCommand.cpp:
   47549         (WebCore::CompositeEditCommand::moveParagraphs): We don't want 
   47550         createMarkup to do full annotation here.  Doing so could include 
   47551         special ancestor blocks, which would prevent the copied content 
   47552         from appearing in the destination paragraph when it's re-inserted.  
   47553         Annotation would also inline styles from style sheets,  which is 
   47554         unnecessary because the content is being moved to the same 
   47555         document it's being moved from.
   47556         Added a new bool to createMarkup that when true allows markup for 
   47557         special ancestors as long as they are inline when annotation is off.
   47558         * editing/markup.cpp:
   47559         (WebCore::createMarkup): Don't set specialCommonAncestor if annotation
   47560         is off, unless it's inline and we've been told it's ok to include such
   47561         elements.
   47562         * editing/markup.h:
   47563 
   47564 2007-03-20  Alexey Proskuryakov  <ap (a] webkit.org>
   47565 
   47566         Reviewed by Darin.
   47567 
   47568         http://bugs.webkit.org/show_bug.cgi?id=12497
   47569         Implement XPath result ordering.
   47570 
   47571         XPath::NodeVector typedef is replaced with a real XPath::NodeSet class that knows how 
   47572         to sort itself, and can remember whether it has been already sorted.
   47573 
   47574         * CMakeLists.txt:
   47575         * WebCore.pro:
   47576         * WebCore.xcodeproj/project.pbxproj:
   47577         * WebCoreSources.bkl:
   47578         Added XPathNodeSet files.
   47579 
   47580         * xml/XPathExpression.cpp: Fixed includes.
   47581 
   47582         * xml/XPathFunctions.cpp:
   47583         (WebCore::XPath::FunId::evaluate): Mark the resulting node-set as unsorted.
   47584         (WebCore::XPath::FunLocalName::evaluate): Replacing NodeVector with NodeSet.
   47585         (WebCore::XPath::FunNamespaceURI::evaluate): Ditto.
   47586         (WebCore::XPath::FunName::evaluate): Ditto.
   47587         (WebCore::XPath::FunCount::evaluate): Ditto.
   47588         (WebCore::XPath::FunSum::evaluate): Ditto.
   47589 
   47590         * xml/XPathNodeSet.cpp: Added.
   47591         (WebCore::XPath::parentWithDepth):
   47592         (WebCore::XPath::sortBlock):
   47593         (WebCore::XPath::NodeSet::sort): Sort the node-set in document order.
   47594         (WebCore::XPath::NodeSet::reverse): Reverse the order (useful for making axes such as 
   47595         parent or ancestor sorted).
   47596         (WebCore::XPath::NodeSet::firstNode): Returns the first node in document order; currently
   47597         implemented via fully sorting the node-set, but this can obviously be optimized.
   47598         (WebCore::XPath::NodeSet::anyNode): Added for symmetry with firstNode().
   47599         
   47600         * xml/XPathNodeSet.h: Added.
   47601         (WebCore::XPath::NodeSet::NodeSet):
   47602         (WebCore::XPath::NodeSet::operator=):
   47603         (WebCore::XPath::NodeSet::size):
   47604         (WebCore::XPath::NodeSet::isEmpty):
   47605         (WebCore::XPath::NodeSet::operator[]):
   47606         (WebCore::XPath::NodeSet::reserveCapacity):
   47607         (WebCore::XPath::NodeSet::clear):
   47608         (WebCore::XPath::NodeSet::swap):
   47609         (WebCore::XPath::NodeSet::append):
   47610         (WebCore::XPath::NodeSet::markSorted):
   47611         (WebCore::XPath::NodeSet::isSorted):
   47612         Most of these methods just call Vector counterparts. 
   47613 
   47614         * xml/XPathParser.cpp: Updated the copyright notice.
   47615 
   47616         * xml/XPathPath.cpp:
   47617         (WebCore::XPath::Filter::evaluate): Replacing NodeVector with NodeSet.
   47618         (WebCore::XPath::Path::evaluate): Ditto.
   47619         (WebCore::XPath::LocationPath::evaluate): Replacing NodeVector with NodeSet. This function
   47620         always marks the result as unsorted, because it is hard to tell whether a step breaks node order.
   47621         Identifying and implementing special cases when it is not necessary to do so is an important
   47622         future optimization.
   47623 
   47624         * xml/XPathPath.h: Replacing NodeVector with NodeSet.
   47625         * xml/XPathPredicate.cpp:
   47626         (WebCore::XPath::EqTestOp::compare): Replacing NodeVector with NodeSet.
   47627         (WebCore::XPath::Union::evaluate): Replacing NodeVector with NodeSet. Currently, Union just
   47628         marks the result as unordered; we can consider using merge sort to avoid this.
   47629 
   47630         * xml/XPathResult.cpp:
   47631         (WebCore::XPathResult::XPathResult): Replacing NodeVector with NodeSet.
   47632         (WebCore::XPathResult::singleNodeValue): Ditto.
   47633         (WebCore::XPathResult::snapshotLength): Ditto.
   47634         (WebCore::XPathResult::iterateNext): Ditto.
   47635         (WebCore::XPathResult::snapshotItem): Ditto.
   47636         (WebCore::XPathResult::convertTo): Ditto. Sort the result when requested to.
   47637 
   47638         * xml/XPathResult.h: Replacing NodeVector with NodeSet.
   47639 
   47640         * xml/XPathStep.cpp:
   47641         (WebCore::XPath::Step::evaluate): If the input is not sorted, mark the output as such, too.
   47642         (WebCore::XPath::Step::nodesInAxis): Fixed a number of bugs when enumerating with an
   47643         attribute context node.
   47644         (WebCore::XPath::Step::nodeTestMatches): Replacing NodeVector with NodeSet.
   47645         * xml/XPathStep.h: Ditto.
   47646 
   47647         * xml/XPathUtil.cpp:
   47648         (WebCore::XPath::isValidContextNode): XPath data model doesn't put attribute data into child
   47649         nodes, so passing such node as a context could cause problems.
   47650 
   47651         * xml/XPathUtil.h: Removed NodeVector typedef.
   47652 
   47653         * xml/XPathValue.cpp:
   47654         (WebCore::XPath::Value::Value):
   47655         (WebCore::XPath::Value::toNodeSet):
   47656         (WebCore::XPath::Value::toBoolean):
   47657         (WebCore::XPath::Value::toNumber):
   47658         (WebCore::XPath::Value::toString):
   47659         * xml/XPathValue.h:
   47660         (WebCore::XPath::Value::):
   47661         (WebCore::XPath::Value::isNodeSet):
   47662         Replacing NodeVector with NodeSet.
   47663 
   47664 2007-03-21  Mark Rowe  <mrowe (a] apple.com>
   47665 
   47666         Build fix.
   47667 
   47668         * bindings/objc/WebScriptObject.mm:
   47669         (-[WebScriptObject methodForSelector:]):
   47670         (-[WebScriptObject respondsToSelector:]):
   47671 
   47672 2007-03-21  Mark Rowe  <mrowe (a] apple.com>
   47673 
   47674         Reviewed by Tim Hatcher.
   47675 
   47676         Fix for http://bugs.webkit.org/show_bug.cgi?id=13129.
   47677         Bug 13129: Democracy Player dies in NSException from WebScriptObject on startup.
   47678 
   47679         Some cross-language scripting bridges use the presence of -(int)count to determine
   47680         whether to treat objects as sequence-like.  All WebScriptObject's exposed this method
   47681         which lead to non-collection WebScriptObject's being mishandled by PyObjC.  We now
   47682         expose -count only when the object we wrap looks like a collection from a JavaScript
   47683         point of view (eg, it has a length property).
   47684 
   47685         * bindings/objc/WebScriptObject.mm:
   47686         (-[WebScriptObject _shouldRespondToCount]):
   47687         (-[WebScriptObject methodForSelector:]):
   47688         (-[WebScriptObject respondsToSelector:]):
   47689         (-[WebScriptObject _count]):
   47690         * bindings/objc/WebScriptObjectPrivate.h:
   47691 
   47692 2007-03-20  Darin Adler  <darin (a] apple.com>
   47693 
   47694         * page/EventHandler.cpp: (WebCore::EventHandler::handleMouseMoveEvent):
   47695         Fix obvious typo in the change from last night -- forgot to assign to the variable.
   47696 
   47697 2007-03-20  Dave Hyatt  <hyatt (a] apple.com>
   47698 
   47699         Refactor fonts a bit for portability.
   47700        
   47701         Reviewed by aroben
   47702 
   47703         * platform/Font.cpp:
   47704         (WebCore::Font::drawSimpleText):
   47705         (WebCore::Font::drawGlyphBuffer):
   47706         (WebCore::Font::floatWidthForSimpleText):
   47707         * platform/Font.h:
   47708         * platform/FontData.h:
   47709         (WebCore::FontData::isSystemFont):
   47710         (WebCore::FontData::scriptCache):
   47711         * platform/GlyphBuffer.h:
   47712         (WebCore::GlyphBuffer::add):
   47713 
   47714 2007-03-20  Anders Carlsson  <acarlsson (a] apple.com>
   47715 
   47716         Reviewed by Adam.
   47717 
   47718         Stub out a couple of CFNetwork backend functions.
   47719         
   47720         * platform/network/ResourceHandle.h:
   47721 
   47722 2007-03-19  Oliver Hunt  <oliver (a] apple.com>
   47723 
   47724         Reviewed by Ada.
   47725 
   47726         Protect against possibility of JS detaching a frame (and losing its view)
   47727         midway through a mouse move.
   47728 
   47729         * page/EventHandler.cpp:
   47730         (WebCore::EventHandler::handleMouseMoveEvent):
   47731 
   47732 2007-03-19  Alexey Proskuryakov  <ap (a] webkit.org>
   47733 
   47734         Reviewed by Darin.
   47735 
   47736         http://bugs.webkit.org/show_bug.cgi?id=13107
   47737         XPath should raise an exception when trying to parse an unknown function
   47738 
   47739         Test: fast/xpath/invalid-functions.html
   47740 
   47741         * xml/XPathFunctions.cpp:
   47742         (WebCore::XPath::createFunction): Return 0 if the function couldn't be created.
   47743         * xml/XPathGrammar.y: Handle nulls returned from createFunction().
   47744 
   47745 2007-03-19  Adele Peterson  <adele (a] apple.com>
   47746 
   47747         Reviewed by Beth.
   47748 
   47749         Fix for http://bugs.webkit.org/show_bug.cgi?id=13087
   47750         <rdar://problem/5064316> REGRESSION: Allow setting the checked attribute in js and in markup for unnamed radio buttons (dominos.com)
   47751 
   47752         Test: fast/forms/radio_checked_name.html
   47753 
   47754         We were matching a WinIE quirk that does not allow a user to check and uncheck an unnamed radio button.  But they still
   47755         allow the checked attribute to be set in html, and changed in javascript.  So this change matches that behavior.
   47756 
   47757         * html/HTMLInputElement.cpp:
   47758         (WebCore::HTMLInputElement::parseMappedAttribute): We no longer need a special call to setChecked when parsing the name
   47759          attribute, since we setChecked will now work with unnamed radio buttons.
   47760         (WebCore::HTMLInputElement::preDispatchEventHandler): Added comment.
   47761         (WebCore::HTMLInputElement::setChecked): Don't check for the unnamed radio button case here.
   47762         (WebCore::HTMLInputElement::postDispatchEventHandler): Don't call setChecked for unnamed radio buttons.
   47763         (WebCore::HTMLInputElement::defaultEventHandler): ditto.
   47764 
   47765 2007-03-19  Adam Roben  <aroben (a] apple.com>
   47766 
   47767         Rubberstamped by Oliver.
   47768 
   47769         * bridge/JavaScriptStatistics.cpp: Added missing header for
   47770         correctness.
   47771 
   47772 2007-03-19  Andrew Wellington  <proton (a] wiretapped.net>
   47773 
   47774         Reviewed by Maciej.
   47775 
   47776         Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
   47777 
   47778         * WebCore.xcodeproj/project.pbxproj:
   47779 
   47780 2007-03-19  Justin Garcia  <justin.garcia (a] apple.com>
   47781 
   47782         Reviewed by darin
   47783         
   47784         <rdar://problem/5071074> 
   47785         REGRESSION: Links that aren't fully selected copy and paste as only text
   47786         
   47787         We stopped adding markup for all commonAncestorBlocks
   47788         and the ancestors of lastClosed up to them because it 
   47789         was adding a lot of unnecessary markup.
   47790 
   47791         * editing/markup.cpp:
   47792         (WebCore::createMarkup): Also include markup for nodes
   47793         up to an enclosing anchor.  Cleaned up the code for
   47794         including special common ancestors a bit.
   47795 
   47796 2007-03-19  Nikolas Zimmermann  <zimmermann (a] kde.org>
   47797 
   47798         Reviewed by Lars Knoll.
   47799 
   47800         Fix crash when opening a SVG document which contains SVG elements, but no <svg> root element.
   47801         Moving the mouse was crashing WebKit. Fixes svg/hixie/dynamic/006.xml.
   47802 
   47803         * rendering/RenderObject.cpp:
   47804         (WebCore::RenderObject::updateHitTestResult):
   47805 
   47806 2007-03-19  Mitz Pettel  <mitz (a] webkit.org>
   47807 
   47808         Reviewed by Hyatt.
   47809 
   47810         - fix http://bugs.webkit.org/show_bug.cgi?id=13117
   47811         REGRESSION (r14658): Flickering text fields when updating via javascript
   47812 
   47813         * page/Frame.cpp:
   47814         (WebCore::Frame::forceLayout): Added a flag to allow partial relayout.
   47815         * page/Frame.h:
   47816         * page/mac/WebCoreFrameBridge.mm:
   47817         (-[WebCoreFrameBridge forceLayoutAdjustingViewSize:]): Allow partial relayout
   47818         if not adjusting view size.
   47819         (-[WebCoreFrameBridge needsLayout]): Changed to check for pending subtree
   47820         layout instead of just whether the root needs layout.
   47821 
   47822 2007-03-18  Nikolas Zimmermann  <zimmermann (a] kde.org>
   47823 
   47824         Reviewed by Maciej.
   47825 
   47826         Make JS function calls on POD-types (ie. SVGLength) take effect.
   47827         Calling ie. newValueInSpecifiedUnits on SVGLength works as expected.
   47828 
   47829         This worked fine before we switched to SVGLength POD type, so this
   47830         can be considered as P1 regression fix.
   47831 
   47832         Partly fix svg/hixie/dynamic/005-broken.svg. We match Opera now though
   47833         it's not yet completly fixed. Setting baseVal attribute on SVGAnimatedString
   47834         doesn't work as expected - needs a seperated fix.
   47835 
   47836         * bindings/scripts/CodeGeneratorJS.pm:
   47837 
   47838 2007-03-19  Adele Peterson  <adele (a] apple.com>
   47839 
   47840         Reviewed by Adam.
   47841 
   47842         Adding comments and a little cleanup from my last checkin.
   47843 
   47844         * html/HTMLSelectElement.cpp:
   47845         (WebCore::HTMLSelectElement::setSelectedIndex): Removed commented out assert.  Added comment about how we use onChange.
   47846         (WebCore::HTMLSelectElement::selectAll): Added comment about how we use saveLastSelection and onChange.
   47847         (WebCore::HTMLSelectElement::dispatchFocusEvent): ditto.
   47848         (WebCore::HTMLSelectElement::dispatchBlurEvent): ditto.
   47849         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): ditto.
   47850         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): ditto.
   47851         (WebCore::HTMLSelectElement::menuListOnChange): Added assert that usesMenuList() is true.
   47852         (WebCore::HTMLSelectElement::listBoxOnChange): Added assert that usesMenuList() is false.
   47853         (WebCore::HTMLSelectElement::saveLastSelection): Added early return for menu lists.
   47854 
   47855 2007-03-19  Mitz Pettel  <mitz (a] webkit.org>
   47856 
   47857         Reviewed by Tim Hatcher.
   47858 
   47859         - fix http://bugs.webkit.org/show_bug.cgi?id=13091
   47860           REGRESSION (r20075): Wrong text style and pixel break in Apple Store Locator HUD
   47861 
   47862         Test: fast/innerHTML/additional-inline-style.html
   47863 
   47864         * editing/markup.cpp:
   47865         (WebCore::startMarkup): Changed to add inline style based on CSS rules only
   47866         in AnnotateForInterchange mode.
   47867 
   47868 2007-03-19  Zack Rusin  <zrusin (a] trolltech.com>
   47869 
   47870         Compile fix.
   47871 
   47872         * platform/qt/ScrollViewQt.cpp:
   47873         (WebCore::ScrollView::update):
   47874 
   47875 2007-03-19  Adam Roben  <aroben (a] apple.com>
   47876 
   47877         Reviewed by Hyatt and Maciej.
   47878 
   47879         Renamed WebCoreJavaScript to JavaScriptStatistics and made it C++ as
   47880         part of <rdar://problem/5071653>.
   47881 
   47882         All layout tests pass.
   47883 
   47884         * WebCore.exp: Updated.
   47885         * WebCore.xcodeproj/project.pbxproj: Updated.
   47886         * bridge/JavaScriptStatistics.cpp: Moved from
   47887         bridge/mac/WebCoreJavaScript.mm, and converted to C++.
   47888         (WebCore::collect):
   47889         (WebCore::JavaScriptStatistics::objectCount):
   47890         (WebCore::JavaScriptStatistics::interpreterCount):
   47891         (WebCore::JavaScriptStatistics::protectedObjectCount):
   47892         (WebCore::JavaScriptStatistics::rootObjectTypeCounts):
   47893         (WebCore::JavaScriptStatistics::garbageCollect):
   47894         (WebCore::JavaScriptStatistics::garbageCollectOnAlternateThread):
   47895         (WebCore::JavaScriptStatistics::shouldPrintExceptions):
   47896         (WebCore::JavaScriptStatistics::setShouldPrintExceptions):
   47897         * bridge/JavaScriptStatistics.h: Added.
   47898         * bridge/mac/WebCoreJavaScript.h: Removed.
   47899         * bridge/mac/WebCoreJavaScript.mm: Removed.
   47900 
   47901 2007-03-18  Maciej Stachowiak  <mjs (a] apple.com>
   47902 
   47903         Reviewed by Mark.
   47904 
   47905         - avoid static construction (and global variable access) in a smarter, more portable way,
   47906         to later enable MUTLI_THREAD mode to work on other platforms and compilers.
   47907         
   47908         * bindings/js/JSCustomXPathNSResolver.cpp:
   47909         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   47910         * bindings/js/JSHTMLInputElementBase.cpp:
   47911         (WebCore::JSHTMLInputElementBaseFunction::JSHTMLInputElementBaseFunction):
   47912         * bindings/js/JSHTMLOptionElementConstructor.cpp:
   47913         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
   47914         * bindings/js/JSXMLHttpRequest.cpp:
   47915         (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
   47916         * bindings/js/JSXSLTProcessor.cpp:
   47917         (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
   47918         * bindings/js/kjs_dom.cpp:
   47919         (KJS::DOMNamedNodeMap::getOwnPropertySlot):
   47920         (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
   47921         * bindings/js/kjs_events.cpp:
   47922         (KJS::JSAbstractEventListener::handleEvent):
   47923         * bindings/js/kjs_html.cpp:
   47924         (KJS::HTMLElementFunction::HTMLElementFunction):
   47925         (KJS::JSHTMLCollection::getOwnPropertySlot):
   47926         * bindings/js/kjs_window.cpp:
   47927         (KJS::ScheduledAction::execute):
   47928         * bindings/objc/WebScriptObject.mm:
   47929         * bindings/scripts/CodeGeneratorJS.pm:
   47930 
   47931 2007-03-18  Andrew Wellington  <proton (a] wiretapped.net>
   47932 
   47933         Reviewed by Mark Rowe
   47934 
   47935         Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
   47936 
   47937         * WebCore.xcodeproj/project.pbxproj:
   47938 
   47939 2007-03-18  David Hyatt  <hyatt (a] apple.com>
   47940 
   47941         Fix for REGRESSION bug 13108, frame borders being painted when they shouldn't be.  Rework both frame borders
   47942         and resizing to be more like other browsers.
   47943 
   47944         Reviewed by ggaren
   47945 
   47946         fast/frames/no-frame-borders.html
   47947 
   47948         * html/HTMLFrameElement.cpp:
   47949         (WebCore::HTMLFrameElement::HTMLFrameElement):
   47950         (WebCore::HTMLFrameElement::attach):
   47951         (WebCore::HTMLFrameElement::parseMappedAttribute):
   47952         * html/HTMLFrameElement.h:
   47953         (WebCore::HTMLFrameElement::hasFrameBorder):
   47954         * html/HTMLFrameElementBase.cpp:
   47955         (WebCore::HTMLFrameElementBase::HTMLFrameElementBase):
   47956         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
   47957         * html/HTMLFrameElementBase.h:
   47958         * html/HTMLFrameSetElement.cpp:
   47959         (WebCore::HTMLFrameSetElement::attach):
   47960         * html/HTMLFrameSetElement.h:
   47961         (WebCore::HTMLFrameSetElement::hasFrameBorder):
   47962         * html/HTMLIFrameElement.cpp:
   47963         (WebCore::HTMLIFrameElement::HTMLIFrameElement):
   47964         * rendering/RenderFrame.cpp:
   47965         (WebCore::RenderFrame::edgeInfo):
   47966         * rendering/RenderFrame.h:
   47967         * rendering/RenderFrameSet.cpp:
   47968         (WebCore::RenderFrameSet::paint):
   47969         (WebCore::RenderFrameSet::GridAxis::resize):
   47970         (WebCore::RenderFrameSet::fillFromEdgeInfo):
   47971         (WebCore::RenderFrameSet::computeEdgeInfo):
   47972         (WebCore::RenderFrameSet::edgeInfo):
   47973         (WebCore::RenderFrameSet::layout):
   47974         (WebCore::RenderFrameSet::startResizing):
   47975         (WebCore::RenderFrameSet::continueResizing):
   47976         (WebCore::RenderFrameSet::canResizeRow):
   47977         (WebCore::RenderFrameSet::canResizeColumn):
   47978         (WebCore::RenderFrameSet::splitPosition):
   47979         (WebCore::RenderFrameSet::hitTestSplit):
   47980         (WebCore::RenderFrameSet::dump):
   47981         * rendering/RenderFrameSet.h:
   47982         (WebCore::):
   47983         (WebCore::FrameEdgeInfo::FrameEdgeInfo):
   47984         (WebCore::FrameEdgeInfo::preventResize):
   47985         (WebCore::FrameEdgeInfo::allowBorder):
   47986         (WebCore::FrameEdgeInfo::setPreventResize):
   47987         (WebCore::FrameEdgeInfo::setAllowBorder):
   47988 
   47989 2007-03-19  Mark Rowe  <mrowe (a] apple.com>
   47990 
   47991         Rubber-stamped by Brady.
   47992 
   47993         Update references to bugzilla.opendarwin.org with bugs.webkit.org.
   47994 
   47995         * ChangeLog:
   47996         * WebCore.vcproj/WebCore/build-generated-files.sh:
   47997         * manual-tests/ATSU-bad-layout.html:
   47998         * manual-tests/accidental-strict-mode.html:
   47999         * manual-tests/applet-param-no-name.html:
   48000         * manual-tests/bidi-parens.html:
   48001         * manual-tests/bugzilla-3855.html:
   48002         * manual-tests/bugzilla-4840.html:
   48003         * manual-tests/bugzilla-6821.html:
   48004         * manual-tests/containing-block-position-chage.html:
   48005         * manual-tests/contenteditable-link.html:
   48006         * manual-tests/css3-cursor-fallback-quirks.html:
   48007         * manual-tests/css3-cursor-fallback-strict.html:
   48008         * manual-tests/custom-cursors.html:
   48009         * manual-tests/dictionary-scrolled-iframe.html:
   48010         * manual-tests/dom-manipulation-on-resize.html:
   48011         * manual-tests/drag-image-to-address-bar.html:
   48012         * manual-tests/empty-link-target.html:
   48013         * manual-tests/empty-title-popup.html:
   48014         * manual-tests/first-line-style-crash.html:
   48015         * manual-tests/invalid-mouse-event.html:
   48016         * manual-tests/left-overflow-repaint.html:
   48017         * manual-tests/linkjump-3.html:
   48018         * manual-tests/log-keypress-events.html:
   48019         * manual-tests/named-window-blank-target.html:
   48020         * manual-tests/plain-text-paste.html:
   48021         * manual-tests/plugin-controller-datasource.html:
   48022         * manual-tests/pre-tab-selection-rect.html:
   48023         * manual-tests/redirection-target.html:
   48024         * manual-tests/redraw-page-cache-visited-links.html:
   48025         * manual-tests/reset-initiatedDrag.html:
   48026         * manual-tests/resources/named-window-blank-target-step2.html:
   48027         * manual-tests/resources/named-window-blank-target-step3.html:
   48028         * manual-tests/resources/named-window-blank-target-step4.html:
   48029         * manual-tests/resources/redraw-page-cache-visited-links-2.html:
   48030         * manual-tests/scrollbar-hittest.html:
   48031         * manual-tests/scrollbar-hittest2.html:
   48032         * manual-tests/subview-click-assertion.html:
   48033         * manual-tests/tabbing-input-google.html:
   48034         * manual-tests/text-field-autoscroll.html:
   48035         * manual-tests/textarea-after-stylesheet-link.html:
   48036         * manual-tests/textarea-focus.html:
   48037         * manual-tests/whitespace-pre-affinity.html:
   48038 
   48039 2007-03-18  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   48040 
   48041         Not reviewed - gdk build fix.
   48042 
   48043         * platform/gdk/ScrollViewGdk.cpp:
   48044         (WebCore::ScrollView::update): add a stub
   48045 
   48046 2007-03-18  Brady Eidson  <beidson (a] apple.com>
   48047 
   48048         Reviewed by Hyatt
   48049 
   48050         http://bugs.webkit.org/show_bug.cgi?id=13111
   48051         When stopped a load before it completes, partial images become the 
   48052         broken image icon
   48053 
   48054         * loader/loader.cpp:
   48055         (WebCore::Loader::didFail): Split off into a method that knows the 
   48056           difference between failed and cancelled.  If a load is cancelled,
   48057           don't call error() on the object - only remove it from the cache
   48058         (WebCore::Loader::cancelRequests): Call didFail(loader, true)
   48059         * loader/loader.h: Added didFail(SubresourceLoader*, bool cancelled)
   48060 
   48061 2007-03-18  Mitz Pettel  <mitz (a] webkit.org>
   48062 
   48063         Reviewed by Adele.
   48064 
   48065         - fix http://bugs.webkit.org/show_bug.cgi?id=13101
   48066           REGRESSION (NativeTextField): Specifying word-wrap:break-word makes text field wrap
   48067 
   48068         Test: fast/forms/input-text-word-wrap.html
   48069 
   48070         * rendering/RenderTextControl.cpp:
   48071         (WebCore::RenderTextControl::createInnerTextStyle): Force the inner block to
   48072         'word-wrap:normal'.
   48073 
   48074 2007-03-18  Dan Waylonis  <waylonis (a] mac.com>
   48075 
   48076         Reviewed by Tim Hatcher.
   48077 
   48078         Fix http://bugs.webkit.org/show_bug.cgi?id=13005
   48079         Bug 13005: WebScriptObject +throwException needs NULL check.
   48080 
   48081         Add checking for NULL interpreter before throwing exception.
   48082 
   48083         * bindings/objc/WebScriptObject.mm:
   48084         (+[WebScriptObject throwException:]):
   48085 
   48086 2007-03-18  Geoffrey Garen  <ggaren (a] apple.com>
   48087 
   48088         Reviewed by Oliver Hunt.
   48089         
   48090         Fixed http://bugs.webkit.org/show_bug.cgi?id=13106
   48091         REGRESSION: Incomplete document.all implementation breaks abtelectronics.com 
   48092         (Style Change Through JavaScript Blanks Content)
   48093         
   48094         When indexing into collections, treat the empty string as an invalid argument,
   48095         instead of the number 0.
   48096 
   48097         * bindings/js/kjs_html.cpp:
   48098         (KJS::JSHTMLCollection::getOwnPropertySlot):
   48099         (KJS::JSHTMLCollection::callAsFunction):
   48100         (KJS::JSHTMLCollectionPrototypeFunction::callAsFunction):
   48101 
   48102 2007-03-18  David Hyatt  <hyatt (a] apple.com>
   48103 
   48104         Use fillRect instead of drawLine, since drawLine has some odd behavior (it's only used for borders).
   48105 
   48106         Reviewed by aroben
   48107 
   48108         * platform/graphics/IntRect.h:
   48109         * rendering/RenderFrameSet.cpp:
   48110         (WebCore::RenderFrameSet::paintColumnBorder):
   48111         (WebCore::RenderFrameSet::paintRowBorder):
   48112 
   48113 2007-03-18  David Hyatt  <hyatt (a] apple.com>
   48114 
   48115         Change the frameborder color to be light gray for framesets.
   48116 
   48117         Reviewed by aroben
   48118 
   48119         * rendering/RenderFrameSet.cpp:
   48120         (WebCore::borderFillColor):
   48121         (WebCore::RenderFrameSet::paintColumnBorder):
   48122         (WebCore::RenderFrameSet::paintRowBorder):
   48123 
   48124 2007-03-18  David Hyatt  <hyatt (a] apple.com>
   48125 
   48126         Make iframes work properly with frameborder="0".
   48127 
   48128         Reviewed by aroben
   48129 
   48130         * html/HTMLIFrameElement.cpp:
   48131         (WebCore::HTMLIFrameElement::mapToEntry):
   48132         (WebCore::HTMLIFrameElement::parseMappedAttribute):
   48133 
   48134 2007-03-18  David Hyatt  <hyatt (a] apple.com>
   48135 
   48136         Add a 2px border by default to <iframe>s for compatibility with other browsers.
   48137 
   48138         Reviewed by aroben
   48139 
   48140         * css/html4.css:
   48141 
   48142 2007-03-18  David Hyatt  <hyatt (a] apple.com>
   48143 
   48144         Move frame borders out of WebKit and into WebCore.
   48145 
   48146         Reviewed by aroben, olliej
   48147 
   48148         * bridge/mac/FrameViewMac.mm:
   48149         * css/html4.css:
   48150         * html/HTMLFrameSetElement.cpp:
   48151         (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
   48152         (WebCore::HTMLFrameSetElement::mapToEntry):
   48153         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
   48154         (WebCore::HTMLFrameSetElement::attach):
   48155         * html/HTMLFrameSetElement.h:
   48156         (WebCore::HTMLFrameSetElement::hasBorderColor):
   48157         * page/FrameView.cpp:
   48158         (WebCore::FrameViewPrivate::FrameViewPrivate):
   48159         * page/FrameView.h:
   48160         * page/mac/WebCoreFrameBridge.h:
   48161         * platform/graphics/IntRect.h:
   48162         (WebCore::IntRect::topLeft):
   48163         (WebCore::IntRect::topRight):
   48164         (WebCore::IntRect::bottomLeft):
   48165         (WebCore::IntRect::bottomRight):
   48166         * rendering/RenderFrame.cpp:
   48167         (WebCore::RenderFrame::viewCleared):
   48168         * rendering/RenderFrameSet.cpp:
   48169         (WebCore::borderStartEdgeColor):
   48170         (WebCore::borderEndEdgeColor):
   48171         (WebCore::RenderFrameSet::paintColumnBorder):
   48172         (WebCore::RenderFrameSet::paintRowBorder):
   48173         (WebCore::RenderFrameSet::paint):
   48174         * rendering/RenderFrameSet.h:
   48175         * rendering/RenderPartObject.cpp:
   48176         (WebCore::RenderPartObject::viewCleared):
   48177         * rendering/RenderView.cpp:
   48178         (WebCore::RenderView::repaintViewRectangle):
   48179 
   48180 2007-03-17  David Hyatt  <hyatt (a] apple.com>
   48181 
   48182         Make onload do an explicit paint when a top-level document is ready (to ensure that a first paint always
   48183         happens before any timers set by the onload can fire).
   48184 
   48185         Reviewed by aroben
   48186 
   48187         * dom/Document.cpp:
   48188         (WebCore::Document::implicitClose):
   48189         * platform/ScrollView.h:
   48190         * platform/mac/ScrollViewMac.mm:
   48191         (WebCore::ScrollView::update):
   48192 
   48193 2007-03-17  Dave Hyatt  <hyatt (a] apple.com>
   48194 
   48195         Prevent starvation of user input and painting when processing timers.
   48196         If we are already in the processing of a custom timer message, don't allow that
   48197         processing to do another PostMessage.  Force SetTimer to be used instead.
   48198       
   48199         Reviewed by ggaren
   48200 
   48201        * platform/win/SharedTimerWin.cpp:
   48202         (WebCore::TimerWindowWndProc):
   48203         (WebCore::setSharedTimerFireTime):
   48204 
   48205 2007-03-17  Geoffrey Garen  <ggaren (a] apple.com>
   48206 
   48207         Reviewed by Beth Dakin.
   48208 
   48209         Fixed <rdar://problem/5070967> REGRESSION (r20211): Repro crash when 
   48210         closing View Source window
   48211         
   48212         I award myself 0 points, and may God have mercy on my soul.
   48213 
   48214         * bindings/js/kjs_proxy.cpp:
   48215         (WebCore::KJSProxy::~KJSProxy):
   48216 
   48217 2007-03-17  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   48218 
   48219         Not reviewed - gdk build fix.
   48220 
   48221         * platform/gdk/TemporaryLinkStubs.cpp:
   48222         (Pasteboard::writeURL):
   48223 
   48224 2007-03-17  David Hyatt  <hyatt (a] apple.com>
   48225 
   48226         Fix tiny PLT regression.  Don't examine the border/background data for RenderImage when images change
   48227         unless we actually have a border/background.
   48228 
   48229         Reviewed by Brady
   48230 
   48231         * rendering/RenderImage.cpp:
   48232         (WebCore::RenderImage::imageChanged):
   48233 
   48234 2007-03-17  Nikolas Zimmermann  <zimmermann (a] kde.org>
   48235 
   48236         Reviewed by Sam Weinig.
   48237 
   48238         Fixes: http://bugs.webkit.org/show_bug.cgi?id=13046 (CSS styles on hover and focus are broken for <use>)
   48239         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12838 (SVG <use> CSS styles broken)
   48240         Added test: svg/custom/use-css-events.svg
   48241 
   48242         In general this fixes the peepo.co.uk website.
   48243 
   48244         Forgot to pass the actual StyleChange to the recalcStyle() function,
   48245         when calling it on the shadow tree root element.
   48246 
   48247         * ksvg2/svg/SVGUseElement.cpp:
   48248         (WebCore::SVGUseElement::recalcStyle):
   48249 
   48250 2007-03-17  Timothy Hatcher  <timothy (a] apple.com>
   48251 
   48252         Reviewed by Mark Rowe.
   48253 
   48254         Made Version.xcconfig smarter when building for different configurations.
   48255         Now uses the 522+ OpenSource version for Debug and Release, while using the
   48256         full 522.4 version for Production builds. The system prefix is also computed
   48257         based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
   48258 
   48259         * Configurations/Version.xcconfig:
   48260         * Configurations/WebCore.xcconfig:
   48261 
   48262 2007-03-17  Antti Koivisto  <antti (a] apple.com>
   48263 
   48264         Reviewed by Adele.
   48265 
   48266         Fix http://bugs.webkit.org/show_bug.cgi?id=12595
   48267         REGRESSION: Can't add item to cart at lnt.com (JS type error)
   48268         <rdar://problem/4722863>
   48269         
   48270         Emulate Firefox behavior where form elements accessed by a name
   48271         can be accessed with that name later even if the name changes or
   48272         even if element is removed from the document.
   48273         
   48274         This is loosely based on Darin's earlier patch for the same problem but
   48275         is much less expansive. It takes somewhat different approach to more closely
   48276         mimic Firefox behavior. Includes expanded test case.
   48277 
   48278         * bindings/js/JSHTMLFormElementCustom.cpp:
   48279         (WebCore::JSHTMLFormElement::canGetItemsForName):
   48280             Use new the HTMLFormElement::getNamedElements() method
   48281         (WebCore::JSHTMLFormElement::nameGetter):
   48282             Use new the HTMLFormElement::getNamedElements() method
   48283         * html/HTMLFormElement.cpp:
   48284         (WebCore::HTMLFormElement::HTMLFormElement):
   48285         (WebCore::HTMLFormElement::~HTMLFormElement):
   48286         (WebCore::HTMLFormElement::elementForAlias):
   48287         (WebCore::HTMLFormElement::addElementAlias):
   48288             Maintain a map of known element aliases
   48289         (WebCore::HTMLFormElement::getNamedElements):
   48290             Get a list of elements matching the name, based both their
   48291             current names and known aliases (earlier names).
   48292             Keep the alias list in sync.
   48293         * html/HTMLFormElement.h:
   48294 
   48295 2007-03-17  Adele Peterson  <adele (a] apple.com>
   48296 
   48297         Reviewed by Hyatt.
   48298 
   48299         Fix for <rdar://problem/4990050> REGRESSION: onchange gets fired when clicking on a programmatically selected element in a listbox
   48300         http://bugs.webkit.org/show_bug.cgi?id=12725
   48301 
   48302         Test: updated fast/forms/listbox-onchange.html
   48303 
   48304         Added HTMLSelectElement::saveLastSelection that is called before changing a selection that could result
   48305         in onChange being called.  m_lastOnChangeIndex and m_lastOnChangeSelection no longer have to be up-to date all the time, 
   48306         they just have to be up-to-date before we execute an action that may trigger onChange.
   48307 
   48308         * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::setSelectedState): Added.
   48309           The HTMLSelectElement will only set an option's selected state with this method.  This ensures
   48310           that notifyOptionSelected won't get called when the call originates from the select element.
   48311         * html/HTMLOptionElement.h:
   48312 
   48313         * html/HTMLSelectElement.cpp:
   48314         (WebCore::HTMLSelectElement::deselectItems): Calls setSelectedState.
   48315         (WebCore::HTMLSelectElement::setSelectedIndex): ditto. Don't update the last selection variables here.  Scroll to the new selection.
   48316          The scrolling call used to only be in notifyOptionSelected.  There's no reason we shouldn't scroll when the selection is set through
   48317          the HTMLSelectElement.
   48318         (WebCore::HTMLSelectElement::setValue): Call setSelectedIndex to update all options selected state.
   48319         (WebCore::HTMLSelectElement::restoreState): Call setSelectedState.
   48320         (WebCore::HTMLSelectElement::selectAll): Call saveLastSelection before making the selection, and calling onChange.
   48321         (WebCore::HTMLSelectElement::recalcListItems): Call setSelectedState.  Don't need to save selection here anymore, 
   48322          since it will get saved before we call onChange.
   48323         (WebCore::HTMLSelectElement::reset): ditto.
   48324         (WebCore::HTMLSelectElement::dispatchFocusEvent): Added. Call saveLastSelection for menu lists, since onChange can be fired
   48325          on blur.
   48326         (WebCore::HTMLSelectElement::dispatchBlurEvent): Call menuListOnChange.
   48327         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Call saveLastSelection before showing the popup window.
   48328         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):  Call saveLastSelection during mousedown (to prepare for an 
   48329          onchange during mouseup, or after autoscroll).
   48330         (WebCore::HTMLSelectElement::updateListBoxSelection): Call setSelectedState.
   48331 
   48332         (WebCore::HTMLSelectElement::menuListOnChange): Added. Compares the m_lastOnChangeIndex to the selectedIndex().
   48333         (WebCore::HTMLSelectElement::listBoxOnChange): Move the m_lastOnChangeSelection creation to saveLastSelection.
   48334         (WebCore::HTMLSelectElement::saveLastSelection): Added. Sets m_lastOnChangeIndex or m_lastOnChangeSelection.
   48335         * html/HTMLSelectElement.h:
   48336         * platform/PopupMenu.h:
   48337 
   48338 2007-03-16  Oliver Hunt  <oliver (a] apple.com>
   48339 
   48340         Reviewed by Hyatt.
   48341 
   48342         The old canSaveAsWebArchive call was necessary as stand alone
   48343         images used to be rendered by ImageDocument.
   48344 
   48345         Fixes rdar://problem/5061252
   48346 
   48347         * dom/Clipboard.cpp:
   48348         * dom/Clipboard.h:
   48349         (WebCore::Clipboard::setDragHasStarted):
   48350         * page/DragClient.h:
   48351         (WebCore::DragClient::declareAndWriteDragImage):
   48352         * platform/mac/ClipboardMac.mm:
   48353         (WebCore::ClipboardMac::declareAndWriteDragImage):
   48354 
   48355 2007-03-16  Anders Carlsson  <acarlsson (a] apple.com>
   48356 
   48357         Reviewed by Maciej.
   48358 
   48359         <rdar://problem/4869095>
   48360         default content type changed for XMLHttpRequest POSTs changed (breaks Flickrator 0.1 widget)
   48361         
   48362         * xml/xmlhttprequest.cpp:
   48363         (WebCore::XMLHttpRequest::send):
   48364 
   48365 2007-03-16  Brady Eidson  <beidson (a] apple.com>
   48366 
   48367         Rubberstamped by Tim Hatcher
   48368 
   48369         Update the hash table header for Window object properties
   48370 
   48371         * bindings/js/kjs_window.cpp:
   48372 
   48373 2007-03-16  Brady Eidson  <beidson (a] apple.com>
   48374 
   48375         Reviewed by Anders
   48376 
   48377         <rdar://problem/5061826> and
   48378         http://bugs.webkit.org/show_bug.cgi?id=12863
   48379         Implement window.stop()
   48380 
   48381         * bindings/js/kjs_window.cpp:
   48382         (KJS::WindowFunc::callAsFunction): Add case Window::Stop
   48383         * bindings/js/kjs_window.h:
   48384         (KJS::Window::): Add "Stop"
   48385 
   48386 2007-03-16  Geoffrey Garen  <ggaren (a] apple.com>
   48387 
   48388         Reviewed by Brady Eidson.
   48389 
   48390         Fixed dir creation to account for already existing dirs and missing leading
   48391         dirs in path.
   48392         
   48393         * loader/icon/IconDatabase.cpp:
   48394         (WebCore::makeAllDirectories):
   48395 
   48396 2007-03-16  David Hyatt  <hyatt (a] apple.com>
   48397 
   48398         Fix for 13084, assertion failure in the Cache.  Convert the client list
   48399         to a HashCountedSet so that multiple refs and derefs are allowed.
   48400 
   48401         Fix RenderImage so that if it has the same image used as a background/border
   48402         and as the foreground that it will repaint properly (can be tested using
   48403         border-image and a foreground image).
   48404 
   48405         Optimize list marker so that it doesn't waste time in the base class method,
   48406         since list markers don't support background or border images.
   48407 
   48408         Reviewed by andersca
   48409 
   48410         * ChangeLog:
   48411         * loader/CachedResource.cpp:
   48412         (WebCore::CachedResource::ref):
   48413         * loader/CachedResource.h:
   48414         * loader/CachedResourceClientWalker.cpp:
   48415         (WebCore::CachedResourceClientWalker::CachedResourceClientWalker):
   48416         * loader/CachedResourceClientWalker.h:
   48417         * rendering/RenderImage.cpp:
   48418         (WebCore::RenderImage::imageChanged):
   48419         * rendering/RenderListMarker.cpp:
   48420         (WebCore::RenderListMarker::imageChanged):
   48421 
   48422 2007-03-16  Geoffrey Garen  <ggaren (a] apple.com>
   48423 
   48424         Reviewed by Anders Carlsson.
   48425         
   48426         Fixed <rdar://problem/5065399> REGRESSION: leaks in Frame::bindingRootObject 
   48427         seen on buildbot
   48428 
   48429         The problem was that we were initializing the same WebScriptObject twice.
   48430         This caused it to leak its original set of ivars.
   48431         
   48432         I think some refactoring could prevent this situation from arising in the
   48433         first place, but I'm just adding a check at the call site for now, to do 
   48434         the simplest thing.
   48435 
   48436         * bindings/objc/WebScriptObject.mm:
   48437         (-[WebScriptObject _setImp:originRootObject:rootObject:]): Added ASSERTs
   48438         against multiple calls.
   48439 
   48440         * bindings/objc/WebScriptObjectPrivate.h: Renamed _initializeWithObjectImp
   48441         to setImp because "init" vs "initialize" was a too subtle indication that
   48442         one was a Cocoa initializer and one was not.
   48443 
   48444 2007-03-16  Lars Knoll <lars (a] trolltech.com>
   48445 
   48446         don't use #import in .cpp files.
   48447 
   48448         * editing/qt/EditorQt.cpp:
   48449 
   48450 2007-03-16  Lars Knoll <lars (a] trolltech.com>
   48451 
   48452         Fix the Qt build once again.
   48453 
   48454         * platform/qt/PasteboardQt.cpp:
   48455         (WebCore::Pasteboard::Pasteboard):
   48456         (WebCore::Pasteboard::writeSelection):
   48457         (WebCore::Pasteboard::plainText):
   48458         (WebCore::Pasteboard::documentFragment):
   48459         (WebCore::Pasteboard::writeURL):
   48460         (WebCore::Pasteboard::writeImage):
   48461         (WebCore::Pasteboard::clear):
   48462 
   48463 2007-03-15  Shrikant Gangoda  <shrikant.gangoda (a] celunite.com>
   48464 
   48465         Gdk build fix.
   48466 
   48467         * loader/gdk/FrameLoaderClientGdk.cpp:
   48468         (WebCore::FrameLoaderClientGdk::blockedError):
   48469         * loader/gdk/FrameLoaderClientGdk.h:
   48470 
   48471 2007-03-15  Beth Dakin  <bdakin (a] apple.com>
   48472 
   48473         Reviewed by Geoff.
   48474 
   48475         Fix for http://bugs.webkit.org/show_bug.cgi?id=13088 REGRESSION
   48476         (r19761-19779): Copy image no longer includes image address 
   48477         (rdar://5067927)
   48478 
   48479         writeURL() does not need an isImage parameter. Now that it accepts 
   48480         the types as a parameter, we can just declare the appropriate image 
   48481         types within writeImage and send them to writeURL(). Also, 
   48482         declaring the types twice is what broke this.
   48483 
   48484         * platform/Pasteboard.h:
   48485         * platform/mac/PasteboardMac.mm:
   48486         (WebCore::Pasteboard::writeURL):
   48487         (WebCore::Pasteboard::writeImage):
   48488 
   48489 2007-03-15  Adele Peterson  <adele (a] apple.com>
   48490 
   48491         Reviewed by Kevin Decker.
   48492 
   48493         Fix for <rdar://problem/4926179> Text in menulist control should never update if menu is open
   48494 
   48495         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
   48496           Only setTextFromOption if the menu isn't visible.
   48497 
   48498 2007-03-15  Brady Eidson  <beidson (a] apple.com>
   48499 
   48500         Reviewed by Oliver
   48501 
   48502         A few platform specific tweaks
   48503 
   48504         * platform/cf/RetainPtr.h:
   48505         (WebCore::RetainPtr::releaseRef): Fixed releaseRef to work with CF
   48506         
   48507         * platform/network/ResourceHandle.h: Added a "releaseRef" style call
   48508 
   48509 2007-03-15  Maciej Stachowiak  <mjs (a] apple.com>
   48510 
   48511         Reviewed by Geoff and Steve.
   48512 
   48513         * config.h: Remove unneeded hack.
   48514 
   48515 2007-03-15  Justin Garcia  <justin.garcia (a] apple.com>
   48516 
   48517         Reviewed by john
   48518         
   48519         <rdar://problem/5062376> 
   48520         REGRESSION: In Mail and Gmail, can't change alignment to text after it has been applied
   48521         
   48522         Bring back the remove step in applyBlockStyle.  It's 
   48523         necessary because addBlockStyleIfNeeded assumes that 
   48524         the properties it adds aren't already on the block that 
   48525         it adds them to.
   48526 
   48527         * editing/ApplyStyleCommand.cpp:
   48528         (WebCore::ApplyStyleCommand::applyBlockStyle): 
   48529         Bring back the remove step (added a testcase).
   48530         Don't do the add step if m_removeOnly is true (no testcase
   48531         because there aren't any clients using removeOnly functionality
   48532         to remove styles yet, only styled elemets).
   48533         Moved the code for creating new blocks up one level
   48534         to this function so that we can pass blocks to removeCSSStyle.
   48535         When converting VisiblePositions to indices and vice versa,
   48536         use the highest node in the shadow tree if we're in one as
   48537         the scope (working on a testcase).
   48538         (WebCore::ApplyStyleCommand::addBlockStyle): Moved code to
   48539         applyBlockStyle.
   48540         * editing/ApplyStyleCommand.h: 
   48541 
   48542 2007-03-15  Brady Eidson  <beidson (a] apple.com>
   48543 
   48544         Reviewed by Maciej
   48545 
   48546         <rdar://problem/4429701>
   48547         Implements a port blocking black list that matches Firefox's
   48548 
   48549         * loader/FrameLoader.cpp:
   48550         (WebCore::FrameLoader::blockedError): Call through to the client for blockedError 
   48551         * loader/FrameLoader.h:
   48552 
   48553         * loader/FrameLoaderClient.h: Get the "port blocked" error for the current platform
   48554 
   48555         * loader/ResourceLoader.cpp:
   48556         (WebCore::ResourceLoader::wasBlocked): ResourceHandleClient method to pass on the didFail(error)
   48557         (WebCore::ResourceLoader::blockedError): Following the pattern of "CancelledError()", get the 
   48558           error to fail with for the didFail() call
   48559         * loader/ResourceLoader.h:
   48560 
   48561         * platform/graphics/svg/SVGImageEmptyClients.h:
   48562         (WebCore::SVGEmptyFrameLoaderClient::blockedError): Added stub
   48563 
   48564         * platform/network/ResourceHandle.cpp:
   48565         (WebCore::ResourceHandle::create): If the port is blocked, create the handle but schedule it for
   48566           deferred failure on a timer
   48567         (WebCore::ResourceHandle::scheduleBlockedFailure): Do the timer scheduling
   48568         (WebCore::ResourceHandle::fireBlockedFailure): Fire the timer here
   48569         (WebCore::ResourceHandle::portAllowed): Implements checking of Mozilla's
   48570         * platform/network/ResourceHandle.h:
   48571         * platform/network/ResourceHandleClient.h:
   48572         (WebCore::ResourceHandleClient::wasBlocked): Virtual for clients to get the "blocked" message
   48573 
   48574 2007-03-15  Beth Dakin  <bdakin (a] apple.com>
   48575 
   48576         Reviewed by Hyatt.
   48577 
   48578         Fix for <rdar://problem/5065396> REGRESSION: leaks in 
   48579         RenderBlock::layoutInlineChildren seen on buildbot
   48580 
   48581         This leak appeared after http://trac.webkit.org/projects/webkit/
   48582         changeset/20188. This change shifted line boxes around in 
   48583         removeChild(). But since removeChild() calls 
   48584         setNeedsLayoutAndMinMaxRecalc(), all of the line boxes will be 
   48585         removed once we actually lay out anyway. So this patch fixes the 
   48586         leak by deleting the line boxes instead of shifting them around. 
   48587 
   48588         * editing/IndentOutdentCommand.cpp:
   48589         (WebCore::IndentOutdentCommand::outdentParagraph): Call into 
   48590         updateLayout(). This fixes an assertion I got in editing/
   48591         execCommand/4976800.html This is very similar to the line box fix I 
   48592         made recently (http://trac.webkit.org/projects/webkit/changeset/
   48593         20177). We need to update layout before relying on VisiblePositions 
   48594         after removing a node.
   48595         * rendering/RenderBlock.cpp:
   48596         (WebCore::RenderBlock::deleteLinesForBlock): New helper function 
   48597         since this functionality is needed in three places now.
   48598         (WebCore::RenderBlock::makeChildrenNonInline): Call into new 
   48599         deleteLinesForBlock().
   48600         (WebCore::RenderBlock::removeChild): Same.
   48601         * rendering/RenderBlock.h:
   48602 
   48603 2007-03-15  Timothy Hatcher  <timothy (a] apple.com>
   48604 
   48605         Reviewed by John.
   48606 
   48607         * Factored out most of our common build settings into .xcconfig files. Anything that was common in
   48608           each build configuration was factored out into the shared .xcconfig file.
   48609         * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
   48610         * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
   48611         * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
   48612 
   48613         * Configurations/Base.xcconfig: Added.
   48614         * Configurations/DebugRelease.xcconfig: Added.
   48615         * Configurations/Version.xcconfig: Added.
   48616         * Configurations/WebCore.xcconfig: Added.
   48617         * Info.plist:
   48618         * WebCore.xcodeproj/project.pbxproj:
   48619 
   48620 2007-03-15  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   48621 
   48622         Not reviewed - gdk build fixes.
   48623 
   48624         * platform/gdk/EditorClientGdk.cpp:
   48625         (WebCore::EditorClientGdk::handleKeypress):
   48626         * platform/graphics/cairo/ImageSourceCairo.cpp:
   48627         (WebCore::ImageSource::setData):
   48628         * platform/graphics/gdk/ImageGdk.cpp:
   48629         (WebCore::Image::loadPlatformResource):
   48630 
   48631 2007-03-14  Justin Garcia  <justin.garcia (a] apple.com>
   48632 
   48633         Reviewed by john
   48634         
   48635         ~2x speed up of 5k rich text paste:
   48636         http://shakespeare.mit.edu/hamlet/full.html        
   48637 
   48638         * editing/ReplaceSelectionCommand.cpp:
   48639         (WebCore::ReplaceSelectionCommand::doApply): Remove the top 
   48640         level style span if it's unnecessary before inserting
   48641         into the document, it's faster than doing it after.
   48642         * editing/ReplaceSelectionCommand.h: Exposed 
   48643         ReplacementFragment::removeNodePreservingChildren so that
   48644         the style span can be removed using non-undoable removes,
   48645         like the rest of the removes done on the ReplacementFragment.
   48646         * editing/markup.cpp:
   48647         (WebCore::createMarkup): Make the style span the top level
   48648         element, otherwise it's useless.  This also facilitates the
   48649         optimization mentioned above.
   48650         When including markup for a fully selected root, include markup
   48651         for all the nodes beneath that fully selected root, to preserve 
   48652         the structure and appearance of the copied markup.  Did this
   48653         by merging with the code for adding markup for descendants of
   48654         special commonAncestorBlocks.
   48655 
   48656 2007-03-15  Beth Dakin  <bdakin (a] apple.com>
   48657 
   48658         Rubber-stamped by Adele.
   48659 
   48660         Rolling out http://trac.webkit.org/projects/webkit/changeset/20148 
   48661         (which is a fix for http://bugs.webkit.org/show_bug.cgi?id=12595 
   48662         and rdar://4722863) because it causes a horrible memory-trasher. 
   48663 
   48664         * bindings/js/JSHTMLFormElementCustom.cpp:
   48665         (WebCore::JSHTMLFormElement::canGetItemsForName):
   48666         (WebCore::JSHTMLFormElement::nameGetter):
   48667         * bindings/js/kjs_dom.cpp:
   48668         (KJS::):
   48669         (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
   48670         (KJS::DOMNamedNodesCollection::lengthGetter):
   48671         (KJS::DOMNamedNodesCollection::indexGetter):
   48672         (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
   48673         * bindings/js/kjs_dom.h:
   48674         (KJS::DOMNamedNodesCollection::classInfo):
   48675         * bindings/js/kjs_html.cpp:
   48676         (KJS::JSHTMLCollection::getNamedItems):
   48677         * dom/ChildNodeList.cpp:
   48678         (WebCore::ChildNodeList::ChildNodeList):
   48679         (WebCore::ChildNodeList::length):
   48680         (WebCore::ChildNodeList::item):
   48681         (WebCore::ChildNodeList::nodeMatches):
   48682         * dom/ChildNodeList.h:
   48683         * dom/NameNodeList.cpp:
   48684         (WebCore::NameNodeList::NameNodeList):
   48685         (WebCore::NameNodeList::item):
   48686         (WebCore::NameNodeList::nodeMatches):
   48687         * dom/NameNodeList.h:
   48688         (WebCore::NameNodeList::rootNodeAttributeChanged):
   48689         * dom/Node.cpp:
   48690         (WebCore::TagNodeList::TagNodeList):
   48691         (WebCore::TagNodeList::nodeMatches):
   48692         (WebCore::Node::registerNodeList):
   48693         (WebCore::Node::unregisterNodeList):
   48694         * dom/Node.h:
   48695         * dom/NodeList.cpp:
   48696         (WebCore::NodeList::NodeList):
   48697         (WebCore::NodeList::~NodeList):
   48698         (WebCore::NodeList::recursiveLength):
   48699         (WebCore::NodeList::itemForwardsFromCurrent):
   48700         (WebCore::NodeList::itemBackwardsFromCurrent):
   48701         (WebCore::NodeList::recursiveItem):
   48702         (WebCore::NodeList::itemWithName):
   48703         (WebCore::NodeList::rootNodeChildrenChanged):
   48704         * dom/NodeList.h:
   48705         (WebCore::NodeList::rootNodeAttributeChanged):
   48706         * html/HTMLFormElement.cpp:
   48707         (WebCore::HTMLFormElement::HTMLFormElement):
   48708         (WebCore::HTMLFormElement::~HTMLFormElement):
   48709         (WebCore::HTMLFormElement::formData):
   48710         (WebCore::HTMLFormElement::parseMappedAttribute):
   48711         (WebCore::HTMLFormElement::removeFormElement):
   48712         * html/HTMLFormElement.h:
   48713         * html/HTMLGenericFormElement.cpp:
   48714         (WebCore::HTMLGenericFormElement::parseMappedAttribute):
   48715         (WebCore::HTMLGenericFormElement::insertedIntoTree):
   48716         * html/HTMLGenericFormElement.h:
   48717         * html/HTMLInputElement.cpp:
   48718         (WebCore::HTMLInputElement::parseMappedAttribute):
   48719 
   48720 2007-03-15  Geoffrey Garen  <ggaren (a] apple.com>
   48721 
   48722         Added an assert to help catch a bug. Hopefully someone will hit it!
   48723         
   48724         * bindings/js/kjs_proxy.cpp:
   48725         (WebCore::KJSProxy::~KJSProxy):
   48726 
   48727 2007-03-14  Oliver Hunt  <oliver (a] apple.com>
   48728 
   48729         Reviewed by Adele.
   48730 
   48731         Fix for rdar://problem/5061737.
   48732         
   48733         This was a regression from the original Objective-C -> C++ conversion
   48734         for the drag logic.  We don't need to call Range::startNode as we just
   48735         need the document that contains the range.   
   48736 
   48737         * page/DragController.cpp:
   48738         (WebCore::documentFragmentFromDragData):
   48739 
   48740 2007-03-14  Mitz Pettel  <mitz (a] webkit.org>
   48741 
   48742         Reviewed by Hyatt.
   48743 
   48744         - http://bugs.webkit.org/show_bug.cgi?id=13071
   48745           REGRESSION: Plain text files no longer wrap lines longer than the width of the browser window
   48746 
   48747         Test: fast/loader/text-document-wrapping.html
   48748 
   48749         * loader/TextDocument.cpp:
   48750         (WebCore::TextTokenizer::write): Specified word-wrap:break-word for the <pre> element.
   48751 
   48752 2007-03-14  Mitz Pettel  <mitz (a] webkit.org>
   48753 
   48754         Reviewed by Hyatt.
   48755 
   48756         - fix http://bugs.webkit.org/show_bug.cgi?id=13072
   48757           REGRESSION (r15617): white-space: pre-wrap breaks off the last character of a wide word
   48758 
   48759         Test: fast/text/whitespace/pre-wrap-last-char.html
   48760 
   48761         * rendering/bidi.cpp:
   48762         (WebCore::RenderBlock::findNextLineBreak): Undid the change from r15617.
   48763 
   48764 2007-03-14  David Hyatt  <hyatt (a] apple.com>
   48765 
   48766         Add asserts to help catch double refs and double derefs of CachedResources.
   48767 
   48768         Reviewed by mjs
   48769 
   48770         * loader/CachedResource.cpp:
   48771         (WebCore::CachedResource::ref):
   48772         (WebCore::CachedResource::deref):
   48773 
   48774 2007-03-14  Alice Liu  <alice.liu (a] apple.com>
   48775 
   48776         Rubber-stamped by Hyatt.
   48777 
   48778         Adding null check to prevent the crash that happens on 2nd run of iBench HTML load test
   48779 
   48780         * loader/icon/IconDataCache.cpp:
   48781         (WebCore::IconDataCache::writeToDatabase):
   48782 
   48783 === Safari-5522.4 ===
   48784 
   48785 2007-03-14  Adele Peterson  <adele (a] apple.com>
   48786 
   48787         Reviewed by Adam.
   48788 
   48789         Fix for <rdar://problem/5062898> REGRESSION: autocomplete window in text fields doesn't come up
   48790 
   48791         When we moved the initialization of a bunch of variables in the HTMLFormElement constructor, m_autocomplete accidently got initialized to false.
   48792 
   48793         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::HTMLFormElement):
   48794 
   48795 2007-03-14  Steve Falkenburg  <sfalken (a] apple.com>
   48796 
   48797         Reviewed by Adam.
   48798 
   48799         Added missing null check in case this is called on a subframe
   48800         that hasn't started loading.
   48801 
   48802         * page/Frame.cpp:
   48803         (WebCore::Frame::setMarkedTextMatchesAreHighlighted): Check for a null document.
   48804 
   48805 2007-03-14  Antti Koivisto  <antti (a] apple.com>
   48806 
   48807         Reviewed by Geoff.
   48808 
   48809         Fix http://bugs.webkit.org/show_bug.cgi?id=13060
   48810         REGRESSION: Repro ASSERT failure in Cache::adjustSize running layout tests
   48811         <rdar://5060208>
   48812         
   48813         Script evaluation may have dereffed the CachedScript object already, causing double deref and
   48814         eventually m_liveResourcesSize underflow.
   48815 
   48816         * html/HTMLScriptElement.cpp:
   48817         (WebCore::HTMLScriptElement::notifyFinished):
   48818 
   48819 2007-03-14  Adele Peterson  <adele (a] apple.com>
   48820 
   48821         Reviewed by Darin.
   48822 
   48823         Added InsertTab, InsertBacktab, InsertLineBreak, and InsertNewline to the editing command table.
   48824         Added Event parameter to execCommand, and to all of the enabled and exec functions.  Right now,
   48825         the event is only used by the newly added commands.  But in the future, many (and possibly all) of
   48826         these editing commands will need to consider the event so they are applied to the correct selection.
   48827 
   48828         * WebCore.exp:
   48829         * editing/Editor.cpp:
   48830         (WebCore::execCopy):
   48831         (WebCore::execCut):
   48832         (WebCore::execDelete):
   48833         (WebCore::execBackwardDelete):
   48834         (WebCore::execForwardDelete):
   48835         (WebCore::execMoveBackward):
   48836         (WebCore::execMoveBackwardAndModifySelection):
   48837         (WebCore::execMoveUpByPageAndModifyCaret):
   48838         (WebCore::execMoveDown):
   48839         (WebCore::execMoveDownAndModifySelection):
   48840         (WebCore::execMoveForward):
   48841         (WebCore::execMoveForwardAndModifySelection):
   48842         (WebCore::execMoveDownByPageAndModifyCaret):
   48843         (WebCore::execMoveLeft):
   48844         (WebCore::execMoveLeftAndModifySelection):
   48845         (WebCore::execMoveRight):
   48846         (WebCore::execMoveRightAndModifySelection):
   48847         (WebCore::execMoveToBeginningOfDocument):
   48848         (WebCore::execMoveToBeginningOfDocumentAndModifySelection):
   48849         (WebCore::execMoveToBeginningOfSentence):
   48850         (WebCore::execMoveToBeginningOfSentenceAndModifySelection):
   48851         (WebCore::execMoveToBeginningOfLine):
   48852         (WebCore::execMoveToBeginningOfLineAndModifySelection):
   48853         (WebCore::execMoveToBeginningOfParagraph):
   48854         (WebCore::execMoveToBeginningOfParagraphAndModifySelection):
   48855         (WebCore::execMoveToEndOfDocument):
   48856         (WebCore::execMoveToEndOfDocumentAndModifySelection):
   48857         (WebCore::execMoveToEndOfSentence):
   48858         (WebCore::execMoveToEndOfSentenceAndModifySelection):
   48859         (WebCore::execMoveToEndOfLine):
   48860         (WebCore::execMoveToEndOfLineAndModifySelection):
   48861         (WebCore::execMoveToEndOfParagraph):
   48862         (WebCore::execMoveToEndOfParagraphAndModifySelection):
   48863         (WebCore::execMoveParagraphBackwardAndModifySelection):
   48864         (WebCore::execMoveParagraphForwardAndModifySelection):
   48865         (WebCore::execMoveUp):
   48866         (WebCore::execMoveUpAndModifySelection):
   48867         (WebCore::execMoveWordBackward):
   48868         (WebCore::execMoveWordBackwardAndModifySelection):
   48869         (WebCore::execMoveWordForward):
   48870         (WebCore::execMoveWordForwardAndModifySelection):
   48871         (WebCore::execMoveWordLeft):
   48872         (WebCore::execMoveWordLeftAndModifySelection):
   48873         (WebCore::execMoveWordRight):
   48874         (WebCore::execMoveWordRightAndModifySelection):
   48875         (WebCore::execPaste):
   48876         (WebCore::execSelectAll):
   48877         (WebCore::execToggleBold):
   48878         (WebCore::execToggleItalic):
   48879         (WebCore::execRedo):
   48880         (WebCore::execUndo):
   48881         (WebCore::execInsertTab):
   48882         (WebCore::execInsertBacktab):
   48883         (WebCore::execInsertNewline):
   48884         (WebCore::execInsertLineBreak):
   48885         (WebCore::enabled):
   48886         (WebCore::canPaste):
   48887         (WebCore::hasEditableSelection):
   48888         (WebCore::hasEditableRangeSelection):
   48889         (WebCore::hasRangeSelection):
   48890         (WebCore::hasRichlyEditableSelection):
   48891         (WebCore::canRedo):
   48892         (WebCore::canUndo):
   48893         (WebCore::CommandEntry::):
   48894         (WebCore::Editor::toggleBold):
   48895 
   48896         (WebCore::Editor::execCommand): Added optional event parameter.
   48897         (WebCore::Editor::insertText): Added.  Calls handleTextInputEvent.
   48898         (WebCore::Editor::insertTextWithoutSendingTextEvent): Renamed from insertText.
   48899          Performs the actual insertion without dispatching any event.
   48900         * editing/Editor.h:
   48901         * page/EventHandler.cpp: (WebCore::EventHandler::defaultTextInputEventHandler):
   48902           Call insertTextWithoutSendingTextEvent.
   48903 
   48904 2007-03-14  Justin Garcia  <justin.garcia (a] apple.com>
   48905 
   48906         Reviewed by darin
   48907         
   48908         ~3x speedup pasting 5k lines of rich text:
   48909         http://shakespeare.mit.edu/hamlet/full.html
   48910         ~2x speedup pasting 10k lines of plain text
   48911         
   48912         * css/CSSComputedStyleDeclaration.cpp:
   48913         (WebCore::computedStyle): Added for convenience.
   48914         * css/CSSComputedStyleDeclaration.h:
   48915         * editing/ReplaceSelectionCommand.cpp:
   48916         (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
   48917         The code that pushed down the top level style span had
   48918         a bug in it that made it do unnecessary work.  Instead of
   48919         fixing the bug I removed the code because it was used to 
   48920         help see more redundancies in second level style spans, but 
   48921         createMarkup now *only* creates a top level style span.
   48922         Only remove redundant styles from style spans and only remove
   48923         unstyled elements if they are style spans.  FF doesn't
   48924         remove redundant styles from elements, or remove redundant 
   48925         font tags on copy/paste.  We could offer this functionality 
   48926         through a separate "cleanup" command.
   48927         * editing/markup.cpp:
   48928         (WebCore::createMarkup): Only add markup for ancestors of 
   48929         lastClosed if we're including markup for acommonAncestorBlock 
   48930         (we do this for commonAncestorBlocks like tables and lists),
   48931         otherwise it's unnecessary/redundant.
   48932 
   48933 2007-03-14  Anders Carlsson  <acarlsson (a] apple.com>
   48934 
   48935         Reviewed by Ada.
   48936 
   48937         Make sure to call ResourceLoader::didReceiveData to ensure that there's a shared buffer with the resource
   48938         data, since SubresourceLoaderClients now make use of that buffer.
   48939         
   48940         * loader/SubresourceLoader.cpp:
   48941         (WebCore::SubresourceLoader::didReceiveData):
   48942 
   48943 2007-03-14  Administrator  <acarlsson (a] apple.com>
   48944 
   48945         Get the size from the shared buffer.
   48946         
   48947         * platform/graphics/cg/ImageSourceCG.cpp:
   48948         (WebCore::ImageSource::setData):
   48949         * platform/graphics/cg/PDFDocumentImage.cpp:
   48950         (WebCore::PDFDocumentImage::dataChanged):
   48951 
   48952 2007-03-14  Mitz Pettel  <mitz (a] webkit.org>
   48953 
   48954         Reviewed by Hyatt, thumbs up by Darin.
   48955 
   48956         - fix http://bugs.webkit.org/show_bug.cgi?id=12782
   48957           Reproducible crash in BidiContext::deref
   48958 
   48959         Test: fast/dynamic/anonymous-block-orphaned-lines.html
   48960 
   48961         * rendering/InlineBox.cpp:
   48962         (WebCore::InlineBox::root): Added an assertion that we return a root inline box.
   48963         * rendering/RenderBlock.cpp:
   48964         (WebCore::RenderBlock::removeChild): Added code to adopt the line boxes of
   48965         anonymous blocks being destroyed instead of leaving them orphaned, which
   48966         is what caused this crash. The boxes will be deleted on the next layout, but
   48967         this ensures consistency in the mean time.
   48968 
   48969 2007-03-14  Lars Knoll <lars (a] trolltech.com>
   48970 
   48971         Reviewed by Antti.
   48972 
   48973         Fix the Qt build.
   48974         Add a getter to SharedBuffer that returns a reference to the internal
   48975         Vector to avoid an extra copy of the data.
   48976 
   48977         * platform/SharedBuffer.h:
   48978         (WebCore::SharedBuffer::buffer):
   48979         * platform/graphics/qt/ImageQt.cpp:
   48980         (WebCore::Image::loadPlatformResource):
   48981         * platform/graphics/qt/ImageSourceQt.cpp:
   48982         (WebCore::detectImageFormat):
   48983         (WebCore::createDecoder):
   48984         (WebCore::ImageSource::setData):
   48985 
   48986 2007-03-14  Antti Koivisto  <antti (a] apple.com>
   48987 
   48988         Reviewed by Mitz.
   48989         
   48990         Fix <rdar://problem/5058774>
   48991         REGRESSION: In Mail, caret appears oversized when typing in a To Do note
   48992         
   48993         Horizontal and vertical were switched. Was regression from
   48994         http://trac.webkit.org/projects/webkit/changeset/20103
   48995 
   48996         * rendering/RootInlineBox.cpp:
   48997         (WebCore::RootInlineBox::addHighlightOverflow):
   48998 
   48999 2007-03-14  David Hyatt  <hyatt (a] apple.com>
   49000 
   49001         Tweak the data() functions of stylesheets and scripts to be internally consistent.
   49002 
   49003         * loader/CachedCSSStyleSheet.cpp:
   49004         (WebCore::CachedCSSStyleSheet::data):
   49005         * loader/CachedScript.cpp:
   49006         (WebCore::CachedScript::data):
   49007         * loader/CachedXSLStyleSheet.cpp:
   49008         (WebCore::CachedXSLStyleSheet::data):
   49009 
   49010 2007-03-14  David Hyatt  <hyatt (a] apple.com>
   49011 
   49012         Fix Radar 5050688.  
   49013 
   49014         For large animated GIFs, destroy and recreate the source for every animation frame.  This keeps
   49015         the memory consumption down while giant images are animating.
   49016 
   49017         Reviewed by andersca
   49018 
   49019         * platform/graphics/BitmapImage.cpp:
   49020         (WebCore::BitmapImage::BitmapImage):
   49021         (WebCore::BitmapImage::destroyDecodedData):
   49022         (WebCore::BitmapImage::dataChanged):
   49023         (WebCore::BitmapImage::advanceAnimation):
   49024         * platform/graphics/BitmapImage.h:
   49025 
   49026 2007-03-14  David Hyatt  <hyatt (a] apple.com>
   49027 
   49028         Make sure to use CFDataCreateWithBytesNoCopy where we can.
   49029 
   49030         Reviewed by andersca
   49031 
   49032         * platform/graphics/cg/ImageSourceCG.cpp:
   49033         (WebCore::ImageSource::setData):
   49034         * platform/graphics/cg/PDFDocumentImage.cpp:
   49035         (WebCore::PDFDocumentImage::dataChanged):
   49036 
   49037 2007-03-13  David Hyatt  <hyatt (a] apple.com>
   49038 
   49039         Fix for bugzilla bug 13050 and also radar p1 5050645.
   49040 
   49041         This patch reworks resource loading to avoid having redundant buffers in the icon database and in cached
   49042         images in the WebCore cache.  It also avoids overcopying in top-level image documents and in the icon
   49043         database.
   49044 
   49045         There is now only one SharedBuffer for a resource and everybody observes that buffer now instead of ever
   49046         making their own.  Even ImageIO uses the SharedBuffer while decoding.
   49047 
   49048         The page in 13050 dropped from 145mb down to 45mb of memory use with this change for a stunning savings
   49049         of 100mb.
   49050 
   49051         Reviewed by olliej, mjs
   49052 
   49053         * WebCore.exp:
   49054         * loader/CachedCSSStyleSheet.cpp:
   49055         (WebCore::CachedCSSStyleSheet::data):
   49056         * loader/CachedCSSStyleSheet.h:
   49057         * loader/CachedImage.cpp:
   49058         (WebCore::CachedImage::data):
   49059         * loader/CachedImage.h:
   49060         * loader/CachedResource.cpp:
   49061         (WebCore::CachedResource::CachedResource):
   49062         (WebCore::CachedResource::~CachedResource):
   49063         * loader/CachedResource.h:
   49064         (WebCore::CachedResource::data):
   49065         * loader/CachedScript.cpp:
   49066         (WebCore::CachedScript::data):
   49067         * loader/CachedScript.h:
   49068         * loader/CachedXSLStyleSheet.cpp:
   49069         (WebCore::CachedXSLStyleSheet::data):
   49070         * loader/CachedXSLStyleSheet.h:
   49071         * loader/DocLoader.cpp:
   49072         (WebCore::DocLoader::checkCacheObjectStatus):
   49073         * loader/ImageDocument.cpp:
   49074         (WebCore::ImageTokenizer::writeRawData):
   49075         (WebCore::ImageTokenizer::finish):
   49076         * loader/icon/IconDataCache.cpp:
   49077         (WebCore::IconDataCache::setImageData):
   49078         (WebCore::IconDataCache::writeToDatabase):
   49079         * loader/icon/IconDataCache.h:
   49080         * loader/icon/IconDatabase.cpp:
   49081         (WebCore::IconDatabase::imageDataForIconURL):
   49082         (WebCore::IconDatabase::iconForPageURL):
   49083         (WebCore::IconDatabase::setIconDataForIconURL):
   49084         (WebCore::IconDatabase::setHaveNoIconForIconURL):
   49085         (WebCore::IconDatabase::imageDataForIconURLQuery):
   49086         * loader/icon/IconDatabase.h:
   49087         * loader/icon/IconLoader.cpp:
   49088         (WebCore::IconLoader::startLoading):
   49089         (WebCore::IconLoader::didReceiveResponse):
   49090         (WebCore::IconLoader::didReceiveData):
   49091         (WebCore::IconLoader::didFail):
   49092         (WebCore::IconLoader::finishLoading):
   49093         (WebCore::IconLoader::clearLoadingState):
   49094         * loader/icon/IconLoader.h:
   49095         * loader/icon/SQLStatement.cpp:
   49096         (WebCore::SQLStatement::getColumnBlobAsVector):
   49097         (WebCore::SQLStatement::isExpired):
   49098         * loader/icon/SQLStatement.h:
   49099         * loader/loader.cpp:
   49100         (WebCore::Loader::didFinishLoading):
   49101         (WebCore::Loader::didReceiveData):
   49102         * page/mac/WebCoreFrameBridge.mm:
   49103         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
   49104         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
   49105         * platform/SharedBuffer.h:
   49106         (WebCore::SharedBuffer::isEmpty):
   49107         * platform/graphics/BitmapImage.cpp:
   49108         (WebCore::BitmapImage::destroyDecodedData):
   49109         (WebCore::BitmapImage::dataChanged):
   49110         * platform/graphics/BitmapImage.h:
   49111         * platform/graphics/Image.cpp:
   49112         (WebCore::Image::setData):
   49113         * platform/graphics/Image.h:
   49114         (WebCore::Image::dataChanged):
   49115         (WebCore::Image::data):
   49116         * platform/graphics/ImageSource.h:
   49117         * platform/graphics/cg/ImageSourceCG.cpp:
   49118         (WebCore::ImageSource::setData):
   49119         * platform/graphics/cg/PDFDocumentImage.cpp:
   49120         (WebCore::PDFDocumentImage::dataChanged):
   49121         * platform/graphics/cg/PDFDocumentImage.h:
   49122         * platform/graphics/mac/ImageMac.mm:
   49123         (WebCore::Image::loadPlatformResource):
   49124         * platform/graphics/svg/SVGImage.cpp:
   49125         (WebCore::SVGImage::setData):
   49126         * platform/mac/PasteboardMac.mm:
   49127         (WebCore::fileWrapperForImage):
   49128 
   49129 2007-03-13  Justin Garcia  <justin.garcia (a] apple.com>
   49130 
   49131         Reviewed by darin
   49132         
   49133         <rdar://problem/5046875> 
   49134         Gmail Editor: Applying alignment to selected text in message also applies alignment to signature
   49135 
   49136         * editing/ApplyStyleCommand.cpp:
   49137         (WebCore::ApplyStyleCommand::doApply): Don't call applyBlockStyle unless
   49138         there is a block style to apply.
   49139         (WebCore::ApplyStyleCommand::applyBlockStyle): Don't do the remove step.
   49140         It was unnecessary and removed properties from blocks that could contain 
   49141         content outside the range being operated on (added a testcase).
   49142         (WebCore::ApplyStyleCommand::addBlockStyleIfNeeded): Used an early return
   49143         instead of if-nesting.
   49144         * editing/ApplyStyleCommand.h:
   49145         * editing/CompositeEditCommand.cpp:
   49146         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
   49147         Return the new block, if one was created.  Use moveParagraphs to move
   49148         paragraphs into the new block, instead of moving nodes.  The old code moved
   49149         too much (added a testcase).
   49150         * editing/CompositeEditCommand.h:
   49151 
   49152 2007-03-13  Oliver Hunt  <oliver (a] apple.com>
   49153 
   49154         Reviewed by Brady.
   49155 
   49156         To fix <rdar://problem/5044366> we now pass a NSString
   49157         representation of the URL extracted with _web_originalDataAsString
   49158         instead of relying on [NSURL absoluteString] in the bridge
   49159 
   49160         * page/mac/WebCoreFrameBridge.h:
   49161         * page/mac/WebCoreFrameBridge.mm:
   49162         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
   49163 
   49164 2007-03-13  Brady Eidson  <beidson (a] apple.com>
   49165 
   49166         Reviewed by Anders
   49167 
   49168         <rdar://problem/5048818> - REGRESSION: Incompletely loaded resources being saved to the object cache
   49169 
   49170         Due to a subtle change in loader behavior back in 10904, we would stop all loaders before calling 
   49171         didFail() on them in the Cache loader.  As a result, we basically cleared all of the Subresource Loaders 
   49172         out of the Cache loader before more properly failing them as errored out.  The result?  Partially loaded
   49173         resources being cached.
   49174         
   49175         Since Loader::didFail() both calls error() on the object *and* removes the loader, the solution is to call 
   49176         didFail() for all cancelled loaders instead of *only* removing them from the set of active loaders.
   49177         
   49178         In addition, pages that didn't completely load were being saved to the back/forward cache.  To fix that,
   49179         I added a null check on the DocumentLoader's error to see if the page ended in an error, or did indeed 
   49180         completely load.
   49181 
   49182         Note that the layout test for this - if possible - will require other enhancements including possibly adding
   49183         support for window.stop().  That task is documented in <rdar://problem/5061826>
   49184 
   49185         * loader/FrameLoader.cpp:
   49186         (WebCore::FrameLoader::provisionalLoadStarted): Fixed a few bugs relating to my original BFCache rewrite to
   49187           more perfectly restore the original behavior - including only caching HTML documents via the 
   49188           m_client->canCachePage() call
   49189         (WebCore::FrameLoader::canCachePage): Don't make the call to m_client->canCachePage() as that serves a different
   49190           purpose
   49191           - Check the mainDocumentError to see if the load ended in error as a further criteria in determining the 
   49192           cachability of a page
   49193 
   49194         * loader/loader.cpp:
   49195         (WebCore::Loader::cancelRequests): Call didFail(cancelledError()) instead of just removing the loaders from the 
   49196           loaders-in-progress set.  This adds the effect of properly cleaning up the cached object.
   49197 
   49198 2007-03-13  Beth Dakin  <bdakin (a] apple.com>
   49199 
   49200         Rendering part reviewed by Hyatt. Editing part consulted with and 
   49201         rubber stamped by Justin and Harrison.
   49202 
   49203         Fix for <rdar://problem/5025925> A hang occurs in Safari when 
   49204         attempting to print page at http://www.pcadvisor.co.uk
   49205 
   49206         * rendering/RenderBlock.cpp:
   49207         (WebCore::RenderBlock::makeChildrenNonInline): 
   49208         RenderBlock::makeChildrenNonInline() takes a block's inline 
   49209         children and turns them into block children. If the children had 
   49210         line boxes, those boxes were being leaked. In the layout test I 
   49211         added with the change (and at pcadvisor.co.uk during printing) 
   49212         children were being made non-inline, and then they were being made 
   49213         inline again. This meant that some of the children ended up 
   49214         pointing to totally stale line boxes that are normally just leaked. 
   49215         This caused an infinite loop in RenderFlow::destroy(). This patch 
   49216         simply deletes everyone's line boxes in 
   49217         RenderBlock::makeChildrenNonInline()
   49218 
   49219         * editing/InsertParagraphSeparatorCommand.cpp:
   49220         (WebCore::InsertParagraphSeparatorCommand::doApply): The other part 
   49221         of this fix is that I added a call to updateLayout in 
   49222         InsertParagraphSeparatorCommand::doApply(). One layout test 
   49223         (editing/spelling/spelling.html) was changed by my patch to 
   49224         RenderBlock. doApply() inserts a node into the render tree. In at 
   49225         least one case in spelling.html, that caused some line boxes to be 
   49226         deleted. Back in doApply() this meant that the RenderTree was out-
   49227         of-date, and we mistakenly thought we were at the end of the 
   49228         paragraph. This caused us to insert a RenderBR() at the end of the 
   49229         tree instead of an empty RenderText(). No one seems to know exactly 
   49230         why we insert either, or if the change is necessarily a problem. It 
   49231         is clear, though, that the RenderTree in doApply() is out-of-date 
   49232         after inserting the node and deleting some line boxes, so it seems 
   49233         prudent to call into updateLayout().
   49234 
   49235 2007-03-13  Adam Roben  <aroben (a] apple.com>
   49236 
   49237         Reviewed by Anders.
   49238 
   49239         * platform/FontData.h: Added m_isSystemFont parameter to match NSFont.
   49240 
   49241 2007-03-13  Beth Dakin  <bdakin (a] apple.com>
   49242 
   49243         Reviewed by Maciej.
   49244 
   49245         Export DocumentLoader::setFrame(). Part of fix for <rdar://
   49246         problem/4277074> 8F32: Help Viewer crashed on clicking link - 
   49247         KHTMLView::viewportMouseReleaseEvent (12647)
   49248 
   49249         * WebCore.exp:
   49250 
   49251 2007-03-13  Darin Adler  <darin (a] apple.com>
   49252 
   49253         Reviewed by Maciej.
   49254 
   49255         - fix http://bugs.webkit.org/show_bug.cgi?id=12794
   49256           <rdar://problem/5028154> REGRESSION: TripTik planner at aaa.com never
   49257           finishes loading due to unclosed canvas tag (12794)
   49258 
   49259         Change <canvas> elements so that their contents are parsed normally,
   49260         but not rendered. This change fixes the bug, because normal parsing
   49261         rules close the <canvas> element in that case. The special parser
   49262         stuff was just getting in the way.
   49263 
   49264         Also do some basic cleanup to the HTML parser. This was motivated by
   49265         an earlier version of this patch that made even more changes to the
   49266         parser, but the cleanup is still worth landing.
   49267 
   49268         Test: fast/canvas/canvas-hides-fallback.html
   49269         Test: fast/canvas/script-inside-canvas-fallback.html
   49270         Test: fast/canvas/unclosed-canvas-1.html
   49271         Test: fast/canvas/unclosed-canvas-2.html
   49272         Test: fast/canvas/unclosed-canvas-3.html
   49273         Test: fast/canvas/unclosed-canvas-4.html
   49274 
   49275         * html/HTMLCanvasElement.h: Added a data member to keep track of whether the
   49276         renderer is a RenderHTMLCanvas or not.
   49277         * html/HTMLCanvasElement.cpp:
   49278         (WebCore::HTMLCanvasElement::createRenderer): If JavaScript is enabled, create
   49279         a RenderHTMLCanvas. If it's not, let the default code create the default type
   49280         of renderer, which will result in fallback content being visible. The
   49281         RenderHTMLCanvas class already hides all of its children. Set the m_rendererIsCanvas
   49282         boolean accordingly. Since the actual storage for the canvas is allocated lazily
   49283         when you actually get a drawing context, we don't need to do anything special
   49284         to prevent it when JavaScript is disabled; the relevant functions won't be called.
   49285         (WebCore::HTMLCanvasElement::reset): Protect the code that manipulates the
   49286         RenderHTMLCanvas with a check of m_rendererIsCanvas. This is the only code inside
   49287         the DOM element that relies on the renderer type.
   49288 
   49289         * html/HTMLParser.h: Removed unneeded includes. Marked HTMLParser as
   49290         Noncopyable. Changed the Document parameter to the constructor to instead
   49291         be HTMLDocument. Renamed discard_until to m_skipModeTag for clarity.
   49292         Removed unused noSpaces function and unneeded public doc() function.
   49293         Moved data members all down to the end so you can see them together in order.
   49294         Renamed map to m_currentMapElement and isindex to m_isindexElement.
   49295         Removed unused end and headLoaded data members.  Renamed m_fragment to
   49296         m_isParsingFragment to make it clearer that it's a boolean, not a fragment.
   49297 
   49298         * html/HTMLParser.cpp:
   49299         (WebCore::HTMLParser::HTMLParser): Changed to use member construction
   49300         syntax instead of calling reset(). This is especially helpful in the
   49301         fragment case, where calling reset() later on is illegal, so not using
   49302         it in the constructor lets us assert.
   49303         (WebCore::HTMLParser::~HTMLParser): Did an explicit deref instead of
   49304         calling setCurrent for its side effect.
   49305         (WebCore::HTMLParser::reset): Updated for member name changes and removal
   49306         and to use document instead of doc().
   49307         (WebCore::HTMLParser::setCurrent): Use document instead of doc().
   49308         (WebCore::HTMLParser::setSkipMode): Added. No longer inline. Now sets the
   49309         m_inCanvasBeforeFirstOpenTag data member to false.
   49310         (WebCore::HTMLParser::parseToken): Tightened up the skip mode logic at the
   49311         top of the function, and added a FIXME about the strange case there where
   49312         we don't skip yet stay in skip mode. Updated for renaming and doc().
   49313         (WebCore::HTMLParser::insertNode): Updated for renaming and doc().
   49314         (WebCore::HTMLParser::handleError): Ditto.
   49315         (WebCore::HTMLParser::framesetCreateErrorCheck): Ditto.
   49316         (WebCore::HTMLParser::isindexCreateErrorCheck): Changed to use RefPtr.
   49317         (WebCore::HTMLParser::noscriptCreateErrorCheck): Updated for renaming and doc().
   49318         (WebCore::HTMLParser::mapCreateErrorCheck): Ditto.
   49319         (WebCore::HTMLParser::getNode): Removed the special case for canvas here.
   49320         Canvas fallback is now handled in the DOM, not the parser. Updated for
   49321         renaming and doc().
   49322         (WebCore::HTMLParser::allowNestedRedundantTag): Changed a #define into a C++
   49323         constant.
   49324         (WebCore::HTMLParser::processCloseTag): Updated for renaming and doc().
   49325         (WebCore::HTMLParser::isInline): Ditto.
   49326         (WebCore::HTMLParser::tagIsOnStack): Added. Used by new canvas logic.
   49327         (WebCore::HTMLParser::popBlock): Updated for renaming and doc(). Also renamed
   49328         the local variable Elem to elem.
   49329         (WebCore::HTMLParser::createHead): Ditto.
   49330         (WebCore::HTMLParser::handleIsindex): Changed to use RefPtr.
   49331         (WebCore::HTMLParser::startBody): Updated for renaming and doc().
   49332         (WebCore::HTMLParser::finished): Ditto.
   49333 
   49334 2007-03-13  David Hyatt  <hyatt (a] apple.com>
   49335 
   49336         Two more cleanup fixes to the cache.  Don't call destroyDecodedData in the BitmapImage destructor, since
   49337         clearing the image source and calling setData on it again causes it to do an extra copy of the encoded
   49338         data.  Since we're about to be destroyed this is just wasteful.
   49339 
   49340         When the cache prunes, don't allow it to destroy the decoded data of an image that is still actively loading,
   49341         since we've established that ImageIO can actually crash if you yank the rug out from under it like that.
   49342 
   49343         Reviewed by ggaren
   49344 
   49345         * loader/Cache.cpp:
   49346         (WebCore::Cache::prune):
   49347         * platform/graphics/BitmapImage.cpp:
   49348         (WebCore::BitmapImage::~BitmapImage):
   49349 
   49350 2007-03-13  Anders Carlsson  <acarlsson (a] apple.com>
   49351 
   49352         Try fixing the Qt build.
   49353         
   49354         * editing/Editor.h:
   49355         (WebCore::Editor::setStartNewKillRingSequence):
   49356 
   49357 2007-03-13  David Harrison  <harrison (a] apple.com>
   49358 
   49359         Reviewed by Justin.
   49360 
   49361         <rdar://problem/5031181> cntl-k at end of paragraph adds nothing to the kill ring
   49362         <rdar://problem/5031189> REGRESSION: cntl-y yanks only the most recently killed content
   49363 
   49364         For rdar://5031181, properly extend the selection before the killring handling, and
   49365         make sure plainText of that selection returns a linefeed.
   49366         
   49367         For rdar://5031189, restore Editor::deleteRange() code that continued current killring,
   49368         even though the range deletion implicitly stopped it via changing the selection.
   49369         
   49370         A byproduct of this change is the elimination of RUNDFINDER vs CONTENT TextIterator. The
   49371         only difference between the two was whether to emit a newline when the range started
   49372         with a blockflow element. No callers actually need that any more.
   49373 
   49374         Tests added:
   49375         * editing/pasteboard/emacs-ctrl-k-y-001-expected.checksum: Added.
   49376         * editing/pasteboard/emacs-ctrl-k-y-001-expected.png: Added.
   49377         * editing/pasteboard/emacs-ctrl-k-y-001-expected.txt: Added.
   49378         * editing/pasteboard/emacs-ctrl-k-y-001.html: Added.
   49379 
   49380         * editing/Editor.cpp:
   49381         (WebCore::Editor::deleteRange):
   49382         Clear the "start new kill ring sequence" setting, because it was set to true
   49383         when the selection was updated by deleting the range.
   49384         
   49385         (WebCore::Editor::deleteWithDirection):
   49386         If extending the selection to the end of paragraph resulted in a caret selection,
   49387         extend by character, to handle the case when the selection started as a caret at
   49388         the end of paragraph.
   49389         
   49390         * editing/TextIterator.cpp:
   49391         (WebCore::TextIterator::TextIterator):
   49392         Initialize new member variables for tracking handling of the beginning of the range.
   49393         
   49394         (WebCore::TextIterator::advance):
   49395         Call representNodeOffsetZero on the m_endContainer.
   49396         Move visibility checks into handleTextNode and handleReplacedElement.
   49397         
   49398         (WebCore::TextIterator::handleTextNode):
   49399         (WebCore::TextIterator::handleTextBox):
   49400         Call emitText.
   49401         
   49402         (WebCore::TextIterator::handleReplacedElement):
   49403         Moved visibility check into here.
   49404         
   49405         (WebCore::shouldEmitNewlinesBeforeAndAfterNode):
   49406         
   49407         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
   49408         (WebCore::TextIterator::representNodeOffsetZero):
   49409         New. Emits proper sequence when encountering offset 0 of a node, including the
   49410         m_endContainer. Started with code from handleNonTextNode.
   49411         
   49412         (WebCore::TextIterator::handleNonTextNode):
   49413         Call representNodeOffsetZero.
   49414         
   49415         (WebCore::TextIterator::exitNode):
   49416         Similar to shouldRepresentNodeOffsetZero, do not emit the newline if the node
   49417         was collapsed, and before any other emitted content.
   49418         
   49419         (WebCore::TextIterator::emitCharacter):
   49420         
   49421         (WebCore::TextIterator::emitText):
   49422         New. Consolidates code used by handleText and handleTextBox.
   49423         
   49424         (WebCore::CharacterIterator::CharacterIterator):
   49425         Removed RUNFINDER.
   49426 
   49427         (WebCore::WordAwareIterator::WordAwareIterator):
   49428         Removed RUNFINDER.
   49429         
   49430         (WebCore::WordAwareIterator::advance):
   49431         Formatting.
   49432 
   49433         (WebCore::TextIterator::rangeLength):
   49434         Formatting.
   49435         
   49436         * editing/TextIterator.h:
   49437         Added member variables for tracking handling of the beginning of the range.
   49438         Eliminated concept of RUNDFINDER vs CONTENT TextIterator.
   49439         
   49440         * editing/visible_units.cpp:
   49441         (WebCore::nextBoundary):
   49442         Eliminated concept of RUNDFINDER vs CONTENT TextIterator.
   49443 
   49444 2007-03-13  David Hyatt  <hyatt (a] apple.com>
   49445 
   49446         Clean up the null image case in CachedImage::data to make sure the size totals will stay accurate.
   49447         I'm not convinced this case can even be hit, but I'm cleaning it up just in case.
   49448 
   49449         * loader/CachedImage.cpp:
   49450         (WebCore::CachedImage::data):
   49451 
   49452 2007-03-13  David Hyatt  <hyatt (a] apple.com>
   49453 
   49454         Reorder the call to allReferencesRemoved, since otherwise the live object size will become
   49455         incorrect.
   49456 
   49457         * loader/CachedResource.cpp:
   49458         (WebCore::CachedResource::deref):
   49459 
   49460 2007-03-13  Antti Koivisto  <antti (a] apple.com>
   49461 
   49462         Reviewed by Darin.
   49463         
   49464         Fix http://bugs.webkit.org/show_bug.cgi?id=11083
   49465         REGRESSION: Typing tab key fails to insert a tab character in Google Docs editable area
   49466         <rdar://problem/4757650>
   49467         
   49468         Allow inserting tabs in designMode. Backtab behaves like before (matches FF).
   49469 
   49470         * page/EventHandler.cpp:
   49471         (WebCore::EventHandler::defaultTabEventHandler):
   49472 
   49473 2007-03-13  David Hyatt  <hyatt (a] apple.com>
   49474 
   49475         Fix two counting errors in the decoded size of objects in the WebCore cache.  We need to explicitly
   49476         destroy decoded data when clearing out a partially loaded image that had an error, since the destructor
   49477         (although it does destroy the data) disconnects the observer so that the notification doesn't happen.
   49478 
   49479         Some CachedImages aren't in the cache (like image documents).  When the decoded size of such an image
   49480         changes we should not notify the cache, since - newsflash - we aren't actually in it.
   49481 
   49482         Reviewed by ggaren
   49483 
   49484         * loader/CachedImage.cpp:
   49485         (WebCore::CachedImage::clear):
   49486         (WebCore::CachedImage::decodedSizeChanged):
   49487 
   49488 2007-03-13  Darin Adler  <darin (a] apple.com>
   49489 
   49490         Reviewed by Tim Hatcher and John Sullivan.
   49491 
   49492         - fix <rdar://problem/4915303> CrashTracer: 36 crashes in Safari at
   49493           com.apple.AppKit: -[NSView getRectsBeingDrawn:count:] + 502
   49494 
   49495         * page/mac/FrameMac.mm: (WebCore::Frame::imageFromRect):
   49496         This was calling drawRect: directly, but NSView's getRectsBeingDrawn:count:
   49497         method was never really safe to call unless it was AppKit that called your
   49498         drawRect: method. Changed it to call drawSingleRect: instead. A little ugly,
   49499         but seems to work and will almost certainly fix the bug.
   49500 
   49501 2007-03-13  Nikolas Zimmermann  <zimmermann (a] kde.org>
   49502 
   49503         Reviewed by Maciej.
   49504 
   49505         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12974
   49506 
   49507         Call forgetGenericContext in JSSVGPathSeg destructor, otherwhise
   49508         we'll hit an ASSERT in a debug build, when running svg/custom/js-update-path-changes.svg
   49509         a few dozen times in a single WebKit instance. The ASSERT is good and just warns that
   49510         there was already a generic context pointer registered, and the new "to be registered"
   49511         object already exists, but pointing to a different object. That's because garbage collection
   49512         calls the JSSVGPathSeg destructor, but that didn't cleanup the generic context map.
   49513 
   49514         Only JSSVGPathSeg is hit by this problem, as it's the only non SVGAnimated* type
   49515         using the generic context system while using a custom JSSVGPathSegList implementation.
   49516 
   49517         Also cleanup JSSVGPathSegListCustom code to call the static forgetGenericContext
   49518         method instead of doing the same using custom code.
   49519 
   49520         * bindings/js/JSSVGPathSegListCustom.cpp:
   49521         (WebCore::removeFromPathSegContextMap):
   49522         (WebCore::JSSVGPathSegList::clear):
   49523         (WebCore::JSSVGPathSegList::removeItem):
   49524         * bindings/scripts/CodeGeneratorJS.pm:
   49525 
   49526 2007-03-13  Darin Adler  <darin (a] apple.com>
   49527 
   49528         Reviewed by Adele.
   49529 
   49530         - fix http://bugs.webkit.org/show_bug.cgi?id=12595
   49531           <rdar://problem/4722863> REGRESSION: Can't add item to cart at lnt.com
   49532           (JS type error) (12595)
   49533 
   49534         Test: fast/forms/old-names.html
   49535 
   49536         * bindings/js/JSHTMLFormElementCustom.cpp:
   49537         (WebCore::JSHTMLFormElement::canGetItemsForName): If the form collection has
   49538         nothing for a given name, try the form's oldNamedElement function.
   49539         (WebCore::JSHTMLFormElement::nameGetter): Ditto.
   49540 
   49541         * bindings/js/kjs_dom.h: Removed the DOMNamedNodesCollection. Instead we will use
   49542         a class derived from NodeList.
   49543         * bindings/js/kjs_dom.cpp: Ditto.
   49544 
   49545         * bindings/js/kjs_html.cpp:
   49546         (KJS::VectorNodeList::VectorNodeList): Added. Constructor for a new class derived
   49547         from NodeList to be used for the named items result from a collection -- uses a
   49548         vector of node pointers.
   49549         (KJS::VectorNodeList::length): Added.
   49550         (KJS::VectorNodeList::item): Added.
   49551         (KJS::JSHTMLCollection::getNamedItems): Use VectorNodeList and the existing wrapper
   49552         for NodeList rather than a custom JavaScript class, DOMNamedNodesCollection.
   49553 
   49554         * dom/ChildNodeList.h:
   49555         * dom/ChildNodeList.cpp:
   49556         (WebCore::ChildNodeList::ChildNodeList): Updated to derive from TreeNodeList,
   49557         since NodeList is now a simpler class.
   49558         (WebCore::ChildNodeList::elementMatches): Updated for name and parameter change.
   49559 
   49560         * dom/NameNodeList.h:
   49561         * dom/NameNodeList.cpp:
   49562         (WebCore::NameNodeList::NameNodeList): Updated to derive from TreeNodeList,
   49563         since NodeList is now a simpler class.
   49564         (WebCore::NameNodeList::rootNodeAttributeChanged): Updated for name and
   49565         parameter change.
   49566 
   49567         * dom/Node.h: Change register/unregister functions to take TreeNodeList.
   49568         * dom/Node.cpp:
   49569         (WebCore::TagNodeList::TagNodeList): Updated to derive from TreeNodeList,
   49570         since NodeList is now a simpler abstract class.
   49571         (WebCore::TagNodeList::elementMatches): Updated for name and parameter change.
   49572         (WebCore::Node::registerNodeList): Changed type from NodeList to TreeNodeList.
   49573         (WebCore::Node::unregisterNodeList): Ditto.
   49574 
   49575         * dom/NodeList.h: Broke NodeList into a simpler base class and a derived class
   49576         with the machinery for iterating a tree, called TreeNodeList.
   49577         * dom/NodeList.cpp:
   49578         (WebCore::NodeList::~NodeList): Added.
   49579         (WebCore::NodeList::itemWithName): Factored out of the old itemWithName.
   49580         (WebCore::TreeNodeList::TreeNodeList): Renamed from NodeList.
   49581         (WebCore::TreeNodeList::~TreeNodeList): Ditto.
   49582         (WebCore::TreeNodeList::recursiveLength): Ditto.
   49583         (WebCore::TreeNodeList::itemForwardsFromCurrent): Ditto.
   49584         (WebCore::TreeNodeList::itemBackwardsFromCurrent): Ditto.
   49585         (WebCore::TreeNodeList::recursiveItem): Ditto.
   49586         (WebCore::TreeNodeList::itemWithName): Factored half of this into this function,
   49587         the other half in NodeList::itemWithName.
   49588         (WebCore::TreeNodeList::rootNodeAttributeChanged): Added. No longer inline.
   49589         (WebCore::TreeNodeList::rootNodeChildrenChanged): Renamed from NodeList.
   49590 
   49591         * html/HTMLFormElement.h: Added formElementNameChanged and oldNamedElement
   49592         fucntions, and a map called m_oldNames. Also removed m_boundary, which I
   49593         thought I had already done.
   49594         * html/HTMLFormElement.cpp:
   49595         (WebCore::HTMLFormElement::HTMLFormElement): Initialize m_oldNames to 0.
   49596         Switched the rest of the members to initialization syntax.
   49597         (WebCore::HTMLFormElement::~HTMLFormElement): Delete m_oldNames.
   49598         (WebCore::HTMLFormElement::formElementNameChanged): Added. Stores a reference
   49599         to one element under each of its old names.
   49600         (WebCore::HTMLFormElement::oldNamedElement): Added. Returns the old element
   49601         that once had a given name.
   49602 
   49603         * html/HTMLGenericFormElement.h:
   49604         * html/HTMLGenericFormElement.cpp:
   49605         (WebCore::HTMLGenericFormElement::parseMappedAttribute): When the name
   49606         attribute changes, tell the form about the old name.
   49607         (WebCore::HTMLGenericFormElement::insertedIntoTree): When telling a form
   49608         about an element, also store away the old name so that we can use it
   49609         when the name changes later.
   49610 
   49611         * html/HTMLInputElement.cpp:
   49612         (WebCore::HTMLInputElement::parseMappedAttribute): Added a call to the
   49613         base class in the nameAttr case, so the code in HTMLGenericFormElement
   49614         above will get called in the input element case.
   49615 
   49616 2007-03-13  Antti Koivisto  <antti (a] apple.com>
   49617 
   49618         Reviewed by Alexey.
   49619 
   49620         Alexey spotted a DOS by using string of 64k unbreakable character in
   49621         fix for http://bugs.webkit.org/show_bug.cgi?id=12833
   49622 
   49623         * dom/Text.cpp:
   49624         (WebCore::Text::createWithLengthLimit):
   49625 
   49626 2007-03-13  Lars Knoll <lars (a] trolltech.com>
   49627 
   49628         Fix the Qt build
   49629 
   49630         * WebCore.pro:
   49631 
   49632 2007-03-13  Rob Buis  <buis (a] kde.org>
   49633 
   49634         Reviewed by Darin.
   49635 
   49636         http://bugs.webkit.org/show_bug.cgi?id=12576
   49637         WebKit does not support xlink:show attributes
   49638 
   49639         Make an exception for non-empty targets, these should be opened
   49640         in a new window, unless the value is _self.
   49641 
   49642         * ksvg2/svg/SVGAElement.cpp:
   49643         (WebCore::SVGAElement::defaultEventHandler):
   49644 
   49645 2007-03-13  David Hyatt  <hyatt (a] apple.com>
   49646 
   49647         - fix cache issues seen in http://bugs.webkit.org/show_bug.cgi?id=13050
   49648           6 objects and ~200MB leaked after opening then closing tab
   49649           <rdar://problem/5058714>
   49650 
   49651         Double the encoded size of images for now.  We do this to account for a bug in ImageIO where they hold
   49652         a separate copy of image data.  See <rdar://problem/5050645>.
   49653 
   49654         Reviewed by aroben.
   49655 
   49656         * loader/CachedImage.cpp:
   49657         (WebCore::CachedImage::data):
   49658 
   49659 2007-03-12  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   49660 
   49661         Not reviewed - gdk build fix.
   49662 
   49663         * platform/gdk/TemporaryLinkStubs.cpp:
   49664         (SearchPopupMenu::enabled): add missing stub.
   49665 
   49666 2007-03-12  David Kilzer  <ddkilzer (a] kilzer.net>
   49667 
   49668         Reviewed by Darin.
   49669 
   49670         - fix http://bugs.webkit.org/show_bug.cgi?id=13045
   49671           REGRESSION: Blackboard CourseWare Error with Nightlies after Mar 8
   49672 
   49673         * html/HTMLFormElement.cpp:
   49674         (WebCore::getUniqueBoundaryString): Speculative fix: remove dashes from
   49675         the boundary prefix that appear after non-dash characters.
   49676 
   49677 2007-03-12  Mitz Pettel  <mitz (a] webkit.org>
   49678 
   49679         Reviewed by Anders.
   49680 
   49681         - fix http://bugs.webkit.org/show_bug.cgi?id=13015
   49682           REGRESSION (r17233-r17241): Repro crash when leaving a page whose unload handler submits a form
   49683 
   49684         Test: fast/loader/onunload-form-submit-crash-2.html
   49685 
   49686         * loader/DocumentLoader.cpp:
   49687         (WebCore::DocumentLoader::finishedLoading): Added null check.
   49688 
   49689 2007-03-12  Anders Carlsson  <acarlsson (a] apple.com>
   49690 
   49691         Reviewed by Darin.
   49692 
   49693         <rdar://problem/4900071>
   49694         http://bugs.webkit.org/show_bug.cgi?id=6454
   49695         ASSERTION: Navigating 'back' in frameset: !_private->previousItem (6454)
   49696 
   49697         Change back the behavior of checkLoadComplete to traverse the entire frame tree instead of
   49698         just the parent frames of the current frame. This is needed in order to reset the previous history item
   49699         for all frames when doing a frame navigation. (This was changed in revision 11819)
   49700         
   49701         * loader/FrameLoader.cpp:
   49702         (WebCore::FrameLoader::recursiveCheckLoadComplete):
   49703         (WebCore::FrameLoader::checkLoadComplete):
   49704         * loader/FrameLoader.h:
   49705 
   49706 2007-03-12  Justin Garcia  <justin.garcia (a] apple.com>
   49707 
   49708         Reviewed by darin
   49709         
   49710         <rdar://problem/5056619> 
   49711         REGRESSION: Gmail Editor: Dragging text into Reply (textarea) field results in a crash at WebCore::InsertNodeBeforeCommand::doApply()
   49712         
   49713         * editing/SelectionController.cpp:
   49714         (WebCore::removingNodeRemovesPosition): Added.
   49715         (WebCore::SelectionController::nodeWillBeRemoved): Clear the
   49716         selection if it's inside a shadow tree.
   49717         * page/DragController.cpp:
   49718         (WebCore::setSelectionToDragCaret): Return false to signal to
   49719         clients that a drop shouldn't be performed if the second attempt
   49720         to set a selection ends up in non-editable content.
   49721 
   49722 2007-03-12  Darin Adler  <darin (a] apple.com>
   49723 
   49724         Reviewed by Tim Hatcher.
   49725 
   49726         - fixed JavaScript wrapper classes to be correct for a variety of cases
   49727           that a new test uncovered: was broken for at least 5 classes
   49728 
   49729         - fixed Objective-C wrapper classes to be correct for a variety of cases
   49730           that a test case uncovered: was broken for ast least 50 classes
   49731 
   49732         - added missing DOM API for creating OverflowEvent and WheelEvent instances
   49733 
   49734         Test: fast/dom/wrapper-classes.html
   49735 
   49736         * DerivedSources.make: Added missing bindings: HTMLCanvasElement for ObjC,
   49737         CDATASection, Comment, and EntityReference for JavaScript.
   49738         * WebCore.xcodeproj/project.pbxproj: Added those new generated files.
   49739 
   49740         * bindings/js/JSHTMLElementWrapperFactory.cpp:
   49741         (WebCore::createJSHTMLWrapper): Corrected the wrapper classes for <keygen>,
   49742         which needs an HTMLSelectElement wrapper, and <xmp>, which needs an
   49743         HTMLPreElement wrapper.
   49744 
   49745         * bindings/objc/DOMInternal.h: Updated for new naming scheme.
   49746         Also moved createDOMWrapper from the KJS namespace to the WebCore namespace.
   49747         * bindings/objc/DOMUtility.mm:
   49748         (KJS::createDOMWrapper): Broke the core function into a separate one, and
   49749         left it in the KJS namespace because Objective-C++ rules make it impossible
   49750         for it to work in the WebCore namespace. Used a macro-based implementation
   49751         to cut down on repeated code, and added missing cases for Counter,
   49752         HTMLOptionsCollection, Range, XPathExpression, XPathResult, Event, RGBColor,
   49753         Rect, Window, DOMImplementation, NodeIterator, TreeWalker, and HTMLCollection.
   49754         (WebCore::createDOMWrapper): The other half of the function.
   49755 
   49756         * bindings/objc/DOM.mm:
   49757         (WebCore::createElementClassMap): Corrected the wrapper classes for
   49758         <canvas>, which needs a DOMHTMLCanvasElement wrapper, <del>, which needs
   49759         a DOMHTMLModElement wrapper, <embed>, which needs a DOMHTMLEmbedElement
   49760         wrapper, <ins>, which needs a DOMHTMLModElement wrapper, <th>, which needs
   49761         a DOMHTMLTableCellElement wrapper, and <xmp>, which needs an
   49762         DOMHTMLPreElement wrapper.
   49763         (+[DOMNode _wrapNode:]): Updated for new naming scheme.
   49764         (+[DOMNode _wrapEventTarget:]): Ditto.
   49765         (+[DOMNodeFilter _wrapNodeFilter:]): Ditto.
   49766         (ObjCNodeFilterCondition::acceptNode): Ditto.
   49767         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]): Ditto.
   49768         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]): Ditto.
   49769         (WebCore::ObjCEventListener::handleEvent): Ditto.
   49770 
   49771         * dom/Document.cpp: (WebCore::Document::createEvent):
   49772         Added cases for OverflowEvent and WheelEvent.
   49773 
   49774         * dom/OverflowEvent.h: Added empty constructor and initOverflowEvent.
   49775         * dom/OverflowEvent.cpp:
   49776         (WebCore::OverflowEvent::OverflowEvent): Added.
   49777         (WebCore::OverflowEvent::initOverflowEvent): Added.
   49778         * dom/OverflowEvent.idl: Added initOverflowEvent.
   49779 
   49780         * bindings/objc/PublicDOMInterfaces.h: Added initOverflowEvent.
   49781 
   49782         * bindings/objc/DOMCSS.mm:
   49783         (+[DOMStyleSheet _wrapStyleSheet:]): Updated for new naming scheme.
   49784         (+[DOMCSSRule _wrapCSSRule:]): Corrected wrapper for CSSUnknownRule.
   49785         (+[DOMCSSValue _wrapCSSValue:]): Updated for new naming scheme.
   49786 
   49787         * bindings/js/kjs_css.h:
   49788         (KJS::DOMRGBColor::impl): Added. Used when making an ObjC wrapper.
   49789         (KJS::DOMRect::impl): Ditto.
   49790 
   49791         * bindings/js/kjs_dom.cpp: (KJS::toJS): Corrected the wrapper classes for
   49792         CDATASection, Comment, and EntityReference.
   49793 
   49794         * bindings/js/kjs_html.cpp: Corrected the class name for HTMLElement
   49795         (was "DOMHTMLElement") and HTMLCollection (was "Collection").
   49796 
   49797         * bindings/objc/DOMImplementationFront.h:
   49798         * bindings/objc/DOMImplementationFront.cpp:
   49799         (WebCore::implementationFront): Added new overload that returns a front given
   49800         a JavaScript wrapper. Needed by the code that makes the Objective-C wrapper.
   49801 
   49802         * bindings/objc/WebScriptObject.mm:
   49803         (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
   49804         Updated since createDOMWrapper is now in the WebCore namespace.
   49805 
   49806         * bindings/scripts/CodeGeneratorObjC.pm: Update the naming scheme for the
   49807         wrapper creation functions to use _wrapElement: rather then _elementWith:
   49808         style. Removed now-unneeded special cases for things that needed to stay
   49809         upper-case, since we don't have to do the whole lcfirst thing.
   49810 
   49811         * html/HTMLCanvasElement.idl: Added #if so we can successfully generate the
   49812         Objective-C wrapper for this class, even though we can't yet handle the
   49813         DOMObject return type.
   49814 
   49815         * html/HTMLOptionsCollection.idl: Added GenerateNativeConverter so we get
   49816         an appropriate toJS function.
   49817 
   49818         * bindings/objc/DOMEvents.mm:
   49819         (+[DOMEvent _wrapEvent:]):
   49820         * bindings/objc/DOMHTML.mm:
   49821         (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]):
   49822         (-[DOMHTMLDocument createDocumentFragmentWithText:]):
   49823         * bindings/objc/DOMObject.mm:
   49824         (-[DOMObject sheet]):
   49825         * bindings/objc/DOMRGBColor.mm:
   49826         (-[DOMRGBColor red]):
   49827         (-[DOMRGBColor green]):
   49828         (-[DOMRGBColor blue]):
   49829         (-[DOMRGBColor alpha]):
   49830         (+[DOMRGBColor _wrapRGBColor:]):
   49831         * bindings/objc/DOMSVGPathSegInternal.mm:
   49832         (+[DOMSVGPathSeg _wrapSVGPathSeg:]):
   49833         * bindings/objc/DOMXPath.mm:
   49834         (+[DOMNativeXPathNSResolver _wrapXPathNSResolver:]):
   49835         * page/mac/WebCoreFrameBridge.mm:
   49836         (-[WebCoreFrameBridge nodesFromList:]):
   49837         (-[WebCoreFrameBridge elementWithName:inForm:]):
   49838         (-[WebCoreFrameBridge formForElement:]):
   49839         (-[WebCoreFrameBridge currentForm]):
   49840         (-[WebCoreFrameBridge controlsInForm:]):
   49841         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
   49842         (-[WebCoreFrameBridge convertNSRangeToDOMRange:]):
   49843         (-[WebCoreFrameBridge markDOMRange]):
   49844         (-[WebCoreFrameBridge markedTextDOMRange]):
   49845         (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]):
   49846         (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]):
   49847         (-[WebCoreFrameBridge documentFragmentWithText:inContext:]):
   49848         (-[WebCoreFrameBridge documentFragmentWithNodesAsParagraphs:]):
   49849         (-[WebCoreFrameBridge replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]):
   49850         (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
   49851         (-[WebCoreFrameBridge increaseSelectionListLevel]):
   49852         (-[WebCoreFrameBridge increaseSelectionListLevelOrdered]):
   49853         (-[WebCoreFrameBridge increaseSelectionListLevelUnordered]):
   49854         (-[WebCoreFrameBridge dragCaretDOMRange]):
   49855         (-[WebCoreFrameBridge editableDOMRangeForPoint:]):
   49856         (-[WebCoreFrameBridge characterRangeAtPoint:]):
   49857         (-[WebCoreFrameBridge typingStyle]):
   49858         (-[WebCoreFrameBridge rangeOfCharactersAroundCaret]):
   49859         * platform/mac/ClipboardMac.mm:
   49860         (WebCore::ClipboardMac::declareAndWriteDragImage):
   49861         * platform/mac/PasteboardMac.mm:
   49862         (WebCore::Pasteboard::writeSelection):
   49863         Updated for new naming scheme.
   49864 
   49865 2007-03-12  Timothy Hatcher  <timothy (a] apple.com>
   49866 
   49867         Reviewed by Darin.
   49868 
   49869         <rdar://problem/4990691> REGRESSION: Selecting text in Adium's Messages field causes horizontal shift
   49870 
   49871         Corrected the recursive point conversion and scrolling done in scrollPointRecursively to use the
   49872         document view of each NSClipView.
   49873 
   49874         * platform/mac/ScrollViewMac.mm:
   49875         (WebCore::ScrollView::scrollPointRecursively): Call convertPoint:fromView: on the document views,
   49876         not the clip views as we encounter them. Then call constrainScrollPoint: on the converted point to
   49877         constrain to the document view bounds. And finally call scrollPoint: on the document view, not the clip view.
   49878 
   49879 2007-03-12  Antti Koivisto  <antti (a] apple.com>
   49880 
   49881         Reviewed by Alexey.
   49882 
   49883         Fix http://bugs.webkit.org/show_bug.cgi?id=12833
   49884         REGRESSION: Selecting text in 6.6MB txt file is sluggish as of the Feb 19th nightly
   49885         <rdar://problem/5028159>
   49886         
   49887         Divide large text blocks (>64kB) over multiple text nodes. This limits linebox searches to
   49888         a manageable subset.
   49889         
   49890         * dom/Text.cpp:
   49891         (WebCore::Text::createWithLengthLimit):
   49892         * dom/Text.h:
   49893         * html/HTMLParser.cpp:
   49894         (WebCore::HTMLParser::parseToken):
   49895         * loader/TextDocument.cpp:
   49896         (WebCore::TextTokenizer::write):
   49897 
   49898 2007-03-12  David Hyatt  <hyatt (a] apple.com>
   49899 
   49900         Fix a regression in printing.  Printer fonts need to be part of the
   49901         font cache key, since printer fonts have different glyph widths.
   49902         (Integer antialiasing is used for screen fonts but not for printer fonts.)
   49903 
   49904         Reviewed by aroben
   49905 
   49906         * platform/FontCache.cpp:
   49907         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
   49908         (WebCore::FontPlatformDataCacheKey::operator==):
   49909         (WebCore::computeHash):
   49910         (WebCore::FontCache::getCachedFontPlatformData):
   49911 
   49912 2007-03-12  Lars Knoll <lars (a] trolltech.com>
   49913 
   49914         add missing symbol to fix the Qt build again.
   49915 
   49916         * platform/qt/SearchPopupMenuQt.cpp:
   49917         (WebCore::SearchPopupMenu::enabled):
   49918 
   49919 2007-03-12  Adele Peterson  <adele (a] apple.com>
   49920 
   49921         Reviewed by Oliver.
   49922 
   49923         Adding the ability to enable or disable a SearchPopupMenu.
   49924 
   49925         * platform/SearchPopupMenu.h:
   49926         * platform/mac/SearchPopupMenuMac.mm: (WebCore::SearchPopupMenu::enabled):
   49927         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::showPopup):
   49928 
   49929 2007-03-12  Rob Buis  <buis (a] kde.org>
   49930 
   49931         Reviewed by Nikolas Zimmermann.
   49932 
   49933         http://bugs.webkit.org/show_bug.cgi?id=12500
   49934         SVG fails to correctly handle all link style selectors
   49935         http://bugs.webkit.org/show_bug.cgi?id=12567
   49936         <text> elements ignore <a> children
   49937 
   49938         Allow <a> inside svg text and handle xlink:show.
   49939 
   49940         * ksvg2/svg/SVGAElement.cpp:
   49941         (WebCore::SVGAElement::createRenderer):
   49942         (WebCore::SVGAElement::defaultEventHandler):
   49943         (WebCore::SVGAElement::childShouldCreateRenderer):
   49944         * ksvg2/svg/SVGAElement.h:
   49945         * ksvg2/svg/SVGElement.h:
   49946         (WebCore::SVGElement::isTextContent):
   49947         * ksvg2/svg/SVGTextContentElement.h:
   49948         (WebCore::SVGTextContentElement::isTextContent):
   49949         * ksvg2/svg/SVGTextElement.cpp:
   49950         (WebCore::SVGTextElement::childShouldCreateRenderer):
   49951         * rendering/SVGInlineFlowBox.cpp:
   49952         (WebCore::translateBox):
   49953         (WebCore::placePositionedBoxesHorizontally):
   49954         (WebCore::placeBoxesVerticallyWithAbsBaseline):
   49955 
   49956 2007-03-12  Adele Peterson  <adele (a] apple.com>
   49957 
   49958         Reviewed by Oliver.
   49959 
   49960         Add a missing parameter to the constructor.
   49961 
   49962         * platform/PlatformKeyboardEvent.h:
   49963         * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   49964 
   49965 2007-03-12  Lars Knoll <lars (a] trolltech.com>
   49966 
   49967         Fix the Qt build. I still get crashes though :/
   49968 
   49969         * platform/graphics/qt/ImageDecoderQt.cpp:
   49970         (WebCore::ImageDecoderQt::clearFrame):
   49971         * platform/graphics/qt/ImageDecoderQt.h:
   49972         * platform/graphics/qt/ImageSourceQt.cpp:
   49973         (WebCore::ImageSource::setData):
   49974         (WebCore::ImageSource::frameIsCompleteAtIndex):
   49975         (WebCore::ImageSource::clear):
   49976         (WebCore::ImageSource::destroyFrameAtIndex):
   49977         * platform/qt/ClipboardQt.cpp:
   49978         (WebCore::ClipboardQt::ClipboardQt):
   49979         * platform/qt/ClipboardQt.h:
   49980         * platform/qt/DragDataQt.cpp:
   49981         (WebCore::DragData::createClipboard):
   49982 
   49983 2007-03-11  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   49984 
   49985         Not reviewed - gdk build fixes.
   49986 
   49987         * platform/gdk/EditorClientGdk.cpp:
   49988         (WebCore::EditorClientGdk::respondToChangedSelection): add stub
   49989         * platform/gdk/EditorClientGdk.h:
   49990         * platform/gdk/FrameGdk.cpp:
   49991         * platform/gdk/TemporaryLinkStubs.cpp:
   49992         (Editor::markMisspellings): add stub
   49993 
   49994 2007-03-11  Alexey Proskuryakov  <ap (a] webkit.org>
   49995 
   49996         Reviewed by Adele.
   49997 
   49998         http://bugs.webkit.org/show_bug.cgi?id=12560
   49999         W3C XPath test Text_Nodes.svg fails
   50000 
   50001         * xml/XPathStep.cpp:
   50002         (WebCore::XPath::Step::nodeTestMatches): Revert the fix, as the behavior doesn't appear 
   50003         all that desirable as it did at first glance.
   50004 
   50005 2007-03-11  Oliver Hunt  <oliver (a] apple.com>
   50006 
   50007         Reviewed by hyatt.
   50008 
   50009         Fix for <rdar://problem/5055690> ASSERTION failure on drop into 
   50010         editable element with content changed on drop 
   50011 
   50012         After setting the selection for a drop into an editable region 
   50013         we make sure the we succeeded.  If we didn't we assume a focus handler
   50014         or similar altered the element contents and try again, if the second
   50015         attempt fails we bail out.
   50016 
   50017         * page/DragController.cpp:
   50018         (WebCore::setSelectionToDragCaret):
   50019         (WebCore::DragController::concludeDrag):
   50020 
   50021 2007-03-11  Oliver Hunt  <oliver (a] apple.com>
   50022 
   50023         Reviewed by Adele.
   50024 
   50025         Moving Frame{Mac}::respondToChangedSelection to Frame.cpp
   50026         Added new EditorClient method to handle old bridge function
   50027         
   50028         * bridge/EditorClient.h:
   50029            Added respondToChangedSelection to replace old bridge function
   50030         * editing/Editor.cpp:
   50031         (WebCore::Editor::respondToChangedSelection):
   50032            Add client call to replace old bridge call from Frame::respondToChangedSelection
   50033         * editing/SelectionController.cpp:
   50034         (WebCore::SelectionController::setSelection):
   50035            No longer directly call Editor as Frame::respondToChangedSelection
   50036            makes the call
   50037         * page/Frame.cpp:
   50038         (WebCore::Frame::respondToChangedSelection):
   50039            Moved from FrameMac, replaced bridge call with call to Editor
   50040         * page/mac/FrameMac.mm:
   50041            Moved respondToChangedSelection to Frame.cpp
   50042         * page/mac/WebCoreFrameBridge.h:
   50043            Removed respondToChangedSelection from bridge
   50044         * page/qt/FrameQt.cpp:
   50045            Remove stub method for respondToChangedSelection
   50046 
   50047 2007-03-11  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   50048 
   50049         Reviewed by Brady Eidson.
   50050 
   50051         Linux/gdk fix.
   50052 
   50053         * loader/gdk/FrameLoaderClientGdk.cpp:
   50054         (WebCore::FrameLoaderClientGdk::shouldGoToHistoryItem): return true so
   50055         that FrameLoader:goBackOrForwards() works.
   50056 
   50057 2007-03-10  Geoffrey Garen  <ggaren (a] apple.com>
   50058 
   50059         Reviewed by Darin Adler.
   50060 
   50061         Fixed <rdar://problem/4587763> PAC file: lock inversion between QT and 
   50062         JSCore causes a hang @ www.panoramas.dk
   50063         
   50064         See JavaScriptCore ChangeLog for details.
   50065         
   50066         * bindings/objc/WebScriptObject.mm:
   50067         (_didExecute): Added helpful ASSERT.
   50068         (+[WebScriptObject throwException:]): Added missing JSLock.
   50069 
   50070 2007-03-11  Antti Koivisto  <antti (a] apple.com>
   50071 
   50072         Reviewed by Hyatt.
   50073 
   50074         Optimize linebox memory consumption:
   50075         - move all bitfields to baseclass compacting them
   50076         - make InlineTextBox::m_truncation unsigned short and make it relative to m_start
   50077         - remove extremely rarely used EllipsisBox pointer from RootInlineBox and instead
   50078           use a global hashmap to store it if needed
   50079         - use minimum required number of bits to store BidiStatus enum variables in RootInlineBox
   50080         - move overflow variables in RootInlineBox to a separate struct that is instantiated
   50081           only if any of the variables is set to a value that can't trivially be derived from 
   50082           box x, y, width and height
   50083           
   50084         As a result line box objects shrink:
   50085             InlineBox: 44 -> 44 bytes
   50086             InlineTextBox: 68 -> 60 bytes
   50087             InlineFlowBox: 68 -> 64 bytes
   50088             RootInlineBox: 128 -> 88 bytes
   50089             
   50090         The optimizations possiblity was noticed when debugging http://bugs.webkit.org/show_bug.cgi?id=12833
   50091         Bug 12833: REGRESSION: Selecting text in 6.6MB txt file is sluggish as of the Feb 19th nightly
   50092         <rdar://problem/5028159>
   50093         
   50094         On that page the patch saves 11.5MB or some 21% of linebox memory consumption. It also
   50095         actually improves selection performance somewhat by improving memory locality.
   50096 
   50097         * rendering/InlineBox.h:
   50098         (WebCore::InlineBox::InlineBox):
   50099         * rendering/InlineFlowBox.h:
   50100         (WebCore::InlineFlowBox::InlineFlowBox):
   50101         * rendering/InlineTextBox.cpp:
   50102         (WebCore::InlineTextBox::placeEllipsisBox):
   50103         (WebCore::InlineTextBox::nodeAtPoint):
   50104         (WebCore::InlineTextBox::paint):
   50105         (WebCore::InlineTextBox::paintDecoration):
   50106         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   50107         (WebCore::InlineTextBox::paintMarkedTextUnderline):
   50108         * rendering/InlineTextBox.h:
   50109         (WebCore::InlineTextBox::InlineTextBox):
   50110         * rendering/RootInlineBox.cpp:
   50111         (WebCore::throw):
   50112         (WebCore::RootInlineBox::Overflow::operator delete):
   50113         (WebCore::RootInlineBox::Overflow::destroy):
   50114         (WebCore::RootInlineBox::destroy):
   50115         (WebCore::RootInlineBox::detachEllipsisBox):
   50116         (WebCore::RootInlineBox::clearTruncation):
   50117         (WebCore::RootInlineBox::placeEllipsis):
   50118         (WebCore::RootInlineBox::paintEllipsisBox):
   50119         (WebCore::RootInlineBox::addHighlightOverflow):
   50120         (WebCore::RootInlineBox::nodeAtPoint):
   50121         (WebCore::RootInlineBox::adjustPosition):
   50122         (WebCore::RootInlineBox::selectionTop):
   50123         (WebCore::RootInlineBox::setLineBreakInfo):
   50124         (WebCore::RootInlineBox::ellipsisBox):
   50125         (WebCore::RootInlineBox::setVerticalOverflowPositions):
   50126         (WebCore::RootInlineBox::setHorizontalOverflowPositions):
   50127         (WebCore::RootInlineBox::setVerticalSelectionPositions):
   50128         * rendering/RootInlineBox.h:
   50129         (WebCore::RootInlineBox::RootInlineBox):
   50130         (WebCore::RootInlineBox::topOverflow):
   50131         (WebCore::RootInlineBox::bottomOverflow):
   50132         (WebCore::RootInlineBox::leftOverflow):
   50133         (WebCore::RootInlineBox::rightOverflow):
   50134         (WebCore::RootInlineBox::lineBreakBidiStatus):
   50135         (WebCore::RootInlineBox::selectionBottom):
   50136         (WebCore::RootInlineBox::Overflow::Overflow):
   50137 
   50138 2007-03-11  Alexey Proskuryakov  <ap (a] webkit.org>
   50139 
   50140         Reviewed by Darin.
   50141 
   50142         A partial fix for http://bugs.webkit.org/show_bug.cgi?id=13021
   50143         XPath can be very slow
   50144 
   50145         * xml/XPathExpression.cpp:
   50146         (WebCore::XPathExpression::evaluate): Cache evaluationContext in a local variable.
   50147 
   50148         * xml/XPathExpressionNode.cpp:
   50149         (WebCore::XPath::Expression::evaluationContext):
   50150         * xml/XPathExpressionNode.h:
   50151         (WebCore::XPath::Expression::addSubExpression):
   50152         (WebCore::XPath::Expression::subExprCount):
   50153         (WebCore::XPath::Expression::subExpr):
   50154         * xml/XPathFunctions.cpp:
   50155         * xml/XPathFunctions.h:
   50156         (WebCore::XPath::Function::setName):
   50157         (WebCore::XPath::Function::arg):
   50158         (WebCore::XPath::Function::argCount):
   50159         (WebCore::XPath::Function::name):
   50160         Made one-liners critical for performance inline.
   50161 
   50162         * xml/XPathGrammar.y: Fully parse NodeTests, so that strings are no longer passed for what is
   50163         essentially an enum. Use LocationPath accessors to add steps, instead of directly manipulating
   50164         internal data members.
   50165 
   50166         * xml/XPathParser.cpp:
   50167         (WebCore::XPath::Parser::parseStatement):
   50168         (WebCore::XPath::Parser::registerNodeTest):
   50169         (WebCore::XPath::Parser::deleteNodeTest):
   50170         * xml/XPathParser.h:
   50171         Added support methods for changes in XPathGrammar.y.
   50172 
   50173         * xml/XPathPath.cpp:
   50174         (WebCore::XPath::Filter::evaluate): Cache evaluationContext in a local variable. Use swap() to avoid
   50175         performing vector assignments.
   50176         (WebCore::XPath::LocationPath::evaluate): Use swap() to avoid performing vector assignments.
   50177         (WebCore::XPath::LocationPath::optimizeStepPair): This new method is called during LocationPath construction, 
   50178         to simplify the path as it's being built. Currently, the only optimized case is "//*" - it is a basis for
   50179         important operations that cannot be efficiently written in XPath 1.0, but can be optimized with a little bit
   50180         of XPath 2.0.
   50181         (WebCore::XPath::LocationPath::appendStep): A new accessor that modifies m_steps and calls optimizeStepPair().
   50182         (WebCore::XPath::LocationPath::insertFirstStep): Ditto.
   50183         * xml/XPathPath.h:
   50184         (WebCore::XPath::LocationPath::setAbsolute): A new accessor.
   50185 
   50186         * xml/XPathStep.h:
   50187         (WebCore::XPath::Step::NodeTest::):
   50188         (WebCore::XPath::Step::NodeTest::NodeTest):
   50189         (WebCore::XPath::Step::NodeTest::kind):
   50190         (WebCore::XPath::Step::NodeTest::data):
   50191         Step::NodeTest is a new sub-class that represents a fully parsed NodeTest.
   50192         (WebCore::XPath::Step::axis):
   50193         (WebCore::XPath::Step::nodeTest):
   50194         (WebCore::XPath::Step::nodeTestData):
   50195         (WebCore::XPath::Step::namespaceURI):
   50196         (WebCore::XPath::Step::predicates):
   50197         (WebCore::XPath::Step::setAxis):
   50198         (WebCore::XPath::Step::setNodeTest):
   50199         (WebCore::XPath::Step::setNodeTestData):
   50200         (WebCore::XPath::Step::setNamespaceURI):
   50201         (WebCore::XPath::Step::setPredicates):
   50202         New accessors that let optimizeStepPair() manipulate Step data.
   50203 
   50204         * xml/XPathStep.cpp:
   50205         (WebCore::XPath::Step::Step): Use the new NodeTest class.
   50206         (WebCore::XPath::Step::evaluate): Cache evaluationContext in a local variable. Use swap() to avoid
   50207         performing unneeded vector assignments.
   50208         (WebCore::XPath::Step::nodesInAxis): Cosmetic changes.
   50209         (WebCore::XPath::Step::nodeTestMatches): Use NodeTest instead of parsing the test from string each time.
   50210         Added a partial implementation of XPath 2.0 element() node test.
   50211 
   50212 2007-03-10  Alexey Proskuryakov  <ap (a] webkit.org>
   50213 
   50214         Reviewed by Darin.
   50215 
   50216         http://bugs.webkit.org/show_bug.cgi?id=12249
   50217         FCKeditor: <hr>, <ul> and <ol> have id="undefined"
   50218 
   50219         This fixes the attached reduction, but not the original issue.
   50220 
   50221         Test: editing/execCommand/default-parameters.html
   50222 
   50223         * dom/Document.h:
   50224         * dom/Document.idl:
   50225         Make second and third execCommand() parameters optional.
   50226 
   50227 2007-03-10  Adele Peterson  <adele (a] apple.com>
   50228 
   50229         Reviewed by Maciej.
   50230 
   50231         Fix for http://bugs.webkit.org/show_bug.cgi?id=13028
   50232         REGRESSION: textField:doCommandBySelector:inFrame: not being called properly
   50233 
   50234         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
   50235           Before calling the base class defaultEventHandler, which will call handleKeypress, call doTextFieldCommandFromEvent.        
   50236 
   50237 2007-03-10  Mitz Pettel  <mitz (a] webkit.org>
   50238 
   50239         Reviewed by Darin.
   50240 
   50241         - fix http://bugs.webkit.org/show_bug.cgi?id=13013
   50242           REGRESSION: Selection box does not scroll to where the focus jumps when pressing an alphanumeric key
   50243 
   50244         Test: fast/forms/listbox-typeahead-scroll.html
   50245 
   50246         * html/HTMLSelectElement.cpp:
   50247         (WebCore::HTMLSelectElement::setSelectedIndex): Reordered to set the active selection's
   50248         anchor and end before selecting the option, since the active selection is used to
   50249         decide where to scroll when the selection is made.
   50250         (WebCore::HTMLSelectElement::defaultEventHandler): Removed redundant check.
   50251 
   50252 2007-03-10  Mitz Pettel  <mitz (a] webkit.org>
   50253 
   50254         Reviewed by Darin.
   50255 
   50256         - fix http://bugs.webkit.org/show_bug.cgi?id=12973
   50257           REGRESSION: Reproducible assert while loading this test file if css is already in the cache
   50258 
   50259         Test: fast/dom/css-cached-import-rule.html
   50260 
   50261         Replaced some direct calls to document->stylesheetLoaded() with calls to
   50262         the sheet's checkLoaded(). The latter calls back to the element's sheetLoaded() --
   50263         which notifies the document of the load -- and then updates the sheet's
   50264         loadCompleted() flag, ensuring that it stays in sync with whether the stylesheet
   50265         is still considered pending by the document.
   50266 
   50267         * dom/ProcessingInstruction.cpp:
   50268         (WebCore::ProcessingInstruction::parseStyleSheet):
   50269         * dom/StyleElement.cpp:
   50270         (WebCore::StyleElement::childrenChanged):
   50271         * html/HTMLLinkElement.cpp:
   50272         (WebCore::HTMLLinkElement::process):
   50273         (WebCore::HTMLLinkElement::setCSSStyleSheet):
   50274         * ksvg2/svg/SVGStyleElement.cpp:
   50275         (WebCore::SVGStyleElement::sheetLoaded):
   50276         * ksvg2/svg/SVGStyleElement.h:
   50277 
   50278 2007-03-10  David Kilzer  <ddkilzer (a] webkit.org>
   50279 
   50280         Reviewed by Darin.
   50281 
   50282         - fix http://bugs.webkit.org/show_bug.cgi?id=9609
   50283           REGRESSION: Missing image icon needs to be moved back to WebKit
   50284 
   50285         * WebCore.exp: Export WebCore::Image::loadPlatformResource(const char*) for use in
   50286         [WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:].
   50287 
   50288 2007-03-09  Darin Adler  <darin (a] apple.com>
   50289 
   50290         Reviewed by Justin.
   50291 
   50292         - fix http://bugs.webkit.org/show_bug.cgi?id=8928
   50293           <rdar://problem/5045708> REPRODUCIBLE ASSERT: Cannot paste HTML into a
   50294           contenteditable region in an XHTML document (8928)
   50295 
   50296         Test: editing/pasteboard/paste-xml.xhtml
   50297 
   50298         * editing/markup.cpp: (WebCore::createFragmentFromMarkup): Added a check for 0
   50299         here, since createContextualFragment can return 0 for XML documents that fail
   50300         to parse. In my testing, callers all seem equipped to handle 0.
   50301 
   50302 2007-03-09  Mitz Pettel  <mitz (a] webkit.org>
   50303 
   50304         Reviewed by Darin.
   50305 
   50306         - fix http://bugs.webkit.org/show_bug.cgi?id=9929
   50307           REGRESSION: crash on logging in on mijnpostbank.nl
   50308 
   50309         Test: http/tests/misc/onload-remove-iframe-crash-2.html
   50310 
   50311         The resulted from an iframe's load event handler removing the iframe
   50312         from the document.
   50313 
   50314         * dom/Document.cpp:
   50315         (WebCore::Document::implicitClose): Bail out early if an event handler
   50316         removed the frame.
   50317         * loader/FrameLoader.cpp:
   50318         (WebCore::FrameLoader::FrameLoader):
   50319         (WebCore::FrameLoader::clear):
   50320         (WebCore::FrameLoader::checkCompleted): Protect the frame from deletion
   50321         by event handlers.
   50322         (WebCore::FrameLoader::checkCompletedTimerFired):
   50323         (WebCore::FrameLoader::scheduleCheckCompleted):
   50324         (WebCore::FrameLoader::detachFromParent): Schedule a completion check
   50325         on the parent (in case the child is what has been keeping it from completing).
   50326         * loader/FrameLoader.h:
   50327 
   50328 2007-03-08  David Kilzer  <ddkilzer (a] webkit.org>
   50329 
   50330         Reviewed by Beth.
   50331 
   50332         - fix http://bugs.webkit.org/show_bug.cgi?id=13019
   50333           REGRESSION (r20074): Forms don't submit on a variety of websites
   50334 
   50335         No tests added since LayoutTests/fast/forms/document-write.html was timing out
   50336         and causing a layout test failure.
   50337 
   50338         * html/HTMLFormElement.cpp:
   50339         (WebCore::HTMLFormElement::submit): Removed stray code.
   50340 
   50341 2007-03-08  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   50342 
   50343         Not reviewed - gdk build fix.
   50344 
   50345         * platform/graphics/cairo/ImageSourceCairo.cpp:
   50346         (WebCore::ImageSource::frameIsCompleteAtIndex): add empty stub
   50347 
   50348 2007-03-08  Justin Garcia  <justin.garcia (a] apple.com>
   50349 
   50350         Reviewed by harrison
   50351         
   50352         <rdar://problem/4903193> 
   50353         On particular page, Copy is so slow it seems like a hang
   50354         
   50355         ~2x speedup copying:
   50356         http://shakespeare.mit.edu/henryviii/full.html 
   50357         Also produces less bloated markup.
   50358 
   50359         * editing/markup.cpp:
   50360         (WebCore::startMarkup): Don't wrap text nodes in style spans.
   50361         For Elements, don't inline styles inherited from ancestors.
   50362         (WebCore::createMarkup): No longer necessary to find 
   50363         the root's default style and pass it to startMarkup.
   50364         Add a wrapper span around the markup with the styles
   50365         that all nodes in the markup inherit (the inheritable 
   50366         styles from the common ancestor container's computed style).
   50367         Added a FIXME about unecessary markup for inline ancestors 
   50368         up to the commonAncestorBlock.
   50369 
   50370 2007-03-08  Darin Adler  <darin (a] apple.com>
   50371 
   50372         Reviewed by Adele.
   50373 
   50374         - <rdar://problem/4470381> multipart/form-data boundary security vulnerability
   50375 
   50376         By making the form data boundary a string with some random data in it, we reduce
   50377         the possibility that anyone could take advantage of it by creating a file that
   50378         intentionally has the boundary string in it.
   50379 
   50380         * html/HTMLFormElement.h: Removed boundary(), setBoundary(), and m_boundary.
   50381         Marked a lot more stuff private.
   50382         * html/HTMLFormElement.cpp:
   50383         (WebCore::HTMLFormElement::HTMLFormElement): Removed code to initialize
   50384         m_boundary.
   50385         (WebCore::randomNumber): Added. Function that returns a random number, including
   50386         seeding the random number generator the first time it's called. For now, usees the more
   50387         random function random() on Mac OS X and the more-standard rand() on other platforms.
   50388         (WebCore::HTMLFormElement::formData): Take a parameter with the form boundary string,
   50389         and use that instead of m_boundary.
   50390         (WebCore::getUniqueBoundaryString): Added. Makes a boundary string using random numbers
   50391         and base 64 encoding.
   50392         (WebCore::HTMLFormElement::submit): Call getUniqueBoundaryString and pass the boundary
   50393         string into formData for multipart form posts.
   50394 
   50395 2007-03-08  Maciej Stachowiak  <mjs (a] apple.com>
   50396 
   50397         Reviewed by Adele.
   50398         
   50399         <rdar://problem/4646563> REGRESSION: Unable to send text message from Verizon text message website: vtext.com (12588)
   50400         http://bugs.webkit.org/show_bug.cgi?id=12588
   50401 
   50402         Carefully revised which focus operations restore previous selection, which clear it, and which
   50403         select the whole control contents.
   50404         
   50405         Tests:
   50406         fast/forms/focus-selection-input.html
   50407         fast/forms/focus-selection-textarea.html
   50408         
   50409         * dom/Element.cpp:
   50410         (WebCore::Element::focus):
   50411         * dom/Element.h:
   50412         * html/HTMLInputElement.cpp:
   50413         (WebCore::HTMLInputElement::focus):
   50414         (WebCore::HTMLInputElement::accessKeyAction):
   50415         * html/HTMLInputElement.h:
   50416         * html/HTMLLabelElement.cpp:
   50417         (WebCore::HTMLLabelElement::focus):
   50418         (WebCore::HTMLLabelElement::accessKeyAction):
   50419         * html/HTMLLabelElement.h:
   50420         * html/HTMLLegendElement.cpp:
   50421         (WebCore::HTMLLegendElement::focus):
   50422         * html/HTMLLegendElement.h:
   50423         * html/HTMLTextAreaElement.cpp:
   50424         (WebCore::HTMLTextAreaElement::focus):
   50425         * html/HTMLTextAreaElement.h:
   50426         * page/FocusController.cpp:
   50427         (WebCore::FocusController::advanceFocus):
   50428 
   50429 2007-03-08  Justin Garcia  <justin.garcia (a] apple.com>
   50430 
   50431         Reviewed by harrison
   50432 
   50433         <http://bugs.webkit.org/show_bug.cgi?id=12244>
   50434         FCKeditor: Find dialog doesn't work
   50435 
   50436         * bindings/js/kjs_window.cpp:
   50437         (KJS::Window::find): Added.  This function doesn't yet 
   50438         support whole word searches, searching in subframes, or
   50439         opening the find dialog.
   50440         (KJS::WindowFunc::callAsFunction):
   50441         * bindings/js/kjs_window.h:
   50442         (KJS::Window::):
   50443 
   50444 2007-03-08  David Hyatt  <hyatt (a] apple.com>
   50445 
   50446         Fix regression from throwing away frames of large animated images.  Alter
   50447         animated images so that they refuse to advance the animation until the
   50448         current displayed frame has been fully decoded.
   50449 
   50450         Reviewed by ggaren
   50451 
   50452         * platform/graphics/BitmapImage.cpp:
   50453         (WebCore::BitmapImage::startAnimation):
   50454         (WebCore::BitmapImage::advanceAnimation):
   50455         * platform/graphics/ImageSource.h:
   50456         * platform/graphics/cg/ImageSourceCG.cpp:
   50457         (WebCore::ImageSource::frameIsCompleteAtIndex):
   50458 
   50459 2007-03-08  David Hyatt  <hyatt (a] apple.com>
   50460 
   50461         Fix 2% performance regression on the PLT.  Increase the large animated
   50462         image cutoff from 1MB to 5MB.
   50463 
   50464         In addition when pruning we will aggressively discard image sources.
   50465 
   50466         Reviewed by ggaren
   50467 
   50468         * platform/graphics/BitmapImage.cpp:
   50469         (WebCore::BitmapImage::destroyDecodedData):
   50470 
   50471 2007-03-08  Timothy Hatcher  <timothy (a] apple.com>
   50472 
   50473         Reviewed by John.
   50474 
   50475         <rdar://problem/4664697> highlighter SPI needs a node parameter to give more context
   50476 
   50477         Pass the RenderObject's node to customHighlightLineRect and paintCustomHighlight.
   50478 
   50479         * page/Frame.h:
   50480         * page/mac/FrameMac.mm:
   50481         (WebCore::Frame::customHighlightLineRect):
   50482         (WebCore::Frame::paintCustomHighlight):
   50483         * page/mac/WebCoreFrameBridge.h:
   50484         * rendering/InlineTextBox.cpp:
   50485         (WebCore::InlineTextBox::paintCustomHighlight):
   50486         * rendering/RenderBox.cpp:
   50487         (WebCore::RenderBox::paintCustomHighlight):
   50488         * rendering/RootInlineBox.cpp:
   50489         (WebCore::RootInlineBox::addHighlightOverflow):
   50490         (WebCore::RootInlineBox::paintCustomHighlight):
   50491 
   50492 2007-03-08  Justin Garcia  <justin.garcia (a] apple.com>
   50493 
   50494         Reviewed by harrison
   50495         
   50496         <http://bugs.webkit.org/show_bug.cgi?id=13000>
   50497         Range.createContextualFragment is not supported
   50498 
   50499         * dom/Range.cpp:
   50500         (WebCore::Range::createContextualFragment): The
   50501         "startContainer" may not be a container, if the
   50502         range starts inside text.  In that case, look
   50503         to the parent of the start node for an HTMLElement.
   50504 
   50505 2007-03-08  Justin Garcia  <justin.garcia (a] apple.com>
   50506 
   50507         Reviewed by harrison
   50508         
   50509         <rdar://problem/5049671>
   50510         Gmail Editor: With linked text, Remove Formatting doesn't always remove underline
   50511 
   50512         * editing/Editor.cpp:
   50513         (WebCore::Editor::removeFormattingAndStyle): Clear removed
   50514         anchors after the deletion.
   50515 
   50516 2007-03-08  David Kilzer  <ddkilzer (a] webkit.org>
   50517 
   50518         Reviewed by NOBODY (build fix).
   50519 
   50520         Added missing file for r20059:
   50521         <rdar://problem/4708689> -- REGRESSION: Some symbols with 2-byte display as garbage in Hotmail.
   50522 
   50523         File was taken from this svn repository which contained versions of ucnv.h and ucnv_err.h
   50524         that were identical to ours:
   50525         http://source.icu-project.org/repos/icu/icu/tags/release-3-2/source/common/unicode/ucnv_cb.h
   50526 
   50527         * icu/unicode/ucnv_cb.h: Added.
   50528 
   50529 2007-03-08  Shrikant Gangoda  <shrikant.gangoda (a] celunite.com>
   50530 
   50531         Gdk build fix.
   50532 
   50533         * platform/graphics/cairo/ImageSourceCairo.cpp:
   50534         (WebCore::ImageSource::~ImageSource):
   50535         (WebCore::ImageSource::clear):
   50536 
   50537 2007-03-08  Oliver Hunt  <oliver (a] apple.com>
   50538 
   50539         Reviewed by Adam.
   50540 
   50541         To match old TEC behaviour when using ICU we need to use 
   50542         a few manual fallback encodings for the GBK/EUC-CN charsets
   50543 
   50544         <rdar://problem/4708689> -- REGRESSION: Some symbols with 2-byte display as garbage in Hotmail.
   50545 
   50546         * platform/TextCodecICU.cpp:
   50547         (WebCore::TextCodecICU::TextCodecICU):
   50548         (WebCore::TextCodecICU::createICUConverter):
   50549         (WebCore::gbkEscapes):
   50550         (WebCore::gbkCallbackEscape):
   50551         (WebCore::gbkCallbackSubstitute):
   50552         (WebCore::TextCodecICU::encode):
   50553         * platform/TextCodecICU.h:
   50554         (WebCore::TextCodecICU::needsGBKFallbacks):
   50555         (WebCore::TextCodecICU::setNeedsGBKFallbacks):
   50556 
   50557 2007-03-08  Alexey Proskuryakov  <ap (a] webkit.org>
   50558 
   50559         Build fix.
   50560 
   50561         * xml/XPathUtil.cpp:
   50562         (WebCore::XPath::stringValue):
   50563 
   50564 2007-03-08  David Hyatt  <hyatt (a] apple.com>
   50565 
   50566         This patch dramatically reduces the memory consumed by animated images.  For large animated GIFs (defined for
   50567         now as >1mb in terms of decoded frame buffer size), we will now aggressively flush previous frames of the
   50568         animated GIF and just re-decode them on the fly if the animation loops.
   50569 
   50570         Whenever a large animated GIF has its animation reset, we will also just throw out everything and start
   50571         the animation over (in order to get rid of any cached detritus held in the ImageSource).
   50572 
   50573         With this patch and the sample GIF used to test, WebKit's memory consumption went from 160MB down to 16MB.
   50574 
   50575         Reviewed by mjs
   50576 
   50577         * platform/graphics/BitmapImage.cpp:
   50578         (WebCore::BitmapImage::destroyDecodedData):
   50579         (WebCore::BitmapImage::resetAnimation):
   50580         (WebCore::BitmapImage::advanceAnimation):
   50581         * platform/graphics/ImageSource.h:
   50582         * platform/graphics/cg/ImageSourceCG.cpp:
   50583         (WebCore::ImageSource::~ImageSource):
   50584         (WebCore::ImageSource::clear):
   50585 
   50586 2007-03-08  Alexey Proskuryakov  <ap (a] webkit.org>
   50587 
   50588         Reviewed by Darin.
   50589 
   50590         http://bugs.webkit.org/show_bug.cgi?id=13006
   50591         XPath string-value is broken for some node types
   50592 
   50593         Test: fast/xpath/string-value.html
   50594 
   50595         * xml/XPathUtil.cpp:
   50596         (WebCore::XPath::stringValue): Fix it :-)
   50597 
   50598 2007-03-07  Anders Carlsson  <acarlsson (a] apple.com>
   50599 
   50600         Reviewed by Adam.
   50601 
   50602         <rdar://problem/4981000> 
   50603         http://bugs.webkit.org/show_bug.cgi?id=12634
   50604         REGRESSION: crash loading web archive (12634)
   50605         
   50606         The reason this bug wasn't always reproducible is that it involved sending an event to a plugin while 
   50607         the page was loading. Before we send the event to the plugin we defer loads. The problem was that
   50608         MainResourceLoader::setDefersLoad would not work with data loads.
   50609         
   50610         * loader/DocumentLoader.cpp:
   50611         (WebCore::DocumentLoader::setRequest):
   50612         Only set m_committed to false if we also have a valid unreachable URL.
   50613         
   50614         * loader/MainResourceLoader.cpp:
   50615         (WebCore::MainResourceLoader::setDefersLoading):
   50616         Make sure to stop and start data loads.
   50617 
   50618 2007-03-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   50619 
   50620         Not reviewed.
   50621 
   50622         Gdk build fixes.
   50623 
   50624         * platform/gdk/EditorClientGdk.cpp:
   50625         (WebCore::EditorClientGdk::handleKeypress): renamed
   50626         (WebCore::EditorClientGdk::handleInputMethodKeypress): add a stub
   50627         * platform/gdk/EditorClientGdk.h:
   50628         * platform/graphics/cairo/ImageSourceCairo.cpp:
   50629         (WebCore::ImageSource::destroyFrameAtIndex): add a stub
   50630 
   50631 2007-03-07  Alexey Proskuryakov  <ap (a] webkit.org>
   50632 
   50633         Reviewed by Darin.
   50634 
   50635         http://bugs.webkit.org/show_bug.cgi?id=13004
   50636         Repeatedly calling XPathExpression.evaluate() causes crashes or memory leaks
   50637 
   50638         Removed XPath::Expression::optimize() and related methods, since they were buggy and almost useless.
   50639         Merged doEvaluate() into evaluate(), since this was all evaluate() was doing after the above changes.
   50640 
   50641         Test: fast/xpath/evaluate-twice.html
   50642 
   50643         * xml/XPathExpression.cpp:
   50644         (WebCore::XPathExpression::evaluate):
   50645         * xml/XPathExpressionNode.cpp:
   50646         (WebCore::XPath::Expression::Expression):
   50647         (WebCore::XPath::Expression::~Expression):
   50648         * xml/XPathExpressionNode.h:
   50649         * xml/XPathFunctions.cpp:
   50650         (WebCore::XPath::FunLast::evaluate):
   50651         (WebCore::XPath::FunPosition::evaluate):
   50652         (WebCore::XPath::FunId::evaluate):
   50653         (WebCore::XPath::FunLocalName::evaluate):
   50654         (WebCore::XPath::FunNamespaceURI::evaluate):
   50655         (WebCore::XPath::FunName::evaluate):
   50656         (WebCore::XPath::FunCount::evaluate):
   50657         (WebCore::XPath::FunString::evaluate):
   50658         (WebCore::XPath::FunConcat::evaluate):
   50659         (WebCore::XPath::FunStartsWith::evaluate):
   50660         (WebCore::XPath::FunContains::evaluate):
   50661         (WebCore::XPath::FunSubstringBefore::evaluate):
   50662         (WebCore::XPath::FunSubstringAfter::evaluate):
   50663         (WebCore::XPath::FunSubstring::evaluate):
   50664         (WebCore::XPath::FunStringLength::evaluate):
   50665         (WebCore::XPath::FunNormalizeSpace::evaluate):
   50666         (WebCore::XPath::FunTranslate::evaluate):
   50667         (WebCore::XPath::FunBoolean::evaluate):
   50668         (WebCore::XPath::FunNot::evaluate):
   50669         (WebCore::XPath::FunTrue::evaluate):
   50670         (WebCore::XPath::FunLang::evaluate):
   50671         (WebCore::XPath::FunFalse::evaluate):
   50672         (WebCore::XPath::FunNumber::evaluate):
   50673         (WebCore::XPath::FunSum::evaluate):
   50674         (WebCore::XPath::FunFloor::evaluate):
   50675         (WebCore::XPath::FunCeiling::evaluate):
   50676         (WebCore::XPath::FunRound::evaluate):
   50677         * xml/XPathPath.cpp:
   50678         (WebCore::XPath::Filter::evaluate):
   50679         (WebCore::XPath::LocationPath::evaluate):
   50680         (WebCore::XPath::Path::evaluate):
   50681         * xml/XPathPath.h:
   50682         * xml/XPathPredicate.cpp:
   50683         (WebCore::XPath::Number::evaluate):
   50684         (WebCore::XPath::StringExpression::evaluate):
   50685         (WebCore::XPath::Negative::evaluate):
   50686         (WebCore::XPath::NumericOp::evaluate):
   50687         (WebCore::XPath::EqTestOp::evaluate):
   50688         (WebCore::XPath::LogicalOp::evaluate):
   50689         (WebCore::XPath::Union::evaluate):
   50690         * xml/XPathPredicate.h:
   50691         * xml/XPathStep.cpp:
   50692         * xml/XPathStep.h:
   50693         * xml/XPathVariableReference.cpp:
   50694         (WebCore::XPath::VariableReference::evaluate):
   50695         * xml/XPathVariableReference.h:
   50696 
   50697 2007-03-07  Sam Weinig  <sam (a] webkit.org>
   50698 
   50699         Reviewed by Tim H.
   50700 
   50701         Remove unused #import from Objective-C bindings and cleanup the order of #imports.
   50702 
   50703         * bindings/scripts/CodeGeneratorObjC.pm:
   50704 
   50705 2007-03-07  Sam Weinig  <sam (a] webkit.org>
   50706 
   50707         Reviewed by Tim H.
   50708 
   50709         Make sure the baseURI attribute generates for private Objective-C bindings.
   50710 
   50711         * dom/Node.idl:
   50712 
   50713 2007-03-07  Anders Carlsson  <acarlsson (a] apple.com>
   50714 
   50715         Reviewed by Maciej.
   50716 
   50717         <rdar://problem/4874059>
   50718         REGRESSION: Painter IX:register - Crash in WebCore:: ResourceLoader::willSendRequest()
   50719 
   50720         If a load is done from inside of an error delegate method that is called because we cancel another load, 
   50721         the first load should be ignored since this is what shipping WebKit does. 
   50722         
   50723         (Actually, it does load the page in the data source but doesn't do anything with it since the data source
   50724         won't have a web frame).
   50725         
   50726         * loader/FrameLoader.cpp:
   50727         (WebCore::FrameLoader::load):
   50728         Just bail out if m_isStoppingLoad is true.
   50729 
   50730 2007-03-07  David Hyatt  <hyatt (a] apple.com>
   50731 
   50732         Use CGImageRelease instead of CFRelease.
   50733 
   50734         Reviewed by aroben
   50735 
   50736         * platform/graphics/cg/ImageCG.cpp:
   50737         (WebCore::FrameData::clear):
   50738         * platform/graphics/cg/ImageSourceCG.cpp:
   50739         (WebCore::ImageSource::destroyFrameAtIndex):
   50740 
   50741 2007-03-07  David Hyatt  <hyatt (a] apple.com>
   50742 
   50743         Fix a regression where the cache size overflows because of a double
   50744         subtraction per resource when they got removed from the cache.  Add an
   50745         assert to adjustSize to detect this case in the future.
   50746 
   50747         Fix ImageSourceCG so that when we flush decoded data from our cache that
   50748         we also flush it from the ImageSource.
   50749 
   50750         Reviewed by mjs
   50751 
   50752         * loader/Cache.cpp:
   50753         (WebCore::Cache::adjustSize):
   50754         * platform/graphics/BitmapImage.cpp:
   50755         (WebCore::BitmapImage::~BitmapImage):
   50756         (WebCore::BitmapImage::destroyDecodedData):
   50757         * platform/graphics/Image.h:
   50758         * platform/graphics/ImageSource.h:
   50759         * platform/graphics/cg/ImageSourceCG.cpp:
   50760         (WebCore::ImageSource::setData):
   50761         (WebCore::ImageSource::destroyFrameAtIndex):
   50762 
   50763 2007-03-07  Mitz Pettel  <mitz (a] webkit.org>
   50764 
   50765         Reviewed by Darin.
   50766 
   50767         - fix http://bugs.webkit.org/show_bug.cgi?id=13002
   50768           Incomplete repaint of inset outlines
   50769 
   50770         Test: fast/repaint/outline-inset.html
   50771 
   50772         * rendering/RenderObject.cpp:
   50773         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   50774 
   50775 2007-03-07  Oliver Hunt  <oliver (a] apple.com>
   50776 
   50777         Reviewed by Antti.
   50778 
   50779         Reset mouse down/drag state variables on mouse button release
   50780         
   50781         Fixes <rdar://problem/5044654>: Drag out of some QuickTime plug-ins converting into image drag
   50782 
   50783         * page/EventHandler.cpp:
   50784         (WebCore::EventHandler::handleMouseReleaseEvent):
   50785 
   50786 2007-03-07  Adele Peterson  <adele (a] apple.com>
   50787 
   50788         Reviewed by Darin.
   50789 
   50790         WebCore part of fix for:
   50791         http://bugs.webkit.org/show_bug.cgi?id=10871
   50792         http://bugs.webkit.org/show_bug.cgi?id=12677
   50793         <rdar://problem/4823129> REGRESSION: IME key events different in nightly
   50794         <rdar://problem/4759563> REGRESSION: Return key is always sent when you confirm a clause in kotoeri
   50795 
   50796         * page/EventHandler.cpp: (WebCore::EventHandler::defaultKeyboardEventHandler): Call handleInputMethodKeypress before actually dispatching the keypress event
   50797           so that input methods have a chance to handle the event.  
   50798           If the input method handles the event (by marking or unmarking text), then we don't need to send the keypress event.
   50799           If an input method doesn't handle the event, then we'll save the data we need to perform the correct action (like what text to insert or what selector to use) 
   50800           when we dispatch the keypress event.
   50801 
   50802         * dom/KeyboardEvent.h: Added Mac-specific KeypressCommand struct, so we can store command info during handleInputMethodKeypress, and use it during handleKeypress.
   50803         (WebCore::KeyboardEvent::keypressCommand):
   50804         (WebCore::KeyboardEvent::setKeypressCommand):
   50805 
   50806         * bridge/EditorClient.h:
   50807         * editing/Editor.cpp:
   50808         (WebCore::Editor::handleKeypress): Changed handleKeyPress to handleKeypress.
   50809         (WebCore::Editor::handleInputMethodKeypress): Added.
   50810         * editing/Editor.h:
   50811 
   50812         * platform/graphics/svg/SVGImageEmptyClients.h:
   50813         (WebCore::SVGEmptyEditorClient::handleKeypress): Changed handleKeyPress to handleKeypress.
   50814         (WebCore::SVGEmptyEditorClient::handleInputMethodKeypress): Added.
   50815 
   50816 2007-03-07  Rob Buis  <buis (a] kde.org>
   50817 
   50818         Reviewed by Darin.
   50819 
   50820         http://bugs.webkit.org/show_bug.cgi?id=12579
   50821         WebKit fails SVG xml:base test
   50822 
   50823         Implement DOM3 properties baseURI and documentURI to fix
   50824         the testcase in bug 12579.
   50825 
   50826         * bindings/js/kjs_dom.cpp:
   50827         (KJS::DOMNode::getValueProperty):
   50828         * bindings/js/kjs_domnode.h:
   50829         (KJS::DOMNode::):
   50830         * dom/Document.cpp:
   50831         (WebCore::Document::documentURI):
   50832         (WebCore::Document::setDocumentURI):
   50833         (WebCore::Document::baseURI):
   50834         * dom/Document.h:
   50835         * dom/Document.idl:
   50836         * dom/DocumentType.cpp:
   50837         (WebCore::DocumentType::baseURI):
   50838         * dom/DocumentType.h:
   50839         * dom/Element.cpp:
   50840         (WebCore::Element::baseURI):
   50841         * dom/Element.h:
   50842         * dom/Node.cpp:
   50843         (WebCore::Node::baseURI):
   50844         * dom/Node.h:
   50845         * ksvg2/misc/SVGImageLoader.cpp:
   50846         (WebCore::SVGImageLoader::updateFromElement):
   50847         * ksvg2/svg/SVGImageElement.cpp:
   50848         (WebCore::SVGImageElement::parseMappedAttribute):
   50849         (WebCore::SVGImageElement::attach):
   50850 
   50851 2007-03-07  Anders Carlsson  <acarlsson (a] apple.com>
   50852 
   50853         Reviewed by Brady.
   50854 
   50855         Remove some methods in FrameLoader that just calls down to the active document loader. Since each
   50856         resource loader now has a pointer to its document loader, we can just call directly to the
   50857         document loader.
   50858 
   50859         * WebCore.exp:
   50860         * loader/FrameLoader.cpp:
   50861         * loader/FrameLoader.h:
   50862         * loader/MainResourceLoader.cpp:
   50863         (WebCore::MainResourceLoader::willSendRequest):
   50864         (WebCore::MainResourceLoader::didReceiveResponse):
   50865         * loader/SubresourceLoader.cpp:
   50866         (WebCore::SubresourceLoader::SubresourceLoader):
   50867         (WebCore::SubresourceLoader::didFinishLoading):
   50868         (WebCore::SubresourceLoader::didFail):
   50869         (WebCore::SubresourceLoader::didCancel):
   50870         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
   50871         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
   50872         (WebCore::NetscapePlugInStreamLoader::didFail):
   50873         (WebCore::NetscapePlugInStreamLoader::didCancel):
   50874 
   50875 2007-03-06  Geoffrey Garen  <ggaren (a] apple.com>
   50876 
   50877         Reviewed by Maciej Stachowiak.
   50878         
   50879         Fixed <rdar://problem/4576242> | http://bugs.webkit.org/show_bug.cgi?id=12586
   50880         PAC file: malloc deadlock sometimes causes a hang @ www.apple.com/pro/profiles/ (12586)
   50881         
   50882         No test because this is very difficult to repro, and the new ASSERTs in 
   50883         JavaScriptCore catch the underlying cause while running normal layout tests.
   50884         
   50885         This is a modified version of r14752 on the branch.
   50886         
   50887         The fix is to use a bit inside each node, instead of a hash table, to track 
   50888         which node subtrees are in the process of being marked. This avoids a call 
   50889         to malloc inside mark().
   50890         
   50891         * bindings/js/kjs_binding.cpp:
   50892         (KJS::domObjects):
   50893         (KJS::domNodesPerDocument):
   50894         * bindings/js/kjs_dom.cpp:
   50895         (KJS::DOMNode::mark):
   50896         * dom/Node.cpp:
   50897         (WebCore::Node::Node):
   50898         * dom/Node.h:
   50899 
   50900 2007-03-06  David Hyatt  <hyatt (a] apple.com>
   50901 
   50902         This patch reworks the WebCore memory cache to significantly reduce the amount of memory consumed by
   50903         images in the cache and to enhance the accuracy of the cache size as an absolute bound for the objects
   50904         contained within it.  WebCore's memory use over time should significantly improve as a result of these
   50905         changes.
   50906 
   50907         Cached resources now have both an encoded size (the original data stream) and a decoded size (an estimate of
   50908         the amount of memory consumed by an expanded version of that resource, e.g., the decoded frames of an image).
   50909         Both sizes now count towards the total size of the object and towards the allowed memory cache total.
   50910 
   50911         By including both totals the reported size of resources will now be larger, and the cache will therefore become
   50912         much more aggressive about flushing.
   50913 
   50914         Objects are stored in size-adjusted and popularity-aware LRU lists as before, but encoded size is now always
   50915         used when determining the correct LRU list.
   50916 
   50917         The flush algorithm for the memory cache has been rewritten to first destroy decoded data before evicting
   50918         resources.  By being able to compact its resources without evicting them, the memory cache can now hold many more
   50919         unique resources (encoded) in the same amount of space.  Depending on how much of a hit we want to take from
   50920         re-decoding images, the memory cache could in theory have its size significantly reduced now while still holding
   50921         more resources than it did at the larger size!
   50922 
   50923         Reviewed by mjs
   50924 
   50925         * WebCore.xcodeproj/project.pbxproj:
   50926         * loader/Cache.cpp:
   50927         (WebCore::Cache::requestResource):
   50928         (WebCore::Cache::prune):
   50929         (WebCore::Cache::remove):
   50930         (WebCore::Cache::lruListFor):
   50931         (WebCore::Cache::adjustSize):
   50932         * loader/Cache.h:
   50933         * loader/CachedCSSStyleSheet.cpp:
   50934         (WebCore::CachedCSSStyleSheet::data):
   50935         * loader/CachedImage.cpp:
   50936         (WebCore::CachedImage::CachedImage):
   50937         (WebCore::CachedImage::allReferencesRemoved):
   50938         (WebCore::CachedImage::clear):
   50939         (WebCore::CachedImage::data):
   50940         (WebCore::CachedImage::destroyDecodedData):
   50941         (WebCore::CachedImage::decodedSize):
   50942         (WebCore::CachedImage::decodedSizeChanged):
   50943         (WebCore::CachedImage::shouldPauseAnimation):
   50944         * loader/CachedImage.h:
   50945         * loader/CachedResource.cpp:
   50946         (WebCore::CachedResource::CachedResource):
   50947         (WebCore::CachedResource::deref):
   50948         (WebCore::CachedResource::setEncodedSize):
   50949         * loader/CachedResource.h:
   50950         (WebCore::CachedResource::allReferencesRemoved):
   50951         (WebCore::CachedResource::size):
   50952         (WebCore::CachedResource::encodedSize):
   50953         (WebCore::CachedResource::decodedSize):
   50954         (WebCore::CachedResource::destroyDecodedData):
   50955         * loader/CachedScript.cpp:
   50956         (WebCore::CachedScript::data):
   50957         * loader/CachedXSLStyleSheet.cpp:
   50958         (WebCore::CachedXSLStyleSheet::data):
   50959         * platform/graphics/BitmapImage.cpp:
   50960         (WebCore::BitmapImage::BitmapImage):
   50961         (WebCore::BitmapImage::~BitmapImage):
   50962         (WebCore::BitmapImage::destroyDecodedData):
   50963         (WebCore::BitmapImage::pruneDecodedDataIfNeeded):
   50964         (WebCore::BitmapImage::cacheFrame):
   50965         (WebCore::BitmapImage::setNativeData):
   50966         (WebCore::BitmapImage::shouldAnimate):
   50967         (WebCore::BitmapImage::advanceAnimation):
   50968         * platform/graphics/BitmapImage.h:
   50969         (WebCore::BitmapImage::decodedSize):
   50970         * platform/graphics/Image.cpp:
   50971         (WebCore::Image::Image):
   50972         * platform/graphics/Image.h:
   50973         (WebCore::Image::destroyDecodedData):
   50974         (WebCore::Image::decodedSize):
   50975         (WebCore::Image::imageObserver):
   50976         * platform/graphics/ImageAnimationObserver.h: Removed.
   50977         * platform/graphics/ImageObserver.h: Added.
   50978         (WebCore::ImageObserver::~ImageObserver):
   50979         * platform/graphics/svg/SVGImage.cpp:
   50980         (WebCore::SVGImage::SVGImage):
   50981         * platform/graphics/svg/SVGImage.h:
   50982 
   50983 2007-03-06  Alexey Proskuryakov  <ap (a] webkit.org>
   50984 
   50985         Reviewed by Sam Weinig.
   50986 
   50987         http://bugs.webkit.org/show_bug.cgi?id=12987
   50988         Fix and import 4XPath test_numeric_expr.html
   50989 
   50990         * xml/XPathPredicate.cpp:
   50991         (WebCore::XPath::Negative::doEvaluate): Convert the argument to number.
   50992         (WebCore::XPath::NumericOp::doEvaluate): Convert the arguments to numbers. Use a correct operation for mod.
   50993         * xml/XPathStep.cpp:
   50994         (WebCore::XPath::Step::nodesInAxis): Do not append parent node if there is none.
   50995         * xml/XPathValue.cpp:
   50996         (WebCore::XPath::Value::toNumber): Do not convert to DeprecatedString just to trim whitespace and to convert to double.
   50997         * platform/DeprecatedString.cpp:
   50998         (WebCore::DeprecatedStringData::makeAscii): Added a FIXME about unreliable makeAscii() behavior.
   50999 
   51000 2007-03-06  Maciej Stachowiak  <mjs (a] apple.com>
   51001 
   51002         Reviewed by Adele.
   51003 
   51004         <rdar://problem/4619663> REGRESSION (NativePopup): Popup menu doesn't draw at the correct vertical position (9816)
   51005         
   51006         * platform/mac/PopupMenuMac.mm:
   51007         (WebCore::PopupMenu::show): Make a temporary dummy view with the
   51008         passed in rect, since AppKit will use the view bounds to determine
   51009         what area to exclude when popping up a menu moved to the top of
   51010         the screen.
   51011 
   51012 2007-03-06  Geoffrey Garen  <ggaren (a] apple.com>
   51013 
   51014         Reviewed by Maciej Stachowiak.
   51015 
   51016         Fixed all known crashers exposed by run-webkit-tests --threaded [*]. See 
   51017         JavaScriptCore ChangeLog for more details.
   51018 
   51019         * bindings/js/kjs_binding.cpp:
   51020         (KJS::domNodesPerDocument): Added thread safety ASSERT.
   51021         (KJS::ScriptInterpreter::mark): Removed obsolete logic for marking unsafe
   51022         objects when collecting on a secondary thread. The Collector takes care
   51023         of this now.
   51024 
   51025         * bindings/js/kjs_binding.h:
   51026         (KJS::DOMObject::DOMObject): Used new API for specifying that WebCore
   51027         objects should be garbage collected on the main thread only.
   51028 
   51029         * bindings/js/kjs_window.cpp:
   51030         (KJS::ScheduledAction::execute): Moved JSLock to cover implementedsCall() call,
   51031         which, for some subclasses, ends up allocating garbage collected objects.
   51032         (This fix was speculative. I didn't actually see a crash from this.)
   51033         (KJS::Window::timerFired): Added JSLock around ScheduleAction destruction,
   51034         since it destroys a KJS::List.
   51035 
   51036         * bindings/objc/WebScriptObject.mm:
   51037         (-[WebScriptObject setException:]): Added JSLock. (This fix was speculative. 
   51038         I didn't actually see a crash from this.)
   51039 
   51040         * bridge/mac/WebCoreScriptDebugger.mm:
   51041         (-[WebCoreScriptCallFrame evaluateWebScript:]): Added JSLock. (This fix 
   51042         was speculative. I didn't actually see a crash from this.)
   51043 
   51044         * dom/Document.cpp:
   51045         (WebCore::Document::~Document): Added JSLock around modification to 
   51046         domNodesPerDocument(), which can be accessed concurrently during garbage 
   51047         collection.
   51048         * dom/Node.cpp:
   51049         (WebCore::Node::setDocument): ditto.
   51050         
   51051         [*] fast/js/toString-stack-overflow.html is an exception. --threaded mode
   51052         crashes this test because it causes the garbage collector to run frequently,
   51053         and this test crashes if you happen to garbage collect while it's running.
   51054         This is a known issue with stack overflow during the mark phase. It's
   51055         not related to threading.
   51056 
   51057 2007-03-06  Mark Rowe  <mrowe (a] apple.com>
   51058 
   51059         Reviewed by Sam Weinig.
   51060 
   51061         Fix http://bugs.webkit.org/show_bug.cgi?id=12942
   51062         Bug 12942: ASSERTION FAILURE: qantas.com.au changing selected item in <select> via JS
   51063 
   51064         Test: fast/dom/select-selectedIndex-bug-12942.html.
   51065 
   51066         * html/HTMLSelectElement.cpp:
   51067         (WebCore::HTMLSelectElement::recalcListItems): Reset m_lastOnChangeIndex when recalculating list items.
   51068         * html/HTMLSelectElement.h:
   51069 
   51070 2007-03-06  Brady Eidson  <beidson (a] apple.com>
   51071 
   51072         Rubberstamped by Kevin Decker
   51073 
   51074         20,000!
   51075 
   51076         * ChangeLog: Point out revision 20,000
   51077 
   51078 2007-03-06  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   51079 
   51080         Not reviewed.
   51081 
   51082         Gdk build fix.
   51083 
   51084         * loader/gdk/FrameLoaderClientGdk.cpp: update userAgent() signature.
   51085         (WebCore::FrameLoaderClientGdk::userAgent):
   51086         * loader/gdk/FrameLoaderClientGdk.h: ditto.
   51087 
   51088 2007-03-06  Mitz Pettel  <mitz (a] webkit.org>
   51089 
   51090         Reviewed by Adele.
   51091 
   51092         - fix http://bugs.webkit.org/show_bug.cgi?id=12986
   51093           REGRESSION(NativeListBox): Listboxes not updated when resized dynamically
   51094 
   51095         Test: fast/forms/select-change-listbox-size.html
   51096 
   51097         * html/HTMLSelectElement.cpp:
   51098         (WebCore::HTMLSelectElement::parseMappedAttribute): Reattach on list box size change.
   51099 
   51100 2007-03-06  Mitz Pettel  <mitz (a] webkit.org>
   51101 
   51102         Reviewed by Dave Hyatt.
   51103 
   51104         - fix http://bugs.webkit.org/show_bug.cgi?id=12885
   51105           REGRESSION (r19696): Incomplete background repaint
   51106 
   51107         Tests: fast/repaint/content-into-overflow.html
   51108                fast/repaint/overflow-into-content.html
   51109 
   51110         Changed repaintAfterLayoutIfNeeded() to take, in addition to the clipped overflow
   51111         rect, the unclipped border box plus outline, and to repaint any areas that
   51112         were added or removed from that box, in addition to any areas added or removed
   51113         from the clipped overflow rect.
   51114 
   51115         * platform/graphics/svg/SVGResourceMarker.cpp:
   51116         (WebCore::SVGResourceMarker::draw):
   51117         * rendering/RenderBlock.cpp:
   51118         (WebCore::RenderBlock::layoutBlock):
   51119         * rendering/RenderBox.cpp:
   51120         (WebCore::RenderBox::absoluteClippedOverflowRect): Renamed getAbsoluteRepaintRect() to
   51121         this.
   51122         * rendering/RenderBox.h:
   51123         * rendering/RenderFlexibleBox.cpp:
   51124         (WebCore::RenderFlexibleBox::layoutBlock):
   51125         * rendering/RenderFlow.cpp:
   51126         (WebCore::RenderFlow::absoluteClippedOverflowRect):
   51127         * rendering/RenderFlow.h:
   51128         * rendering/RenderForeignObject.cpp:
   51129         (WebCore::RenderForeignObject::layout):
   51130         * rendering/RenderHTMLCanvas.cpp:
   51131         (WebCore::RenderHTMLCanvas::layout):
   51132         * rendering/RenderImage.cpp:
   51133         (WebCore::RenderImage::layout):
   51134         * rendering/RenderLayer.cpp:
   51135         (WebCore::RenderLayer::RenderLayer):
   51136         (WebCore::RenderLayer::checkForRepaintOnResize):
   51137         (WebCore::RenderLayer::updateLayerPositions):
   51138         * rendering/RenderLayer.h:
   51139         * rendering/RenderObject.cpp:
   51140         (WebCore::RenderObject::repaint):
   51141         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   51142         (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
   51143         (WebCore::RenderObject::absoluteClippedOverflowRect):
   51144         (WebCore::RenderObject::absoluteOutlineBox):
   51145         * rendering/RenderObject.h:
   51146         * rendering/RenderPath.cpp:
   51147         (WebCore::RenderPath::layout):
   51148         (WebCore::RenderPath::absoluteClippedOverflowRect):
   51149         (WebCore::RenderPath::absoluteRects):
   51150         (WebCore::RenderPath::drawMarkersIfNeeded):
   51151         * rendering/RenderPath.h:
   51152         * rendering/RenderSVGContainer.cpp:
   51153         (WebCore::RenderSVGContainer::layout):
   51154         (WebCore::RenderSVGContainer::absoluteClippedOverflowRect):
   51155         (WebCore::RenderSVGContainer::absoluteRects):
   51156         * rendering/RenderSVGContainer.h:
   51157         * rendering/RenderSVGHiddenContainer.cpp:
   51158         (WebCore::RenderSVGHiddenContainer::absoluteClippedOverflowRect):
   51159         * rendering/RenderSVGHiddenContainer.h:
   51160         * rendering/RenderSVGImage.cpp:
   51161         (WebCore::RenderSVGImage::imageChanged):
   51162         (WebCore::RenderSVGImage::absoluteClippedOverflowRect):
   51163         (WebCore::RenderSVGImage::absoluteRects):
   51164         * rendering/RenderSVGImage.h:
   51165         * rendering/RenderSVGText.cpp:
   51166         (WebCore::RenderSVGText::absoluteClippedOverflowRect):
   51167         (WebCore::RenderSVGText::layout):
   51168         (WebCore::RenderSVGText::absoluteRects):
   51169         * rendering/RenderSVGText.h:
   51170         * rendering/RenderTable.cpp:
   51171         (WebCore::RenderTable::layout):
   51172         * rendering/RenderTableCell.cpp:
   51173         (WebCore::RenderTableCell::absoluteClippedOverflowRect):
   51174         * rendering/RenderTableCell.h:
   51175         * rendering/RenderTableCol.cpp:
   51176         (WebCore::RenderTableCol::absoluteClippedOverflowRect):
   51177         * rendering/RenderTableCol.h:
   51178         * rendering/RenderTableRow.cpp:
   51179         (WebCore::RenderTableRow::absoluteClippedOverflowRect):
   51180         * rendering/RenderTableRow.h:
   51181         * rendering/RenderText.cpp:
   51182         (WebCore::RenderText::absoluteClippedOverflowRect):
   51183         * rendering/RenderText.h:
   51184 
   51185 2007-03-06  Feng Qian  <feng (a] chromium.org>
   51186 
   51187         Reviewed by Maciej.
   51188 
   51189         - fixed http://bugs.webkit.org/show_bug.cgi?id=12720
   51190         Bug 12720: Re-defining window.location.toString function keeps re-loading forever
   51191 
   51192         * bindings/js/kjs_window.cpp:
   51193         Disallow replacing functions in LocationTable, and return early without updating URL.
   51194 
   51195 2007-03-06  Kevin McCullough  <kmccullough (a] apple.com>
   51196 
   51197         Reviewed by Darin.
   51198 
   51199         <http://bugs.webkit.org/show_bug.cgi?id=12686>
   51200         REGRESSION: Bloglines.com Feeds tab cannot expand folders in TOT
   51201         - Now all class constructors implement implementsHasInstance.
   51202 
   51203         * bindings/scripts/CodeGeneratorJS.pm:
   51204 
   51205 2007-03-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   51206 
   51207         Reviewed by Rob & Oliver.
   51208 
   51209         Preparations for the new SVG text engine.
   51210 
   51211         Handle baseline-shift / kerning css values correctly.
   51212         Recognize missing svg presentation attribute "font-size-adjust".
   51213         Add all missing svg<->css property mappings in mapToEntry().
   51214 
   51215         Doesn't affect any layout test (as these properties are not used w/o my text patch).
   51216         While I'm at it, unify the macro names (RS_ -> SVG_RS_) & cleanup style a bit.
   51217 
   51218         * ksvg2/css/CSSPropertyNames.in:
   51219         * ksvg2/css/SVGCSSParser.cpp:
   51220         (WebCore::CSSParser::parseSVGValue):
   51221         * ksvg2/css/SVGCSSStyleSelector.cpp:
   51222         (WebCore::CSSStyleSelector::applySVGProperty):
   51223         * ksvg2/css/SVGRenderStyle.cpp:
   51224         (WebCore::SVGRenderStyle::SVGRenderStyle):
   51225         (WebCore::SVGRenderStyle::operator==):
   51226         (WebCore::SVGRenderStyle::inheritedNotEqual):
   51227         (WebCore::SVGRenderStyle::inheritFrom):
   51228         * ksvg2/css/SVGRenderStyle.h:
   51229         (WebCore::SVGRenderStyle::NonInheritedFlags::):
   51230         (WebCore::SVGRenderStyle::setBitDefaults):
   51231         * ksvg2/css/SVGRenderStyleDefs.cpp:
   51232         (StyleTextData::StyleTextData):
   51233         (StyleTextData::operator==):
   51234         (StyleMiscData::StyleMiscData):
   51235         (StyleMiscData::operator==):
   51236         * ksvg2/css/SVGRenderStyleDefs.h:
   51237         (WebCore::):
   51238         (WebCore::StyleTextData::operator!=):
   51239         * ksvg2/svg/SVGStyledElement.cpp:
   51240         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
   51241 
   51242 2007-03-06  Justin Garcia  <justin.garcia (a] apple.com>
   51243 
   51244         Reviewed by kevin
   51245         
   51246         <http://bugs.webkit.org/show_bug.cgi?id=12245>
   51247         FCKeditor: Remove Format sometimes doesn't work
   51248         <rdar://problem/4786404>
   51249         Underline style is not removed from selection after performing Remove Format
   51250 
   51251         * editing/Editor.cpp:
   51252         (WebCore::Editor::removeFormattingAndStyle): Re-wrote this.
   51253 
   51254 2007-03-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   51255 
   51256         Reviewed by Oliver.
   51257 
   51258         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12979
   51259         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12981
   51260 
   51261         Guard against registering pending resources with empty id.
   51262         Be careful with calling recalcStyle() in SVGUseElement, when change is "Detach" we
   51263         have to use special code, as calling attach() on the shadow tree root element will crash,
   51264         because it has no (direct) parent node, only a shadow parent node element.
   51265 
   51266         * ksvg2/misc/SVGDocumentExtensions.cpp:
   51267         (WebCore::SVGDocumentExtensions::addPendingResource):
   51268         * ksvg2/svg/SVGUseElement.cpp:
   51269         (WebCore::SVGUseElement::recalcStyle):
   51270 
   51271 2007-03-06  Kevin Decker  <kdecker (a] apple.com>
   51272 
   51273         Reviewed by Adele.
   51274 
   51275         Fixed: <rdar://problem/5041660> REGRESSION: <keygen> element broken, prevents users from signing up for Thawte email certs
   51276         
   51277         * bindings/objc/DOM.mm:
   51278         (WebCore::createElementClassMap): Added <keygen> to the DOM bindings so it can be accessed from Objective-C.
   51279         * css/html4.css: Apply the look of the <select> element to <keygen>.
   51280         * html/HTMLElementFactory.cpp:
   51281         (WebCore::keygenConstructor): Added. 
   51282         (WebCore::createFunctionMap): Added keygen.
   51283         * html/HTMLSelectElement.cpp: Made const typeAheadTimeout variable static const. 
   51284         (WebCore::HTMLSelectElement::HTMLSelectElement):  Fix both HTMLSelectElement constructors to initialize the
   51285          same number of member variables. The fact that some fields were not initialized could (and would) crash the
   51286          keygen element when selecting different items. Also removed m_typedString(String()) from the constructor
   51287          initialization because this is not needed.
   51288 
   51289 2007-03-06  Kevin McCullough  <kmccullough (a] apple.com>
   51290 
   51291         Reviewed by Darin.
   51292 
   51293         - Rename a function to clarify its purpose.
   51294 
   51295         * WebCore.exp:
   51296         * loader/FrameLoader.cpp:
   51297         (WebCore::FrameLoader::registerURLSchemeAsLocal):
   51298         * loader/FrameLoader.h:
   51299 
   51300 2007-03-06  Adam Roben  <aroben (a] apple.com>
   51301 
   51302         Build fix.
   51303 
   51304         * WebCore.exp: Updated symbols.
   51305 
   51306 2007-03-06  Adam Roben  <aroben (a] apple.com>
   51307 
   51308         Reviewed by Anders.
   51309 
   51310         Added a parameter to all StringTruncator methods to specify whether
   51311         rounding hacks should be on or off.
   51312 
   51313         No layout test possible.
   51314 
   51315         * platform/StringTruncator.cpp:
   51316         (WebCore::stringWidth): Added disableRoundingHacks parameter.
   51317         (WebCore::truncateString): Ditto.
   51318         (WebCore::StringTruncator::centerTruncate): Ditto.
   51319         (WebCore::StringTruncator::rightTruncate): Ditto.
   51320         (WebCore::StringTruncator::width): Ditto.
   51321         * platform/StringTruncator.h: Ditto.
   51322         * platform/mac/FileChooserMac.mm:
   51323         (WebCore::FileChooser::basenameForWidth): Pass in false to
   51324         centerTruncate so that the truncation matches the way the text will be
   51325         rendered.
   51326 
   51327 2007-03-06  Anders Carlsson  <acarlsson (a] apple.com>
   51328 
   51329         Reviewed by Maciej.
   51330 
   51331         <rdar://problem/5035045>
   51332         REGRESSION: WebKit browser doesn't display image at http://www.metoffice.gov.uk/weather/satellite/index.html
   51333         
   51334         It turns out WinIE does allow you to access images by their id as special document properties. However, this is only
   51335         allowed when the element also has a name attribute. The value of the name attribute is ignored and can even be empty!
   51336         
   51337         * bindings/js/kjs_html.cpp:
   51338         (KJS::JSHTMLDocument::namedItemGetter):
   51339         Return jsUndefined() if the collection is empty.
   51340         
   51341         * html/HTMLImageElement.cpp:
   51342         (WebCore::HTMLImageElement::parseMappedAttribute):
   51343         (WebCore::HTMLImageElement::insertedIntoDocument):
   51344         (WebCore::HTMLImageElement::removedFromDocument):
   51345         * html/HTMLImageElement.h:
   51346         Add the id attribute value to the extra named item map.
   51347         
   51348         * html/HTMLNameCollection.cpp:
   51349         (WebCore::HTMLNameCollection::traverseNextItem):
   51350         Check for images with name attributes that match, as well as elements with id attributes that match where
   51351         the element also has a name attribute.
   51352 
   51353 2007-03-06  Anders Carlsson  <acarlsson (a] apple.com>
   51354 
   51355         Reviewed by Adam.
   51356 
   51357         WebCore part of patch to make it possible to have different user agents for different URLs.
   51358 
   51359         * bindings/js/kjs_navigator.cpp:
   51360         (KJS::Navigator::getValueProperty):
   51361         * bindings/js/kjs_proxy.cpp:
   51362         (WebCore::KJSProxy::initScriptIfNeeded):
   51363         * loader/DocumentLoader.cpp:
   51364         (WebCore::DocumentLoader::setLoading):
   51365         * loader/FrameLoader.cpp:
   51366         (WebCore::FrameLoader::userAgent):
   51367         (WebCore::FrameLoader::loadResourceSynchronously):
   51368         (WebCore::FrameLoader::applyUserAgent):
   51369         * loader/FrameLoader.h:
   51370         * loader/FrameLoaderClient.h:
   51371         * platform/graphics/svg/SVGImageEmptyClients.h:
   51372         (WebCore::SVGEmptyFrameLoaderClient::userAgent):
   51373 
   51374 2007-03-05  Kevin McCullough  <kmccullough (a] apple.com>
   51375 
   51376         Reviewed by Mark and Dave H.
   51377 
   51378         - rdar://problem/5038491
   51379         An oversight of the security fix that prevented remote from loading local is that it
   51380         prevents user style sheets when the site is remote.  This fixes that.
   51381 
   51382         * loader/Cache.cpp: Propogate and check user style sheet flag.
   51383         (WebCore::createResource):
   51384         (WebCore::Cache::requestResource):
   51385         * loader/Cache.h: Propogate user style sheet flag.
   51386         * loader/CachedCSSStyleSheet.cpp: Propogate user style sheet flag.
   51387         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
   51388         * loader/CachedCSSStyleSheet.h: Propogate user style sheet flag.
   51389         * loader/DocLoader.cpp: Propogate user style sheet flag.
   51390         (WebCore::DocLoader::requestResource):
   51391         * loader/SubresourceLoader.cpp: Propogate and check user style sheet flag.
   51392         (WebCore::SubresourceLoader::create):
   51393         * loader/SubresourceLoader.h: Add check for user style sheet flag.
   51394         * loader/loader.cpp: Propogate user style sheet flag.
   51395         (WebCore::Loader::load):
   51396         (WebCore::Loader::servePendingRequests):
   51397         * loader/loader.h: Propogate user style sheet flag.
   51398 
   51399 2007-03-06  Nikolas Zimmermann  <zimmermann (a] kde.org>
   51400 
   51401         Reviewed by Darin.
   51402 
   51403         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12936 (Master bug used to track all current use problems.)
   51404 
   51405         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12926 (transform attribute not respected in nested <use> elements)
   51406         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12267 (getElementById broken for <use>)
   51407         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12916 (use instance in symbol definition does not work)
   51408         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12917 (mouseout event does not occur after scaling use instance)
   51409         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12838 (SVG <use> DOM broken for script)
   51410 
   51411         Added test: svg/custom/use-nested-transform.svg
   51412         Added test: svg/custom/struct-use-09-b.svg (not yet official W3C-SVG-1.1 testcase)
   51413         Fixes test: svg/custom/use-elementInstance-event-target.svg (rectangle now turns green on first click)
   51414 
   51415         Fix all (except one) known <use> bug. The remaining bug (12630) is not crucical at all.
   51416         Enable <use> again as default SVG feature, as discussed on webkit-dev.
   51417 
   51418         dom/Element.cpp needed following tweak: set hasParentStyle to true, if there is no parentNode
   51419         available - which happens for <use> nodes, as it's a shadow node. This fixes recalcStyle behaviour.
   51420         Override recalcStyle() in SVGUseElement, and properly forward the call to the shadow tree root element.
   51421         The shadow tree now receives proper style updates (without having to recreate the whole tree!).
   51422 
   51423         Override attributeChanged() in SVGUseElement and only call notifyAttributeChange if one of x/y/width/height/xlink:href
   51424         attribute changed - otherwhise we'll end up recreating the tree for every transform/style/(non-existing-attribute) change.
   51425 
   51426         Do not override transform in nested use situations, but correctly append (right-sided) the translation of the <use> element.
   51427         Some cosmetic fixes: don't add transform="translate(0 0)" attributes if both x/y values are null in the shadow tree.
   51428 
   51429         Factor out logic for replacing symbol/svg tags in the shadow tree, and also invoke it during expandUseElementsInShadowTree -
   51430         otherwhise <symbol><use xlink:href="#someOtherSymbol"></symbol> the <use> gets expanded to a <symbol>. Though no one expands
   51431         the <symbol> element - and we're end up in hitting an assertion. Avoid that.
   51432 
   51433         * bindings/js/JSSVGElementWrapperFactory.cpp:
   51434         * bindings/js/kjs_dom.cpp:
   51435         (KJS::toJS):
   51436         * bindings/objc/DOM.mm:
   51437         (WebCore::createElementClassMap):
   51438         * dom/Element.cpp:
   51439         (WebCore::Element::recalcStyle):
   51440         * ksvg2/svg/SVGElement.cpp:
   51441         (WebCore::shadowTreeParentElementForShadowTreeElement):
   51442         (WebCore::SVGElement::dispatchEvent):
   51443         * ksvg2/svg/SVGElementInstance.cpp:
   51444         * ksvg2/svg/SVGElementInstance.h:
   51445         * ksvg2/svg/SVGElementInstance.idl:
   51446         * ksvg2/svg/SVGElementInstanceList.cpp:
   51447         * ksvg2/svg/SVGElementInstanceList.h:
   51448         * ksvg2/svg/SVGElementInstanceList.idl:
   51449         * ksvg2/svg/SVGStyledElement.cpp:
   51450         (WebCore::SVGStyledElement::notifyAttributeChange):
   51451         (WebCore::SVGStyledElement::updateElementInstance):
   51452         * ksvg2/svg/SVGStyledElement.h:
   51453         * ksvg2/svg/SVGUseElement.cpp:
   51454         (WebCore::SVGUseElement::attributeChanged):
   51455         (WebCore::SVGUseElement::notifyAttributeChange):
   51456         (WebCore::SVGUseElement::recalcStyle):
   51457         (WebCore::SVGUseElement::buildPendingResource):
   51458         (WebCore::SVGUseElement::buildShadowTreeForSymbolTag):
   51459         (WebCore::SVGUseElement::alterShadowTreeForSVGTag):
   51460         (WebCore::SVGUseElement::buildShadowTree):
   51461         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
   51462         (WebCore::SVGUseElement::attachShadowTree):
   51463         * ksvg2/svg/SVGUseElement.h:
   51464         * ksvg2/svg/SVGUseElement.idl:
   51465         * ksvg2/svg/svgtags.in:
   51466 
   51467 2007-03-05  Brady Eidson  <beidson (a] apple.com>
   51468 
   51469         Reviewed by John
   51470 
   51471         Fixes <rdar://problem/4974258>
   51472         Adds some key null checking
   51473 
   51474         * bindings/js/kjs_html.cpp:
   51475         (KJS::JSHTMLElement::implementsCall): Null check doc/frame
   51476         * bindings/objc/DOMInternal.mm:
   51477         (-[WebScriptObject _initializeScriptDOMNodeImp]): Null check doc/frame
   51478 
   51479 2007-03-06  Nikolas Zimmermann  <zimmermann (a] kde.org>
   51480 
   51481         Reviewed by Darin.
   51482 
   51483         Path::normalAngleAtLength() / Path::pointAtLength() don't work correctly.
   51484         pointAtLength() was not implemented, basically and normalAngleAtLength()
   51485         had a bug in the tangent slope calculation.
   51486 
   51487         The normalAngleAtLength() stuff can only be tested with my local textPath support.
   51488         New LayoutTest: svg/custom/path-textPath-simulation.svg
   51489 
   51490         * platform/graphics/Path.cpp:
   51491         (WebCore::pathLengthApplierFunction):
   51492         * platform/graphics/PathTraversalState.cpp:
   51493         (WebCore::PathTraversalState::quadraticBezierTo):
   51494         (WebCore::PathTraversalState::cubicBezierTo):
   51495         * platform/graphics/PathTraversalState.h:
   51496         (WebCore::PathTraversalState::):
   51497 
   51498 2007-03-05  Alexey Proskuryakov  <ap (a] webkit.org>
   51499 
   51500         Reviewed by Darin.
   51501 
   51502         http://bugs.webkit.org/show_bug.cgi?id=12970
   51503         Fix and import 4XPath test_core_functions.html test
   51504 
   51505         * xml/XPathExpression.cpp:
   51506         (WebCore::XPathExpression::evaluate): Fully initialize the evaluation context.
   51507 
   51508         * xml/XPathFunctions.cpp:
   51509         (WebCore::XPath::FunSubstring::doEvaluate): Fixed handling of edge cases.
   51510         (WebCore::XPath::FunRound::round): Reimplemented to match the spec; exposed FunRound::round() to be used in
   51511         other functions.
   51512 
   51513 2007-03-05  Alexey Proskuryakov  <ap (a] webkit.org>
   51514 
   51515         Reviewed by Darin.
   51516 
   51517         http://bugs.webkit.org/show_bug.cgi?id=12954
   51518         XPath relative operations are implemented incorrectly
   51519 
   51520         * xml/XPathPredicate.cpp:
   51521         (WebCore::XPath::NumericOp::doEvaluate):
   51522         (WebCore::XPath::EqTestOp::compare):
   51523         (WebCore::XPath::EqTestOp::doEvaluate):
   51524         Reimplemented relative equality operations to match the spec.
   51525 
   51526         * xml/XPathPredicate.h:
   51527         (WebCore::XPath::NumericOp::):
   51528         (WebCore::XPath::EqTestOp::):
   51529         Moved relative operations to EqTestOp.
   51530 
   51531         * xml/XPathGrammar.y:
   51532         * xml/XPathParser.cpp:
   51533         (WebCore::XPath::Parser::nextTokenInternal):
   51534         (WebCore::XPath::Parser::lex):
   51535         Adapted for the above changes.
   51536 
   51537 2007-03-05  Mark Rowe  <mrowe (a] apple.com>
   51538 
   51539         Reviewed by Lars.
   51540 
   51541         Fix http://bugs.webkit.org/show_bug.cgi?id=12947
   51542         Bug 12947: REGRESSION: ASSERTION FAILED: maxWidth >= 0 in StringTruncator.cpp:109 in WebCore::truncateString()
   51543 
   51544         Handle nil window correctly in toUserSpace and toDeviceSpace.  On Intel Macs a message to nil that returns a
   51545         float will return 0.0.  We use this as the divisor in calculating a scale factor, which results in NaN being
   51546         introduced into our rect.
   51547 
   51548         * platform/mac/ScreenMac.mm:
   51549         (WebCore::toUserSpace):
   51550         (WebCore::toDeviceSpace):
   51551 
   51552 2007-03-05  Rob Buis  <buis (a] kde.org>
   51553 
   51554         Reviewed by Darin.
   51555 
   51556         http://bugs.webkit.org/show_bug.cgi?id=12868
   51557         parts of the CSS classes in this simple SVG example are not applied
   51558 
   51559         Make sure the xml stylesheets are parsed in strict mode.
   51560 
   51561         * dom/ProcessingInstruction.cpp:
   51562         (WebCore::ProcessingInstruction::parseStyleSheet):
   51563 
   51564 2007-03-04  Adele Peterson  <adele (a] apple.com>
   51565 
   51566         Reviewed by Darin.
   51567 
   51568         Change to dispatch the keypress event during the defaultEventHandler for keydown events.  This matches IE behavior.
   51569         This is preparation for fixing event dispatch with input methods (http://bugs.webkit.org/show_bug.cgi?id=10871)
   51570 
   51571         Test: fast/events/keydown-keypress-preventDefault.html
   51572 
   51573         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::defaultEventHandler): Call the defaultKeyboardEventHandler for keydown events.
   51574         * page/EventHandler.cpp:
   51575         (WebCore::eventTargetNodeForDocument): Return 0 instead of false since the return type in EventTargetNode.
   51576         (WebCore::EventHandler::keyEvent): Removed dispatch of keypress event, since this is now done in the default event handler.
   51577         (WebCore::EventHandler::defaultKeyboardEventHandler): For keydown events, create and dispatch a keypress event.
   51578 
   51579 2007-03-04  Alexey Proskuryakov  <ap (a] webkit.org>
   51580 
   51581         Reviewed by Nikolas Zimmermann (yay!).
   51582 
   51583         http://bugs.webkit.org/show_bug.cgi?id=12962
   51584         4XPath tests crash on lang() function
   51585 
   51586         Covered by 4XPath tests, to be landed later.
   51587 
   51588         * platform/StringImpl.cpp:
   51589         (WebCore::StringImpl::reverseFind): Do not crash with empty strings.
   51590         * xml/XPathFunctions.cpp:
   51591         (WebCore::XPath::FunLang::doEvaluate): Do not crash when an element has no
   51592         attributes. Use a proper namespace for xml:lang (not sure where "xms" came from).
   51593         Rewrote the algorithm for suffix removing to match the spec.
   51594 
   51595 2007-03-02  Anders Carlsson  <acarlsson (a] apple.com>
   51596 
   51597         Reviewed by Darin.
   51598 
   51599         <rdar://problem/5028165> 
   51600         http://bugs.webkit.org/show_bug.cgi?id=12915
   51601         REGRESSION: XMLHttpRequest.abort() does not stop loading (12915)
   51602         
   51603         * loader/DocumentLoader.cpp:
   51604         (WebCore::DocumentLoader::stopLoading):
   51605         Save the value of m_loading since calling FrameLoader::stopLoading could set it to false.
   51606         
   51607         * loader/SubresourceLoader.cpp:
   51608         (WebCore::SubresourceLoader::didCancel):
   51609         * loader/SubresourceLoader.h:
   51610         Get rid of didCancel now, it's not needed anymore.
   51611         
   51612         * xml/xmlhttprequest.cpp:
   51613         (WebCore::XMLHttpRequest::abort):
   51614         Call cancel() instead of stopLoading(). Also, set m_aborted to true so the XMLHttpRequest object
   51615         won't be dereferenced in didFail when aborting.
   51616 
   51617 2007-03-04  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   51618 
   51619         Reviewed by Nikolas Zimmermann.
   51620 
   51621         Move ScrollView stubs to ScrollViewGdk.cpp
   51622 
   51623         * platform/gdk/FrameGdk.h: remove comment that no longer makes sense
   51624         * platform/gdk/ScrollViewGdk.cpp:
   51625         (WebCore::ScrollView::addChild):
   51626         (WebCore::ScrollView::removeChild):
   51627         (WebCore::ScrollView::scrollPointRecursively):
   51628         (WebCore::ScrollView::inWindow):
   51629         (WebCore::ScrollView::wheelEvent):
   51630         (WebCore::ScrollView::updateScrollbars):
   51631         (WebCore::ScrollView::updateScrollInfo):
   51632         (WebCore::ScrollView::windowToContents):
   51633         (WebCore::ScrollView::contentsToWindow):
   51634         (WebCore::ScrollView::scrollbarUnderMouse):
   51635         * platform/gdk/TemporaryLinkStubs.cpp:
   51636 
   51637 2007-03-02  Kevin McCullough  <kmccullough (a] apple.com>
   51638 
   51639         Reviewed by Geoff.
   51640 
   51641         - rdar://problem/4922454
   51642         - This fixes a security issue by making remote referrers not able to access local
   51643         resources, unless they register their schemes to be treated as local. The result is
   51644         that those schemes can access local resources and cannot be accessed by remote
   51645         referrers.
   51646         Because this behavior is new a link-on-or-after check is made to determine if the
   51647         app should use the older, less safe, behavior.
   51648 
   51649         * WebCore.exp: added exported functions
   51650         * bindings/objc/DOM.mm: consolodated function to base class
   51651         (-[DOMElement image]):
   51652         (-[DOMElement _imageTIFFRepresentation]):
   51653         * dom/Document.cpp: Cache the document's ability to load local resources.
   51654         (WebCore::Document::Document):
   51655         (WebCore::Document::setURL):
   51656         (WebCore::Document::shouldBeAllowedToLoadLocalResources):
   51657         (WebCore::Document::stylesheetLoaded):
   51658         * dom/Document.h: Cache the docuent's ability to load local resources.
   51659         (WebCore::Document::getPendingSheet):
   51660         (WebCore::Document::isAllowedToLoadLocalResources):
   51661         * html/HTMLImageLoader.cpp: Moved functionality into base class.
   51662         (WebCore::HTMLImageLoader::updateFromElement):
   51663         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   51664         * html/HTMLLinkElement.cpp: Handles null returns correctly now.
   51665         * html/HTMLTokenizer.cpp: Moved functionality into base class.
   51666         (WebCore::HTMLTokenizer::notifyFinished):
   51667         * ksvg2/misc/SVGImageLoader.cpp: Moved functionality into base class.
   51668         (WebCore::SVGImageLoader::dispatchLoadEvent):
   51669         * loader/Cache.cpp: Checks if the cached resource can be loaded.
   51670         (WebCore::Cache::requestResource):
   51671         * loader/CachedCSSStyleSheet.cpp: Moved functionality into base class.
   51672         (WebCore::CachedCSSStyleSheet::ref):
   51673         (WebCore::CachedCSSStyleSheet::error):
   51674         * loader/CachedImage.cpp: Moved functionality into base class.
   51675         (WebCore::CachedImage::CachedImage):
   51676         * loader/CachedImage.h: Moved functionality into base class.
   51677         (WebCore::CachedImage::canRender):
   51678         * loader/CachedResource.cpp: Cache if the CachedResource should be treated as local
   51679         (WebCore::CachedResource::CachedResource):
   51680         * loader/CachedResource.h: Moved functionality into base class.
   51681         (WebCore::CachedResource::errorOccurred):
   51682         (WebCore::CachedResource::shouldTreatAsLocal):
   51683         * loader/CachedScript.cpp: Moved functionality into base class.
   51684         (WebCore::CachedScript::CachedScript):
   51685         * loader/CachedScript.h: Moved functionality into base class.
   51686         (WebCore::CachedScript::schedule):
   51687         * loader/CachedXBLDocument.cpp: Moved functionality into base class.
   51688         (WebCore::CachedXBLDocument::error):
   51689         * loader/CachedXSLStyleSheet.cpp: Moved functionality into base class.
   51690         (WebCore::CachedXSLStyleSheet::error):
   51691         * loader/FrameLoader.cpp: See comments for each function below.
   51692         (WebCore::FrameLoader::loadSubframe): Use new canLoad.
   51693         (WebCore::FrameLoader::restrictAccessToLocal): return value of linked-on-or-after check.
   51694         (WebCore::FrameLoader::setRestrictAccessToLocal): set value for linked-on-or-after check.
   51695         (WebCore::localSchemes): Return set of schemes that are to be treated as local.
   51696         (WebCore::FrameLoader::loadPlugin): Use new canLoad.
   51697         (WebCore::FrameLoader::canLoad): Now multiple functions that each do the same work but some can take advantage of the cached values, if they were computed previously.
   51698         (WebCore::FrameLoader::shouldHideReferrer): Extracted out the logic to determine if the referrer should be hidden so it is only calculated when needed.
   51699         (WebCore::FrameLoader::loadResourceSynchronously): No longer calls canLoad to get hideReferrer info.
   51700         (WebCore::FrameLoader::registerSchemeAsLocal): Functionality to register a scheme to be treated as local.
   51701         (WebCore::FrameLoader::treatURLAsLocal): Given a URL this function determines if it should be treated as local.
   51702         * loader/FrameLoader.h: Declared functions for this security fix.  See above.
   51703         * loader/MainResourceLoader.cpp: Optized order of bools to regain performance.
   51704         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   51705         * loader/SubresourceLoader.cpp: Now restricts remote from loading local resources.
   51706         (WebCore::SubresourceLoader::create):
   51707         * page/EventHandler.cpp: Moved functionality into base class.
   51708         (WebCore::selectCursor):
   51709         * platform/KURL.cpp: KURLs need to check all the registered schemes now.
   51710         (WebCore::KURL::isLocalFile):
   51711         * rendering/HitTestResult.cpp: Moved functionality into base class.
   51712         (WebCore::HitTestResult::image):
   51713         * rendering/RenderImage.cpp: Moved functionality into base class.
   51714         (WebCore::RenderImage::setCachedImage):
   51715         (WebCore::RenderImage::imageChanged):
   51716         (WebCore::RenderImage::paint):
   51717         (WebCore::RenderImage::layout):
   51718         (WebCore::RenderImage::calcAspectRatioWidth):
   51719         (WebCore::RenderImage::calcAspectRatioHeight):
   51720         * rendering/RenderImage.h: Moved functionality into base class.
   51721         (WebCore::RenderImage::errorOccurred):
   51722         * rendering/RenderListItem.cpp: Moved functionality into base class.
   51723         (WebCore::RenderListItem::setStyle):
   51724         * rendering/RenderListMarker.cpp: Moved functionality into base class.
   51725         (WebCore::RenderListMarker::isImage):
   51726         * xml/xmlhttprequest.cpp: Check doc's cached value instead of determining independently.
   51727         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
   51728 
   51729 2007-03-02  Justin Garcia  <justin.garcia (a] apple.com>
   51730 
   51731         Reviewed by kevin
   51732         
   51733         <rdar://problem/5028447>
   51734         REGRESSION: Gmail Editor: Copied message text pastes at the wrong font size
   51735 
   51736         * editing/markup.cpp:
   51737         (WebCore::createMarkup): The style of the div that holds
   51738         a fully selected body's styles didn't include styles inherited
   51739         from the body's ancestors.
   51740         
   51741 2007-03-02  Justin Garcia  <justin.garcia (a] apple.com>
   51742 
   51743         Reviewed by harrison
   51744 
   51745         <rdar://problem/4545040>
   51746         innerHTML does not HTML-escape text nodes inside PRE elements
   51747         <rdar://problem/5027857>
   51748         Pasting into Mail from Safari's view-source window renders the HTML
   51749 
   51750         * editing/HTMLInterchange.cpp:
   51751         (WebCore::convertHTMLTextToInterchangeFormat): Send this function
   51752         the node that the text comes from as a parameter.  It shouldn't convert
   51753         '\n's to spaces/nbsps if the text is coming from text where newlines are
   51754         preserved.
   51755         * editing/HTMLInterchange.h:
   51756         * editing/markup.cpp:
   51757         (WebCore::startMarkup): Escape text inside the children of PREs.
   51758 
   51759 2007-03-02  Sam Weinig  <sam (a] webkit.org>
   51760 
   51761         Reviewed by Anders.
   51762 
   51763         Try to fix the Qt build.
   51764 
   51765         * platform/qt/TemporaryLinkStubs.cpp: Add stubs.
   51766         (WebCore::searchMenuNoRecentSearchesText):
   51767         (WebCore::searchMenuRecentSearchesText):
   51768         (WebCore::searchMenuClearRecentSearchesText):
   51769         (WebCore::AXWebAreaText):
   51770         (WebCore::AXLinkText):
   51771         (WebCore::AXListMarkerText):
   51772         (WebCore::AXImageMapText):
   51773         (WebCore::AXHeadingText):
   51774 
   51775 2007-03-02  David Harrison  <harrison (a] apple.com>
   51776 
   51777         Suggested by Darin.
   51778 
   51779         A more efficient solution to rdar://4961431.
   51780 
   51781         * bridge/mac/WebCoreAXObject.mm:
   51782         (-[WebCoreAXObject accessibilityIsIgnored]):
   51783 
   51784 2007-03-01  Justin Garcia  <justin.garcia (a] apple.com>
   51785 
   51786         Reviewed by john
   51787         
   51788         <rdar://problem/5032095>
   51789         Gmail Editor: Copied text pastes on a new line instead of current line
   51790         
   51791         Start merge failed to occur because positionAtStartOfInsertedContent
   51792         had a bug.
   51793 
   51794         * editing/ReplaceSelectionCommand.cpp:
   51795         (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent):
   51796         Was failing when inserting <span><div>foo/div></span>. Return the 
   51797         inserted content's first VisiblePosition.
   51798 
   51799 2007-03-02  Dave Hyatt  <hyatt (a] apple.com>
   51800 
   51801         Fix crasher in glyph map code (buffer overrun).
   51802 
   51803         Reviewed by darin
   51804 
   51805         * platform/win/GlyphPageTreeNodeWin.cpp:
   51806         (WebCore::GlyphPage::fill):
   51807 
   51808 2007-03-01  Antti Koivisto  <antti (a] apple.com>
   51809 
   51810         Reviewed by Maciej.
   51811 
   51812         Fix for http://bugs.webkit.org/show_bug.cgi?id=12895
   51813         REGRESSION: imagemap: pointer cursor is shown everywhere
   51814         <rdar://problem/5028163>
   51815  
   51816         Image with imagemap should never itself be URLElement in hit test results. 
   51817                
   51818         No layout test, cursor state can't be captured.
   51819 
   51820         * rendering/RenderLayer.cpp:
   51821         (WebCore::RenderLayer::hitTest):
   51822 
   51823 2007-03-01  Antti Koivisto  <antti (a] apple.com>
   51824 
   51825         Reviewed by Maciej.
   51826         
   51827         Fix http://bugs.webkit.org/show_bug.cgi?id=12690
   51828         REGRESSION: can not log in to bank of america with TOT webkit
   51829         <rdar://problem/4990044>
   51830         
   51831         and http://bugs.webkit.org/show_bug.cgi?id=12604
   51832         REGRESSION: After closing the "Would you like to save password" sheet, the form fails 
   51833         to submit automatically at http://www.mac.com/WebObjects/HomePage.woa
   51834         <rdar://problem/4871752>
   51835         
   51836         and http://bugs.webkit.org/show_bug.cgi?id=12020
   51837         REGRESSION: Flickr uploading broken
   51838         <rdar://problem/4928662>
   51839         
   51840         Turn protection against multiple forms submission back on. This approach is buggy 
   51841         but it is way better than not having it at all. Not protecting against this
   51842         breaks number of major sites.
   51843         
   51844         * bridge/mac/WebCoreAXObject.mm:
   51845         (-[WebCoreAXObject accessibilityPerformAction:]):
   51846         * loader/FrameLoader.cpp:
   51847         (WebCore::FrameLoader::resetMultipleFormSubmissionProtection):
   51848         (WebCore::FrameLoader::submitForm):
   51849         (WebCore::FrameLoader::receivedMainResourceError):
   51850         * loader/FrameLoader.h:
   51851         * page/EventHandler.cpp:
   51852         (WebCore::EventHandler::keyEvent):
   51853         * page/Frame.cpp:
   51854         (WebCore::Frame::setView):
   51855         * page/mac/EventHandlerMac.mm:
   51856         (WebCore::EventHandler::mouseDown):
   51857 
   51858 2007-03-01  Kevin McCullough  <kmccullough (a] apple.com>
   51859 
   51860         Reviewed by Adam.
   51861 
   51862         - Added the test case: external-script-URL-location.html
   51863         - Fix an issue where the url of a document is null after an open if the document
   51864         has no parent.
   51865 
   51866         * dom/Document.cpp:
   51867         (WebCore::Document::open):
   51868 
   51869 2007-03-01  Anders Carlsson  <acarlsson (a] apple.com>
   51870 
   51871         Reviewed by Darin.
   51872 
   51873         <rdar://problem/4960250> 
   51874         http://bugs.webkit.org/show_bug.cgi?id=11627
   51875         REGRESSION: Reproducible crash at IMDb in WebCore::FrameLoader::stopLoadingSubframes
   51876         
   51877         In rare cases, we could end up calling checkLoadComplete twice for the same frame. This would cause the 
   51878         didFailProvisionalLoad delegate method to be called twice for the same frame, and also cause the provisional document loader
   51879         to be reset to null when other code wasn't expecting it.
   51880         
   51881         This regressed in revision 10904 with the fix for <rdar://problem/4184719>. The fix is to only call stopLoading on the frame
   51882         if either the document loader is loading, or the document is still being parsed. I've verified that the bug is still fixed and
   51883         that no leaks occur.
   51884         
   51885         * loader/DocumentLoader.cpp:
   51886         (WebCore::DocumentLoader::stopLoading):
   51887 
   51888 2007-03-01  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   51889 
   51890         Reviewed by Darin.
   51891 
   51892         Fix ARM crash due to accessing non-4-byte-aligned memory
   51893         as 32-bit values.
   51894 
   51895         * platform/AtomicString.cpp:
   51896         (WebCore::UCharBufferTranslator::equal):
   51897 
   51898 2007-03-01  David Harrison  <harrison (a] apple.com>
   51899 
   51900         Reviewed by Darin.
   51901 
   51902         <rdar://problem/5033905> Have the DOM secondary thread check raise an exception by default
   51903 
   51904         * platform/mac/ThreadCheck.mm:
   51905         (WebCore::_WebCoreThreadViolationCheck):
   51906         Initialize threadViolationIsException to true.
   51907 
   51908 2007-03-01  Brady Eidson  <beidson (a] apple.com>
   51909 
   51910         Reviewed by Darin
   51911 
   51912         <rdar://problem/5030628> - Crash opening a new window with the
   51913         "New windows open to the same page" pref set
   51914 
   51915         * history/HistoryItem.cpp:
   51916         (WebCore::HistoryItem::HistoryItem): Set the m_subItems vector capacity correctly
   51917 
   51918 2007-03-01  Alexey Proskuryakov  <ap (a] webkit.org>
   51919 
   51920         Reviewed by Maciej.
   51921 
   51922         http://bugs.webkit.org/show_bug.cgi?id=12801
   51923         Assertion failure in createMarkup() (root) when doing Select All, Copy in an SVG document
   51924 
   51925         Test: editing/pasteboard/createMarkup-assert.xml
   51926 
   51927         * editing/markup.cpp:
   51928         (WebCore::createMarkup): Removed the assertion, because it's wrong in a non-HTML world.
   51929 
   51930 2007-02-28  Adam Roben  <aroben (a] apple.com>
   51931 
   51932         Reviewed by Oliver and Hyatt.
   51933 
   51934         Fix <rdar://problem/5024233> Crash while using Find on empty document
   51935 
   51936         No layout test possible, as this involves a null document.
   51937 
   51938         * dom/Range.cpp:
   51939         (WebCore::rangeOfContents): Added an ASSERT.
   51940         * page/Frame.cpp:
   51941         (WebCore::Frame::findString): Added a null-check for document().
   51942         (WebCore::Frame::markAllMatchesForText): Ditto.
   51943 
   51944 2007-02-28  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   51945 
   51946         Not reviewed - simple gdk build fix.
   51947 
   51948         Add stubs for newly introduced localized strings.
   51949 
   51950         * platform/gdk/TemporaryLinkStubs.cpp:
   51951         (WebCore::searchMenuNoRecentSearchesText):
   51952         (WebCore::searchMenuRecentSearchesText):
   51953         (WebCore::searchMenuClearRecentSearchesText):
   51954 
   51955 2007-02-28  Brady Eidson  <beidson (a] apple.com>
   51956 
   51957         Reviewed by Beth
   51958 
   51959         Move the Thread Safety Check functions into their own header for export to WebKit
   51960 
   51961         * WebCore.exp: Export the function
   51962         * WebCore.xcodeproj/project.pbxproj: 
   51963         * bindings/scripts/CodeGeneratorObjC.pm: Include the new header
   51964         * platform/Logging.h: Move stuff to ThreadCheck.h
   51965         * platform/ThreadCheck.h: Added.
   51966         * platform/mac/LoggingMac.mm: Move stuff to ThreadCheck.mm
   51967         * platform/mac/ThreadCheck.mm: Added.
   51968         (WebCore::_WebCoreThreadViolationCheck):
   51969         (WebCoreReportThreadViolation):
   51970 
   51971 2007-02-28  Beth Dakin  <bdakin (a] apple.com>
   51972 
   51973         Reviewed by Brady.
   51974 
   51975         Fix for http://bugs.webkit.org/show_bug.cgi?id=12923 REGRESSION: 
   51976         Assertion failure copying standalone image
   51977 
   51978         * platform/mac/PasteboardMac.mm:
   51979         (WebCore::Pasteboard::writeImage): Use the CachedImage as the 
   51980         resource. This makes more sense anyway. There is no need to null-
   51981         check the renderer or the CachedImage since we return early if 
   51982         there is no Image* and the HitTestResult::image() function checks 
   51983         for these things.
   51984 
   51985 2007-02-28  Adele Peterson  <adele (a] apple.com>
   51986 
   51987         Reviewed by Beth.
   51988 
   51989         Fix for <rdar://problem/4887423> REGRESSION: search results popup menu strings are not localized
   51990         and <rdar://problem/3517227> accessibility-related strings in WebCore are not localized
   51991 
   51992         Use localized strings from WebKit instead of hard coded strings.
   51993 
   51994         * bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject roleDescription]):
   51995         * page/mac/WebCoreViewFactory.h:
   51996         * platform/LocalizedStrings.h:
   51997         * platform/mac/LocalizedStringsMac.mm:
   51998         (WebCore::searchMenuNoRecentSearchesText):
   51999         (WebCore::searchMenuRecentSearchesText):
   52000         (WebCore::searchMenuClearRecentSearchesText):
   52001         (WebCore::AXWebAreaText):
   52002         (WebCore::AXLinkText):
   52003         (WebCore::AXListMarkerText):
   52004         (WebCore::AXImageMapText):
   52005         (WebCore::AXHeadingText):
   52006         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::itemText):
   52007 
   52008 2007-02-27  Antti Koivisto  <antti (a] apple.com>
   52009 
   52010         Reviewed by Maciej.
   52011 
   52012         - fix http://bugs.webkit.org/show_bug.cgi?id=12911
   52013         GoogleDocs: Ordered lists don't update immediately when start attribute changed
   52014         
   52015         Update list marker value when start attribute changes.
   52016 
   52017         * html/HTMLOListElement.cpp:
   52018         (WebCore::HTMLOListElement::parseMappedAttribute):
   52019 
   52020 2007-02-28  Nikolas Zimmermann  <zimmermann (a] kde.org>
   52021 
   52022         Reviewed by Maciej.
   52023 
   52024         Corrected the use of the new ENABLE() macros in some ksvg2/svg files.
   52025         Add new build-webkit flags "--(no-)xpath" / "--(no-)xslt", to be able
   52026         to switch off build features easily. Also add "--(no-)svg-experimental-features"
   52027         flag, to be able to test filters/animations/use/foreignObject easily.
   52028 
   52029         * DerivedSources.make:
   52030         * ksvg2/scripts/make_names.pl:
   52031         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
   52032         * ksvg2/svg/SVGStyledElement.cpp:
   52033         * ksvg2/svg/SVGUseElement.cpp:
   52034 
   52035 2007-02-28  Rob Buis  <buis (a] kde.org>
   52036 
   52037         Reviewed by Maciej.
   52038 
   52039         http://bugs.webkit.org/show_bug.cgi?id=12609
   52040         Any SVG element will create renderers even when children of HTML elements
   52041 
   52042         Allow creation of svg renderers only when parent is SVG, except for
   52043         the <svg> element.
   52044 
   52045         * ksvg2/svg/SVGAElement.h:
   52046         * ksvg2/svg/SVGAnimationElement.h:
   52047         * ksvg2/svg/SVGCircleElement.h:
   52048         * ksvg2/svg/SVGClipPathElement.h:
   52049         (WebCore::SVGClipPathElement::rendererIsNeeded):
   52050         * ksvg2/svg/SVGDefsElement.cpp:
   52051         * ksvg2/svg/SVGDefsElement.h:
   52052         * ksvg2/svg/SVGDescElement.h:
   52053         (WebCore::SVGDescElement::rendererIsNeeded):
   52054         * ksvg2/svg/SVGElement.cpp:
   52055         * ksvg2/svg/SVGEllipseElement.h:
   52056         * ksvg2/svg/SVGFilterElement.h:
   52057         (WebCore::SVGFilterElement::rendererIsNeeded):
   52058         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
   52059         (WebCore::SVGFilterPrimitiveStandardAttributes::rendererIsNeeded):
   52060         * ksvg2/svg/SVGForeignObjectElement.h:
   52061         * ksvg2/svg/SVGGElement.h:
   52062         * ksvg2/svg/SVGGradientElement.h:
   52063         * ksvg2/svg/SVGImageElement.h:
   52064         * ksvg2/svg/SVGLineElement.h:
   52065         * ksvg2/svg/SVGMarkerElement.h:
   52066         * ksvg2/svg/SVGMaskElement.h:
   52067         * ksvg2/svg/SVGPathElement.h:
   52068         * ksvg2/svg/SVGPatternElement.h:
   52069         * ksvg2/svg/SVGPolyElement.h:
   52070         * ksvg2/svg/SVGRectElement.h:
   52071         * ksvg2/svg/SVGStopElement.h:
   52072         * ksvg2/svg/SVGStyledElement.cpp:
   52073         (WebCore::SVGStyledElement::rendererIsNeeded):
   52074         * ksvg2/svg/SVGStyledElement.h:
   52075         * ksvg2/svg/SVGSwitchElement.h:
   52076         * ksvg2/svg/SVGSymbolElement.h:
   52077         (WebCore::SVGSymbolElement::rendererIsNeeded):
   52078         * ksvg2/svg/SVGTRefElement.h:
   52079         * ksvg2/svg/SVGTSpanElement.h:
   52080         * ksvg2/svg/SVGTextElement.h:
   52081         * ksvg2/svg/SVGTitleElement.h:
   52082         (WebCore::SVGTitleElement::rendererIsNeeded):
   52083         * ksvg2/svg/SVGUseElement.h:
   52084         * ksvg2/svg/SVGViewElement.h:
   52085         (WebCore::SVGViewElement::rendererIsNeeded):
   52086 
   52087 2007-02-28  Rob Buis  <buis (a] kde.org>
   52088 
   52089         Reviewed by Maciej.
   52090 
   52091         http://bugs.webkit.org/show_bug.cgi?id=12913
   52092         Markers do not render in webkit when it misses markerWidth or markerHeight attribute
   52093 
   52094         Set defaults for markerWidth/markerHeight so markers that do not specify them render.
   52095 
   52096         * ksvg2/svg/SVGMarkerElement.cpp:
   52097         (WebCore::SVGMarkerElement::SVGMarkerElement):
   52098 
   52099 2007-02-27  Anders Carlsson  <acarlsson (a] apple.com>
   52100 
   52101         * loader/ResourceLoader.cpp:
   52102         (WebCore::ResourceLoader::~ResourceLoader):
   52103         Remove comment.
   52104 
   52105 2007-02-27  Justin Garcia  <justin.garcia (a] apple.com>
   52106 
   52107         Reviewed by oliver
   52108 
   52109         <rdar://problem/5027300>
   52110         REGRESSION: Images inserted with align left/right are lost
   52111 
   52112         * editing/ReplaceSelectionCommand.cpp:
   52113         (WebCore::ReplaceSelectionCommand::shouldMerge):
   52114         Don't attempt to merge to or from a position before 
   52115         or after a block because it will be a no-op and
   52116         lead to infinite recursion.
   52117         In this case it instead resulted in content loss because 
   52118         of bugs in start/endOfParagraph (5027702).
   52119         * editing/visible_units.cpp: Added two FIXMEs for
   52120         the problems with start/endOfParagraph.
   52121 
   52122 2007-02-27  Anders Carlsson  <acarlsson (a] apple.com>
   52123 
   52124         Reviewed by Geoff.
   52125 
   52126         Make resource load delegate methods pass the right document loader.
   52127         
   52128         * loader/FrameLoader.cpp:
   52129         (WebCore::FrameLoader::willSendRequest):
   52130         (WebCore::FrameLoader::didReceiveResponse):
   52131         (WebCore::FrameLoader::didReceiveData):
   52132         (WebCore::FrameLoader::didFailToLoad):
   52133         (WebCore::FrameLoader::didFinishLoad):
   52134         (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
   52135         (WebCore::FrameLoader::didCancelAuthenticationChallenge):
   52136         Use the resource loader's document loader instead of the active one.
   52137         
   52138         * loader/MainResourceLoader.cpp:
   52139         (WebCore::MainResourceLoader::receivedError):
   52140         Make it so we send the frame load delegate method before the resource load delegate method.
   52141         This was a regression from 2.0 and was caused by the fix to rdar://problem/4609195. Because the way the loader
   52142         now works, both delegate methods will be called.
   52143         
   52144         * loader/ResourceLoader.cpp:
   52145         (WebCore::ResourceLoader::ResourceLoader):
   52146         * loader/ResourceLoader.h:
   52147         (WebCore::ResourceLoader::documentLoader):
   52148         Add document loader pointer to ResourceLoader.
   52149 
   52150 2007-02-27  Mitz Pettel  <mitz (a] webkit.org>
   52151 
   52152         Reviewed by Hyatt.
   52153 
   52154         - fix http://bugs.webkit.org/show_bug.cgi?id=12910
   52155           REGRESSION (r18756-r18765): list-bullet doesn't redraw properly when changing the list's content using JavaScript
   52156 
   52157         Test: fast/repaint/list-marker.html
   52158 
   52159         * rendering/RenderListItem.cpp:
   52160         (WebCore::RenderListItem::positionListMarker): Add the marker to the visual
   52161         overflow of all its ancestor blocks up to the list item. This needs to be
   52162         done here since the marker is positioned only after those blocks have been
   52163         laid out.
   52164 
   52165 2007-02-27  Antti Koivisto  <antti (a] apple.com>
   52166 
   52167         Reviewed by Hyatt.
   52168         
   52169         - fix http://bugs.webkit.org/show_bug.cgi?id=12918
   52170         REGRESSION: Google Finance dropdown Flickers
   52171         <rdar://4988039>
   52172         
   52173         If a node dies while mouse is over it, it is still supposed to receive
   52174         mouseout event (wasn't case in Tiger webkit). However this event should 
   52175         not propagate to any other nodes. This patch matches Firefox behavior in
   52176         this respect.
   52177 
   52178         * dom/EventTargetNode.cpp:
   52179         (WebCore::EventTargetNode::dispatchGenericEvent):
   52180 
   52181 2007-02-27  Geoffrey Garen  <ggaren (a] apple.com>
   52182 
   52183         Reviewed by Maciej Stachowiak.
   52184         
   52185         Fixed http://bugs.webkit.org/show_bug.cgi?id=12659 | <rdar://problem/4954306>
   52186         JS objects not collected after closing window @ ebay.com/maps.google.com
   52187 
   52188         Garbage collect in the KJSProxy destructor, after clearing our reference
   52189         to the interpreter, because that's when the interpreter has torn down fully.
   52190 
   52191         (Technically speaking, we can't *prove* that we have the only reference to 
   52192         our interpreter, but that's how it works in practice, and manual garbage 
   52193         collection is just an opportunistic optimization, so it's OK for it to 
   52194         work in practice even if it can't be proven in theory.)
   52195         
   52196         Layout tests pass. No leaks reported.
   52197 
   52198         * bindings/js/kjs_proxy.cpp:
   52199         (WebCore::KJSProxy::~KJSProxy):
   52200         * bindings/js/kjs_proxy.h:
   52201         * page/Page.cpp:
   52202         (WebCore::Page::~Page): Merged pageDestroyed() calls. Moved debug-only
   52203         code to the bottom.
   52204         * page/Frame.cpp:
   52205         (WebCore::Frame::~Frame): Don't call getObject() because globalObject()
   52206         returns a JSObject* already, and the call can leave a pointer to the Window
   52207         object on the stack. Don't check for NULL because it is an invariant of
   52208         JavaScriptCore that no JSObject* can be NULL. Do use a volatile pointer
   52209         for w because the 'w = 0' assignment just screams to the compiler, "Don't
   52210         generate any code for me!"
   52211 
   52212 2007-02-27  Rob Buis  <buis (a] kde.org>
   52213 
   52214         Reviewed by David Hyatt.
   52215 
   52216         http://bugs.webkit.org/show_bug.cgi?id=4128
   52217         !important is ignored in inline styling.
   52218 
   52219         Handle properties with !important flag better in inline
   52220         style declarations.
   52221 
   52222         * css/CSSMutableStyleDeclaration.cpp:
   52223         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
   52224 
   52225 2007-02-27  David Hyatt  <hyatt (a] apple.com>
   52226 
   52227         Bug 11435.  Make sure RenderViews always paintBoxDecorations.  They used to before I removed RenderView's
   52228         paint method.  This fix restores the original behavior.
   52229 
   52230         Reviewed by mitz
   52231 
   52232         * rendering/RenderBox.cpp:
   52233         (WebCore::RenderBox::setStyle):
   52234 
   52235 2007-02-27  David Hyatt  <hyatt (a] apple.com>
   52236 
   52237         Fix for bug 12094, make sure setMinMaxKnown starts off false for the weird/rare case of empty
   52238         plaintext documents (which really are buggy and should be fixed to generate root elements).
   52239 
   52240         Reviewed by mitz
   52241 
   52242         * rendering/RenderView.cpp:
   52243         (WebCore::RenderView::RenderView):
   52244 
   52245 2007-02-27  Matt Perry  <mpcomplete (a] chromium.org>
   52246 
   52247         Reviewed by Darin.
   52248 
   52249         Fixed the case where a BackForwardList of capacity==1 would grow without bound.
   52250 
   52251         * history/BackForwardList.cpp:
   52252         (WebCore::BackForwardList::addItem):
   52253 
   52254 2007-02-22  Lars Naesbye Christensen  <lars (a] naesbye.dk>
   52255 
   52256         Reviewed by Maciej.
   52257 
   52258         http://bugs.webkit.org/show_bug.cgi?id=12848
   52259         Help cursor should have a white outline
   52260 
   52261         * Resources/helpCursor.png:
   52262 
   52263 2007-02-27  Alexey Proskuryakov  <ap (a] webkit.org>
   52264 
   52265         Reviewed by Maciej.
   52266 
   52267         http://bugs.webkit.org/show_bug.cgi?id=12594
   52268         REGRESSION: Strange highlight in active input area
   52269 
   52270         No automated test possible.
   52271 
   52272         * rendering/InlineTextBox.cpp:
   52273         (WebCore::InlineTextBox::paint): Restore a check lost in r12792.
   52274 
   52275 2007-02-27  Darin Adler  <darin (a] apple.com>
   52276 
   52277         Reviewed by Mitz.
   52278 
   52279         - fix http://bugs.webkit.org/show_bug.cgi?id=12908
   52280           crash in http/tests/incremental/frame-focus-before-load.html
   52281 
   52282         * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::focusDocumentView):
   52283         Add null checks.
   52284 
   52285 2007-02-27  Darin Adler  <darin (a] apple.com>
   52286 
   52287         Reviewed by Alexey.
   52288 
   52289         - fix http://bugs.webkit.org/show_bug.cgi?id=12909
   52290           should use ICU, not TEC, for MacRoman decoding
   52291 
   52292         * platform/TextCodecICU.cpp: (WebCore::TextCodecICU::registerEncodingNames):
   52293         Add "macroman" as an alias for "macintosh". We have seen that in use in mail,
   52294         although I'm not sure it's used on the web.
   52295 
   52296         * platform/mac/mac-encodings.txt: Remove MacRoman line, which was added back
   52297         as part of the patch for bug 4971226. But by adding it to this file rather
   52298         than the ICU codec, we get it only on Mac OS X. And long term we are trying to
   52299         get rid of the use of TEC entirely, so we want this file to be as empty as
   52300         possible.
   52301 
   52302 2007-02-27  Rob Buis  <buis (a] kde.org>
   52303 
   52304         Reviewed by Maciej.
   52305 
   52306         http://bugs.webkit.org/show_bug.cgi?id=12905
   52307         Not all svg shapes should support markers
   52308 
   52309         Restrict marker usage to svg shapes polyline, polygon, line and path.
   52310 
   52311         * ksvg2/svg/SVGLineElement.h:
   52312         (WebCore::SVGLineElement::supportsMarkers):
   52313         * ksvg2/svg/SVGPathElement.h:
   52314         (WebCore::SVGPathElement::supportsMarkers):
   52315         * ksvg2/svg/SVGPolyElement.h:
   52316         (WebCore::SVGPolyElement::supportsMarkers):
   52317         * ksvg2/svg/SVGStyledElement.h:
   52318         (WebCore::SVGStyledElement::supportsMarkers):
   52319         * rendering/RenderPath.cpp:
   52320         (WebCore::RenderPath::paint):
   52321 
   52322 2007-02-26  Adele Peterson  <adele (a] apple.com>
   52323 
   52324         Reviewed by Lars.
   52325 
   52326         Fix for http://bugs.webkit.org/show_bug.cgi?id=12902
   52327         <rdar://problem/5012679> REGRESSION: Pressing return key doesn't 
   52328         move caret to next line after applying a font color in GMail
   52329 
   52330         Test: fast/frames/iframe-window-focus-2.html
   52331 
   52332         * page/EventHandler.h: Make focusDocumentView public.
   52333         * page/Frame.cpp: (WebCore::Frame::focusWindow): Instead of just setting the focused frame,
   52334           we should set also focus the document view.  The bug here was that since the subframe view
   52335           wasn't the first responder, the key down event was going to the wrong frame.
   52336 
   52337 2007-02-26  Maciej Stachowiak  <mjs (a] apple.com>
   52338 
   52339         Reviewed by Oliver.
   52340 
   52341         - fixed <rdar://problem/4946881> Recursive loop with <marker> not caught, crashes in WebCore::SVGPaintServer::draw (11244)
   52342         http://bugs.webkit.org/show_bug.cgi?id=11244
   52343 
   52344         * platform/graphics/svg/SVGResourceMarker.cpp:
   52345         (WebCore::SVGResourceMarker::draw): Use a HashSet to guard against
   52346         reference cycles.
   52347 
   52348 2007-02-26  Maciej Stachowiak  <mjs (a] apple.com>
   52349 
   52350         Reviewed by Kevin McCullough.
   52351 
   52352         - fix Qt build for earlier SVG changes.
   52353 
   52354         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
   52355 
   52356 2007-02-26  Oliver Hunt  <oliver (a] apple.com>
   52357 
   52358         Reviewed by Maciej.
   52359 
   52360         Fix for <rdar://problem/4827378>: Canvas with large height 
   52361         uses lots of memory, computer almost stops responding
   52362          
   52363         Put cap on maximum area of canvas, size is similar too the 
   52364         maximum size allowed by firefox (firefox seems to to cut off 
   52365         at area == 32767 * 9358). 
   52366 
   52367         Also protect renderer against the possibility of a null context
   52368         (this was triggering a CG warning)
   52369 
   52370         * html/HTMLCanvasElement.cpp:
   52371         (WebCore::HTMLCanvasElement::createDrawingContext):
   52372            Apply maximum canvas area
   52373         (WebCore::HTMLCanvasElement::createPlatformImage):
   52374            Protect against null CG Context
   52375 
   52376 2007-02-26  Mitz Pettel  <mitz (a] webkit.org>
   52377 
   52378         Reviewed by Antti Koivisto.
   52379 
   52380         - fix http://bugs.webkit.org/show_bug.cgi?id=12899
   52381           Ordered lists not updating dynamically with new styles
   52382 
   52383         Test: fast/lists/list-style-type-dynamic-change.html
   52384 
   52385         * rendering/RenderListMarker.cpp:
   52386         (WebCore::RenderListMarker::setStyle): Made changing the marker type trigger
   52387         updating of the marker.
   52388 
   52389 2007-02-26  Adele Peterson  <adele (a] apple.com>
   52390 
   52391         Reviewed by Maciej.
   52392 
   52393         Fix for <rdar://problem/5012761> REGRESSION: form submit invokes wrong event handler
   52394 
   52395         Test: fast/events/submit-reset-nested-bubble.html
   52396 
   52397         * dom/EventTargetNode.h: Made handleLocalEvents virtual.
   52398         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::handleLocalEvents): If we're
   52399           not in the capture phase, and the target is a different form, and we're handling
   52400           the submitEvent or the resetEvent, then stop propagation of the event.  This matches
   52401           Firefox behavior.  You can only get in this situation if misnested tags cause
   52402           forms to be nested.
   52403         * html/HTMLFormElement.h: Added handleLocalEvents.
   52404 
   52405 2007-02-26  Darin Adler  <darin (a] apple.com>
   52406 
   52407         Reviewed by Oliver Hunt.
   52408 
   52409         - <rdar://problem/5021555> TextCodecICU does not use fallback mappings; it should
   52410 
   52411         * platform/TextCodecICU.cpp: (WebCore::TextCodecICU::createICUConverter):
   52412         Added a call to ucnv_setFallback(TRUE).
   52413 
   52414 2007-02-26  Oliver Hunt  <oliver (a] apple.com>
   52415 
   52416         Reviewed by Adam.
   52417 
   52418         Fix for rdar://problem/5021127 
   52419 
   52420         Need to add null check to node -- original Obj-C didn't need 
   52421         the null check due to the Obj-C null messaging semantics
   52422 
   52423         * editing/Editor.cpp:
   52424         (WebCore::Editor::shouldInsertFragment):
   52425 
   52426 2007-02-26  David Hyatt  <hyatt (a] apple.com>
   52427 
   52428         Make text files render using white-space: pre-wrap instead of white-space: pre.
   52429         
   52430         Reviewed by aroben
   52431 
   52432         * loader/TextDocument.cpp:
   52433         (WebCore::TextTokenizer::write):
   52434 
   52435 2007-02-26  David Hyatt  <hyatt (a] apple.com>
   52436 
   52437         Back out the change to add fullyClippedContentRect.  The layout test
   52438         was actually showing more correct results.
   52439 
   52440         * page/Frame.cpp:
   52441         (WebCore::Frame::visibleSelectionRect):
   52442         (WebCore::Frame::setIsActive):
   52443         (WebCore::Frame::markAllMatchesForText):
   52444         * platform/ScrollView.h:
   52445         * platform/mac/ScrollViewMac.mm:
   52446         * rendering/RenderLayer.cpp:
   52447         (WebCore::RenderLayer::scrollRectToVisible):
   52448 
   52449 2007-02-26  David Hyatt  <hyatt (a] apple.com>
   52450 
   52451         Add support for a new property called -webkit-border-fit.  This property
   52452         has two values: border and lines.  The "border" value means the border and
   52453         background paint normally at the border box level.  The "lines" value indicates
   52454         that the border and background should shrink dynamically to snugly hug the
   52455         line boxes of normal flow descendants.
   52456 
   52457         Reviewed by darin
   52458 
   52459         fast/borders/border-fit.html
   52460 
   52461         * WebCore.xcodeproj/project.pbxproj:
   52462         * css/CSSComputedStyleDeclaration.cpp:
   52463         (WebCore::):
   52464         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   52465         * css/CSSPropertyNames.in:
   52466         * css/CSSValueKeywords.in:
   52467         * css/cssparser.cpp:
   52468         (WebCore::CSSParser::parseValue):
   52469         * css/cssstyleselector.cpp:
   52470         (WebCore::CSSStyleSelector::applyProperty):
   52471         * rendering/RenderBlock.cpp:
   52472         (WebCore::RenderBlock::adjustForBorderFit):
   52473         (WebCore::RenderBlock::borderFitAdjust):
   52474         * rendering/RenderBlock.h:
   52475         * rendering/RenderBox.cpp:
   52476         (WebCore::RenderBox::paintBoxDecorations):
   52477         * rendering/RenderBox.h:
   52478         (WebCore::RenderBox::borderFitAdjust):
   52479         * rendering/RenderStyle.cpp:
   52480         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   52481         (WebCore::StyleRareNonInheritedData::operator==):
   52482         (WebCore::RenderStyle::diff):
   52483         * rendering/RenderStyle.h:
   52484         (WebCore::):
   52485         (WebCore::RenderStyle::borderFit):
   52486         (WebCore::RenderStyle::setBorderFit):
   52487         (WebCore::RenderStyle::initialBorderFit):
   52488 
   52489 2007-02-26  Adam Roben  <aroben (a] apple.com>
   52490 
   52491         Reviewed by Darin.
   52492 
   52493         Build fix.
   52494 
   52495         * rendering/RenderTreeAsText.cpp: Can't use #ifndef with ENABLE() macro.
   52496 
   52497 2007-02-26  Adele Peterson  <adele (a] apple.com>
   52498 
   52499         Reviewed by Adam.
   52500 
   52501         Fix for <rdar://problem/4990700> Safari always crashes when attempting to edit/view 
   52502         Yahoo pipes in WebCore::HTMLSelectElement::optionToListIndex
   52503 
   52504         Test: fast/forms/select-out-of-bounds-index.html
   52505 
   52506         * html/HTMLSelectElement.cpp:
   52507         (WebCore::HTMLSelectElement::setSelectedIndex): If we're about to deselect all options, then set m_lastOnChangeIndex to -1.
   52508         (WebCore::HTMLSelectElement::optionToListIndex): Moved listSize to a local variable.  Rewrote using a simpler for-loop to prevent out-of-bounds errors.
   52509 
   52510 2007-02-26  Anders Carlsson  <acarlsson (a] apple.com>
   52511 
   52512         Reviewed by Geoff.
   52513 
   52514         <rdar://problem/4816376>
   52515         REGRESSION: NetNewsWire 3.0 - Crashes in WebDocumentLoaderMac::attachToFrame() (12674)
   52516         
   52517         * loader/FrameLoader.cpp:
   52518         (WebCore::FrameLoader::reload):
   52519         Remove call to setPolicyDocumentLoader here, it's set by the ::load function that we end up calling.
   52520 
   52521 2007-02-26  Maciej Stachowiak  <mjs (a] apple.com>
   52522 
   52523         Reviewed by Lars.
   52524 
   52525         - fixed <rdar://problem/5021698> Disable experimental SVG features (12883)
   52526         
   52527         I added an ENABLE_SVG_EXPERIMENTAL_FEATURES define to guard all use of the experimental
   52528         features, and used it to guard relevant tag names, elements, JS bindings and renderers.
   52529         
   52530         I also converted all the existing optional feature defines to
   52531         ENABLE_FOO instead of FOO_SUPPORT since that is the more standard
   52532         way to do it in open source projects and works with the handy new
   52533         ENABLE() macro.
   52534 
   52535         * CMakeLists.txt:
   52536         * DerivedSources.make:
   52537         * Projects/gdk/webcore-gdk.bkl:
   52538         * WebCore.pro:
   52539         * WebCore.vcproj/WebCore/WebCore.vcproj:
   52540         * WebCore.vcproj/WebCore/build-generated-files.sh:
   52541         * WebCore.xcodeproj/project.pbxproj:
   52542         * bindings/js/JSCustomXPathNSResolver.cpp:
   52543         * bindings/js/JSCustomXPathNSResolver.h:
   52544         * bindings/js/JSSVGElementWrapperFactory.cpp:
   52545         * bindings/js/JSSVGElementWrapperFactory.h:
   52546         * bindings/js/JSSVGMatrixCustom.cpp:
   52547         * bindings/js/JSSVGPODTypeWrapper.h:
   52548         * bindings/js/JSSVGPathSegCustom.cpp:
   52549         * bindings/js/JSSVGPathSegListCustom.cpp:
   52550         * bindings/js/JSSVGPointListCustom.cpp:
   52551         * bindings/js/JSXSLTProcessor.cpp:
   52552         * bindings/js/JSXSLTProcessor.h:
   52553         * bindings/js/kjs_binding.cpp:
   52554         (KJS::setDOMException):
   52555         * bindings/js/kjs_css.cpp:
   52556         (KJS::toJS):
   52557         * bindings/js/kjs_dom.cpp:
   52558         (KJS::toJS):
   52559         * bindings/js/kjs_html.cpp:
   52560         (KJS::HTMLElementFunction::callAsFunction):
   52561         * bindings/js/kjs_proxy.cpp:
   52562         * bindings/js/kjs_proxy.h:
   52563         * bindings/js/kjs_window.cpp:
   52564         (KJS::Window::getValueProperty):
   52565         * bindings/objc/DOM.mm:
   52566         (WebCore::createElementClassMap):
   52567         (+[DOMNode _nodeWith:]):
   52568         * bindings/objc/DOMCSS.mm:
   52569         (+[DOMCSSValue _CSSValueWith:]):
   52570         * bindings/objc/DOMCustomXPathNSResolver.h:
   52571         * bindings/objc/DOMCustomXPathNSResolver.mm:
   52572         * bindings/objc/DOMEvents.mm:
   52573         (+[DOMEvent _eventWith:]):
   52574         * bindings/objc/DOMInternal.h:
   52575         * bindings/objc/DOMSVGPathSegInternal.mm:
   52576         * bindings/objc/DOMXPath.mm:
   52577         * bindings/objc/ExceptionHandlers.mm:
   52578         (WebCore::raiseDOMException):
   52579         * bindings/objc/PublicDOMInterfaces.h:
   52580         * bindings/scripts/CodeGeneratorJS.pm:
   52581         * bindings/scripts/CodeGeneratorObjC.pm:
   52582         * config.h:
   52583         * css/CSSGrammar.y:
   52584         * css/CSSStyleDeclaration.cpp:
   52585         (WebCore::propertyID):
   52586         * css/StyleBase.h:
   52587         * css/cssparser.cpp:
   52588         (WebCore::CSSParser::parseValue):
   52589         * css/cssparser.h:
   52590         * css/cssstyleselector.cpp:
   52591         (WebCore::CSSStyleSelector::loadDefaultStyle):
   52592         (WebCore::CSSStyleSelector::initForStyleResolve):
   52593         (WebCore::checkPseudoState):
   52594         (WebCore::CSSStyleSelector::adjustRenderStyle):
   52595         (WebCore::CSSStyleSelector::applyProperty):
   52596         * css/cssstyleselector.h:
   52597         * dom/DOMImplementation.cpp:
   52598         (WebCore::DOMImplementation::hasFeature):
   52599         (WebCore::DOMImplementation::createDocument):
   52600         * dom/Document.cpp:
   52601         (WebCore::Document::Document):
   52602         (WebCore::Document::~Document):
   52603         (WebCore::Document::createElement):
   52604         (WebCore::Document::implicitClose):
   52605         (WebCore::Document::recalcStyleSelector):
   52606         (WebCore::Document::createEvent):
   52607         * dom/Document.h:
   52608         * dom/Document.idl:
   52609         * dom/Event.cpp:
   52610         * dom/Event.h:
   52611         * dom/EventTarget.cpp:
   52612         * dom/EventTarget.h:
   52613         * dom/MappedAttributeEntry.h:
   52614         (WebCore::):
   52615         * dom/Node.cpp:
   52616         (WebCore::Node::createRendererIfNeeded):
   52617         (WebCore::Node::shadowAncestorNode):
   52618         * dom/Node.h:
   52619         * dom/ProcessingInstruction.cpp:
   52620         (WebCore::ProcessingInstruction::ProcessingInstruction):
   52621         (WebCore::ProcessingInstruction::checkStyleSheet):
   52622         (WebCore::ProcessingInstruction::setCSSStyleSheet):
   52623         * dom/ProcessingInstruction.h:
   52624         * dom/Text.cpp:
   52625         (WebCore::Text::createRenderer):
   52626         * dom/XMLTokenizer.cpp:
   52627         (WebCore::XMLTokenizer::startElementNs):
   52628         (WebCore::XMLTokenizer::endElementNs):
   52629         (WebCore::XMLTokenizer::processingInstruction):
   52630         (WebCore::XMLTokenizer::end):
   52631         (WebCore::XMLTokenizer::insertErrorMessageBlock):
   52632         * dom/XMLTokenizer.h:
   52633         * html/HTMLEmbedElement.cpp:
   52634         * html/HTMLEmbedElement.h:
   52635         * html/HTMLObjectElement.cpp:
   52636         * html/HTMLObjectElement.h:
   52637         * ksvg2/css/SVGCSSParser.cpp:
   52638         * ksvg2/css/SVGCSSStyleSelector.cpp:
   52639         * ksvg2/css/SVGRenderStyle.cpp:
   52640         * ksvg2/css/SVGRenderStyle.h:
   52641         * ksvg2/css/SVGRenderStyleDefs.cpp:
   52642         * ksvg2/css/SVGRenderStyleDefs.h:
   52643         * ksvg2/events/JSSVGLazyEventListener.cpp:
   52644         * ksvg2/events/JSSVGLazyEventListener.h:
   52645         * ksvg2/events/SVGZoomEvent.cpp:
   52646         * ksvg2/events/SVGZoomEvent.h:
   52647         * ksvg2/misc/KCanvasRenderingStyle.cpp:
   52648         * ksvg2/misc/KCanvasRenderingStyle.h:
   52649         * ksvg2/misc/PointerEventsHitRules.cpp:
   52650         * ksvg2/misc/PointerEventsHitRules.h:
   52651         * ksvg2/misc/SVGDocumentExtensions.cpp:
   52652         * ksvg2/misc/SVGDocumentExtensions.h:
   52653         * ksvg2/misc/SVGImageLoader.cpp:
   52654         * ksvg2/misc/SVGImageLoader.h:
   52655         * ksvg2/misc/SVGTimer.cpp:
   52656         * ksvg2/misc/SVGTimer.h:
   52657         * ksvg2/misc/TimeScheduler.cpp:
   52658         * ksvg2/misc/TimeScheduler.h:
   52659         * ksvg2/scripts/make_names.pl:
   52660         * ksvg2/svg/ColorDistance.cpp:
   52661         * ksvg2/svg/ColorDistance.h:
   52662         * ksvg2/svg/GradientAttributes.h:
   52663         * ksvg2/svg/LinearGradientAttributes.h:
   52664         * ksvg2/svg/PatternAttributes.h:
   52665         * ksvg2/svg/RadialGradientAttributes.h:
   52666         * ksvg2/svg/SVGAElement.cpp:
   52667         * ksvg2/svg/SVGAElement.h:
   52668         * ksvg2/svg/SVGAngle.cpp:
   52669         * ksvg2/svg/SVGAngle.h:
   52670         * ksvg2/svg/SVGAnimateColorElement.cpp:
   52671         * ksvg2/svg/SVGAnimateColorElement.h:
   52672         * ksvg2/svg/SVGAnimateElement.cpp:
   52673         * ksvg2/svg/SVGAnimateElement.h:
   52674         * ksvg2/svg/SVGAnimateElement.idl:
   52675         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   52676         * ksvg2/svg/SVGAnimateMotionElement.h:
   52677         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   52678         * ksvg2/svg/SVGAnimateTransformElement.h:
   52679         * ksvg2/svg/SVGAnimateTransformElement.idl:
   52680         * ksvg2/svg/SVGAnimatedPathData.cpp:
   52681         * ksvg2/svg/SVGAnimatedPathData.h:
   52682         * ksvg2/svg/SVGAnimatedPoints.cpp:
   52683         * ksvg2/svg/SVGAnimatedPoints.h:
   52684         * ksvg2/svg/SVGAnimatedTemplate.h:
   52685         * ksvg2/svg/SVGAnimationElement.cpp:
   52686         * ksvg2/svg/SVGAnimationElement.h:
   52687         * ksvg2/svg/SVGCircleElement.cpp:
   52688         * ksvg2/svg/SVGCircleElement.h:
   52689         * ksvg2/svg/SVGClipPathElement.cpp:
   52690         * ksvg2/svg/SVGClipPathElement.h:
   52691         * ksvg2/svg/SVGColor.cpp:
   52692         * ksvg2/svg/SVGColor.h:
   52693         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
   52694         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
   52695         * ksvg2/svg/SVGCursorElement.cpp:
   52696         * ksvg2/svg/SVGCursorElement.h:
   52697         * ksvg2/svg/SVGDefsElement.cpp:
   52698         * ksvg2/svg/SVGDefsElement.h:
   52699         * ksvg2/svg/SVGDescElement.cpp:
   52700         * ksvg2/svg/SVGDescElement.h:
   52701         * ksvg2/svg/SVGDocument.cpp:
   52702         * ksvg2/svg/SVGDocument.h:
   52703         * ksvg2/svg/SVGElement.cpp:
   52704         (WebCore::SVGElement::dispatchEvent):
   52705         * ksvg2/svg/SVGElement.h:
   52706         * ksvg2/svg/SVGElementInstance.cpp:
   52707         * ksvg2/svg/SVGElementInstance.h:
   52708         * ksvg2/svg/SVGElementInstance.idl:
   52709         * ksvg2/svg/SVGElementInstanceList.cpp:
   52710         * ksvg2/svg/SVGElementInstanceList.h:
   52711         * ksvg2/svg/SVGElementInstanceList.idl:
   52712         * ksvg2/svg/SVGEllipseElement.cpp:
   52713         * ksvg2/svg/SVGEllipseElement.h:
   52714         * ksvg2/svg/SVGException.h:
   52715         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
   52716         * ksvg2/svg/SVGExternalResourcesRequired.h:
   52717         * ksvg2/svg/SVGFEBlendElement.cpp:
   52718         * ksvg2/svg/SVGFEBlendElement.h:
   52719         * ksvg2/svg/SVGFEBlendElement.idl:
   52720         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
   52721         * ksvg2/svg/SVGFEColorMatrixElement.h:
   52722         * ksvg2/svg/SVGFEColorMatrixElement.idl:
   52723         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
   52724         * ksvg2/svg/SVGFEComponentTransferElement.h:
   52725         * ksvg2/svg/SVGFEComponentTransferElement.idl:
   52726         * ksvg2/svg/SVGFECompositeElement.cpp:
   52727         * ksvg2/svg/SVGFECompositeElement.h:
   52728         * ksvg2/svg/SVGFECompositeElement.idl:
   52729         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
   52730         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
   52731         * ksvg2/svg/SVGFEDiffuseLightingElement.idl:
   52732         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
   52733         * ksvg2/svg/SVGFEDisplacementMapElement.h:
   52734         * ksvg2/svg/SVGFEDisplacementMapElement.idl:
   52735         * ksvg2/svg/SVGFEDistantLightElement.cpp:
   52736         * ksvg2/svg/SVGFEDistantLightElement.h:
   52737         * ksvg2/svg/SVGFEDistantLightElement.idl:
   52738         * ksvg2/svg/SVGFEFloodElement.cpp:
   52739         * ksvg2/svg/SVGFEFloodElement.h:
   52740         * ksvg2/svg/SVGFEFloodElement.idl:
   52741         * ksvg2/svg/SVGFEFuncAElement.cpp:
   52742         * ksvg2/svg/SVGFEFuncAElement.h:
   52743         * ksvg2/svg/SVGFEFuncAElement.idl:
   52744         * ksvg2/svg/SVGFEFuncBElement.cpp:
   52745         * ksvg2/svg/SVGFEFuncBElement.h:
   52746         * ksvg2/svg/SVGFEFuncBElement.idl:
   52747         * ksvg2/svg/SVGFEFuncGElement.cpp:
   52748         * ksvg2/svg/SVGFEFuncGElement.h:
   52749         * ksvg2/svg/SVGFEFuncGElement.idl:
   52750         * ksvg2/svg/SVGFEFuncRElement.cpp:
   52751         * ksvg2/svg/SVGFEFuncRElement.h:
   52752         * ksvg2/svg/SVGFEFuncRElement.idl:
   52753         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
   52754         * ksvg2/svg/SVGFEGaussianBlurElement.h:
   52755         * ksvg2/svg/SVGFEGaussianBlurElement.idl:
   52756         * ksvg2/svg/SVGFEImageElement.cpp:
   52757         * ksvg2/svg/SVGFEImageElement.h:
   52758         * ksvg2/svg/SVGFEImageElement.idl:
   52759         * ksvg2/svg/SVGFELightElement.cpp:
   52760         * ksvg2/svg/SVGFELightElement.h:
   52761         * ksvg2/svg/SVGFEMergeElement.cpp:
   52762         * ksvg2/svg/SVGFEMergeElement.h:
   52763         * ksvg2/svg/SVGFEMergeElement.idl:
   52764         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
   52765         * ksvg2/svg/SVGFEMergeNodeElement.h:
   52766         * ksvg2/svg/SVGFEMergeNodeElement.idl:
   52767         * ksvg2/svg/SVGFEOffsetElement.cpp:
   52768         * ksvg2/svg/SVGFEOffsetElement.h:
   52769         * ksvg2/svg/SVGFEOffsetElement.idl:
   52770         * ksvg2/svg/SVGFEPointLightElement.cpp:
   52771         * ksvg2/svg/SVGFEPointLightElement.h:
   52772         * ksvg2/svg/SVGFEPointLightElement.idl:
   52773         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
   52774         * ksvg2/svg/SVGFESpecularLightingElement.h:
   52775         * ksvg2/svg/SVGFESpecularLightingElement.idl:
   52776         * ksvg2/svg/SVGFESpotLightElement.cpp:
   52777         * ksvg2/svg/SVGFESpotLightElement.h:
   52778         * ksvg2/svg/SVGFESpotLightElement.idl:
   52779         * ksvg2/svg/SVGFETileElement.cpp:
   52780         * ksvg2/svg/SVGFETileElement.h:
   52781         * ksvg2/svg/SVGFETileElement.idl:
   52782         * ksvg2/svg/SVGFETurbulenceElement.cpp:
   52783         * ksvg2/svg/SVGFETurbulenceElement.h:
   52784         * ksvg2/svg/SVGFETurbulenceElement.idl:
   52785         * ksvg2/svg/SVGFilterElement.cpp:
   52786         * ksvg2/svg/SVGFilterElement.h:
   52787         * ksvg2/svg/SVGFilterElement.idl:
   52788         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
   52789         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
   52790         * ksvg2/svg/SVGFitToViewBox.cpp:
   52791         * ksvg2/svg/SVGFitToViewBox.h:
   52792         * ksvg2/svg/SVGForeignObjectElement.cpp:
   52793         * ksvg2/svg/SVGForeignObjectElement.h:
   52794         * ksvg2/svg/SVGForeignObjectElement.idl:
   52795         * ksvg2/svg/SVGGElement.cpp:
   52796         * ksvg2/svg/SVGGElement.h:
   52797         * ksvg2/svg/SVGGradientElement.cpp:
   52798         * ksvg2/svg/SVGGradientElement.h:
   52799         * ksvg2/svg/SVGImageElement.cpp:
   52800         * ksvg2/svg/SVGImageElement.h:
   52801         * ksvg2/svg/SVGLangSpace.cpp:
   52802         * ksvg2/svg/SVGLangSpace.h:
   52803         * ksvg2/svg/SVGLength.cpp:
   52804         * ksvg2/svg/SVGLength.h:
   52805         * ksvg2/svg/SVGLengthList.cpp:
   52806         * ksvg2/svg/SVGLengthList.h:
   52807         * ksvg2/svg/SVGLineElement.cpp:
   52808         * ksvg2/svg/SVGLineElement.h:
   52809         * ksvg2/svg/SVGLinearGradientElement.cpp:
   52810         * ksvg2/svg/SVGLinearGradientElement.h:
   52811         * ksvg2/svg/SVGList.h:
   52812         * ksvg2/svg/SVGListTraits.h:
   52813         * ksvg2/svg/SVGLocatable.cpp:
   52814         (WebCore::SVGLocatable::nearestViewportElement):
   52815         (WebCore::SVGLocatable::farthestViewportElement):
   52816         * ksvg2/svg/SVGLocatable.h:
   52817         * ksvg2/svg/SVGMPathElement.cpp:
   52818         * ksvg2/svg/SVGMPathElement.h:
   52819         * ksvg2/svg/SVGMarkerElement.cpp:
   52820         * ksvg2/svg/SVGMarkerElement.h:
   52821         * ksvg2/svg/SVGMaskElement.cpp:
   52822         * ksvg2/svg/SVGMaskElement.h:
   52823         * ksvg2/svg/SVGMetadataElement.cpp:
   52824         * ksvg2/svg/SVGMetadataElement.h:
   52825         * ksvg2/svg/SVGNumberList.cpp:
   52826         * ksvg2/svg/SVGNumberList.h:
   52827         * ksvg2/svg/SVGPaint.cpp:
   52828         * ksvg2/svg/SVGPaint.h:
   52829         * ksvg2/svg/SVGParserUtilities.cpp:
   52830         * ksvg2/svg/SVGParserUtilities.h:
   52831         * ksvg2/svg/SVGPathElement.cpp:
   52832         * ksvg2/svg/SVGPathElement.h:
   52833         * ksvg2/svg/SVGPathSeg.h:
   52834         * ksvg2/svg/SVGPathSegArc.cpp:
   52835         * ksvg2/svg/SVGPathSegArc.h:
   52836         * ksvg2/svg/SVGPathSegClosePath.cpp:
   52837         * ksvg2/svg/SVGPathSegClosePath.h:
   52838         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
   52839         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
   52840         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
   52841         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
   52842         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
   52843         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
   52844         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
   52845         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
   52846         * ksvg2/svg/SVGPathSegLineto.cpp:
   52847         * ksvg2/svg/SVGPathSegLineto.h:
   52848         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
   52849         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
   52850         * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
   52851         * ksvg2/svg/SVGPathSegLinetoVertical.h:
   52852         * ksvg2/svg/SVGPathSegList.cpp:
   52853         * ksvg2/svg/SVGPathSegList.h:
   52854         * ksvg2/svg/SVGPathSegMoveto.cpp:
   52855         * ksvg2/svg/SVGPathSegMoveto.h:
   52856         * ksvg2/svg/SVGPatternElement.cpp:
   52857         * ksvg2/svg/SVGPatternElement.h:
   52858         * ksvg2/svg/SVGPointList.cpp:
   52859         * ksvg2/svg/SVGPointList.h:
   52860         * ksvg2/svg/SVGPolyElement.cpp:
   52861         * ksvg2/svg/SVGPolyElement.h:
   52862         * ksvg2/svg/SVGPolygonElement.cpp:
   52863         * ksvg2/svg/SVGPolygonElement.h:
   52864         * ksvg2/svg/SVGPolylineElement.cpp:
   52865         * ksvg2/svg/SVGPolylineElement.h:
   52866         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
   52867         * ksvg2/svg/SVGPreserveAspectRatio.h:
   52868         * ksvg2/svg/SVGRadialGradientElement.cpp:
   52869         * ksvg2/svg/SVGRadialGradientElement.h:
   52870         * ksvg2/svg/SVGRectElement.cpp:
   52871         * ksvg2/svg/SVGRectElement.h:
   52872         * ksvg2/svg/SVGRenderingIntent.h:
   52873         * ksvg2/svg/SVGSVGElement.cpp:
   52874         * ksvg2/svg/SVGSVGElement.h:
   52875         * ksvg2/svg/SVGScriptElement.cpp:
   52876         * ksvg2/svg/SVGScriptElement.h:
   52877         * ksvg2/svg/SVGSetElement.cpp:
   52878         * ksvg2/svg/SVGSetElement.h:
   52879         * ksvg2/svg/SVGStopElement.cpp:
   52880         * ksvg2/svg/SVGStopElement.h:
   52881         * ksvg2/svg/SVGStringList.cpp:
   52882         * ksvg2/svg/SVGStringList.h:
   52883         * ksvg2/svg/SVGStylable.cpp:
   52884         * ksvg2/svg/SVGStylable.h:
   52885         * ksvg2/svg/SVGStyleElement.cpp:
   52886         * ksvg2/svg/SVGStyleElement.h:
   52887         * ksvg2/svg/SVGStyledElement.cpp:
   52888         (WebCore::SVGStyledElement::notifyAttributeChange):
   52889         * ksvg2/svg/SVGStyledElement.h:
   52890         * ksvg2/svg/SVGStyledLocatableElement.cpp:
   52891         * ksvg2/svg/SVGStyledLocatableElement.h:
   52892         * ksvg2/svg/SVGStyledTransformableElement.cpp:
   52893         * ksvg2/svg/SVGStyledTransformableElement.h:
   52894         * ksvg2/svg/SVGSwitchElement.cpp:
   52895         * ksvg2/svg/SVGSwitchElement.h:
   52896         * ksvg2/svg/SVGSymbolElement.cpp:
   52897         * ksvg2/svg/SVGSymbolElement.h:
   52898         * ksvg2/svg/SVGTRefElement.cpp:
   52899         * ksvg2/svg/SVGTRefElement.h:
   52900         * ksvg2/svg/SVGTSpanElement.cpp:
   52901         * ksvg2/svg/SVGTSpanElement.h:
   52902         * ksvg2/svg/SVGTests.cpp:
   52903         * ksvg2/svg/SVGTests.h:
   52904         * ksvg2/svg/SVGTextContentElement.cpp:
   52905         * ksvg2/svg/SVGTextContentElement.h:
   52906         * ksvg2/svg/SVGTextElement.cpp:
   52907         * ksvg2/svg/SVGTextElement.h:
   52908         * ksvg2/svg/SVGTextPositioningElement.cpp:
   52909         * ksvg2/svg/SVGTextPositioningElement.h:
   52910         * ksvg2/svg/SVGTitleElement.cpp:
   52911         * ksvg2/svg/SVGTitleElement.h:
   52912         * ksvg2/svg/SVGTransform.cpp:
   52913         * ksvg2/svg/SVGTransform.h:
   52914         * ksvg2/svg/SVGTransformDistance.cpp:
   52915         * ksvg2/svg/SVGTransformDistance.h:
   52916         * ksvg2/svg/SVGTransformList.cpp:
   52917         * ksvg2/svg/SVGTransformList.h:
   52918         * ksvg2/svg/SVGTransformable.cpp:
   52919         * ksvg2/svg/SVGTransformable.h:
   52920         * ksvg2/svg/SVGURIReference.cpp:
   52921         * ksvg2/svg/SVGURIReference.h:
   52922         * ksvg2/svg/SVGUnitTypes.h:
   52923         * ksvg2/svg/SVGUseElement.cpp:
   52924         * ksvg2/svg/SVGUseElement.h:
   52925         * ksvg2/svg/SVGUseElement.idl:
   52926         * ksvg2/svg/SVGViewElement.cpp:
   52927         * ksvg2/svg/SVGViewElement.h:
   52928         * ksvg2/svg/SVGZoomAndPan.cpp:
   52929         * ksvg2/svg/SVGZoomAndPan.h:
   52930         * ksvg2/svg/svgtags.in:
   52931         * loader/Cache.cpp:
   52932         (WebCore::createResource):
   52933         (WebCore::Cache::getStatistics):
   52934         * loader/Cache.h:
   52935         * loader/CachedImage.cpp:
   52936         (WebCore::CachedImage::createImage):
   52937         * loader/CachedResource.h:
   52938         (WebCore::CachedResource::):
   52939         * loader/CachedResourceClient.h:
   52940         * loader/CachedXBLDocument.cpp:
   52941         * loader/CachedXBLDocument.h:
   52942         * loader/CachedXSLStyleSheet.cpp:
   52943         * loader/CachedXSLStyleSheet.h:
   52944         * loader/DocLoader.cpp:
   52945         * loader/DocLoader.h:
   52946         * page/DOMWindow.idl:
   52947         * page/EventHandler.cpp:
   52948         (WebCore::EventHandler::handleMouseMoveEvent):
   52949         (WebCore::selectCursor):
   52950         * page/Frame.cpp:
   52951         (WebCore::Frame::Frame):
   52952         * page/PageState.cpp:
   52953         (WebCore::PageState::PageState):
   52954         (WebCore::PageState::restore):
   52955         * platform/MimeTypeRegistry.cpp:
   52956         (WebCore::initialiseSupportedNonImageMimeTypes):
   52957         * platform/graphics/FloatPoint3D.cpp:
   52958         * platform/graphics/FloatPoint3D.h:
   52959         * platform/graphics/ImageBuffer.cpp:
   52960         (WebCore::ImageBuffer::renderSubtreeToImage):
   52961         * platform/graphics/svg/SVGImage.cpp:
   52962         * platform/graphics/svg/SVGImage.h:
   52963         * platform/graphics/svg/SVGImageEmptyClients.h:
   52964         * platform/graphics/svg/SVGPaintServer.cpp:
   52965         * platform/graphics/svg/SVGPaintServer.h:
   52966         * platform/graphics/svg/SVGPaintServerGradient.cpp:
   52967         * platform/graphics/svg/SVGPaintServerGradient.h:
   52968         * platform/graphics/svg/SVGPaintServerLinearGradient.cpp:
   52969         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
   52970         * platform/graphics/svg/SVGPaintServerPattern.cpp:
   52971         * platform/graphics/svg/SVGPaintServerPattern.h:
   52972         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp:
   52973         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
   52974         * platform/graphics/svg/SVGPaintServerSolid.cpp:
   52975         * platform/graphics/svg/SVGPaintServerSolid.h:
   52976         * platform/graphics/svg/SVGResource.cpp:
   52977         * platform/graphics/svg/SVGResource.h:
   52978         * platform/graphics/svg/SVGResourceClipper.cpp:
   52979         * platform/graphics/svg/SVGResourceClipper.h:
   52980         * platform/graphics/svg/SVGResourceFilter.cpp:
   52981         * platform/graphics/svg/SVGResourceFilter.h:
   52982         * platform/graphics/svg/SVGResourceMarker.cpp:
   52983         * platform/graphics/svg/SVGResourceMarker.h:
   52984         * platform/graphics/svg/SVGResourceMasker.cpp:
   52985         * platform/graphics/svg/SVGResourceMasker.h:
   52986         * platform/graphics/svg/cg/CgSupport.cpp:
   52987         * platform/graphics/svg/cg/CgSupport.h:
   52988         * platform/graphics/svg/cg/RenderPathCg.cpp:
   52989         * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
   52990         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   52991         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
   52992         * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
   52993         * platform/graphics/svg/cg/SVGResourceClipperCg.cpp:
   52994         * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
   52995         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
   52996         * platform/graphics/svg/filters/SVGDistantLightSource.h:
   52997         * platform/graphics/svg/filters/SVGFEBlend.cpp:
   52998         * platform/graphics/svg/filters/SVGFEBlend.h:
   52999         * platform/graphics/svg/filters/SVGFEColorMatrix.cpp:
   53000         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
   53001         * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp:
   53002         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
   53003         * platform/graphics/svg/filters/SVGFEComposite.cpp:
   53004         * platform/graphics/svg/filters/SVGFEComposite.h:
   53005         * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp:
   53006         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
   53007         * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp:
   53008         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
   53009         * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp:
   53010         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
   53011         * platform/graphics/svg/filters/SVGFEFlood.cpp:
   53012         * platform/graphics/svg/filters/SVGFEFlood.h:
   53013         * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp:
   53014         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
   53015         * platform/graphics/svg/filters/SVGFEImage.cpp:
   53016         * platform/graphics/svg/filters/SVGFEImage.h:
   53017         * platform/graphics/svg/filters/SVGFEMerge.cpp:
   53018         * platform/graphics/svg/filters/SVGFEMerge.h:
   53019         * platform/graphics/svg/filters/SVGFEMorphology.cpp:
   53020         * platform/graphics/svg/filters/SVGFEMorphology.h:
   53021         * platform/graphics/svg/filters/SVGFEOffset.cpp:
   53022         * platform/graphics/svg/filters/SVGFEOffset.h:
   53023         * platform/graphics/svg/filters/SVGFESpecularLighting.cpp:
   53024         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
   53025         * platform/graphics/svg/filters/SVGFETile.h:
   53026         * platform/graphics/svg/filters/SVGFETurbulence.cpp:
   53027         * platform/graphics/svg/filters/SVGFETurbulence.h:
   53028         * platform/graphics/svg/filters/SVGFilterEffect.cpp:
   53029         * platform/graphics/svg/filters/SVGFilterEffect.h:
   53030         * platform/graphics/svg/filters/SVGLightSource.cpp:
   53031         * platform/graphics/svg/filters/SVGLightSource.h:
   53032         * platform/graphics/svg/filters/SVGPointLightSource.h:
   53033         * platform/graphics/svg/filters/SVGSpotLightSource.h:
   53034         * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm:
   53035         * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
   53036         * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm:
   53037         * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm:
   53038         * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm:
   53039         * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm:
   53040         * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm:
   53041         * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm:
   53042         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
   53043         * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
   53044         * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
   53045         * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm:
   53046         * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm:
   53047         * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm:
   53048         * platform/graphics/svg/filters/cg/SVGFETileCg.mm:
   53049         * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm:
   53050         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
   53051         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
   53052         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
   53053         * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
   53054         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
   53055         * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
   53056         * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
   53057         * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
   53058         * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
   53059         * rendering/HitTestResult.cpp:
   53060         (WebCore::HitTestResult::absoluteImageURL):
   53061         (WebCore::HitTestResult::absoluteLinkURL):
   53062         (WebCore::HitTestResult::isLiveLink):
   53063         * rendering/RenderForeignObject.cpp:
   53064         * rendering/RenderForeignObject.h:
   53065         * rendering/RenderLayer.cpp:
   53066         (WebCore::RenderLayer::isTransparent):
   53067         * rendering/RenderObject.cpp:
   53068         (WebCore::RenderObject::containingBlock):
   53069         * rendering/RenderObject.h:
   53070         * rendering/RenderPath.cpp:
   53071         * rendering/RenderPath.h:
   53072         * rendering/RenderSVGBlock.cpp:
   53073         * rendering/RenderSVGBlock.h:
   53074         * rendering/RenderSVGContainer.cpp:
   53075         * rendering/RenderSVGContainer.h:
   53076         * rendering/RenderSVGGradientStop.cpp:
   53077         * rendering/RenderSVGGradientStop.h:
   53078         * rendering/RenderSVGHiddenContainer.cpp:
   53079         * rendering/RenderSVGHiddenContainer.h:
   53080         * rendering/RenderSVGImage.cpp:
   53081         * rendering/RenderSVGImage.h:
   53082         * rendering/RenderSVGInline.cpp:
   53083         * rendering/RenderSVGInline.h:
   53084         * rendering/RenderSVGInlineText.cpp:
   53085         * rendering/RenderSVGInlineText.h:
   53086         * rendering/RenderSVGTSpan.cpp:
   53087         * rendering/RenderSVGTSpan.h:
   53088         * rendering/RenderSVGText.cpp:
   53089         * rendering/RenderSVGText.h:
   53090         * rendering/RenderStyle.cpp:
   53091         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   53092         (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
   53093         (WebCore::StyleRareNonInheritedData::operator==):
   53094         (WebCore::RenderStyle::RenderStyle):
   53095         (WebCore::RenderStyle::inheritFrom):
   53096         (WebCore::RenderStyle::operator==):
   53097         (WebCore::RenderStyle::inheritedNotEqual):
   53098         (WebCore::RenderStyle::diff):
   53099         * rendering/RenderStyle.h:
   53100         * rendering/RenderText.cpp:
   53101         (WebCore::RenderText::setStyle):
   53102         (WebCore::RenderText::setTextInternal):
   53103         * rendering/RenderTreeAsText.cpp:
   53104         (WebCore::write):
   53105         (WebCore::externalRepresentation):
   53106         * rendering/SVGInlineFlowBox.cpp:
   53107         * rendering/SVGInlineFlowBox.h:
   53108         * rendering/SVGRenderTreeAsText.cpp:
   53109         * rendering/SVGRenderTreeAsText.h:
   53110         * rendering/SVGRootInlineBox.cpp:
   53111         * rendering/SVGRootInlineBox.h:
   53112         * rendering/bidi.cpp:
   53113         (WebCore::shouldPreserveNewline):
   53114         (WebCore::RenderBlock::findNextLineBreak):
   53115         * webcore-base.bkl:
   53116         * xml/NativeXPathNSResolver.cpp:
   53117         * xml/NativeXPathNSResolver.h:
   53118         * xml/XPathEvaluator.cpp:
   53119         * xml/XPathEvaluator.h:
   53120         * xml/XPathExpression.cpp:
   53121         * xml/XPathExpression.h:
   53122         * xml/XPathExpressionNode.cpp:
   53123         * xml/XPathExpressionNode.h:
   53124         * xml/XPathFunctions.cpp:
   53125         * xml/XPathFunctions.h:
   53126         * xml/XPathGrammar.y:
   53127         * xml/XPathNSResolver.cpp:
   53128         * xml/XPathNSResolver.h:
   53129         * xml/XPathNamespace.cpp:
   53130         * xml/XPathNamespace.h:
   53131         * xml/XPathParser.cpp:
   53132         * xml/XPathParser.h:
   53133         * xml/XPathPath.cpp:
   53134         * xml/XPathPath.h:
   53135         * xml/XPathPredicate.cpp:
   53136         * xml/XPathPredicate.h:
   53137         * xml/XPathResult.cpp:
   53138         * xml/XPathResult.h:
   53139         * xml/XPathStep.cpp:
   53140         * xml/XPathStep.h:
   53141         * xml/XPathUtil.cpp:
   53142         * xml/XPathUtil.h:
   53143         * xml/XPathValue.cpp:
   53144         * xml/XPathValue.h:
   53145         * xml/XPathVariableReference.cpp:
   53146         * xml/XPathVariableReference.h:
   53147         * xml/XSLImportRule.cpp:
   53148         * xml/XSLImportRule.h:
   53149         * xml/XSLStyleSheet.cpp:
   53150         * xml/XSLStyleSheet.h:
   53151         * xml/XSLTProcessor.cpp:
   53152         * xml/XSLTProcessor.h:
   53153 
   53154 2007-02-25  Mitz Pettel  <mitz (a] webkit.org>
   53155 
   53156         Reviewed by David Hyatt.
   53157 
   53158         - fix http://bugs.webkit.org/show_bug.cgi?id=12886
   53159           Crash with Scriptalicious javascript library
   53160 
   53161         Test: fast/dynamic/float-withdrawal.html
   53162 
   53163         * rendering/RenderBlock.cpp:
   53164         (WebCore::RenderBlock::layoutBlockChildren): Detect when a child block had
   53165         intruding floats in a previous layout, and in that case force it to relayout.
   53166 
   53167 2007-02-25  David Hyatt  <hyatt (a] apple.com>
   53168 
   53169         Revert my change to the default fill color.  Just set the color to transparent explicitly when
   53170         drawing textarea resizer frames.
   53171 
   53172         * platform/graphics/GraphicsContext.cpp:
   53173         (WebCore::GraphicsContextState::GraphicsContextState):
   53174         * rendering/RenderLayer.cpp:
   53175         (WebCore::RenderLayer::paintOverflowControls):
   53176 
   53177 2007-02-25  Sam Weinig  <sam (a] webkit.org>
   53178 
   53179         Update forgotten files.
   53180 
   53181         * rendering/RenderLayer.cpp:
   53182         (WebCore::RenderLayer::updateLayerPosition):
   53183 
   53184 2007-02-25  David Hyatt  <hyatt (a] apple.com>
   53185 
   53186         Fix for regression caused by changing the containing block of positioned elements with no positioned ancestor
   53187         to be the initial containing block (represented in our tree by the RenderView).  Rework RenderView's layout
   53188         to have very few special cases.   Now it will just relayout its children when the width/height of the
   53189         view actually changes.  Positioned elements no longer get a special additional layout, since width/height
   53190         adjustments are caught by the base class already anyway.
   53191 
   53192         Reviewed by mjs, darin
   53193 
   53194         * rendering/RenderBlock.cpp:
   53195         (WebCore::RenderBlock::layoutBlock):
   53196         * rendering/RenderFlexibleBox.cpp:
   53197         (WebCore::RenderFlexibleBox::layoutBlock):
   53198         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   53199         * rendering/RenderView.cpp:
   53200         (WebCore::RenderView::RenderView):
   53201         (WebCore::RenderView::layout):
   53202         * rendering/RenderView.h:
   53203 
   53204 2007-02-25  Maciej Stachowiak  <mjs (a] apple.com>
   53205 
   53206         Not reviewed, build fix.
   53207 
   53208         - fix build breakage
   53209 
   53210         * platform/gdk/ScrollViewGdk.cpp:
   53211         (WebCore::ScrollView::fullyClippedContentRect):
   53212         * platform/qt/ScrollViewQt.cpp:
   53213         (WebCore::ScrollView::fullyClippedContentRect):
   53214 
   53215 2007-02-24  Maciej Stachowiak  <mjs (a] apple.com>
   53216 
   53217         Reviewed by Adam.
   53218 
   53219         - fixed layout test failure in fast/overflow/scrollRevealButton
   53220         
   53221         I added a new ScrollView method, fullyClippedContentRect, that vies the content rect
   53222         as clipped by all ancestor scroll views, not just this one. Currently it only works
   53223         correctly on mac however. visibleContentRect, only accounting for the clipping from
   53224         this particular scroll view, is sufficient for most purposes.
   53225 
   53226         * page/Frame.cpp:
   53227         (WebCore::Frame::visibleSelectionRect):
   53228         (WebCore::Frame::setIsActive):
   53229         (WebCore::Frame::markAllMatchesForText):
   53230         * platform/ScrollView.h:
   53231         * platform/gdk/ScrollViewGdk.cpp:
   53232         (WebCore::ScrolView::fullyClippedContentRect):
   53233         * platform/mac/ScrollViewMac.mm:
   53234         (WebCore::ScrollView::fullyClippedContentRect):
   53235         * platform/qt/ScrollViewQt.cpp:
   53236         (WebCore::ScrolView::fullyClippedContentRect):
   53237         * rendering/RenderLayer.cpp:
   53238         (WebCore::RenderLayer::scrollRectToVisible):
   53239 
   53240 2007-02-24  Adam Roben  <aroben (a] apple.com>
   53241 
   53242         Reviewed by Steve.
   53243 
   53244         "Look Up in Dictionary" context menu item should be Mac-only for now,
   53245         since it's only implemented on that platform (<rdar://problem/5021468>)
   53246 
   53247         * platform/ContextMenu.cpp:
   53248         (WebCore::ContextMenu::populate): Wrap all instances of the dictionary
   53249         menu item in #if PLATFORM(MAC).
   53250 
   53251 2007-02-24  Geoffrey Garen  <ggaren (a] apple.com>
   53252 
   53253         Reviewed by Darin Adler.
   53254         
   53255         Fixed <rdar://problem/4987649> leaks in BidiRun::operator new seen while 
   53256         running WebKit unit tests
   53257         
   53258         In bidi.cpp, some functions allocate BidiRuns and put them in a global data
   53259         structure, while others uses the BidiRuns in the global data structure. 
   53260         The caller is responsible for knowing which functions may allocate runs
   53261         and which may use them, and calling deleteBidiRuns() at the appropriate time.
   53262 
   53263         The fix is to add some calls to deleteBidiRuns() where they were missing.
   53264         
   53265         I also added a BidiRun counter because these two leaks were introduced by
   53266         our two bidi.cpp experts, so the odds that leaks will creep in again
   53267         in the future seem pretty high.
   53268 
   53269         * rendering/bidi.cpp:
   53270         (WebCore::RenderBlock::bidiReorderCharacters): Added  missing call to
   53271         deleteBidiRuns().
   53272         (WebCore::BidiRunCounter::~BidiRunCounter):
   53273         (WebCore::BidiRun::operator delete):
   53274         (WebCore::RenderBlock::layoutInlineChildren): Added missing call to
   53275         deleteBidiRuns(). Moved call to deleteBidiRuns() to same scope as call to
   53276         bidiReorderLine(), to emphasize that they go together like new/delete.
   53277         In theory, the old code was just as good, but I didn't want to rely on
   53278         theory.
   53279 
   53280 2007-02-24  David Harrison  <harrison (a] apple.com>
   53281 
   53282         Reviewed by Kevin.
   53283 
   53284         <rdar://problem/4961431> Image with empty string alt tag should be ignored
   53285 
   53286         * bridge/mac/WebCoreAXObject.mm:
   53287         (-[WebCoreAXObject accessibilityIsIgnored]):
   53288         Ignore img element that has an alt attribute, but that string is empty.
   53289 
   53290 2007-02-24  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   53291 
   53292         Reviewed by Adam Roben.
   53293 
   53294         Gdk improvements.
   53295 
   53296         * platform/gdk/FrameGdk.cpp: only scroll on keydown, not both keydown and keyup.
   53297         (WebCore::FrameGdk::keyPress):
   53298         (WebCore::FrameGdk::handleGdkEvent):
   53299         (WebCore::Frame::print):
   53300         (WebCore::Frame::issueTransposeCommand):
   53301         (WebCore::Frame::respondToChangedSelection):
   53302         (WebCore::Frame::cleanupPlatformScriptObjects):
   53303         (WebCore::Frame::dragImageForSelection):
   53304         * platform/network/gdk/ResourceHandleManager.cpp: don't free memory that
   53305         doesn't belong to us.
   53306         (WebCore::ResourceHandleManager::downloadTimerCallback):
   53307 
   53308 2007-02-23  Kevin Decker <kdecker (a] apple.com>
   53309 
   53310         Reviewed by Anders.
   53311 
   53312         Fixed: <rdar://problem/4971226> REGRESSION: Replying to closed HTML mail message does not quote original body (12503)
   53313         
   53314         There were two problems here:
   53315         
   53316         * page/mac/WebCoreFrameBridge.mm:
   53317         (+[WebCoreFrameBridge stringWithData:textEncodingName:]): The old code said  "if there is no text encoding name than
   53318          assume WindowsLatin1 (iso-8859-1) and try to decode that". That's not sufficient because it doesn't handle the fallback
   53319          case for unknown encodings. This method will now attempt to decode using WindowsLatin1 for unknown encoding types.
   53320         * platform/mac/mac-encodings.txt: Added the missing "macroman" encoding type. 
   53321 
   53322 2007-02-23  Mitz Pettel  <mitz (a] webkit.org>
   53323 
   53324         Reviewed by Maciej.
   53325 
   53326         - fix http://bugs.webkit.org/show_bug.cgi?id=12856
   53327           REGRESSION (r13685): Canceling the suggestion popup does not revert the change
   53328 
   53329         * editing/ReplaceSelectionCommand.cpp:
   53330         (WebCore::ReplaceSelectionCommand::doApply): If the fragment to be inserted
   53331         is empty, first delete the selection, and only then bail out. 
   53332 
   53333 2007-02-23  Anders Carlsson  <acarlsson (a] apple.com>
   53334 
   53335         Reviewed by Adam.
   53336 
   53337         <rdar://problem/5001923> 
   53338         REGRESSION: Crash when navigating forward from an error page in WebFrameLoaderClient::dispatchDidReceiveContentLength
   53339 
   53340         Fix an error that was introduced in revision r18541. We should check if the provisional document loader 
   53341         has an unreachable URL, not the actual document loader.
   53342         
   53343         * loader/FrameLoader.cpp:
   53344         (WebCore::FrameLoader::updateHistoryForCommit):
   53345 
   53346 2007-02-23  Mitz Pettel  <mitz (a] webkit.org>
   53347 
   53348         Reviewed by Darin.
   53349 
   53350         - fix http://bugs.webkit.org/show_bug.cgi?id=12823
   53351           REGRESSION(r16968-16977): unable to prevent selection by cancelling "selectstart" event
   53352 
   53353         Test: fast/events/selectstart-during-autoscroll.html
   53354 
   53355         * rendering/RenderLayer.cpp:
   53356         (WebCore::RenderLayer::autoscroll): Invoke the renderer's shouldSelect() --
   53357         which dispatches the selection DOM event and gives it a chance to cancel
   53358         the selection -- before updating the selection during autoscroll.
   53359 
   53360 2007-02-23  Oliver Hunt  <oliver (a] apple.com>
   53361 
   53362         Reviewed by Adam.
   53363 
   53364         Fix for http://bugs.webkit.org/show_bug.cgi?id=12870
   53365 
   53366         It turns out short circuiting DragData::containsURL() was bad
   53367  
   53368         * manual-tests/directory-drop-on-view.html: Added.
   53369         * platform/mac/DragDataMac.mm:
   53370         (WebCore::DragData::containsURL):
   53371 
   53372 2007-02-23  Maciej Stachowiak  <mjs (a] apple.com>
   53373 
   53374         Reviewed by Mitz.
   53375 
   53376         - 12.5% speedup on BenchJS test 6
   53377         Partial fix for http://bugs.webkit.org/show_bug.cgi?id=12866
   53378         
   53379         It turns out that calling documentVisibleRect on an NSScrollView is pretty expensive,
   53380         and calling visibleRect even more so. Take measures to call them less often.
   53381 
   53382         * platform/mac/ScrollViewMac.mm:
   53383         (WebCore::ScrollView::visibleContentRect): Use documentVisibleRect when possible.
   53384         (WebCore::ScrollView::updateContents): Use visibleContentRect to be able to use
   53385         documentVisibleRect when possible.
   53386         * rendering/RenderView.cpp:
   53387         (WebCore::RenderView::repaintViewRectangle): Don't get or intersect with viewRect
   53388         if we don't have a parent frame, since the ScrollView will do that anyway. Also,
   53389         don't get contentX and contentY separately since they are in the viewRect already.
   53390         (WebCore::RenderView::viewRect): Use visibleContentRect instead of getting each
   53391         coordinate individually, to avoid calling documentVisibleRect repeatedly.
   53392 
   53393 2007-02-23  Maciej Stachowiak  <mjs (a] apple.com>
   53394 
   53395         Reviewed by Mitz.
   53396 
   53397         - 2% speedup on BenchJS test 6
   53398         Partial fix for http://bugs.webkit.org/show_bug.cgi?id=12866
   53399 
   53400         * css/CSSPrimitiveValue.cpp:
   53401         (WebCore::CSSPrimitiveValue::cssText): Use format() instead of
   53402         number() followed by append of a constant string.
   53403 
   53404 2007-02-22  George Staikos  <staikos (a] kde.org>
   53405 
   53406         Fix the Qt build.
   53407 
   53408         * platform/qt/ClipboardQt.cpp:
   53409         (WebCore::ClipboardQt::ClipboardQt):
   53410 
   53411 2007-02-22  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   53412 
   53413         Reviewed by Adam Roben, who never sleeps.
   53414 
   53415         To avoid code duplication, move notImplementedGdk() macro to a separate
   53416         header file. Remove existing notImplementedGdk() macros and replace
   53417         remaining notImplemented() to notImplementedGdk() in gdk code.
   53418 
   53419         * loader/gdk/DocumentLoaderGdk.cpp:
   53420         (WebCore::DocumentLoader::getResponseModifiedHeader):
   53421         * loader/gdk/FrameLoaderClientGdk.cpp:
   53422         (WebCore::FrameLoaderClientGdk::hasWebView):
   53423         (WebCore::FrameLoaderClientGdk::hasFrameView):
   53424         * page/gdk/ContextMenuClientGdk.cpp:
   53425         (WebCore::ContextMenuClientGdk::contextMenuDestroyed):
   53426         (WebCore::ContextMenuClientGdk::getCustomMenuFromDefaultItems):
   53427         (WebCore::ContextMenuClientGdk::contextMenuItemSelected):
   53428         (WebCore::ContextMenuClientGdk::downloadURL):
   53429         (WebCore::ContextMenuClientGdk::copyImageToClipboard):
   53430         (WebCore::ContextMenuClientGdk::searchWithGoogle):
   53431         (WebCore::ContextMenuClientGdk::lookUpInDictionary):
   53432         (WebCore::ContextMenuClientGdk::speak):
   53433         (WebCore::ContextMenuClientGdk::stopSpeaking):
   53434         * page/gdk/EventHandlerGdk.cpp:
   53435         * platform/gdk/CursorGdk.cpp:
   53436         (WebCore::Cursor::Cursor):
   53437         * platform/gdk/EditorClientGdk.cpp:
   53438         * platform/gdk/NotImplementedGdk.h: Added.
   53439         * platform/gdk/PopupMenuGdk.cpp:
   53440         (WebCore::PopupMenu::PopupMenu):
   53441         (WebCore::PopupMenu::~PopupMenu):
   53442         (WebCore::PopupMenu::show):
   53443         (WebCore::PopupMenu::hide):
   53444         (WebCore::PopupMenu::updateFromElement):
   53445         * platform/gdk/RenderThemeGdk.cpp:
   53446         * platform/gdk/ScreenGdk.cpp:
   53447         (WebCore::screenDepth):
   53448         (WebCore::screenDepthPerComponent):
   53449         (WebCore::screenIsMonochrome):
   53450         (WebCore::screenRect):
   53451         (WebCore::screenAvailableRect):
   53452         * platform/gdk/TemporaryLinkStubs.cpp:
   53453         * platform/graphics/gdk/ImageGdk.cpp:
   53454         (WebCore::Image::drawPattern):
   53455         * platform/network/gdk/ResourceHandleCurl.cpp:
   53456         (WebCore::ResourceHandle::setDefersLoading):
   53457         * platform/network/gdk/ResourceHandleManager.cpp:
   53458         (WebCore::ResourceHandleManager::setupPUT):
   53459         (WebCore::ResourceHandleManager::setupPOST):
   53460 
   53461 2007-02-22  Feng Qian  <feng (a] chromium.org>
   53462 
   53463         Reviewed by Maciej.
   53464 
   53465         - Patch for http://bugs.webkit.org/show_bug.cgi?id=12850
   53466           Leaks >10k objects
   53467 
   53468         and
   53469 
   53470         - http://bugs.webkit.org/show_bug.cgi?id=12853
   53471           add a EventListener leak counter
   53472 
   53473         Problem: RemoveEventListener leaks memory if the listener is not
   53474         registered.
   53475         Fix: Added Window::findJSEventListener function w/o creating a 
   53476         JSEventListener; Renamed getJSEventListener to findOrCreateJSEventListener;
   53477 
   53478         As an enhancement, added a leak counter for EventListeners.
   53479 
   53480         Added a test case, LayoutTests/fast/events/remove-event-listener.html.
   53481 
   53482         * WebCore/bindings/js/kjs_dom.cpp:
   53483         * WebCore/bindings/js/kjs_window.h:
   53484         * WebCore/bindings/js/kjs_window.cpp:
   53485         * WebCore/bindings/js/kjs_event.cpp: Add a leak counter.
   53486         * WebCore/bindings/js/JSXMLHttpRequest.cpp:
   53487         * LayoutTests/fast/events/remove-event-listener.html:
   53488 
   53489 2007-02-22  Anders Carlsson  <acarlsson (a] apple.com>
   53490 
   53491         Reviewed by Geoff.
   53492 
   53493         <rdar://problem/4998203> 
   53494         REGRESSION: Back-forward list gets messed up when navigating to error pages with back-forward cache turned off
   53495         
   53496         * loader/FrameLoader.cpp:
   53497         (WebCore::FrameLoader::load):
   53498         Remove call to setPolicyDocumentLoader(), the policy document loader is set immediately after, and setting it before 
   53499         calling shouldReloadToHandleUnreachableURL causes us to get the wrong URL.
   53500         
   53501         (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
   53502         Check if the unreachable URL is equal to the document loader's request.
   53503         
   53504         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   53505         Check the provisional document loader's unreachable URL.
   53506 
   53507 2007-02-22  Justin Garcia  <justin.garcia (a] apple.com>
   53508 
   53509         Reviewed by darin
   53510         
   53511         <rdar://problem/5007143>
   53512         REGRESSION: WebKit doesn't remember horizontal position of caret when moving forward by line
   53513 
   53514         * editing/SelectionController.cpp:
   53515         (WebCore::SelectionController::SelectionController): Initialize 
   53516         m_xPosForVerticalArrowNavigation.
   53517         (WebCore::SelectionController::setSelection): Call the new setter.
   53518         (WebCore::SelectionController::modifyMovingRightForward): For line
   53519         and paragraph granularities, use the saved xPosForVerticalArrowNavigation 
   53520         even if the old selection was a range. Use the x position of the 
   53521         *start*, not the end of the selection if there is no saved 
   53522         xPosForVerticalArrowNavigation.  This matches TextEdit's behavior.
   53523         (WebCore::SelectionController::modifyMovingLeftBackward): For line
   53524         and paragraph granularities, use the saved xPosForVerticalArrowNavigation 
   53525         even if the old selection was a range.
   53526         (WebCore::SelectionController::modify): Preserve the xPosForVerticalArrowNavigation
   53527         for line and paragraph granularities.
   53528         (WebCore::SelectionController::xPosForVerticalArrowNavigation): Removed
   53529         the recalc bool because it is now always false.
   53530         (WebCore::SelectionController::setXPosForVerticalArrowNavigation): Added.
   53531         * editing/SelectionController.h: Moved m_xPosForVerticalArrowNavigation
   53532         from Frame.
   53533         * page/Frame.cpp: Moved m_xPosForVerticalArrowNavigation to SelectionController.
   53534         * page/Frame.h: Ditto.
   53535         * page/FramePrivate.h: Ditto.
   53536 
   53537 2007-02-22  Beth Dakin  <bdakin (a] apple.com>
   53538 
   53539         Reviewed by Adam. Manual test added.
   53540 
   53541         Fix for http://bugs.webkit.org/show_bug.cgi?id=12399 REGRESSION: 
   53542         Unable to prevent default context menu from appearing. <rdar://
   53543         problem/5017416>
   53544 
   53545         This problem appeared because of two facets of the current context 
   53546         menu design. First, all context menu events are now considered to 
   53547         be "swallowed" since we take care of building up the regular 
   53548         context menu through the defaultEventHandler(). Second, the context 
   53549         menu controller holds onto it's context menu until a new one is 
   53550         created. There would be logistical problems changing this since 
   53551         AppKit relies on the menu being around for as long as it is
   53552         visible on the screen and we don't get any notification once the 
   53553         menu is popped-down.
   53554 
   53555         This patch fixes the problem by giving WebKit a way to clear the 
   53556         controller's context menu. WebKit now clears the menu before it 
   53557         propagates a new context menu event through the DOM.
   53558 
   53559         * WebCore.exp:
   53560         * manual-tests/DOMContextMenuEvent.html: Added.
   53561         * page/ContextMenuController.cpp:
   53562         (WebCore::ContextMenuController::clearContextMenu):
   53563         * page/ContextMenuController.h:
   53564 
   53565 2007-02-22  John Sullivan  <sullivan (a] apple.com>
   53566 
   53567         Reviewed by Kevin and Adele
   53568         
   53569         - fixed <rdar://problem/4129417> Need final art for textarea's resize corner
   53570         
   53571         This probably broke some layout pixel tests since the image changed. I'm going to
   53572         track those down in a moment (non-trivial since there are a bunch failing for other
   53573         reasons).
   53574 
   53575         * Resources/textAreaResizeCorner.tiff:
   53576         new art
   53577 
   53578         * Resources/deleteButton.tiff:
   53579         * Resources/deleteButtonPressed.tiff:
   53580         these got smaller when I ran compress-tiffs on this directory
   53581         
   53582 2007-02-22  Oliver Hunt  <oliver (a] apple.com>
   53583 
   53584         Reviewed by Ada, Lou and Steve.
   53585 
   53586         Moving basic components of ClipboardMac to Clipboard, 
   53587         last of the basic common code merge will come later (namely setting the 
   53588         drag element/image).
   53589         
   53590         Tidying up in DragController including a few bad PassRefPtr uses and
   53591         removing unnecessary accessors.  Also initialise fields properly to
   53592         fix <rdar:/problems/5014889>
   53593 
   53594         * dom/Clipboard.cpp:
   53595         (WebCore::Clipboard::Clipboard):
   53596           New constructor
   53597           
   53598         * dom/Clipboard.h:
   53599         (WebCore::Clipboard::isForDragging):
   53600         (WebCore::Clipboard::dragLocation):
   53601         (WebCore::Clipboard::dragImage):
   53602         (WebCore::Clipboard::dragImageElement):
   53603           Exposing common data
   53604           
   53605         * page/DragController.cpp:
   53606         (WebCore::DragController::DragController):
   53607           Initialise m_isHandlingDrag (oops)
   53608         (WebCore::documentFragmentFromDragData):
   53609         (WebCore::DragController::tryDocumentDrag):
   53610           Fixing PassRefPtr misuse
   53611         (WebCore::DragController::canProcessDrag):
   53612         (WebCore::DragController::startDrag):
   53613         (WebCore::DragController::doSystemDrag):
   53614           Make sure we're using the correct coordinate space
   53615           
   53616         * page/EventHandler.cpp:
   53617         (WebCore::EventHandler::handleDrag):
   53618           Reset drag source correctly
   53619           
   53620         * platform/mac/ClipboardMac.h:
   53621         * platform/mac/ClipboardMac.mm:
   53622         (WebCore::ClipboardMac::ClipboardMac):
   53623           update constructor to use new Clipboard constructor
   53624 
   53625 2007-02-22  Adele Peterson  <adele (a] apple.com>
   53626 
   53627         Reviewed by Darin.
   53628 
   53629         Fix for <rdar://problem/5014970> 9A374: Tabs don't work in the message body
   53630 
   53631         Test: fast/events/keypress-insert-tab.html
   53632 
   53633         * page/EventHandler.cpp: (WebCore::EventHandler::defaultTextInputEventHandler):
   53634           If the defaultTabEventHandler doesn't handle the event, then go on to the insertText case.
   53635 
   53636 2007-02-22  Timothy Hatcher  <timothy (a] apple.com>
   53637 
   53638         Reviewed by Darin.
   53639 
   53640         <rdar://problem/4948887> REGRESSION: Correct differences in public DOM API that inadvertently changed in Leopard
   53641 
   53642         * bindings/objc/PublicDOMInterfaces.h: Changes return types for two size properties, adds deprecated DOMEventTarget methods.
   53643         * bindings/scripts/CodeGeneratorObjC.pm: Fixed public API checking for protocols, adds support for ConvertToString.
   53644         * dom/EventTarget.idl: Marks addEventListener and removeEventListener with the OldStyleObjC attribute.
   53645         * html/HTMLBaseFontElement.idl: Changes the size property to a DOMString for ObjC only.
   53646         * html/HTMLInputElement.idl: Changes the size property to a DOMString for ObjC only.
   53647         * html/HTMLOptionsCollection.idl: Changes the length property to be unsigned.
   53648 
   53649 2007-02-22  Adele Peterson  <adele (a] apple.com>
   53650 
   53651         Reviewed by John.
   53652 
   53653         Fix <rdar://problem/5016969> REGRESSION: "Check Spelling As You Type" context menu item is never checked
   53654 
   53655         * platform/ContextMenu.cpp: (WebCore::ContextMenu::checkOrEnableIfNeeded): Set shouldCheck for ContextMenuItemTagCheckSpellingWhileTyping.
   53656 
   53657 2007-02-22  Antti Koivisto  <antti (a] apple.com>
   53658 
   53659         Reviewed by Darin.
   53660 
   53661         - fix http://bugs.webkit.org/show_bug.cgi?id=11447
   53662         REGRESSION(NativeListBox): List not scrolled to preselected option
   53663         <rdar://problem/4957463>
   53664         
   53665         Initiate scroll when selected <option> is added to <select>.
   53666 
   53667         * html/HTMLOptionElement.cpp:
   53668         (WebCore::HTMLOptionElement::insertedIntoDocument):
   53669         * html/HTMLOptionElement.h:
   53670         * html/HTMLSelectElement.cpp:
   53671         (WebCore::HTMLSelectElement::notifyOptionSelected):
   53672         (WebCore::HTMLSelectElement::updateListBoxSelection):
   53673         (WebCore::HTMLSelectElement::scrollToSelection):
   53674         * html/HTMLSelectElement.h:
   53675 
   53676 2007-02-22  Zack Rusin  <zrusin (a] trolltech.com>
   53677 
   53678         Reviewed by Lars
   53679 
   53680         Fix sites with fixed positioned backgrounds.
   53681 
   53682         * platform/qt/ScrollViewQt.cpp:
   53683         (WebCore::ScrollView::setStaticBackground):
   53684 
   53685 2007-02-22  Zack Rusin  <zrusin (a] trolltech.com>
   53686 
   53687         Reviewed by Lars
   53688 
   53689         Properly implement canvas/scrollview's. Get
   53690         rid of ScrollViewCanvas and replace it with
   53691         a tailor abstractscrollview (now in qwebframe).
   53692         Scrolling of pages is finally completely smooth.
   53693 
   53694         * WebCore.pro:
   53695         * platform/ScrollView.h:
   53696         * platform/qt/ScrollViewCanvasQt.cpp: Removed.
   53697         * platform/qt/ScrollViewCanvasQt.h: Removed.
   53698         * platform/qt/ScrollViewQt.cpp:
   53699         (WebCore::ScrollView::ScrollView):
   53700         (WebCore::ScrollView::setScrollArea):
   53701         (WebCore::ScrollView::updateContents):
   53702         (WebCore::ScrollView::resizeContents):
   53703         (WebCore::ScrollView::contentsWidth):
   53704         (WebCore::ScrollView::contentsHeight):
   53705         (WebCore::ScrollView::contentsToWindow):
   53706         (WebCore::ScrollView::windowToContents):
   53707         (WebCore::ScrollView::addChild):
   53708         * platform/qt/WidgetQt.cpp:
   53709         (WebCore::WidgetPrivate::canvas):
   53710         (WebCore::WidgetPrivate::parentScroll):
   53711         (WebCore::WidgetPrivate::setGeometry):
   53712         (WebCore::WidgetPrivate::geometry):
   53713         (WebCore::Widget::frameGeometry):
   53714         (WebCore::Widget::setQWidget):
   53715         (WebCore::Widget::setFrameGeometry):
   53716 
   53717 2007-02-21  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   53718 
   53719         Reviewed by Adam Roben.
   53720 
   53721         Improve notImplemented() macro for gdk. Rename to notImplementedGdk() to
   53722         give it a unique name (so that it doesn't clash with notImplemented()
   53723         for other platforms).
   53724         Make it print a given warning only once, so that frequently called
   53725         functions don't clutter the output.
   53726         Don't print the warning if DISABLE_NI_WARNING env variable is set.
   53727 
   53728         * loader/gdk/FrameLoaderClientGdk.cpp:
   53729         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveAuthenticationChallenge):
   53730         (WebCore::FrameLoaderClientGdk::dispatchDidCancelAuthenticationChallenge):
   53731         (WebCore::FrameLoaderClientGdk::dispatchWillSendRequest):
   53732         (WebCore::FrameLoaderClientGdk::assignIdentifierToInitialRequest):
   53733         (WebCore::FrameLoaderClientGdk::createPlugin):
   53734         (WebCore::FrameLoaderClientGdk::createFrame):
   53735         (WebCore::FrameLoaderClientGdk::redirectDataToPlugin):
   53736         (WebCore::FrameLoaderClientGdk::createJavaAppletWidget):
   53737         (WebCore::FrameLoaderClientGdk::objectContentType):
   53738         (WebCore::FrameLoaderClientGdk::overrideMediaType):
   53739         (WebCore::FrameLoaderClientGdk::windowObjectCleared):
   53740         (WebCore::FrameLoaderClientGdk::hasWebView):
   53741         (WebCore::FrameLoaderClientGdk::hasFrameView):
   53742         (WebCore::FrameLoaderClientGdk::frameLoadCompleted):
   53743         (WebCore::FrameLoaderClientGdk::saveViewStateToItem):
   53744         (WebCore::FrameLoaderClientGdk::restoreViewState):
   53745         (WebCore::FrameLoaderClientGdk::privateBrowsingEnabled):
   53746         (WebCore::FrameLoaderClientGdk::makeDocumentView):
   53747         (WebCore::FrameLoaderClientGdk::makeRepresentation):
   53748         (WebCore::FrameLoaderClientGdk::forceLayout):
   53749         (WebCore::FrameLoaderClientGdk::forceLayoutForNonHTML):
   53750         (WebCore::FrameLoaderClientGdk::setCopiesOnScroll):
   53751         (WebCore::FrameLoaderClientGdk::detachedFromParent1):
   53752         (WebCore::FrameLoaderClientGdk::detachedFromParent2):
   53753         (WebCore::FrameLoaderClientGdk::detachedFromParent3):
   53754         (WebCore::FrameLoaderClientGdk::detachedFromParent4):
   53755         (WebCore::FrameLoaderClientGdk::loadedFromPageCache):
   53756         (WebCore::FrameLoaderClientGdk::dispatchDidHandleOnloadEvents):
   53757         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveServerRedirectForProvisionalLoad):
   53758         (WebCore::FrameLoaderClientGdk::dispatchDidCancelClientRedirect):
   53759         (WebCore::FrameLoaderClientGdk::dispatchWillPerformClientRedirect):
   53760         (WebCore::FrameLoaderClientGdk::dispatchDidChangeLocationWithinPage):
   53761         (WebCore::FrameLoaderClientGdk::dispatchWillClose):
   53762         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveIcon):
   53763         (WebCore::FrameLoaderClientGdk::dispatchDidStartProvisionalLoad):
   53764         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveTitle):
   53765         (WebCore::FrameLoaderClientGdk::dispatchDidCommitLoad):
   53766         (WebCore::FrameLoaderClientGdk::dispatchDidFinishDocumentLoad):
   53767         (WebCore::FrameLoaderClientGdk::dispatchDidFirstLayout):
   53768         (WebCore::FrameLoaderClientGdk::dispatchShow):
   53769         (WebCore::FrameLoaderClientGdk::cancelPolicyCheck):
   53770         (WebCore::FrameLoaderClientGdk::dispatchDidLoadMainResource):
   53771         (WebCore::FrameLoaderClientGdk::revertToProvisionalState):
   53772         (WebCore::FrameLoaderClientGdk::clearUnarchivingState):
   53773         (WebCore::FrameLoaderClientGdk::willChangeTitle):
   53774         (WebCore::FrameLoaderClientGdk::finishedLoading):
   53775         (WebCore::FrameLoaderClientGdk::finalSetupForReplace):
   53776         (WebCore::FrameLoaderClientGdk::setDefersLoading):
   53777         (WebCore::FrameLoaderClientGdk::isArchiveLoadPending):
   53778         (WebCore::FrameLoaderClientGdk::cancelPendingArchiveLoad):
   53779         (WebCore::FrameLoaderClientGdk::clearArchivedResources):
   53780         (WebCore::FrameLoaderClientGdk::canHandleRequest):
   53781         (WebCore::FrameLoaderClientGdk::canShowMIMEType):
   53782         (WebCore::FrameLoaderClientGdk::representationExistsForURLScheme):
   53783         (WebCore::FrameLoaderClientGdk::generatedMIMETypeForURLScheme):
   53784         (WebCore::FrameLoaderClientGdk::provisionalLoadStarted):
   53785         (WebCore::FrameLoaderClientGdk::didFinishLoad):
   53786         (WebCore::FrameLoaderClientGdk::prepareForDataSourceReplacement):
   53787         (WebCore::FrameLoaderClientGdk::setTitle):
   53788         (WebCore::FrameLoaderClientGdk::setDocumentViewFromPageCache):
   53789         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveContentLength):
   53790         (WebCore::FrameLoaderClientGdk::dispatchDidFinishLoading):
   53791         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoading):
   53792         (WebCore::FrameLoaderClientGdk::dispatchDidLoadResourceFromMemoryCache):
   53793         (WebCore::FrameLoaderClientGdk::dispatchDidFailProvisionalLoad):
   53794         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoad):
   53795         (WebCore::FrameLoaderClientGdk::download):
   53796         (WebCore::FrameLoaderClientGdk::cancelledError):
   53797         (WebCore::FrameLoaderClientGdk::cannotShowURLError):
   53798         (WebCore::FrameLoaderClientGdk::interruptForPolicyChangeError):
   53799         (WebCore::FrameLoaderClientGdk::cannotShowMIMETypeError):
   53800         (WebCore::FrameLoaderClientGdk::fileDoesNotExistError):
   53801         (WebCore::FrameLoaderClientGdk::shouldFallBack):
   53802         (WebCore::FrameLoaderClientGdk::willUseArchive):
   53803         (WebCore::FrameLoaderClientGdk::saveDocumentViewToPageCache):
   53804         (WebCore::FrameLoaderClientGdk::canCachePage):
   53805         (WebCore::FrameLoaderClientGdk::dispatchCreatePage):
   53806         (WebCore::FrameLoaderClientGdk::dispatchUnableToImplementPolicy):
   53807         (WebCore::FrameLoaderClientGdk::setMainDocumentError):
   53808         (WebCore::FrameLoaderClientGdk::startDownload):
   53809         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForStandardLoad):
   53810         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForReload):
   53811         (WebCore::FrameLoaderClientGdk::shouldGoToHistoryItem):
   53812         * page/gdk/EventHandlerGdk.cpp:
   53813         (WebCore::EventHandler::passMouseDownEventToWidget):
   53814         (WebCore::EventHandler::eventActivatedView):
   53815         (WebCore::EventHandler::passSubframeEventToSubframe):
   53816         (WebCore::EventHandler::passWheelEventToWidget):
   53817         (WebCore::EventHandler::createDraggingClipboard):
   53818         * platform/gdk/EditorClientGdk.cpp:
   53819         (WebCore::EditorClientGdk::shouldDeleteRange):
   53820         (WebCore::EditorClientGdk::isContinuousSpellCheckingEnabled):
   53821         (WebCore::EditorClientGdk::isGrammarCheckingEnabled):
   53822         (WebCore::EditorClientGdk::spellCheckerDocumentTag):
   53823         (WebCore::EditorClientGdk::shouldBeginEditing):
   53824         (WebCore::EditorClientGdk::shouldEndEditing):
   53825         (WebCore::EditorClientGdk::shouldInsertText):
   53826         (WebCore::EditorClientGdk::shouldChangeSelectedRange):
   53827         (WebCore::EditorClientGdk::shouldApplyStyle):
   53828         (WebCore::EditorClientGdk::didBeginEditing):
   53829         (WebCore::EditorClientGdk::respondToChangedContents):
   53830         (WebCore::EditorClientGdk::didEndEditing):
   53831         (WebCore::EditorClientGdk::didWriteSelectionToPasteboard):
   53832         (WebCore::EditorClientGdk::didSetSelectionTypesForPasteboard):
   53833         (WebCore::EditorClientGdk::selectWordBeforeMenuEvent):
   53834         (WebCore::EditorClientGdk::isEditable):
   53835         (WebCore::EditorClientGdk::registerCommandForUndo):
   53836         (WebCore::EditorClientGdk::registerCommandForRedo):
   53837         (WebCore::EditorClientGdk::clearUndoRedoOperations):
   53838         (WebCore::EditorClientGdk::canUndo):
   53839         (WebCore::EditorClientGdk::canRedo):
   53840         (WebCore::EditorClientGdk::undo):
   53841         (WebCore::EditorClientGdk::redo):
   53842         (WebCore::EditorClientGdk::shouldInsertNode):
   53843         (WebCore::EditorClientGdk::pageDestroyed):
   53844         (WebCore::EditorClientGdk::smartInsertDeleteEnabled):
   53845         (WebCore::EditorClientGdk::toggleContinuousSpellChecking):
   53846         (WebCore::EditorClientGdk::textFieldDidBeginEditing):
   53847         (WebCore::EditorClientGdk::textFieldDidEndEditing):
   53848         (WebCore::EditorClientGdk::textDidChangeInTextField):
   53849         (WebCore::EditorClientGdk::doTextFieldCommandFromEvent):
   53850         (WebCore::EditorClientGdk::textWillBeDeletedInTextField):
   53851         (WebCore::EditorClientGdk::textDidChangeInTextArea):
   53852         * platform/gdk/RenderThemeGdk.cpp:
   53853         (WebCore::RenderThemeGdk::setCheckboxSize):
   53854         (WebCore::RenderThemeGdk::setRadioSize):
   53855         (WebCore::RenderThemeGdk::adjustTextFieldStyle):
   53856         * platform/gdk/TemporaryLinkStubs.cpp:
   53857         (FrameView::updateBorder):
   53858         (Widget::setEnabled):
   53859         (Widget::isEnabled):
   53860         (Widget::focusPolicy):
   53861         (Widget::enableFlushDrawing):
   53862         (Widget::disableFlushDrawing):
   53863         (Widget::lockDrawingFocus):
   53864         (Widget::unlockDrawingFocus):
   53865         (Widget::removeFromParent):
   53866         (Widget::paint):
   53867         (Widget::setIsSelected):
   53868         (Widget::invalidate):
   53869         (Widget::invalidateRect):
   53870         (PlatformMouseEvent::PlatformMouseEvent):
   53871         (WebCore::findNextSentenceFromIndex):
   53872         (WebCore::findSentenceBoundary):
   53873         (WebCore::findNextWordFromIndex):
   53874         (ChromeClientGdk::chromeDestroyed):
   53875         (ChromeClientGdk::windowRect):
   53876         (ChromeClientGdk::setWindowRect):
   53877         (ChromeClientGdk::pageRect):
   53878         (ChromeClientGdk::scaleFactor):
   53879         (ChromeClientGdk::focus):
   53880         (ChromeClientGdk::unfocus):
   53881         (ChromeClientGdk::createWindow):
   53882         (ChromeClientGdk::createModalDialog):
   53883         (ChromeClientGdk::show):
   53884         (ChromeClientGdk::canRunModal):
   53885         (ChromeClientGdk::runModal):
   53886         (ChromeClientGdk::setToolbarsVisible):
   53887         (ChromeClientGdk::toolbarsVisible):
   53888         (ChromeClientGdk::setStatusbarVisible):
   53889         (ChromeClientGdk::statusbarVisible):
   53890         (ChromeClientGdk::setScrollbarsVisible):
   53891         (ChromeClientGdk::scrollbarsVisible):
   53892         (ChromeClientGdk::setMenubarVisible):
   53893         (ChromeClientGdk::menubarVisible):
   53894         (ChromeClientGdk::setResizable):
   53895         (ChromeClientGdk::closeWindowSoon):
   53896         (ChromeClientGdk::canTakeFocus):
   53897         (ChromeClientGdk::takeFocus):
   53898         (ChromeClientGdk::canRunBeforeUnloadConfirmPanel):
   53899         (ChromeClientGdk::addMessageToConsole):
   53900         (ChromeClientGdk::runBeforeUnloadConfirmPanel):
   53901         (ChromeClientGdk::runJavaScriptAlert):
   53902         (ChromeClientGdk::runJavaScriptConfirm):
   53903         (ChromeClientGdk::runJavaScriptPrompt):
   53904         (ChromeClientGdk::setStatusbarText):
   53905         (ChromeClientGdk::shouldInterruptJavaScript):
   53906         (ChromeClientGdk::tabsToLinks):
   53907         (ChromeClientGdk::windowResizerRect):
   53908         (ChromeClientGdk::addToDirtyRegion):
   53909         (ChromeClientGdk::scrollBackingStore):
   53910         (ChromeClientGdk::updateBackingStore):
   53911         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
   53912         (PlugInInfoStore::pluginCount):
   53913         (WebCore::PlugInInfoStore::supportsMIMEType):
   53914         (WebCore::refreshPlugins):
   53915         (SearchPopupMenu::saveRecentSearches):
   53916         (SearchPopupMenu::loadRecentSearches):
   53917         (SearchPopupMenu::SearchPopupMenu):
   53918         (PlatformScrollbar::PlatformScrollbar):
   53919         (PlatformScrollbar::~PlatformScrollbar):
   53920         (PlatformScrollbar::setEnabled):
   53921         (PlatformScrollbar::paint):
   53922         (PlatformScrollbar::updateThumbPosition):
   53923         (PlatformScrollbar::updateThumbProportion):
   53924         (PlatformScrollbar::setRect):
   53925         (FileChooser::FileChooser):
   53926         (FileChooser::~FileChooser):
   53927         (FileChooser::openFileChooser):
   53928         (FileChooser::basenameForWidth):
   53929         (ResourceHandle::willLoadFromCache):
   53930         (ResourceHandle::loadsBlocked):
   53931         (ResourceHandle::loadResourceSynchronously):
   53932         (Icon::Icon):
   53933         (Icon::~Icon):
   53934         (Icon::newIconForFile):
   53935         (Icon::paint):
   53936         (Font::drawComplexText):
   53937         (Font::floatWidthForComplexText):
   53938         (Font::offsetForPositionForComplexText):
   53939         (PageCache::close):
   53940         (Editor::ignoreSpelling):
   53941         (Editor::learnSpelling):
   53942         (Editor::isSelectionUngrammatical):
   53943         (Editor::isSelectionMisspelled):
   53944         (Editor::guessesForMisspelledSelection):
   53945         (Editor::guessesForUngrammaticalSelection):
   53946         (Editor::markMisspellingsAfterTypingToPosition):
   53947         (Editor::newGeneralClipboard):
   53948         (Pasteboard::generalPasteboard):
   53949         (Pasteboard::writeSelection):
   53950         (Pasteboard::writeURL):
   53951         (Pasteboard::writeImage):
   53952         (Pasteboard::clear):
   53953         (Pasteboard::canSmartReplace):
   53954         (Pasteboard::documentFragment):
   53955         (Pasteboard::plainText):
   53956         (Pasteboard::Pasteboard):
   53957         (Pasteboard::~Pasteboard):
   53958         (ContextMenu::ContextMenu):
   53959         (ContextMenu::~ContextMenu):
   53960         (ContextMenu::appendItem):
   53961         (ContextMenuItem::ContextMenuItem):
   53962         (ContextMenuItem::~ContextMenuItem):
   53963         (ContextMenuItem::releasePlatformDescription):
   53964         (ContextMenuItem::type):
   53965         (ContextMenuItem::setType):
   53966         (ContextMenuItem::action):
   53967         (ContextMenuItem::setAction):
   53968         (ContextMenuItem::title):
   53969         (ContextMenuItem::setTitle):
   53970         (ContextMenuItem::platformSubMenu):
   53971         (ContextMenuItem::setSubMenu):
   53972         (ContextMenuItem::setChecked):
   53973         (ContextMenuItem::setEnabled):
   53974         (WebCore::supportedKeySizes):
   53975         (WebCore::systemBeep):
   53976         (WebCore::userIdleTime):
   53977 
   53978 2007-02-21  Antti Koivisto  <antti (a] apple.com>
   53979 
   53980         Reviewed by Hyatt.
   53981 
   53982         - fix http://bugs.webkit.org/show_bug.cgi?id=12820
   53983         REGRESSION (r19706): Caret not painted after popup, failing editing/pasteboard/4641033
   53984 
   53985         Yet another attempt to figure out exactly who should paint the caret.
   53986 
   53987         * editing/SelectionController.cpp:
   53988         (WebCore::SelectionController::isInsideNode):
   53989         * editing/SelectionController.h:
   53990         * rendering/RenderBlock.cpp:
   53991         (WebCore::RenderBlock::paintCaret):
   53992 
   53993 2007-02-21  Mitz Pettel  <mitz (a] webkit.org>
   53994 
   53995         Reviewed by Hyatt.
   53996 
   53997         - fix http://bugs.webkit.org/show_bug.cgi?id=12818
   53998           REGRESSION (r19148): shacknews.com does not render completely
   53999 
   54000         Test: fast/dynamic/staticY-marking-parents-regression.html
   54001 
   54002         Changed calls to setChildNeedsLayout(true) during layout to
   54003         setChildNeedsLayout(true, false). Prior to r19148, the default behavior
   54004         of marking containers did not matter because the caller was the container
   54005         and was already marked, but r19148 added marking of the parent of
   54006         objects with static Y, which can be different from the caller and not
   54007         necessarily marked already.
   54008 
   54009         * rendering/RenderBlock.cpp:
   54010         (WebCore::RenderBlock::collapseMargins):
   54011         (WebCore::RenderBlock::clearFloatsIfNeeded):
   54012         (WebCore::RenderBlock::layoutBlockChildren):
   54013         * rendering/RenderBox.cpp:
   54014         (WebCore::RenderBox::setStaticY):
   54015         * rendering/RenderFlexibleBox.cpp:
   54016         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   54017 
   54018 2007-02-21  Brady Eidson  <beidson (a] apple.com>
   54019 
   54020         Reviewed by Dave Harrison
   54021 
   54022         <rdar://problem/5014313> - Crash in FrameLoader::restoreScrollPositionAndViewState() 
   54023         after regaining network connection
   54024 
   54025         * loader/FrameLoader.cpp:
   54026         (WebCore::FrameLoader::restoreScrollPositionAndViewState):  Leave an assertion for debug
   54027         build exploration, but gracefully handle the release build case
   54028 
   54029 2007-02-21  Timothy Hatcher  <timothy (a] apple.com>
   54030 
   54031         Rubber-stamped by Darin.
   54032 
   54033         * bindings/objc/PublicDOMInterfaces.h: Add missing classes that are really public.
   54034         Also adds the deprecated selector for getComputedStyle: on DOMDocument.
   54035 
   54036 2007-02-21  Justin Garcia  <justin.garcia (a] apple.com>
   54037 
   54038         Reviewed by john
   54039         
   54040         <rdar://problem/5012665>
   54041         Removing indent from list moves the caret to the line below
   54042 
   54043         Selection preservation during indent, outdent and list 
   54044         operations uses rangeFromLocationAndLength.  Ranges returned 
   54045         by rangeFromLocationAndLength were incorrect for locations 
   54046         just before the line breaks that are emitted after blocks.  
   54047         This is because TextIterator emitted bad ranges for these line 
   54048         breaks (ranges that started and ended *after* the block).  
   54049         The fix corrects the start but not the end.  This is acceptible 
   54050         because there is code in rangeFromLocationAndLength that corrects 
   54051         the ends of runs using the start of the run and VisiblePosition 
   54052         creation.
   54053         
   54054         * editing/TextIterator.cpp:
   54055         (WebCore::TextIterator::exitNode): Emit a position *inside* 
   54056         the block, after its contents.
   54057 
   54058 2007-02-21  Adele Peterson  <adele (a] apple.com>
   54059 
   54060         Reviewed by Darin.
   54061 
   54062         Fix for <rdar://problem/4999030> Indexing into select element to get to items in the options collection is broken
   54063 
   54064         Test: fast/forms/select-index-setter.html
   54065 
   54066         Added indexSetter for HTMLSelectElement.
   54067 
   54068         * WebCore.xcodeproj/project.pbxproj: Added JSHTMLSelectElementCustom.h
   54069 
   54070         * bindings/js/JSHTMLOptionsCollectionCustom.cpp: (WebCore::JSHTMLOptionsCollection::indexSetter):
   54071           Moved code to selectIndexSetter so it can be shared between these classes.
   54072         * bindings/js/JSHTMLSelectElementCustom.cpp:
   54073         (WebCore::selectIndexSetter): Added.  Moved from JSHTMLOptionsCollection::indexSetter.
   54074         (WebCore::JSHTMLSelectElement::indexSetter): Calls selectIndexSetter.
   54075         * bindings/js/JSHTMLSelectElementCustom.h: Added.
   54076         * html/HTMLSelectElement.idl: Added HasCustomIndexSetter keyword.
   54077 
   54078         * bindings/scripts/CodeGeneratorJS.pm: When generating "put" methods, if the propertyName is a number, call the indexSetter first,
   54079           and then call the version of lookupPut that will also try to use the parent's lookup table.  This matches the order of our
   54080           old code, before we autogenerated the JSHTMLSelectElement class.
   54081 
   54082 2007-02-21  George Staikos  <staikos (a] kde.org>
   54083 
   54084         Reviewed by Zack.
   54085 
   54086         Add files to the build.
   54087 
   54088         * WebCore.pro:
   54089 
   54090 2007-02-21  Zack Rusin  <zrusin (a] trolltech.com>
   54091 
   54092         Reviewed by Lars
   54093 
   54094         Implementing popups for the Qt platform.
   54095 
   54096         * WebCore.pro:
   54097         * platform/PopupMenu.h:
   54098         * platform/Widget.h:
   54099         * platform/qt/PopupMenuQt.cpp:
   54100         (WebCore::PopupMenu::PopupMenu):
   54101         (WebCore::PopupMenu::clear):
   54102         (WebCore::PopupMenu::populate):
   54103         (WebCore::PopupMenu::show):
   54104         (WebCore::PopupMenu::hide):
   54105         * platform/qt/QWebPopup.cpp: Added.
   54106         (WebCore::QWebPopup::QWebPopup):
   54107         (WebCore::QWebPopup::exec):
   54108         (WebCore::QWebPopup::hideEvent):
   54109         (WebCore::QWebPopup::activeChanged):
   54110         * platform/qt/QWebPopup.h: Added.
   54111         * platform/qt/WidgetQt.cpp:
   54112         (WebCore::Widget::canvas):
   54113 
   54114 2007-02-21  George Staikos  <staikos (a] kde.org>
   54115 
   54116         Reviewed by Zack.
   54117 
   54118         Remove unneeded hack now.
   54119 
   54120         * platform/qt/RenderThemeQt.cpp:
   54121         (WebCore::RenderThemeQt::setCheckboxSize):
   54122 
   54123 2007-02-21  Zack Rusin  <zrusin (a] trolltech.com>
   54124 
   54125         Reviewed by Lars
   54126 
   54127         Fix rendering of lineedits and remove the spurious
   54128         padding on push-buttons.
   54129 
   54130         * platform/qt/RenderThemeQt.cpp:
   54131         (WebCore::RenderThemeQt::baselinePosition):
   54132         (WebCore::RenderThemeQt::adjustTextFieldStyle):
   54133         (WebCore::RenderThemeQt::sizeForFont):
   54134         (WebCore::RenderThemeQt::setButtonPadding):
   54135 
   54136 2007-02-21  Zack Rusin  <zrusin (a] trolltech.com>
   54137 
   54138         Fix compilation.
   54139 
   54140         * platform/qt/PasteboardQt.cpp:
   54141         (WebCore::Pasteboard::writeURL):
   54142         (WebCore::Pasteboard::writeImage):
   54143 
   54144 2007-02-20  Adam Roben  <aroben (a] apple.com>
   54145 
   54146         Preemptive build fix.
   54147 
   54148         * platform/mac/FontCacheMac.mm: Remove unused (and non-existent) header.
   54149 
   54150 2007-02-20  Adam Roben  <aroben (a] apple.com>
   54151 
   54152         Fix the build the right way.
   54153 
   54154         * platform/StringTruncator.cpp:
   54155         (WebCore::truncateString): Keep all widths as floats.
   54156 
   54157 2007-02-20  Beth Dakin  <bdakin (a] apple.com>
   54158 
   54159         Reviewed by Maciej.
   54160 
   54161         Implement writeImage() on Pasteboard so that the context menus can 
   54162         call into the editor for the "Copy image" command instead of 
   54163         calling across the clients.
   54164 
   54165         * WebCore.exp:
   54166         * WebCore.xcodeproj/project.pbxproj:
   54167         * editing/Editor.cpp:
   54168         (WebCore::Editor::copyImage): Call into the Pasteboard.
   54169         * editing/Editor.h:
   54170         * loader/mac/LoaderNSURLExtras.h: A new NSURL extra needed inside 
   54171         WebCore.
   54172         * loader/mac/LoaderNSURLExtras.m: Made this file Objective-C++ 
   54173         (from Objective-C) since the call into the MIMETypeRegistry will 
   54174         return a Vector.
   54175         (urlByRemovingComponent): Cast to build as Obj-C++
   54176         (urlWithDataRelativeToURL): Same.
   54177         (vectorContainsString): Helper.
   54178         (suggestedFilenameWithMIMEType): New function.
   54179         * page/ContextMenuClient.h: Remove copyImageToClipboard()
   54180         * page/ContextMenuController.cpp:
   54181         (WebCore::ContextMenuController::contextMenuItemSelected): Call 
   54182         into the editor instead of the client.
   54183         * page/mac/WebCoreViewFactory.h: New localized String.
   54184         * platform/LocalizedStrings.h: Same.
   54185         * platform/MimeTypeRegistry.h: Expose two additional functions for 
   54186         MIMEType information from WebCore System Interface.
   54187         * platform/Pasteboard.h:
   54188         * platform/SharedBuffer.h: Make platformData() and platformDataSize
   54189         () public since they are needed to write the image to the 
   54190         pasteboard.
   54191         * platform/mac/LocalizedStringsMac.mm: New localized string.
   54192         (WebCore::copyImageUnknownFileLabel):
   54193         * platform/mac/MimeTypeRegistryMac.mm:
   54194         (WebCore::MimeTypeRegistry::getExtensionsForMIMEType):
   54195         (WebCore::MimeTypeRegistry::getPreferredExtensionForMIMEType):
   54196         * platform/mac/PasteboardMac.mm:
   54197         (WebCore::writableTypesForImage):
   54198         (WebCore::Pasteboard::writeURL): Write the correct types if the url 
   54199         is for an image.
   54200         (WebCore::fileWrapperForImage):
   54201         (WebCore::Pasteboard::writeFileWrapperAsRTFDAttachment):
   54202         (WebCore::Pasteboard::writeImage):
   54203         * platform/mac/WebCoreNSStringExtras.h: Added. Some the the 
   54204         NSStringExtras that were in WebKit are now needed by WebCore. To 
   54205         avoid having two copies of these functions, I just moved the 
   54206         implementations to WebCore. The WebKit functions just call into 
   54207         WebCore.
   54208         * platform/mac/WebCoreNSStringExtras.mm: Added.
   54209         (hasCaseInsensitiveSuffix):
   54210         (hasCaseInsensitiveSubstring):
   54211         (filenameByFixingIllegalCharacters):
   54212         * platform/mac/WebCoreSystemInterface.h: 
   54213         wkGetPreferredExtensionForMIMEType and wkGetExtensionsForMIMEType 
   54214         are now needed in WebCore as well as WebKit.
   54215         * platform/mac/WebCoreSystemInterface.mm:
   54216 
   54217 2007-02-20  Adam Roben  <aroben (a] apple.com>
   54218 
   54219         Build fix.
   54220 
   54221         * platform/StringTruncator.cpp:
   54222         (WebCore::truncateString): Added explicit casts.
   54223 
   54224 2007-02-20  Adam Roben  <aroben (a] apple.com>
   54225 
   54226         Reviewed by Darin and Anders.
   54227 
   54228         Fix <rdar://problem/4736215> Make WebCoreStringTruncator use WebCore types
   54229 
   54230         * WebCore.exp: Updated symbols.
   54231         * WebCore.xcodeproj/project.pbxproj: Updated file names.
   54232         * bridge/mac/WebCoreStringTruncator.h: Removed.
   54233         * bridge/mac/WebCoreStringTruncator.mm: Removed.
   54234         * platform/StringTruncator.cpp: Added. Moved from bridge/mac/WebCoreStringTruncator.mm.
   54235         (WebCore::textBreakAtOrPreceding): Added.
   54236         (WebCore::boundedTextBreakFollowing): Added.
   54237         (WebCore::centerTruncateToBuffer):
   54238         (WebCore::rightTruncateToBuffer):
   54239         (WebCore::stringWidth): Now takes a const Font& instead of a Font*.
   54240         (WebCore::truncateString):
   54241         (WebCore::StringTruncator::centerTruncate):
   54242         (WebCore::StringTruncator::rightTruncate):
   54243         (WebCore::StringTruncator::width):
   54244         * platform/StringTruncator.h: Added.
   54245         * platform/TextBreakIterator.h: Added isTextBreak declaration.
   54246         * platform/TextBreakIteratorICU.cpp:
   54247         (WebCore::isTextBreak): Implemented.
   54248         * platform/mac/FileChooserMac.mm:
   54249         (WebCore::FileChooser::basenameForWidth): Updated for changes to WebCoreStringTruncator.
   54250         * platform/qt/TextBreakIteratorQt.cpp:
   54251         (WebCore::isTextBreak): Stubbed out.
   54252 
   54253 2007-02-20  Justin Garcia  <justin.garcia (a] apple.com>
   54254 
   54255         Reviewed by harrison
   54256 
   54257         <rdar://problem/5006779>
   54258         REGRESSION: Paste and Match Style of quoted text onto empty line yields quoted text
   54259         
   54260         We decided to change the copy/paste behavior in both
   54261         the Paste and the Paste and Match Style cases.
   54262 
   54263         * editing/markup.cpp:
   54264         (WebCore::createMarkup): Don't add mail blockquote wrappers
   54265         unless the user selected one or more paragraphs.
   54266 
   54267 2007-02-20  Timothy Hatcher  <timothy (a] apple.com>
   54268 
   54269         Reviewed by Mark Rowe.
   54270 
   54271         <rdar://problem/4912899> WebCore project ObjC @property cleanup
   54272 
   54273         * bindings/objc/DOMObject.h: Add the new style @property
   54274         * bindings/objc/PublicDOMInterfaces.h: Update to the new style @property
   54275         * bindings/scripts/CodeGeneratorObjC.pm: Export both new and old style @properties
   54276 
   54277 2007-02-20  Timothy Hatcher  <timothy (a] apple.com>
   54278 
   54279         Reviewed by Sam Weinig.
   54280 
   54281         <rdar://problem/5007248> need to export symbols for DOM exception constants
   54282 
   54283         * WebCore.exp: Adds DOMEventException, DOMException, DOMRangeException, DOMXPathException
   54284 
   54285 2007-02-20  Timothy Hatcher  <timothy (a] apple.com>
   54286 
   54287         Reviewed by Darin.
   54288 
   54289         <rdar://problem/4900579> WebKit -finalize methods are not thread-safe; design change needed
   54290 
   54291         Call WebCoreObjCFinalizeOnMainThread from the initialize method of all the classes
   54292         that have a finalizer that needs called on the main thread.
   54293 
   54294         * WebCore.exp:
   54295         * WebCore.xcodeproj/project.pbxproj:
   54296         * bindings/objc/WebScriptObject.mm:
   54297         (+[WebScriptObject initialize]):
   54298         * bridge/mac/WebCoreScriptDebugger.mm:
   54299         (+[WebCoreScriptDebugger initialize]):
   54300         * platform/mac/SharedBufferMac.mm:
   54301         (+[SharedBufferData initialize]):
   54302         * platform/mac/WebCoreObjCExtras.c: Added.
   54303         (WebCoreObjCFinalizeOnMainThread):
   54304         * platform/mac/WebCoreObjCExtras.h: Added.
   54305 
   54306 2007-02-20  Geoffrey Garen  <ggaren (a] apple.com>
   54307 
   54308         Not not reviewed by Mitz Pettel.
   54309 
   54310         Fixed http://bugs.webkit.org/show_bug.cgi?id=12827 | <rdar://problem/5006671> 
   54311         REGRESSION: -[DOMCSSStyleDeclaration setValue:forKey:] doesn't have an 
   54312         immediate effect
   54313         
   54314         Let's just pretend this never happened.
   54315         
   54316         I attempted a layout test but I couldn't get the old code to fail because 
   54317         there's no obvious way to isolate the ObjC bindings in a test that's 
   54318         controlled by JS.
   54319         
   54320         * bindings/objc/WebScriptObject.mm:
   54321         (_didExecute):
   54322 
   54323 2007-02-20  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   54324 
   54325         Reviewed by Maciej S.
   54326 
   54327         Gdk build fixes for recent refactorings.
   54328 
   54329         * Projects/gdk/webcore-gdk.bkl:
   54330         * WebCoreSources.bkl:
   54331         * page/gdk/DragControllerGdk.cpp:
   54332         (WebCore::DragController::dragOperation):
   54333         (WebCore::DragController::maxDragImageSize):
   54334         * page/gdk/EventHandlerGdk.cpp:
   54335         (WebCore::EventHandler::createDraggingClipboard):
   54336         * platform/DragImage.h:
   54337         * platform/gdk/ChromeClientGdk.h:
   54338         * platform/gdk/CursorGdk.cpp:
   54339         (WebCore::verticalTextCursor):
   54340         (WebCore::cellCursor):
   54341         (WebCore::contextMenuCursor):
   54342         (WebCore::noDropCursor):
   54343         (WebCore::copyCursor):
   54344         (WebCore::progressCursor):
   54345         (WebCore::aliasCursor):
   54346         (WebCore::noneCursor):
   54347         (WebCore::notAllowedCursor):
   54348         * platform/gdk/EditorClientGdk.cpp:
   54349         (WebCore::EditorClientGdk::shouldChangeSelectedRange):
   54350         (WebCore::EditorClientGdk::isEditable):
   54351         (WebCore::EditorClientGdk::textFieldDidBeginEditing):
   54352         (WebCore::EditorClientGdk::textFieldDidEndEditing):
   54353         (WebCore::EditorClientGdk::textDidChangeInTextField):
   54354         (WebCore::EditorClientGdk::doTextFieldCommandFromEvent):
   54355         (WebCore::EditorClientGdk::textWillBeDeletedInTextField):
   54356         (WebCore::EditorClientGdk::textDidChangeInTextArea):
   54357         * platform/gdk/EditorClientGdk.h:
   54358         * platform/gdk/FrameGdk.cpp:
   54359         (WebCore::Frame::print):
   54360         (WebCore::Frame::issueTransposeCommand):
   54361         (WebCore::Frame::respondToChangedSelection):
   54362         (WebCore::Frame::cleanupPlatformScriptObjects):
   54363         (WebCore::Frame::isCharacterSmartReplaceExempt):
   54364         (WebCore::Frame::dragImageForSelection):
   54365         * platform/gdk/FrameGdk.h:
   54366         * platform/gdk/MimeTypeRegistryGdk.cpp: Added.
   54367         * platform/gdk/TemporaryLinkStubs.cpp:
   54368         (ChromeClientGdk::tabsToLinks):
   54369         (ChromeClientGdk::windowResizerRect):
   54370         (ChromeClientGdk::addToDirtyRegion):
   54371         (ChromeClientGdk::scrollBackingStore):
   54372         (ChromeClientGdk::updateBackingStore):
   54373         * webcore-base.bkl:
   54374 
   54375 2007-02-20  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   54376 
   54377         Reviewed by Darin.
   54378 
   54379         Allow over-writting Product, ProductSub, Vendor and VendorSub
   54380         js properties via #define WEBCORE_NAVIGATOR_*
   54381 
   54382         * bindings/js/kjs_navigator.cpp:
   54383         (KJS::Navigator::getValueProperty):
   54384 
   54385 2007-02-20  Darin Adler  <darin (a] apple.com>
   54386 
   54387         Reviewed by Anders.
   54388 
   54389         - prepare to fix some "stop loading" bugs by moving state from the
   54390           FrameLoader class to the DocumentLoader class
   54391 
   54392         * WebCore.exp: Update since cancelMainResourceLoad is now on the document loader.
   54393 
   54394         * html/HTMLDocument.h:
   54395         * html/HTMLDocument.cpp:
   54396         (WebCore::HTMLDocument::HTMLDocument): Removed unused bodyElement and htmlElement
   54397         data members.
   54398         (WebCore::HTMLDocument::lastModified): Call getResponseModifiedHeader directly on
   54399         the document loader.
   54400 
   54401         * loader/DocumentLoader.h: Moved m_mainResourceLoader, m_subresourceLoaders, and
   54402         m_plugInStreamLoaders here.
   54403         * loader/DocumentLoader.cpp:
   54404         (WebCore::cancelAll): Moved here from FrameLoader.
   54405         (WebCore::setAllDefersLoading): Ditto.
   54406         (WebCore::DocumentLoader::mainResourceData): Moved the body of FrameLoader's
   54407         mainResourceData function here.
   54408         (WebCore::DocumentLoader::stopLoading): Replaced calls to hasMainResourceLoader
   54409         and cancelMainResourceLoad with code that works directly on m_mainResourceLoader.
   54410         Call the stop functions moved from FrameLoader here on ourselves.
   54411         (WebCore::DocumentLoader::setupForReplaceByMIMEType): Ditto.
   54412         (WebCore::DocumentLoader::setPrimaryLoadComplete): Moved the code to store the
   54413         main resource data here; it doesn't require separate functions.
   54414         (WebCore::DocumentLoader::isLoadingInAPISense): Removed call to isLoadingSubresources
   54415         and instead just check if the m_subresourceLoaders set is empty.
   54416         (WebCore::DocumentLoader::setDefersLoading): Moved code here from FrameLoader.
   54417         (WebCore::DocumentLoader::stopLoadingPlugIns): Ditto.
   54418         (WebCore::DocumentLoader::stopLoadingSubresources): Ditto.
   54419         (WebCore::DocumentLoader::addSubresourceLoader): Ditto.
   54420         (WebCore::DocumentLoader::removeSubresourceLoader): Ditto.
   54421         (WebCore::DocumentLoader::addPlugInStreamLoader): Ditto.
   54422         (WebCore::DocumentLoader::removePlugInStreamLoader): Ditto.
   54423         (WebCore::DocumentLoader::isLoadingSubresources): Ditto.
   54424         (WebCore::DocumentLoader::isLoadingPlugIns): Ditto.
   54425         (WebCore::DocumentLoader::startLoadingMainResource): Ditto.
   54426         (WebCore::DocumentLoader::cancelMainResourceLoad): Ditto.
   54427 
   54428         * loader/FrameLoader.h: Removed stopLoadingPlugIns, stopLoadingSubresources,
   54429         cancelMainResourceLoad, hasMainResourceLoader, isLoadingSubresources,
   54430         mainResourceData, releaseMainResourceLoader, lastModified, startLoadingMainResource,
   54431         isLoadingPlugIns, m_mainResourceLoader, m_subresourceLoaders, m_plugInStreamLoaders,
   54432         m_responseRefreshHeader, and m_responseModifiedHeader.
   54433         * loader/FrameLoader.cpp:
   54434         (WebCore::FrameLoader::setDefersLoading): Call setDefersLoading on all the document
   54435         loaders.
   54436         (WebCore::FrameLoader::stopLoading): Get rid of code to set m_responseRefreshHeader
   54437         and m_responseModifiedHeader.
   54438         (WebCore::FrameLoader::receivedFirstData): Call httpHeaderField on the response
   54439         here to get the Refresh, instead of storing it in a data member.
   54440         (WebCore::FrameLoader::addPlugInStreamLoader): Change to just call this on the
   54441         document loader.
   54442         (WebCore::FrameLoader::removePlugInStreamLoader): Ditto.
   54443         (WebCore::FrameLoader::isLoading): Change to call isLoadingSubresources and
   54444         isLoadingPlugIns on the document loader.
   54445         (WebCore::FrameLoader::addSubresourceLoader): Change to just call this on the
   54446         document loader.
   54447         (WebCore::FrameLoader::removeSubresourceLoader): Ditto.
   54448         (WebCore::FrameLoader::commitProvisionalLoad): Call stopLoadingSubresources and
   54449         stopLoadingPlugIns on the document loader. Removed code to set
   54450         m_responseModifiedHeader.
   54451         (WebCore::FrameLoader::startLoading): Call isLoadingMainResource and
   54452         startLoadingMainResource on the document loader.
   54453 
   54454         * loader/ImageDocument.cpp: (WebCore::ImageTokenizer::finish): Call
   54455         mainResourceData() on the document loader instead of the frame loader.
   54456 
   54457         - other changes
   54458 
   54459         * loader/DocLoader.cpp:
   54460         (WebCore::DocLoader::checkCacheObjectStatus): Fixed indentation.
   54461 
   54462 2007-02-20  Zack Rusin  <zrusin (a] trolltech.com>
   54463 
   54464         Reviewed by Lars
   54465 
   54466         Fix focus handling and make the forms
   54467         work as expected.
   54468 
   54469         * platform/qt/ScrollViewQt.cpp:
   54470         (WebCore::ScrollView::setScrollArea):
   54471         * platform/qt/WidgetQt.cpp:
   54472         (WebCore::WidgetPrivate::WidgetPrivate):
   54473         (WebCore::WidgetPrivate::canvas):
   54474         (WebCore::Widget::hasFocus):
   54475         (WebCore::Widget::setFocus):
   54476         (WebCore::Widget::clearFocus):
   54477         (WebCore::Widget::setFont):
   54478         (WebCore::Widget::setQWidget):
   54479         (WebCore::Widget::focusPolicy):
   54480 
   54481 2007-02-20  Mitz Pettel  <mitz (a] webkit.org>
   54482 
   54483         Reviewed by Darin and then Sam.
   54484 
   54485         - fix http://bugs.webkit.org/show_bug.cgi?id=10735
   54486           Clicking in SVG results causes WebKit to consume 100% CPU for several minutes
   54487 
   54488         No test since there is no change in functionality.
   54489 
   54490         * CMakeLists.txt:
   54491         * WebCore.pro:
   54492         * WebCore.xcodeproj/project.pbxproj: Added PositionIterator.{cpp,h}.
   54493         * WebCoreSources.bkl:
   54494         * dom/Position.cpp:
   54495         (WebCore::Position::Position): Added converting constructor from
   54496         PositionIterator.
   54497         (WebCore::Position::previous): Changed assert() to ASSERT().
   54498         (WebCore::Position::next): Ditto.
   54499         (WebCore::isStreamer): Changed the argument to a PositionIterator.
   54500         (WebCore::Position::upstream): Changed to use PositionIterator.
   54501         (WebCore::Position::downstream): Ditto.
   54502         (WebCore::Position::inRenderedText): Made public.
   54503         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight): Changed
   54504         into a static member function.
   54505         (WebCore::Position::nodeIsUserSelectNone): Ditto.
   54506         * dom/Position.h:
   54507         * dom/PositionIterator.cpp: Added. A Position iterator with constant-time
   54508         increment, decrement, and several predicates on the Position it is at.
   54509         Conversion to/from Position is O(n) in the offset.
   54510         (WebCore::PositionIterator::increment):
   54511         (WebCore::PositionIterator::decrement):
   54512         (WebCore::PositionIterator::atStart):
   54513         (WebCore::PositionIterator::atEnd):
   54514         (WebCore::PositionIterator::atStartOfNode):
   54515         (WebCore::PositionIterator::atEndOfNode):
   54516         (WebCore::PositionIterator::isCandidate):
   54517         * dom/PositionIterator.h: Added.
   54518         (WebCore::PositionIterator::PositionIterator):
   54519         (WebCore::PositionIterator::node):
   54520         (WebCore::PositionIterator::offsetInLeafNode):
   54521         * editing/htmlediting.cpp:
   54522         (WebCore::nextCandidate): Changed to use PositionIterator.
   54523         (WebCore::previousCandidate): Changed to use PositionIterator.
   54524 
   54525 2007-02-20  Rob Buis  <buis (a] kde.org>
   54526 
   54527         Reviewed by Darin.
   54528 
   54529         http://bugs.webkit.org/show_bug.cgi?id=12439
   54530         SVG parser complains about points attribute in polygon and polyline element
   54531 
   54532         Return true when the parsed points specification is valid.
   54533 
   54534         * ksvg2/svg/SVGParserUtilities.cpp:
   54535         (WebCore::parseNumber):
   54536         (WebCore::SVGPolyParser::parsePoints):
   54537         * ksvg2/svg/SVGPolyElement.cpp:
   54538         (WebCore::SVGPolyElement::parseMappedAttribute):
   54539 
   54540 2007-02-20  Zack Rusin  <zrusin (a] trolltech.com>
   54541 
   54542         Reviewed by Lars
   54543 
   54544         Make editing of forms work plus make sure that non-void methods
   54545         always return something.
   54546 
   54547         * WebCore.pro:
   54548         * loader/qt/DocumentLoaderQt.cpp:
   54549         (WebCore::DocumentLoader::getResponseModifiedHeader):
   54550         * platform/qt/ClipboardQt.cpp:
   54551         (WebCore::ClipboardQt::setData):
   54552 
   54553 2007-02-20  Zack Rusin  <zrusin (a] trolltech.com>
   54554 
   54555         Reviewed by Lars
   54556 
   54557         Refactor and fix the implementation of theming of
   54558         form elements on the Qt platform.
   54559 
   54560         * platform/qt/RenderThemeQt.cpp:
   54561         (WebCore::theme):
   54562         (WebCore::RenderThemeQt::RenderThemeQt):
   54563         (WebCore::RenderThemeQt::supportsHover):
   54564         (WebCore::RenderThemeQt::supportsFocusRing):
   54565         (WebCore::RenderThemeQt::baselinePosition):
   54566         (WebCore::RenderThemeQt::controlSupportsTints):
   54567         (WebCore::RenderThemeQt::supportsControlTints):
   54568         (WebCore::RenderThemeQt::adjustRepaintRect):
   54569         (WebCore::RenderThemeQt::paintResizeControl):
   54570         (WebCore::RenderThemeQt::platformActiveSelectionBackgroundColor):
   54571         (WebCore::RenderThemeQt::platformInactiveSelectionBackgroundColor):
   54572         (WebCore::RenderThemeQt::platformActiveSelectionForegroundColor):
   54573         (WebCore::RenderThemeQt::platformInactiveSelectionForegroundColor):
   54574         (WebCore::RenderThemeQt::systemFont):
   54575         (WebCore::RenderThemeQt::minimumMenuListSize):
   54576         (WebCore::RenderThemeQt::adjustSliderThumbSize):
   54577         (WebCore::RenderThemeQt::paintCheckbox):
   54578         (WebCore::RenderThemeQt::paintRadio):
   54579         (WebCore::RenderThemeQt::setRadioSize):
   54580         (WebCore::RenderThemeQt::adjustButtonStyle):
   54581         (WebCore::RenderThemeQt::setButtonSize):
   54582         (WebCore::RenderThemeQt::adjustTextFieldStyle):
   54583         (WebCore::RenderThemeQt::adjustMenuListStyle):
   54584         (WebCore::RenderThemeQt::paintMenuList):
   54585         (WebCore::RenderThemeQt::paintMenuListButton):
   54586         (WebCore::RenderThemeQt::adjustMenuListButtonStyle):
   54587         (WebCore::RenderThemeQt::paintSliderTrack):
   54588         (WebCore::RenderThemeQt::paintSliderThumb):
   54589         (WebCore::RenderThemeQt::paintSearchField):
   54590         (WebCore::RenderThemeQt::adjustSearchFieldStyle):
   54591         (WebCore::RenderThemeQt::adjustSearchFieldCancelButtonStyle):
   54592         (WebCore::RenderThemeQt::paintSearchFieldCancelButton):
   54593         (WebCore::RenderThemeQt::adjustSearchFieldDecorationStyle):
   54594         (WebCore::RenderThemeQt::paintSearchFieldDecoration):
   54595         (WebCore::RenderThemeQt::adjustSearchFieldResultsDecorationStyle):
   54596         (WebCore::RenderThemeQt::paintSearchFieldResultsDecoration):
   54597         (WebCore::RenderThemeQt::supportsFocus):
   54598         (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
   54599         (WebCore::RenderThemeQt::applyTheme):
   54600         (WebCore::RenderThemeQt::setSizeFromFont):
   54601         (WebCore::RenderThemeQt::sizeForFont):
   54602         (WebCore::RenderThemeQt::setButtonPadding):
   54603         (WebCore::RenderThemeQt::setPopupPadding):
   54604         (WebCore::RenderThemeQt::setPrimitiveSize):
   54605         * platform/qt/RenderThemeQt.h: Added.
   54606 
   54607 2007-02-19  Lars Naesbye Christensen <lars (a] naesbye.dk>
   54608 
   54609         Reviewed by Maciej.
   54610 
   54611         http://bugs.webkit.org/show_bug.cgi?id=12815
   54612         Two image files not included in project file
   54613 
   54614         * WebCore.xcodeproj/project.pbxproj: Added crossHairCursor.png and
   54615         notAllowedCursor.png.
   54616 
   54617 2007-02-19  Geoffrey Garen  <ggaren (a] apple.com>
   54618 
   54619         Reviewed by Adam Roben.
   54620 
   54621         Fixed some leaks in RenderThemeMac.
   54622         
   54623         No test case because 'leaks' can't detect these leaks inside DRT, even if
   54624         DRT forces the WebView to paint. ('leaks' can detect these leaks inside
   54625         Safari. Weird.)
   54626         
   54627         * rendering/RenderThemeMac.h:
   54628             - Renamed data members to m_*, to match our style guidelines.
   54629             - Renamed *Is* to is**, to match our style guidelines.
   54630             - Removed a few unnecessary data members.
   54631             - Made cached values like m_checkbox mutable, since they can change
   54632             inside functions that don't change the logical state of a RenderTheme
   54633             object. (The alternative was to make some const functions non-const.)
   54634 
   54635         (WebCore::RenderThemeMac::paintMenuList): Took CFType pointers that just 
   54636         used to leak and placed them in RetainPtrs.
   54637         (WebCore::RenderThemeMac::paintMenuListButtonGradients): ditto
   54638 
   54639         Factored inline implementations of lazy initialization into these accessor
   54640         functions, for better encapsulation:
   54641         
   54642         (WebCore::RenderThemeMac::checkbox):
   54643         (WebCore::RenderThemeMac::radio):
   54644         (WebCore::RenderThemeMac::button):
   54645         (WebCore::RenderThemeMac::popupButton):
   54646         (WebCore::RenderThemeMac::search):
   54647         (WebCore::RenderThemeMac::sliderThumbHorizontal): The inline version of
   54648         this initialization used to confuse the retained data member with a local
   54649         stack value, causing both a leak and a failure to initialize. Fixed now.
   54650         (WebCore::RenderThemeMac::sliderThumbVertical): ditto
   54651         (WebCore::RenderThemeMac::resizeCornerImage):
   54652 
   54653 2007-02-19  Mitz Pettel  <mitz (a] webkit.org>
   54654 
   54655         Reviewed by Hyatt.
   54656 
   54657         - fix http://bugs.webkit.org/show_bug.cgi?id=12817
   54658           REGRESSION (r18634): Table border-collapse problems with right margin
   54659 
   54660         Test: fast/repaint/table-outer-border.html
   54661 
   54662         * rendering/RenderTable.cpp:
   54663         (WebCore::RenderTable::layout): Reordered to initialize horizontal overflow
   54664         after table sections have computed their outer horizontal borders.
   54665 
   54666 2007-02-19  John Sullivan  <sullivan (a] apple.com>
   54667 
   54668         Reviewed by Darin
   54669         
   54670         - fixed <rdar://problem/4613701> REGRESSION: A line break in the source HTML of a link becomes visible after drag & drop
   54671 
   54672         * page/DragController.cpp:
   54673         (WebCore::DragController::startDrag):
   54674         Call simplifyWhiteSpace() on the proposed link title to match what's displayed on the web page, instead of using the
   54675         raw source HTML text.
   54676 
   54677 2007-02-19  David Hyatt  <hyatt (a] apple.com>
   54678 
   54679         Fix for Radar 4981605, regression where button grows randomly when a select is
   54680         opened.  With the new form controls, the WinIE quirk for using line width
   54681         ended up being used for them more.
   54682 
   54683         This patch removes the quirk after verifying that Firefox doesn't implement
   54684         the quirk at all.  usesLineWidth is being renamed to shrinksToAvoidFloats to
   54685         make it clear that the new method only applies to block objects that avoid floats
   54686         and that have auto width.
   54687 
   54688         Also fixed a regression where whitespace after a floating <select> at the start
   54689         of a block got incorrectly rendered.  Make sure skipWhitespace always skips
   54690         through floating/positioned elements regardless of the whitespace setting (this
   54691         way the white-space:pre value on floating <select>s doesn't cause trouble).
   54692 
   54693         Reviewed by darin
   54694 
   54695         fast/block/float/float-avoidance.html
   54696 
   54697         * rendering/RenderBlock.cpp:
   54698         (WebCore::RenderBlock::collapseMargins):
   54699         (WebCore::RenderBlock::clearFloatsIfNeeded):
   54700         (WebCore::RenderBlock::layoutBlockChildren):
   54701         (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout):
   54702         * rendering/RenderBox.cpp:
   54703         (WebCore::RenderBox::containingBlockWidth):
   54704         * rendering/RenderObject.cpp:
   54705         (WebCore::RenderObject::shrinkToAvoidFloats):
   54706         * rendering/RenderObject.h:
   54707         * rendering/bidi.cpp:
   54708         (WebCore::RenderBlock::skipWhitespace):
   54709 
   54710 2007-02-19  Zalan Bujtas  <zbujtas (a] gmail.com>
   54711 
   54712         Reviewed by Darin.
   54713 
   54714         Update stylesheet href, when document's baseUrl changes. It needs
   54715         update when the stylesheet is constructed before the parser hits the base tag.
   54716         http://bugs.webkit.org/show_bug.cgi?id=12214
   54717 
   54718         * css/StyleSheet.h:
   54719         (WebCore::StyleSheet::setHref):
   54720         * dom/Document.cpp:
   54721         (WebCore::Document::setBaseURL):
   54722         * dom/Document.h:
   54723 
   54724 2007-02-19  Mitz Pettel  <mitz (a] webkit.org>
   54725 
   54726         Reviewed by Adam.
   54727 
   54728         - fix http://bugs.webkit.org/show_bug.cgi?id=11518
   54729           REGRESSION (r14376): View Source not available after Back navigation from a non-HTML page
   54730 
   54731         The FrameLoader's responseMIMEType was not being updated when a page was
   54732         brought back from the page cache.
   54733         
   54734         Moved the line that updates the MIME type from commitProvisionalLoad() to
   54735         transitionToCommitted().
   54736 
   54737         * loader/FrameLoader.cpp:
   54738         (WebCore::FrameLoader::commitProvisionalLoad):
   54739         (WebCore::FrameLoader::transitionToCommitted):
   54740 
   54741 2007-02-19  Anders Carlsson  <acarlsson (a] apple.com>
   54742 
   54743         Reviewed by Oliver.
   54744 
   54745         Make DragController::maxDragImageSize a function to get rid of the global initializer.
   54746         
   54747         * page/DragController.cpp:
   54748         (WebCore::DragController::doImageDrag):
   54749         * page/DragController.h:
   54750         * page/mac/DragControllerMac.mm:
   54751         (WebCore::DragController::maxDragImageSize):
   54752         * page/qt/DragControllerQt.cpp:
   54753         (WebCore::DragController::maxDragImageSize):
   54754 
   54755 2007-02-19  Darin Adler  <darin (a] apple.com>
   54756 
   54757         Reviewed by Hyatt.
   54758 
   54759         - <rdar://problem/5006414> REGRESSION: Crash occurs at WebCore::Frame::loader()
   54760           when loading AFL Ladder widget
   54761 
   54762         * html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::openURL):
   54763         Add missing null check so this fails without crashing when called on an element
   54764         that's no longer in a frame.
   54765 
   54766 2007-02-19  Antti Koivisto  <antti (a] apple.com>
   54767 
   54768         Reviewed by Mitz.
   54769 
   54770         - fix for http://bugs.webkit.org/show_bug.cgi?id=10990
   54771           REGRESSION: Pressing a pop-up's access key doesn't focus it
   54772           <rdar://problem/4823138>
   54773           
   54774         Focus the select element too in accessKeyAction.
   54775 
   54776         * html/HTMLSelectElement.cpp:
   54777         (WebCore::HTMLSelectElement::accessKeyAction):
   54778 
   54779 2007-02-18  Antti Koivisto  <antti (a] apple.com>
   54780 
   54781         Reviewed by Hyatt.
   54782 
   54783         - really fix http://bugs.webkit.org/show_bug.cgi?id=11974
   54784         REGRESSION: Caret drawn over input when smaller than font size on initial focus
   54785         <rdar://problem/4960258>
   54786         
   54787         Avoid double painting caret when it is on a block element.
   54788         
   54789         Layout test for this already went in previous try (it only fails in pixel mode) in r19626.
   54790 
   54791         * rendering/RenderBlock.cpp:
   54792         (WebCore::RenderBlock::paintCaret):
   54793 
   54794 2007-02-19  Lars Knoll <lars (a] trolltech.com>
   54795 
   54796         Added a one line patch from Olliej to create the
   54797         clipboard on demand (to stop things from crashing), 
   54798         and added lots of notImplemented() warnings all 
   54799         over the place.
   54800 
   54801         * platform/qt/ClipboardQt.cpp:
   54802         (WebCore::ClipboardQt::ClipboardQt):
   54803         (WebCore::ClipboardQt::clearData):
   54804         (WebCore::ClipboardQt::clearAllData):
   54805         (WebCore::ClipboardQt::getData):
   54806         (WebCore::ClipboardQt::setData):
   54807         (WebCore::ClipboardQt::types):
   54808         (WebCore::ClipboardQt::dragLocation):
   54809         (WebCore::ClipboardQt::dragImage):
   54810         (WebCore::ClipboardQt::setDragImage):
   54811         (WebCore::ClipboardQt::dragImageElement):
   54812         (WebCore::ClipboardQt::setDragImageElement):
   54813         (WebCore::ClipboardQt::createDragImage):
   54814         (WebCore::ClipboardQt::declareAndWriteDragImage):
   54815         (WebCore::ClipboardQt::writeURL):
   54816         (WebCore::ClipboardQt::writeRange):
   54817         (WebCore::ClipboardQt::hasData):
   54818         * platform/qt/DragDataQt.cpp:
   54819         (WebCore::DragData::canSmartReplace):
   54820         (WebCore::DragData::containsColor):
   54821         (WebCore::DragData::containsPlainText):
   54822         (WebCore::DragData::asPlainText):
   54823         (WebCore::DragData::asColor):
   54824         (WebCore::DragData::createClipboard):
   54825         (WebCore::DragData::containsCompatibleContent):
   54826         (WebCore::DragData::containsURL):
   54827         (WebCore::DragData::asURL):
   54828         (WebCore::DragData::asFragment):
   54829 
   54830 2007-02-19  Lars Knoll <lars (a] trolltech.com>
   54831 
   54832         Compile again.
   54833 
   54834         * platform/qt/ClipboardQt.cpp:
   54835         (WebCore::ClipboardQt::types):
   54836 
   54837 2007-02-17  Lars Knoll <lars (a] trolltech.com>
   54838 
   54839         Reviewed by Maciej.
   54840         
   54841         Additional coding by Maciej, additional review by Oliver.
   54842 
   54843         Get rid of the FrameMac and FrameQt classes. Instead
   54844         move all methods into Frame directly, and implement
   54845         some platform specific methods in foo/FrameFoo.cpp.
   54846 
   54847         Some general cleanup in Frame:
   54848         * Move some methods out of Frame, to the place where they 
   54849         belong.
   54850         * Unify the different ways of creating the JavaScript wrappers
   54851         for <object>, <embed> and <applet>
   54852         * Some cleanup of the WebCoreFrameBridge
   54853 
   54854         * ForwardingHeaders/bindings/NP_jsobject.h: Added.
   54855         * ForwardingHeaders/bindings/npruntime_impl.h: Added.
   54856         * ForwardingHeaders/bindings/runtime_root.h: Added.
   54857         * WebCore.exp:
   54858         * WebCore.xcodeproj/project.pbxproj:
   54859         * bindings/js/kjs_binding.cpp:
   54860         (KJS::ScriptInterpreter::shouldInterruptScript):
   54861         * bindings/objc/DOM.mm:
   54862         (-[DOMNode KJS::Bindings::]):
   54863         * bindings/objc/DOMInternal.mm:
   54864         (-[WebScriptObject _initializeScriptDOMNodeImp]):
   54865         * bridge/EditorClient.h:
   54866         * bridge/mac/FrameViewMac.mm:
   54867         (WebCore::FrameView::updateBorder):
   54868         (WebCore::FrameView::updateDashboardRegions):
   54869         * bridge/mac/WebCoreAXObject.mm:
   54870         (-[WebCoreAXObject rendererForView:]):
   54871         * dom/Position.cpp:
   54872         (WebCore::Position::next):
   54873         * editing/CommandByName.cpp:
   54874         (WebCore::Frame::execCopy):
   54875         (WebCore::Frame::execCut):
   54876         (WebCore::Frame::execPaste):
   54877         * editing/Editor.cpp:
   54878         (WebCore::Editor::canEdit):
   54879         (WebCore::Editor::pasteWithPasteboard):
   54880         (WebCore::Editor::paste):
   54881         (WebCore::Editor::pasteAsPlainText):
   54882         * editing/Editor.h:
   54883         * editing/JSEditor.cpp:
   54884         * html/HTMLAppletElement.cpp:
   54885         (WebCore::HTMLAppletElement::getInstance):
   54886         * html/HTMLEmbedElement.cpp:
   54887         (WebCore::HTMLEmbedElement::getInstance):
   54888         * html/HTMLFormElement.cpp:
   54889         (WebCore::HTMLFormElement::formData):
   54890         * html/HTMLObjectElement.cpp:
   54891         (WebCore::HTMLObjectElement::getInstance):
   54892         * loader/FrameLoader.cpp:
   54893         (WebCore::FrameLoader::clear):
   54894         (WebCore::FrameLoader::detachFromParent):
   54895         * loader/mac/ImageDocumentMac.mm:
   54896         (WebCore::finishImageLoad):
   54897         * loader/qt/DocumentLoaderQt.cpp:
   54898         * page/Chrome.cpp:
   54899         (WebCore::Chrome::shouldInterruptJavaScript):
   54900         * page/Chrome.h:
   54901         * page/ChromeClient.h:
   54902         * page/Frame.cpp:
   54903         (WebCore::Frame::~Frame):
   54904         (WebCore::Frame::markedTextRange):
   54905         (WebCore::Frame::shouldChangeSelection):
   54906         (WebCore::Frame::shouldDeleteSelection):
   54907         (WebCore::Frame::isContentEditable):
   54908         (WebCore::Frame::setSecureKeyboardEntry):
   54909         (WebCore::Frame::isSecureKeyboardEntry):
   54910         (WebCore::Frame::bindingRootObject):
   54911         (WebCore::Frame::createRootObject):
   54912         (WebCore::Frame::windowScriptNPObject):
   54913         (WebCore::Frame::cleanupScriptObjects):
   54914         (WebCore::FramePrivate::FramePrivate):
   54915         * page/Frame.h:
   54916         * page/FramePrivate.h:
   54917         * page/FrameView.h:
   54918         * page/mac/EventHandlerMac.mm:
   54919         (WebCore::EventHandler::tabsToLinks):
   54920         (WebCore::EventHandler::tabsToAllControls):
   54921         (WebCore::EventHandler::focusDocumentView):
   54922         (WebCore::EventHandler::passMouseDownEventToWidget):
   54923         (WebCore::EventHandler::handleDrag):
   54924         (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
   54925         (WebCore::EventHandler::keyboardUIMode):
   54926         * page/mac/FrameMac.h: Removed.
   54927         * page/mac/FrameMac.mm:
   54928         (WebCore::Frame::setBridge):
   54929         (WebCore::Frame::bridge):
   54930         (WebCore::Frame::searchForLabelsAboveCell):
   54931         (WebCore::Frame::searchForLabelsBeforeElement):
   54932         (WebCore::Frame::matchLabelsAgainstElement):
   54933         (WebCore::Frame::focusWindow):
   54934         (WebCore::Frame::unfocusWindow):
   54935         (WebCore::Frame::imageFromRect):
   54936         (WebCore::Frame::selectionImage):
   54937         (WebCore::Frame::snapshotDragImage):
   54938         (WebCore::Frame::fontAttributesForSelectionStart):
   54939         (WebCore::Frame::baseWritingDirectionForSelectionStart):
   54940         (WebCore::Frame::print):
   54941         (WebCore::Frame::issuePasteCommand):
   54942         (WebCore::Frame::issueTransposeCommand):
   54943         (WebCore::Frame::respondToChangedSelection):
   54944         (WebCore::Frame::textFieldDidBeginEditing):
   54945         (WebCore::Frame::textFieldDidEndEditing):
   54946         (WebCore::Frame::textDidChangeInTextField):
   54947         (WebCore::Frame::textDidChangeInTextArea):
   54948         (WebCore::Frame::doTextFieldCommandFromEvent):
   54949         (WebCore::Frame::textWillBeDeletedInTextField):
   54950         (WebCore::Frame::setSecureKeyboardEntry):
   54951         (WebCore::Frame::isSecureKeyboardEntry):
   54952         (WebCore::Frame::setMarkedTextRange):
   54953         (WebCore::Frame::dashboardRegionsDictionary):
   54954         (WebCore::Frame::dashboardRegionsChanged):
   54955         (WebCore::Frame::willPopupMenu):
   54956         (WebCore::Frame::isCharacterSmartReplaceExempt):
   54957         (WebCore::Frame::setNeedsReapplyStyles):
   54958         (WebCore::Frame::customHighlightLineRect):
   54959         (WebCore::Frame::paintCustomHighlight):
   54960         (WebCore::Frame::createScriptInstanceForWidget):
   54961         (WebCore::Frame::windowScriptObject):
   54962         (WebCore::Frame::cleanupPlatformScriptObjects):
   54963         * page/mac/WebCoreFrameBridge.h:
   54964         * page/mac/WebCoreFrameBridge.mm:
   54965         (createRootObject):
   54966         (bridge):
   54967         (-[WebCoreFrameBridge _frame]):
   54968         * page/qt/EventHandlerQt.cpp:
   54969         * page/qt/FrameQt.cpp:
   54970         (WebCore::Frame::unfocusWindow):
   54971         (WebCore::Frame::focusWindow):
   54972         (WebCore::Frame::issueTransposeCommand):
   54973         (WebCore::Frame::respondToChangedSelection):
   54974         (WebCore::Frame::print):
   54975         (WebCore::Frame::createScriptInstanceForWidget):
   54976         (WebCore::Frame::cleanupPlatformScriptObjects):
   54977         (WebCore::Frame::isCharacterSmartReplaceExempt):
   54978         * page/qt/FrameQt.h: Removed.
   54979         * platform/MimeTypeRegistry.h:
   54980         * platform/graphics/svg/SVGImage.cpp:
   54981         (WebCore::SVGImage::setData):
   54982         * platform/graphics/svg/SVGImageEmptyClients.h:
   54983         (WebCore::SVGEmptyChromeClient::shouldInterruptJavaScript):
   54984         (WebCore::SVGEmptyEditorClient::shouldChangeSelectedRange):
   54985         * platform/mac/ClipboardMac.h:
   54986         * platform/mac/ClipboardMac.mm:
   54987         (WebCore::ClipboardMac::ClipboardMac):
   54988         * platform/mac/FileChooserMac.mm:
   54989         (-[OpenPanelController beginSheetWithFrame:]):
   54990         * platform/mac/MimeTypeRegistryMac.mm:
   54991         (WebCore::MimeTypeRegistry::getMIMETypeForPath):
   54992         * platform/mac/PopupMenuMac.mm:
   54993         (WebCore::PopupMenu::show):
   54994         * platform/mac/WidgetMac.mm:
   54995         (WebCore::Widget::setFocus):
   54996         (WebCore::Widget::setIsSelected):
   54997         * platform/network/mac/ResourceHandleMac.mm:
   54998         * platform/network/qt/ResourceHandleManagerQt.cpp:
   54999         * platform/network/qt/ResourceHandleQt.cpp:
   55000         (WebCore::ResourceHandle::start):
   55001         * platform/qt/MimeTypeRegistryQt.cpp:
   55002         (WebCore::MimeTypeRegistry::getMIMETypeForPath):
   55003         * platform/qt/PopupMenuQt.cpp:
   55004         * platform/qt/ScrollViewCanvasQt.cpp:
   55005         * platform/qt/ScrollViewQt.cpp:
   55006         * platform/win/TemporaryLinkStubs.cpp:
   55007         * rendering/InlineTextBox.cpp:
   55008         (WebCore::InlineTextBox::paintCustomHighlight):
   55009         * rendering/RenderBox.cpp:
   55010         (WebCore::RenderBox::paintCustomHighlight):
   55011         * rendering/RootInlineBox.cpp:
   55012         (WebCore::RootInlineBox::addHighlightOverflow):
   55013         (WebCore::RootInlineBox::paintCustomHighlight):
   55014 
   55015 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55016 
   55017         Reviewed by NOBODY (Buildfix).
   55018 
   55019         Oops, missed a 'const'
   55020 
   55021         * platform/qt/ClipboardQt.h:
   55022 
   55023 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55024 
   55025         Reviewed by Adam.
   55026 
   55027         Adding stubbed out implementation of Clipboard for Qt to stop
   55028         it crashing whenever someone drags the mouse.
   55029 
   55030         * WebCore.pro:
   55031         * page/qt/EventHandlerQt.cpp:
   55032         (WebCore::EventHandler::createDraggingClipboard):
   55033         * platform/qt/ClipboardQt.cpp: Added.
   55034         (WebCore::ClipboardQt::ClipboardQt):
   55035         (WebCore::ClipboardQt::clearData):
   55036         (WebCore::ClipboardQt::clearAllData):
   55037         (WebCore::ClipboardQt::getData):
   55038         (WebCore::ClipboardQt::setData):
   55039         (WebCore::ClipboardQt::types):
   55040         (WebCore::ClipboardQt::dragLocation):
   55041         (WebCore::ClipboardQt::dragImage):
   55042         (WebCore::ClipboardQt::setDragImage):
   55043         (WebCore::ClipboardQt::dragImageElement):
   55044         (WebCore::ClipboardQt::setDragImageElement):
   55045         (WebCore::ClipboardQt::createDragImage):
   55046         (WebCore::ClipboardQt::declareAndWriteDragImage):
   55047         (WebCore::ClipboardQt::writeURL):
   55048         (WebCore::ClipboardQt::writeRange):
   55049         (WebCore::ClipboardQt::hasData):
   55050         * platform/qt/ClipboardQt.h: Added.
   55051         (WebCore::ClipboardQt::~ClipboardQt):
   55052         (WebCore::ClipboardQt::isForDragging):
   55053 
   55054 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55055 
   55056         Reviewed by Adam.
   55057 
   55058         Don't even attempt to do a document based drag if there isn't a document
   55059         Fixes rdar://problem/4960109
   55060 
   55061         * page/DragController.cpp:
   55062         (WebCore::DragController::tryDocumentDrag):  
   55063            Null check m_document
   55064         (WebCore::DragController::tryDHTMLDrag):
   55065            ASSERT(m_document) -- tryDocumentDrag is the only 
   55066            thing that will ever call us, but lets play it safe
   55067 
   55068 2007-02-18  Adam Roben  <aroben (a] apple.com>
   55069 
   55070         Reviewed by Hyatt.
   55071 
   55072         A little preparation for <rdar://problem/5006872>.
   55073 
   55074         * platform/PopupMenu.h:
   55075 
   55076 2007-02-18  Alexey Proskuryakov  <ap (a] webkit.org>
   55077 
   55078         Reviewed by Adele.
   55079 
   55080         http://bugs.webkit.org/show_bug.cgi?id=12807
   55081         XPath incorrectly converts NaN to boolean
   55082 
   55083         Test: fast/xpath/nan-to-boolean.html
   55084 
   55085         * xml/XPathValue.cpp:
   55086         (WebCore::XPath::Value::toBoolean): Convert NaN to false.
   55087         * xml/XPathFunctions.cpp:
   55088         (WebCore::XPath::FunSubstringAfter::doEvaluate): Fix substring-after to actually work.
   55089 
   55090 2007-02-18  Mitz Pettel  <mitz (a] webkit.org>
   55091 
   55092         Reviewed by Hyatt.
   55093 
   55094         - fix http://bugs.webkit.org/show_bug.cgi?id=12123
   55095           REGRESSION: Incomplete repaint of floats' overflows
   55096 
   55097         Tests: fast/repaint/float-overflow.html
   55098                fast/repaint/float-overflow-right.html
   55099                fast/repaint/table-cell-vertical-overflow.html
   55100 
   55101         - fix http://bugs.webkit.org/show_bug.cgi?id=10116
   55102           REGRESSION: Menu item drawn 2 pixels short on WWDC 2006 Attendee Site
   55103 
   55104         Reflected in existing test results.
   55105 
   55106         Unified floats and overflow for the purposes of painting and hit-testing.
   55107         Overhanging and overflowing floats are now factored into a block's overflow
   55108         unless their painting has been propagated to an ancestor.
   55109 
   55110         Changed table cells to no longer expand to enclose overflow, thus making
   55111         it purely "visual overflow", having no effect on layout in WebCore. It
   55112         still determines scrolling dimensions.
   55113 
   55114         * rendering/InlineFlowBox.cpp:
   55115         (WebCore::InlineFlowBox::placeBoxesHorizontally): Include inline blocks'
   55116         horizontal overflow in the inline box's dimensions.
   55117         * rendering/RenderBlock.cpp:
   55118         (WebCore::RenderBlock::layoutBlock): Removed the expand to enclose overflows
   55119         behavior. Added code to add this block's floats (and their overflow) to its
   55120         overflow rect if it is not in a block formatting context. Otherwise, the
   55121         inclusion of floats in the overflow is deferred until this block's parent
   55122         examines its floats and possibly adopts overhanging floats.
   55123         (WebCore::RenderBlock::layoutBlockChildren):
   55124         (WebCore::RenderBlock::paint): 
   55125         (WebCore::RenderBlock::floatRect): Made non-virtual and changed to return an empty
   55126         rect if there are no floats or the floats are clipped, instead of returning the border
   55127         box.
   55128         (WebCore::RenderBlock::addOverhangingFloats): Any floats of the child that
   55129         are not to be painted by the parent are added to the child's overflow rect.
   55130         (WebCore::RenderBlock::addVisualOverflow): Added. Adjusts the overflow
   55131         bounds to include the given rect.
   55132         (WebCore::RenderBlock::nodeAtPoint):
   55133         * rendering/RenderBlock.h:
   55134         * rendering/RenderFlexibleBox.cpp:
   55135         (WebCore::RenderFlexibleBox::layoutBlock): 
   55136         (WebCore::RenderFlexibleBox::layoutHorizontalBox): After placing a normal
   55137         child, add its floats to its overflow, since painting of floats does not
   55138         propagate to flexible boxes. 
   55139         (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto.
   55140         * rendering/RenderForeignObject.cpp:
   55141         (WebCore::RenderForeignObject::layout):
   55142         * rendering/RenderHTMLCanvas.cpp:
   55143         (WebCore::RenderHTMLCanvas::layout):
   55144         * rendering/RenderImage.cpp:
   55145         (WebCore::RenderImage::layout):
   55146         * rendering/RenderLayer.cpp:
   55147         (WebCore::RenderLayer::updateLayerPositions):
   55148         (WebCore::RenderLayer::absoluteBoundingBox):
   55149         * rendering/RenderLayer.h:
   55150         * rendering/RenderObject.cpp:
   55151         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   55152         * rendering/RenderObject.h:
   55153         (WebCore::RenderObject::expandsToEncloseOverhangingFloats):
   55154         * rendering/RenderPath.cpp:
   55155         (WebCore::RenderPath::layout):
   55156         * rendering/RenderSVGContainer.cpp:
   55157         (WebCore::RenderSVGContainer::layout):
   55158         * rendering/RenderSVGText.cpp:
   55159         (WebCore::RenderSVGText::layout):
   55160         * rendering/RenderTable.h: Removed the override of overflowHeight() since now tables can have
   55161         vertical overflow.
   55162         * rendering/RenderTableCell.cpp:
   55163         (WebCore::RenderTableCell::paint): Made sure that overflow is repainted.
   55164         * rendering/RenderTableCell.h:
   55165         (WebCore::RenderTableCell::expandsToEncloseOverhangingFloats): Removed.
   55166         * rendering/RenderTableSection.cpp:
   55167         (WebCore::RenderTableSection::RenderTableSection):
   55168         (WebCore::RenderTableSection::layoutRows): Factor in vertical overflow from cells.
   55169         (WebCore::RenderTableSection::paint):
   55170         * rendering/RenderTableSection.h:
   55171         (WebCore::RenderTableSection::overflowHeight):
   55172         (WebCore::RenderTableSection::overflowTop):
   55173 
   55174 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55175 
   55176         Reviewed by NOBODY (Buildfix).
   55177 
   55178         Build fix for the build fix -- can't call something that isn't a function
   55179 
   55180         * platform/qt/CursorQt.cpp:
   55181         (WebCore::notAllowedCursor):
   55182 
   55183 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55184 
   55185         Reviewed by NOBODY (Build fix).
   55186 
   55187         Adding platform/DragImage.cpp and platform/qt/DragImageQt.cpp to the Qt
   55188         project files
   55189 
   55190         Stubbed method for WebCore::notAllowedCursor -- not sure what it should return, 
   55191         have returned blank cursor, possibly needs to return something else
   55192 
   55193         * WebCore.pro:
   55194         * platform/qt/CursorQt.cpp:
   55195         (WebCore::notAllowedCursor):
   55196 
   55197 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55198 
   55199         Reviewed by NOBODY (Buildfix).
   55200 
   55201         Sigh, obnoxious occasional auto conversion from float to int
   55202 
   55203         * platform/mac/ClipboardMac.mm:
   55204         (WebCore::ClipboardMac::createDragImage):
   55205 
   55206 2007-02-18  Alexey Proskuryakov  <ap (a] webkit.org>
   55207 
   55208         Reviewed by Hyatt.
   55209 
   55210         http://bugs.webkit.org/show_bug.cgi?id=12799
   55211         REGRESSION: Webpage doesn't load correctly (www.cincinnati.com
   55212         redirects to the wrong URL)
   55213 
   55214         Test: http/tests/misc/refresh-meta-with-newline.html
   55215 
   55216         * platform/network/HTTPParsers.cpp:
   55217         (WebCore::skipWhiteSpace):
   55218         (WebCore::parseHTTPRefresh):
   55219         * platform/network/HTTPParsers.h:
   55220         In HTML, all characters with codes <= 0x20 are whitespace, while in
   55221         HTTP, only space and tab are such.
   55222 
   55223         * dom/Document.cpp:
   55224         (WebCore::Document::processHttpEquiv):
   55225         * loader/FrameLoader.cpp:
   55226         (WebCore::FrameLoader::receivedFirstData):
   55227         Pass parseHTTPRefresh() a flag telling about the source of data.
   55228 
   55229 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55230 
   55231         Reviewed by NOBODY (Build fix).
   55232 
   55233         Buld fix -- surprisingly RetainPtr doesn't exist on Qt
   55234 
   55235         * platform/DragImage.h:
   55236 
   55237 2007-02-18  Oliver Hunt  <oliver (a] apple.com>
   55238 
   55239         Reviewed by Adam.
   55240 
   55241         More drag and drop migration, now the entirety of the
   55242         drag initiation logic has been rendered platform independent
   55243         This has required a number of new interfaces, and a reasonable
   55244         amount of logic migration.
   55245 
   55246         As a side effect, this patch also fixes rdar://problem/4945341
   55247 
   55248         There are some basic Qt stubs that should stop the build from failing,
   55249         however the absence of ClipboardQt means any attempt to initiate a drag 
   55250         may cause a crash.
   55251 
   55252         * WebCore.exp:
   55253            Exporting new symbols
   55254 
   55255         * WebCore.xcodeproj/project.pbxproj:
   55256            New files
   55257 
   55258         * dom/Clipboard.cpp:
   55259         (WebCore::Clipboard::canSaveAsWebArchive):
   55260           Migrated from WebKit
   55261 
   55262         * dom/Clipboard.h:
   55263           Added more methods to allow Clipboard to be used as a 
   55264           platform independent container for drag and drop
   55265 
   55266         * page/DragClient.h:
   55267         (WebCore::DragClient::declareAndWriteDragImage):
   55268           This is a mac only helper function, so i've made it have an empty implementation,
   55269           that way we won't need a PLATFORM(MAC) block in SVGImageEmptyClients
   55270 
   55271         * page/DragController.cpp:
   55272         (WebCore::DragController::dragExited):
   55273         (WebCore::DragController::performDrag):
   55274         (WebCore::DragController::tryDocumentDrag): 
   55275         (WebCore::DragController::tryDHTMLDrag):
   55276           Using RefPtrs now
   55277         (WebCore::getCachedImage):
   55278         (WebCore::getImage):
   55279           Helper functions                   
   55280         (WebCore::dragLocForDHTMLDrag):
   55281         (WebCore::dragLocForSelectionDrag):
   55282         (WebCore::DragController::startDrag):
   55283         (WebCore::DragController::doImageDrag):
   55284         (WebCore::DragController::doSystemDrag):
   55285           Logic that generates drag images and clipboard content, and
   55286           initiates the actual system drag operation
   55287 
   55288         * page/DragController.h:
   55289           Method and variable declarations
   55290 
   55291         * page/EventHandler.cpp:
   55292         (WebCore::EventHandler::handleDrag):
   55293           handleDrag is now platform independent
   55294         (WebCore::EventHandler::handleTextInputEvent):
   55295            formatting
   55296 
   55297         * page/EventHandler.h:
   55298         (WebCore::EventHandler::eventLoopHandleMouseDragged):
   55299           Forgot to define this stub function 
   55300 
   55301         * page/Frame.h:
   55302           Declaring dragImageForSelection to provide drag image for selected content
   55303 
   55304         * page/mac/DragControllerMac.mm:
   55305           Defining drag images control vars
   55306 
   55307         * page/mac/EventHandlerMac.mm:
   55308         (WebCore::EventHandler::createDraggingClipboard):
   55309           Migrated old clipboard creation to here
   55310 
   55311         * page/mac/FrameMac.mm:
   55312         (WebCore::Frame::dragImageForSelection):
   55313           Wrap FrameMac::selectionImage
   55314 
   55315         * page/qt/DragControllerQt.cpp:
   55316           Defining drag images control vars
   55317 
   55318         * page/qt/EventHandlerQt.cpp:
   55319         (WebCore::EventHandler::createDraggingClipboard):
   55320           stub
   55321 
   55322         * page/qt/FrameQt.cpp:
   55323         (WebCore::Frame::dragImageForSelection):
   55324           stub
   55325 
   55326         * platform/DragImage.cpp: Added.
   55327         (WebCore::fitDragImageToMaxSize):
   55328         (WebCore::createDragImageForSelection):
   55329            Platform independent processing for drag images
   55330 
   55331         * platform/DragImage.h: Added.
   55332            Declaring typedefs and wrapper functions to abstract the handling
   55333            of drag images 
   55334 
   55335         * platform/Pasteboard.h:
   55336           Declaring extracted writeURL and writeSelection methods
   55337 
   55338         * platform/graphics/svg/SVGImageEmptyClients.h:
   55339         (WebCore::SVGEmptyDragClient::willPerformDragSourceAction):
   55340         (WebCore::SVGEmptyDragClient::startDrag):
   55341         (WebCore::SVGEmptyDragClient::createDragImageForLink):
   55342           Stubs FTW!
   55343 
   55344         * platform/mac/ClipboardMac.h:
   55345         (WebCore::ClipboardMac::pasteboard):
   55346           Provide accessor for underlying NSPasteboard
   55347 
   55348         * platform/mac/ClipboardMac.mm:
   55349         (WebCore::ClipboardMac::hasData):
   55350         (WebCore::ClipboardMac::writeRange):
   55351         (WebCore::ClipboardMac::writeURL):
   55352         (WebCore::ClipboardMac::declareAndWriteDragImage):
   55353         (WebCore::ClipboardMac::createDragImage):
   55354            Implemented new Clipboarid functionality.
   55355         (WebCore::ClipboardMac::dragNSImage):
   55356            Made this a const method
   55357 
   55358         * platform/mac/DragImageMac.mm: Added.
   55359         (WebCore::dragImageSize):
   55360         (WebCore::deleteDragImage):
   55361         (WebCore::scaleDragImage):
   55362         (WebCore::dissolveDragImageToFraction):
   55363         (WebCore::createDragImageFromImage):
   55364         (WebCore::createDragImageIconForCachedImage):
   55365            Implemented platform specific DragImage functions
   55366 
   55367         * platform/mac/PasteboardMac.mm:
   55368         (WebCore::writeSelection):
   55369         (WebCore::Pasteboard::writeSelection):
   55370         (WebCore::writeURL):
   55371         (WebCore::Pasteboard::writeURL):
   55372            Extracted member implementations of these functions, so that
   55373            Clipboard could also make use of this functionality.
   55374            Pasteboard methods now call the new non-member implementations.
   55375            Also fixed implementations to respect the list of requested types.
   55376 
   55377         * platform/qt/DragImageQt.cpp: Added.
   55378         (WebCore::dragImageSize):
   55379         (WebCore::deleteDragImage):
   55380         (WebCore::scaleDragImage):
   55381         (WebCore::dissolveDragImageToFraction):
   55382         (WebCore::createDragImageFromImage):
   55383         (WebCore::createDragImageIconForCachedImage):  
   55384           Stubs
   55385 
   55386 2007-02-17  David Hyatt  <hyatt (a] apple.com>
   55387 
   55388         Fix textarea resizers to not fill with black by making sure the fill color starts off as
   55389         transparent instead of black.
   55390 
   55391         Reviewed by aroben
   55392 
   55393         * platform/graphics/GraphicsContext.cpp:
   55394         (WebCore::GraphicsContextState::GraphicsContextState):
   55395 
   55396 2007-02-17  Lars Knoll <lars (a] trolltech.com>
   55397 
   55398         Reviewed by Adam.
   55399 
   55400         fix http://bugs.webkit.org/show_bug.cgi?id=11476
   55401         <rdar://problem/4960247> REGRESSION: Nesting the IMG tag inside of a
   55402         MAP fails to render correctly in ToT
   55403 
   55404         Test: fast/images/image-in-map.html
   55405 
   55406         * html/HTMLMapElement.cpp:
   55407         (WebCore::HTMLMapElement::checkDTD):
   55408 
   55409 2007-02-17  Alexey Proskuryakov  <ap (a] webkit.org>
   55410 
   55411         Reviewed by Maciej.
   55412 
   55413         http://bugs.webkit.org/show_bug.cgi?id=12733
   55414         XPath namespace is attached to a wrong step
   55415 
   55416         * xml/XPathGrammar.y: NAMETEST is different from other NodeTests in that its
   55417         resulting type is an expanded name, rather than a string. It is not really possible 
   55418         to store the namespace inside Parser, because it gets used in wrong steps then.
   55419 
   55420         * xml/XPathParser.cpp:
   55421         (WebCore::XPath::Parser::expandQName):
   55422         * xml/XPathParser.h:
   55423         Moved code that expands a QName from XPathGrammar.y. Removed m_currentNamespaceURI.
   55424 
   55425         * xml/XPathStep.cpp:
   55426         (WebCore::XPath::Step::Step):
   55427         * xml/XPathStep.h:
   55428         Added a constructor that takes a namespace.
   55429 
   55430 2007-02-17  Mitz Pettel  <mitz (a] webkit.org>
   55431 
   55432         Reviewed by Maciej.
   55433 
   55434         - fix http://bugs.webkit.org/show_bug.cgi?id=12479
   55435           ASSERTION FAILURE: resource->inCache() in WebCore::Cache::remove
   55436 
   55437         Test: fast/loader/simultaneous-reloads-assert.html
   55438 
   55439         * loader/Cache.cpp:
   55440         (WebCore::Cache::remove): Replaced the assertion with a check whether the
   55441         resource is in the cache. The resource could have been removed from the cache
   55442         as a result of a reload occurring simultaneously in a different document.
   55443 
   55444 2007-02-12  Lars Naesbye Christensen  <lars (a] naesbye.dk>
   55445 
   55446         Reviewed by Adam.
   55447 
   55448         Fix for http://bugs.webkit.org/show_bug.cgi?id=12711
   55449         Prettier and more distinct cursors
   55450 
   55451         * Resources/crossHairCursor.png: Added.
   55452         * Resources/northEastSouthWestResizeCursor.png:
   55453         * Resources/northWestSouthEastResizeCursor.png:
   55454         * Resources/notAllowedCursor.png: Added.
   55455         * page/EventHandler.cpp: (WebCore::selectCursor):
   55456         * platform/Cursor.h:
   55457         * platform/mac/CursorMac.mm:
   55458         (WebCore::crossCursor):
   55459         (WebCore::notAllowedCursor):
   55460 
   55461 2007-02-16  Mitz Pettel  <mitz (a] webkit.org>
   55462 
   55463         Reviewed by Darin.
   55464 
   55465         - fix http://bugs.webkit.org/show_bug.cgi?id=12780
   55466           REGRESSION (r19341-r19385): Reproducible crash in "onselectstart" event
   55467 
   55468         Test: fast/events/shadow-boundary-crossing.html
   55469 
   55470         * dom/EventTargetNode.cpp:
   55471         (WebCore::EventTargetNode::dispatchGenericEvent): Changed to use the new
   55472         eventParentNode() function for constructing the chain of ancestors for
   55473         capture and bubbling.
   55474         * dom/Node.h:
   55475         (WebCore::Node::eventParentNode): Added. Returns the node's parent for the
   55476         purpose of of event capture and bubbling. The base class implementation is
   55477         to return the parent node.
   55478         * ksvg2/svg/SVGElement.h:
   55479         (WebCore::SVGElement::eventParentNode): Added. Since in SVG events bubble
   55480         to and can be captured across the shadow DOM boundary, returns the shadow parent
   55481         for shadow nodes.
   55482 
   55483 2007-02-17  Dave Hyatt <hyatt (a] apple.com>
   55484 
   55485         Change how textarea resizers paint to more closely match the way the main window resizer paints.
   55486         
   55487         Reviewed by olliej
   55488 
   55489         * rendering/RenderLayer.cpp:
   55490         (WebCore::RenderLayer::paintOverflowControls):
   55491 
   55492 2007-02-17  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   55493 
   55494         Reviewed by Adam Roben.
   55495 
   55496         Fix crashes on ARM due to different struct packing. Based on a patch
   55497         from Mike Emmel.
   55498 
   55499         * platform/DeprecatedString.cpp: compile-time assert to make sure sizeof(DeprecatedChar) == 2
   55500         * platform/DeprecatedString.h: pack DeprecatedChar struct to ensure that
   55501         sizeof(DeprecatedChar) == 2. Move _internalBuffer in DeprecatedStringData
   55502         to the end, to avoid crashes on ARM due to different struct packing.
   55503 
   55504 2007-02-16  Adele Peterson  <adele (a] apple.com>
   55505 
   55506         Reviewed by Mitz.
   55507 
   55508         Fix for http://bugs.webkit.org/show_bug.cgi?id=11534
   55509         <rdar://problem/4946947> REGRESSION: Readonly text fields don't scroll when selecting content
   55510 
   55511         Test: fast/forms/input-readonly-autoscroll.html
   55512 
   55513         Implemented autoscroll methods for RenderTextControl, so this works on non-editable text controls.
   55514 
   55515         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::autoscroll):
   55516         * rendering/RenderTextControl.h: (WebCore::RenderTextControl::shouldAutoscroll):
   55517 
   55518 2007-02-17  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   55519 
   55520         Reviewed by Adam Roben.
   55521 
   55522         Curl networking improvements inspired by Mike Emmel's patches in
   55523         http://bugs.webkit.org/show_bug.cgi?id=11332.
   55524         Fix FrameLoaderClientGdk due to changed FrameLoaderClient API.
   55525 
   55526         * loader/gdk/FrameLoaderClientGdk.cpp: Massage for changed API.
   55527         (WebCore::FrameLoaderClientGdk::saveViewStateToItem):
   55528         (WebCore::FrameLoaderClientGdk::restoreViewState):
   55529         (WebCore::FrameLoaderClientGdk::generatedMIMETypeForURLScheme):
   55530         (WebCore::FrameLoaderClientGdk::willUseArchive):
   55531         * loader/gdk/FrameLoaderClientGdk.h: Ditto.
   55532         * platform/network/ResourceHandleInternal.h: Remember url and custom headers
   55533         for the request lifetime and free them at the end.
   55534         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   55535         * platform/network/gdk/ResourceHandleCurl.cpp: Ditto.
   55536         (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
   55537         * platform/network/gdk/ResourceHandleManager.cpp: url improvements:
   55538         - remove m_useSimple code-path since it wasn't used anywhere
   55539         - don't use hashmap for keeping track of outstanding jobs - curl does it anyway
   55540         - set custom headers from request
   55541         - enable gzip and deflate through Accept-Encoding
   55542         - setup curl to share cookies and DNS cache between requests
   55543         - enable persisting of cookies in a file (if client provides file name
   55544           for cookies via ResourceHandleManager::setCookieJarFileName())
   55545         (WebCore::ResourceHandleManager::ResourceHandleManager):
   55546         (WebCore::ResourceHandleManager::setCookieJarFileName):
   55547         (WebCore::ResourceHandleManager::downloadTimerCallback):
   55548         (WebCore::ResourceHandleManager::removeFromCurl):
   55549         (WebCore::ResourceHandleManager::setupPUT):
   55550         (WebCore::ResourceHandleManager::setupPOST):
   55551         (WebCore::ResourceHandleManager::add):
   55552         (WebCore::ResourceHandleManager::cancel):
   55553         * platform/network/gdk/ResourceHandleManager.h:
   55554 
   55555 2007-02-17  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   55556 
   55557         Reviewed by Adam Roben.
   55558 
   55559         Gdk fixes.
   55560 
   55561         * page/gdk/EventHandlerGdk.cpp: Comment out chatty message.
   55562         (WebCore::EventHandler::handleDrag):
   55563         * platform/gdk/EditorClientGdk.cpp: Enable entering text into text field.
   55564         (WebCore::EditorClientGdk::shouldInsertText):
   55565 
   55566 2007-02-16  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   55567 
   55568         Reviewed by Adam Roben.
   55569 
   55570         Move Path implementation from TemporaryLinkStubs.cpp to
   55571         its own file.
   55572         Implement setLineCap, setLineJoin and setMiterLimit for
   55573         cairo's GraphicsContext.
   55574 
   55575         * WebCoreSources.bkl:
   55576         * platform/gdk/TemporaryLinkStubs.cpp:
   55577         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   55578         (WebCore::GraphicsContext::setPlatformFillColor):
   55579         (WebCore::GraphicsContext::setPlatformStrokeColor):
   55580         (WebCore::GraphicsContext::setLineCap):
   55581         (WebCore::GraphicsContext::setLineJoin):
   55582         (WebCore::GraphicsContext::setMiterLimit):
   55583         * platform/graphics/cairo/PathCairo.cpp: Added.
   55584         (WebCore::Path::Path):
   55585         (WebCore::Path::~Path):
   55586         (WebCore::Path::contains):
   55587         (WebCore::Path::translate):
   55588         (WebCore::Path::boundingRect):
   55589         (WebCore::Path::operator=):
   55590         (WebCore::Path::clear):
   55591         (WebCore::Path::moveTo):
   55592         (WebCore::Path::addLineTo):
   55593         (WebCore::Path::addQuadCurveTo):
   55594         (WebCore::Path::addBezierCurveTo):
   55595         (WebCore::Path::addArcTo):
   55596         (WebCore::Path::closeSubpath):
   55597         (WebCore::Path::addArc):
   55598         (WebCore::Path::addRect):
   55599         (WebCore::Path::addEllipse):
   55600         (WebCore::Path::transform):
   55601         (WebCore::Path::apply):
   55602 
   55603 2007-02-16  Ada Chan  <adachan (a] apple.com>
   55604 
   55605         Reviewed by Adam and Maciej.
   55606 
   55607         Use a RefPtr to store the old hover node.
   55608 
   55609         * rendering/RenderLayer.cpp:
   55610         (WebCore::RenderLayer::updateHoverActiveState):
   55611 
   55612 2007-02-16  Darin Adler  <darin (a] apple.com>
   55613 
   55614         Reviewed by Adele.
   55615 
   55616         - fix <rdar://problem/4990864> ASSERT in FormDelegate.m while dragging text between frames
   55617 
   55618         This symptom is specific to Safari, so no layout test.
   55619 
   55620         * editing/DeleteSelectionCommand.cpp:
   55621         (WebCore::DeleteSelectionCommand::doApply): Only call textWillBeDeletedInTextField if the
   55622         text field is focused.
   55623         * html/HTMLInputElement.cpp:
   55624         (WebCore::HTMLInputElement::aboutToUnload): Only call textFieldDidEndEditing if the text
   55625         field is focused.
   55626         (WebCore::HTMLInputElement::dispatchBlurEvent): Remove unneeded type cast.
   55627         (WebCore::HTMLInputElement::defaultEventHandler): Only call doTextFieldCommandFromEvent if
   55628         the text field is focused.
   55629         * rendering/RenderTextControl.cpp:
   55630         (WebCore::RenderTextControl::subtreeHasChanged): Only call textDidChangeInTextArea,
   55631         textFieldDidBeginEditing, and textDidChangeInTextField if the element is focused.
   55632 
   55633 2007-02-16  Anders Carlsson  <acarlsson (a] apple.com>
   55634 
   55635         Reviewed by Adam.
   55636 
   55637         <rdar://problem/4943985> 
   55638         REGRESSION: Dragging standalone images to Finder fails to download the image file
   55639         
   55640         Set the data and response on the image resource. Also, since this is platform-independent we don't need to do it in 
   55641         ImageDocumentMac.mm
   55642         
   55643         * loader/ImageDocument.cpp:
   55644         (WebCore::ImageTokenizer::finish):
   55645         * loader/mac/ImageDocumentMac.h:
   55646         * loader/mac/ImageDocumentMac.mm:
   55647         (WebCore::finishImageLoad):
   55648 
   55649 2007-02-16  David Harrison  <harrison (a] apple.com>
   55650 
   55651         Reviewed by Adam.
   55652 
   55653         <rdar://problem/5004746> Need mechanism to protect against WebKit calls from secondary threads (DOM APIs)
   55654 
   55655         * platform/mac/LoggingMac.mm:
   55656         (WebCore::_WebCoreThreadViolationCheck):
   55657         Change the default to log the violations.
   55658 
   55659 2007-02-16  Adele Peterson  <adele (a] apple.com>
   55660 
   55661         Reviewed by Mitz.
   55662 
   55663         Fixed: http://bugs.webkit.org/show_bug.cgi?id=12768
   55664         <rdar://problem/4995250> REGRESSION: Crash occurs at WebCore::RenderLayer::scrollToOffset() when leaving page that has focus in field
   55665 
   55666         No test case added.  This crash doesn't occur in DumpRenderTree because the B/F cache is turned off.
   55667 
   55668         * dom/Node.cpp: (WebCore::Node::willRemove): Check that the document is not in the page cache before 
   55669 
   55670         * dom/Element.cpp: (WebCore::Element::updateFocusAppearance): Added restorePreviousSelection argument, with appropriate default values.
   55671         * dom/Element.h: ditto.
   55672         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::updateFocusAppearance): ditto.
   55673         * html/HTMLInputElement.h: ditto.
   55674         * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::updateFocusAppearance): ditto.
   55675         * html/HTMLTextAreaElement.h: ditto.
   55676 
   55677         * page/PageState.cpp: (WebCore::PageState::restore): Call updateFocusAppearance on the focused node for this page.  Pass true for the
   55678           restorePreviousSelection argument.
   55679 
   55680         * rendering/RenderLayer.cpp: Added ASSERTS and nil checks on the RenderView.  It shouldn't be null, but if it is, 
   55681           we'll fail silently on release builds.
   55682         (WebCore::RenderLayer::updateLayerPositions):
   55683         (WebCore::RenderLayer::scrollToOffset):
   55684         (WebCore::RenderLayer::windowClipRect):
   55685         (WebCore::RenderLayer::calculateClipRects):
   55686         (WebCore::RenderLayer::calculateRects):
   55687         (WebCore::RenderLayer::intersectsDamageRect):
   55688         (WebCore::RenderLayer::absoluteBoundingBox):
   55689 
   55690 2007-02-16  Anders Carlsson  <acarlsson (a] apple.com>
   55691 
   55692         Reviewed by Darin.
   55693 
   55694         <rdar://problem/4993055> auto_refcount_underflow_error: WebCore::FrameLoader::continueAfterNavigationPolicy () over-releases under GC
   55695 
   55696         Add ::adoptNS and ::adoptCF methods to RetainPtr to indicate what type of reference to adopt.
   55697         
   55698         * platform/cf/RetainPtr.h:
   55699         (WebCore::):
   55700         (WebCore::adoptNSReference):
   55701         (WebCore::RetainPtr::RetainPtr):
   55702         (WebCore::::adoptCF):
   55703         (WebCore::::adoptNS):
   55704         * platform/mac/FileChooserMac.mm:
   55705         (WebCore::FileChooser::FileChooser):
   55706         * platform/network/mac/ResourceErrorMac.mm:
   55707         (WebCore::ResourceError::operator NSError*):
   55708         * platform/network/mac/ResourceRequestMac.mm:
   55709         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   55710         * platform/network/mac/ResourceResponseMac.mm:
   55711         (WebCore::ResourceResponse::nsURLResponse):
   55712 
   55713 2007-02-15  Brady Eidson  <beidson (a] apple.com>
   55714 
   55715         Reviewed by Lost Objective-C Hippyness (or hippiness)
   55716 
   55717         Oh boy, did I ever botch this one up...
   55718 
   55719         * loader/FrameLoader.cpp:
   55720         (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem): Null check the FrameView
   55721 
   55722 2007-02-15  Brady Eidson  <beidson (a] apple.com>
   55723 
   55724         Reviewed by Adam's complaint
   55725 
   55726         Adam wanted me to do an early return, instead.
   55727 
   55728         * loader/FrameLoader.cpp:
   55729         (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem):
   55730 
   55731 2007-02-15  Brady Eidson  <beidson (a] apple.com>
   55732 
   55733         Reviewed by Adele
   55734 
   55735         Forgot to bring the null check with me when I backed this code out of 
   55736         the FrameLoaderClient
   55737 
   55738         * loader/FrameLoader.cpp:
   55739         (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem): null check the HistoryItem
   55740 
   55741 2007-02-15  Brady Eidson  <beidson (a] apple.com>
   55742 
   55743         Reviewed by Adam
   55744 
   55745         Save scroll state for back/forward navigation in FrameLoader, not the client
   55746 
   55747        * loader/FrameLoader.cpp:
   55748         (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem): Actually save the scroll position
   55749          here instead of asking the FrameLoaderClient
   55750         (WebCore::FrameLoader::restoreScrollPositionAndViewState): Ditto
   55751 
   55752         * loader/FrameLoaderClient.h: Renamed/repurposed 2 methods
   55753 
   55754         * platform/graphics/svg/SVGImageEmptyClients.h:
   55755         (WebCore::SVGEmptyFrameLoaderClient::restoreViewState): Ditto
   55756         (WebCore::SVGEmptyFrameLoaderClient::saveViewStateToItem): Ditto
   55757 
   55758 2007-02-15  Justin Garcia  <justin.garcia (a] apple.com>
   55759 
   55760         Reviewed by harrison
   55761         
   55762         <rdar://problem/4989774>
   55763         REGRESSION: Pasting a image into a plain text message can place image on a new line
   55764 
   55765         <span><img><span><img></span></span> will appear as two
   55766         images on different lines because of a layout/rendering
   55767         bug.  This patch avoids the bug by producing cleaner
   55768         markup so that the paste code can safely remove the style 
   55769         spans.
   55770 
   55771         * editing/markup.cpp:
   55772         (WebCore::createMarkup): Get the default style from the
   55773         editable root or body instead of the document element.
   55774         This produces cleaner markup since we don't inline the 
   55775         root's styles.
   55776 
   55777 2007-02-15  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   55778 
   55779         Reviewed by Adam Roben.
   55780 
   55781         Add gdk version of ContextMenuClient based on qt version.
   55782 
   55783         * WebCoreSources.bkl:
   55784         * page/gdk/ContextMenuClientGdk.cpp: Added.
   55785         (WebCore::ContextMenuClientGdk::contextMenuDestroyed):
   55786         (WebCore::ContextMenuClientGdk::getCustomMenuFromDefaultItems):
   55787         (WebCore::ContextMenuClientGdk::contextMenuItemSelected):
   55788         (WebCore::ContextMenuClientGdk::downloadURL):
   55789         (WebCore::ContextMenuClientGdk::copyImageToClipboard):
   55790         (WebCore::ContextMenuClientGdk::searchWithGoogle):
   55791         (WebCore::ContextMenuClientGdk::lookUpInDictionary):
   55792         (WebCore::ContextMenuClientGdk::speak):
   55793         (WebCore::ContextMenuClientGdk::stopSpeaking):
   55794         * page/gdk/ContextMenuClientGdk.h: Added.
   55795         * webcore-base.bkl: curl is needed when building webcore_base files.
   55796 
   55797 2007-02-15  Kevin Decker  <kdecker (a] apple.com>
   55798 
   55799        Reviewed by Darin.
   55800 
   55801        Fixed: <rdar://problem/4983883> Background of a .mov window should not be white
   55802 
   55803        * loader/PluginDocument.cpp: 
   55804        (WebCore::PluginTokenizer::createDocumentStructure): Set a background color of gray
   55805        for full frame plug-ins, which makes it easier on the eyes. It's also the same 
   55806        gray that PDFKit uses, too.
   55807 
   55808 2007-02-15  Mitz Pettel  <mitz (a] webkit.org>
   55809 
   55810         Reviewed by Darin.
   55811 
   55812         - fix http://bugs.webkit.org/show_bug.cgi?id=12625
   55813           REGRESSION: Crash when closing the web inspector with text selected
   55814 
   55815         The problem was that selectionRect() was being called on a render tree that
   55816         had pending style changes. The changes were committed as a side effect in
   55817         the middle of traversing the render tree, and the current object got
   55818         deleted as a result. The solution is to update the render tree before
   55819         starting to traverse it.
   55820 
   55821         The inspector was affected because it makes style changes in response to
   55822         an AppKit notification that's sent right before the windowDidResignKey:
   55823         notification, under which WebKit calls selectionRect(). I couldn't recreate
   55824         the same conditions (having uncommitted style changes in the tree when the
   55825         window becomes inactive) using HTML/JS in Safari, hence the lack of
   55826         a regression test to go with this patch.
   55827 
   55828         * rendering/RenderView.cpp:
   55829         (WebCore::RenderView::selectionRect): Added call to updateRendering().
   55830 
   55831 2007-02-15  Mitz Pettel  <mitz (a] webkit.org>
   55832 
   55833         Reviewed by Darin.
   55834 
   55835         - fix http://bugs.webkit.org/show_bug.cgi?id=10127
   55836           REGRESSION: Crash undoing delete in textarea
   55837 
   55838         Document::removeMarkers() was using a Vector iterator (which is just a
   55839         pointer) and inserting into the Vector at the same time, which made the
   55840         iterator invalid as the Vector's data buffer was relocated.
   55841         
   55842         Replaced all instances of Vector<DocumentMarker>::iterator with indices.
   55843 
   55844         * dom/Document.cpp:
   55845         (WebCore::Document::addMarker):
   55846         (WebCore::Document::copyMarkers):
   55847         (WebCore::Document::removeMarkers):
   55848         (WebCore::Document::repaintMarkers):
   55849         (WebCore::Document::shiftMarkers):
   55850 
   55851 2007-02-15  Mitz Pettel  <mitz (a] webkit.org>
   55852 
   55853         Reviewed by Darin.
   55854 
   55855         - http://bugs.webkit.org/show_bug.cgi?id=12777
   55856           REGRESSION (r18574): User profile pages display incorrectly at ebay.ca
   55857 
   55858         Fixes existing layout tests: tables/mozilla/bugs/bug45486.html
   55859                                      tables/mozilla_expected_failures/core/col_span2.html
   55860 
   55861         * rendering/AutoTableLayout.cpp:
   55862         (WebCore::AutoTableLayout::calcEffectiveWidth): Fixed a mismatch between which
   55863         columns count as percentage columns when adding up the total percent and
   55864         which columns count as percentage columns when converting non-percentage
   55865         columns to effectively-percentage.
   55866 
   55867 2007-02-14  Mitz Pettel  <mitz (a] webkit.org>
   55868 
   55869         Reviewed by Sam Weinig!
   55870 
   55871         - fix http://bugs.webkit.org/show_bug.cgi?id=12773
   55872           REGRESSION (r19490): Crash on ipx-server.de
   55873 
   55874         * manual-tests/background-image-change-in-page-cache.html: Added.
   55875         * rendering/RenderBox.cpp:
   55876         (WebCore::RenderBox::imageChanged): Bail out if the object is not in a view,
   55877         which can happen if the document is in the page cache and the same cached
   55878         image used for its background is also being used in another document that
   55879         is currently in view.
   55880 
   55881 2007-02-14  Adam Roben  <aroben (a] apple.com>
   55882 
   55883         Reviewed by Darin.
   55884 
   55885         Fix http://bugs.webkit.org/show_bug.cgi?id=12517
   55886         <rdar://problem/4971227> REGRESSION: Tab order incorrect when input
   55887         inside frame/iframe gets initial focus (12517)
   55888 
   55889         Test: fast/events/frame-programmatic-focus.html
   55890 
   55891         * dom/Element.cpp:
   55892         (WebCore::Element::focus): Call FocusController::setFocusedNode to set
   55893         the focus for the whole page.
   55894         * html/HTMLInputElement.cpp:
   55895         (WebCore::HTMLInputElement::focus): Ditto.
   55896         * html/HTMLTextAreaElement.cpp:
   55897         (WebCore::HTMLTextAreaElement::focus): Ditto.
   55898         * page/EventHandler.cpp:
   55899         (WebCore::EventHandler::handleTextInputEvent): Send the textInput
   55900         event to the same target that was sent the keypress event before it.
   55901         * page/FocusController.cpp:
   55902         (WebCore::FocusController::advanceFocus): Added a FIXME.
   55903         (WebCore::FocusController::setFocusedNode): Added. Sets the focused
   55904         node for a whole page.
   55905         * page/FocusController.h: Added declaration.
   55906         * platform/cf/RetainPtr.h: Removed unused pointer_cast functions.
   55907 
   55908 2007-02-14  Justin Garcia  <justin.garcia (a] apple.com>
   55909 
   55910         Reviewed by adele
   55911         
   55912         <rdar://problem/4976800>
   55913         Outdent combines 2 separate strings on 2 different lines
   55914 
   55915         * editing/IndentOutdentCommand.cpp:
   55916         (WebCore::IndentOutdentCommand::outdentParagraph): Add line breaks
   55917         if removing the indented node causes content before or after it to
   55918         collapse into the same paragraph as its content.
   55919 
   55920 2007-02-14  Justin Garcia  <justin.garcia (a] apple.com>
   55921 
   55922         Reviewed by adele
   55923         
   55924         <rdar://problem/4960120>
   55925         REGRESSION: First Enter key ignored on initial focus of textarea after page load (11967)
   55926         
   55927         We'd insert a newline, but into an empty div.  We need two newlines
   55928         in that case.
   55929 
   55930         * editing/InsertLineBreakCommand.cpp:
   55931         (WebCore::lineBreakExistsAtPosition): Returns true if there is a
   55932         br or a '\n' in text that preserves newlines at the incoming position.
   55933         (WebCore::InsertLineBreakCommand::doApply): Fixed to handle the empty
   55934         block case, the anonymous block case.
   55935 
   55936 2007-02-14  Darin Adler  <darin (a] apple.com>
   55937 
   55938         Reviewed by Hyatt.
   55939 
   55940         - test or http://bugs.webkit.org/show_bug.cgi?id=12417
   55941           <rdar://problem/4990046> REGRESSION: pressing "Return" in a <select>
   55942           box does not submit the form (12697)
   55943 
   55944         Test: fast/forms/select-enter-key.html
   55945 
   55946         * html/HTMLSelectElement.cpp:
   55947         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
   55948         Add code to submit when someone hits the Enter key.
   55949 
   55950 2007-02-14  Anders Carlsson  <acarlsson (a] apple.com>
   55951 
   55952         Reviewed by Darin.
   55953 
   55954         <rdar://problem/4960112>
   55955         http://bugs.webkit.org/show_bug.cgi?id=12417
   55956         REGRESSION: "Are you sure you want to send a form again?" sheet is displayed twice (validator.w3.org)
   55957         
   55958         The problem was that doing a reload would cause the "Cache-Control" HTTP header to be set on the request _after_ the first
   55959         navigation policy delegate callback was called. This would break the request equality check that's used to prevent multiple policy
   55960         delegate callbacks from getting called for the same request. The solution is to set the header as early as possible.
   55961         
   55962         This patch also fixes some bugs in the ResourceRequest equality operator.
   55963         
   55964         * loader/FrameLoader.cpp:
   55965         (WebCore::FrameLoader::reload):
   55966         Set the "Cache-Control" header field on the request here.
   55967         
   55968         * platform/network/FormData.h:
   55969         (WebCore::operator==):
   55970         Short-circuit if the pointers are the same.
   55971         
   55972         * platform/network/ResourceRequest.cpp:
   55973         (WebCore::operator==):
   55974         Check the equality of the objects, not the pointers.
   55975 
   55976 2007-02-14  David Hyatt  <hyatt (a] apple.com>
   55977 
   55978         Move setPlatformData out of FontFallbackListMac.mm and delete the file.  The function was completely
   55979         cross-platform already.
   55980 
   55981         Reviewed by Ada
   55982 
   55983         * WebCore.xcodeproj/project.pbxproj:
   55984         * platform/FontFallbackList.cpp:
   55985         (WebCore::FontFallbackList::setPlatformFont):
   55986 
   55987 2007-02-14  David Hyatt  <hyatt (a] apple.com>
   55988 
   55989         Make the Font constructor that takes a FontPlatformData cross-platform, since the implementation was already
   55990         completely cross-platform.
   55991 
   55992         Reviewed by Ada
   55993 
   55994         * platform/Font.cpp:
   55995         (WebCore::Font::Font):
   55996         * platform/Font.h:
   55997         * platform/mac/FontMac.mm:
   55998 
   55999 2007-02-14  Antti Koivisto  <antti (a] apple.com>
   56000 
   56001         Reverting http://bugs.webkit.org/show_bug.cgi?id=11974, it causes repainting problems in some cases.
   56002 
   56003         * rendering/RenderTextControl.h:
   56004         (WebCore::RenderTextControl::avoidsFloats):
   56005 
   56006 2007-02-14  Antti Koivisto  <antti (a] apple.com>
   56007 
   56008         Reviewed by Maciej.
   56009         
   56010         - fix http://bugs.webkit.org/show_bug.cgi?id=11974
   56011         REGRESSION: Caret drawn over input when smaller than font size on initial focus
   56012         <rdar://problem/4960258>
   56013         
   56014         Set controlClip for non-search text controls.
   56015 
   56016         * rendering/RenderTextControl.h:
   56017         (WebCore::RenderTextControl::hasControlClip):
   56018 
   56019 2007-02-14  Mitz Pettel  <mitz (a] webkit.org>
   56020 
   56021         Reviewed by Hyatt.
   56022 
   56023         - fix http://bugs.webkit.org/show_bug.cgi?id=12726
   56024           REGRESSION (r12073): Text wraps in the middle of a word instead of wrapping at the space before the word
   56025 
   56026         Test: fast/text/break-word.html
   56027 
   56028         The wrapW variable used to keep track of the width of the characters scanned
   56029         so far by adding up the widths of individual characters. Because of the
   56030         rounding hack, the total ended up being bigger than the width of the same characters
   56031         when measured together as a single run.
   56032 
   56033         The fix is to use wrapW only as an upper bound, and once it overflows the line's width,
   56034         fall back on measuring everything from the beginning of the line as one run.
   56035 
   56036         * rendering/bidi.cpp:
   56037         (WebCore::RenderBlock::findNextLineBreak): Implemented the above fix, including not measuring
   56038         additional single characters once wrapW overflows the line. Also moved the assignment
   56039         to breakNBSP out of the loop since it is constant for the entire text object, made breakWords and
   56040         midWordBreak update only when they might change, and cleaned up a few things.
   56041 
   56042 2007-02-14  Antti Koivisto  <antti (a] apple.com>
   56043 
   56044         Reviewed by Hyatt.
   56045 
   56046         - fix http://bugs.webkit.org/show_bug.cgi?id=11923
   56047         REGRESSION: Placeholder text in password field shows as bullets
   56048         <rdar://problem/4960257> 
   56049         
   56050         Disable textSecurity when placeholder is visible.
   56051         
   56052         * rendering/RenderTextControl.cpp:
   56053         (WebCore::RenderTextControl::updatePlaceholder):
   56054 
   56055 2007-02-13  Alexey Proskuryakov  <ap (a] webkit.org>
   56056 
   56057         Reviewed by Mark Rowe.
   56058 
   56059         http://bugs.webkit.org/show_bug.cgi?id=12763
   56060         REGRESSION: button title is displayed incorrectly at quotes.burntelectrons.org
   56061 
   56062         Test: fast/parser/entities-in-attributes.xhtml
   56063 
   56064         * dom/XMLTokenizer.cpp:
   56065         (WebCore::getEntityHandler): Set a correct type for the found entity (I'm not really
   56066         sure if XML_INTERNAL_GENERAL_ENTITY is _the_ correct one, but it fixes the problem).
   56067 
   56068 2007-02-13  Darin Adler  <darin (a] apple.com>
   56069 
   56070         Reviewed by Hyatt.
   56071 
   56072         - removed some bogus names (Hyatt smacked me since this doesn't fix a P1)
   56073 
   56074         * dom/EventNames.h: Removed half-implemented khtmlDragdrop and khtmlMove
   56075         (you could add listeners, but nobody ever sent the events). Renamed the
   56076         other two khtml-prefixed internal event names to use the webkit prefix.
   56077 
   56078         * bindings/js/kjs_dom.cpp:
   56079         (KJS::DOMEventTargetNode::getValueProperty): Removed ondragdrop and onmove.
   56080         (KJS::DOMEventTargetNode::putValueProperty): Ditto.
   56081         * bindings/js/kjs_dom.h:
   56082         * bindings/js/kjs_window.cpp:
   56083         (KJS::Window::getValueProperty): Ditto.
   56084         (KJS::Window::put): Ditto.
   56085         * bindings/js/kjs_window.h:
   56086 
   56087         * dom/BeforeTextInsertedEvent.cpp:
   56088         (WebCore::BeforeTextInsertedEvent::BeforeTextInsertedEvent): Renamed to webkit.
   56089         * editing/Editor.cpp:
   56090         (WebCore::dispatchEditableContentChangedEvents): Ditto.
   56091         * editing/ReplaceSelectionCommand.cpp:
   56092         (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
   56093         * html/HTMLTextFieldInnerElement.cpp:
   56094         (WebCore::HTMLTextFieldInnerTextElement::defaultEventHandler): Ditto.
   56095 
   56096 2007-02-13  Darin Adler  <darin (a] apple.com>
   56097 
   56098         Rubber stamped by Maciej.
   56099 
   56100         * dom/EventNames.h: Resort names. Removed unused names.
   56101 
   56102 2007-02-13  Anders Carlsson  <acarlsson (a] apple.com>
   56103 
   56104         Reviewed by Kevin Decker.
   56105 
   56106         <rdar://problem/4990049> 
   56107         http://bugs.webkit.org/show_bug.cgi?id=12718
   56108         REGRESSION: Segmentation fault when loading abc.go.com (12718)
   56109 
   56110         The problem is that redirecting to about:blank causes the delegate to be released even though the load wasn't finished.
   56111         This is usally not a problem since NSURLConnection retains its delegate. However, the proxy delegate does not retain _it's_ 
   56112         delegate. The solution is to make releaseDelegate clear out the proxy delegate's delegate.
   56113         
   56114         * platform/network/mac/ResourceHandleMac.mm:
   56115         (WebCore::ResourceHandle::releaseDelegate):
   56116         If there's a proxy, nil out its delegate too.
   56117 
   56118 2007-02-13  Matt Perry  <mpcomplete (a] chromium.org>
   56119 
   56120         Reviewed by Darin.
   56121 
   56122         - fix for http://bugs.webkit.org/show_bug.cgi?id=12750
   56123           Vector operator== was not defined correctly. It returned void,
   56124           did not accept const Vectors, and used an int instead of size_t. 
   56125 
   56126         * rendering/RenderStyle.h: Added a != operator for StyleDashboardRegion.
   56127         The only reason this compiled before was that the comparing two vectors
   56128         with a != was simply comparing the pointers.
   56129 
   56130 2007-02-13  Darin Adler  <darin (a] apple.com>
   56131 
   56132         - roll out fix for <rdar://problem/4874059> REGRESSION: Painter IX:register -
   56133           Crash in WebCore:: ResourceLoader::willSendRequest()
   56134 
   56135         This fix was causing a crash in at least one layout test.
   56136 
   56137         * loader/FrameLoader.cpp:
   56138         (WebCore::FrameLoader::stopAllLoaders):
   56139         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
   56140 
   56141 2007-02-13  Mitz Pettel  <mitz (a] webkit.org>
   56142 
   56143         Reviewed by Hyatt.
   56144 
   56145         - fix http://bugs.webkit.org/show_bug.cgi?id=12746
   56146         REGRESSION (r13853): List item's first line overflows containing div
   56147 
   56148         Test: fast/lists/item-not-in-list-line-wrapping.html
   56149 
   56150         * rendering/bidi.cpp:
   56151         (WebCore::RenderBlock::findNextLineBreak): Use the list marker's isInside()
   56152         instead of looking at its style()->listStylePosition(), since if the
   56153         list item is not in a list, the marker is inside regardless of the style.
   56154 
   56155 2007-02-13  Rob Buis  <buis (a] kde.org>
   56156 
   56157         Reviewed by Maciej.
   56158 
   56159         http://bugs.webkit.org/show_bug.cgi?id=12578
   56160         WebKit incorrectly strokes zero-width/height rectangles
   56161 
   56162         Create an empty path when encountering zero-width/height rectangles, similar to circles with zero radius.
   56163 
   56164         * platform/graphics/Path.cpp:
   56165         (WebCore::Path::createRectangle):
   56166 
   56167 2007-02-13  Rob Buis  <buis (a] kde.org>
   56168 
   56169         Reviewed by Maciej.
   56170 
   56171         Remove SVGDOMImplementation from the project.
   56172 
   56173         * CMakeLists.txt:
   56174         * WebCore.pro:
   56175         * ksvg2/svg/SVGDOMImplementation.cpp: Removed.
   56176         * ksvg2/svg/SVGDOMImplementation.h: Removed.
   56177 
   56178 2007-02-13  Brady Eidson <beidson (a] apple.com>
   56179 
   56180         Reviewed by Maciej and Adam
   56181 
   56182         Fixes <rdar://problem/4985497> - Crash when opening a new window to "Same Page"
   56183 
   56184         * loader/FrameLoader.cpp:
   56185         (WebCore::FrameLoader::loadItem): Null check documentLoader() since if we're a brand new 
   56186           WebView, cloning the history of another view, we have no documentLoader()
   56187 
   56188 2007-02-12  Antti Koivisto  <antti (a] apple.com>
   56189 
   56190         Reviewed by Maciej.
   56191 
   56192         -fix REGRESSION: <select disabled size="5"> listbox cannot be scrolled
   56193         http://bugs.webkit.org/show_bug.cgi?id=11852
   56194         <rdar://problem/4960129>
   56195         
   56196         Pass mouse press events to scrollbars even if event is swallowed.
   56197         
   56198         No layout test, DumpRenderTree eventSender can't hit scrollbars.
   56199 
   56200         * page/EventHandler.cpp:
   56201         (WebCore::EventHandler::handleMousePressEvent):
   56202 
   56203 2007-02-12  David Hyatt  <hyatt (a] apple.com>
   56204 
   56205         Fix for bug 12149 (Radar Bug#4928692), external CSS causes incomplete
   56206         text field focus.
   56207 
   56208         Make sure to clear out the focus node in willRemove() rather than in
   56209         detach(), since detach/attach caused by style recalc should not affect
   56210         the focused node.
   56211 
   56212         Reviewed by aroben
   56213 
   56214         * dom/ContainerNode.cpp:
   56215         (WebCore::ContainerNode::willRemove):
   56216         * dom/Document.cpp:
   56217         (WebCore::Document::focusedNodeRemoved):
   56218         (WebCore::Document::setFocusedNode):
   56219         * dom/Document.h:
   56220         * dom/Element.cpp:
   56221         (WebCore::Element::updateFocusAppearance):
   56222         * dom/Node.cpp:
   56223         (WebCore::Node::willRemove):
   56224         (WebCore::Node::detach):
   56225         * html/HTMLInputElement.cpp:
   56226         (WebCore::HTMLInputElement::updateFocusAppearance):
   56227 
   56228 2007-02-12  Kevin McCullough  <kmccullough (a] apple.com>
   56229 
   56230         - reverting fix for rdar://problem/4922454 because it caused regressions
   56231           and performance problems
   56232 
   56233         * bindings/objc/DOM.mm:
   56234         (-[DOMElement image]):
   56235         (-[DOMElement _imageTIFFRepresentation]):
   56236         * dom/XMLTokenizer.cpp:
   56237         (WebCore::XMLTokenizer::notifyFinished):
   56238         * html/HTMLImageLoader.cpp:
   56239         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   56240         * html/HTMLTokenizer.cpp:
   56241         (WebCore::HTMLTokenizer::reset):
   56242         (WebCore::HTMLTokenizer::notifyFinished):
   56243         * ksvg2/misc/SVGImageLoader.cpp:
   56244         (WebCore::SVGImageLoader::dispatchLoadEvent):
   56245         * loader/Cache.cpp:
   56246         (WebCore::Cache::requestResource):
   56247         (WebCore::Cache::remove):
   56248         * loader/CachedImage.h:
   56249         (WebCore::CachedImage::canRender):
   56250         (WebCore::CachedImage::isErrorImage):
   56251         * loader/CachedResource.h:
   56252         * loader/CachedScript.h:
   56253         (WebCore::CachedScript::errorOccurred):
   56254         * loader/DocLoader.cpp:
   56255         (WebCore::DocLoader::requestResource):
   56256         (WebCore::DocLoader::setLoadInProgress):
   56257         * loader/FrameLoader.cpp:
   56258         (WebCore::FrameLoader::canLoad):
   56259         * page/EventHandler.cpp:
   56260         (WebCore::selectCursor):
   56261         * rendering/HitTestResult.cpp:
   56262         (WebCore::HitTestResult::image):
   56263         * rendering/RenderImage.cpp:
   56264         (WebCore::RenderImage::setCachedImage):
   56265         (WebCore::RenderImage::imageChanged):
   56266         (WebCore::RenderImage::paint):
   56267         (WebCore::RenderImage::layout):
   56268         (WebCore::RenderImage::calcAspectRatioWidth):
   56269         (WebCore::RenderImage::calcAspectRatioHeight):
   56270         * rendering/RenderImage.h:
   56271         (WebCore::RenderImage::isErrorImage):
   56272         * rendering/RenderListItem.cpp:
   56273         (WebCore::RenderListItem::setStyle):
   56274         * rendering/RenderListMarker.cpp:
   56275         (WebCore::RenderListMarker::isImage):
   56276 
   56277 2007-02-12  Mitz Pettel  <mitz (a] webkit.org>
   56278 
   56279         Reviewed by Dave Hyatt.
   56280 
   56281         - fix http://bugs.webkit.org/show_bug.cgi?id=12123
   56282           REGRESSION: Incomplete repaint of floats' overflows
   56283 
   56284         Tests: fast/repaint/float-overflow.html
   56285                fast/repaint/float-overflow-right.html
   56286 
   56287         - fix http://bugs.webkit.org/show_bug.cgi?id=10116
   56288           REGRESSION: Menu item drawn 2 pixels short on WWDC 2006 Attendee Site
   56289 
   56290         Reflected in existing test results.
   56291 
   56292         Unified floats and overflow for the purposes of painting and hit-testing.
   56293         Overhanging and overflowing floats are now factored into a block's overflow
   56294         unless their painting has been propagated to an ancestor.
   56295 
   56296         Changed table cells to no longer expand to enclose overflow, thus making
   56297         it purely "visual overflow", having no effect on layout in WebCore. It
   56298         still determines scrolling dimensions.
   56299 
   56300         * rendering/InlineFlowBox.cpp:
   56301         (WebCore::InlineFlowBox::placeBoxesHorizontally): Include inline blocks'
   56302         horizontal overflow in the inline box's dimensions.
   56303         * rendering/RenderBlock.cpp:
   56304         (WebCore::RenderBlock::layoutBlock): Removed the expand to enclose overflows
   56305         behavior. Added code to add this block's floats (and their overflow) to its
   56306         overflow rect if it is not in a block formatting context. Otherwise, the
   56307         inclusion of floats in the overflow is deferred until this block's parent
   56308         examines its floats and possibly adopts overhanging floats.
   56309         (WebCore::RenderBlock::layoutBlockChildren):
   56310         (WebCore::RenderBlock::paint): 
   56311         (WebCore::RenderBlock::floatRect): Changed to return an empty rect if there
   56312         are no floats or the floats are clipped, instead of returning the border box.
   56313         (WebCore::RenderBlock::addOverhangingFloats): Any floats of the child that
   56314         are not to be painted by the parent are added to the child's overflow rect.
   56315         (WebCore::RenderBlock::addVisualOverflow): Added. Adjusts the overflow
   56316         bounds to include the given rect.
   56317         (WebCore::RenderBlock::nodeAtPoint):
   56318         * rendering/RenderBlock.h:
   56319         * rendering/RenderFlexibleBox.cpp:
   56320         (WebCore::RenderFlexibleBox::layoutBlock): 
   56321         (WebCore::RenderFlexibleBox::layoutHorizontalBox): After placing a normal
   56322         child, add its floats to its overflow, since painting of floats does not
   56323         propagate to flexible boxes. 
   56324         (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto.
   56325         * rendering/RenderForeignObject.cpp:
   56326         (WebCore::RenderForeignObject::layout):
   56327         * rendering/RenderHTMLCanvas.cpp:
   56328         (WebCore::RenderHTMLCanvas::layout):
   56329         * rendering/RenderImage.cpp:
   56330         (WebCore::RenderImage::layout):
   56331         * rendering/RenderLayer.cpp:
   56332         (WebCore::RenderLayer::updateLayerPositions):
   56333         (WebCore::RenderLayer::absoluteBoundingBox):
   56334         * rendering/RenderLayer.h:
   56335         * rendering/RenderObject.cpp:
   56336         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   56337         * rendering/RenderObject.h:
   56338         (WebCore::RenderObject::expandsToEncloseOverhangingFloats):
   56339         * rendering/RenderPath.cpp:
   56340         (WebCore::RenderPath::layout):
   56341         * rendering/RenderSVGContainer.cpp:
   56342         (WebCore::RenderSVGContainer::layout):
   56343         * rendering/RenderSVGText.cpp:
   56344         (WebCore::RenderSVGText::layout):
   56345         * rendering/RenderTable.cpp:
   56346         (WebCore::RenderTable::layout):
   56347         * rendering/RenderTableCell.h:
   56348         (WebCore::RenderTableCell::expandsToEncloseOverhangingFloats):
   56349 
   56350 2007-02-12  Darin Adler  <darin (a] apple.com>
   56351 
   56352         Reviewed by Hyatt.
   56353 
   56354         - fix http://bugs.webkit.org/show_bug.cgi?id=12668
   56355           <rdar://problem/4893344> REGRESSION: underline not visible for the international
   56356           input inline hole in most text fields (12668)
   56357 
   56358         - fix bug where overline and line-through were 1px lower than we intended
   56359 
   56360         * platform/graphics/GraphicsContext.h: Removed unneeded y offset parameter.
   56361         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   56362         (WebCore::GraphicsContext::drawLineForText): Removed bogus y offset and +1.
   56363         * platform/graphics/cg/GraphicsContextCG.cpp:
   56364         (WebCore::GraphicsContext::drawLineForText): Ditto.
   56365         * platform/graphics/qt/GraphicsContextQt.cpp:
   56366         (WebCore::GraphicsContext::drawLineForText): Ditto.
   56367 
   56368         * rendering/InlineFlowBox.cpp:
   56369         (WebCore::InlineFlowBox::paintTextDecorations): Added the "+1" that used to be
   56370         inside drawLineForText to the underline-drawing code. Changed the other callers
   56371         of drawLineForText to include the y offset in the y coordinate.
   56372         * rendering/InlineTextBox.cpp:
   56373         (WebCore::InlineTextBox::paintDecoration): Ditto. Also renamed _tx and _ty to
   56374         remove the gratuitious underscores.
   56375         (WebCore::InlineTextBox::paintMarkedTextUnderline): Made the default thickness
   56376         be 1px instead of 0 (which ends up being roughly 1px in the CG code path anyway).
   56377         Fixed the code computing the position to put the underline at the bottom of the
   56378         line (different from regular underlines which are put 1px under the baseline).
   56379         The old code used to put the underline 1px further down in the thick case, and
   56380         2px further down in the non-thick case. Both of those are bad, because they
   56381         could be completely clipped out in many cases.
   56382 
   56383 2007-02-12  Anders Carlsson  <acarlsson (a] apple.com>
   56384 
   56385         Reviewed by Darin.
   56386 
   56387         <rdar://problem/4846962>
   56388         Aperture: Aperture 1.5 - DOM exception occurs when exporting a web gallery
   56389 
   56390         * dom/ContainerNode.cpp:
   56391         (WebCore::ContainerNode::replaceChild):
   56392         Call checkReplaceChild here.
   56393         
   56394         * dom/Document.cpp:
   56395         (WebCore::Document::canReplaceChild):
   56396         * dom/Document.h:
   56397         Add implementation of canReplaceChild that makes sure that doing the replacement won't cause
   56398         more than one element and document type node to end up in the document.
   56399         
   56400         * dom/Node.cpp:
   56401         (WebCore::Node::canReplaceChild):
   56402         Base implementation of canReplaceChild.
   56403         
   56404         (WebCore::Node::checkReplaceChild):
   56405         New function that does what checAddChild does but calls canReplaceChild.
   56406         
   56407 2007-02-12  Kevin Decker <kdecker (a] apple.com>
   56408 
   56409         Reviewed by Anders.
   56410 
   56411         Fixed: <rdar://problem/4874059> REGRESSION: Painter IX:register - Crash in WebCore:: ResourceLoader::willSendRequest()
   56412         
   56413         What happened here was that a WebDataSource was being dealloced *while* a load for that resource is still in progress. 
   56414 
   56415         * loader/FrameLoader.cpp:
   56416         (WebCore::FrameLoader::stopAllLoaders): Calling stopAllLoaders cancels loads and informs the frame load delegate accordingly.
   56417         The delegate however may decide to kick off a new provisional load as the result of the cancel. Therefore a local variable 
   56418         for the provisional and main doucment loader is introduced, and we now only nil out the provisional loader if the local and
   56419         member provisional variables represent the exact same load.
   56420         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Added the same check here, too.
   56421 
   56422 2007-02-12  Lars Knoll  <lars (a] trolltech.com>
   56423 
   56424         Reviewed by Mitz.
   56425 
   56426         Do not create child renderers for table column groups
   56427         if the child has not a table column display type.
   56428 
   56429         * dom/Node.cpp:
   56430         (WebCore::Node::createRendererIfNeeded):
   56431         * rendering/RenderObject.h:
   56432         (WebCore::RenderObject::isChildAllowed):
   56433         * rendering/RenderTableCol.cpp:
   56434         (WebCore::RenderTableCol::isChildAllowed):
   56435         * rendering/RenderTableCol.h:
   56436 
   56437 2007-02-12  Antti Koivisto  <antti (a] apple.com>
   56438 
   56439         Reviewed by Mitz
   56440 
   56441         Fix assertion failure in layout test.
   56442 
   56443         * html/HTMLMapElement.cpp:
   56444         (WebCore::HTMLMapElement::parseMappedAttribute):
   56445 
   56446 2007-02-12  Kevin McCulough  <kmccullough (a] apple.com>
   56447 
   56448         Reviewed by Brady.
   56449 
   56450         - Fixing a performance regression caused by r19500.  The heart of the matter
   56451         is that we now call canLoad on every resource request even ones in the cache,
   56452         to avoid a security issue. So I could not take out the canLoad call, but I
   56453         but I could try to make it more efficient.
   56454 
   56455         * loader/DocLoader.cpp:
   56456         (WebCore::DocLoader::requestResource):
   56457         (WebCore::DocLoader::setLoadInProgress):
   56458         * loader/FrameLoader.cpp:
   56459         (WebCore::FrameLoader::canLoad):
   56460 
   56461 2007-02-12  Darin Adler  <darin (a] apple.com>
   56462 
   56463         Reviewed by Oliver.
   56464 
   56465         - fix http://bugs.webkit.org/show_bug.cgi?id=12677
   56466           <rdar://problem/4759563> REGRESSION: Return key is always sent when you confirm
   56467           a clause in kotoeri (12677)
   56468 
   56469         - fix http://bugs.webkit.org/show_bug.cgi?id=12596
   56470           <rdar://problem/4794346> REGRESSION: Tab key shifts form field focus instead of
   56471           navigating prediction window (12596)
   56472 
   56473         - fix http://bugs.webkit.org/show_bug.cgi?id=10010
   56474           <rdar://problem/4822935> REGRESSION: Pressing Return with unconfirmed text in
   56475           Hangul inserts carriage return (10010)
   56476 
   56477         - fix http://bugs.webkit.org/show_bug.cgi?id=12531
   56478           <rdar://problem/4975126> REGRESSION: Inline text input types repeated keys in
   56479           latest nightly (r19336) (12531)
   56480 
   56481         - fix http://bugs.webkit.org/show_bug.cgi?id=12539
   56482           <rdar://problem/4975130> REGRESSION: Pressing Backspace while in inline input
   56483           area moves to the previous page in history (12539)
   56484 
   56485         This area still needs work because keypress events are being sent for all the
   56486         events before they go to the input methods, and it seems that this is not
   56487         compatible with what other browsers do and with what sites assume. That's covered
   56488         by this bug:
   56489 
   56490             http://bugs.webkit.org/show_bug.cgi?id=10871
   56491             <rdar://problem/4823129> REGRESSION: IME key events different in nightly (10871)
   56492 
   56493         which is still open.
   56494 
   56495         * bindings/objc/ExceptionHandlers.h: Remove selectRange helper that doesn't really
   56496         belong here, and also isn't needed since the callers don't want to raise ObjC
   56497         exceptions.
   56498         * bindings/objc/ExceptionHandlers.mm: Ditto. Also removed unneeded external globals
   56499         that aren't exported anyway and unneeded includes.
   56500 
   56501         * bridge/EditorClient.h: Added Mac-specific function, markedTextAbandoned. Long term
   56502         this might move into platform instead, but it's fine to have it on the client for now
   56503         as long as it doesn't cause trouble for platforms other than Mac.
   56504 
   56505         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::defaultEventHandler): Since
   56506         all the event handling code in this function is intended to run on the node itself,
   56507         not parent nodes, check and do nothing if this event is bubbling up from another
   56508         node. Added code to call a function on EventHandler for default handling of text
   56509         input events.
   56510 
   56511         * dom/KeyboardEvent.h:
   56512         * dom/KeyboardEvent.cpp: (WebCore::findKeyboardEvent): Added. Just like the
   56513         findUIEventWithKeyState function, but specific to keyboard events.
   56514 
   56515         * dom/TextEvent.h: Added isLineBreak and isBackTab flags so that we can carry
   56516         additional information about what a text input event is trying to do, but still
   56517         go through the DOM event machinery.
   56518         * dom/TextEvent.cpp: Ditto.
   56519 
   56520         * editing/Editor.h:
   56521         * editing/Editor.cpp:
   56522         (WebCore::Editor::handleKeyPress): Removed unneeded check of isCaretOrRange, since
   56523         isContentEditable already checks that.
   56524         (WebCore::Editor::canEdit): Ditto.
   56525         (WebCore::Editor::canEditRichly): Ditto.
   56526         (WebCore::Editor::canPaste): Changed to call canEdit for brevity.
   56527         (WebCore::Editor::replaceSelectionWithText): Changed to take a const String&.
   56528         (WebCore::Editor::shouldInsertText): Ditto.
   56529         (WebCore::hasEditableSelection): Removed unneeded check of isCaretOrRange, since
   56530         isContentEditable already checks that.
   56531         (WebCore::Editor::Editor): Initialize the new m_ignoreMarkedTextSelectionChange
   56532         flag. Moved here from WebHTMLView.
   56533         (WebCore::Editor::insertText): Moved most of the code from -[WebHTMLView insertText:]
   56534         here, since this needs to be done in response to a text input event and we don't want
   56535         to go back over the WebKit side for that.
   56536         (WebCore::Editor::insertLineBreak): Added. Moved here from -[WebHTMLView insertLineBreak:]
   56537         for the same reason -- needs to be done in response to text input events.
   56538         (WebCore::Editor::insertParagraphSeparator): Ditto.
   56539         (WebCore::Editor::selectMarkedText): Added. Used by insertText.
   56540         (WebCore::Editor::discardMarkedText): Added. Used by insertText.
   56541         (WebCore::Editor::unmarkText): Added. Used by insertText.
   56542         * editing/mac/EditorMac.mm:
   56543         (WebCore::Editor::unmarkText): Added. Used by insertText.
   56544 
   56545         * html/HTMLInputElement.cpp:
   56546         (WebCore::HTMLInputElement::canHaveSelection): Changed to use isTextField to avoid repeating
   56547         the switch statement.
   56548         (WebCore::HTMLInputElement::selectionStart): Ditto.
   56549         (WebCore::HTMLInputElement::selectionEnd): Ditto.
   56550         (WebCore::HTMLInputElement::setSelectionStart): Ditto.
   56551         (WebCore::HTMLInputElement::setSelectionEnd): Ditto.
   56552         (WebCore::HTMLInputElement::select): Ditto.
   56553         (WebCore::HTMLInputElement::setSelectionRange): Ditto.
   56554         (WebCore::HTMLInputElement::createRenderer): Resorted cases alphaebtically.
   56555         (WebCore::HTMLInputElement::defaultEventHandler): Added code to make hitting return cause the
   56556         form to be submitted when it comes through as a text input event. This is now the normal case
   56557         on Macintosh, because enter key presses normally turn into this. In addition, change the other
   56558         event handling to run only after trying the base defaultEventHandler. That makes the key
   56559         handling done in EventTargetNode take precedence over the event handling here for editable text
   56560         fields, which is what we want. This gets rid of the need for the hack where we check
   56561         inputManagerHasMarkedText and suppress the handling of the enter key.
   56562 
   56563         * page/EventHandler.h: Removed unneeded includes. Moved EventHandlerDragState down into the
   56564         private part of the class. Changed sendContextMenuEvent to take a const&. Added new
   56565         handleTextInputEvent and defaultTextInputEventHandler functions. Made eventLoopHandleMouseUp
   56566         and eventLoopHandleMouseDragged private. Added private defaultTabEventHandler function.
   56567         * page/EventHandler.cpp:
   56568         (WebCore::EventHandler::sendContextMenuEvent): Changed parameter to be a const&.
   56569         (WebCore::EventHandler::defaultKeyboardEventHandler): Rearranged things so that the key bindings
   56570         handling in handleKeyPress comes before special tab event handling. In cases where the tab turns
   56571         into text to insert, we now handle it in the text input event handler.
   56572         (WebCore::EventHandler::handleTextInputEvent): Added. Creates and dispatches a text input event.
   56573         (WebCore::EventHandler::defaultTextInputEventHandler): Added. Inserts text, but has special cases
   56574         for the tab and newline character cases.
   56575         (WebCore::EventHandler::defaultTabEventHandler): Added. Shared by the tab-handling code in
   56576         the keyboard event and text input event handlers.
   56577         * page/mac/EventHandlerMac.mm: Tweak formatting, remove some unused functions.
   56578 
   56579         * page/FocusController.h: Removed unnneded includes and forwards, and added an overload of
   56580         advanceFocus that takes a FocusDirection parameter.
   56581         * page/FocusController.cpp: (WebCore::FocusController::advanceFocus): Changed to allow a 0 for
   56582         the event pointer. Also added a version where the direction is passed explicitly, to be used
   56583         for cases where we want to tab backward even if the event doesn't have a shift modifier key set.
   56584 
   56585         * platform/graphics/svg/SVGImageEmptyClients.h: Updated for change to EditorClient.
   56586         This should really probably just use 0 for the EditorClient.
   56587 
   56588         * WebCore.exp: Update both for newly used and no-longer-used entry points.
   56589 
   56590         * page/mac/WebCoreFrameBridge.h:
   56591         * page/mac/WebCoreFrameBridge.mm: Removed two unused methods.
   56592 
   56593 2007-02-12  Antti Koivisto  <antti (a] apple.com>
   56594 
   56595         Reviewed by Darin.
   56596 
   56597         - fixed Imagemap not clickable in www.toptenbooks.net/
   56598         http://bugs.webkit.org/show_bug.cgi?id=12738
   56599         
   56600         Make imagemap names case insensitive in HTML mode
   56601 
   56602         * dom/Document.cpp:
   56603         (WebCore::Document::getImageMap):
   56604         * html/HTMLMapElement.cpp:
   56605         (WebCore::HTMLMapElement::parseMappedAttribute):
   56606 
   56607 2007-02-12  Maciej Stachowiak  <mjs (a] apple.com>
   56608 
   56609         Reviewed by Antti.
   56610 
   56611         - fixed <rdar://problem/4928675> REGRESSION: Crash in CGBlt_copyBytes under WebCore::Font::drawGlyphs (12083)
   56612         http://bugs.webkit.org/show_bug.cgi?id=12083
   56613         
   56614         Test: fast/text/text-shadow-extreme-value.html
   56615 
   56616         * platform/graphics/cg/GraphicsContextCG.cpp:
   56617         (WebCore::GraphicsContext::setShadow): Clamp shadow value to 1000px, anything more seems to 
   56618         make CG unhappy.
   56619 
   56620 2007-02-11  Brady Eidson <beidson (a] apple.com>
   56621 
   56622         Reviewed by Maciej.
   56623 
   56624         First in what will be a series of HistoryItem enhancements to help debugging
   56625 
   56626         * history/HistoryItem.cpp:
   56627         (WebCore::HistoryItem::showTree):
   56628         (WebCore::HistoryItem::showTreeWithIndent):
   56629         (showTree): Outside of WebCore namespace, and extern "C" - to make even the 
   56630           DWARF debugger able to find it...  *sigh* 
   56631         * history/HistoryItem.h:
   56632 
   56633 2007-02-11  Eric Seidel  <eric (a] webkit.org>
   56634 
   56635         Reviewed by Anders.
   56636 
   56637         - fixed <rdar://problem/4975133> ASSERT failure and crash right-clicking on image in SVG use test
   56638         http://bugs.webkit.org/show_bug.cgi?id=12580
   56639         
   56640         Test: svg/cust/use-events-crash.svg
   56641 
   56642         * bindings/js/kjs_dom.cpp:
   56643         (KJS::toJS):
   56644         * ksvg2/svg/SVGElementInstance.cpp:
   56645         (WebCore::SVGElementInstance::toNode):
   56646         * ksvg2/svg/SVGElementInstance.h:
   56647 
   56648 2007-02-11  Mitz Pettel  <mitz (a] webkit.org>
   56649 
   56650         Reviewed by Maciej.
   56651 
   56652         - fix http://bugs.webkit.org/show_bug.cgi?id=10144
   56653           REGRESSION: Reproducible assertion failure in DeleteSelectionCommand::fixupWhitespace()
   56654 
   56655         Test: fast/text/delete-hard-break-character.html
   56656 
   56657         The bug was caused by not updating a line whose line break object and offset
   56658         has been deleted. When deleting text, all lines containing the deleted text
   56659         are marked dirty. However, if the first character being deleted is a newline
   56660         which serves as a hard line break for the previous line, then that line will
   56661         not be marked, and since it will be a clean line ending with a line break,
   56662         relayout will begin at the next line. The fix is to check for this when
   56663         determining where to relayout from. 
   56664 
   56665         * rendering/bidi.cpp:
   56666         (WebCore::RenderBlock::determineStartPosition): Changed the condition for
   56667         including the last clean line in relayout to include the case where the
   56668         last clean line ends with a line break, but that line break is a newline that
   56669         has been deleted.
   56670 
   56671 2007-02-12  Antti Koivisto  <antti (a] apple.com>
   56672 
   56673         Reviewed by Maciej.
   56674         
   56675         REGRESSION: Google Calendar cell highlight misplaced
   56676         http://bugs.webkit.org/show_bug.cgi?id=12687
   56677         
   56678         Make offsetLeft/offsetTop/offsetParent behavior match Firefox.
   56679 
   56680         * rendering/RenderObject.cpp:
   56681         (WebCore::RenderObject::offsetLeft):
   56682         (WebCore::RenderObject::offsetTop):
   56683         (WebCore::RenderObject::offsetParent):
   56684 
   56685 2007-02-10  Antti Koivisto  <antti (a] apple.com>
   56686 
   56687         Reviewed by Maciej.
   56688 
   56689         - fixed REGRESSION: No day/week scrollbar in Google Calendar
   56690         http://bugs.webkit.org/show_bug.cgi?id=11985
   56691 
   56692         Make sure overflow:auto scrollbars are always enabled. If they were overflow:scroll
   56693         and dynamically changed to auto they might still be disabled.
   56694 
   56695         * rendering/RenderLayer.cpp:
   56696         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   56697 
   56698 2007-02-11  Alexey Proskuryakov  <ap (a] webkit.org>
   56699 
   56700         Reviewed by Hyatt.
   56701 
   56702         http://bugs.webkit.org/show_bug.cgi?id=12581
   56703         XPath //title shouldn't match <title> in XHTML
   56704 
   56705         Test: fast/xpath/ensure-null-namespace.xhtml
   56706 
   56707         * xml/XPathStep.cpp:
   56708         (WebCore::XPath::Step::nodeTestMatches): Only let a null namespace match any for HTML.
   56709 
   56710 2007-02-10  Alexey Proskuryakov  <ap (a] webkit.org>
   56711 
   56712         Reviewed by Adam.
   56713 
   56714         http://bugs.webkit.org/show_bug.cgi?id=12701
   56715         REGRESSION: After javascript, onChange not triggered when selecting same option
   56716 
   56717         * html/HTMLSelectElement.cpp:
   56718         (WebCore::HTMLSelectElement::setSelectedIndex): Remember m_lastOnChangeIndex value,
   56719         as it can change from setSelected() now.
   56720         (WebCore::HTMLSelectElement::notifyOptionSelected): Update m_lastOnChangeIndex.
   56721 
   56722         * manual-tests/select-onchange-after-js.html: Added. Also tests for bug 11402.
   56723 
   56724 2007-02-10  David Carson  <dacarson (a] gmail.com>`
   56725 
   56726         Reviewed by Maciej.
   56727 
   56728         Manual tests for http://bugs.webkit.org/show_bug.cgi?id=12636
   56729         Call different Java methods that take a variety of Array parameters
   56730         from Javascript, passing a Javascript array.
   56731 
   56732         * manual-tests/liveconnect-applet-array-parameters.html: Added.
   56733         * manual-tests/resources/ArrayParameterTestApplet.class: Added.
   56734         * manual-tests/resources/ArrayParameterTestApplet.java: Added.
   56735 
   56736 2007-02-10  Alexey Proskuryakov  <ap (a] webkit.org>
   56737 
   56738         Reviewed by Maciej.
   56739 
   56740         http://bugs.webkit.org/show_bug.cgi?id=12724
   56741         Crash when enumerating XPath namespace axis
   56742 
   56743         * xml/XPathStep.cpp:
   56744         (WebCore::XPath::Step::nodesInAxis): Namespace axis enumeration was broken in that it crashed, and also in that
   56745         it returned attribute nodes instead of XPath namespace ones. Removed it altogether.
   56746 
   56747 2007-02-10  Mitz Pettel  <mitz (a] webkit.org>
   56748 
   56749         Reviewed by Adam.
   56750 
   56751         - fix http://bugs.webkit.org/show_bug.cgi?id=12565
   56752           ASSERTION failure on some declarative animations <rdar://problem/4975132>
   56753 
   56754         * ksvg2/svg/SVGAnimationElement.cpp:
   56755         (WebCore::parseValues): Changed the string length math to avoid truncating
   56756         the last character of each value.
   56757         * manual-tests/svg-animation-parseValues.svg: Added.
   56758 
   56759 2007-02-10  Mitz Pettel  <mitz (a] webkit.org>
   56760 
   56761         Reviewed by Adam.
   56762 
   56763         - fix http://bugs.webkit.org/show_bug.cgi?id=11621
   56764           REGRESSION (Native slider): slider thumb not updated when the mouse is dragged/released out of range
   56765 
   56766         No automated test case because dumping the render tree updates layer positions anyway.
   56767 
   56768         * manual-tests/slider-thumb-tracking.html: Added.
   56769         * rendering/RenderSlider.cpp:
   56770         (WebCore::RenderSlider::setCurrentPosition): Added call to updateLayerPosition()
   56771         for the thumb's layer.
   56772 
   56773 2007-02-09  Brady Eidson <beidson (a] apple.com>
   56774 
   56775         Reviewed by Maciej
   56776 
   56777         <rdar://problem/4965133> WebKit sends file:// url referrers
   56778 
   56779         * loader/SubresourceLoader.cpp:
   56780         (WebCore::SubresourceLoader::create): In SubresourceLoader::create(), we make a copy of the original request
   56781         to use for the load.  We then call FrameLoader::canLoad() which tells us if we should hide the referer.  Before 
   56782         this fix if it said to hide the referrer, we would simply not apply a new referrer to our copy of the request.
   56783         But if the original request already had a referrer, so did our copy.  We simply have to clear the referrer from
   56784         the copied request.
   56785 
   56786 2007-02-10  Maciej Stachowiak  <mjs (a] apple.com>
   56787 
   56788         Reviewed by me, patch from Feng Qian (cleaned up by me some).
   56789 
   56790         - fixed <rdar://problem/4988091> objects attached to Window not cleared (memory leak)
   56791         
   56792         Test case: fast/dom/Window/window-appendages-cleared.html
   56793 
   56794         * bindings/js/kjs_window.cpp:
   56795         (KJS::Window::clearHelperObjectProperties):
   56796         (KJS::Window::clear):
   56797         * bindings/js/kjs_window.h:
   56798 
   56799 2007-02-09  Brady Eidson  <beidson (a] apple.com>
   56800 
   56801         Reviewed by Tim Hatcher
   56802 
   56803         <rdar://problem/4985497> - Plugs a potential null DocumentLoader deref when 
   56804         transitioning out of the Bookmarks View
   56805 
   56806         * loader/FrameLoader.cpp:
   56807         (WebCore::FrameLoader::recursiveGoToItem): add a null check
   56808 
   56809 2007-02-09  Beth Dakin  <bdakin (a] apple.com>
   56810 
   56811         Rubber-stamped by John . . . and Adam.
   56812 
   56813         * page/ContextMenuController.cpp:
   56814         (WebCore::ContextMenuController::contextMenuItemSelected): Missing 
   56815         break.
   56816 
   56817 2007-02-09  Justin Garcia  <justin.garcia (a] apple.com>
   56818 
   56819         Reviewed by darin
   56820 
   56821         <rdar://problem/4975120>
   56822         REGRESSION: double-cursor after switching window away/back (11770)
   56823         <http://bugs.webkit.org/show_bug.cgi?id=11328>
   56824         Gmail Editor: Caret can simultaneously appear in both the TO: and message body fields
   56825 
   56826         * page/mac/WebCoreFrameBridge.h: Removed two unused methods
   56827         left over from the old form control implementation.
   56828 
   56829 2007-02-09  John Sullivan  <sullivan (a] apple.com>
   56830 
   56831         * rendering/bidi.cpp:
   56832         (WebCore::bidiNext):
   56833         At Darin's suggestion, moved the "next = 0" line from my previous patch to the start of the loop body
   56834 
   56835 2007-02-09  Justin Garcia  <justin.garcia (a] apple.com>
   56836 
   56837         Reviewed by john
   56838         
   56839         <rdar://problem/4960116>
   56840         REGRESSION: Nightly Safari crashes in WebCore::SelectionController::xPosForVerticalArrowNavigation (12416)
   56841 
   56842         * editing/SelectionController.cpp:
   56843         (WebCore::SelectionController::xPosForVerticalArrowNavigation):
   56844         Null check.  VisiblePosition creation can fail if a node that 
   56845         contains the selection was made invisible after the selection 
   56846         was made and before this function is called during a selection 
   56847         modification operation.
   56848 
   56849 2007-02-09  Justin Garcia  <justin.garcia (a] apple.com>
   56850 
   56851         Reviewed by john
   56852         
   56853         <rdar://problem/4983858>
   56854         REGRESSION: In a new mail message, attempting to select a single word causes the selection to extend to the previous line
   56855 
   56856         * editing/TextIterator.cpp:
   56857         (WebCore::SimplifiedBackwardsTextIterator::exitNode):
   56858         We recently split shouldEmitNewlineForNode into
   56859         shouldEmitNewline{Before, After}Node, so this function now
   56860         needs an implementation that is different from
   56861         SimplifiedBackwardsTextIterator::handleNonTextNode.  The
   56862         difference is that we must call shouldEmit*BeforeNode
   56863         instead of shouldEmit*AfterNode since we are a) exiting
   56864         nodes and b) moving backward.
   56865 
   56866 2007-02-09  Justin Garcia  <justin.garcia (a] apple.com>
   56867 
   56868         Reviewed by john
   56869 
   56870         <rdar://problem/4916541>
   56871         Some of the selection isn't preserved during an Indent opreration
   56872 
   56873         * editing/IndentOutdentCommand.cpp:
   56874         (WebCore::indexForVisiblePosition): Added.
   56875         (WebCore::IndentOutdentCommand::indentRegion): Use rangeLength
   56876         and rangeFromLocationAndLength to restore the selection after
   56877         the repeated moveParagraph calls necessary to perform indent are
   56878         finished.
   56879 
   56880 2007-02-09  John Sullivan  <sullivan (a] apple.com>
   56881 
   56882         Reviewed by Kevin Decker
   56883         
   56884         - fixed <rdar://problem/4960095> REPRODUCIBLE HANG: WebKit freezes when printing as PDF
   56885           a certain kind of code (12449)
   56886  
   56887         No test case because I don't know how to make the bug occur without printing.
   56888 
   56889         * rendering/bidi.cpp:
   56890         (WebCore::bidiNext):
   56891         reset loop's "next" variable after using it; we were setting "current" to the same value
   56892         of "next" each subsequent time through the loop, which is not helpful.
   56893 
   56894 2007-02-09  Darin Adler  <darin (a] apple.com>
   56895 
   56896         Reviewed by Adele.
   56897 
   56898         - Add TextEvent to the DOM (based on the proposed DOM level 3)
   56899           to be used to fix some international input bugs soon.
   56900           At this point, we don't send any text events.
   56901 
   56902         - Remove some obsolete files.
   56903 
   56904         * CMakeLists.txt:
   56905         * WebCore.pro:
   56906         * WebCore.xcodeproj/project.pbxproj:
   56907         * WebCoreSources.bkl:
   56908         Add new files, remove obsolete files.
   56909 
   56910         * DerivedSources.make: Add TextEvent to the Objective-C and JavaScript bindings lists.
   56911         * WebCore.exp: Export DOMTextEvent Objective-C wrapper.
   56912 
   56913         * bindings/js/kjs_events.cpp: (KJS::toJS): Added TextEvent to the list of Event subclasses
   56914         so we make the right kind of JS wrapper.
   56915         * bindings/objc/DOMEvents.mm: (+[DOMEvent _eventWith:]): Same thing, for Objective-C.
   56916 
   56917         * bindings/objc/DOMInternal.h: Added DOMTextEventInternal.h.
   56918 
   56919         * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::hasFeature):
   56920         Added "TextEvents", "3.0" to the list of things we'll answer true for
   56921         (as specified in the DOM Level 3 documentation).
   56922         This isn't so great until we actually send textInput events, but that's coming soon.
   56923 
   56924         * dom/Document.cpp: (WebCore::Document::createEvent): Add "TextEvent" as a way to make
   56925         a TextEvent (as specified in the DOM Level 3 documentation).
   56926 
   56927         * dom/Event.h:
   56928         * dom/Event.cpp: (WebCore::Event::isTextEvent): Added virtual function to be used
   56929         for runtime type checking of Event objects (as for other event types).
   56930 
   56931         * dom/TextEvent.cpp: Added.
   56932         * dom/TextEvent.h: Added.
   56933         * dom/TextEvent.idl: Added.
   56934 
   56935         * platform/mac/WebCoreWidgetHolder.h: Removed.
   56936         * rendering/CounterListItem.h: Removed.
   56937         * rendering/CounterResetNode.cpp: Removed.
   56938         * rendering/CounterResetNode.h: Removed.
   56939 
   56940 2007-02-09  Anders Carlsson  <acarlsson (a] apple.com>
   56941 
   56942         Reviewed by Geoff.
   56943 
   56944         <rdar://problem/4816376> 
   56945         REGRESSION: NetNewsWire 3.0 - Crashes in WebDocumentLoaderMac::attachToFrame() (12674)
   56946         
   56947         The bug was that the NNW policy delegate never calls back on the policy listener so we'll try to do a load
   56948         while there's a policy decision underway. The extra call to setPolicyDocumentLoader would cause a detached (and deallocated)
   56949         WebDataSource to be reattached and thus causing a crash.
   56950         
   56951         * loader/FrameLoader.cpp:
   56952         (WebCore::FrameLoader::load):
   56953         Remove extra call to setPolicyDocumentLoader.
   56954 
   56955 2007-02-09  Beth Dakin  <bdakin (a] apple.com>
   56956 
   56957         Reviewed by Darin.
   56958 
   56959         Fix for <rdar://problem/4674537> REGRESSION: Adobe Acrobat 8 - Text 
   56960         blinks when mouse is moved, and is invisible otherwise
   56961 
   56962         Acrobat 8 was relying on a WebKit bug that was fixed about a year 
   56963         ago with r12753. The bug was that we would not reload a page if the 
   56964         source of an iframe was set to the same value it already was. Now 
   56965         that we have fixed the bug, Acrobat constantly reloads their EULA, 
   56966         making it blinky and impossible to read. 
   56967 
   56968         No layout test since the fix is to add an Acrobat-specific quirk.
   56969 
   56970         * WebCore.exp:
   56971         * html/HTMLFrameElementBase.cpp:
   56972         (WebCore::HTMLFrameElementBase::setLocation): If the new url is the 
   56973         same as the old one and we are honoring the Acrobat quirk, don't do 
   56974         anything.
   56975         * page/Settings.cpp:
   56976         (WebCore::Settings::Settings):
   56977         (WebCore::Settings::setNeedsAcrobatFrameReloadingQuirk):
   56978         * page/Settings.h:
   56979         (WebCore::Settings::needsAcrobatFrameReloadingQuirk):
   56980 
   56981 2007-02-09  Brady Eidson  <beidson (a] apple.com>
   56982 
   56983         Rubberstamped by Dave Harrison
   56984 
   56985         Disable the thread-check assertion in WebCore, as well as Webkit
   56986 
   56987         * WebCore.xcodeproj/project.pbxproj:
   56988 
   56989 2007-02-08  Anders Carlsson  <acarlsson (a] apple.com>
   56990 
   56991         Reviewed by Geoff.
   56992 
   56993         No need to pause timeout checks anymore.
   56994         
   56995         * bindings/js/kjs_window.cpp:
   56996         (KJS::WindowFunc::callAsFunction):
   56997 
   56998 2007-02-09  John Sullivan  <sullivan (a] apple.com>
   56999 
   57000         Reviewed by Beth
   57001         
   57002         - WebCore part of fix for radar 4939636, problems with context menu items and binaries linked
   57003           against WebKit 2.0.
   57004 
   57005         * platform/ContextMenuItem.h:
   57006         (WebCore::):
   57007         Tweaked comment; bumped enum value for new SPI tags to avoid conflict with pre-3.0 SPI tag values.
   57008 
   57009 2007-02-09  Nicholas Shanks  <webkit (a] nickshanks.com>
   57010 
   57011         Reviewed by Dave Hyatt.
   57012 
   57013         Removed broken recognition of :last-* and :only-* selectors
   57014 
   57015         * css/CSSGrammar.y:
   57016         * css/CSSSelector.cpp:
   57017         (WebCore::CSSSelector::extractPseudoType):
   57018         * css/CSSSelector.h:
   57019         (WebCore::CSSSelector::):
   57020         * css/cssstyleselector.cpp:
   57021         (WebCore::CSSStyleSelector::checkOneSelector):
   57022 
   57023 2007-02-09  Maciej Stachowiak  <mjs (a] apple.com>
   57024 
   57025         Reviewed by Mark.
   57026 
   57027         <rdar://problem/4980176>
   57028 
   57029         * page/Frame.cpp:
   57030         (WebCore::Frame::pageDestroyed): Since this frame is getting
   57031         disconnected from its page, ensure it is not the focus node.
   57032 
   57033 2007-02-09  Krzysztof  <kkowalczyk (a] gmail.com>
   57034 
   57035         Reviewed by Maciej.
   57036 
   57037         gdklauncher crashes when compiled with NDEBUG defined.
   57038 
   57039         * Projects/gdk/webcore-gdk.bkl:
   57040 
   57041 2007-02-09  Maciej Stachowiak  <mjs (a] apple.com>
   57042 
   57043         Reviewed by Mitz.
   57044 
   57045         <rdar://problem/4971224> REGRESSION: ASSERT in WebCore with Mail (12491)
   57046         http://bugs.webkit.org/show_bug.cgi?id=12491
   57047 
   57048         No test case. Not testable since there is no way to do substitute
   57049         data loads from layout tests.
   57050         
   57051         * loader/MainResourceLoader.cpp:
   57052         (WebCore::MainResourceLoader::continueAfterContentPolicy): Don't dispatch data load
   57053         callback when loading empty data.
   57054 
   57055 2007-02-09  Mark Rowe  <mrowe (a] apple.com>
   57056 
   57057         Reviewed by Maciej.
   57058 
   57059         http://bugs.webkit.org/show_bug.cgi?id=12705
   57060         REGRESSION: Crash with user stylesheet set
   57061 
   57062         Allow the Frame::canLoad check to skipped so that user stylesheets can be loaded in remote documents.
   57063 
   57064         * ChangeLog:
   57065         * loader/DocLoader.cpp:
   57066         (WebCore::DocLoader::requestCSSStyleSheet): Skip canLoad check if this is a user stylesheet.
   57067         (WebCore::DocLoader::requestUserCSSStyleSheet):
   57068         (WebCore::DocLoader::requestResource): Allow canLoad check to be skipped.
   57069         * loader/DocLoader.h:
   57070         * page/Frame.cpp:
   57071         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
   57072 
   57073 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57074 
   57075         Reviewed by Darin.
   57076 
   57077         Linux/gdk build fixes.
   57078 
   57079         * Projects/gdk/webcore-gdk.bkl: Account for file renaming.
   57080         * platform/gdk/KeyEventGdk.cpp: Make gdk's tab key recognized as tab so that
   57081         keyboard link walking works on gdk.
   57082         (WebCore::keyIdentifierForGdkKeyCode):
   57083 
   57084 2007-02-08  Adele Peterson  <adele (a] apple.com>
   57085 
   57086         Reviewed by Brady.
   57087 
   57088         Fix for http://bugs.webkit.org/show_bug.cgi?id=12599
   57089         <rdar://problem/4973507> REGRESSION: When replying in Gmail, the caret disappears when you start to type (12599)
   57090 
   57091         When a frame's window was focused, the page didn't get updated about the new frame getting focus.
   57092         This was causing handleKeyPress to fail because it kept getting a selection for the wrong frame (which wasn't editable).
   57093 
   57094         Test: fast/frames/iframe-window-focus.html
   57095 
   57096         * page/Frame.cpp:
   57097         (WebCore::Frame::focusWindow):
   57098         (WebCore::Frame::unfocusWindow):
   57099         * page/Frame.h:
   57100         * page/mac/FrameMac.mm:
   57101         (WebCore::FrameMac::focusWindow):
   57102         (WebCore::FrameMac::unfocusWindow):
   57103 
   57104 2007-02-08  Adele Peterson  <adele (a] apple.com>
   57105 
   57106         Reviewed by Brady.
   57107 
   57108         Fix for http://bugs.webkit.org/show_bug.cgi?id=12480
   57109         <rdar://problem/4971222> REGRESSION (NativeListBox): Deselecting option causes list to jump to top
   57110 
   57111         Test: fast/forms/listbox-deselect-scroll.html
   57112 
   57113         * html/HTMLSelectElement.cpp:
   57114         (WebCore::HTMLSelectElement::activeSelectionStartListIndex): Added.  Returns the index for the active selection.  If there is no active selection,
   57115          it returns the first selected index.
   57116         (WebCore::HTMLSelectElement::activeSelectionEndListIndex): Added.  If there is no active selection, it returns the last selected index.
   57117         * html/HTMLSelectElement.h:
   57118         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::scrollToRevealSelection): Instead of using the first and last selected indices,
   57119           use the active selection indices to determine which item to reveal.  This way, when you're selecting with the keyboard, or the mouse,
   57120           no unnecessary scrolling will occur if the end of your active selection is already visible.
   57121 
   57122 2007-02-08  Adele Peterson  <adele (a] apple.com>
   57123 
   57124         Reviewed by Hyatt.
   57125 
   57126         Fix for <rdar://problem/4963411> Items of SELECT element are incorrectly highlighted when display:block is set
   57127 
   57128         Test: fast/forms/select-block-background.html
   57129 
   57130         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintObject):
   57131           Paint the item backgrounds during the PaintPhaseChildBlockBackground or PaintPhaseChildBlockBackgrounds phase.
   57132 
   57133 2007-02-08  Mitz Pettel  <mitz (a] webkit.org>
   57134 
   57135         Reviewed by Adele.
   57136 
   57137         - fix http://bugs.webkit.org/show_bug.cgi?id=11047
   57138           REGRESSION: Empty options cause the entire select to collapse
   57139         
   57140         Test: fast/forms/select-empty-option-height.html
   57141 
   57142         - fix http://bugs.webkit.org/show_bug.cgi?id=10783
   57143           REGRESSION (r16044): Clicking a popup changes layout around it
   57144 
   57145         * rendering/RenderMenuList.cpp:
   57146         (WebCore::RenderMenuList::setText): If the option text is empty, use a RenderBR
   57147         as inner text, to ensure that the inner div has line height.
   57148 
   57149 2007-02-08  Geoffrey Garen  <ggaren (a] apple.com>
   57150 
   57151         Reviewed by Beth Dakin.
   57152 
   57153         Added a hard counter for SubresourceLoaders because the leaks tool now
   57154         ignores them.
   57155         
   57156         * loader/SubresourceLoader.cpp:
   57157         (WebCore::):
   57158         (WebCore::SubresourceLoaderCounter::~SubresourceLoaderCounter):
   57159         (WebCore::SubresourceLoader::SubresourceLoader):
   57160         (WebCore::SubresourceLoader::~SubresourceLoader):
   57161         * page/Frame.cpp: Removed unnecessary #define
   57162 
   57163 2007-02-08  Geoffrey Garen  <ggaren (a] apple.com>
   57164 
   57165         Reviewed by Beth Dakin.
   57166 
   57167         Fixed <rdar://problem/4982374> CSSComputedStyleDeclaration::getPropertyCSSValue 
   57168         leak reported by buildbot
   57169         
   57170         The leak was a typo: "new" instead of "return new". I also generously
   57171         deployed RefPtr in places that were holding ref-counted objects in
   57172         bare pointers.
   57173 
   57174         * css/CSSComputedStyleDeclaration.cpp:
   57175         (WebCore::valueForShadow):
   57176         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   57177 
   57178 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57179 
   57180         Reviewed by Adam Roben.
   57181 
   57182         Linux/gdk build fixes.
   57183 
   57184         * platform/gdk/EditorClientGdk.cpp: Added. Based on qt version.
   57185         (WebCore::EditorClientGdk::shouldDeleteRange):
   57186         (WebCore::EditorClientGdk::shouldShowDeleteInterface):
   57187         (WebCore::EditorClientGdk::isContinuousSpellCheckingEnabled):
   57188         (WebCore::EditorClientGdk::isGrammarCheckingEnabled):
   57189         (WebCore::EditorClientGdk::spellCheckerDocumentTag):
   57190         (WebCore::EditorClientGdk::shouldBeginEditing):
   57191         (WebCore::EditorClientGdk::shouldEndEditing):
   57192         (WebCore::EditorClientGdk::shouldInsertText):
   57193         (WebCore::EditorClientGdk::shouldApplyStyle):
   57194         (WebCore::EditorClientGdk::didBeginEditing):
   57195         (WebCore::EditorClientGdk::respondToChangedContents):
   57196         (WebCore::EditorClientGdk::didEndEditing):
   57197         (WebCore::EditorClientGdk::didWriteSelectionToPasteboard):
   57198         (WebCore::EditorClientGdk::didSetSelectionTypesForPasteboard):
   57199         (WebCore::EditorClientGdk::selectWordBeforeMenuEvent):
   57200         (WebCore::EditorClientGdk::isEditable):
   57201         (WebCore::EditorClientGdk::registerCommandForUndo):
   57202         (WebCore::EditorClientGdk::registerCommandForRedo):
   57203         (WebCore::EditorClientGdk::clearUndoRedoOperations):
   57204         (WebCore::EditorClientGdk::canUndo):
   57205         (WebCore::EditorClientGdk::canRedo):
   57206         (WebCore::EditorClientGdk::undo):
   57207         (WebCore::EditorClientGdk::redo):
   57208         (WebCore::EditorClientGdk::shouldInsertNode):
   57209         (WebCore::EditorClientGdk::pageDestroyed):
   57210         (WebCore::EditorClientGdk::smartInsertDeleteEnabled):
   57211         (WebCore::EditorClientGdk::toggleContinuousSpellChecking):
   57212         (WebCore::EditorClientGdk::toggleGrammarChecking):
   57213         (WebCore::EditorClientGdk::handleKeyPress):
   57214         (WebCore::EditorClientGdk::EditorClientGdk):
   57215         (WebCore::EditorClientGdk::setPage):
   57216         * platform/gdk/EditorClientGdk.h: Added. Ditto.
   57217         * platform/gdk/FrameGdk.cpp: Add exitAfterLoading and dumpRenderTreeAfterLoading
   57218         as small debugging features. Remove FrameGdkClient as no other platform has Frame*Client
   57219         anymore. Adjust for new APIs.
   57220         (WebCore::FrameGdk::FrameGdk):
   57221         (WebCore::FrameGdk::onDidFinishLoad):
   57222         (WebCore::FrameGdk::dumpRenderTree):
   57223         (WebCore::FrameGdk::keyPress):
   57224         (WebCore::FrameGdk::handleGdkEvent):
   57225         (WebCore::FrameGdk::focusWindow):
   57226         (WebCore::FrameGdk::unfocusWindow):
   57227         (WebCore::FrameGdk::getObjectInstanceForWidget):
   57228         (WebCore::FrameGdk::getEmbedInstanceForWidget):
   57229         (WebCore::FrameGdk::bindingRootObject):
   57230         (WebCore::FrameGdk::print):
   57231         (WebCore::FrameGdk::getAppletInstanceForWidget):
   57232         (WebCore::FrameGdk::issueCutCommand):
   57233         (WebCore::FrameGdk::issueCopyCommand):
   57234         (WebCore::FrameGdk::issuePasteCommand):
   57235         (WebCore::FrameGdk::issueTransposeCommand):
   57236         (WebCore::FrameGdk::issuePasteAndMatchStyleCommand):
   57237         (WebCore::FrameGdk::markedTextRange):
   57238         (WebCore::FrameGdk::shouldChangeSelection):
   57239         (WebCore::FrameGdk::respondToChangedSelection):
   57240         (WebCore::FrameGdk::mimeTypeForFileName):
   57241         * platform/gdk/FrameGdk.h: Ditto.
   57242         (WebCore::FrameGdk::setExitAfterLoading):
   57243         (WebCore::FrameGdk::exitAfterLoading):
   57244         (WebCore::FrameGdk::setDumpRenderTreeAfterLoading):
   57245         (WebCore::FrameGdk::dumpRenderTreeAfterLoading):
   57246         (WebCore::GdkFrame):
   57247         * platform/gdk/TemporaryLinkStubs.cpp: Adjust to new APIs. Small cleanups.
   57248         (FrameView::updateBorder):
   57249         (Widget::setEnabled):
   57250         (Widget::isEnabled):
   57251         (Widget::enableFlushDrawing):
   57252         (Widget::removeFromParent):
   57253         (Widget::paint):
   57254         (Widget::setIsSelected):
   57255         (Widget::invalidate):
   57256         (Widget::invalidateRect):
   57257         (PlatformMouseEvent::PlatformMouseEvent):
   57258         (WebCore::findWordBoundary):
   57259         (ChromeClientGdk::chromeDestroyed):
   57260         (ChromeClientGdk::closeWindowSoon):
   57261         (ChromeClientGdk::canTakeFocus):
   57262         (ChromeClientGdk::takeFocus):
   57263         (ChromeClientGdk::canRunBeforeUnloadConfirmPanel):
   57264         (ChromeClientGdk::addMessageToConsole):
   57265         (ChromeClientGdk::runBeforeUnloadConfirmPanel):
   57266         (ChromeClientGdk::runJavaScriptAlert):
   57267         (ChromeClientGdk::runJavaScriptConfirm):
   57268         (ChromeClientGdk::runJavaScriptPrompt):
   57269         (ChromeClientGdk::setStatusbarText):
   57270         (ChromeClientGdk::shouldInterruptJavaScript):
   57271         (WebCore::inputElementAltText):
   57272         (WebCore::resetButtonDefaultLabel):
   57273         (WebCore::searchableIndexIntroduction):
   57274         (WebCore::fileButtonChooseFileLabel):
   57275         (WebCore::fileButtonNoFileSelectedLabel):
   57276         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   57277         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   57278         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   57279         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   57280         (WebCore::contextMenuItemTagDownloadImageToDisk):
   57281         (WebCore::contextMenuItemTagCopyImageToClipboard):
   57282         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   57283         (WebCore::contextMenuItemTagCopy):
   57284         (WebCore::contextMenuItemTagGoBack):
   57285         (WebCore::contextMenuItemTagGoForward):
   57286         (WebCore::contextMenuItemTagStop):
   57287         (WebCore::contextMenuItemTagReload):
   57288         (WebCore::contextMenuItemTagCut):
   57289         (WebCore::contextMenuItemTagPaste):
   57290         (WebCore::contextMenuItemTagNoGuessesFound):
   57291         (WebCore::contextMenuItemTagIgnoreSpelling):
   57292         (WebCore::contextMenuItemTagLearnSpelling):
   57293         (WebCore::contextMenuItemTagSearchWeb):
   57294         (WebCore::contextMenuItemTagLookUpInDictionary):
   57295         (WebCore::contextMenuItemTagOpenLink):
   57296         (WebCore::contextMenuItemTagIgnoreGrammar):
   57297         (WebCore::contextMenuItemTagSpellingMenu):
   57298         (WebCore::contextMenuItemTagShowSpellingPanel):
   57299         (WebCore::contextMenuItemTagCheckSpelling):
   57300         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   57301         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   57302         (WebCore::contextMenuItemTagFontMenu):
   57303         (WebCore::contextMenuItemTagBold):
   57304         (WebCore::contextMenuItemTagItalic):
   57305         (WebCore::contextMenuItemTagUnderline):
   57306         (WebCore::contextMenuItemTagOutline):
   57307         (WebCore::contextMenuItemTagWritingDirectionMenu):
   57308         (WebCore::contextMenuItemTagDefaultDirection):
   57309         (WebCore::contextMenuItemTagLeftToRight):
   57310         (WebCore::contextMenuItemTagRightToLeft):
   57311         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
   57312         (PlugInInfoStore::pluginCount):
   57313         (WebCore::PlugInInfoStore::supportsMIMEType):
   57314         (WebCore::refreshPlugins):
   57315         (SearchPopupMenu::saveRecentSearches):
   57316         (SearchPopupMenu::loadRecentSearches):
   57317         (SearchPopupMenu::SearchPopupMenu):
   57318         (Path::apply):
   57319         (PlatformScrollbar::PlatformScrollbar):
   57320         (PlatformScrollbar::~PlatformScrollbar):
   57321         (PlatformScrollbar::width):
   57322         (PlatformScrollbar::height):
   57323         (PlatformScrollbar::setEnabled):
   57324         (PlatformScrollbar::paint):
   57325         (PlatformScrollbar::updateThumbPosition):
   57326         (PlatformScrollbar::updateThumbProportion):
   57327         (PlatformScrollbar::setRect):
   57328         (ResourceHandle::willLoadFromCache):
   57329         (ResourceHandle::loadsBlocked):
   57330         (ResourceHandle::loadResourceSynchronously):
   57331         (PageCache::close):
   57332         (Editor::ignoreSpelling):
   57333         (Editor::learnSpelling):
   57334         (Editor::isSelectionUngrammatical):
   57335         (Editor::isSelectionMisspelled):
   57336         (Editor::guessesForMisspelledSelection):
   57337         (Editor::guessesForUngrammaticalSelection):
   57338         (Editor::markMisspellingsAfterTypingToPosition):
   57339         (Editor::newGeneralClipboard):
   57340         (Pasteboard::generalPasteboard):
   57341         (Pasteboard::writeSelection):
   57342         (Pasteboard::writeURL):
   57343         (Pasteboard::clear):
   57344         (Pasteboard::canSmartReplace):
   57345         (Pasteboard::documentFragment):
   57346         (Pasteboard::plainText):
   57347         (Pasteboard::Pasteboard):
   57348         (Pasteboard::~Pasteboard):
   57349         (ContextMenu::ContextMenu):
   57350         (ContextMenu::~ContextMenu):
   57351         (ContextMenu::appendItem):
   57352         (ContextMenu::setPlatformDescription):
   57353         (ContextMenu::platformDescription):
   57354         (ContextMenuItem::ContextMenuItem):
   57355         (ContextMenuItem::~ContextMenuItem):
   57356         (ContextMenuItem::releasePlatformDescription):
   57357         (ContextMenuItem::type):
   57358         (ContextMenuItem::setType):
   57359         (ContextMenuItem::action):
   57360         (ContextMenuItem::setAction):
   57361         (ContextMenuItem::title):
   57362         (ContextMenuItem::setTitle):
   57363         (ContextMenuItem::platformSubMenu):
   57364         (ContextMenuItem::setSubMenu):
   57365         (ContextMenuItem::setChecked):
   57366         (ContextMenuItem::setEnabled):
   57367         (WebCore::systemBeep):
   57368         (WebCore::userIdleTime):
   57369 
   57370 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57371 
   57372         Reviewed by Adam Roben.
   57373 
   57374         Linux/gdk build fixes.
   57375 
   57376         * platform/GlyphPageTreeNode.h: Fix header guard name.
   57377         * platform/gdk/ChromeClientGdk.h:
   57378         * platform/gdk/CursorGdk.cpp:
   57379         (WebCore::verticalTextCursor):
   57380         (WebCore::cellCursor):
   57381         (WebCore::contextMenuCursor):
   57382         (WebCore::noDropCursor):
   57383         (WebCore::copyCursor):
   57384         (WebCore::progressCursor):
   57385         (WebCore::aliasCursor):
   57386         * platform/gdk/MouseEventGdk.cpp:
   57387         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   57388         * platform/gdk/PageGdk.cpp: Removed. No longer used.
   57389         * platform/gdk/RenderThemeGdk.cpp:
   57390         (WebCore::RenderThemeGdk::getThemeData):
   57391         (WebCore::RenderThemeGdk::setCheckboxSize):
   57392         (WebCore::RenderThemeGdk::paintCheckbox):
   57393         (WebCore::RenderThemeGdk::setRadioSize):
   57394         (WebCore::RenderThemeGdk::paintRadio):
   57395         (WebCore::RenderThemeGdk::paintButton):
   57396         (WebCore::RenderThemeGdk::adjustTextFieldStyle):
   57397         (WebCore::RenderThemeGdk::paintTextField):
   57398         (WebCore::RenderThemeGdk::paintTextArea):
   57399         (WebCore::RenderThemeGdk::systemFont):
   57400         * platform/gdk/RenderThemeGdk.h:
   57401         * platform/gdk/ScreenGdk.cpp:
   57402         (WebCore::screenDepth):
   57403         (WebCore::screenDepthPerComponent):
   57404         (WebCore::screenIsMonochrome):
   57405         (WebCore::screenRect):
   57406         (WebCore::screenAvailableRect):
   57407 
   57408 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57409 
   57410         Reviewed by Adam Roben.
   57411 
   57412         Linux/gdk build fixes for cairo.
   57413 
   57414         * platform/graphics/GraphicsContext.cpp:
   57415         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   57416         (WebCore::GraphicsContext::GraphicsContext):
   57417         (WebCore::GraphicsContext::strokeArc):
   57418         (WebCore::GraphicsContext::drawFocusRing):
   57419         (WebCore::GraphicsContext::setFocusRingClip):
   57420         (WebCore::GraphicsContext::clearFocusRingClip):
   57421         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
   57422         (WebCore::GraphicsContext::origin):
   57423         (WebCore::GraphicsContext::setPlatformFillColor):
   57424         (WebCore::GraphicsContext::setPlatformStrokeColor):
   57425         (WebCore::GraphicsContext::setPlatformStrokeThickness):
   57426         (WebCore::GraphicsContext::setPlatformStrokeStyle):
   57427         (WebCore::GraphicsContext::setPlatformFont):
   57428         (WebCore::GraphicsContext::setURLForRect):
   57429         (WebCore::GraphicsContext::addRoundedRectClip):
   57430         (WebCore::GraphicsContext::addInnerRoundedRectClip):
   57431         (WebCore::GraphicsContext::setShadow):
   57432         (WebCore::GraphicsContext::clearShadow):
   57433         (WebCore::GraphicsContext::beginTransparencyLayer):
   57434         (WebCore::GraphicsContext::endTransparencyLayer):
   57435         (WebCore::GraphicsContext::clearRect):
   57436         (WebCore::GraphicsContext::strokeRect):
   57437         (WebCore::GraphicsContext::setLineCap):
   57438         (WebCore::GraphicsContext::setLineJoin):
   57439         (WebCore::GraphicsContext::setMiterLimit):
   57440         (WebCore::GraphicsContext::setAlpha):
   57441         (WebCore::toCairoOperator):
   57442         (WebCore::GraphicsContext::setCompositeOperation):
   57443         (WebCore::GraphicsContext::clip):
   57444         (WebCore::GraphicsContext::rotate):
   57445         (WebCore::GraphicsContext::scale):
   57446         (WebCore::GraphicsContext::clipOut):
   57447         (WebCore::GraphicsContext::clipOutEllipseInRect):
   57448         (WebCore::GraphicsContext::fillRoundedRect):
   57449 
   57450 2007-02-08  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57451 
   57452         Reviewed by Adam Roben.
   57453 
   57454         Linux/gdk build fixes.
   57455 
   57456         * Projects/gdk/webcore-gdk.bkl:
   57457         * WebCoreSources.bkl:
   57458         * webcore-base.bkl:
   57459 
   57460 2007-02-08  Brady Eidson  <beidson (a] apple.com>
   57461 
   57462         Reviewed by Tim Hatcher
   57463 
   57464         Tweaked the thread violation behavior to be disabled by default, and to provide
   57465         an easy breakpoint to set.  
   57466         The possibilities for the "WebCoreThreadCheck" user defaults key are -
   57467           - The value "None" disables thread checking
   57468           - The value "Log" causes an NSLog on a violation
   57469           - The value "Exception" causes exceptions to be raised on a violation
   57470 
   57471         * platform/Logging.h:
   57472         * platform/mac/LoggingMac.mm:
   57473         (WebCore::_WebCoreThreadViolationCheck):
   57474         (WebCoreReportThreadViolation):  In the global namespace, making breakpoints cake!
   57475 
   57476 2007-02-08  Brady Eidson  <beidson (a] apple.com>
   57477 
   57478         Reviewed by Tim Hatcher
   57479 
   57480         <rdar://problem/4983515> Need mechanism to protect against WebKit calls from secondary threads
   57481         This initial landing is a conservative move until we can be certain of performance impact.
   57482         By writing to the user defaults key @"WebCoreThreadCheck" for the WebKit app you're running -
   57483           - The value "None" disables thread checking
   57484           - The value "Exception" causes exceptions to be raised on a violation
   57485           - The default is to do the check, and NSLog each violation
   57486 
   57487         * bindings/objc/ExceptionHandlers.h:  Add a "Is Main Thread" assert macro
   57488         * bindings/scripts/CodeGeneratorObjC.pm: Use new mechanism in allocs and deallocs for now
   57489 
   57490         * platform/Logging.h: Added WebCoreThreadViolationCheck macro
   57491         * platform/mac/LoggingMac.mm:
   57492         (WebCore::_WebCoreThreadViolationCheck): Check for main-threadedness, and do some stuff
   57493 
   57494 2007-02-08  Kevin McCullough  <KMcCullough (a] apple.com>
   57495 
   57496         Reviewed by Maciej, Darin, and Mark.
   57497 
   57498         rdar://problem/4922454
   57499         - Prevents remote sites from executing local scripts.
   57500 
   57501         * bindings/objc/DOM.mm: - renamed a function that is now in the base class
   57502         (-[DOMElement image]):
   57503         (-[DOMElement _imageTIFFRepresentation]):
   57504         * dom/XMLTokenizer.cpp: - removed needless asserts
   57505         (WebCore::XMLTokenizer::notifyFinished):
   57506         * html/HTMLImageLoader.cpp: - renamed a function that is now in the base class
   57507         (WebCore::HTMLImageLoader::dispatchLoadEvent):
   57508         * html/HTMLTokenizer.cpp: - removed needless asserts
   57509         (WebCore::HTMLTokenizer::reset):
   57510         (WebCore::HTMLTokenizer::notifyFinished):
   57511         * ksvg2/misc/SVGImageLoader.cpp: - renamed a function that is now in the base class
   57512         (WebCore::SVGImageLoader::dispatchLoadEvent):
   57513         * loader/Cache.cpp: - return early if an error occured
   57514         (WebCore::Cache::requestResource):
   57515         (WebCore::Cache::remove):
   57516         * loader/CachedImage.h: - renamed a function that is now in the base class
   57517         (WebCore::CachedImage::canRender):
   57518         * loader/CachedResource.h: - renamed a function that is now in the base class
   57519         (WebCore::CachedResource::errorOccurred):
   57520         * loader/CachedScript.h: - renamed a function that is now in the base class 
   57521         (WebCore::CachedScript::schedule):
   57522         * loader/DocLoader.cpp: - The heart of the fix, prevents resources from being created or retrieved from the cache if a remote site is requesting the local resource.
   57523         (WebCore::DocLoader::requestResource):
   57524         (WebCore::DocLoader::setLoadInProgress):
   57525         * page/EventHandler.cpp: - renamed a function that is now in the base class
   57526         (WebCore::selectCursor):
   57527         * rendering/HitTestResult.cpp: - renamed a function that is now in the base class
   57528         (WebCore::HitTestResult::image):
   57529         * rendering/RenderImage.cpp: - renamed a function that is now in the base class
   57530         (WebCore::RenderImage::setCachedImage):
   57531         (WebCore::RenderImage::imageChanged):
   57532         (WebCore::RenderImage::paint):
   57533         (WebCore::RenderImage::layout):
   57534         (WebCore::RenderImage::calcAspectRatioWidth):
   57535         (WebCore::RenderImage::calcAspectRatioHeight):
   57536         * rendering/RenderImage.h: - renamed a function that is now in the base class
   57537         (WebCore::RenderImage::errorOccurred):
   57538         * rendering/RenderListItem.cpp: - renamed a function that is now in the base class
   57539         (WebCore::RenderListItem::setStyle):
   57540         * rendering/RenderListMarker.cpp: - renamed a function that is now in the base class
   57541         (WebCore::RenderListMarker::isImage):
   57542 
   57543 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57544 
   57545         Reviewed by Maciej.
   57546 
   57547         Add updateGeometry() to gdk's ScrollView. Needed to fix resizing of the window
   57548         in gdk.
   57549 
   57550         * platform/ScrollView.h:
   57551         * platform/gdk/ScrollViewGdk.cpp:
   57552         (WebCore::ScrollView::updateGeometry):
   57553         (WebCore::ScrollView::setDrawable):
   57554 
   57555 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57556 
   57557         Reviewed by Maciej.
   57558 
   57559         Linux/gdk build fixes.
   57560 
   57561         * platform/ContextMenuItem.h:
   57562         * platform/PlatformMenuDescription.h:
   57563         * platform/gdk/PopupMenuGdk.cpp: Added. Renamed from RenderPopupMenuGdk.cpp for
   57564         consistency with other platforms.
   57565         (WebCore::PopupMenu::PopupMenu):
   57566         (WebCore::PopupMenu::~PopupMenu):
   57567         * platform/gdk/RenderPopupMenuGdk.cpp: Removed.
   57568         * platform/gdk/RenderPopupMenuGdk.h: Removed.
   57569 
   57570 2007-02-07  Mitz Pettel  <mitz (a] webkit.org>
   57571 
   57572         Reviewed by Maciej.
   57573 
   57574         - fix http://bugs.webkit.org/show_bug.cgi?id=12608
   57575           Incorrect min. width calculation of a series of floats with clear:both and white-space:nowrap
   57576 
   57577         Test: fast/block/float/nowrap-clear-min-width.html
   57578 
   57579         * rendering/RenderBlock.cpp:
   57580         (WebCore::RenderBlock::calcInlineMinMaxWidth):
   57581 
   57582 2007-02-07  Mitz Pettel  <mitz (a] webkit.org>
   57583 
   57584         Reviewed by Dave Hyatt.
   57585 
   57586         - fix http://bugs.webkit.org/show_bug.cgi?id=10522
   57587           REGRESSION: Incomplete repaint after table relayout that decreases height
   57588 
   57589         Test: fast/repaint/intermediate-layout-position.html
   57590 
   57591         * rendering/RenderBlock.cpp:
   57592         (WebCore::RenderBlock::layoutBlock): Adjust the old bounds by the layout delta,
   57593         to get the block's absolute bounds as they were before its ancestors moved it
   57594         during layout.
   57595         (WebCore::RenderBlock::collapseMargins): Update the layout delta for the child
   57596         when moving it.
   57597         (WebCore::RenderBlock::clearFloatsIfNeeded): Ditto.
   57598         (WebCore::RenderBlock::determineHorizontalPosition): Ditto.
   57599         (WebCore::RenderBlock::layoutBlockChildren): Ditto.
   57600         * rendering/RenderFlexibleBox.cpp:
   57601         (WebCore::RenderFlexibleBox::layoutBlock): Adjust the old bounds by the current
   57602         layout delta.
   57603         * rendering/RenderHTMLCanvas.cpp:
   57604         (WebCore::RenderHTMLCanvas::layout): Ditto.
   57605         * rendering/RenderImage.cpp:
   57606         (WebCore::RenderImage::layout): Ditto.
   57607         * rendering/RenderTable.cpp:
   57608         (WebCore::RenderTable::layout): Ditto.
   57609         * rendering/RenderView.h:
   57610         (WebCore::RenderView::layoutDelta): Added. Keeps track of the offset between
   57611         the position of the object currently being laid out and its position at the
   57612         end of the last layout.
   57613         (WebCore::RenderView::addLayoutDelta): Added.
   57614 
   57615 2007-02-07  Christopher Brichford  <chrisb (a] adobe.com>
   57616 
   57617         Reviewed by Brady.
   57618 
   57619         http://bugs.webkit.org/show_bug.cgi?id=6286
   57620         Very large (~500MB) images cause reproducible Safari crash
   57621 
   57622         * loader/CachedImage.cpp: 
   57623         (WebCore::CachedImage::bufferData): Detect failure to create a
   57624         large Vector<> and call error() when that happens.
   57625 
   57626 2007-02-07  Mitz Pettel  <mitz (a] webkit.org>
   57627 
   57628         Reviewed by Dave Hyatt.
   57629 
   57630         - fix http://bugs.webkit.org/show_bug.cgi?id=5399
   57631           no-repeat on negatively positioned background images are ignored
   57632 
   57633         Test: fast/backgrounds/repeat/negative-offset-repeat.html
   57634 
   57635         - fix http://bugs.webkit.org/show_bug.cgi?id=5821
   57636           Changing background of <col> doesn't repaint the column
   57637 
   57638         Test: fast/repaint/table-col-background.html
   57639 
   57640         - fix http://bugs.webkit.org/show_bug.cgi?id=11720
   57641           REGRESSION: large amounts of CPU consumed viewing this site
   57642 
   57643         * rendering/RenderBox.cpp:
   57644         (WebCore::RenderBox::imageChanged): Added. Finds the border and/or background
   57645         layer(s) that use the image and invalidates only the rect in which the image
   57646         actually paints. There are two special cases in this function: 1) for the body
   57647         element, the background is propagated to the root; 2) inline flows do a full
   57648         repaint.
   57649         (WebCore::RenderBox::calculateBackgroundImageGeometry): Added. Factored out,
   57650         simplified and corrected the calculation of the rectangle into which the background
   57651         image paints, the tile size and the pattern phase.
   57652         (WebCore::RenderBox::paintBackgroundExtended):
   57653         * rendering/RenderBox.h:
   57654         * rendering/RenderObject.cpp:
   57655         * rendering/RenderObject.h:
   57656         (WebCore::RenderObject::imageChanged): Moved the implementation to RenderBox.
   57657         * rendering/RenderTableCol.cpp:
   57658         (WebCore::RenderTableCol::getAbsoluteRepaintRect): Overridden to return the
   57659         table's repaint rect.
   57660         (WebCore::RenderTableCol::imageChanged): Overridden to do a full repaint, which
   57661         currently repaints the entire table.
   57662         * rendering/RenderTableCol.h:
   57663         * rendering/RenderTableRow.cpp:
   57664         (WebCore::RenderTableRow::imageChanged): Overridden to do a full repaint
   57665         of the row, since the backgrounds are painted by the cells.
   57666         * rendering/RenderTableRow.h:
   57667         * rendering/RenderTableSection.cpp:
   57668         (WebCore::RenderTableSection::imageChanged): Overridden to do a full
   57669         repaint of the section, since the backgrounds are painted by the cells.
   57670         * rendering/RenderTableSection.h:
   57671 
   57672 2007-02-07  Anders Carlsson  <acarlsson (a] apple.com>
   57673 
   57674         Reviewed by Maciej.
   57675 
   57676         Move shouldInterruptJavaScript to the Chrome.
   57677 
   57678         * bindings/js/kjs_binding.cpp:
   57679         (KJS::ScriptInterpreter::shouldInterruptScript):
   57680         * page/Chrome.cpp:
   57681         (WebCore::Chrome::shouldInterruptJavaScript):
   57682         * page/Chrome.h:
   57683         * page/ChromeClient.h:
   57684         * page/Frame.h:
   57685         * page/mac/FrameMac.h:
   57686         * page/mac/FrameMac.mm:
   57687         * page/mac/WebCoreFrameBridge.h:
   57688         * platform/graphics/svg/SVGImageEmptyClients.h:
   57689         (WebCore::SVGEmptyChromeClient::shouldInterruptJavaScript):
   57690 
   57691 2007-02-07  Darin Adler  <darin (a] apple.com>
   57692 
   57693         Reviewed by Maciej.
   57694 
   57695         - <rdar://problem/4826861> WebKit tests show memory leaks in NSHTMLReader, caused by method named "hash"
   57696 
   57697         * bindings/scripts/CodeGeneratorObjC.pm: Added a list of method names we should never use, since they
   57698         are in base classes WebScriptObject and NSObject. Luckily, only "hash" is causing trouble. Added
   57699         "hash" to the existing special case for "id". Now "hash" is "hashName" just as "id" is "idName".
   57700 
   57701 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57702 
   57703         Reviewed by Adam Roben.
   57704 
   57705         Linux/gdk build fixes for graphics-related stuff.
   57706 
   57707         * platform/graphics/cairo/ImageCairo.cpp:
   57708         (WebCore::BitmapImage::checkForSolidColor):
   57709         * platform/graphics/cairo/ImageSourceCairo.cpp:
   57710         (WebCore::ImageSource::setData):
   57711         * platform/graphics/gdk/ImageGdk.cpp:
   57712         (WebCore::BitmapImage::initPlatformData):
   57713         (WebCore::BitmapImage::invalidatePlatformData):
   57714         (WebCore::Image::loadPlatformResource):
   57715         (WebCore::Image::drawPattern):
   57716 
   57717 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57718 
   57719         Reviewed by Maciej.
   57720 
   57721         Linux/gdk build fixes related to networking.
   57722 
   57723         * platform/network/ResourceHandleInternal.h: Add accessor for m_client.
   57724         (WebCore::ResourceHandleInternal::client):
   57725         * platform/network/gdk/ResourceHandleCurl.cpp: Add missing functions and
   57726         massage for changed APIs.
   57727         (WebCore::ResourceHandle::start):
   57728         (WebCore::ResourceHandle::cancel):
   57729         (WebCore::ResourceHandle::bufferedData):
   57730         (WebCore::ResourceHandle::supportsBufferedData):
   57731         (WebCore::ResourceHandle::setDefersLoading):
   57732         * platform/network/gdk/ResourceHandleManager.cpp: Rename get() to
   57733         sharedInstance(). Massaged for changed APIs.
   57734         (WebCore::ResourceHandleManager::sharedInstance):
   57735         (WebCore::writeCallback):
   57736         (WebCore::ResourceHandleManager::downloadTimerCallback):
   57737         (WebCore::ResourceHandleManager::remove):
   57738         * platform/network/gdk/ResourceHandleManager.h: Ditto.
   57739 
   57740 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57741 
   57742         Reviewed by Maciej.
   57743 
   57744         Mismatched type of alloc/free function crashes gdk build.
   57745 
   57746         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
   57747         (WebCore::JPEGImageReader::close):
   57748 
   57749 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57750 
   57751         Reviewed by Adam Roben.
   57752 
   57753         Linux/gdk build fixes - add file based on qt implementation.
   57754 
   57755         * platform/DragData.h:
   57756         * platform/gdk/DragDataGdk.cpp: Added.
   57757 
   57758 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57759 
   57760         Reviewed by Adam Roben.
   57761 
   57762         Linux/gdk build fixes - add new files based on qt implementation.
   57763 
   57764         * page/gdk/DragControllerGdk.cpp: Added.
   57765         (WebCore::DragController::dragOperation):
   57766         * page/gdk/EventHandlerGdk.cpp: Added.
   57767         (WebCore::EventHandler::focusDocumentView):
   57768         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
   57769         (WebCore::EventHandler::handleDrag):
   57770         (WebCore::EventHandler::eventActivatedView):
   57771 
   57772 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57773 
   57774         Reviewed by Adam Roben.
   57775 
   57776         Linux/gdk build fixes - add new files based on Qt implementation.
   57777 
   57778         * loader/gdk/DocumentLoaderGdk.cpp: Added.
   57779         (WebCore::DocumentLoader::getResponseModifiedHeader):
   57780         * loader/gdk/FrameLoaderClientGdk.cpp: Added.
   57781         (WebCore::FrameLoaderClientGdk::FrameLoaderClientGdk):
   57782         (WebCore::FrameLoaderClientGdk::frame):
   57783         (WebCore::FrameLoaderClientGdk::userAgent):
   57784         (WebCore::FrameLoaderClientGdk::createDocumentLoader):
   57785         (WebCore::FrameLoaderClientGdk::dispatchWillSubmitForm):
   57786         (WebCore::FrameLoaderClientGdk::committedLoad):
   57787         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveAuthenticationChallenge):
   57788         (WebCore::FrameLoaderClientGdk::dispatchDidCancelAuthenticationChallenge):
   57789         (WebCore::FrameLoaderClientGdk::dispatchWillSendRequest):
   57790         (WebCore::FrameLoaderClientGdk::assignIdentifierToInitialRequest):
   57791         (WebCore::FrameLoaderClientGdk::postProgressStartedNotification):
   57792         (WebCore::FrameLoaderClientGdk::postProgressEstimateChangedNotification):
   57793         (WebCore::FrameLoaderClientGdk::postProgressFinishedNotification):
   57794         (WebCore::FrameLoaderClientGdk::frameLoaderDestroyed):
   57795         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveResponse):
   57796         (WebCore::FrameLoaderClientGdk::dispatchDecidePolicyForMIMEType):
   57797         (WebCore::FrameLoaderClientGdk::dispatchDecidePolicyForNewWindowAction):
   57798         (WebCore::FrameLoaderClientGdk::dispatchDecidePolicyForNavigationAction):
   57799         (WebCore::FrameLoaderClientGdk::createPlugin):
   57800         (WebCore::FrameLoaderClientGdk::createFrame):
   57801         (WebCore::FrameLoaderClientGdk::redirectDataToPlugin):
   57802         (WebCore::FrameLoaderClientGdk::createJavaAppletWidget):
   57803         (WebCore::FrameLoaderClientGdk::objectContentType):
   57804         (WebCore::FrameLoaderClientGdk::overrideMediaType):
   57805         (WebCore::FrameLoaderClientGdk::windowObjectCleared):
   57806         (WebCore::FrameLoaderClientGdk::setMainFrameDocumentReady):
   57807         (WebCore::FrameLoaderClientGdk::hasWebView):
   57808         (WebCore::FrameLoaderClientGdk::hasFrameView):
   57809         (WebCore::FrameLoaderClientGdk::dispatchDidFinishLoad):
   57810         (WebCore::FrameLoaderClientGdk::frameLoadCompleted):
   57811         (WebCore::FrameLoaderClientGdk::privateBrowsingEnabled):
   57812         (WebCore::FrameLoaderClientGdk::makeDocumentView):
   57813         (WebCore::FrameLoaderClientGdk::makeRepresentation):
   57814         (WebCore::FrameLoaderClientGdk::forceLayout):
   57815         (WebCore::FrameLoaderClientGdk::forceLayoutForNonHTML):
   57816         (WebCore::FrameLoaderClientGdk::setCopiesOnScroll):
   57817         (WebCore::FrameLoaderClientGdk::detachedFromParent1):
   57818         (WebCore::FrameLoaderClientGdk::detachedFromParent2):
   57819         (WebCore::FrameLoaderClientGdk::detachedFromParent3):
   57820         (WebCore::FrameLoaderClientGdk::detachedFromParent4):
   57821         (WebCore::FrameLoaderClientGdk::loadedFromPageCache):
   57822         (WebCore::FrameLoaderClientGdk::dispatchDidHandleOnloadEvents):
   57823         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveServerRedirectForProvisionalLoad):
   57824         (WebCore::FrameLoaderClientGdk::dispatchDidCancelClientRedirect):
   57825         (WebCore::FrameLoaderClientGdk::dispatchWillPerformClientRedirect):
   57826         (WebCore::FrameLoaderClientGdk::dispatchDidChangeLocationWithinPage):
   57827         (WebCore::FrameLoaderClientGdk::dispatchWillClose):
   57828         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveIcon):
   57829         (WebCore::FrameLoaderClientGdk::dispatchDidStartProvisionalLoad):
   57830         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveTitle):
   57831         (WebCore::FrameLoaderClientGdk::dispatchDidCommitLoad):
   57832         (WebCore::FrameLoaderClientGdk::dispatchDidFinishDocumentLoad):
   57833         (WebCore::FrameLoaderClientGdk::dispatchDidFirstLayout):
   57834         (WebCore::FrameLoaderClientGdk::dispatchShow):
   57835         (WebCore::FrameLoaderClientGdk::cancelPolicyCheck):
   57836         (WebCore::FrameLoaderClientGdk::dispatchDidLoadMainResource):
   57837         (WebCore::FrameLoaderClientGdk::revertToProvisionalState):
   57838         (WebCore::FrameLoaderClientGdk::clearUnarchivingState):
   57839         (WebCore::FrameLoaderClientGdk::willChangeTitle):
   57840         (WebCore::FrameLoaderClientGdk::didChangeTitle):
   57841         (WebCore::FrameLoaderClientGdk::finishedLoading):
   57842         (WebCore::FrameLoaderClientGdk::finalSetupForReplace):
   57843         (WebCore::FrameLoaderClientGdk::setDefersLoading):
   57844         (WebCore::FrameLoaderClientGdk::isArchiveLoadPending):
   57845         (WebCore::FrameLoaderClientGdk::cancelPendingArchiveLoad):
   57846         (WebCore::FrameLoaderClientGdk::clearArchivedResources):
   57847         (WebCore::FrameLoaderClientGdk::canHandleRequest):
   57848         (WebCore::FrameLoaderClientGdk::canShowMIMEType):
   57849         (WebCore::FrameLoaderClientGdk::representationExistsForURLScheme):
   57850         (WebCore::FrameLoaderClientGdk::generatedMIMETypeForURLScheme):
   57851         (WebCore::FrameLoaderClientGdk::restoreScrollPositionAndViewState):
   57852         (WebCore::FrameLoaderClientGdk::provisionalLoadStarted):
   57853         (WebCore::FrameLoaderClientGdk::didFinishLoad):
   57854         (WebCore::FrameLoaderClientGdk::prepareForDataSourceReplacement):
   57855         (WebCore::FrameLoaderClientGdk::setTitle):
   57856         (WebCore::FrameLoaderClientGdk::setDocumentViewFromPageCache):
   57857         (WebCore::FrameLoaderClientGdk::dispatchDidReceiveContentLength):
   57858         (WebCore::FrameLoaderClientGdk::dispatchDidFinishLoading):
   57859         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoading):
   57860         (WebCore::FrameLoaderClientGdk::dispatchDidLoadResourceFromMemoryCache):
   57861         (WebCore::FrameLoaderClientGdk::dispatchDidFailProvisionalLoad):
   57862         (WebCore::FrameLoaderClientGdk::dispatchDidFailLoad):
   57863         (WebCore::FrameLoaderClientGdk::download):
   57864         (WebCore::FrameLoaderClientGdk::cancelledError):
   57865         (WebCore::FrameLoaderClientGdk::cannotShowURLError):
   57866         (WebCore::FrameLoaderClientGdk::interruptForPolicyChangeError):
   57867         (WebCore::FrameLoaderClientGdk::cannotShowMIMETypeError):
   57868         (WebCore::FrameLoaderClientGdk::fileDoesNotExistError):
   57869         (WebCore::FrameLoaderClientGdk::shouldFallBack):
   57870         (WebCore::FrameLoaderClientGdk::willUseArchive):
   57871         (WebCore::FrameLoaderClientGdk::saveScrollPositionAndViewStateToItem):
   57872         (WebCore::FrameLoaderClientGdk::saveDocumentViewToPageCache):
   57873         (WebCore::FrameLoaderClientGdk::canCachePage):
   57874         (WebCore::FrameLoaderClientGdk::dispatchCreatePage):
   57875         (WebCore::FrameLoaderClientGdk::dispatchUnableToImplementPolicy):
   57876         (WebCore::FrameLoaderClientGdk::setMainDocumentError):
   57877         (WebCore::FrameLoaderClientGdk::startDownload):
   57878         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForStandardLoad):
   57879         (WebCore::FrameLoaderClientGdk::updateGlobalHistoryForReload):
   57880         (WebCore::FrameLoaderClientGdk::shouldGoToHistoryItem):
   57881         * loader/gdk/FrameLoaderClientGdk.h: Added.
   57882         (WebCore::FrameLoaderClientGdk::~FrameLoaderClientGdk):
   57883         (WebCore::FrameLoaderClientGdk::setFrame):
   57884 
   57885 2007-02-07  Krzysztof Kowalczyk  <kkowalczyk (a] gmail.com>
   57886 
   57887         Reviewed by Maciej.
   57888 
   57889         Linux/gdk fixes related to fonts.
   57890 
   57891         * platform/gdk/FontDataGdk.cpp:
   57892         (WebCore::FontData::platformInit): remove a work-around for older cairo versions
   57893         since Ubuntu 6.10 ships with cairo that is new enough
   57894         * platform/gdk/FontGdk.cpp:
   57895         (WebCore::Font::drawGlyphs):
   57896         * platform/gdk/FontPlatformDataGdk.cpp: Remove unused variables.
   57897         (WebCore::FontPlatformData::FontPlatformData):
   57898 
   57899 2007-02-07  Alexey Proskuryakov  <ap (a] webkit.org>
   57900 
   57901         Reviewed by Darin.
   57902 
   57903         http://bugs.webkit.org/show_bug.cgi?id=12582
   57904         REGRESSION: Unclosed <title> makes the window display garbage or empty title
   57905 
   57906         Automatic testing is not possible, and manual testing probably doesn't make sense.
   57907 
   57908         * loader/DocumentLoader.cpp:
   57909         (WebCore::canonicalizedTitle): Bail out early if the passed in string is all whitespace.
   57910 
   57911 2007-02-06  Anders Carlsson  <acarlsson (a] apple.com>
   57912 
   57913         Reviewed by John Sullivan.
   57914 
   57915         <rdar://problem/4977952>
   57916         REGRESSION: Yahoo Messenger IM is totally blank
   57917         
   57918         * loader/FrameLoader.cpp:
   57919         (WebCore::FrameLoader::checkContentPolicy):
   57920         Don't ask the policy delegate for content that has valid substitute data.
   57921         
   57922         (WebCore::FrameLoader::checkNavigationPolicy):
   57923         If the loader has substitute data but doesn't have an unreachable URL, let the policy
   57924         delegate decide what to do.
   57925 
   57926 2007-02-07  Geoffrey Garen  <ggaren (a] apple.com>
   57927 
   57928         Reviewed by Darin Adler.
   57929 
   57930         Restoring some of the functionality I removed in r19445. It's insufficient for
   57931         each page to cancel keepAlive only for its child frames, because a frame
   57932         can be removed from the page before we get a chance to cancel its keepAlive.
   57933         So, the page destructor has to cancel keepAlive for all frames. This is safe
   57934         because we prohibit closing a WebView while JavaScript is executing.
   57935 
   57936         * page/Frame.cpp:
   57937         (WebCore::keepAliveSet):
   57938         (WebCore::Frame::keepAlive):
   57939         (WebCore::Frame::cancelAllKeepAlive):
   57940         (WebCore::Frame::lifeSupportTimerFired):
   57941         * page/Frame.h:
   57942         * page/Page.cpp:
   57943         (WebCore::Page::~Page):
   57944 
   57945 2007-02-07  Alexey Proskuryakov  <ap (a] webkit.org>
   57946 
   57947         Reviewed by Darin.
   57948 
   57949         http://bugs.webkit.org/show_bug.cgi?id=12603
   57950         A crash when trying to use XPath functions normalize-space(), string-length() and number()
   57951 
   57952         Test: fast/xpath/implicit-node-args.html
   57953 
   57954         * xml/XPathFunctions.cpp:
   57955         (WebCore::XPath::FunNumber::doEvaluate): Implemented zero parameter case.
   57956         (WebCore::XPath::FunctionMapping::): Corrected descriptions of these functions, as they
   57957         do allow zero parameters.
   57958         (WebCore::XPath::createFunction): Combined the two failure cases to ensure that this
   57959         function never returns 0.
   57960 
   57961 2007-02-07  Zack Rusin  <zrusin (a] trolltech.com>
   57962 
   57963         Fix compilation
   57964 
   57965         * page/qt/EventHandlerQt.cpp:
   57966         (WebCore::EventHandler::eventActivatedView):
   57967 
   57968 2007-02-06  Alice Liu  <alice.liu (a] apple.com>
   57969 
   57970         Reviewed by Maciej.
   57971 
   57972         Added editing command functions for scrolling by page and moving the caret
   57973 
   57974         * editing/Editor.cpp:
   57975         (WebCore::execMoveUpByPageAndModifyCaret):
   57976         (WebCore::execMoveDownByPageAndModifyCaret):
   57977         (WebCore::CommandEntry::):
   57978 
   57979 2007-02-06  Justin Garcia  <justin.garcia (a] apple.com>
   57980 
   57981         Reviewed by john
   57982 
   57983         <rdar://problem/4922367>
   57984         WebView selectLine: followed by deleteBackward: deletes TABLE element of following line
   57985 
   57986         * editing/AppendNodeCommand.cpp:
   57987         (WebCore::AppendNodeCommand::doApply): Don't ASSERT when manipulating
   57988         non-editable content that is embedded in editable content.  We'll do 
   57989         this kind of manipulation when removing redundant style spans after
   57990         pasting content that has non-editable pieces.
   57991         * editing/InsertNodeBeforeCommand.cpp:
   57992         (WebCore::InsertNodeBeforeCommand::doApply): Ditto.
   57993         * editing/htmlediting.cpp:
   57994         (WebCore::isContentEditable): Added, wrapper for Node::isContentEditable
   57995         (WebCore::rangeCompliantEquivalent): Although legal, 
   57996         [{table, select, etc.}, {0, numChildren}] don't refer to children of the element, 
   57997         but positions before and after the element.  So, rangeCompliantEquivalent is 
   57998         really responsible for converting illegal positions *and* legal positions 
   57999         that have a special meaning internally.
   58000         * editing/htmlediting.h:
   58001 
   58002 2007-02-06  Anders Carlsson  <acarlsson (a] apple.com>
   58003 
   58004         Reviewed by Brady.
   58005 
   58006         * platform/String.cpp:
   58007         (WebCore::String::ascii):
   58008         Fix dumping null Strings.
   58009 
   58010 2007-02-06  Anders Carlsson  <acarlsson (a] apple.com>
   58011 
   58012         Reviewed by Geoff.
   58013 
   58014         Fix <rdar://problem/4979484>
   58015         
   58016         * css/CSSPrimitiveValue.cpp:
   58017         (WebCore::isCSSTokenizerIdentifier):
   58018         Do the range check before calling isalpha or isalnum.
   58019 
   58020 2007-02-06  Geoffrey Garen  <ggaren (a] apple.com>
   58021 
   58022         Reviewed by Darin Adler.
   58023 
   58024         Fixed Frame/RenderObject/Node leak report seen while running SVG image tests.
   58025         (We'll need this fix if we ever re-enable SVG image.)
   58026         
   58027         The extra reference belonged to the Frame keepAlive timer (so this was
   58028         not a "real" leak, in the end). The Page destructor has code to cancel all 
   58029         Frame keepAlive timers upon the destruction of the last Page, but an SVG 
   58030         image puts a Page within a Page, making this condition impossible to meet.
   58031         
   58032         The fix here is to have each individual page cancel the keepAlive timers 
   58033         belonging to its child frames.
   58034         
   58035         * page/Frame.cpp: Changed the FrameCounter to use WTF logging.
   58036         (WebCore::): Nixed the lifeSupportSet, since it's no longer used.
   58037         (WebCore::Frame::cancelKeepAlive): Renamed from "endLifeSupport" to match
   58038         the name "keepAlive".
   58039         * page/Page.cpp:
   58040         (WebCore::Page::~Page): Made each page cancel its child keepAlive timers 
   58041         and clear its mainFrame, since we may never reach the condition of having 0 Pages.
   58042 
   58043 2007-02-06  Adam Roben  <aroben (a] apple.com>
   58044 
   58045         Rubberstamped by Brady.
   58046 
   58047         Revert the log channel constants to their old values for all you pretty
   58048         people out there who were using the old ones. I also renamed
   58049         LogResources to LogPlatformLeaks to be a bit more specific.
   58050 
   58051         * platform/Logging.cpp:
   58052         (WebCore::):
   58053         * platform/Logging.h:
   58054 
   58055 2007-02-05  Justin Garcia  <justin.garcia (a] apple.com>
   58056 
   58057         Reviewed by john
   58058 
   58059         <rdar://problem/4959067>
   58060         Bullets get erased or moved down to another line
   58061         <rdar://problem/4912529>
   58062         Seed: Bulleted list in Note in Mail.app does not work with Japanese input mode
   58063         
   58064         Do not expand the selection to include fully selected 
   58065         special elements when insering text over a selection.
   58066 
   58067         * editing/CompositeEditCommand.cpp:
   58068         (WebCore::CompositeEditCommand::deleteSelection): Pass
   58069         expandForSpecialElements through to DeleteSelectionCommand's constructor.
   58070         (WebCore::CompositeEditCommand::moveParagraphs): Use the 
   58071         convenience function.
   58072         * editing/CompositeEditCommand.h:
   58073         * editing/DeleteSelectionCommand.h:
   58074         * editing/InsertTextCommand.cpp:
   58075         (WebCore::InsertTextCommand::input): Do not expand the selection
   58076         to be deleted for special elements.
   58077         * editing/ReplaceSelectionCommand.cpp:
   58078         (WebCore::ReplaceSelectionCommand::doApply): Added a FIXME about 
   58079         when we should expand the selection.
   58080 
   58081 2007-02-06  Geoffrey Garen  <ggaren (a] apple.com>
   58082 
   58083         Reviewed by Anders Carlsson.
   58084         
   58085         Disabled support for SVG image because it crashes all the time.
   58086 
   58087         * loader/CachedImage.cpp:
   58088         (WebCore::CachedImage::createImage):
   58089 
   58090 2007-02-06  Mitz Pettel  <mitz (a] webkit.org>
   58091 
   58092         Reviewed by Darin.
   58093 
   58094         - fix http://bugs.webkit.org/show_bug.cgi?id=12518
   58095           Betsson.com crashes browser
   58096 
   58097         Test: fast/layers/generated-layer-scrollbar-crash.html
   58098 
   58099         * rendering/RenderLayer.cpp:
   58100         (WebCore::RenderLayer::createScrollbar): Changed element()->document() to
   58101         document() to work with anonymous objects.
   58102         (WebCore::RenderLayer::updateOverflowStatus): Ditto.
   58103 
   58104 2007-02-06  Eric Seidel  <eric (a] webkit.org>
   58105 
   58106         Reviewed by mitz.
   58107 
   58108         WebKit ignores floating point values for stroke-miterlimit
   58109         http://bugs.webkit.org/show_bug.cgi?id=12577
   58110         
   58111         Test: svg/W3C-SVG-1.1/painting-stroke-07-t.svg
   58112 
   58113         * ksvg2/css/SVGCSSParser.cpp:
   58114         (WebCore::CSSParser::parseSVGValue):
   58115         * ksvg2/css/SVGCSSStyleSelector.cpp:
   58116         (WebCore::CSSStyleSelector::applySVGProperty):
   58117         * ksvg2/css/SVGRenderStyle.h:
   58118         * ksvg2/css/SVGRenderStyleDefs.h:
   58119         (WebCore::StyleStrokeData::operator!=):
   58120 
   58121 2007-02-06  Adam Roben  <aroben (a] apple.com>
   58122 
   58123         Reviewed by Ada and Oliver.
   58124 
   58125         Adding a new LogResources channel for tracking platform resource usage.
   58126 
   58127         * platform/Logging.cpp: Added new channel, cleaned up constants to be more readable.
   58128         * platform/Logging.h: Declare new channel.
   58129 
   58130 2007-02-06  Alexey Proskuryakov  <ap (a] webkit.org>
   58131 
   58132         Reviewed by Geoff.
   58133 
   58134         http://bugs.webkit.org/show_bug.cgi?id=12619
   58135         Non-abbreviated XPaths don't work
   58136 
   58137         Test: fast/xpath/ancestor-axis.html
   58138 
   58139         * xml/XPathParser.cpp:
   58140         (WebCore::XPath::Parser::lex): Fix axis name parsing to actually work.
   58141         * xml/XPathStep.cpp:
   58142         (WebCore::XPath::Step::nodeTestMatches): Fix "*" node test to actually work.
   58143 
   58144 2007-02-06  Mark Rowe  <mrowe (a] apple.com>
   58145 
   58146         Roll out incomplete support for font-stretch (r19350) at Dave Hyatt's request.
   58147         See http://bugs.webkit.org/show_bug.cgi?id=12530#c9 for more info.
   58148 
   58149         * css/CSSComputedStyleDeclaration.cpp:
   58150         (WebCore::):
   58151         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   58152         * css/cssparser.cpp:
   58153         (WebCore::CSSParser::parseValue):
   58154         * css/cssstyleselector.cpp:
   58155         (WebCore::CSSStyleSelector::applyDeclarations):
   58156         (WebCore::CSSStyleSelector::applyProperty):
   58157         * platform/FontCache.cpp:
   58158         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
   58159         (WebCore::FontPlatformDataCacheKey::operator==):
   58160         (WebCore::computeHash):
   58161         (WebCore::FontPlatformDataCacheKeyTraits::deletedValue):
   58162         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
   58163         (WebCore::FontCache::getCachedFontPlatformData):
   58164         * platform/FontDescription.h:
   58165         (WebCore::FontDescription::FontDescription):
   58166         (WebCore::FontDescription::weight):
   58167         (WebCore::FontDescription::setWeight):
   58168         (WebCore::FontDescription::operator==):
   58169         * platform/mac/FontCacheMac.mm:
   58170         (WebCore::FontCache::createFontPlatformData):
   58171         * platform/mac/WebFontCache.mm:
   58172         (acceptableChoice):
   58173         (betterChoice):
   58174         (+[WebFontCache fontWithFamily:traits:size:]):
   58175 
   58176 2007-02-05  Adele Peterson  <adele (a] apple.com>
   58177 
   58178         Reviewed by Darin.
   58179 
   58180         A few small updates to my bidi patch.
   58181 
   58182         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject): Moved the declaration of the CharacterBuffer outside the if statement since we use its data outside that scope.
   58183         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintItemForeground): ditto.
   58184         * rendering/bidi.cpp: (WebCore::RenderBlock::bidiReorderCharacters): Used a PassRefPtr for the BidiContext.
   58185 
   58186 2007-02-05  Adele Peterson  <adele (a] apple.com>
   58187 
   58188         Reviewed by Adam.
   58189 
   58190         Fix for assertion failure in fast/events/objc-keyboard-event-creation.html
   58191 
   58192         * html/HTMLInputElement.cpp:
   58193         (WebCore::HTMLInputElement::selectionStart): Check that the selection offsets are not equal to -1 (which is means the selection has never been set) instead of checking for >= 0.
   58194         (WebCore::HTMLInputElement::selectionEnd): ditto.
   58195         (WebCore::HTMLInputElement::setValue): ditto.
   58196         (WebCore::HTMLInputElement::selection): Return an empty selection if the input is not a text field or if no selection has ever been set in the text field.
   58197         * html/HTMLTextAreaElement.cpp:
   58198         (WebCore::HTMLTextAreaElement::selectionStart): Check that the selection offsets are not equal to -1.
   58199         (WebCore::HTMLTextAreaElement::selectionEnd): ditto.
   58200         (WebCore::HTMLTextAreaElement::setValue): ditto.
   58201         (WebCore::HTMLTextAreaElement::selection): Return an empty selection if no selection has ever been set in the textarea.
   58202 
   58203         * dom/Position.cpp: Added FIXMEs that we should catch the negative offset earlier.
   58204         (WebCore::Position::previous):
   58205         (WebCore::Position::next):
   58206 
   58207 2007-02-05  Justin Garcia  <justin.garcia (a] apple.com>
   58208 
   58209         Reviewed by harrison
   58210 
   58211         <rdar://problem/4947387>
   58212         REGRESSION Shift Command Left should only select to the beginning of the line
   58213 
   58214         * editing/Editor.cpp:
   58215         (WebCore::CommandEntry::): Never copy/paste code.
   58216 
   58217 2007-02-05  Darin Adler  <darin (a] apple.com>
   58218 
   58219         Reviewed by John Sullivan.
   58220 
   58221         - fix http://bugs.webkit.org/show_bug.cgi?id=11535
   58222           <rdar://problem/4946959> REGRESSION: onclick="this.select();" not working on new forms (11535)
   58223 
   58224         Test: fast/forms/input-select-on-click.html
   58225 
   58226         * page/EventHandler.h: Added m_mouseDownWasSingleClickInSelection boolean.
   58227         Organized other booleans a bit more logically.
   58228         * page/EventHandler.cpp:
   58229         (WebCore::EventHandler::EventHandler): Rearrange order to match EventHandler.h, add
   58230         m_mouseDownWasSingleClickInSelection initialization.
   58231         (WebCore::EventHandler::handleMousePressEventSingleClick): Set m_mouseDownWasSingleClickInSelection
   58232         to true in the appropriate special case.
   58233         (WebCore::EventHandler::handleMousePressEvent): Set m_mouseDownWasSingleClickInSelection to false.
   58234         (WebCore::EventHandler::handleMouseReleaseEvent): Change code to clear selection or set to caret to
   58235         only fire if m_mouseDownWasSingleClickInSelection was true rather than firing for any
   58236         m_mouseDownMayStartSelect case.
   58237 
   58238 2007-02-05  George Staikos  <staikos (a] kde.org>
   58239 
   58240         Reviewed by Maciej.
   58241 
   58242         Send HTTP cookies.
   58243 
   58244         * platform/network/qt/ResourceHandleManagerQt.cpp:
   58245         (WebCore::RequestQt::RequestQt):
   58246 
   58247 2007-02-05  Adele Peterson  <adele (a] apple.com>
   58248 
   58249         Reviewed by Mitz and Anders.
   58250 
   58251         Fix for http://bugs.webkit.org/show_bug.cgi?id=11811
   58252         <rdar://problem/4947184> REGRESSION (r11783): Hebrew text in list boxes is reversed
   58253 
   58254         http://bugs.webkit.org/show_bug.cgi?id=11812
   58255         <rdar://problem/4960269> REGRESSION (Native file upload): Hebrew filenames are reversed
   58256 
   58257         Tests: 
   58258         fast/text/international/bidi-listbox.html
   58259         fast/text/international/bidi-listbox-atsui.html
   58260 
   58261         * rendering/RenderBlock.h: Added static bidiReorderCharacters that will run the bidi algorithm on a character buffer.
   58262         * rendering/bidi.cpp:
   58263         (WebCore::RenderBlock::bidiReorderCharacters): Added. Creates an anonymous RenderBlock and RenderText to feed into bidiReorderLines.
   58264         (WebCore::RenderBlock::constructLine): Uses the new convenience methods on BidiRun.
   58265         * rendering/bidi.h:
   58266         (WebCore::BidiRun::reversed): Added convenience method.
   58267         (WebCore::BidiRun::dirOverride): ditto.
   58268 
   58269         * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::paintObject): Creates a buffer and calls bidiReorderCharacters
   58270           to get a correctly ordered character buffer for drawText.
   58271         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::paintItemForeground): ditto.
   58272 
   58273 2007-02-05  Mitz Pettel  <mitz (a] webkit.org>
   58274 
   58275         Reviewed by Darin.
   58276 
   58277         - fix http://bugs.webkit.org/show_bug.cgi?id=12590
   58278           REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
   58279 
   58280         Test: fast/repaint/selection-gap-overflow-scroll.html
   58281 
   58282         * rendering/RenderBlock.cpp:
   58283         (WebCore::RenderBlock::selectionGapRects): Adjust for overflow scroll.
   58284 
   58285 2007-02-05  Mitz Pettel  <mitz (a] webkit.org>
   58286 
   58287         Reviewed by Adele.
   58288 
   58289         - fix http://bugs.webkit.org/show_bug.cgi?id=11916
   58290           REGRESSION (SearchField): RTL search fields are mixed up
   58291 
   58292         Test: fast/forms/search-rtl.html
   58293 
   58294         * rendering/RenderTextControl.cpp:
   58295         (WebCore::RenderTextControl::createInnerBlockStyle): Always make the inner
   58296         block LTR so that the results button will be on the left and the cancel
   58297         button will be on the right.
   58298         (WebCore::RenderTextControl::createInnerTextStyle): Inherit the direction
   58299         property directly from the control so that it won't be masked by the inner
   58300         block's LTR override.
   58301         (WebCore::RenderTextControl::nodeAtPoint): Removed code that swapped the
   58302         results and cancel buttons for RTL.
   58303         (WebCore::RenderTextControl::forwardEvent): Ditto.
   58304         (WebCore::RenderTextControl::clientPaddingLeft): Ditto.
   58305         (WebCore::RenderTextControl::clientPaddingRight): Ditto.
   58306 
   58307 2007-02-05  Mitz Pettel  <mitz (a] webkit.org>
   58308 
   58309         Reviewed by Adele.
   58310 
   58311         - fix http://bugs.webkit.org/show_bug.cgi?id=12618
   58312           REGRESSION (SearchField): Dragging across the text and releasing over the clear button clears the field
   58313 
   58314         Test: fast/forms/search-cancel-button-mouseup.html
   58315 
   58316         Made the cancel button capturing.
   58317 
   58318         * html/HTMLTextFieldInnerElement.cpp:
   58319         (WebCore::HTMLSearchFieldCancelButtonElement::HTMLSearchFieldCancelButtonElement):
   58320         (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
   58321         * html/HTMLTextFieldInnerElement.h:
   58322 
   58323 2007-02-05  Mitz Pettel  <mitz (a] webkit.org>
   58324 
   58325         Reviewed by Darin.
   58326 
   58327         - fix http://bugs.webkit.org/show_bug.cgi?id=6626
   58328           Arabic & Farsi rendered with no shaping (all glyphs separate, unreadable!)
   58329 
   58330         No test possible since Mac OS X only ships with fonts that contain shaping
   58331         information.
   58332 
   58333         * icu/unicode/ushape.h: Added from
   58334         http://www.opensource.apple.com/darwinsource/10.4.8.ppc/ICU-6.2.9/icuSources/common/unicode/
   58335         * platform/FontData.h:
   58336         (WebCore::FontData::shapesArabic): Added. Returns whether the font contains
   58337         shaping information for Arabic or not.
   58338         * platform/mac/FontDataMac.mm:
   58339         (WebCore::FontData::platformInit):
   58340         (WebCore::FontData::checkShapesArabic): Added. Checks whether the font contains
   58341         a glyph metamorphosis table. The heuristic is that if a font contains Arabic glyphs
   58342         and a metamorphosis table, then it includes shaping information for Arabic.
   58343         * platform/mac/FontMac.mm:
   58344         (WebCore::overrideLayoutOperation): Changed to use the same character buffer passed
   58345         to ATSUI instead of the original character buffer and to give zero-width spaces zero
   58346         width.
   58347         (WebCore::isArabicLamWithAlefLigature): Added. Checks if the character is one
   58348         of the Arabic presentation forms of Lam with Alef.
   58349         (WebCore::shapeArabic): Added. This is a wrapper around the ICU Arabic shaping routine
   58350         that replaces each space following a Lam with Alef ligature resulting from shaping
   58351         with a zero-width space.
   58352         (WebCore::ATSULayoutParameters::initialize): Changed to allocate the auxiliary buffer
   58353         lazily for mirroring and Arabic shaping. Added a call to shapeArabic() when required.
   58354 
   58355 2007-02-05  Eric Seidel  <eric (a] webkit.org>
   58356 
   58357         No review, build fix only.
   58358 
   58359         * ksvg2/svg/SVGStyleElement.cpp: add forgotten header.
   58360 
   58361 2007-02-05  Eric Seidel  <eric (a] webkit.org>
   58362 
   58363         Reviewed by bdash.
   58364 
   58365         Fix style name testcase which I broke in my last commit.
   58366 
   58367         * ksvg2/svg/SVGStyleElement.cpp:
   58368         (WebCore::SVGStyleElement::xmlspace):
   58369         (WebCore::SVGStyleElement::title): override Element::title()
   58370         (WebCore::SVGStyleElement::parseMappedAttribute):
   58371         * ksvg2/svg/SVGStyleElement.h:
   58372 
   58373 2007-02-04  Eric Seidel  <eric (a] webkit.org>
   58374 
   58375         Reviewed by darin.
   58376 
   58377         Fix hand cursor on link hover for SVG
   58378         Fix status text on link hover for SVG
   58379         Fix tooltips on link hover for SVG
   58380         Fix link dragging for SVG
   58381         http://bugs.webkit.org/show_bug.cgi?id=12575
   58382         
   58383         Test: added manual-tests/svg-links.svg
   58384 
   58385         * dom/Document.cpp:
   58386         (WebCore::Document::prepareMouseEvent):
   58387         * dom/Element.cpp:
   58388         (WebCore::Element::title):
   58389         * dom/Element.h:
   58390         * html/HTMLElement.cpp:
   58391         (WebCore::HTMLElement::setId):
   58392         (WebCore::HTMLElement::title):
   58393         (WebCore::HTMLElement::setTitle):
   58394         (WebCore::HTMLElement::setLang):
   58395         * html/HTMLElement.h:
   58396         * ksvg2/svg/SVGAElement.cpp:
   58397         (WebCore::SVGAElement::title):
   58398         (WebCore::SVGAElement::parseMappedAttribute):
   58399         (WebCore::SVGAElement::defaultEventHandler):
   58400         * ksvg2/svg/SVGAElement.h:
   58401         * ksvg2/svg/SVGTitleElement.cpp:
   58402         * ksvg2/svg/SVGTitleElement.h:
   58403         * manual-tests/svg-links.svg: Added.
   58404         * rendering/HitTestResult.cpp:
   58405         (WebCore::HitTestResult::title):
   58406         (WebCore::HitTestResult::absoluteImageURL):
   58407         (WebCore::HitTestResult::absoluteLinkURL):
   58408         (WebCore::HitTestResult::isLiveLink):
   58409         (WebCore::HitTestResult::titleDisplayString):
   58410 
   58411 2007-02-04  Alexey Proskuryakov  <ap (a] webkit.org>
   58412 
   58413         Reviewed by Darin.
   58414 
   58415         http://bugs.webkit.org/show_bug.cgi?id=12602
   58416         XPath functions string(), normalize-space() and string-length() don't work
   58417         without arguments
   58418 
   58419         Test: fast/xpath/implicit-node-args.html
   58420 
   58421         * xml/XPathFunctions.cpp:
   58422         (WebCore::XPath::FunString::doEvaluate):
   58423         (WebCore::XPath::FunStringLength::doEvaluate):
   58424         (WebCore::XPath::FunNormalizeSpace::doEvaluate):
   58425         Don't try to pass RefPtr<Node> to the Value ctor.
   58426 
   58427 2007-02-04  Alexey Proskuryakov  <ap (a] webkit.org>
   58428 
   58429         Reviewed by Darin.
   58430 
   58431         http://bugs.webkit.org/show_bug.cgi?id=8791
   58432         XPath should support custom node resolvers
   58433 
   58434         * bindings/js/JSCustomXPathNSResolver.cpp: Added.
   58435         (WebCore::JSCustomXPathNSResolver::create):
   58436         (WebCore::JSCustomXPathNSResolver::JSCustomXPathNSResolver):
   58437         (WebCore::JSCustomXPathNSResolver::~JSCustomXPathNSResolver):
   58438         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
   58439         * bindings/js/JSCustomXPathNSResolver.h: Added.
   58440         * bindings/objc/DOMCustomXPathNSResolver.h: Added.
   58441         * bindings/objc/DOMCustomXPathNSResolver.mm: Added.
   58442         (WebCore::DOMCustomXPathNSResolver::DOMCustomXPathNSResolver):
   58443         (WebCore::DOMCustomXPathNSResolver::~DOMCustomXPathNSResolver):
   58444         (WebCore::DOMCustomXPathNSResolver::lookupNamespaceURI):
   58445         Wrappers for JS/ObjC objects that can be used as resolvers.
   58446 
   58447         * bindings/scripts/CodeGeneratorJS.pm:
   58448         * bindings/scripts/CodeGeneratorObjC.pm:
   58449         Use the above wrappers to support custom resolvers.
   58450 
   58451         * xml/XPathNSResolver.cpp:
   58452         * xml/XPathNSResolver.h:
   58453         Turned this class into an abstract one.
   58454 
   58455         * xml/NativeXPathNSResolver.cpp: Added.
   58456         (WebCore::NativeXPathNSResolver::NativeXPathNSResolver):
   58457         (WebCore::NativeXPathNSResolver::~NativeXPathNSResolver):
   58458         (WebCore::NativeXPathNSResolver::lookupNamespaceURI):
   58459         * xml/NativeXPathNSResolver.h: Added.
   58460         A XPathNSResolver subclass, doing what XPathNSResolver used to do.
   58461 
   58462         * xml/XPathEvaluator.cpp:
   58463         (WebCore::XPathEvaluator::createNSResolver): Create a NativeXPathNSResolver.
   58464 
   58465         * WebCore.xcodeproj/project.pbxproj: Added new files.
   58466 
   58467 2007-02-04  Oliver Hunt  <oliver (a] apple.com>
   58468 
   58469         Reviewed by Adam.
   58470 
   58471         Tidying up EventHandler, and moving more of
   58472         EventHandlerMac.mm to EventHandler.cpp
   58473 
   58474         Also added EventHandler::eventLoopHandleMouse[Dragged,Up]
   58475         these are basically helper functions to allow correct event
   58476         handling on MacOS.        
   58477 
   58478         * page/EventHandler.cpp:
   58479         (WebCore::EventHandler::handleMouseUp):
   58480         (WebCore::EventHandler::dragSourceMovedTo):
   58481         (WebCore::EventHandler::dragSourceEndedAt):
   58482         (WebCore::EventHandler::dispatchDragSrcEvent):
   58483            Moved from EventHandlerMac to EventHandler
   58484 
   58485         * page/EventHandler.h:
   58486         (WebCore::EventHandler::eventLoopHandleMouseUp):
   58487         (WebCore::EventHandler::eventLoopHandleMouseDragged):
   58488           Null implementations of two Mac helper functions
   58489         * page/mac/EventHandlerMac.mm:
   58490         (WebCore::EventHandler::eventLoopHandleMouseDragged):           
   58491         (WebCore::EventHandler::handleDrag):
   58492           Much tidying, reduced nesting, made less dependent on NS types   
   58493         (WebCore::EventHandler::eventLoopHandleMouseDragged):
   58494         (WebCore::EventHandler::eventLoopHandleMouseUp):  
   58495           Helper functions to let us process events properly on MacOS
   58496 
   58497         * page/mac/WebCoreFrameBridge.mm:
   58498         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
   58499 
   58500 2007-02-04  George Staikos  <staikos (a] kde.org>
   58501 
   58502         Reviewed by Zack.
   58503 
   58504         Some Qt hacks and cleanups - makes rendering of forms much better on
   58505         OS X
   58506 
   58507         * platform/qt/PlatformKeyboardEventQt.cpp: Add Key_Return/Enter
   58508         (WebCore::keyIdentifierForQtKeyCode):
   58509         (WebCore::windowsKeyCodeForKeyEvent):
   58510         * platform/qt/RenderThemeQt.cpp: Hacks and fix buttons
   58511         (WebCore::RenderThemeQt::addIntrinsicMargins):
   58512         (WebCore::RenderThemeQt::setCheckboxSize):
   58513         (WebCore::RenderThemeQt::supportsFocus):
   58514         (WebCore::RenderThemeQt::applyTheme):
   58515 
   58516 2007-02-03  Maciej Stachowiak  <mjs (a] apple.com>
   58517 
   58518         Rubber stamped by Adam.
   58519 
   58520         - remove obsolete code that has an annoying space in the directory name
   58521 
   58522         * WebCore.vcproj/Image Viewer/Image Viewer.cpp: Removed.
   58523         * WebCore.vcproj/Image Viewer/Image Viewer.h: Removed.
   58524         * WebCore.vcproj/Image Viewer/Image Viewer.rc: Removed.
   58525         * WebCore.vcproj/Image Viewer/Image Viewer.reg: Removed.
   58526         * WebCore.vcproj/Image Viewer/Image Viewer.vcproj: Removed.
   58527         * WebCore.vcproj/Image Viewer/ImageDocument.cpp: Removed.
   58528         * WebCore.vcproj/Image Viewer/ImageDocument.h: Removed.
   58529         * WebCore.vcproj/Image Viewer/ImageMainFrame.cpp: Removed.
   58530         * WebCore.vcproj/Image Viewer/ImageMainFrame.h: Removed.
   58531         * WebCore.vcproj/Image Viewer/ImageView.cpp: Removed.
   58532         * WebCore.vcproj/Image Viewer/ImageView.h: Removed.
   58533         * WebCore.vcproj/Image Viewer/Resource.h: Removed.
   58534         * WebCore.vcproj/Image Viewer/res/Image Viewer.ico: Removed.
   58535         * WebCore.vcproj/Image Viewer/res/Image ViewerDoc.ico: Removed.
   58536         * WebCore.vcproj/Image Viewer/res/ImageViewer.rc2: Removed.
   58537         * WebCore.vcproj/Image Viewer/res/Toolbar.bmp: Removed.
   58538         * WebCore.vcproj/Image Viewer/stdafx.cpp: Removed.
   58539         * WebCore.vcproj/Image Viewer/stdafx.h: Removed.
   58540 
   58541 2007-02-04  Mitz Pettel  <mitz (a] webkit.org>
   58542 
   58543         Reviewed by Oliver.
   58544 
   58545         - fix http://bugs.webkit.org/show_bug.cgi?id=12564
   58546           REGRESSION: Uncaught AppKit exception when using the scrollwheel while Gmail is loading
   58547 
   58548         * platform/mac/PlatformMouseEventMac.mm:
   58549         (WebCore::eventNumberForEvent): Scroll wheel events don't have an event number.
   58550 
   58551 2007-02-04  Nikolas Zimmermann  <zimmermann (a] kde.org>
   58552 
   58553         Reviewed by Sam.
   58554 
   58555         Add support for xml:space="preserve" for SVG text.
   58556         It can be modeled by using white-space="pre" and replace \n by spaces.
   58557 
   58558         Handle xml:space="default" correctly.
   58559         Always remove tabs from SVG text - as demanded by spec.
   58560 
   58561         Added test: svg/custom/text-whitespace-handling.svg
   58562 
   58563         * css/svg.css:
   58564         * ksvg2/svg/SVGTextContentElement.cpp:
   58565         (WebCore::SVGTextContentElement::parseMappedAttribute):
   58566         * rendering/RenderText.cpp:
   58567         (WebCore::RenderText::setStyle):
   58568         (WebCore::RenderText::setTextInternal):
   58569         * rendering/bidi.cpp:
   58570         (WebCore::shouldPreserveNewline):
   58571         (WebCore::RenderBlock::skipWhitespace):
   58572         (WebCore::RenderBlock::findNextLineBreak):
   58573 
   58574 2007-02-03  Alexey Proskuryakov  <ap (a] webkit.org>
   58575 
   58576         Reviewed by Darin.
   58577 
   58578         http://bugs.webkit.org/show_bug.cgi?id=12560
   58579         W3C XPath test Text_Nodes.svg fails
   58580 
   58581         Covered by dom/svg/level3/xpath/Text_Nodes.svg
   58582 
   58583         * xml/XPathStep.cpp:
   58584         (WebCore::XPath::Step::nodeTestMatches): Only include the first text sibling in text() matches.
   58585 
   58586 2007-02-03  Alexey Proskuryakov  <ap (a] webkit.org>
   58587 
   58588         Reviewed by Darin.
   58589 
   58590         http://bugs.webkit.org/show_bug.cgi?id=12485
   58591         XPath id() function doesn't work as root in paths
   58592 
   58593         Test: fast/xpath/id-path.html
   58594 
   58595         * xml/XPathPath.cpp:
   58596         (WebCore::XPath::Path::doEvaluate): Implemented.
   58597         (WebCore::XPath::LocationPath::evaluate): A new overload that takes an initial NodeVector.
   58598         (WebCore::XPath::LocationPath::doEvaluate): Moved most of the logic to the new evaluate().
   58599 
   58600         * xml/XPathPath.h: Added a new evaluate() overload and a using declaration to keep the
   58601         generic one visible.
   58602 
   58603 2007-02-03  Alexey Proskuryakov  <ap (a] webkit.org>
   58604 
   58605         Reviewed by Darin.
   58606 
   58607         http://bugs.webkit.org/show_bug.cgi?id=12559
   58608         REGRESSION: Crash in checkForHeadCharset() under GuardMalloc
   58609 
   58610         No tests possible.
   58611 
   58612         * loader/TextResourceDecoder.cpp:
   58613         (WebCore::TextResourceDecoder::checkForHeadCharset): Fix end of buffer checks; sprinkle a number 
   58614         of new ones over the function.
   58615 
   58616 2007-02-03  David Kilzer  <ddkilzer (a] webkit.org>
   58617 
   58618         Reviewed by NOBODY (no-svg build fix).
   58619 
   58620         * page/EventHandler.cpp: Include FloatPoint.h.
   58621 
   58622 2007-02-03  Alexey Proskuryakov  <ap (a] webkit.org>
   58623 
   58624         Reviewed by Mitz.
   58625 
   58626         http://bugs.webkit.org/show_bug.cgi?id=12549
   58627         Wrong character encoding at www.ravmilim.co.il
   58628 
   58629         Test: fast/encoding/meta-charset.html
   58630 
   58631         * loader/TextResourceDecoder.cpp:
   58632         (WebCore::TextResourceDecoder::checkForHeadCharset): Fix an off by one error.
   58633 
   58634 2007-02-02  Maciej Stachowiak  <mjs (a] apple.com>
   58635         
   58636         Reviewed by Hyatt & Adele.
   58637         
   58638         - <rdar://problem/4896972> TV guide listings page doesn't finish loading (11674)
   58639         
   58640         Test case: fast/forms/disabled-select-change-index.html
   58641         
   58642         * html/HTMLOptionElement.cpp:
   58643         (WebCore::HTMLOptionElement::setSelected): Allow changing selected state of a disabled
   58644         option.
   58645         
   58646 2007-02-03  Nikolas Zimmermann  <zimmermann (a] kde.org>
   58647 
   58648         Build fix, not reviewed.
   58649 
   58650         Blind attempt to fix Qt build.
   58651 
   58652         * WebCore.pro: Add RenderSVGGradientStop.cpp / RenderSVGHiddenContainer.cpp
   58653 
   58654 2007-02-03  Nikolas Zimmermann  <zimmermann (a] kde.org>
   58655 
   58656         Reviewed by Eric & Maciej.
   58657 
   58658         Fix serveral <use> issues:
   58659         - When events are dispatch to a referenced element, the actual event.target
   58660           has to be set to the corresponding SVGElementInstance object
   58661 
   58662         - Node::shadowAncestorNode() should _not_ return the shadowParentNode for SVG elements
   58663           This is only needed for the HTML forms concept and breaks event dispatching for SVG shadow tree elements.
   58664 
   58665         - Add SVGElementInstance as possible EventTarget in bindings/js/kjs_dom.cpp
   58666           (Now event.target returns the actual SVGElementInstance object for a shadow tree element)
   58667 
   58668         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12502 (Reproducible crash when browsing SVG map.)
   58669         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12511 (<use> has event dispatching issues)
   58670 
   58671         Added test: svg/custom/use-event-handler-on-use-element.svg
   58672         Added test: svg/custom/use-event-handler-on-referenced-element.svg
   58673         Added test: svg/custom/use-elementInstance-event-target.svg
   58674         Added test: svg/custom/use-elementInstance-methods.svg
   58675 
   58676         * bindings/js/kjs_dom.cpp:
   58677         (KJS::toJS):
   58678         * dom/EventTarget.cpp:
   58679         (WebCore::EventTarget::toSVGElementInstance):
   58680         * dom/EventTarget.h:
   58681         * dom/EventTargetNode.cpp:
   58682         (WebCore::EventTargetNode::handleLocalEvents):
   58683         (WebCore::EventTargetNode::dispatchGenericEvent):
   58684         (WebCore::EventTargetNode::dispatchEvent):
   58685         * dom/EventTargetNode.h:
   58686         * dom/Node.cpp:
   58687         (WebCore::Node::shadowAncestorNode):
   58688         * ksvg2/svg/SVGElement.cpp:
   58689         (WebCore::shadowTreeParentElementForShadowTreeElement):
   58690         (WebCore::SVGElement::dispatchEvent):
   58691         * ksvg2/svg/SVGElement.h:
   58692         * ksvg2/svg/SVGElementInstance.cpp:
   58693         (WebCore::SVGElementInstance::toSVGElementInstance):
   58694         * ksvg2/svg/SVGElementInstance.h:
   58695         * ksvg2/svg/SVGUseElement.cpp:
   58696         (WebCore::SVGUseElement::notifyAttributeChange):
   58697         (WebCore::SVGUseElement::instanceForShadowTreeElement):
   58698         * ksvg2/svg/SVGUseElement.h:
   58699 
   58700 2007-02-02  Oliver Hunt  <oliver (a] apple.com>
   58701 
   58702         Reviewed by Geoff.
   58703 
   58704         Add guard around accessing [NSEvent eventNumber] to ensure
   58705         we don't attempt to access it on on non-mouse related NSEvent.
   58706 
   58707         * platform/mac/PlatformMouseEventMac.mm:
   58708         (WebCore::eventNumberForEvent):
   58709         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   58710 
   58711 2007-02-02  Adam Roben  <aroben (a] apple.com>
   58712 
   58713         Reviewed by Anders.
   58714 
   58715         Try to be a little less selfish about DocumentLoader.
   58716 
   58717         Spotted while working on <rdar://problem/4957747>.
   58718 
   58719         * page/ContextMenuController.cpp:
   58720         (WebCore::ContextMenuController::contextMenuItemSelected):
   58721             Everyone can open frames in new windows.
   58722 
   58723 2007-02-02  Nikolas Zimmermann  <zimmermann (a] kde.org>
   58724 
   58725         Reviewed by Eric.
   58726 
   58727         Move xml:space/xml:lang from svgattrs.in to xmlattrs.in where they actually belong.
   58728         Now they are actually recognized by SVGLangSpace::parseMappedAttribute.
   58729         Patch implementing xml:space="preserve" coming soon, which acts as test for this stuff.
   58730 
   58731         Always build XMLNames.cpp (not only for SVG) and replace all occourences of
   58732         "http://www.w3.org/XML/1998/namespace" by "XMLNames::xmlNamespaceURI".
   58733 
   58734         * DerivedSources.make:
   58735         * dom/DOMImplementation.cpp:
   58736         (WebCore::DOMImplementation::createDocument):
   58737         * ksvg2/svg/SVGLangSpace.cpp:
   58738         (WebCore::SVGLangSpace::SVGLangSpace):
   58739         (WebCore::SVGLangSpace::parseMappedAttribute):
   58740         * ksvg2/svg/SVGLangSpace.h:
   58741         * ksvg2/svg/svgattrs.in:
   58742         * page/Frame.cpp:
   58743         (WebCore::Frame::Frame):
   58744         * xml/XPathNSResolver.cpp:
   58745         (WebCore::XPathNSResolver::lookupNamespaceURI):
   58746         * xml/xmlattrs.in:
   58747 
   58748 2007-02-02  Beth Dakin  <bdakin (a] apple.com>
   58749 
   58750         Reviewed by Maciej.
   58751 
   58752         Working on a layout test.
   58753 
   58754         Fix for <rdar://problem/4966100> REGRESSION: Reproducible ASSERT 
   58755         hit at Walgreens.com
   58756 
   58757         * page/Frame.cpp:
   58758         (WebCore::Frame::setView): If we are setting the view to 0 and 
   58759         detaching the document, call unscheduleRealyout() on the old view 
   58760         before setting it to 0.
   58761 
   58762 2007-02-01  Geoffrey Garen  <ggaren (a] apple.com>
   58763 
   58764         Reviewed by Maciej Stachowiak.
   58765         
   58766         Added support for selectively ignoring WebCore::Node leaks during layout
   58767         tests, so that we can ignore known leaks in other components.
   58768 
   58769         * WebCore.exp:
   58770         * dom/Node.cpp:
   58771         (WebCore::Node::isSupported): Moved isSupported up with the rest of the static functions.
   58772 
   58773         (WebCore::): Added an ignoreSet, which collects WebCore::Nodes whose lifetime
   58774         we want to ignore. We need to track which nodes to ignore rather than, say,
   58775         just suspending the count, because node destruction depends on lots of
   58776         different variables, so it would be nearly impossible to know when exactly 
   58777         to suspend the count and when exactly to resume it.
   58778 
   58779         (WebCore::NodeCounter::~NodeCounter): Changed to use WTFLog instead of fprintf.
   58780 
   58781         (WebCore::Node::startIgnoringLeaks): Do the ignoring.
   58782         (WebCore::Node::stopIgnoringLeaks): ditto
   58783         (WebCore::Node::Node): ditto
   58784         (WebCore::Node::~Node): ditto
   58785 
   58786         * dom/Node.h: Moved isSupported up with the rest of the static functions.
   58787 
   58788         * platform/mac/LoggingMac.mm:
   58789         (WebCore::initializeWithUserDefault): Renamed from "initializeLoggingChannel"
   58790         because the real goal here is to honor a user default -- WTFLoggingChannels
   58791         need no run-time initialization. Also replaced "off by default, on if a 
   58792         user default says so" behavior with "only override existing setting if a
   58793         user default says so" behavior. It seemed like a bug that you would specify 
   58794         a channel's on/off state in its definition, but this function would unconditionally
   58795         blow that state away.
   58796         (WebCore::InitializeLoggingChannelsIfNecessary):
   58797 
   58798 2007-02-02  Eric Seidel  <eric (a] webkit.org>
   58799 
   58800         Reviewed by mitz.
   58801 
   58802         Fix gradient stop style resolution to be less of a hack, fixing style invalidation:
   58803         http://bugs.webkit.org/show_bug.cgi?id=12193
   58804         and fix stop-color and stop-opacity not to inherit:
   58805         http://bugs.webkit.org/show_bug.cgi?id=12193
   58806         
   58807         Tests:
   58808         * svg/custom/gradient-stops-style-change.svg: added
   58809         * svg/W3C-SVG-1.1/pservers-grad-18-b.svg: updated
   58810 
   58811         * WebCore.xcodeproj/project.pbxproj:
   58812         * ksvg2/css/SVGCSSStyleSelector.cpp:
   58813         (WebCore::CSSStyleSelector::applySVGProperty):
   58814         * ksvg2/css/SVGRenderStyle.cpp:
   58815         (WebCore::SVGRenderStyle::inheritedNotEqual):
   58816         (WebCore::SVGRenderStyle::inheritFrom):
   58817         * ksvg2/css/SVGRenderStyle.h:
   58818         * ksvg2/svg/SVGDefsElement.cpp:
   58819         (WebCore::SVGDefsElement::createRenderer):
   58820         * ksvg2/svg/SVGGradientElement.cpp:
   58821         (WebCore::SVGGradientElement::createRenderer):
   58822         (WebCore::SVGGradientElement::buildStops):
   58823         * ksvg2/svg/SVGGradientElement.h:
   58824         (WebCore::SVGGradientElement::rendererIsNeeded):
   58825         * ksvg2/svg/SVGStopElement.cpp:
   58826         (WebCore::SVGStopElement::createRenderer):
   58827         * ksvg2/svg/SVGStopElement.h:
   58828         (WebCore::SVGStopElement::rendererIsNeeded):
   58829         * rendering/RenderSVGGradientStop.cpp: Added.
   58830         * rendering/RenderSVGGradientStop.h: Added.
   58831         * rendering/RenderSVGHiddenContainer.cpp: Added.
   58832         * rendering/RenderSVGHiddenContainer.h: Added.
   58833         * rendering/RenderSVGContainer.cpp:
   58834         * rendering/RenderSVGContainer.h:
   58835 
   58836 2007-02-02  Zack Rusin  <zrusin (a] trolltech.com>
   58837 
   58838         Reviewed by Lars
   58839 
   58840         Fix scrolling-on-selection bug by correctly
   58841         scrolling to the offset instead of trying to 
   58842         ensure visibility with margins.
   58843 
   58844         * platform/qt/ScrollViewQt.cpp:
   58845         (WebCore::ScrollView::scrollPointRecursively):
   58846 
   58847 2007-02-02  Zack Rusin  <zrusin (a] trolltech.com>
   58848 
   58849         Reviewed by Lars
   58850 
   58851         Fix drawing of dashed and colored lines. Pen
   58852         has to be inherited for stroke to stay consistent.
   58853 
   58854         * platform/graphics/qt/GraphicsContextQt.cpp:
   58855         (WebCore::GraphicsContext::setAlpha):
   58856         (WebCore::GraphicsContext::setPlatformStrokeColor):
   58857         (WebCore::GraphicsContext::setPlatformStrokeStyle):
   58858 
   58859 2007-02-01  Nicholas Shanks  <webkit (a] nickshanks.com>
   58860 
   58861         Reviewed by Mark.
   58862 
   58863         Add support for CSS2 font-stretch property.
   58864 
   58865         * css/CSSComputedStyleDeclaration.cpp:
   58866         (WebCore::):
   58867         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   58868         * css/cssparser.cpp:
   58869         (WebCore::CSSParser::parseValue):
   58870         * css/cssstyleselector.cpp:
   58871         (WebCore::CSSStyleSelector::applyDeclarations):
   58872         (WebCore::CSSStyleSelector::applyProperty):
   58873         * platform/FontCache.cpp:
   58874         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
   58875         (WebCore::FontPlatformDataCacheKey::operator==):
   58876         (WebCore::computeHash):
   58877         (WebCore::FontPlatformDataCacheKeyTraits::deletedValue):
   58878         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
   58879         (WebCore::FontCache::getCachedFontPlatformData):
   58880         * platform/FontDescription.h:
   58881         (WebCore::):
   58882         (WebCore::FontDescription::FontDescription):
   58883         (WebCore::FontDescription::stretch):
   58884         (WebCore::FontDescription::narrowerStretch):
   58885         (WebCore::FontDescription::widerStretch):
   58886         (WebCore::FontDescription::setStretch):
   58887         (WebCore::FontDescription::operator==):
   58888         * platform/mac/FontCacheMac.mm:
   58889         (WebCore::FontCache::createFontPlatformData):
   58890         * platform/mac/WebFontCache.mm:
   58891         (acceptableChoice):
   58892         (betterChoice):
   58893         (+[WebFontCache fontWithFamily:traits:size:]):
   58894 
   58895 2007-02-01  Timothy Hatcher  <timothy (a] apple.com>
   58896 
   58897         Reviewed by Mark Rowe.
   58898 
   58899         <rdar://problem/4969201> REGRESSION: Safari applies the wrong font to BODY element at http://www.apple.com/downloads/dashboard/
   58900 
   58901         * platform/mac/WebFontCache.mm:
   58902         (+[WebFontCache fontWithFamily:traits:size:]): Don't call [NSFont fontWithName:] with the desiredFamily on Tiger.
   58903 
   58904 2007-02-01  Alexey Proskuryakov  <ap (a] webkit.org>
   58905 
   58906         Reviewed by Darin.
   58907 
   58908         http://bugs.webkit.org/show_bug.cgi?id=12506
   58909         REGRESSION: Safari doesn't display hebrew text on a web page,
   58910         displayed correctly on Tiger
   58911 
   58912         * loader/TextResourceDecoder.cpp:
   58913         (WebCore::TextResourceDecoder::checkForHeadCharset): Advance the pointer when necessary.
   58914 
   58915 2007-02-01  George Staikos  <staikos (a] kde.org>
   58916 
   58917         Reviewed by Zack and Lars.
   58918 
   58919         Add a cookie interface for the Qt build.
   58920 
   58921         * WebCore.pro:
   58922         * platform/qt/CookieJarQt.cpp:
   58923         (WebCore::setCookies):
   58924         (WebCore::cookies):
   58925         (WebCore::cookiesEnabled):
   58926 
   58927 2007-02-01  Maciej Stachowiak  <mjs (a] apple.com>
   58928 
   58929         Reviewed by Adele.
   58930         
   58931         - fixed <rdar://problem/4922764> ASSERTION: (!m_contentFunction) in PolicyCheck::call trying to visit feed URL (CNN, Apple, etc.)
   58932 
   58933         * loader/FrameLoader.cpp:
   58934         (WebCore::FrameLoader::stopPolicyCheck): Call new cancel method instead of call(false) on old check.
   58935         (WebCore::PolicyCheck::cancel): call any callback function that is set with false or PolicyIgnore as
   58936         appropriate.
   58937         * loader/FrameLoader.h:
   58938 
   58939 2007-02-01  Beth Dakin  <bdakin (a] apple.com>
   58940 
   58941         Reviewed by Hyatt.
   58942 
   58943         Fix for http://bugs.webkit.org/show_bug.cgi?id=10517 REGRESSION 
   58944         (r12065-r12082): Navigation graphic wraps to the next line on 
   58945         duart.com and <rdar://problem/4960505> REGRESSION: The Awesome 
   58946         Windows Vista page has a layout error in the header table (10517)
   58947 
   58948         The problem is that we never supported a quirk that other browsers 
   58949         support where, under very specific circumstances, a table cell will 
   58950         grow to fit an image inside of it. This is only a regression 
   58951         because a bug was fixed were we were 1 pixel off in the calculation 
   58952         of overflow in some cases.
   58953 
   58954         * rendering/RenderBlock.cpp:
   58955         (WebCore::shouldGrowTableCellForImage):
   58956         (WebCore::RenderBlock::calcInlineMinMaxWidth):
   58957 
   58958 2007-02-01  Zack Rusin  <zrusin (a] trolltech.com>
   58959 
   58960         Reviewed by Lars
   58961 
   58962         Implement native look for comboboxes
   58963         and fix/implement popup menus.
   58964 
   58965         * platform/PopupMenu.h:
   58966         * platform/qt/PopupMenuQt.cpp:
   58967         (WebCore::PopupMenu::PopupMenu):
   58968         (WebCore::PopupMenu::~PopupMenu):
   58969         (WebCore::PopupMenu::clear):
   58970         (WebCore::PopupMenu::populate):
   58971         (WebCore::PopupMenu::show):
   58972         (WebCore::PopupMenu::hide):
   58973         (WebCore::PopupMenu::updateFromElement):
   58974         * platform/qt/RenderThemeQt.cpp:
   58975         (WebCore::RenderThemeQt::adjustMenuListStyle):
   58976         (WebCore::RenderThemeQt::paintButton):
   58977         (WebCore::RenderThemeQt::paintTextField):
   58978         (WebCore::RenderThemeQt::paintMenuList):
   58979 
   58980 2007-02-01  Darin Adler  <darin (a] apple.com>
   58981 
   58982         Reviewed by Maciej.
   58983 
   58984         - fix <rdar://problem/4887428> REGRESSION: Implement slight delay for firing incremental onSearch event
   58985 
   58986         * rendering/RenderTextControl.h:
   58987         * rendering/RenderTextControl.cpp:
   58988         (WebCore::RenderTextControl::RenderTextControl): Set up timer.
   58989         (WebCore::RenderTextControl::subtreeHasChanged): Start timer here instead of immediately sending event.
   58990         (WebCore::RenderTextControl::searchEventTimerFired): Added. Sends search event.
   58991         (WebCore::RenderTextControl::stopSearchEventTimer): Added.
   58992         (WebCore::RenderTextControl::startSearchEventTimer): Added. Sends search event right away if there is
   58993         no text. If there is some text, sets the timer using the same delay rule as NSSearchField. If you keep
   58994         typing, then the timer keeps getting reset 0.2 seconds into the future until you pause.
   58995 
   58996         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::onSearch): Tell the renderer to
   58997         stop the timer, since we're sending a search event. This helps when a caller other than
   58998         the timer decides to send an explicit search event.
   58999 
   59000 2007-02-01  Maciej Stachowiak  <mjs (a] apple.com>
   59001 
   59002         Fix by Darin, reviewed by Maciej.
   59003 
   59004         - fix ~10% performance regression from encoding fix
   59005 
   59006         * loader/TextResourceDecoder.cpp:
   59007         (WebCore::TextResourceDecoder::checkForHeadCharset): Fix a logic
   59008         error which made huge strings accidentally.
   59009 
   59010 2007-02-01  Lars Knoll <lars (a] trolltech.com>
   59011 
   59012         Fix the Qt build
   59013 
   59014         * page/qt/EventHandlerQt.cpp:
   59015 
   59016 2007-01-31  Darin Adler  <darin (a] apple.com>
   59017 
   59018         Reviewed by Adam and Geoff.
   59019 
   59020         - fix <rdar://problem/4786767> REGRESSION: <select> controls are not resized when zooming text
   59021 
   59022         Test: fast/forms/select-width-font-change.html
   59023 
   59024         * rendering/RenderMenuList.h: Cleaned up formatting a bit. Removed unneeded include of PopupMenu.h.
   59025         Made a lot more things private, including the PopupMenuClient base class, all of the virtual
   59026         functions from PopupMenuClient, and the setTextFromOption function. Added updateOptionsWidth.
   59027 
   59028         * rendering/RenderMenuList.cpp:
   59029         (WebCore::RenderMenuList::setStyle): Added code to call updateOptionsWidth when the font changes.
   59030         (WebCore::RenderMenuList::updateOptionsWidth): Added. Factored code out of updateFromElement.
   59031         Changed to do nothing when m_optionsWidth is already correct.
   59032         (WebCore::RenderMenuList::updateFromElement): Moved code to recomputed options width to the new
   59033         updateOptionsWidth function.
   59034         (WebCore::RenderMenuList::text): Made const.
   59035 
   59036 2007-01-31  Oliver Hunt  <oliver (a] apple.com>
   59037 
   59038         Reviewed by Adam.
   59039 
   59040         Migrate more drag and drop logic to WebCore, start preparing
   59041         to move EventHandler::handleDrag from EventHandlerMac to EventHandler 
   59042 
   59043         * WebCore.exp:   
   59044           updating methods
   59045                     
   59046         * dom/Clipboard.cpp:
   59047         * dom/Clipboard.h:
   59048         (WebCore::Clipboard::Clipboard):
   59049         (WebCore::Clipboard::setDragHasStarted):
   59050         (WebCore::Clipboard::dragStarted): 
   59051           Moving from ClipboardMac to Clipboard 
   59052 
   59053         * dom/EventTargetNode.cpp:
   59054         (WebCore::EventTargetNode::dispatchMouseEvent):
   59055           PlatformMouseEvent no longer lies about button state, however 
   59056           DOM Events don't allow NoButton, so we need to convert NoButton 
   59057           to LeftButton when we create a DOM Event from PlatformMouseEvent
   59058 
   59059         * page/DragClient.h:
   59060           Tidying comment 
   59061 
   59062         * page/DragController.cpp:
   59063         (WebCore::createMouseEvent):
   59064           Updated for new PlatformMouseEvent constructors
   59065         (WebCore::DragController::mayStartDragAtEventLocation):
   59066           Migrated from WebKit
   59067 
   59068         * page/DragController.h:
   59069           Added above function declarations
   59070 
   59071         * page/EventHandler.cpp:
   59072         (WebCore::EventHandler::dragState): 
   59073         (WebCore::EventHandler::dragHysteresisExceeded):
   59074         (WebCore::EventHandler::freeClipboard):
   59075         (WebCore::EventHandler::shouldDragAutoNode):
   59076           Moved from EventHandlerMac
   59077         (WebCore::EventHandler::handleMouseMoveEvent):
   59078         (WebCore::EventHandler::eventMayStartDrag):
   59079         (WebCore::EventHandler::handleMousePressEvent):
   59080           Use DragController     
   59081 
   59082         * page/EventHandler.h:
   59083           Added DragState struct definition to EventHandler
   59084 
   59085         * page/mac/EventHandlerMac.mm:
   59086         (WebCore::EventHandler::eventActivatedView):
   59087         (WebCore::EventHandler::handleDrag):
   59088         (WebCore::EventHandler::handleMouseUp):
   59089         (WebCore::EventHandler::mouseDown):
   59090           Update to use DragController and PlatformMouseEvent
   59091 
   59092         * page/mac/WebCoreFrameBridge.h:
   59093         * page/mac/WebCoreFrameBridge.mm:
   59094         (-[WebCoreFrameBridge dragSourceMovedTo:]):
   59095         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
   59096           Use DragController for state
   59097 
   59098         * platform/PlatformMouseEvent.h:
   59099         (WebCore::):
   59100         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   59101         (WebCore::PlatformMouseEvent::eventType):
   59102         (WebCore::PlatformMouseEvent::timestamp):
   59103         (WebCore::PlatformMouseEvent::eventNumber):
   59104         (WebCore::PlatformMouseEvent::setClickCount):
   59105           Exposing necessary data for Drag logic
   59106 
   59107         * platform/mac/ClipboardMac.h:
   59108         * platform/mac/ClipboardMac.mm:
   59109         (WebCore::ClipboardMac::ClipboardMac):
   59110         (WebCore::ClipboardMac::setDragImage):
   59111           Have moved a number of fields from ClipboardMac to Clipboard
   59112           so need to use accessors in a few places now
   59113 
   59114         * platform/mac/PlatformMouseEventMac.mm:
   59115         (WebCore::mouseButtonForEvent):
   59116         (WebCore::mouseEventForNSEvent):
   59117         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   59118           Determine MouseEventType, and provide event time info
   59119 
   59120 2007-01-31  Alexey Proskuryakov  <ap (a] webkit.org>
   59121 
   59122         Reviewed by Darin.
   59123 
   59124         http://bugs.webkit.org/show_bug.cgi?id=12506
   59125         REGRESSION: Safari doesn't display hebrew text on a web page,
   59126         displayed correctly on Tiger
   59127 
   59128         * loader/TextResourceDecoder.cpp:
   59129         (WebCore::TextResourceDecoder::checkForHeadCharset): Skip over 
   59130         quoted attributes.
   59131 
   59132 2007-01-31  David Carson  <dacarson (a] gmail.com>
   59133 
   59134         Reviewed by Darin.
   59135 
   59136         - fix http://bugs.webkit.org/show_bug.cgi?id=12510
   59137         Initialize the variable m_totalLoops
   59138         Is tested by LayoutTests/fast/css/MarqueeLayoutTest.html
   59139 
   59140         * rendering/RenderLayer.cpp:
   59141         (WebCore::Marquee::Marquee):
   59142 
   59143 2007-01-31  Anders Carlsson  <acarlsson (a] apple.com>
   59144 
   59145         Reviewed by Maciej.
   59146 
   59147         <rdar://problem/4886776>
   59148         REGRESSION: After opening a web archive, location shows the actual URL, not the webarchive file
   59149 
   59150         * WebCore.exp:
   59151         * loader/FrameLoader.cpp:
   59152         (WebCore::FrameLoader::continueLoadWithData):
   59153         * loader/FrameLoader.h:
   59154         New function which continues a load but using a given buffer instead.
   59155         
   59156 2007-01-31  Adele Peterson  <adele (a] apple.com>
   59157 
   59158         Reviewed by Adam.
   59159 
   59160         Fix for http://bugs.webkit.org/show_bug.cgi?id=12516
   59161         REGRESSION (r19313): All keyboard navigation has stopped working
   59162 
   59163         For non-editable selections, handleKeyPress doesn't need to call _interceptEditingKeyEvent. 
   59164 
   59165         * editing/Editor.cpp:
   59166         (WebCore::selectionForEvent): Moved this to the top of the file.
   59167         (WebCore::Editor::handleKeyPress): Do the equivalent of the _canEdit check that used to be in WebKit WebEditorClient::handleKeyPress.
   59168 
   59169 2007-01-31  Geoffrey Garen  <ggaren (a] apple.com>
   59170 
   59171         Reviewed by Darin Adler.
   59172 
   59173         Added a Range counter to detect leaks. Tweaked the Node counter.
   59174         
   59175         Also fixed a TextIterator destructive modification bug that I noticed along the
   59176         way. No test case for this bug because no clients have been bitten by it
   59177         yet.
   59178 
   59179         * dom/Node.cpp: Renamed NodeImplCounter to NodeCounter, changed counter
   59180         to unsigned, fixed formatting to match style guidelines.
   59181         (WebCore::NodeCounter::~NodeCounter):
   59182         (WebCore::Node::Node):
   59183         (WebCore::Node::~Node):
   59184 
   59185         * dom/Range.cpp:
   59186         (WebCore::RangeCounter::~RangeCounter): Added.
   59187         (WebCore::Range::Range):
   59188         (WebCore::Range::~Range):
   59189         (WebCore::Range::ownerDocument): New accessor, used by TextIterator to avoid
   59190         annoying NULL checks.
   59191         * dom/Range.h:
   59192 
   59193         * editing/TextIterator.cpp:
   59194         (WebCore::TextIterator::subrange): 
   59195         (1) Don't initialize result with entireRange --  doing so would create a 
   59196         PassRefPtr that pointed to entireRange, so this function would destructively 
   59197         modify the Range you passed it. Initialize it with a new Range instead.
   59198         (2) Don't use a PassRefPtr as a local variable, because they have sneaky
   59199         semantics. Use a RefPtr instead.
   59200         (3) Don't call CharacterIterator::range() willy-nilly, since it does 
   59201         non-trivial work. Use a local variable instead.
   59202 
   59203 2007-01-31  Adele Peterson  <adele (a] apple.com>
   59204 
   59205         Reviewed by Darin.
   59206 
   59207         WebCore part of fix for <rdar://problem/4521461> REGRESSION: when keyPress event changes form focus, inserted key goes to wrong control
   59208 
   59209         Test: fast/events/keypress-focus-change.html
   59210 
   59211         * editing/Editor.cpp:
   59212         (WebCore::selectionForEvent): Added.  This computes a selection that considers the case where an event handler 
   59213          has moved the selection outside of a text control.  In that case, we use the target control's selection.
   59214         (WebCore::Editor::insertText): This gets the selectionForEvent, checks that the selection is editable,
   59215          and calls TypingCommand::insertText with the correct selection.
   59216 
   59217         * editing/TypingCommand.h: Added a version of insertText that takes a selection.  The old version of insertText will call this, and pass
   59218           in the frame's selection.
   59219         * editing/TypingCommand.cpp: (WebCore::TypingCommand::insertText): Added. Uses the passed in selection to 
   59220           set the starting and ending selections correctly so that the editing machinery will insert the text in the correct place.
   59221 
   59222         * page/Page.h: Added convenience method to get selection from focused or main frame.
   59223         * page/Page.cpp: (WebCore::Page::selection):
   59224 
   59225         * html/HTMLInputElement.h: Added selection methods to get selection for text controls.
   59226         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::selection):
   59227         * html/HTMLTextAreaElement.h:
   59228         * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::selection):
   59229         * rendering/RenderTextControl.h:
   59230         * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::selection):
   59231 
   59232 2007-01-31  Darin Adler  <darin (a] apple.com>
   59233 
   59234         - fix build
   59235 
   59236         * ForwardingHeaders/wtf/ListHashSet.h: Added.
   59237 
   59238 2007-01-31  Zack Rusin  <zrusin (a] trolltech.com>
   59239 
   59240         Reviewed by Lars
   59241 
   59242         Return the correct selection color.
   59243 
   59244         * platform/qt/RenderThemeQt.cpp:
   59245         (WebCore::RenderThemeQt::supportsFocusRing):
   59246         (WebCore::RenderThemeQt::platformActiveSelectionBackgroundColor):
   59247         (WebCore::RenderThemeQt::platformInactiveSelectionBackgroundColor):
   59248         (WebCore::RenderThemeQt::platformActiveSelectionForegroundColor):
   59249         (WebCore::RenderThemeQt::platformInactiveSelectionForegroundColor):
   59250 
   59251 2007-01-31  Maciej Stachowiak  <mjs (a] apple.com>
   59252 
   59253         Reviewed by Mark.
   59254 
   59255         - fixed <rdar://problem/4751164> REGRESSION: Safari places text on incorrect button when returning to a page via back [10541]
   59256         http://bugs.webkit.org/show_bug.cgi?id=10541
   59257 
   59258         * dom/Document.cpp:
   59259         (WebCore::Document::formElementsState):
   59260         * dom/Document.h:
   59261         
   59262         I couldn't figure out the back/forward support in the tests enough
   59263         to make an automated test, but this maual test reproduces the
   59264         problem 100% without this patch:
   59265         
   59266         * manual-tests/back.html: Added.
   59267         * manual-tests/form-control-madness.html: Added.
   59268 
   59269 2007-01-31  David Kilzer  <ddkilzer (a] kilzer.net>
   59270 
   59271         Reviewed by Mitz.
   59272 
   59273         - fix http://bugs.webkit.org/show_bug.cgi?id=12490
   59274           Clean up canPlaceOnLine logic in bidi.cpp
   59275 
   59276         No test cases since there is no change in functionality.
   59277 
   59278         * rendering/bidi.cpp:
   59279         (WebCore::RenderBlock::findNextLineBreak): Simplify canFitOnLine expression.
   59280 
   59281 2007-01-31  Zack Rusin  <zack (a] kde.org>
   59282 
   59283         Adding comments explaining how the focus ring implementation
   59284         works on the Qt platform and just move focus ring rendering
   59285         related code to the same spot.
   59286 
   59287         * platform/graphics/qt/GraphicsContextQt.cpp:
   59288         (WebCore::setFocusRingColorChangeFunction):
   59289         (WebCore::focusRingColor):
   59290         (WebCore::GraphicsContext::drawFocusRing):
   59291         * platform/qt/TemporaryLinkStubs.cpp:
   59292 
   59293 2007-01-31  Zack Rusin  <zrusin (a] trolltech.com>
   59294 
   59295         Reviewed by Lars
   59296 
   59297         Properly propagate key events. 
   59298 
   59299         * page/qt/FrameQt.cpp:
   59300         * page/qt/FrameQt.h: Remove redundant method.
   59301         * platform/qt/ScrollViewCanvasQt.cpp:
   59302         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
   59303 
   59304 2007-01-31  George Staikos  <staikos (a] kde.org>
   59305 
   59306         Reviewed by Zack and Lars.
   59307 
   59308         Fix double delete on cancel as well as assertion with proxy.
   59309 
   59310         * platform/network/qt/ResourceHandleManagerQt.cpp:
   59311         (WebCore::WebCoreHttp::getConnection):
   59312         (WebCore::WebCoreHttp::onRequestFinished):
   59313         (WebCore::WebCoreHttp::cancel):
   59314 
   59315 2007-01-31  Mark Rowe  <mrowe (a] apple.com>
   59316 
   59317         Reviewed by Oliver.
   59318 
   59319         * dom/Document.h: Change #if XSLT_SUPPORT to #ifdef XSLT_SUPPORT.
   59320 
   59321 2007-01-31  Lars Knoll <lars (a] trolltech.com>
   59322 
   59323         Fix the Qt build.
   59324 
   59325         * platform/network/qt/ResourceHandleQt.cpp:
   59326         (WebCore::ResourceHandle::setDefersLoading):
   59327 
   59328 2007-01-31  Zack Rusin  <zack (a] kde.org>
   59329 
   59330         Reviewed by Eric.
   59331 
   59332         Implement SVGImage on the Qt platform.
   59333 
   59334         * WebCore.pro:
   59335         * loader/CachedImage.cpp:
   59336         (WebCore::CachedImage::createImage):
   59337         * platform/graphics/ImageBuffer.h:
   59338         * platform/graphics/qt/ImageBufferQt.cpp:
   59339         (WebCore::ImageBuffer::create):
   59340         (WebCore::ImageBuffer::ImageBuffer):
   59341         (WebCore::ImageBuffer::~ImageBuffer):
   59342         (WebCore::ImageBuffer::context):
   59343         (WebCore::ImageBuffer::pixmap):
   59344         * platform/graphics/svg/SVGImage.cpp:
   59345         (WebCore::SVGImage::nativeImageForCurrentFrame):
   59346         (WebCore::SVGImage::setData):
   59347 
   59348 2007-01-30  Maciej Stachowiak  <mjs (a] apple.com>
   59349 
   59350         Reviewed by Brady.
   59351 
   59352         - fixed <rdar://problem/4939366> REGRESSION: Assertion failure and crash when going back in history (12314)
   59353 
   59354         * loader/FrameLoader.cpp:
   59355         (WebCore::FrameLoader::createWindow): special case a frame name of "_blank"
   59356         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): ditto
   59357 
   59358 2007-01-30  Maciej Stachowiak  <mjs (a] apple.com>
   59359 
   59360         Reviewed by Anders.
   59361 
   59362         - fixed <rdar://problem/4963871> REGRESSION: Crash occurs at WebCore::Frame::loader() when attempting to open a saved archive file
   59363 
   59364         * loader/DocumentLoader.cpp:
   59365         (WebCore::DocumentLoader::request): Removed obsolete FIXME.
   59366         (WebCore::DocumentLoader::initialRequest): Ditto.
   59367         * loader/MainResourceLoader.cpp:
   59368         (WebCore::MainResourceLoader::MainResourceLoader): Handle data loads from a timer, otherwise bad things happen.
   59369         (WebCore::MainResourceLoader::handleDataLoadNow):
   59370         (WebCore::MainResourceLoader::handleDataLoadSoon):
   59371         (WebCore::MainResourceLoader::loadNow):
   59372         (WebCore::MainResourceLoader::didCancel): cancel data load timer
   59373         * loader/MainResourceLoader.h:
   59374 
   59375 2007-01-30  Timothy Hatcher  <timothy (a] apple.com>
   59376 
   59377         Reviewed by Darin.
   59378 
   59379         <rdar://problem/4961953> Stop using NSString deprecated methods like initWithCString:
   59380 
   59381         * WebCore.xcodeproj/project.pbxproj:
   59382         * platform/graphics/svg/filters/cg/WKArithmeticFilter.m:
   59383         (-[WKArithmeticFilter init]):
   59384         * platform/graphics/svg/filters/cg/WKComponentMergeFilter.m:
   59385         (-[WKComponentMergeFilter init]):
   59386         * platform/graphics/svg/filters/cg/WKDiffuseLightingFilter.m:
   59387         (-[WKDiffuseLightingFilter init]):
   59388         * platform/graphics/svg/filters/cg/WKDiscreteTransferFilter.m:
   59389         (-[WKDiscreteTransferFilter init]):
   59390         * platform/graphics/svg/filters/cg/WKDisplacementMapFilter.m:
   59391         (-[WKDisplacementMapFilter init]):
   59392         * platform/graphics/svg/filters/cg/WKDistantLightFilter.m:
   59393         (-[WKDistantLightFilter init]):
   59394         * platform/graphics/svg/filters/cg/WKGammaTransferFilter.m:
   59395         (-[WKGammaTransferFilter init]):
   59396         * platform/graphics/svg/filters/cg/WKLinearTransferFilter.m:
   59397         (-[WKLinearTransferFilter init]):
   59398         * platform/graphics/svg/filters/cg/WKNormalMapFilter.m:
   59399         (-[WKNormalMapFilter init]):
   59400         * platform/graphics/svg/filters/cg/WKPointLightFilter.m:
   59401         (-[WKPointLightFilter init]):
   59402         * platform/graphics/svg/filters/cg/WKSpecularLightingFilter.m:
   59403         (-[WKSpecularLightingFilter init]):
   59404         * platform/graphics/svg/filters/cg/WKSpotLightFilter.m:
   59405         (-[WKSpotLightFilter init]):
   59406         * platform/graphics/svg/filters/cg/WKTableTransferFilter.m:
   59407         (-[WKTableTransferFilter init]):
   59408 
   59409 2007-01-30  David Hyatt  <hyatt (a] apple.com>
   59410 
   59411         Fix for Radar bug #4679426, golden gate bridge Web site layout broken.
   59412         
   59413         This is a regression caused by the addition of :lang support.  This
   59414         feature caused us to accept any pseudo-class/element with function
   59415         arguments, even ones we couldn't handle.  The site used such a construct
   59416         in conjunction with :not, which turned :not(something-crazy) into not(false).
   59417         This ended up being "true", and so we started matching a rule we used to
   59418         reject.
   59419 
   59420         The fix is to now aggressively parse pseudo-elements and classes and to
   59421         cause the rejection of an entire rule if any pseudoclass or element within
   59422         any simple selector of that rule is unrecognized.
   59423 
   59424         Reviewed by darin
   59425 
   59426         fast/css/invalid-pseudo-classes.html
   59427 
   59428         * css/CSSGrammar.y:
   59429         * css/CSSSelector.cpp:
   59430         (WebCore::CSSSelector::extractPseudoType):
   59431         * css/CSSSelector.h:
   59432         (WebCore::CSSSelector::):
   59433         * css/cssstyleselector.cpp:
   59434         (WebCore::CSSStyleSelector::checkOneSelector):
   59435 
   59436 2007-01-30  Mitz Pettel  <mitz (a] webkit.org>
   59437 
   59438         Reviewed by Darin.
   59439 
   59440         - fix http://bugs.webkit.org/show_bug.cgi?id=12487
   59441           REGRESSION: Repro crash when a second background image is animated
   59442 
   59443         Test: fast/images/animated-background-image-crash.html
   59444 
   59445         * rendering/RenderObject.cpp:
   59446         (WebCore::RenderObject::arenaDelete): Deref() all background images and the
   59447         border image.
   59448 
   59449 2007-01-30  Darin Adler  <darin (a] apple.com>
   59450 
   59451         Reviewed by Maciej.
   59452 
   59453         * dom/EventTarget.h:
   59454         * dom/EventTarget.cpp: (WebCore::EventTarget::toNode):
   59455         Use EventTargetNode instead of Node. Removed unneeded includes.
   59456         Make EventTarget's destructor protected to make it clear that you
   59457         should never delete one.
   59458 
   59459         * dom/EventTargetNode.h:
   59460         (WebCore::EventTargetNode::toNode):
   59461         Tweaked formatting. Updated for change to return value.
   59462 
   59463         * platform/graphics/BitmapImage.h: Updated comment for clarity.
   59464         Marked FrameData Noncopyable.
   59465 
   59466         * platform/graphics/Image.h: Tweaked formatting.
   59467 
   59468         * platform/graphics/ImageAnimationObserver.h:
   59469         Make ImageAnimationObserver's destructor protected to make it clear that you
   59470         should never delete one.
   59471 
   59472 2007-01-30  Mitz Pettel  <mitz (a] webkit.org>
   59473 
   59474         Reviewed by Darin (by way of Hyatt).
   59475 
   59476         - fix http://bugs.webkit.org/show_bug.cgi?id=12373
   59477           ASSERTION FAILURE: !child->needsLayout() on paypal.com
   59478 
   59479         Test: fast/table/inline-form-assert.html
   59480 
   59481         * rendering/RenderContainer.cpp:
   59482         (WebCore::RenderContainer::layout): Changed the assertion to ignore inlines.
   59483 
   59484 2007-01-30  Alexey Proskuryakov  <ap (a] webkit.org>
   59485 
   59486         Reviewed by Darin.
   59487 
   59488         http://bugs.webkit.org/show_bug.cgi?id=12486
   59489         XPathNSResolver.lookupNamespaceURI should return null if no URI is found
   59490 
   59491         * xml/XPathNSResolver.idl: added [ConvertNullStringTo=Null].
   59492 
   59493 2007-01-30  Anders Carlsson  <acarlsson (a] apple.com>
   59494 
   59495         Reviewed by Maciej.
   59496 
   59497         Revert the parts of 19244 that removed deferring NSURLConnections, that was not a correct change.
   59498         Remove ASSERTS from loader.cpp that aren't true anymore since the callbacks are invoked without a handle
   59499         when loading a subresource from an archive.
   59500 
   59501         * loader/MainResourceLoader.cpp:
   59502         (WebCore::MainResourceLoader::loadNow):
   59503         * loader/ResourceLoader.cpp:
   59504         (WebCore::ResourceLoader::releaseResources):
   59505         (WebCore::ResourceLoader::load):
   59506         (WebCore::ResourceLoader::setDefersLoading):
   59507         * loader/loader.cpp:
   59508         (WebCore::Loader::didFail):
   59509         (WebCore::Loader::didReceiveResponse):
   59510         (WebCore::Loader::didReceiveData):
   59511         * platform/network/ResourceHandle.cpp:
   59512         (WebCore::ResourceHandle::ResourceHandle):
   59513         (WebCore::ResourceHandle::create):
   59514         * platform/network/ResourceHandle.h:
   59515         * platform/network/ResourceHandleInternal.h:
   59516         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   59517         * platform/network/mac/ResourceHandleMac.mm:
   59518         (WebCore::ResourceHandle::start):
   59519         (WebCore::ResourceHandle::setDefersLoading):
   59520 
   59521 2007-01-30  Darin Adler  <darin (a] apple.com>
   59522 
   59523         Reviewed by John.
   59524 
   59525         - fix for <rdar://problem/4911504> REGRESSION: With a image selected, ctrl-clicking
   59526           on page displays the wrong contextual menu items "Search in Google", "Search in Spotlight"
   59527           and "Look up in Dictionary"
   59528 
   59529         * platform/ContextMenu.cpp:
   59530         (WebCore::selectionContainsPossibleWord): Added. Returns true if there are some
   59531         non-whitespace characters in the selection.
   59532         (WebCore::ContextMenu::populate): Don't add SearchSpotlightItem, SearchWebItem,
   59533         or LookInDictionaryItem if selectionContainsPossibleWord returns false.
   59534 
   59535 2007-01-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   59536 
   59537         Reviewed by Oliver.
   59538 
   59539         Respect stroke-width in absolute repaint rect calculations for SVG text.
   59540         Added test: svg/custom/text-repaint-including-stroke.svg
   59541 
   59542         * rendering/RenderSVGText.cpp:
   59543         (WebCore::RenderSVGText::relativeBBox):
   59544 
   59545 2007-01-30  Steve Falkenburg  <sfalken (a] apple.com>
   59546 
   59547         Reviewed by Oliver.
   59548 
   59549         Add missing includes.
   59550 
   59551         * ksvg2/svg/SVGElementInstance.cpp:
   59552 
   59553 2007-01-30  Alexey Proskuryakov  <ap (a] webkit.org>
   59554 
   59555         Reviewed by Darin.
   59556 
   59557         http://bugs.webkit.org/show_bug.cgi?id=12452
   59558         XPath id() function is not supported
   59559 
   59560         * xml/XPathFunctions.cpp:
   59561         (WebCore::XPath::isWhitespace): A helper to detect XML whitespace.
   59562 
   59563         (WebCore::XPath::FunId::isConstant):
   59564         (WebCore::XPath::FunId::doEvaluate):
   59565         (WebCore::XPath::FunctionMapping::):
   59566         Implemented id().
   59567 
   59568 2007-01-30  Zack Rusin  <zrusin (a] trolltech.com>
   59569 
   59570         Reviewed by Sam.
   59571 
   59572         Make the gradients work on the Qt platform.
   59573 
   59574         * platform/graphics/svg/SVGPaintServerGradient.h:
   59575         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
   59576         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
   59577         * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp:
   59578         (WebCore::SVGPaintServerGradient::fillColorArray):
   59579         (WebCore::SVGPaintServerGradient::setup):
   59580         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
   59581         (WebCore::SVGPaintServerLinearGradient::setupGradient):
   59582         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
   59583         (WebCore::SVGPaintServerRadialGradient::setupGradient):
   59584 
   59585 2007-01-30  Nikolas Zimmermann  <zimmermann (a] kde.org>
   59586 
   59587         Reviewed by Eric & Oliver. Leak related fixes reviewed by Mark.
   59588 
   59589         Finally make the SVG <use> implementation use the proper "shadow tree" concept,
   59590         which is also used by the HTML forms implementation. It's the first time in ksvg
   59591         history that <use> is not implement as a crude hack, but proper & sane.
   59592 
   59593         Implement deep expansion of use trees both for the instance & shadow tree.
   59594         (<use> on a <symbol> containing a <g> containg a <use> element referencing a <rect>)
   59595  
   59596         The shadow tree is free of any symbol/use tags, but is properly expanded to the
   59597         actual referenced content. The instance tree (SVGElementInstance objects) now exactly
   59598         exposes the "expanded" shadow tree, as required by the specification. Previously
   59599         we cloned referenced <use> elements, so our faked use shadow tree itself contained
   59600         <use> elements. That lead to very nasty bugs - finally these dirty pieces are gone.
   59601 
   59602         Checked twice that the updating logic works for all weird "deep expansions" cases. Example:
   59603         <rect id="someRect"/> <g id="g"> <symbol> <use xlink:href="#someRect"/> </g> <use xlink:href="#g" id="use"/>
   59604  
   59605         If you walk through the instanceRoot using JavasScript, and explicitely modify some propertties of "someRect"
   59606         -> all instances get updated correctly. For such simple cases it doesn't even involve recloning the shadow tree!
   59607 
   59608         SVGElementInstance is now an EventTarget, as demanded by the specification - sending events to <use> instances
   59609         will be implemented in a follow-up patch - as well as the "share event listeners with referenced target" logic.
   59610 
   59611         Fixes all updating/stability issues with svg/carto.net/window.svg.
   59612         Fixes: http://bugs.webkit.org/show_bug.cgi?id=6000 (<use> does not handle recursion safely)
   59613 
   59614         Added test: svg/custom/use-on-use.svg (deep use referencing)
   59615         Added test: svg/custom/use-on-g-containing-use.svg (nested deep use referencing)
   59616         Added test: svg/custom/use-modify-target-container.svg (instanceRoot scripting, modifying <g> target)
   59617         Added test: svg/custom/use-modify-target-symbol.svg (instanceRoot scripting, modfiying <symbol> target)
   59618         Added test: svg/custom/use-modify-container-in-target.svg (modify <g> within referenced use target -> needs to update instances)
   59619         Added test: svg/custom/use-recursion-1.svg (referencing container, whose children reference itself)
   59620         Added test: svg/custom/use-recursion-2.svg (<use> self referencing)
   59621         Added test: svg/custom/use-recursion-3.svg (<use> self rerencing, within <use> target)
   59622         Added test: svg/custom/use-recursion-4.svg (cyclic referencing, within <use> target)
   59623 
   59624         * bindings/scripts/CodeGeneratorJS.pm:
   59625         * css/cssstyleselector.cpp:
   59626         (WebCore::CSSStyleSelector::initForStyleResolve):
   59627         (WebCore::CSSStyleSelector::adjustRenderStyle):
   59628         * ksvg2/misc/SVGDocumentExtensions.cpp:
   59629         (WebCore::SVGDocumentExtensions::removeTimeContainer):
   59630         * ksvg2/svg/SVGElement.cpp:
   59631         (WebCore::SVGElement::SVGElement):
   59632         (WebCore::SVGElement::viewportElement):
   59633         * ksvg2/svg/SVGElement.h:
   59634         (WebCore::SVGElement::isShadowNode):
   59635         (WebCore::SVGElement::shadowParentNode):
   59636         (WebCore::SVGElement::setShadowParentNode):
   59637         * ksvg2/svg/SVGElementInstance.cpp:
   59638         (WebCore::SVGElementInstance::SVGElementInstance):
   59639         (WebCore::SVGElementInstance::correspondingUseElement):
   59640         (WebCore::SVGElementInstance::shadowTreeElement):
   59641         (WebCore::SVGElementInstance::setShadowTreeElement):
   59642         (WebCore::containsUseChildNode):
   59643         (WebCore::SVGElementInstance::updateInstance):
   59644         (WebCore::SVGElementInstance::addEventListener):
   59645         (WebCore::SVGElementInstance::removeEventListener):
   59646         (WebCore::SVGElementInstance::dispatchEvent):
   59647         * ksvg2/svg/SVGElementInstance.h:
   59648         (WebCore::SVGElementInstance::refEventTarget):
   59649         (WebCore::SVGElementInstance::derefEventTarget):
   59650         (WebCore::SVGElementInstance::hasOneRef):
   59651         (WebCore::SVGElementInstance::refCount):
   59652         (WebCore::SVGElementInstance::setParent):
   59653         (WebCore::SVGElementInstance::parent):
   59654         * ksvg2/svg/SVGElementInstance.idl:
   59655         * ksvg2/svg/SVGGElement.cpp:
   59656         (WebCore::SVGGElement::localMatrix):
   59657         * ksvg2/svg/SVGGElement.h:
   59658         * ksvg2/svg/SVGHiddenElement.h: Removed.
   59659         * ksvg2/svg/SVGSVGElement.cpp:
   59660         (WebCore::SVGSVGElement::~SVGSVGElement):
   59661         * ksvg2/svg/SVGStyledElement.cpp:
   59662         (WebCore::SVGStyledElement::updateElementInstance):
   59663         * ksvg2/svg/SVGUseElement.cpp:
   59664         (WebCore::SVGUseElement::removedFromDocument):
   59665         (WebCore::SVGUseElement::notifyAttributeChange):
   59666         (WebCore::dumpInstanceTree):
   59667         (WebCore::SVGUseElement::buildPendingResource):
   59668         (WebCore::SVGUseElement::attach):
   59669         (WebCore::SVGUseElement::buildInstanceTree):
   59670         (WebCore::SVGUseElement::handleDeepUseReferencing):
   59671         (WebCore::SVGUseElement::buildShadowTree):
   59672         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
   59673         (WebCore::SVGUseElement::attachShadowTree):
   59674         (WebCore::SVGUseElement::associateInstancesWithShadowTreeElements):
   59675         (WebCore::SVGUseElement::transferUseAttributesToReplacedElement):
   59676         * ksvg2/svg/SVGUseElement.h:
   59677 
   59678 2007-01-30  Maciej Stachowiak  <mjs (a] apple.com>
   59679 
   59680         Reviewed by Eric.
   59681 
   59682         <rdar://problem/4928646> REGRESSION: manual-tests/remove-input-file-onchange.html crashes
   59683         
   59684         * platform/FileChooser.h:
   59685         (WebCore::FileChooser::disconnected): New method, so the RenderFileControl can tell when it's
   59686         gotten disconected.
   59687         * rendering/RenderFileUploadControl.cpp:
   59688         (WebCore::RenderFileUploadControl::valueChanged): Avoid calling repainted() when onChange()
   59689         handler destroyed us.
   59690 
   59691 2007-01-30  Simon Hausmann  <hausmann (a] kde.org>
   59692 
   59693         Reviewed by Zack.
   59694 
   59695         Combine libJavaScriptCore into libWebKitQt.
   59696         Build with ELF visibility if possible.
   59697 
   59698         * WebCore.pro:
   59699 
   59700 2007-01-30  Zack Rusin  <zack (a] kde.org>
   59701 
   59702         The method has been removed from the header
   59703         (make it compile)
   59704 
   59705         * platform/network/qt/ResourceHandleQt.cpp:
   59706 
   59707 2007-01-30  Zack Rusin  <zrusin (a] trolltech.com>
   59708 
   59709         Reviewed by aroben
   59710 
   59711         Compile fix. 
   59712 
   59713         * loader/ResourceLoader.cpp:
   59714         (WebCore::ResourceLoader::releaseResources):
   59715         (WebCore::ResourceLoader::setDefersLoading):
   59716 
   59717 2007-01-29  Zack Rusin  <zack (a] kde.org>
   59718 
   59719         Reviewed by Lars
   59720 
   59721         Propagate the allows-scrolling property on the frames
   59722         correctly. If the frame has been constructed as non-
   59723         scrolling, respect that and don't show scrollbars.
   59724 
   59725         * platform/ScrollView.h:
   59726         * platform/qt/ScrollViewQt.cpp:
   59727         (WebCore::ScrollView::ScrollView):
   59728         (WebCore::ScrollView::setHScrollbarMode):
   59729         (WebCore::ScrollView::setVScrollbarMode):
   59730         (WebCore::ScrollView::setAllowsScrolling):
   59731 
   59732 2007-01-29  Geoffrey Garen  <ggaren (a] apple.com>
   59733 
   59734         I am the chosen one! I have seen the faces of the final five! I will
   59735         save the WebKit build!
   59736         
   59737         * loader/ResourceLoader.cpp:
   59738         (WebCore::ResourceLoader::load):
   59739 
   59740 2007-01-30  Graham Dennis  <graham.dennis (a] gmail.com>
   59741 
   59742         Reviewed by Maciej.
   59743 
   59744         Part of fix for http://bugs.webkit.org/show_bug.cgi?id=10725
   59745         Image data in from RTFD clipboard data thrown away
   59746         
   59747         ResourceHandles no longer need to be able to defer loading as that is
   59748         now handled by the ResourceLoader.
   59749 
   59750         * loader/MainResourceLoader.cpp:
   59751         (WebCore::MainResourceLoader::loadNow): updated to remove defersLoading argument.
   59752         * loader/ResourceLoader.cpp:
   59753         (WebCore::ResourceLoader::releaseResources): release the deferred request.
   59754         (WebCore::ResourceLoader::load): defer creating the ResourceHandle instead of
   59755         asking the ResourceHandle to defer loading.
   59756         (WebCore::ResourceLoader::setDefersLoading): create the ResourceHandle if we have deferred creating it.
   59757         * loader/ResourceLoader.h:
   59758         * platform/network/ResourceHandle.cpp: ResourceHandle's don't need to know about deferLoading.
   59759         (WebCore::ResourceHandle::ResourceHandle):
   59760         (WebCore::ResourceHandle::create):
   59761         * platform/network/ResourceHandle.h: ditto.
   59762         * platform/network/ResourceHandleInternal.h: ditto.
   59763         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   59764         * platform/network/mac/ResourceHandleMac.mm: ditto.
   59765         (WebCore::ResourceHandle::start):
   59766 
   59767 2007-01-29  Brady Eidson  <beidson (a] apple.com>
   59768 
   59769         Reviewed by Alice
   59770 
   59771         Lets use smart pointers, shall we?
   59772 
   59773         * platform/network/ResourceHandleInternal.h:
   59774 
   59775 2007-01-29  Justin Garcia  <justin.garcia (a] apple.com>
   59776 
   59777         Reviewed by harrison
   59778         
   59779         <rdar://problem/4960137>
   59780         ASSERTION FAILURE calling SelectionController::setBaseAndExtent (11833)
   59781 
   59782         * editing/SelectionController.cpp:
   59783         (WebCore::SelectionController::setSelection): Hand off the selection
   59784         to the selectionController responsible for it, instead of asserting.
   59785         A selection object can't be constructed with endpoints in different 
   59786         documents, so this code is only necessary for one endpoint.
   59787 
   59788 2007-01-29  Ada Chan  <adachan (a] apple.com>
   59789 
   59790         Reviewed by Brady.
   59791         
   59792         Moved the update of the title of the current entry in the backforward list to WebCore.
   59793 
   59794         * loader/FrameLoader.cpp:
   59795         (WebCore::FrameLoader::didChangeTitle):
   59796 
   59797 2007-01-29  Adele Peterson  <adele (a] apple.com>
   59798 
   59799         Reviewed by Darin.
   59800 
   59801         More preparation for event handling fixes.
   59802 
   59803         * bridge/EditorClient.h: Removed EventTargetNode parameter from handleKeyPress since we can just get that from the event.
   59804         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::defaultEventHandler): ditto.
   59805         * page/EventHandler.cpp: (WebCore::EventHandler::defaultKeyboardEventHandler): ditto.
   59806         * page/EventHandler.h: ditto.
   59807         * platform/graphics/svg/SVGImageEmptyClients.h: (WebCore::SVGEmptyEditorClient::handleKeyPress): ditto.
   59808 
   59809         * editing/Editor.h:
   59810         * editing/Editor.cpp:
   59811         (WebCore::Editor::handleKeyPress): Removed EventTargetNode parameter.
   59812         (WebCore::Editor::execCommand): Made commandMap use AtomicStringImpls instead of Strings.
   59813         (WebCore::Editor::insertText): Moved from the bridge.
   59814 
   59815         * page/mac/WebCoreFrameBridge.h: Moved insertText method to Editor.
   59816         * page/mac/WebCoreFrameBridge.mm:
   59817 
   59818         * WebCore.exp: Updated exports.
   59819 
   59820 2007-01-29  Anders Carlsson  <acarlsson (a] apple.com>
   59821 
   59822         Reviewed by Geoff.
   59823 
   59824         <rdar://problem/4960097>
   59825         http://bugs.webkit.org/show_bug.cgi?id=12444
   59826         Assertion failure in -[WebCoreFrameBridge installInFrame:]
   59827         
   59828         The problem was that the XML tokenizer didn't create elements with 
   59829         createdByParser set to true.
   59830         
   59831         * dom/Document.cpp:
   59832         (WebCore::Document::createElement):
   59833         New method which takes a QName. This is used by both the XML tokenizer and createElementNS.
   59834         
   59835         (WebCore::Document::createElementNS):
   59836         Call new createElement method.
   59837         
   59838         * dom/XMLTokenizer.h:        
   59839         * dom/XMLTokenizer.cpp:
   59840         (WebCore::XMLTokenizer::XMLTokenizer):
   59841         (WebCore::XMLTokenizer::~XMLTokenizer):
   59842         Use an OwnPtr for the pending callbacks object. Also, use String instead of StringImpl in the hash map.
   59843         
   59844         (WebCore::toString):
   59845         (WebCore::XMLTokenizer::startElementNs):
   59846         Call createElement.
   59847         
   59848 2007-01-29  Brady Eidson  <beidson (a] apple.com>
   59849 
   59850         Reviewed by Oliver
   59851 
   59852         http://bugs.webkit.org/show_bug.cgi?id=12465
   59853         Only set the iconURL port for non-zero ports
   59854 
   59855         * loader/FrameLoader.cpp:
   59856         (WebCore::FrameLoader::iconURL):
   59857 
   59858 2007-01-29  John Sullivan  <sullivan (a] apple.com>
   59859 
   59860         * platform/network/mac/ResourceRequestMac.mm:
   59861         Build fix -- removed #import of no-longer-extant WebDataProtocol.h (and also one of the
   59862         two #imports for WebCoreSystemInterface.h, while I was at it)
   59863 
   59864 2007-01-29  Anders Carlsson  <acarlsson (a] apple.com>
   59865 
   59866         Reviewed by Oliver.
   59867 
   59868         * page/DragController.cpp:
   59869         (WebCore::DragController::dragEnteredOrUpdated):
   59870         Only try a drag operation if the drag client explicitly specified that it is OK
   59871 
   59872 2007-01-29  Oliver Hunt  <oliver (a] apple.com>
   59873 
   59874         Reviewed by Adam.
   59875 
   59876         Migrated more drag logic and state to WebCore
   59877                                               
   59878         * page/DragClient.h:       
   59879 
   59880         * page/DragController.cpp:
   59881         (WebCore::DragController::delegateDragSourceAction):
   59882           New forwarding method for the UI delegate
   59883         * page/DragController.h:
   59884         (WebCore::DragController::dragOffset):
   59885           Now store the drag offset -- the offset of the cursor relative to the drag image)
   59886           in DragController
   59887         * page/EventHandler.cpp:
   59888         (WebCore::EventHandler::allowDHTMLDrag):
   59889           Moved from WebFrameBridge
   59890         * page/EventHandler.h:
   59891         * page/mac/EventHandlerMac.mm:
   59892         (WebCore::EventHandler::eventMayStartDrag):
   59893         (WebCore::EventHandler::handleDrag):                  
   59894           EventHandlerMac now uses EventHandler::allowDHTMLDrag rather than the 
   59895           implementation in WebFrameBridge
   59896         * page/mac/WebCoreFrameBridge.h:
   59897           removed definition of allowDHTMLDrag from WebFrameBridge
   59898         * platform/graphics/svg/SVGImageEmptyClients.h:
   59899         (WebCore::SVGEmptyDragClient::dragSourceActionMaskForPoint):
   59900           Updated empty DragClient
   59901 
   59902 2007-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   59903 
   59904         Reviewed by Darin.
   59905 
   59906         http://bugs.webkit.org/show_bug.cgi?id=12359
   59907         XPathEvaluator may return some nodes more than once in a result set
   59908 
   59909         Test: fast/xpath/nodeset-duplicates.html
   59910 
   59911         * xml/XPathPath.cpp:
   59912         (WebCore::XPath::LocationPath::doEvaluate): Ensure uniqueness of elements
   59913         in the node-set.
   59914 
   59915         * xml/XPathPredicate.cpp:
   59916         (WebCore::XPath::Union::doEvaluate): Fixed a uniqueness algorithm that was
   59917         already present here. Added a FIXME about incorrect result ordering.
   59918 
   59919 2007-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   59920 
   59921         Reviewed by Darin.
   59922 
   59923         http://bugs.webkit.org/show_bug.cgi?id=12340
   59924         XPathEvaluator behavior does not match Firefox - name() and attribute nodes
   59925 
   59926         * xml/XPathFunctions.cpp:
   59927         (WebCore::XPath::FunName::doEvaluate): Do not try to append a prefix if it doesn't exist.
   59928 
   59929 2007-01-29  Alexey Proskuryakov  <ap (a] webkit.org>
   59930 
   59931         Reviewed by Darin.
   59932 
   59933         http://bugs.webkit.org/show_bug.cgi?id=11815
   59934         XPathEvaluator behavior does not match Firefox - substring() and empty element
   59935 
   59936         Test: fast/xpath/empty-string-substring.html
   59937 
   59938         * xml/XPathValue.cpp:
   59939         (WebCore::XPath::Value::Value):
   59940         * xml/XPathValue.h:
   59941         Added a constructor taking const char*, so that string literals and arrays don't 
   59942         get converted to boolean values.
   59943 
   59944 2007-01-29  Zack Rusin  <zrusin (a] trolltech.com>
   59945 
   59946         Cosmetic fixes - don't resize the widget in the constructor
   59947         (it was a hack from the initial port) and fix the paint
   59948         signature.
   59949 
   59950         * platform/qt/ScrollViewCanvasQt.cpp:
   59951         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
   59952         * platform/qt/WidgetQt.cpp:
   59953         (WebCore::Widget::paint):
   59954 
   59955 2007-01-29  Maciej Stachowiak  <mjs (a] apple.com>
   59956 
   59957         - change from struct to class to make picky compilers happy
   59958 
   59959         * loader/SubstituteData.h:
   59960 
   59961 2007-01-30  Mark Rowe  <mrowe (a] apple.com>
   59962 
   59963         Reviewed by Maciej.
   59964 
   59965         http://bugs.webkit.org/show_bug.cgi?id=12458
   59966         Bug 12458: Crash in W3C-SVG-1.1/animate-elem-09-t.svg running layout tests under guard malloc
   59967 
   59968         * ksvg2/svg/SVGAnimationElement.cpp: 
   59969         (WebCore::parseValues): ptr either points to a ';' or off the end of the buffer.  We're
   59970         interested in what comes before the ';', so start there instead.
   59971 
   59972 2007-01-29  Zack Rusin  <zrusin (a] trolltech.com>
   59973 
   59974         Reviewed by Lars.
   59975 
   59976         Take the scrollbars into considation when computing
   59977         the contents size of the main frame.
   59978 
   59979         * platform/qt/PlatformScrollBarQt.cpp:
   59980         (WebCore::PlatformScrollbar::paint):
   59981         * platform/qt/ScrollViewQt.cpp:
   59982         (WebCore::ScrollView::visibleWidth):
   59983         (WebCore::ScrollView::visibleHeight):
   59984         (WebCore::ScrollView::visibleContentRect):
   59985         * platform/qt/WidgetQt.cpp:
   59986         (WebCore::Widget::invalidate):
   59987         (WebCore::Widget::invalidateRect):
   59988 
   59989 2007-01-29  Maciej Stachowiak  <mjs (a] apple.com>
   59990 
   59991         - fix includes
   59992 
   59993         * loader/SubstituteData.h:
   59994 
   59995 2007-01-29  Maciej Stachowiak  <mjs (a] apple.com>
   59996 
   59997         - added new file that I forgot in the last commit
   59998 
   59999         * loader/SubstituteData.h: Added.
   60000         (WebCore::SubstituteData::SubstituteData):
   60001         (WebCore::SubstituteData::isValid):
   60002         (WebCore::SubstituteData::content):
   60003         (WebCore::SubstituteData::mimeType):
   60004         (WebCore::SubstituteData::textEncoding):
   60005         (WebCore::SubstituteData::failingURL):
   60006 
   60007 2007-01-29  Maciej Stachowiak  <mjs (a] apple.com>
   60008 
   60009         Reviewed by Mark.
   60010 
   60011         - made data loading cross-platform
   60012         - fixed <rdar://problem/4910106>
   60013 
   60014         * WebCore.exp:
   60015         * WebCore.xcodeproj/project.pbxproj:
   60016         * loader/CachedResource.cpp:
   60017         * loader/CachedResource.h:
   60018         * loader/DocLoader.cpp:
   60019         (WebCore::DocLoader::requestResource):
   60020         * loader/DocumentLoader.cpp:
   60021         (WebCore::DocumentLoader::DocumentLoader):
   60022         (WebCore::DocumentLoader::setRequest):
   60023         (WebCore::DocumentLoader::urlForHistory):
   60024         (WebCore::DocumentLoader::unreachableURL):
   60025         * loader/DocumentLoader.h:
   60026         (WebCore::DocumentLoader::substituteData):
   60027         * loader/FrameLoader.cpp:
   60028         (WebCore::FrameLoader::load):
   60029         (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
   60030         (WebCore::FrameLoader::reloadAllowingStaleData):
   60031         (WebCore::FrameLoader::reload):
   60032         (WebCore::FrameLoader::commitProvisionalLoad):
   60033         (WebCore::FrameLoader::startLoadingMainResource):
   60034         (WebCore::FrameLoader::startLoading):
   60035         (WebCore::FrameLoader::checkNavigationPolicy):
   60036         * loader/FrameLoader.h:
   60037         * loader/FrameLoaderClient.h:
   60038         * loader/MainResourceLoader.cpp:
   60039         (WebCore::MainResourceLoader::willSendRequest):
   60040         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   60041         (WebCore::MainResourceLoader::handleEmptyLoad):
   60042         (WebCore::MainResourceLoader::handleDataLoad):
   60043         (WebCore::MainResourceLoader::loadNow):
   60044         (WebCore::MainResourceLoader::load):
   60045         * loader/MainResourceLoader.h:
   60046         * loader/mac/DocumentLoaderMac.mm:
   60047         * loader/mac/WebDataProtocol.h: Removed.
   60048         * loader/mac/WebDataProtocol.mm: Removed.
   60049         * loader/qt/DocumentLoaderQt.cpp:
   60050         * platform/graphics/svg/SVGImageEmptyClients.h:
   60051         (WebCore::SVGEmptyFrameLoaderClient::createDocumentLoader):
   60052 
   60053 2007-01-29  Zack Rusin  <zrusin (a] trolltech.com>
   60054 
   60055         Order the build files alphabetically instead of
   60056         the random mess we had before.
   60057 
   60058         * WebCore.pro:
   60059 
   60060 2007-01-29  Zack Rusin  <zack (a] kde.org>
   60061 
   60062         Reviewed by Lars
   60063 
   60064         Use the platform independent scrollbar code.
   60065         Remove the redundant empty stubs and forward
   60066         few missing platform scrollbar calls.
   60067 
   60068         * WebCore.pro:
   60069         * platform/qt/PlatformScrollBarQt.cpp:
   60070         (WebCore::PlatformScrollbar::paint):
   60071         (WebCore::PlatformScrollbar::setRect):
   60072 
   60073 2007-01-29  Lars Knoll <lars (a] trolltech.com>
   60074 
   60075         Reviewed by Zack
   60076 
   60077         Fix the way we handle native widgets (QWidget) inside
   60078         WebCore. Now WebCore::Widget owns the QWidget in all
   60079         cases. This is the only way to get well defined semantics
   60080         for all teh native widgets we have (currently ScrollView
   60081         and ScrollBar, but plugins will follow).
   60082 
   60083         This has the side effect that one cannot rely on a defined 
   60084         lifetime of a QWebFrame when using the API. 
   60085 
   60086         * platform/Widget.h:
   60087         * platform/qt/PlatformScrollBarQt.cpp:
   60088         (WebCore::PlatformScrollbar::PlatformScrollbar):
   60089         * platform/qt/ScrollViewQt.cpp:
   60090         (WebCore::ScrollView::addChild):
   60091         (WebCore::ScrollView::removeChild):
   60092         * platform/qt/WidgetQt.cpp:
   60093         (WebCore::WidgetPrivate::WidgetPrivate):
   60094         (WebCore::WidgetPrivate::~WidgetPrivate):
   60095         (WebCore::Widget::qwidget):
   60096 
   60097 2007-01-28  George Staikos  <staikos (a] kde.org>
   60098 
   60099         Reviewed by Maciej.
   60100 
   60101         Don't send data during a redirect -> causes assert failure.
   60102 
   60103         * platform/network/qt/ResourceHandleManagerQt.cpp:
   60104         (WebCore::ResourceHandleManager::receivedData):
   60105 
   60106 2007-01-29  Mark Rowe  <mrowe (a] apple.com>
   60107 
   60108         Reviewed by Brady.
   60109 
   60110         http://bugs.webkit.org/show_bug.cgi?id=11085
   60111         Bug 11085: REGRESSION: favicon.ico always looked for on port 80
   60112 
   60113         * loader/FrameLoader.cpp:
   60114         (WebCore::FrameLoader::iconURL): Copy the port over to the favicon URL.
   60115 
   60116 2007-01-28  Adam Roben  <aroben (a] apple.com>
   60117 
   60118         Reviewed by Adele.
   60119 
   60120         Fix http://bugs.webkit.org/show_bug.cgi?id=12453
   60121         REGRESSION(r19197): Tabbing into web page requires two key presses
   60122 
   60123         All layout tests pass.
   60124 
   60125         * page/FocusController.cpp:
   60126         (WebCore::FocusController::advanceFocus): If there's no focused frame,
   60127         actually go ahead and find a focusable node instead of just focusing
   60128         the main frame and quitting. This behavior was a holdover from a
   60129         previous desired tabbing behavior with respect to frames.
   60130 
   60131 2007-01-28  David Kilzer  <ddkilzer (a] webkit.org>
   60132 
   60133         Reviewed by Darin and David Hyatt.
   60134 
   60135         - fix http://bugs.webkit.org/show_bug.cgi?id=12423
   60136           Mixing white-space:pre text with non white-space:pre text does not wrap properly
   60137 
   60138         Test: fast/block/basic/white-space-pre-wraps.html
   60139 
   60140         * rendering/bidi.cpp:
   60141         (WebCore::RenderBlock::findNextLineBreak): Wrap a non-wrapping text run if it
   60142         appears on a line with previous text runs that do wrap.
   60143 
   60144 2007-01-28  Mitz Pettel  <mitz (a] webkit.org>
   60145 
   60146         Reviewed by Darin.
   60147 
   60148         - fix http://bugs.webkit.org/show_bug.cgi?id=8360
   60149           Repro crash when onscroll handler deletes the scrolled object
   60150 
   60151         Test: fast/layers/removed-by-scroll-handler.html
   60152 
   60153         * page/FrameView.cpp:
   60154         (WebCore::FrameViewPrivate::FrameViewPrivate): Added a m_enqueueEvents count.
   60155         (WebCore::FrameView::layout): Raise the enqueue count before starting layout and
   60156         until after enqueued events are dispatched.
   60157         (WebCore::FrameView::scheduleEvent): Made this function dispatch the event
   60158         immediately unless the enqueue count is positive.
   60159         * rendering/RenderLayer.cpp:
   60160         (WebCore::RenderLayer::scrollToOffset): Schedule the scroll event through the
   60161         FrameView.
   60162         (WebCore::RenderLayer::scrollRectToVisible):
   60163         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   60164         (WebCore::Marquee::start):
   60165 
   60166 2007-01-28  Charles Ying  <charles_ying (a] yahoo.com>
   60167 
   60168         Reviewed by eseidel.  Landed by eseidel.
   60169 
   60170         Fix http://bugs.webkit.org/show_bug.cgi?id=12429
   60171             animateTransform rotate, with cx/cy is broken
   60172             
   60173         SVGTransform now contains a float point to store the rotation center, needed
   60174             to track rotation center for interpolation by animateTransform.
   60175             
   60176         SVGTransform now has an additional constructor:
   60177             SVGTransform(type) to make empty base value transforms that match their
   60178             distanced values.
   60179             
   60180         Removed m_colorDistance and m_transformDistance from their respective classes
   60181             as they are now computed at update time.
   60182 
   60183         Fix a case where animateTransform did not parse transform values correctly
   60184             according to BNF in W3C spec:
   60185 
   60186         Test case in:
   60187         * manual-tests/animation/animateTransform-toanimation.svg: Added.
   60188 
   60189         Fix a case where animateTransform only specified a to animation only.
   60190 
   60191         Test case in:
   60192         * manual-tests/animation/animateTransform-parser.svg: Added.
   60193 
   60194         * ksvg2/svg/SVGAnimateColorElement.cpp:
   60195         (WebCore::SVGAnimateColorElement::updateAnimationBaseValueFromElement):
   60196         (WebCore::SVGAnimateColorElement::updateAnimatedValue):
   60197         (WebCore::SVGAnimateColorElement::calculateFromAndToValues):
   60198         * ksvg2/svg/SVGAnimateColorElement.h:
   60199         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   60200         (WebCore::SVGAnimateTransformElement::updateAnimatedValue):
   60201         (WebCore::SVGAnimateTransformElement::updateAnimationBaseValueFromElement):
   60202         (WebCore::SVGAnimateTransformElement::calculateFromAndToValues):
   60203         (WebCore::SVGAnimateTransformElement::parseTransformValue):
   60204         * ksvg2/svg/SVGAnimateTransformElement.h:
   60205         * ksvg2/svg/SVGTransform.cpp:
   60206         (SVGTransform::SVGTransform):
   60207         (SVGTransform::angle):
   60208         (SVGTransform::rotationCenter):
   60209         (SVGTransform::setTranslate):
   60210         (SVGTransform::setScale):
   60211         (SVGTransform::setRotate):
   60212         (SVGTransform::setSkewX):
   60213         (SVGTransform::setSkewY):
   60214         * ksvg2/svg/SVGTransform.h:
   60215         * ksvg2/svg/SVGTransformDistance.cpp:
   60216         (WebCore::SVGTransformDistance::SVGTransformDistance):
   60217         (WebCore::SVGTransformDistance::scaledDistance):
   60218         (WebCore::SVGTransformDistance::addSVGTransforms):
   60219         (WebCore::SVGTransformDistance::addSVGTransform):
   60220         (WebCore::SVGTransformDistance::addToSVGTransform):
   60221         (WebCore::SVGTransformDistance::distance):
   60222         * ksvg2/svg/SVGTransformDistance.h:
   60223         * manual-tests/animation/animateTransform-parser.svg: Added.
   60224         * manual-tests/animation/animateTransform-toanimation.svg: Added.
   60225 
   60226 2007-01-27  Adam Roben  <aroben (a] apple.com>
   60227 
   60228         Reviewed by Ada.
   60229 
   60230         Fix <rdar://problem/4957184> REGRESSION: After creating a new mail
   60231         message, the caret is automatically in message body
   60232 
   60233         -[WebHTMLView _updateActiveState] was calling
   60234         FocusController::focusedOrMainFrame, which had the surprising
   60235         side-effect of setting the focused frame if there was none. The fix
   60236         was to remove this side-effect.
   60237 
   60238         No tests possible, as this bug involves focus outside the WebView,
   60239         which we have no support for in DRT.
   60240 
   60241         Change inspired by Dave Harrison.
   60242 
   60243         * page/FocusController.cpp:
   60244         (WebCore::FocusController::focusedOrMainFrame): Removed this method's
   60245         non-obvious side-effect of setting the focused frame.
   60246         * WebCore.xcodeproj/project.pbxproj: Version wars.
   60247 
   60248 2007-01-27  Peter Kasting  <pkasting (a] google.com>
   60249 
   60250         Reviewed by Maciej.
   60251 
   60252         http://bugs.webkit.org/show_bug.cgi?id=11880: Improve some egregious
   60253         Windows form control drawing issues:
   60254         Provide Classic mode fallbacks for the button/textfield drawing
   60255         routines.
   60256         Provide some basic drawing of menulists (still relatively broken).
   60257         Some cleanup.
   60258 
   60259         * platform/win/TemporaryLinkStubs.cpp:
   60260         (WebCore::RenderThemeWin::systemFont):
   60261         * rendering/RenderThemeWin.cpp:
   60262         (WebCore::m_menuListTheme):
   60263         (WebCore::RenderThemeWin::close):
   60264         (WebCore::RenderThemeWin::determineClassicState):
   60265         (WebCore::RenderThemeWin::getThemeData):
   60266         (WebCore::RenderThemeWin::paintButton):
   60267         (WebCore::RenderThemeWin::paintTextField):
   60268         (WebCore::RenderThemeWin::paintMenuList):
   60269         (WebCore::RenderThemeWin::paintMenuListButton):
   60270         * rendering/RenderThemeWin.h:
   60271         (WebCore::ThemeData::m_classicState):
   60272         (WebCore::RenderThemeWin::setRadioSize):
   60273         (WebCore::RenderThemeWin::paintTextArea):
   60274 
   60275 2007-01-27  David Kilzer  <ddkilzer (a] webkit.org>
   60276 
   60277         Reviewed by Adam.
   60278 
   60279         - fix http://bugs.webkit.org/show_bug.cgi?id=12260
   60280           Windows platform build is not maintained
   60281 
   60282         * loader/win/FrameLoaderWin.cpp:
   60283         * platform/network/win/ResourceHandleWin.cpp:
   60284         * platform/win/TemporaryLinkStubs.cpp:
   60285         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   60286         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   60287         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   60288         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   60289         (WebCore::contextMenuItemTagDownloadImageToDisk):
   60290         (WebCore::contextMenuItemTagCopyImageToClipboard):
   60291         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   60292         (WebCore::contextMenuItemTagCopy):
   60293         (WebCore::contextMenuItemTagGoBack):
   60294         (WebCore::contextMenuItemTagGoForward):
   60295         (WebCore::contextMenuItemTagStop):
   60296         (WebCore::contextMenuItemTagReload):
   60297         (WebCore::contextMenuItemTagCut):
   60298         (WebCore::contextMenuItemTagPaste):
   60299         (WebCore::contextMenuItemTagNoGuessesFound):
   60300         (WebCore::contextMenuItemTagIgnoreSpelling):
   60301         (WebCore::contextMenuItemTagLearnSpelling):
   60302         (WebCore::contextMenuItemTagSearchWeb):
   60303         (WebCore::contextMenuItemTagLookUpInDictionary):
   60304         (WebCore::contextMenuItemTagOpenLink):
   60305         (WebCore::contextMenuItemTagIgnoreGrammar):
   60306         (WebCore::contextMenuItemTagSpellingMenu):
   60307         (WebCore::contextMenuItemTagShowSpellingPanel):
   60308         (WebCore::contextMenuItemTagCheckSpelling):
   60309         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   60310         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   60311         (WebCore::contextMenuItemTagFontMenu):
   60312         (WebCore::contextMenuItemTagBold):
   60313         (WebCore::contextMenuItemTagItalic):
   60314         (WebCore::contextMenuItemTagUnderline):
   60315         (WebCore::contextMenuItemTagOutline):
   60316         (WebCore::contextMenuItemTagWritingDirectionMenu):
   60317         (WebCore::contextMenuItemTagDefaultDirection):
   60318         (WebCore::contextMenuItemTagLeftToRight):
   60319         (WebCore::contextMenuItemTagRightToLeft):
   60320         (WebCore::DocumentLoader::unreachableURL):
   60321         (WebCore::FrameLoader::redirectDataToPlugin):
   60322         (WebCore::FrameLoader::partClearedInBegin):
   60323         (WebCore::FrameLoader::createPlugin):
   60324 
   60325 2007-01-27  Sam Weinig  <sam (a] webkit.org>
   60326 
   60327         Reviewed by Mitz.
   60328 
   60329         - Patch for http://bugs.webkit.org/show_bug.cgi?id=11957
   60330           REGRESSION: Unordered List Bullets too big and changing from size
   60331 
   60332         * rendering/RenderListMarker.cpp:
   60333         (WebCore::RenderListMarker::paint): Explicitly set the stroke size to 1.0f.
   60334 
   60335 2007-01-27  Lars Knoll <lars (a] trolltech.com>
   60336 
   60337         Fix the Qt build and disable the usage
   60338         of QScrollbars for PlatformScrollBar for 
   60339         now as it causes crashes in the layout tests.
   60340 
   60341         * WebCore.pro:
   60342         * ksvg2/svg/SVGTransformDistance.cpp:
   60343         * page/qt/FrameQt.cpp:
   60344         (WebCore::FrameQt::FrameQt):
   60345         (WebCore::FrameQt::bindingRootObject):
   60346         (WebCore::FrameQt::createRootObject):
   60347         * page/qt/FrameQt.h:
   60348         * platform/qt/PlatformScrollBarQt.cpp:
   60349         (WebCore::PlatformScrollbar::PlatformScrollbar):
   60350         * platform/qt/ScrollViewQt.cpp:
   60351         (WebCore::ScrollView::addChild):
   60352 
   60353 2007-01-27  David Kilzer  <ddkilzer (a] kilzer.net>
   60354 
   60355         Reviewed by NOBODY (buildbot build fix).
   60356 
   60357         * ksvg2/svg/ColorDistance.cpp:
   60358         (WebCore::ColorDistance::scaledDistance): Added static cast of arguments to int.
   60359 
   60360 2007-01-27  Rob Buis  <buis (a] kde.org>
   60361 
   60362         Reviewed by NOBODY (typo in method name fix).
   60363 
   60364         * ksvg2/svg/SVGSVGElement.cpp:
   60365         (WebCore::SVGSVGElement::addSVGWindowEventListener):
   60366         (WebCore::SVGSVGElement::parseMappedAttribute):
   60367         * ksvg2/svg/SVGSVGElement.h:
   60368 
   60369 2007-01-27  Eric Seidel  <eric (a] webkit.org>
   60370 
   60371         Reviewed by olliej.
   60372 
   60373         Fix support for SVG's <set> element.
   60374 
   60375         Manual test added.
   60376 
   60377         * ksvg2/svg/SVGSetElement.cpp:
   60378         (WebCore::SVGSetElement::updateAnimatedValue):
   60379         (WebCore::SVGSetElement::calculateFromAndToValues):
   60380         * ksvg2/svg/SVGSetElement.h:
   60381         * manual-tests/animation/set-to.svg: Added.
   60382 
   60383 2007-01-27  Alexey Proskuryakov  <ap (a] webkit.org>
   60384 
   60385         Release build fix.
   60386 
   60387         * loader/TextResourceDecoder.cpp:
   60388         (WebCore::TextResourceDecoder::checkForHeadCharset):
   60389 
   60390 2007-01-27  Alexey Proskuryakov  <ap (a] webkit.org>
   60391 
   60392         Reviewed by Darin.
   60393 
   60394         http://bugs.webkit.org/show_bug.cgi?id=12389
   60395         Chinese decoding error at hk.antispam.yahoo.com
   60396 
   60397         Test: fast/encoding/noscript-in-head.html
   60398 
   60399         * loader/TextResourceDecoder.cpp:
   60400         (WebCore::TextResourceDecoder::checkForHeadCharset): We were already allowing 
   60401         NOSCRIPT tags in head, let's actually skip over their content.
   60402 
   60403 2007-01-26  Geoffrey Garen  <ggaren (a] apple.com>
   60404 
   60405         Reviewed by Maciej Stachowiak.
   60406         
   60407         Fixed <rdar://problem/4608404> WebScriptObject's _executionContext lack 
   60408         of ownership policy causes crashes (e.g., in Dashcode)
   60409 
   60410         Added RootObject ref-counting goodness.
   60411 
   60412         * page/mac/FrameMac.h:
   60413         * page/mac/FrameMac.mm:
   60414         (WebCore::FrameMac::cleanupPluginObjects): Invalidate our RootObjects 
   60415         instead of detroying them. Track _bindingRootObject separately from the
   60416         rest of our RootObjects, since it has its own variable.
   60417 
   60418         * page/mac/WebCoreFrameBridge.mm:
   60419         (createRootObject): Use the Frame's new, more encapsulated function to
   60420         create a RootObject.
   60421 
   60422         * bindings/objc/WebScriptObject.mm: Nixed rootObject setters, since they
   60423         were unused and they complicated reference-counting.
   60424 
   60425 2007-01-26  David Kilzer  <ddkilzer (a] webkit.org>
   60426 
   60427         Reviewed by Eric.
   60428 
   60429         Release build fix.
   60430 
   60431         * ksvg2/svg/SVGAnimationElement.cpp:
   60432         (WebCore::SVGAnimationElement::calculateValueIndexAndPercentagePast): Added static cast
   60433         to unsigned when calculating flooredValueIndex.
   60434 
   60435 2007-01-26  Darin Adler  <darin (a] apple.com>
   60436 
   60437         - checked in slightly newer revision of the patch below
   60438 
   60439         * css/CSSComputedStyleDeclaration.cpp:
   60440         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   60441         Grouped all the unimplemented values at the bottom. Fixed the ifdef for
   60442         CSS_PROP__WEBKIT_DASHBOARD_REGION so that it compiles on all platforms.
   60443 
   60444         * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Removed default
   60445         case and added type so that the compiler warns about missing properties.
   60446         * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): Ditto.
   60447 
   60448 2007-01-26  Darin Adler  <darin (a] apple.com>
   60449 
   60450         Reviewed by Beth.
   60451 
   60452         - fix http://bugs.webkit.org/show_bug.cgi?id=12412
   60453           "unimplemented propertyID: 46" seen at dojotoolkit.org
   60454 
   60455         Covered by fast/css/computed-style.html
   60456 
   60457         * css/CSSPropertyNames.in: Sorted the file into two separate sections, one
   60458         for properties without the -webkit- prefix and another for properties with.
   60459 
   60460         * css/makeprop: Generate a CSSPropertyID enum instead of a set of #defines.
   60461         Removed unused CSS_PROP_MIN and CSS_PROP_MAX. Renamed CSS_PROP_TOTAL to
   60462         numCSSProperties and changed it to a const int instead of #define.
   60463         Added a declaration of getPropertyName in the header. Changed the return
   60464         type of getPropertyName to const char* and the parameter type to CSSPropertyID.
   60465 
   60466         * css/CSSComputedStyleDeclaration.cpp: Sort the lists of properties in
   60467         an easier to maintain order -- properties without a WebKit prefix first.
   60468         (WebCore::valueForLength): Changed return value to PassRefPtr.
   60469         (WebCore::valueForMaxLength): Ditto.
   60470         (WebCore::valueForBorderStyle): Ditto.
   60471         (WebCore::valueForTextAlign): Ditto.
   60472         (WebCore::valueForAppearance): Added.
   60473         (WebCore::valueForMarginCollapse): Added.
   60474         (WebCore::valueForShadow): Changed return value to PassRefPtr.
   60475         (WebCore::getPositionOffsetValue): Ditto.
   60476         (WebCore::currentColorOrValidColor): Ditto.
   60477         (WebCore::CSSComputedStyleDeclaration::cssText): Added cast since
   60478         getPropertyName now takes an enum value.
   60479         (WebCore::primitiveValueFromLength): Changed return value to PassRefPtr.
   60480         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   60481         Added cast to CSSPropertyID so that gcc will detect missing enums in the
   60482         switch statement. Simplified the background-size and border-spacing
   60483         implementations so they don't have local variables. Added lots of cases
   60484         to the switch statement for unimplemented properties. Implemented the
   60485         outline-width, box-sizing, -webkit-appearance, -webkit-rtl-ordering,
   60486         -webkit-user-drag, and -webkit-user-select properties.
   60487         (WebCore::CSSComputedStyleDeclaration::item): Added cast since
   60488         getPropertyName now takes an enum value.
   60489 
   60490         * css/CSSMutableStyleDeclaration.cpp: Removed declaration of getPropertyName.
   60491         (WebCore::CSSMutableStyleDeclaration::item): Added cast since
   60492         getPropertyName now takes an enum value.
   60493 
   60494         * css/CSSProperty.cpp: Removed declaration of getPropertyName.
   60495         (WebCore::CSSProperty::cssText): Added cast since
   60496         getPropertyName now takes an enum value and returns a const char*.
   60497 
   60498         * css/CSSStyleDeclaration.cpp: Removed declaration of getPropertyName.
   60499         (WebCore::CSSStyleDeclaration::getPropertyShorthand): Added cast since
   60500         getPropertyName now takes an enum value and returns a const char*.
   60501 
   60502 2007-01-26  Alice Liu  <alice.liu (a] apple.com>
   60503 
   60504         Reviewed by Brady.
   60505 
   60506         Fixed <rdar://problem/4838076> CrashTracer: 10 crashes in Mail at com.apple.WebCore: WTF::HashMap<WebCore::String
   60507 
   60508         * loader/DocLoader.cpp:
   60509         (WebCore::DocLoader::requestResource):
   60510         Added nil check around resource from cache.
   60511 
   60512 2007-01-26  Adam Roben  <aroben (a] apple.com>
   60513 
   60514         Reviewed by Oliver.
   60515 
   60516         Build fix.
   60517 
   60518         * ksvg2/svg/SVGAnimationElement.cpp:
   60519         (WebCore::SVGAnimationElement::calculateValueIndexAndPercentagePast):
   60520         Keep index variables as unsigned until we need to convert to float.
   60521 
   60522 2007-01-26  Alice Liu  <alice.liu (a] apple.com>
   60523 
   60524         Reviewed by Ada.
   60525 
   60526         Fixed <rdar://problem/4919097> REGRESSION: Ctrl-Y fails to yank (11076)
   60527 
   60528         * editing/Editor.cpp:
   60529         (WebCore::Editor::deleteWithDirection):
   60530         If there's no selection, locally create a range that is to the end of the granularity unit and pass that to deleteRange(). 
   60531 
   60532 2007-01-26  Sam Weinig  <sam (a] webkit.org>
   60533 
   60534         Reviewed by Maciej.
   60535 
   60536         Qt build fix.
   60537 
   60538         * page/qt/EventHandlerQt.cpp:
   60539 
   60540 2007-01-26  Matt Perry  <mpcomplete (a] chromium.org>
   60541 
   60542         Reviewed by Hyatt.
   60543 
   60544         Fix so that we only relayout frameset children on calls to layout.
   60545 
   60546         * page/FrameView.cpp:
   60547         (WebCore::FrameView::layout):
   60548 
   60549 2007-01-26  Oliver Hunt  <oliver (a] apple.com>
   60550 
   60551         Build Fix
   60552 
   60553         * ksvg2/svg/ColorDistance.cpp:
   60554         * ksvg2/svg/SVGAnimationElement.cpp:
   60555         (WebCore::SVGAnimationElement::handleTimerEvent):
   60556 
   60557 2007-01-26  Eric Seidel  <eric (a] webkit.org>
   60558 
   60559         Reviewed by olliej.
   60560 
   60561         Add support for calcMode, keyTimes and (nearly) keySplines.
   60562         http://bugs.webkit.org/show_bug.cgi?id=12350
   60563         Re-architect much of the animation system to remove huge sections of code.
   60564         Added new ColorDistance, SVGTransformDistance to simplify animateColor, animateTransform calculations.
   60565         I also added basic <animateMotion> support since it was so easy w/ the new architecture.
   60566         
   60567         Adding manual animation tests until bug 12074 is fixed.
   60568 
   60569         * WebCore.xcodeproj/project.pbxproj:
   60570         * ksvg2/misc/SVGTimer.cpp:
   60571         (WebCore::SVGTimer::applyAnimations):
   60572         * ksvg2/svg/ColorDistance.cpp: Added.
   60573         (WebCore::ColorDistance::ColorDistance):
   60574         (WebCore::clampColorValue):
   60575         (WebCore::ColorDistance::scaledDistance):
   60576         (WebCore::ColorDistance::addColorsAndClamp):
   60577         (WebCore::ColorDistance::addToColorAndClamp):
   60578         (WebCore::ColorDistance::isZero):
   60579         (WebCore::ColorDistance::distance):
   60580         * ksvg2/svg/ColorDistance.h: Added.
   60581         * ksvg2/svg/SVGAnimateColorElement.cpp:
   60582         (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
   60583         (WebCore::SVGAnimateColorElement::updateAnimationBaseValueFromElement):
   60584         (WebCore::SVGAnimateColorElement::applyAnimatedValueToElement):
   60585         (WebCore::SVGAnimateColorElement::updateAnimatedValue):
   60586         (WebCore::SVGAnimateColorElement::calculateFromAndToValues):
   60587         * ksvg2/svg/SVGAnimateColorElement.h:
   60588         (WebCore::SVGAnimateColorElement::contextElement):
   60589         * ksvg2/svg/SVGAnimateElement.h:
   60590         (WebCore::SVGAnimateElement::updateAnimatedValue):
   60591         (WebCore::SVGAnimateElement::calculateFromAndToValues):
   60592         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   60593         (WebCore::SVGAnimateMotionElement::hasValidTarget):
   60594         (WebCore::SVGAnimateMotionElement::updateAnimatedValue):
   60595         (WebCore::parsePoint):
   60596         (WebCore::SVGAnimateMotionElement::calculateFromAndToValues):
   60597         (WebCore::SVGAnimateMotionElement::updateAnimationBaseValueFromElement):
   60598         (WebCore::SVGAnimateMotionElement::applyAnimatedValueToElement):
   60599         * ksvg2/svg/SVGAnimateMotionElement.h:
   60600         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   60601         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
   60602         (WebCore::SVGAnimateTransformElement::updateAnimatedValue):
   60603         (WebCore::SVGAnimateTransformElement::updateAnimationBaseValueFromElement):
   60604         (WebCore::SVGAnimateTransformElement::applyAnimatedValueToElement):
   60605         (WebCore::SVGAnimateTransformElement::calculateFromAndToValues):
   60606         (WebCore::SVGAnimateTransformElement::parseTransformValue):
   60607         * ksvg2/svg/SVGAnimateTransformElement.h:
   60608         (WebCore::SVGAnimateTransformElement::contextElement):
   60609         * ksvg2/svg/SVGAnimationElement.cpp:
   60610         (WebCore::SVGAnimationElement::parseKeyNumbers):
   60611         (WebCore::parseValues):
   60612         (WebCore::parseKeySplines):
   60613         (WebCore::SVGAnimationElement::parseMappedAttribute):
   60614         (WebCore::SVGAnimationElement::targetAttributeAnimatedValue):
   60615         (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
   60616         (WebCore::SVGAnimationElement::detectAnimationMode):
   60617         (WebCore::adjustPercentagePastForKeySplines):
   60618         (WebCore::SVGAnimationElement::valueIndexAndPercentagePastForDistance):
   60619         (WebCore::SVGAnimationElement::calculateTotalDistance):
   60620         (WebCore::caculateValueIndexForKeyTimes):
   60621         (WebCore::SVGAnimationElement::isValidAnimation):
   60622         (WebCore::SVGAnimationElement::calculateValueIndexAndPercentagePast):
   60623         (WebCore::SVGAnimationElement::updateAnimationBaseValueFromElement):
   60624         (WebCore::SVGAnimationElement::applyAnimatedValueToElement):
   60625         (WebCore::SVGAnimationElement::handleTimerEvent):
   60626         (WebCore::SVGAnimationElement::updateAnimatedValueForElapsedSeconds):
   60627         * ksvg2/svg/SVGAnimationElement.h:
   60628         * ksvg2/svg/SVGParserUtilities.cpp:
   60629         (WebCore::SVGPolyParser::parsePoints):
   60630         * ksvg2/svg/SVGParserUtilities.h:
   60631         * ksvg2/svg/SVGSetElement.cpp:
   60632         * ksvg2/svg/SVGSetElement.h:
   60633         (WebCore::SVGSetElement::updateAnimatedValue):
   60634         (WebCore::SVGSetElement::calculateFromAndToValues):
   60635         * ksvg2/svg/SVGTransform.cpp:
   60636         (SVGTransform::type):
   60637         (SVGTransform::translate):
   60638         (SVGTransform::scale):
   60639         (SVGTransform::setSkewX):
   60640         (SVGTransform::setSkewY):
   60641         * ksvg2/svg/SVGTransform.h:
   60642         (WebCore::operator==):
   60643         (WebCore::operator!=):
   60644         * ksvg2/svg/SVGTransformDistance.cpp: Added.
   60645         (WebCore::SVGTransformDistance::SVGTransformDistance):
   60646         (WebCore::SVGTransformDistance::scaledDistance):
   60647         (WebCore::SVGTransformDistance::addSVGTransforms):
   60648         (WebCore::SVGTransformDistance::addSVGTransform):
   60649         (WebCore::SVGTransformDistance::addToSVGTransform):
   60650         (WebCore::SVGTransformDistance::isZero):
   60651         (WebCore::SVGTransformDistance::distance):
   60652         * ksvg2/svg/SVGTransformDistance.h: Added.
   60653         * ksvg2/svg/SVGTransformList.cpp:
   60654         (SVGTransformList::concatenateForType):
   60655         * ksvg2/svg/SVGTransformList.h:
   60656         * manual-tests/animation/animateColor-by.svg: Added.
   60657         * manual-tests/animation/animateColor-from-by.svg: Added.
   60658         * manual-tests/animation/animateColor-repeat-indefinite.svg: Added.
   60659         * manual-tests/animation/animateColor-to-from.svg: Added.
   60660         * manual-tests/animation/animateColor-to.svg: Added.
   60661         * manual-tests/animation/animateColor-values-simple.svg: Added.
   60662         * manual-tests/animation/animateMotion-to.svg: Added.
   60663         * manual-tests/animation/animateTransform-keyTimes.svg: Added.
   60664         * manual-tests/animation/animateTransform-repeat-once.svg: Added.
   60665 
   60666 2007-01-26  Beth Dakin  <bdakin (a] apple.com>
   60667 
   60668         Reviewed by Darin.
   60669 
   60670         Fix for <rdar://problem/4956565> REGRESSION: After scrolling frame, 
   60671         hovering over link in this frame doesn't change cursor to pointing 
   60672         hand
   60673 
   60674         The mouseMove event was not being propagated correctly after using 
   60675         the mouse to scroll the frame because m_mousePressed was never 
   60676         getting set to false.
   60677 
   60678         * page/EventHandler.cpp:
   60679         (WebCore::EventHandler::handleMousePressEvent): This code does not 
   60680         belong here.
   60681         * page/EventHandler.h: lastEventIsMouseUp() is only ever relevant 
   60682         in EventHandlerMac, so it can just be a static function there.
   60683         * page/mac/EventHandlerMac.mm:
   60684         (WebCore::lastEventIsMouseUp): Make this static.
   60685         (WebCore::EventHandler::passMouseDownEventToWidget): Here is where 
   60686         we need to set m_mousePressed to false if lastEventIsMouseUp() is 
   60687         true.
   60688 
   60689 2007-01-26  David Hyatt  <hyatt (a] apple.com>
   60690 
   60691         Fix for style regression caused by strictness checking of the number of properties.  This caused code like:
   60692         "width: 20 px" to fail, because we interpreted it as two values and rejected it.  Our old code allowed 20 to be
   60693         used like a pixel value and then ignored the orphaned unit.
   60694 
   60695         This patch actually scans the list of values looking for orphaned units and reattaches them to the numeric
   60696         values that they should correspond to.  This means rules like "width: 5 em" will now work in quirks mdoe and
   60697         the "em" unit type will be honored.
   60698 
   60699         Reviewed by beth
   60700 
   60701         * WebCore.xcodeproj/project.pbxproj:
   60702         * css/cssparser.cpp:
   60703         (WebCore::unitFromString):
   60704         (WebCore::CSSParser::checkForOrphanedUnits):
   60705         (WebCore::CSSParser::parseValue):
   60706         * css/cssparser.h:
   60707         (WebCore::ValueList::valueAt):
   60708         (WebCore::ValueList::deleteValueAt):
   60709 
   60710 2007-01-26  George Staikos  <staikos (a] kde.org>
   60711 
   60712         Reviewed by Zack.
   60713 
   60714         Qt implementation.
   60715 
   60716         * WebCore.pro:
   60717         * platform/qt/FontPlatformDataQt.cpp:
   60718         (WebCore::FontPlatformData::FontPlatformData):
   60719         * platform/qt/ScrollViewQt.cpp:
   60720         (WebCore::ScrollView::scrollbarUnderMouse):
   60721 
   60722 2007-01-26  Brady Eidson  <beidson (a] apple.com>
   60723 
   60724         Reviewed by Anders' rubberstamp
   60725         
   60726         Warning about unreferenced formal parameter caused compile to fail
   60727 
   60728         * platform/cf/RetainPtr.h:
   60729         (WebCore::adoptCFReference):
   60730 
   60731 2007-01-26  Darin Adler  <darin (a] apple.com>
   60732 
   60733         Reviewed by Brady.
   60734 
   60735         - fix <rdar://problem/4956688> move Mac-specific part of icon code into IconMac
   60736         - fix a GC-compatibility problem in the icon code I noticed by code inspection
   60737 
   60738         * platform/FileChooser.cpp: (WebCore::FileChooser::chooseIcon): Removed Mac-specific
   60739         path check -- that's in newIconForFile now.
   60740 
   60741         * platform/graphics/Icon.h: Changed the image to be a RetainPtr. The old code was
   60742         using -[NSObject retain] which is not good enough for a pointer in a C++ object.
   60743         * platform/graphics/mac/IconMac.mm:
   60744         (WebCore::Icon::Icon): Got rid of unneeded code to do what RetainPtr does for us.
   60745         (WebCore::Icon::~Icon): Ditto.
   60746         (WebCore::Icon::newIconForFile): Added check for non-absolute file names. Updated
   60747         for use of RetainPtr. Use constructor that takes NSImage.
   60748         (WebCore::Icon::paint): Add get() calls needed now that we are using a RetainPtr.
   60749 
   60750         * WebCore.xcodeproj/project.pbxproj: Let Xcode do its thing.
   60751 
   60752 2007-01-26  Alexey Proskuryakov  <ap (a] webkit.org>
   60753 
   60754         Reviewed by Maciej.
   60755 
   60756         http://bugs.webkit.org/show_bug.cgi?id=12385
   60757         Assertion failure when loading subresources from "data:" frames
   60758 
   60759         Test: fast/loader/opaque-base-url.html
   60760 
   60761         * platform/KURL.cpp:
   60762         (WebCore::KURL::init): Make the URL invalid if it's relative, but has an opaque or empty base.
   60763 
   60764 2007-01-26  Matt Perry  <mpcomplete (a] chromium.org>
   60765 
   60766         Reviewed by Darin.
   60767 
   60768         * page/EventHandler.cpp:
   60769         (WebCore::EventHandler::handleMouseMoveEvent):
   60770         Removed a call to invalidateClick(), since we don't want to cancel a
   60771         click if the mouse moves.
   60772 
   60773 2007-01-26  Darin Adler  <darin (a] apple.com>
   60774 
   60775         * css/MediaQueryEvaluator.cpp:
   60776         (WebCore::MediaQueryEvaluator::mediaTypeMatchSpecific):
   60777         Oops, forgot a !.
   60778 
   60779 2007-01-26  Darin Adler  <darin (a] apple.com>
   60780 
   60781         Patch by Nate Begeman.
   60782         Reviewed by Darin and Maciej.
   60783 
   60784         - <rdar://problem/4946877> Avoid unnecessary allocations in CSS, patch attached (12401)
   60785           http://bugs.webkit.org/show_bug.cgi?id=12401
   60786 
   60787         * css/MediaQueryEvaluator.h: Add mediaTypeMatchSpecific, a function that
   60788         takes a char* to avoid creating and destroying a String for simple media
   60789         type queries.
   60790         * css/MediaQueryEvaluator.cpp:
   60791         (WebCore::MediaQueryEvaluator::mediaTypeMatchSpecific): Added. Besides
   60792         avoiding the conversion to String, this also doesn't have the special
   60793         case code to handle "" and "all".
   60794 
   60795         * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::matchUARules):
   60796         Call mediaTypeMatchSpecific here when deciding whether to use the
   60797         print version of the user agent style sheet.
   60798 
   60799         * loader/Cache.cpp: (WebCore::Cache::requestResource): Don't convert to
   60800         a string and back to a KURL when calling createResource. Avoids reparsing
   60801         the URL string.
   60802 
   60803 2007-01-26  Zack Rusin  <zrusin (a] trolltech.com>
   60804 
   60805         Reviewed by Lars
   60806 
   60807         Add history related classes to the project file.
   60808 
   60809         * WebCore.pro:
   60810 
   60811 2007-01-26  Zack Rusin  <zack (a] kde.org>
   60812 
   60813         Reviewed by Lars
   60814 
   60815         Introduce PlatformScrollBar and try to make 
   60816         the scrollbar behavior a little more sane.
   60817 
   60818         * WebCore.pro:
   60819         * platform/qt/PlatformScrollBarQt.cpp: Added.
   60820         (WebCore::Scrollbar::Scrollbar):
   60821         (WebCore::Scrollbar::setSteps):
   60822         (WebCore::Scrollbar::scroll):
   60823         (WebCore::Scrollbar::setValue):
   60824         (WebCore::Scrollbar::setProportion):
   60825         (WebCore::PlatformScrollbar::PlatformScrollbar):
   60826         (WebCore::PlatformScrollbar::~PlatformScrollbar):
   60827         (WebCore::PlatformScrollbar::width):
   60828         (WebCore::PlatformScrollbar::height):
   60829         (WebCore::PlatformScrollbar::setEnabled):
   60830         (WebCore::PlatformScrollbar::paint):
   60831         (WebCore::PlatformScrollbar::updateThumbPosition):
   60832         (WebCore::PlatformScrollbar::updateThumbProportion):
   60833         (WebCore::PlatformScrollbar::setRect):
   60834         * platform/qt/ScrollViewQt.cpp:
   60835         (WebCore::ScrollView::addChild):
   60836         * platform/qt/TemporaryLinkStubs.cpp:
   60837         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
   60838 
   60839 2007-01-26  Mitz Pettel  <mitz (a] webkit.org>
   60840 
   60841         Reviewed by Darin.
   60842 
   60843         - fix http://bugs.webkit.org/show_bug.cgi?id=11109
   60844           REGRESSION (r15471): menus are offset on eink.com
   60845           <rdar://problem/4824760>
   60846 
   60847         Changed offset{Left,Top} to match Firefox. If the body element is statically
   60848         positioned, it is still returned as the offsetParent of elements whose containing
   60849         block is the initial containing block (the root), but their offset{Left,Top} are
   60850         relative to the root. If the body element is positioned, then offsets are relative
   60851         to it. The body's own offset{Left,Top} are always 0. 
   60852 
   60853         Test: fast/dom/Element/offsetLeft-offsetTop-body-quirk.html
   60854 
   60855         * rendering/RenderObject.cpp:
   60856         (WebCore::RenderObject::offsetLeft):
   60857         (WebCore::RenderObject::offsetTop):
   60858 
   60859 2007-01-26  Mitz Pettel  <mitz (a] webkit.org>
   60860 
   60861         Reviewed by Darin and Maciej.
   60862 
   60863         - fix http://bugs.webkit.org/show_bug.cgi?id=10983
   60864           REGRESSION (r12290): Drop shadow of flickr photo note is positioned incorrectly the second time it's shown
   60865 
   60866         Test: fast/dynamic/staticY.html
   60867 
   60868         * rendering/RenderBlock.cpp:
   60869         (WebCore::RenderBlock::layoutPositionedObjects): Avoid marking the object's
   60870         parents, since they have already been laid out.
   60871         * rendering/RenderBox.cpp:
   60872         (WebCore::RenderBox::setStaticY): Added a call to setChildNeedsLayout() to
   60873         ensure relayout by this box's container (third and fourth cases in the
   60874         layout test).
   60875         * rendering/RenderBox.h:
   60876         * rendering/RenderObject.cpp:
   60877         (WebCore::RenderObject::markContainingBlocksForLayout): For positioned objects
   60878         with static y, also mark the object's parent to ensure that it recomputes
   60879         the static y value (first case in the layout test).
   60880 
   60881 2007-01-26  Lars Knoll <lars (a] trolltech.com>
   60882 
   60883         Reviewed by Zack
   60884 
   60885         Get rid of FrameQtClient. It's unused since we moved over
   60886         to the loader.
   60887 
   60888         * WebCore.pro:
   60889         * page/qt/FrameQt.cpp:
   60890         (WebCore::FrameQt::FrameQt):
   60891         * page/qt/FrameQt.h:
   60892         * page/qt/FrameQtClient.cpp: Removed.
   60893         * page/qt/FrameQtClient.h: Removed.
   60894         * platform/network/ResourceHandleInternal.h:
   60895         * platform/network/qt/ResourceHandleManagerQt.cpp:
   60896         (WebCore::RequestQt::RequestQt):
   60897         (WebCore::ResourceHandleManager::add):
   60898         * platform/network/qt/ResourceHandleManagerQt.h:
   60899         * platform/network/qt/ResourceHandleQt.cpp:
   60900         (WebCore::ResourceHandle::start):
   60901 
   60902 2007-01-26  Zack Rusin  <zack (a] kde.org>
   60903 
   60904         Fix the compile
   60905 
   60906         * WebCore.pro:
   60907 
   60908 2007-01-26  Adam Roben  <aroben (a] apple.com>
   60909 
   60910         Reviewed by Maciej.
   60911 
   60912         Fixed <rdar://problem/4946499>, which made it impossible to tab
   60913         forward into the left frame of tivofaq.com after tabbing out of the
   60914         document.
   60915 
   60916         * page/FocusController.cpp:
   60917         (WebCore::FocusController::advanceFocus): Clear the focused frame
   60918         before passing off focus to Chrome so that when we re-enter the
   60919         document we start at the main frame instead of the last focused frame.
   60920 
   60921 2007-01-25  Rob Buis  <buis (a] kde.org>
   60922 
   60923         Reviewed by olliej.
   60924 
   60925         http://bugs.webkit.org/show_bug.cgi?id=11911
   60926         SVG exhibits double-text-selection behavior
   60927 
   60928         Fix selection height of the inline text boxes for svg.
   60929 
   60930         * WebCore.xcodeproj/project.pbxproj:
   60931         * rendering/InlineTextBox.cpp:
   60932         (WebCore::InlineTextBox::selectionTop):
   60933         (WebCore::InlineTextBox::selectionHeight):
   60934         (WebCore::InlineTextBox::selectionRect):
   60935         (WebCore::InlineTextBox::paintSelection):
   60936         (WebCore::InlineTextBox::paintMarkedTextBackground):
   60937         (WebCore::InlineTextBox::paintCustomHighlight):
   60938         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
   60939         (WebCore::InlineTextBox::paintTextMatchMarker):
   60940         * rendering/InlineTextBox.h:
   60941         * rendering/RenderSVGInlineText.cpp:
   60942         (WebCore::RenderSVGInlineText::createInlineTextBox):
   60943         * rendering/RenderSVGInlineText.h:
   60944         * rendering/RenderText.cpp:
   60945         (WebCore::RenderText::createInlineTextBox):
   60946         (WebCore::RenderText::createInlineBox):
   60947         * rendering/RenderText.h:
   60948         * rendering/SVGInlineTextBox.cpp: Added.
   60949         (WebCore::SVGInlineTextBox::selectionTop):
   60950         (WebCore::SVGInlineTextBox::selectionHeight):
   60951         * rendering/SVGInlineTextBox.h: Added.
   60952         (WebCore::SVGInlineTextBox::SVGInlineTextBox):
   60953 
   60954 2007-01-26  Zack Rusin  <zack (a] kde.org>
   60955 
   60956         Reviewed by Lars
   60957 
   60958         Fix drawing of tiled images.
   60959 
   60960         * WebCore.pro:
   60961         * platform/graphics/qt/ImageQt.cpp:
   60962         (WebCore::BitmapImage::drawPattern):
   60963 
   60964 2007-01-26  Zack Rusin  <zack (a] kde.org>
   60965 
   60966         Reviewed by Lars
   60967 
   60968         Fixing image loading - we decode QImages
   60969         but render QPixmaps now. Implement Icon
   60970         class
   60971 
   60972         * platform/graphics/BitmapImage.h:
   60973         * platform/graphics/Icon.h:
   60974         * platform/graphics/Image.h:
   60975         (WebCore::Image::getPixmap):
   60976         * platform/graphics/qt/IconQt.cpp:
   60977         (WebCore::Icon::Icon):
   60978         (WebCore::Icon::~Icon):
   60979         (WebCore::Icon::newIconForFile):
   60980         (WebCore::Icon::paint):
   60981         * platform/graphics/qt/ImageDecoderQt.cpp:
   60982         (WebCore::ImageDecoderQt::ImageData::ImageData):
   60983         (WebCore::ImageDecoderQt::ReadContext::read):
   60984         (WebCore::ImageDecoderQt::ReadContext::readImageLines):
   60985         (WebCore::ImageDecoderQt::reset):
   60986         (WebCore::ImageDecoderQt::imageAtIndex):
   60987         * platform/graphics/qt/ImageDecoderQt.h:
   60988         * platform/graphics/qt/ImageQt.cpp:
   60989         (WebCore::BitmapImage::drawPattern):
   60990         (WebCore::BitmapImage::getPixmap):
   60991         * platform/graphics/qt/ImageSourceQt.cpp:
   60992         (WebCore::ImageSource::createFrameAtIndex):
   60993 
   60994 2007-01-25  Justin Garcia  <justin.garcia (a] apple.com>
   60995 
   60996         Reviewed by oliver
   60997         
   60998         <http://bugs.webkit.org/show_bug.cgi?id=12409>
   60999         REGRESSION (r19039): Drag caret isn't cleared after a drop
   61000 
   61001         No new layout tests because the regression was
   61002         caught by current layout tests.
   61003 
   61004         * page/DragController.cpp:
   61005         (WebCore::DragController::concludeDrag): Clear the drag caret.
   61006 
   61007 2007-01-25  Darin Adler  <darin (a] apple.com>
   61008 
   61009         Reviewed and landed by Geoffrey Garen.
   61010 
   61011         - fix http://bugs.webkit.org/show_bug.cgi?id=12342
   61012           REGRESSION: destroying a frame from its own script causes various crashes
   61013 
   61014         * bindings/js/kjs_window.cpp: (KJS::ScheduledAction::execute):
   61015         Use RefPtr for the frame and the interpreter object so they don't get deleted
   61016         out from underneath us.
   61017 
   61018         * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::evaluate):
   61019         Add a check for a page of 0. This was the only call site for the
   61020         addMessageToConsole function that did not have a check for a page of 0.
   61021 
   61022 2007-01-25 Dirk Mueller  <mueller (a] kde.org>
   61023 
   61024         Reviewed and merged by Beth.
   61025 
   61026         Fix for <rdar://problem/4921692> not processing comments inside a 
   61027         title element leads to XSS (for at least BlogSpot)
   61028 
   61029         This is equivalent to commit 626791 in the KDE tree. Basically, the 
   61030         patch allows comment parsing in titles to avoid capturing a 
   61031         <script> tag by accident.
   61032 
   61033         * html/HTMLTokenizer.cpp:
   61034         (WebCore::HTMLTokenizer::parseSpecial):
   61035         (WebCore::HTMLTokenizer::parseComment):
   61036 
   61037 2007-01-25  Darin Adler  <darin (a] apple.com>
   61038 
   61039         * ksvg2/svg/SVGPreserveAspectRatio.cpp: Add a couple of comments.
   61040 
   61041 2007-01-25  Darin Adler  <darin (a] apple.com>
   61042 
   61043         Reviewed by Maciej.
   61044 
   61045         - fix http://bugs.webkit.org/show_bug.cgi?id=12365
   61046           Reproducible crash in WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio
   61047           in svg/W3C-SVG-1.1/animate-elem-40-t.svg under guard malloc
   61048         - fix bug where the parser accepts "meet" or "slice" as an entire string
   61049         - fix bug where "slice" is ignored if the old alignment was "none"
   61050           even if the newly-parsed alignment is something other than "none", and
   61051           "slice" is not ignored if the old alignment was not "none", but the
   61052           newly-parsed alignment is "none"
   61053         - optimize to only call notifyAttributeChange if the attribute actually changed
   61054 
   61055         Test: svg/dom/preserve-aspect-ratio-parser-test.html
   61056 
   61057         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
   61058         (WebCore::checkString): Added an overload for using char* constants which is
   61059         much simpler than the old one, and almost as fast.
   61060         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio): Fail if there's no
   61061         more text after "defer". Fail if there's neither "none" nor an x/y specified.
   61062         Check that there's more text before looking at the "m" and "s" for "meet" and
   61063         "slice". Merged the failure and success cases. Only call notifyAttributeChange
   61064         if something changed.
   61065 
   61066         I think all the "optimized" code where we check the first character before
   61067         calling checkString isn't really helpful, but I decided to leave it as-is
   61068         for now.
   61069 
   61070 2007-01-25  Lars Knoll <lars (a] trolltech.com>
   61071 
   61072         Reviewed by Zack
   61073 
   61074         Trivial implementation of getMIMETypeForExtension.
   61075         Use the above method in the ResourceHandleManager to set
   61076         a mimetype on Resources that don't have one set (which
   61077         includes everything loaded from local disk).
   61078 
   61079         Should fix quite a few test cases :)
   61080 
   61081         * platform/network/qt/ResourceHandleManagerQt.cpp:
   61082         (WebCore::ResourceHandleManager::receivedResponse):
   61083         * platform/qt/MimeTypeRegistryQt.cpp:
   61084         (WebCore::):
   61085         (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
   61086 
   61087 2007-01-25 Harald Fernengel <harald (a] trolltech.com>
   61088 
   61089         Reviewed by zack
   61090 
   61091         Compile on platforms where qreal is not a double.
   61092 
   61093         * platform/graphics/qt/AffineTransformQt.cpp:
   61094         (WebCore::AffineTransform::map):
   61095 
   61096 2007-01-25  Zack Rusin  <zack (a] kde.org>
   61097 
   61098         Reviewed by Lars.
   61099 
   61100         Add wheel event handling and make explicit usage
   61101         of the EventHandler.
   61102 
   61103         * WebCore.pro:
   61104         * page/qt/EventHandlerQt.cpp:
   61105         (WebCore::EventHandler::focusDocumentView):
   61106         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
   61107         (WebCore::EventHandler::passMouseDownEventToWidget):
   61108         (WebCore::EventHandler::lastEventIsMouseUp):
   61109         (WebCore::EventHandler::handleMouseUp):
   61110         * platform/PlatformWheelEvent.h:
   61111         * platform/qt/ScrollViewCanvasQt.cpp:
   61112         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
   61113         (WebCore::ScrollViewCanvasQt::mousePressEvent):
   61114         (WebCore::ScrollViewCanvasQt::wheelEvent):
   61115         (WebCore::ScrollViewCanvasQt::dragEnterEvent):
   61116         (WebCore::ScrollViewCanvasQt::dragLeaveEvent):
   61117         (WebCore::ScrollViewCanvasQt::dragMoveEvent):
   61118         * platform/qt/ScrollViewCanvasQt.h:
   61119         * platform/qt/ScrollViewQt.cpp:
   61120         (WebCore::ScrollView::wheelEvent):
   61121         * platform/qt/WheelEventQt.cpp: Added.
   61122         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
   61123 
   61124 2007-01-25  Rob Buis  <buis (a] kde.org>
   61125 
   61126         Reviewed by Maciej.
   61127 
   61128         http://bugs.webkit.org/show_bug.cgi?id=12391
   61129         SVG containers with viewports should respect overflow when hit testing
   61130 
   61131         Take into account the overflow property when hit testing <svg>.
   61132 
   61133         * rendering/RenderSVGContainer.cpp:
   61134         (WebCore::RenderSVGContainer::nodeAtPoint):
   61135 
   61136 2007-01-23  Alice Liu  <alice.liu (a] apple.com>
   61137 
   61138         Reviewed by Maciej.
   61139 
   61140         fixed <rdar://problem/4808039> REGRESSION: eBay ID check never completes
   61141         Also known as http://bugs.webkit.org/show_bug.cgi?id=11230
   61142 
   61143         * bindings/js/kjs_window.cpp:
   61144         It's not necessary to check safeScript when doing a location.replace, .reload, or .assign
   61145         (KJS::Location::getOwnPropertySlot):
   61146         (KJS::LocationFunc::callAsFunction):
   61147 
   61148 2007-01-25  Alice Liu  <alice.liu (a] apple.com>
   61149 
   61150         Reviewed by Geoff and Adele.
   61151 
   61152         fixed <rdar://problem/4866655> REGRESSION: Copying out of Calculator & CIFIlterWidget is broken on 9A320
   61153 
   61154         * editing/Editor.cpp:
   61155         (WebCore::Editor::canDHTMLCut):
   61156         (WebCore::Editor::canDHTMLCopy):
   61157         (WebCore::Editor::tryDHTMLCopy):
   61158         (WebCore::Editor::tryDHTMLCut):
   61159         Reverting some mistakes made in r17504:
   61160         Anything in r17503 that used to call mayDHTML* still calls canDHTML* as it was changed in r17504, where canDHTML* now calls !selectionController::isInPasswordField instead of editor::canCopy
   61161         Anything else in r17503 that used to call mayCopy now calls (!)selectionController::isInPasswordField.
   61162 
   61163         * editing/JSEditor.cpp:
   61164         copy via JS should be enabled as long as selection is not in a password field.  a range selection shouldn't be required. 
   61165 
   61166 2007-01-24  Adele Peterson  <adele (a] apple.com>
   61167 
   61168         Reviewed by Brady and Oliver.
   61169 
   61170         Fix for <rdar://problem/4953504> When the keydown event changes focus, the keypress event should go to the new focused node
   61171 
   61172         Test: fast/events/keydown-keypress-focus-change.html
   61173 
   61174         * page/EventHandler.cpp:
   61175         (WebCore::eventTargetNodeForDocument): Added for convenience.
   61176         (WebCore::EventHandler::keyEvent): Moved from EventHandlerMac.mm.  After dispatching the keyDown event,
   61177          recheck the target node for the keyPress event in case its changed.
   61178         * page/EventHandler.h:
   61179         * page/mac/EventHandlerMac.mm: (WebCore::EventHandler::keyEvent):
   61180           Moved the bulk of this code to EventHandler.cpp.
   61181 
   61182 2007-01-24  Geoffrey Garen  <ggaren (a] apple.com>
   61183 
   61184         New forwarding header. No review necessary.
   61185 
   61186         * ForwardingHeaders/kjs/ustring.h: Added.
   61187 
   61188 2007-01-24  Oliver Hunt  <oliver (a] apple.com>
   61189 
   61190         Reviewed by Maciej.
   61191 
   61192         Migrating more drag state information to WebCore
   61193 
   61194         * page/DragController.cpp:
   61195         * page/DragController.h:
   61196         (WebCore::DragController::dragOperation):
   61197         (WebCore::DragController::setDraggingImageURL):
   61198         (WebCore::DragController::draggingImageURL):
   61199         (WebCore::DragController::setDragOffset):
   61200         (WebCore::DragController::dragOffset):
   61201 
   61202 2007-01-24  Darin Adler  <darin (a] apple.com>
   61203 
   61204         Reviewed by Adele.
   61205 
   61206         - fix http://bugs.webkit.org/show_bug.cgi?id=12331
   61207           REGRESSION(r18951): Selecting text in a textarea makes the page scroll
   61208 
   61209         Test: fast/events/autoscroll.html
   61210 
   61211         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::autoscroll):
   61212         Adjust position to be relative to the object's corner for the hit test, but not for the
   61213         scrollRectToVisible call. The previous version accidentally re-used the version that was
   61214         adjusted for the hit test.
   61215 
   61216 2007-01-24  Beth Dakin  <bdakin (a] apple.com>
   61217 
   61218         Reviewed by Geoff.
   61219 
   61220         Fix for <rdar://problem/4948128> REGRESSION: A crash occurs at 
   61221         WebCore::Frame::view() after completing a query at mapquest.com 
   61222         then switching to Bookmarks view
   61223 
   61224         This is just a null-check. If you are in strict mode and ask for 
   61225         the clientWidth or clientHeight after the document was removed from 
   61226         it's parent, we no longer have a frameView, so we have to null-
   61227         check it. I added null checks for the FrameView in some other 
   61228         places where it seems like we could potentially run into this 
   61229         issue.
   61230 
   61231         * bindings/objc/DOMHTML.mm:
   61232         (-[DOMHTMLInputElement _rectOnScreen]):
   61233         * bridge/mac/WebCoreAXObject.mm:
   61234         (-[WebCoreAXObject accessibilityAttributeValue:]):
   61235         * dom/ContainerNode.cpp:
   61236         (WebCore::ContainerNode::getUpperLeftCorner):
   61237         * dom/Element.cpp:
   61238         (WebCore::Element::clientWidth): Actual bug fix here!
   61239         (WebCore::Element::clientHeight): And here!
   61240         * ksvg2/svg/SVGLength.cpp:
   61241         (WebCore::SVGLength::PercentageOfViewport):
   61242         * loader/FrameLoader.cpp:
   61243         (WebCore::FrameLoader::createJavaAppletWidget):
   61244         * page/mac/WebCoreFrameBridge.mm:
   61245         (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
   61246         * rendering/RenderLayer.cpp:
   61247         (WebCore::RenderLayer::windowClipRect):
   61248         (WebCore::RenderLayer::updateOverflowStatus):
   61249         (WebCore::frameVisibleRect):
   61250         * rendering/RenderListBox.cpp:
   61251         (WebCore::RenderListBox::windowClipRect):
   61252         * rendering/RenderTable.cpp:
   61253         (WebCore::RenderTable::layout):
   61254 
   61255 2007-01-24  Maciej Stachowiak  <mjs (a] apple.com>
   61256 
   61257         Not reviewed, just removing accidentally committed file.
   61258 
   61259         - removed file that shouldn't be there
   61260 
   61261         * Image Viewer/Image Viewer.aps: Removed.
   61262 
   61263 2007-01-24  Anders Carlsson  <acarlsson (a] apple.com>
   61264 
   61265         Reviewed by Geoff and Adam.
   61266 
   61267         <rdar://problem/4922655>
   61268         http://galeri.milliyet.com.tr/ reproducibly crashes Safari
   61269         
   61270         * loader/FrameLoader.cpp:
   61271         (WebCore::FrameLoader::requestFrame):
   61272         If the frame already exists, defer the navigation so that we won't end up replacing the document
   61273         while we're parsing it. This is similar to what setting window.location ends up doing.
   61274 
   61275 2007-01-25  Mark Rowe  <mrowe (a] apple.com>
   61276 
   61277         Reviewed by Darin.
   61278 
   61279         * Info.plist: Update copyright string.
   61280 
   61281 2007-01-24  Justin Garcia  <justin.garcia (a] apple.com>
   61282 
   61283         Reviewed by harrison
   61284 
   61285         <rdar://problem/4916235>
   61286         eBay Editor: Crash occurs at WebCore::Range::startPosition() after applying ordered list styling to selected text
   61287         <rdar://problem/4857269>
   61288         REGRESSION: editing/execCommand/create-list-from-range-selection.html no longer works as intended
   61289         <rdar://problem/4916583>
   61290         eBay Editor: Removing a indent from a list item actually deletes the list item instead
   61291         <rdar://problem/4928635>
   61292         designMode outdent causes crash (11750)
   61293 
   61294         * editing/CompositeEditCommand.cpp:
   61295         (WebCore::CompositeEditCommand::moveParagraphs): Fixed br insertion
   61296         after the pruning of empty containers left over after the paragraph
   61297         to move is removed.
   61298         * editing/DeleteSelectionCommand.cpp:
   61299         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): There are
   61300         bugs that leave the wrong number of line breaks after a deletion 
   61301         that expands to include special elements (lists/tables).  Added 
   61302         a workaround so that moveParagraphs can avoid these until they 
   61303         are fixed.
   61304         (WebCore::DeleteSelectionCommand::initializeStartEnd): Ditto.
   61305         (WebCore::DeleteSelectionCommand::initializePositionData): Ditto.
   61306         * editing/DeleteSelectionCommand.h:
   61307         * editing/TextIterator.cpp:
   61308         (WebCore::TextIterator::advance): We used to not call exitNode for
   61309         ancestors of a node where the next node in a pre-order traversal is 
   61310         the ranges's pastEndNode().  This is only correct for ancestors that
   61311         contain the end of the range.
   61312         (WebCore::shouldEmitNewlineAfterNode): Added, we should only emit newlines
   61313         after blocks that have VisiblePositions after them.  VisiblePosition creation
   61314         though is too expensive to do here, what I added here is an OK substitute.
   61315         (WebCore::shouldEmitNewlineBeforeNode): Added.  No special logic yet.
   61316         (WebCore::TextIterator::handleNonTextNode): Call shouldEmitNewlineBeforeNode.
   61317         (WebCore::TextIterator::exitNode): Call shouldEmitNewlineAfterNode.
   61318         (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode): Call
   61319         shouldEmitNewlineAfterNode.
   61320 
   61321 2007-01-24  Darin Adler  <darin (a] apple.com>
   61322 
   61323         Reviewed by Mark Rowe.
   61324 
   61325         * WebCore.xcodeproj/project.pbxproj: Changed to /usr/sbin/sysctl
   61326         so we don't rely on people's paths.
   61327 
   61328 2007-01-24  Darin Adler  <darin (a] apple.com>
   61329 
   61330         Reviewed by Adele.
   61331 
   61332         - a couple minor tweaks to recently-changed things
   61333 
   61334         * dom/Document.h: Use HTMLHeadElement as type for the head function.
   61335         * dom/Document.cpp: (WebCore::Document::head):
   61336 
   61337         * ksvg2/svg/SVGElementInstance.cpp:
   61338         (WebCore::SVGElementInstance::~SVGElementInstance): Change loop to
   61339         a for loop and use a local variable for document.
   61340 
   61341 2007-01-24  Oliver Hunt  <oliver (a] apple.com>
   61342 
   61343         Reviewed by Adele.
   61344 
   61345         Fixes DragController to allow a null target Document.
   61346         This is encountered in new tabs/windows that have not 
   61347         loaded any page
   61348 
   61349         * page/DragController.cpp:
   61350         (WebCore::documentAtPoint):
   61351         (WebCore::DragController::tryDocumentDrag):
   61352         (WebCore::DragController::operationForLoad):
   61353         (WebCore::DragController::concludeDrag):
   61354         * page/mac/DragControllerMac.mm:
   61355         (WebCore::DragController::dragOperation):
   61356 
   61357 2007-01-24  Sam Weinig  <sam (a] webkit.org>
   61358 
   61359         Reviewed by Mitz.
   61360 
   61361         Patch for http://bugs.webkit.org/show_bug.cgi?id=12394
   61362         Cleanup RenderBox
   61363 
   61364         No functionality changes, just a good old fashion cleanup,
   61365         thus no tests.
   61366 
   61367         * rendering/RenderBox.cpp:
   61368         (WebCore::RenderBox::RenderBox):
   61369         (WebCore::RenderBox::setStyle):
   61370         (WebCore::RenderBox::destroy):
   61371         (WebCore::RenderBox::setPos):
   61372         (WebCore::RenderBox::calcBorderBoxWidth):
   61373         (WebCore::RenderBox::calcBorderBoxHeight):
   61374         (WebCore::RenderBox::calcContentBoxWidth):
   61375         (WebCore::RenderBox::calcContentBoxHeight):
   61376         (WebCore::RenderBox::nodeAtPoint):
   61377         (WebCore::RenderBox::paintRootBoxDecorations):
   61378         (WebCore::RenderBox::paintBoxDecorations):
   61379         (WebCore::RenderBox::paintBackgrounds):
   61380         (WebCore::RenderBox::paintBackground):
   61381         (WebCore::cacluateBackgroundSize):
   61382         (WebCore::RenderBox::paintBackgroundExtended):
   61383         (WebCore::RenderBox::getOverflowClipRect):
   61384         (WebCore::RenderBox::getClipRect):
   61385         (WebCore::RenderBox::containingBlockWidth):
   61386         (WebCore::RenderBox::absolutePosition):
   61387         (WebCore::RenderBox::dirtyLineBoxes):
   61388         (WebCore::RenderBox::position):
   61389         (WebCore::RenderBox::getAbsoluteRepaintRect):
   61390         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   61391         (WebCore::RenderBox::repaintDuringLayoutIfMoved):
   61392         (WebCore::RenderBox::relativePositionOffsetX):
   61393         (WebCore::RenderBox::relativePositionOffsetY):
   61394         (WebCore::RenderBox::calcWidth):
   61395         (WebCore::RenderBox::calcWidthUsing):
   61396         (WebCore::RenderBox::sizesToIntrinsicWidth):
   61397         (WebCore::RenderBox::calcHorizontalMargins):
   61398         (WebCore::RenderBox::calcHeight):
   61399         (WebCore::RenderBox::calcPercentageHeight):
   61400         (WebCore::RenderBox::calcReplacedWidthUsing):
   61401         (WebCore::RenderBox::calcReplacedHeightUsing):
   61402         (WebCore::RenderBox::availableHeightUsing):
   61403         (WebCore::RenderBox::calcVerticalMargins):
   61404         (WebCore::RenderBox::containingBlockWidthForPositioned):
   61405         (WebCore::RenderBox::calcAbsoluteHorizontal):
   61406         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
   61407         (WebCore::RenderBox::calcAbsoluteVertical):
   61408         (WebCore::RenderBox::calcAbsoluteVerticalValues):
   61409         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
   61410         (WebCore::RenderBox::caretRect):
   61411         * rendering/RenderBox.h:
   61412         (WebCore::RenderBox::setOverrideSize):
   61413         (WebCore::RenderBox::width):
   61414         (WebCore::RenderBox::height):
   61415         (WebCore::RenderBox::setWidth):
   61416         (WebCore::RenderBox::setHeight):
   61417         (WebCore::RenderBox::inlineBoxWrapper):
   61418         (WebCore::RenderBox::setInlineBoxWrapper):
   61419         (WebCore::RenderBox::stretchesToViewHeight):
   61420         (WebCore::RenderBox::setStaticX):
   61421         (WebCore::RenderBox::setStaticY):
   61422 
   61423 2007-01-24  Eric Seidel  <eric (a] webkit.org>
   61424 
   61425         Reviewed by ap.
   61426 
   61427         Converted SVGTransform from being Shared<T> to a POD type.
   61428 
   61429         No functional changes, thus no tests.
   61430 
   61431         * bindings/scripts/CodeGenerator.pm:
   61432         * bindings/scripts/CodeGeneratorJS.pm:
   61433         * ksvg2/misc/SVGTimer.cpp:
   61434         (WebCore::baseValueTransformList):
   61435         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   61436         (WebCore::SVGAnimateTransformElement::storeInitialValue):
   61437         (WebCore::SVGAnimateTransformElement::resetValues):
   61438         (WebCore::SVGAnimateTransformElement::updateCurrentValue):
   61439         (WebCore::SVGAnimateTransformElement::handleStartCondition):
   61440         (WebCore::SVGAnimateTransformElement::applyAnimationToValue):
   61441         (WebCore::SVGAnimateTransformElement::parseTransformValue):
   61442         * ksvg2/svg/SVGAnimateTransformElement.h:
   61443         * ksvg2/svg/SVGLinearGradientElement.cpp:
   61444         (WebCore::SVGLinearGradientElement::collectGradientProperties):
   61445         * ksvg2/svg/SVGPatternElement.cpp:
   61446         (WebCore::SVGPatternElement::collectPatternProperties):
   61447         * ksvg2/svg/SVGRadialGradientElement.cpp:
   61448         (WebCore::SVGRadialGradientElement::collectGradientProperties):
   61449         * ksvg2/svg/SVGSVGElement.cpp:
   61450         (WebCore::SVGSVGElement::createSVGTransform):
   61451         (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
   61452         * ksvg2/svg/SVGSVGElement.h:
   61453         * ksvg2/svg/SVGStyledTransformableElement.cpp:
   61454         (WebCore::SVGStyledTransformableElement::updateLocalTransform):
   61455         * ksvg2/svg/SVGTextElement.cpp:
   61456         (WebCore::SVGTextElement::updateLocalTransform):
   61457         * ksvg2/svg/SVGTransform.cpp:
   61458         (SVGTransform::SVGTransform):
   61459         (SVGTransform::isValid):
   61460         * ksvg2/svg/SVGTransform.h:
   61461         * ksvg2/svg/SVGTransform.idl:
   61462         * ksvg2/svg/SVGTransformList.cpp:
   61463         (SVGTransformList::SVGTransformList):
   61464         (SVGTransformList::createSVGTransformFromMatrix):
   61465         (SVGTransformList::consolidate):
   61466         (SVGTransformList::concatenate):
   61467         * ksvg2/svg/SVGTransformList.h:
   61468         * ksvg2/svg/SVGTransformable.cpp:
   61469         (WebCore::SVGTransformable::parseTransformAttribute):
   61470 
   61471 2007-01-24  Mark Rowe  <mrowe (a] apple.com>
   61472 
   61473         Reviewed by Eric.
   61474 
   61475         Plug another bunch of SVG memory leaks.
   61476 
   61477         * ksvg2/misc/SVGDocumentExtensions.cpp:
   61478         (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions): Delete memory we have allocated.
   61479         (WebCore::SVGDocumentExtensions::removePendingResource): Return an auto_ptr to show that we are transferring ownership.
   61480         * ksvg2/misc/SVGDocumentExtensions.h:
   61481         * ksvg2/svg/SVGElement.cpp:
   61482         (WebCore::SVGElement::insertedIntoDocument): Update for use of auto_ptr.
   61483 
   61484 2007-01-23  Mark Rowe  <mrowe (a] apple.com>
   61485 
   61486         Reviewed by Brady.
   61487 
   61488         Plug thousands of node leaks seen running layout tests.
   61489 
   61490         * ksvg2/svg/SVGElementInstance.cpp:
   61491         (WebCore::SVGElementInstance::~SVGElementInstance): Disassociate ourselves from our children so they will
   61492         be destroyed if we were the only thing referencing them.
   61493         * ksvg2/svg/SVGUseElement.cpp:
   61494         (WebCore::SVGUseElement::removedFromDocument):
   61495         * ksvg2/svg/SVGUseElement.h:
   61496 
   61497 2007-01-23  Alice Liu  <alice.liu (a] apple.com>
   61498 
   61499         Reviewed by Brady.
   61500 
   61501         * editing/Editor.cpp:
   61502         (WebCore::Editor::appliedEditing):
   61503         minor change.  removing unnecessary call to frame to fetch editor
   61504 
   61505 2007-01-23  Mark Rowe  <mrowe (a] apple.com>
   61506 
   61507         Reviewed by Adele.
   61508 
   61509         http://bugs.webkit.org/show_bug.cgi?id=12375
   61510         Bug 12375: REGRESSION(r19038): fast/dom/title-text-property-2.html failing
   61511 
   61512         Fix regression by making setTitle/updateTitle/removeTitle logic match document.title
   61513         specification at http://whatwg.org/specs/web-apps/current-work/#the-title1.
   61514 
   61515         * dom/Document.cpp:
   61516         (WebCore::Document::setTitle): Materialize a title element into the head if one doesn't exist when setting
   61517         document.title.  Also update the contents of the title element when the title is set via document.title.
   61518         (WebCore::Document::removeTitle): Update the title based on first title element in the head, if one exists.
   61519         (WebCore::Document::head): Convenience method to retrieve the head element in an HTML document.
   61520         * dom/Document.h:
   61521 
   61522 2007-01-23  Beth Dakin  <bdakin (a] apple.com>
   61523 
   61524         Reviewed by Hyatt.
   61525 
   61526         Follow-up to the fix below for 4843226.
   61527 
   61528         * rendering/RenderLayer.cpp:
   61529         (WebCore::transparencyClipBox): Has to be recursive or we will miss 
   61530         out on grandchildren!
   61531 
   61532 2007-01-23  Oliver Hunt  <oliver (a] apple.com>
   61533 
   61534         Reviewed by Adam.
   61535 
   61536         Fixes dropping of files into safari
   61537 
   61538         * page/DragController.cpp:
   61539         (WebCore::DragController::performDrag):
   61540 
   61541 2007-01-23  Brady Eidson  <beidson (a] apple.com>
   61542 
   61543         Reviewed by Darin
   61544 
   61545         Added a couple of CF things previously missed
   61546 
   61547         * platform/network/ResourceError.h:
   61548         * platform/network/ResourceHandle.h:
   61549 
   61550 2007-01-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   61551 
   61552         Reviewed by Maciej.
   61553 
   61554         Fix evil genericContext() assertion, which occours sometimes when running DRT.
   61555         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12379
   61556 
   61557         * bindings/scripts/CodeGeneratorJS.pm:
   61558         * ksvg2/misc/SVGDocumentExtensions.h:
   61559         (WebCore::SVGDocumentExtensions::genericContextMap):
   61560         (WebCore::SVGDocumentExtensions::forgetGenericContext):
   61561 
   61562 2007-01-23  Beth Dakin  <bdakin (a] apple.com>
   61563 
   61564         Reviewed by Hyatt.
   61565 
   61566         Fix for <rdar://problem/4843226> REGRESSION: Pull down menu appears 
   61567         clipped at http://istweb.apple.com/
   61568 
   61569         * rendering/RenderLayer.cpp:
   61570         (WebCore::transparencyClipBox): Always unite with sibling rects.
   61571 
   61572 2007-01-22  Justin Garcia  <justin.garcia (a] apple.com>
   61573 
   61574         Reviewed by john
   61575 
   61576         <rdar://problem/4920742>
   61577         REGRESSION: GMail Editor: Attempting to remove formatting from selection results in a crash at WebCore::Range::checkDeleteExtract()
   61578 
   61579         * dom/Range.cpp:
   61580         (WebCore::Range::checkDeleteExtract): Return if there is no
   61581         commonAncestor container or if commonAncestorContainer() throws
   61582         an exception.
   61583         * editing/Editor.cpp:
   61584         (WebCore::Editor::removeFormattingAndStyle): Fixed a bug that reversed
   61585         the order of the selected paragraphs.
   61586 
   61587 2007-01-23  Nikolas Zimmermann  <zimmermann (a] kde.org>
   61588 
   61589         Reviewed by Sam.
   61590 
   61591         Fix dynamic creation/updates of markers, masks, clipPaths, and several tiny pattern issues.
   61592         Added 16 (!) new layout tests covering quite some weird scenerios - Batik & Opera do have problems, we don't.
   61593 
   61594         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12380
   61595         Fixes: svg/custom/image-with-transform-clip-filter.svg (filter shows up again)
   61596 
   61597         Added: svg/custom/clip-path-child-changes.svg
   61598         Added: svg/custom/clip-path-href-changes.svg
   61599         Added: svg/custom/clip-path-units-changes.svg
   61600         Added: svg/custom/deep-dynamic-updates.svg
   61601         Added: svg/custom/js-late-clipPath-and-object-creation.svg
   61602         Added: svg/custom/js-late-clipPath-creation.svg
   61603         Added: svg/custom/js-late-marker-and-object-creation.svg
   61604         Added: svg/custom/js-late-marker-creation.svg
   61605         Added: svg/custom/js-late-mask-and-object-creation.svg
   61606         Added: svg/custom/js-late-mask-creation.svg
   61607         Added: svg/custom/js-update-pattern-child.svg
   61608         Added: svg/custom/marker-changes.svg
   61609         Added: svg/custom/marker-child-changes.svg
   61610         Added: svg/custom/marker-viewBox-changes.svg
   61611         Added: svg/custom/mask-changes.svg
   61612         Added: svg/custom/mask-child-changes.svg
   61613 
   61614         * ksvg2/misc/KCanvasRenderingStyle.cpp:
   61615         (WebCore::KSVGPainterFactory::fillPaintServer):
   61616         (WebCore::KSVGPainterFactory::strokePaintServer):
   61617         * ksvg2/svg/SVGClipPathElement.cpp:
   61618         (WebCore::SVGClipPathElement::notifyAttributeChange):
   61619         * ksvg2/svg/SVGClipPathElement.h:
   61620         * ksvg2/svg/SVGGradientElement.cpp:
   61621         * ksvg2/svg/SVGGradientElement.h:
   61622         * ksvg2/svg/SVGMarkerElement.cpp:
   61623         (WebCore::SVGMarkerElement::canvasResource):
   61624         (WebCore::SVGMarkerElement::notifyAttributeChange):
   61625         * ksvg2/svg/SVGMarkerElement.h:
   61626         * ksvg2/svg/SVGMaskElement.cpp:
   61627         (WebCore::SVGMaskElement::notifyAttributeChange):
   61628         * ksvg2/svg/SVGMaskElement.h:
   61629         * ksvg2/svg/SVGStopElement.cpp:
   61630         (WebCore::SVGStopElement::notifyAttributeChange):
   61631         * ksvg2/svg/SVGStyledElement.cpp:
   61632         (WebCore::SVGStyledElement::notifyAttributeChange):
   61633         (WebCore::SVGStyledElement::notifyResourceParentIfExistant):
   61634         (WebCore::SVGStyledElement::rebuildRenderer):
   61635         * ksvg2/svg/SVGStyledElement.h:
   61636         * ksvg2/svg/SVGUseElement.cpp:
   61637         (WebCore::SVGUseElement::notifyAttributeChange):
   61638         * platform/graphics/svg/SVGResource.cpp:
   61639         (WebCore::SVGResource::invalidate):
   61640         (WebCore::SVGResource::addClient):
   61641         (WebCore::SVGResource::repaintClients):
   61642         * platform/graphics/svg/SVGResource.h:
   61643         * platform/graphics/svg/SVGResourceMarker.cpp:
   61644         (WebCore::SVGResourceMarker::draw):
   61645         (WebCore::SVGResourceMarker::cachedBounds):
   61646         * platform/graphics/svg/SVGResourceMarker.h:
   61647         * rendering/RenderPath.cpp:
   61648         (WebCore::RenderPath::layout):
   61649         (WebCore::RenderPath::getAbsoluteRepaintRect):
   61650         (WebCore::RenderPath::paint):
   61651         (WebCore::drawMarkerWithData):
   61652         (WebCore::RenderPath::drawMarkersIfNeeded):
   61653         * rendering/RenderPath.h:
   61654         * rendering/RenderSVGContainer.cpp:
   61655         (WebCore::RenderSVGContainer::paint):
   61656         (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
   61657         * rendering/RenderSVGImage.cpp:
   61658         (WebCore::RenderSVGImage::paint):
   61659         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
   61660         * rendering/SVGInlineFlowBox.cpp:
   61661         (WebCore::paintSVGInlineFlow):
   61662 
   61663 2007-01-23  Adele Peterson  <adele (a] apple.com>
   61664 
   61665         Reviewed by Darin.
   61666         
   61667         WebCore part of fix for <rdar://problem/4946753>REGRESSION: Inserting tabs is broken in Mail
   61668 
   61669         In addition to this fix, I also reorganized some event handling code for keyPress events to
   61670         prepare for another fix.  There's also just a little bit of unrelated cleanup.
   61671         
   61672         * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::defaultEventHandler):
   61673           Move tab focus behavior into new defaultKeyboardEventHandler method.
   61674         
   61675         * bridge/EditorClient.h: Added handleKeyPress.
   61676         * editing/Editor.cpp:
   61677         (WebCore::Editor::handleKeyPress): Added. Calls over to the client method.
   61678         (WebCore::Editor::deleteRange): Removed unnecessary propogateDOMException.
   61679         * editing/Editor.h: Added handleKeyPress.
   61680         (WebCore::Editor::addToKillRing): Formatting cleanup.
   61681         * editing/mac/EditorMac.mm: Removed unnecessary propogateDOMException.
   61682         
   61683         * page/EventHandler.cpp: (WebCore::EventHandler::defaultKeyboardEventHandler): Added. Checks
   61684           the tabKeyCyclesThroughElements setting before advancing focus for tab key events.  Calls handleKeyPress.
   61685         * page/EventHandler.h: Added defaultKeyboardEventHandler.
   61686         
   61687         * page/Page.cpp: (WebCore::Page::Page): Initialize m_tabKeyCyclesThroughElements to true.
   61688         * page/Page.h: Added m_tabKeyCyclesThroughElements.
   61689         (WebCore::Page::setTabKeyCyclesThroughElements): Added.
   61690         (WebCore::Page::tabKeyCyclesThroughElements): Added.
   61691         
   61692         * platform/PlatformKeyboardEvent.h: Added ability to get NSEvent from PlatformKeyboardEvent.
   61693         * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
   61694           Initialize m_macEvent to the NSEvent.
   61695         
   61696         * platform/graphics/svg/SVGImageEmptyClients.h: (WebCore::SVGEmptyEditorClient::handleKeyPress): Added.
   61697 
   61698 2007-01-23  George Staikos  <staikos (a] kde.org>
   61699 
   61700         Compile with a released Qt.
   61701 
   61702         * platform/graphics/qt/ImageQt.cpp:
   61703 
   61704 2007-01-23  Lars Knoll <lars (a] trolltech.com>
   61705 
   61706         Reviewed by Zack
   61707 
   61708         Widget and ScrollView do not own the Qt widgets
   61709         anymore. Make sure they can handle the case of
   61710         a null QWidget and never delete them.
   61711 
   61712         * platform/qt/ScrollViewQt.cpp:
   61713         (WebCore::ScrollView::setScrollArea):
   61714         (WebCore::ScrollView::updateContents):
   61715         (WebCore::ScrollView::visibleWidth):
   61716         (WebCore::ScrollView::visibleHeight):
   61717         (WebCore::ScrollView::visibleContentRect):
   61718         (WebCore::ScrollView::setContentsPos):
   61719         (WebCore::ScrollView::resizeContents):
   61720         (WebCore::ScrollView::contentsX):
   61721         (WebCore::ScrollView::contentsY):
   61722         (WebCore::ScrollView::contentsWidth):
   61723         (WebCore::ScrollView::contentsHeight):
   61724         (WebCore::ScrollView::scrollOffset):
   61725         (WebCore::ScrollView::scrollBy):
   61726         (WebCore::ScrollView::hScrollbarMode):
   61727         (WebCore::ScrollView::vScrollbarMode):
   61728         (WebCore::ScrollView::setHScrollbarMode):
   61729         (WebCore::ScrollView::setVScrollbarMode):
   61730         * platform/qt/WidgetQt.cpp:
   61731         (WebCore::WidgetPrivate::~WidgetPrivate):
   61732         (WebCore::Widget::setQWidget):
   61733 
   61734 2007-01-23  Zack Rusin  <zack (a] kde.org>
   61735 
   61736         Forgot to add one new file to the build.
   61737 
   61738         * WebCore.pro: Add dom/clipboard.cpp
   61739 
   61740 2007-01-23  Zack Rusin  <zack (a] kde.org>
   61741 
   61742         Fix the Qt build
   61743 
   61744         * page/DragActions.h:
   61745         * page/DragController.cpp:
   61746         * platform/qt/DragDataQt.cpp:
   61747         (WebCore::DragData::canSmartReplace):
   61748         (WebCore::DragData::containsColor):
   61749         (WebCore::DragData::containsPlainText):
   61750         (WebCore::DragData::asPlainText):
   61751         (WebCore::DragData::asColor):
   61752         (WebCore::DragData::createClipboard):
   61753         (WebCore::DragData::containsCompatibleContent):
   61754         (WebCore::DragData::containsURL):
   61755         (WebCore::DragData::asURL):
   61756         (WebCore::DragData::asFragment):
   61757         * platform/qt/FileChooserQt.cpp:
   61758 
   61759 2007-01-23  Lars Knoll <lars (a] trolltech.com>
   61760 
   61761         Reviewed by Maciej
   61762 
   61763         Make the last remaining pieces of the FrameLoader platform 
   61764         independent. Move most of the code over to WebFrameLoaderClient.
   61765         Some smaller cleanups in the WebFrameBridge, and moved some
   61766         platform independent functionality over to the shared code
   61767         in WebCore.
   61768         
   61769         * WebCore.exp:
   61770         * WebCore.pro:
   61771         * WebCore.xcodeproj/project.pbxproj:
   61772         * loader/FrameLoader.cpp:
   61773         (WebCore::FrameLoader::loadSubframe):
   61774         (WebCore::FrameLoader::shouldUsePlugin):
   61775         (WebCore::FrameLoader::loadPlugin):
   61776         (WebCore::FrameLoader::detachFromParent):
   61777         (WebCore::FrameLoader::partClearedInBegin):
   61778         (WebCore::FrameLoader::createJavaAppletWidget):
   61779         (WebCore::FrameLoader::didChangeTitle):
   61780         * loader/FrameLoader.h:
   61781         * loader/FrameLoaderClient.h:
   61782         * loader/FrameLoaderTypes.h:
   61783         (WebCore::):
   61784         * loader/PluginDocument.cpp:
   61785         (WebCore::PluginTokenizer::writeRawData):
   61786         * loader/mac/FrameLoaderMac.mm: Removed.
   61787         * loader/qt/FrameLoaderQt.cpp: Removed.
   61788         * page/Frame.cpp:
   61789         (WebCore::Frame::Frame):
   61790         * page/FrameView.cpp:
   61791         (WebCore::FrameView::mediaType):
   61792         * page/qt/FrameQt.cpp:
   61793         (WebCore::FrameQt::FrameQt):
   61794         * platform/graphics/svg/SVGImageEmptyClients.h:
   61795         (WebCore::SVGEmptyFrameLoaderClient::makeRepresentation):
   61796         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
   61797         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCommitLoad):
   61798         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFailLoad):
   61799         (WebCore::SVGEmptyFrameLoaderClient::dispatchCreatePage):
   61800         (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
   61801         (WebCore::SVGEmptyFrameLoaderClient::dispatchUnableToImplementPolicy):
   61802         (WebCore::SVGEmptyFrameLoaderClient::revertToProvisionalState):
   61803         (WebCore::SVGEmptyFrameLoaderClient::setMainDocumentError):
   61804         (WebCore::SVGEmptyFrameLoaderClient::startDownload):
   61805         (WebCore::SVGEmptyFrameLoaderClient::committedLoad):
   61806         (WebCore::SVGEmptyFrameLoaderClient::shouldFallBack):
   61807         (WebCore::SVGEmptyFrameLoaderClient::willUseArchive):
   61808         (WebCore::SVGEmptyFrameLoaderClient::createDocumentLoader):
   61809         (WebCore::SVGEmptyFrameLoaderClient::createFrame):
   61810         (WebCore::SVGEmptyFrameLoaderClient::createPlugin):
   61811         (WebCore::SVGEmptyFrameLoaderClient::createJavaAppletWidget):
   61812         (WebCore::SVGEmptyFrameLoaderClient::objectContentType):
   61813         (WebCore::SVGEmptyFrameLoaderClient::overrideMediaType):
   61814         (WebCore::SVGEmptyFrameLoaderClient::redirectDataToPlugin):
   61815         (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
   61816 
   61817 2007-01-23  Oliver Hunt  <oliver (a] apple.com>
   61818 
   61819         Reviewed by Adam.
   61820 
   61821         Added DragController to handled drag and drop state and control logic.
   61822         Currently this only handles logic for Dragging and Dropping, and is 
   61823         unable to initialise a drag itself.
   61824 
   61825         platform/DragData encapsulate the paltform Drag data (NSDraggingInfo on Mac, 
   61826         QMimeType in Qt).  This provides methods to pull data out the drag data as a String, 
   61827         a URL, a DocumentFragment (for rich content), or a Colour.
   61828 
   61829         * WebCore.exp:
   61830         * WebCore.pro:
   61831         * WebCore.xcodeproj/project.pbxproj:
   61832         * dom/Clipboard.cpp: Added.
   61833         (WebCore::Clipboard::setAccessPolicy):
   61834         (WebCore::dragOpFromIEOp):
   61835         (WebCore::IEOpFromDragOp):
   61836         (WebCore::Clipboard::sourceOperation):
   61837         (WebCore::Clipboard::destinationOperation):
   61838         (WebCore::Clipboard::setSourceOperation):
   61839         (WebCore::Clipboard::setDestinationOperation):
   61840         (WebCore::Clipboard::setDropEffect):
   61841         (WebCore::Clipboard::setEffectAllowed):
   61842           move platform independent functions from ClipboardMac to Clipboard
   61843 
   61844         * dom/Clipboard.h:
   61845         (WebCore::Clipboard::Clipboard):
   61846         (WebCore::Clipboard::dropEffect):
   61847         (WebCore::Clipboard::effectAllowed):
   61848         (WebCore::Clipboard::policy):
   61849           as above -- also removed virtual modifier from now 
   61850           platform independent methods
   61851 
   61852         * editing/Editor.cpp:
   61853         (WebCore::Editor::smartInsertDeleteEnabled): 
   61854         (WebCore::Editor::shouldApplyStyle):
   61855         * editing/Editor.h:
   61856           adding calls through to EditorClient
   61857          
   61858         * page/DragActions.h: Added.
   61859         (WebCore::):
   61860           Replicates a number of NS* enums in the WebCore namespace
   61861 
   61862         * page/DragClient.h: Added.
   61863         (WebCore::DragClient::~DragClient):
   61864           Standard client interface for dragging UIDelegate
   61865 
   61866         * page/DragController.cpp: Added.
   61867         (WebCore::createMouseEvent):
   61868         (WebCore::DragController::DragController):
   61869         (WebCore::DragController::~DragController):
   61870         (WebCore::documentFragmentFromDragData):
   61871         (WebCore::DragController::isMoveDrag):
   61872         (WebCore::visiblePositionForPoint):
   61873         (WebCore::DragController::cancelDrag):
   61874         (WebCore::documentAtPoint):
   61875         (WebCore::DragController::dragEntered):
   61876         (WebCore::DragController::dragExited):
   61877         (WebCore::DragController::dragUpdated):
   61878         (WebCore::DragController::performDrag):
   61879         (WebCore::DragController::dragEnteredOrUpdated):
   61880         (WebCore::DragController::tryDocumentDrag):
   61881         (WebCore::DragController::operationForLoad):
   61882         (WebCore::DragController::concludeDrag):
   61883         (WebCore::DragController::canProcessDrag):
   61884         (WebCore::DragController::tryDHTMLDrag):
   61885           Class to handle state and logic for dragging and dropping
   61886 
   61887         * page/DragController.h: Added.
   61888         (WebCore::DragController::client):
   61889         (WebCore::DragController::didInitiateDrag):
   61890         (WebCore::DragController::isHandlingDrag):
   61891         (WebCore::DragController::dragOperation):
   61892         (WebCore::DragController::document):
   61893         (WebCore::DragController::dragInitiator):
   61894         (WebCore::DragController::dragDestinationAction):
   61895         (WebCore::DragController::dragSourceAction):
   61896         (WebCore::DragController::dragEnded):
   61897         (WebCore::DragController::setIsHandlingDrag):
   61898         (WebCore::DragController::setDidInitiateDrag):
   61899         (WebCore::DragController::setDragOperation):
   61900         (WebCore::DragController::setDragSourceAction):
   61901         (WebCore::DragController::setDragInitiator):
   61902           See above
   61903 
   61904         * page/Page.cpp:
   61905         (WebCore::Page::Page):
   61906           Update Page to have DragController
   61907 
   61908         * page/Page.h:
   61909         (WebCore::Page::dragController):
   61910           ditto
   61911 
   61912         * page/mac/DragControllerMac.mm: Added.
   61913         (WebCore::DragController::isCopyKeyDown):
   61914         (WebCore::DragController::dragOperation):
   61915           Platform specific portions of the DragController
   61916 
   61917         * page/mac/EventHandlerMac.mm:
   61918         (WebCore::EventHandler::handleDrag):
   61919         (WebCore::EventHandler::dragSourceEndedAt):
   61920           Convert from NSDragOperation to WebCore::DragOperation
   61921 
   61922         * page/mac/WebCoreFrameBridge.h:
   61923         * page/mac/WebCoreFrameBridge.mm:
   61924           Remove obsolete Drag functions
   61925 
   61926         * page/qt/DragControllerQt.cpp: Added.
   61927         (WebCore::DragController::isCopyKeyDown):
   61928         (WebCore::DragController::dragOperation):
   61929           Basic stubs to maintain Qt  build
   61930 
   61931         * platform/DragData.cpp: Added.
   61932         (WebCore::DragData::DragData):
   61933         * platform/DragData.h: Added.
   61934         (WebCore::DragData::clientPosition):
   61935         (WebCore::DragData::globalPosition):
   61936         (WebCore::DragData::platformData):
   61937         (WebCore::DragData::draggingSourceOperationMask):
   61938           DragData class to encapsulate platform drag data/event
   61939 
   61940         * platform/graphics/svg/SVGImage.cpp:
   61941         (WebCore::SVGImage::setData):
   61942           Addition of dummy DragClient
   61943 
   61944         * platform/graphics/svg/SVGImageEmptyClients.h:
   61945         (WebCore::SVGEmptyDragClient::~SVGEmptyDragClient):
   61946         (WebCore::SVGEmptyDragClient::willPerformDragDestinationAction):
   61947         (WebCore::SVGEmptyDragClient::actionMaskForDrag):
   61948         (WebCore::SVGEmptyDragClient::dragControllerDestroyed):
   61949           ditto
   61950 
   61951         * platform/mac/ClipboardMac.h:
   61952         * platform/mac/ClipboardMac.mm:
   61953         (WebCore::ClipboardMac::ClipboardMac):
   61954         (WebCore::ClipboardMac::clearData):
   61955         (WebCore::ClipboardMac::clearAllData):
   61956         (WebCore::ClipboardMac::getData):
   61957         (WebCore::ClipboardMac::setData):
   61958         (WebCore::ClipboardMac::types):
   61959         (WebCore::ClipboardMac::setDragImage):
   61960          Moving platform independent logic to Clipboard, and updating
   61961          platform specific methods to use appropriate accessors rather than 
   61962          directly manipulating data they no longer own
   61963 
   61964         * platform/mac/DragDataMac.mm: Added.
   61965         (WebCore::DragData::DragData):
   61966         (WebCore::DragData::canSmartReplace):
   61967         (WebCore::DragData::containsColor):
   61968         (WebCore::DragData::containsPlainText):
   61969         (WebCore::DragData::asPlainText):
   61970         (WebCore::DragData::asColor):
   61971         (WebCore::DragData::createClipboard):
   61972         (WebCore::imageExistsAtPaths):
   61973         (WebCore::DragData::containsCompatibleContent):
   61974         (WebCore::DragData::containsURL):
   61975         (WebCore::DragData::asURL):
   61976         (WebCore::DragData::asFragment):
   61977           Mac implementations of DragData methods.  A number of these use
   61978           a Helper class that accesses WebKit functionality.  That functionality 
   61979           should be migrated to WebCore in the future.
   61980 
   61981         * platform/mac/PasteboardHelper.h: Added.
   61982         (WebCore::PasteboardHelper::~PasteboardHelper):
   61983           Temporary, and Mac only, helper class to access WebKit functionality 
   61984           from WebCore
   61985 
   61986         * platform/qt/DragDataQt.cpp: Added.
   61987         (WebCore::DragData::canSmartReplace):
   61988         (WebCore::DragData::containsColor):
   61989         (WebCore::DragData::containsPlainText):
   61990         (WebCore::DragData::asPlainText):
   61991         (WebCore::DragData::asColor):
   61992         (WebCore::DragData::createClipboard):
   61993         (WebCore::DragData::containsCompatibleContent):
   61994         (WebCore::DragData::containsURL):
   61995         (WebCore::DragData::asURL):
   61996         (WebCore::DragData::asFragment):
   61997          Basic stubs to maintain Qt build
   61998 
   61999         * rendering/HitTestResult.cpp:
   62000         (WebCore::HitTestResult::HitTestResult):
   62001          Correct HitTestResult copy contructor to copy localPoint
   62002 
   62003 2007-01-22  Mark Rowe  <mrowe (a] apple.com>
   62004 
   62005         Reviewed by Maciej.
   62006 
   62007         http://bugs.webkit.org/show_bug.cgi?id=11692
   62008         Bug 11692: REGRESSION(r17352): Disappearing page title
   62009 
   62010         * dom/Document.cpp:
   62011         (WebCore::Document::setTitle): If the title has already been set explicitly via JavaScript,
   62012         ignore any changes to it due to encountering <title> tags.
   62013 
   62014 2007-01-22  Mitz Pettel  <mitz (a] webkit.org>
   62015 
   62016         Reviewed by Darin.
   62017 
   62018         - fix http://bugs.webkit.org/show_bug.cgi?id=12344
   62019           NativeListBox: item hit testing does not account for top padding and border
   62020 
   62021         Test: fast/forms/listbox-selection-2.html
   62022 
   62023         * rendering/RenderListBox.cpp:
   62024         (WebCore::RenderListBox::numVisibleItems): Changed height() to contentHeight()
   62025         since items are visible only in the content box.
   62026         (WebCore::RenderListBox::listIndexAtOffset): Adjusted for vertical padding and
   62027         borders. Changed to return -1 instead of the last item's index if the given offset
   62028         is below the last item.
   62029         (WebCore::RenderListBox::autoscroll): Adjusted for vertical padding and borders.
   62030         (WebCore::RenderListBox::controlClipRect): Changed to return the content box since
   62031         items should not spill into the padding box. This change is the reason the test
   62032         generates pixel results.
   62033 
   62034 2007-01-22  Justin Garcia  <justin.garcia (a] apple.com>
   62035 
   62036         Reviewed by darin
   62037         
   62038         <rdar://problem/4944770>
   62039         editing/pasteboard/4641033 layout test is broken (12328)
   62040         
   62041         This layout test failure demonstrates three bugs:
   62042         Smart replace shouldn't be turned on, but is because a word
   62043         selection granularity from the previous test isn't cleared.
   62044         Smart replace shouldn't add any spaces because the paste is performed
   62045         in an empty paragraph.
   62046         Smart replace spaces are added to the text of options inside
   62047         the select element instead of before/after the select element.
   62048         
   62049         This patch fixes the second two problems.  During a 
   62050         ReplaceSelectionCommand, the VisiblePosition for the end of 
   62051         the inserted content is the last position in the last leaf 
   62052         inserted.  This is a problem when the last leaf is inside a 
   62053         select element, since VP creation is inconsistent there.  
   62054         Second, smart spaces were inserted inside the last leaf, not
   62055         at the endOfInsertedContent.
   62056 
   62057         * editing/ReplaceSelectionCommand.cpp:
   62058         (WebCore::ReplaceSelectionCommand::shouldMergeStart): Renamed 
   62059         m_lastNodeInserted to m_lastLeafInserted.  Use the 
   62060         start/endOfInsertedContent getters.
   62061         (WebCore::ReplaceSelectionCommand::shouldMergeEnd): Ditto.
   62062         (WebCore::ReplaceSelectionCommand::removeNodePreservingChildren): Ditto.
   62063         (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Ditto.
   62064         (WebCore::ReplaceSelectionCommand::positionAtEndOfInsertedContent): Added.
   62065         Special case for when the last leaf inserted is inside a select 
   62066         element: return the VisiblePosition after the select element.
   62067         (WebCore::ReplaceSelectionCommand::positionAtStartOfInsertedContent): Added.
   62068         (WebCore::ReplaceSelectionCommand::doApply): Did renaming.  Used
   62069         the start/endOfInsertedContent getters.  Insert smart replace spaces
   62070         into the right nodes.
   62071         (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): Renaming.
   62072         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
   62073         (WebCore::ReplaceSelectionCommand::updateNodesInserted): Ditto.
   62074         * editing/ReplaceSelectionCommand.h:
   62075 
   62076 2007-01-22  Darin Adler  <darin (a] apple.com>
   62077 
   62078         Reviewed by Adam.
   62079 
   62080         - fix http://bugs.webkit.org/show_bug.cgi?id=12273
   62081           REGRESSION: File input value invisible after removing and re-appending
   62082 
   62083         - made more of the file chooser code cross-platform
   62084 
   62085         - fixed an Objective-C garbage collection problem in FileChooser
   62086 
   62087         - tried to remove layering violations where FileChooser in the platform
   62088           directory knows about the rendering and DOM trees (but wasn't able to
   62089           do it entirely)
   62090 
   62091         * platform/FileChooser.cpp: Added.
   62092         (WebCore::FileChooser::create): Changed parameters.
   62093         (WebCore::FileChooser::chooseFile): Changed to call chooseIcon function.
   62094         (WebCore::FileChooser::chooseIcon): Added.
   62095 
   62096         * platform/FileChooser.h: Added FileChooserClient so this file doesn't have
   62097         to know about RenderFileUploadControl. Used RetainPtr instead of retain/release
   62098         so this works properly with Objective-C GC. Replaced disconnectUploadControl
   62099         with disconnectClient, which has a simple inline implementation. Moved the
   62100         Document parameter from the constructor to openFileChooser, along with a comment
   62101         about why it should not be there. Added a filename parameter to the constructor
   62102         for the initial filename. Added a font parameter to basenameForWidth so we don't
   62103         depend on having a pointer to the renderer. Removed the uploadControl() and
   62104         document() functions since no one calls either of them.
   62105 
   62106         * platform/mac/FileChooserMac.mm: Removed code that is now cross-platform.
   62107         (-[OpenPanelController beginSheetWithFrame:]): Added frame parameter, instead
   62108         of storing a document pointer in the FileChooser.
   62109         (WebCore::FileChooser::FileChooser): Updated for changed parameters. Also added
   62110         code to choose the icon based on the initial filename. Pass the adopt parameter
   62111         to the constructor of the RetainPtr.
   62112         (WebCore::FileChooser::~FileChooser): Removed the release call, since the
   62113         RetainPtr will take care of it. Added a call to disconnectFileChooser here.
   62114         There's no need to disconnect at disconnectClient time, and that lets us have
   62115         one more cross-platform function.
   62116         (WebCore::FileChooser::openFileChooser): Added document parameter. Added code
   62117         to get the frame from the document. And added a nil check since there's no
   62118         ironclad guarantee the document won't have outlived its frame.
   62119         (WebCore::FileChooser::basenameForWidth): Added font parameter. Use that instead
   62120         of going at the upload control's style. The caller can handle that now.
   62121 
   62122         * rendering/RenderFileUploadControl.h: Removed unnecessary includes.
   62123         Made class inherit privately from FileChooserClient. Changed constructor
   62124         parameter to HTMLInputElement rather than Node. Made protected members be
   62125         private instead, and made a couple function members const.
   62126         * rendering/RenderFileUploadControl.cpp: Moved constants to the top of the file,
   62127         but after the "using namespace"
   62128         (WebCore::RenderFileUploadControl::RenderFileUploadControl): Updated for changes
   62129         to the FileChooser::create function and the parameter types.
   62130         (WebCore::RenderFileUploadControl::~RenderFileUploadControl): Removed unneeded
   62131         null check -- there's no case where the FileChooser fails to be created.
   62132         (WebCore::RenderFileUploadControl::click): Pass document to openFileChooser.
   62133         (WebCore::RenderFileUploadControl::updateFromElement): Tweaked code a bit by
   62134         using updateFromElement and setValue instead of casting the renderer to a
   62135         RenderButton and calling setText directly. Put setInputType call here.
   62136         (WebCore::RenderFileUploadControl::maxFilenameWidth): Made const. Broke long line.
   62137         (WebCore::RenderFileUploadControl::createButtonStyle): Made const.
   62138         (WebCore::RenderFileUploadControl::paintObject): Moved buttonShadowHeight constant
   62139         to the top of the file. Call isEmpty instead of checking width and height of
   62140         IntRect for 0. Computed font to pass to FileChooser::basenameForWidth. Broke
   62141         long lines.
   62142         (WebCore::HTMLFileUploadInnerButtonElement::HTMLFileUploadInnerButtonElement):
   62143         Moved the setInputType call to the caller; concept here is that this class is
   62144         as simple as possible, rather than doing as much of the button job as possible.
   62145 
   62146         * WebCore.xcodeproj/project.pbxproj: Added FileChooser.cpp.
   62147         * WebCore.pro: Ditto.
   62148         * CMakeLists.txt: Ditto.
   62149         * WebCoreSources.bkl: Ditto.
   62150 
   62151         * platform/gdk/TemporaryLinkStubs.cpp: Updated stubs.
   62152         * platform/qt/FileChooserQt.cpp: Updated stubs.
   62153 
   62154 2007-01-22  Mitz Pettel  <mitz (a] webkit.org>
   62155 
   62156         Reviewed by Darin.
   62157 
   62158         - fix http://bugs.webkit.org/show_bug.cgi?id=12364
   62159           REGRESSSION (NativeListBox): Selected option's background is not clipped to the list box
   62160 
   62161         Test: fast/forms/select-item-background-clip.html
   62162 
   62163         * rendering/RenderListBox.cpp:
   62164         (WebCore::RenderListBox::paintItemBackground): Intersect the item's rect with
   62165         the list box's clip rect.
   62166 
   62167 2007-01-22  Darin Adler  <darin (a] apple.com>
   62168 
   62169         Reviewed by Beth.
   62170 
   62171         - fix http://bugs.webkit.org/show_bug.cgi?id=12369
   62172           REGRESSION (r19027): amazon.com home page crashes WebKit r19028 debug build
   62173 
   62174         I caused this a few hours ago. Oops!
   62175 
   62176         * rendering/RenderText.cpp: (WebCore::RenderText::setStyle):
   62177         Compute whether the font changed before calling RenderObject::setStyle.
   62178 
   62179 2007-01-22  Beth Dakin  <bdakin (a] apple.com>
   62180 
   62181         Reviewed by Maciej.
   62182 
   62183         Fix for <rdar://problem/4912129> REGRESSION: Crash occurs at 
   62184         WebCore::Frame::eventHandler() after clicking to dismiss a 
   62185         contextual menu on the page
   62186 
   62187         * page/EventHandler.cpp:
   62188         (WebCore::EventHandler::stopAutoscrollTimer): Added nil-check.
   62189 
   62190 2007-01-22  Darin Adler  <darin (a] apple.com>
   62191 
   62192         Reviewed by Mitz.
   62193 
   62194         Inspired by a much simpler patch by Andrew Wellington <proton (a] wiretapped.net>.
   62195 
   62196         - fix http://bugs.webkit.org/show_bug.cgi?id=11197
   62197           REGRESSION: Specifying a counter for a CODE tag's content style property
   62198           on before or after causes a crash.
   62199 
   62200         Test: fast/css/beforeSelectorOnCodeElement.html
   62201 
   62202         - fix regression I recently introduced where the monospace cache could be
   62203           used for text that was not ASCII, if text was changed after the style was set
   62204 
   62205         Test: fast/text/monospace-width-cache.html
   62206 
   62207         - streamline RenderText.h -- remove unneeded functions, make some needlessly
   62208           virtual functions non-virtual, remove unneeded header includes, replace use
   62209           of Font* with Font& for consistency with RenderStyle, use "text" consistently
   62210           instead of "string"
   62211 
   62212         * rendering/RenderText.h: Removed unneeded include of "Text.h", declarations of
   62213         SOFT_HYPHEN, DocumentMarker, InlineBox, Position, String. Got rid of friend
   62214         declaration for InlineTextBox. Changed constructor to take a PassRefPtr since
   62215         we do take owership of the passed-in text. Made deleteTextBoxes() private.
   62216         Removed unneeded data(). Made override of length() private so people will use
   62217         the faster textLength() instead. Renamed string() to text() so it matches up
   62218         better with setText(). Same for stringLength(), originalString(), and
   62219         setInternalString(), which are now textLength(), originalText(), and
   62220         setTextInternal(). Renamed the old text() function to characters(), since it
   62221         returns a pointer as StringImpl::characters does. Changed Font* to Font& everywhere.
   62222         Renamed the internal calcMinMaxWidth() function to calcMinMaxWidthInternal() and
   62223         made it non-virtual since it's not overriden anywhere. Also made the
   62224         trimmedMinMaxWidth() function non-virtual. Made containsOnlyWhitespace() private.
   62225         Removed both font() functions (one was needlessly virtual) and element().
   62226         Renamed cacheWidths() to updateMonospaceCharacterWidth() and removed the
   62227         shouldUseMonospaceCache() function. Renamed allAscii() to isAllASCII() and made
   62228         it an inline function. Removed the m_allAsciiChecked flag and renamed the
   62229         m_allAscii flag to m_isAllASCII.
   62230         * rendering/RenderText.cpp:
   62231         (WebCore::RenderText::RenderText): Removed initialization of m_allAsciiChecked.
   62232         Initialize m_isAllASCII. Changed all occurrences of m_str->length() and
   62233         m_str->characters () to use the stringLength() and characters() inline functions
   62234         instead.
   62235         (WebCore::RenderText::setStyle): Replaced the unconditional call to cacheWidths
   62236         with a conditional call to updateMonospaceCharacterWidth. This speeds up the common
   62237         case where style is changed without changing the font.
   62238         (WebCore::RenderText::originalText): Changed code to not depend on overridden
   62239         element() function with casts to a Text node -- this was one of only two call sites.
   62240         Also renamed.
   62241         (WebCore::RenderText::positionForCoordinates): Name change.
   62242         (WebCore::RenderText::caretRect): Ditto.
   62243         (WebCore::RenderText::updateMonospaceCharacterWidth): Renamed from cacheWidths and
   62244         incorporate the check that was formerly in a separate shouldUseMonospaceCache
   62245         function.
   62246         (WebCore::RenderText::widthFromCache): Changed to take a Font& instead of Font*.
   62247         Changed to take advantage of the fact that the string is known to be all ASCII in
   62248         the m_monospaceCharacterWidth code path.
   62249         (WebCore::RenderText::trimmedMinMaxWidth): Ditto. Also use style()->font() instead
   62250         of font(false).
   62251         (WebCore::RenderText::calcMinMaxWidth): Ditto. Also changed to use softHyphen instead
   62252         of SOFT_HYPHEN.
   62253         (WebCore::RenderText::containsOnlyWhitespace): More of the same.
   62254         (WebCore::RenderText::setSelectionState): Ditto.
   62255         (WebCore::RenderText::setTextWithOffset): Ditto.
   62256         (WebCore::isInlineFlowOrEmptyText): Ditto.
   62257         (WebCore::RenderText::setTextInternal): Updated for name changes. Also changed to
   62258         set the m_isAllASCII flag every time, in the more-efficient way we use elsewhere
   62259         (or'ing all the characters together), and to call updateMonospaceCharacterWidth
   62260         if the "all ASCII"-ness of the text changes.
   62261         (WebCore::RenderText::setText): Updated for name changes.
   62262         (WebCore::RenderText::width): More like above.
   62263         (WebCore::RenderText::selectionRect): Ditto.
   62264         (WebCore::RenderText::caretMaxOffset): Ditto.
   62265         (WebCore::RenderText::previousOffset): Ditto.
   62266         (WebCore::RenderText::nextOffset): Ditto.
   62267 
   62268         * dom/Position.cpp:
   62269         * dom/Range.cpp:
   62270         * editing/CompositeEditCommand.cpp:
   62271         * editing/DeleteSelectionCommand.cpp:
   62272         * editing/VisiblePosition.cpp:
   62273         * html/HTMLElement.cpp:
   62274         Added now-needed include of "Text.h" which is no longer included by "RenderText.h".
   62275 
   62276         * editing/SelectionController.cpp:
   62277         (WebCore::SelectionController::debugRenderer):
   62278         * editing/TextIterator.cpp:
   62279         (WebCore::TextIterator::handleTextNode):
   62280         (WebCore::TextIterator::handleTextBox):
   62281         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
   62282         Update for name changes of stringLength(), string(), and originalString() to
   62283         textLength(), text(), and originalText(), and to always use textLength() instead
   62284         of length() when we have a RenderText* rather than a RenderObject*.
   62285         * editing/visible_units.cpp:
   62286         (WebCore::startOfParagraph): Ditto.
   62287         (WebCore::endOfParagraph): Ditto.
   62288         * rendering/InlineFlowBox.cpp:
   62289         (WebCore::InlineFlowBox::placeBoxesHorizontally): Ditto. Also removed use of the
   62290         RenderObject::font() function and replaced it with explicit access to the style.
   62291         (WebCore::InlineFlowBox::placeBoxesVertically): Ditto.
   62292         * rendering/InlineTextBox.cpp:
   62293         (WebCore::InlineTextBox::selectionRect): Ditto.
   62294         (WebCore::InlineTextBox::isLineBreak): Ditto.
   62295         (WebCore::InlineTextBox::paint): Ditto.
   62296         (WebCore::InlineTextBox::selectionStartEnd): Ditto.
   62297         (WebCore::InlineTextBox::paintSelection): Ditto.
   62298         (WebCore::InlineTextBox::paintMarkedTextBackground): Ditto.
   62299         (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Ditto.
   62300         (WebCore::InlineTextBox::paintTextMatchMarker): Ditto.
   62301         (WebCore::InlineTextBox::offsetForPosition): Ditto.
   62302         (WebCore::InlineTextBox::positionForOffset): Ditto.
   62303         * rendering/RenderContainer.cpp:
   62304         (WebCore::RenderContainer::addChild): Ditto.
   62305         * rendering/RenderCounter.cpp:
   62306         (WebCore::RenderCounter::originalText): Ditto.
   62307         (WebCore::RenderCounter::calcMinMaxWidth): Ditto.
   62308         * rendering/RenderCounter.h: Ditto.
   62309         * rendering/RenderTextFragment.cpp:
   62310         (WebCore::RenderTextFragment::originalText): Ditto.
   62311         * rendering/RenderTextFragment.h: Ditto.
   62312         * rendering/SVGInlineFlowBox.cpp:
   62313         (WebCore::placePositionedBoxesHorizontally): Ditto.
   62314         (WebCore::placeBoxesVerticallyWithAbsBaseline): Ditto.
   62315         * rendering/bidi.cpp:
   62316         (WebCore::BidiIterator::increment): Ditto.
   62317         (WebCore::BidiIterator::current): Ditto.
   62318         (WebCore::BidiIterator::direction): Ditto.
   62319         (WebCore::addRun): Ditto.
   62320         (WebCore::checkMidpoints): Ditto.
   62321         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Ditto.
   62322         (WebCore::RenderBlock::skipWhitespace): Ditto.
   62323         (WebCore::RenderBlock::findNextLineBreak): Ditto.
   62324 
   62325         * rendering/RenderBR.h: Updated signature of width function which now takes a
   62326         Font& instead of a Font*.
   62327 
   62328         * rendering/RenderBlock.cpp: (WebCore::stripTrailingSpace): Updated to no longer
   62329         use the RenderObject::font() function, and added a comment about first-line, which
   62330         is not handled properly here.
   62331 
   62332         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::text):
   62333         * rendering/RenderTreeAsText.cpp: (WebCore::writeTextRun):
   62334         Eliminated use of RenderText::data().
   62335 
   62336         * rendering/RenderObject.h: Removed RenderObject::font(). This had the bad effect of
   62337         having everyone pass in a boolean rather than using the cleaner style() and
   62338         firstLineStyle() functions in cases where there's no a firstLineStyle boolean.
   62339         * rendering/RenderObject.cpp:
   62340         (WebCore::RenderObject::getVerticalPosition): Replaced use of RenderObject::font()
   62341         with direct use of the style instead, which is arguably easier to understand anyway.
   62342         (WebCore::RenderObject::baselinePosition): Ditto.
   62343 
   62344 2007-01-22  Sam Weinig  <sam (a] webkit.org>
   62345 
   62346         Reviewed by The Mitz.
   62347 
   62348         Move JSHTMLSelectElementCustom.cpp from bindings to bindings/js
   62349         where it belongs.
   62350 
   62351         * WebCore.pro:
   62352         * WebCore.xcodeproj/project.pbxproj:
   62353         * bindings/JSHTMLSelectElementCustom.cpp: Removed.
   62354         * bindings/js/JSHTMLSelectElementCustom.cpp: Added.
   62355 
   62356 2007-01-22  Zack Rusin  <zack (a] kde.org>
   62357 
   62358         Fix the Qt build.
   62359 
   62360         * WebCore.pro: adjust after last changes
   62361 
   62362 2007-01-21  Alexey Proskuryakov  <ap (a] webkit.org>
   62363 
   62364         Reviewed by Darin.
   62365 
   62366         http://bugs.webkit.org/show_bug.cgi?id=10934
   62367         REGRESSION: prototype.js logs error (HTMLFormElement) on webkit builds
   62368 
   62369         Added constructors for most HTML elements; started auto-generating HTMLSelectElement JS binding.
   62370 
   62371         Test: fast/dom/Window/element-constructors-on-window.html
   62372 
   62373         * DerivedSources.make: Generate JSHTMLSelectElement.
   62374         * WebCore.xcodeproj/project.pbxproj: Added JSHTMLSelectElement{Custom}.
   62375         * bindings/js/JSHTMLElementWrapperFactory.cpp: Create a proper binding for SELECT.
   62376 
   62377         * bindings/js/kjs_html.cpp:
   62378         (KJS::):
   62379         (KJS::JSHTMLElement::classInfo):
   62380         (KJS::JSHTMLElement::accessors):
   62381         (KJS::JSHTMLElement::getOwnPropertySlot):
   62382         (KJS::HTMLElementFunction::callAsFunction):
   62383         (KJS::JSHTMLElement::put):
   62384         * bindings/js/kjs_html.h:
   62385         (KJS::JSHTMLElement::):
   62386         Removed everything related to SELECT. Renamed getHTMLOptionsCollection to toJS for autogenerated code 
   62387         to be happy, and rewrote it using cacheDOMObject.
   62388 
   62389         * bindings/scripts/CodeGeneratorJS.pm: Added HTMLElement to the list of types that cannot fail conversion.
   62390 
   62391         * html/HTMLAnchorElement.idl:
   62392         * html/HTMLAppletElement.idl:
   62393         * html/HTMLAreaElement.idl:
   62394         * html/HTMLBRElement.idl:
   62395         * html/HTMLBaseElement.idl:
   62396         * html/HTMLBaseFontElement.idl:
   62397         * html/HTMLBodyElement.idl:
   62398         * html/HTMLButtonElement.idl:
   62399         * html/HTMLCanvasElement.idl:
   62400         * html/HTMLDListElement.idl:
   62401         * html/HTMLDirectoryElement.idl:
   62402         * html/HTMLDivElement.idl:
   62403         * html/HTMLFieldSetElement.idl:
   62404         * html/HTMLFontElement.idl:
   62405         * html/HTMLFormElement.idl:
   62406         * html/HTMLHRElement.idl:
   62407         * html/HTMLHeadElement.idl:
   62408         * html/HTMLHeadingElement.idl:
   62409         * html/HTMLHtmlElement.idl:
   62410         * html/HTMLImageElement.idl:
   62411         * html/HTMLInputElement.idl:
   62412         * html/HTMLIsIndexElement.idl:
   62413         * html/HTMLLIElement.idl:
   62414         * html/HTMLLabelElement.idl:
   62415         * html/HTMLLegendElement.idl:
   62416         * html/HTMLLinkElement.idl:
   62417         * html/HTMLMapElement.idl:
   62418         * html/HTMLMenuElement.idl:
   62419         * html/HTMLMetaElement.idl:
   62420         * html/HTMLModElement.idl:
   62421         * html/HTMLOListElement.idl:
   62422         * html/HTMLOptGroupElement.idl:
   62423         * html/HTMLParagraphElement.idl:
   62424         * html/HTMLParamElement.idl:
   62425         * html/HTMLPreElement.idl:
   62426         * html/HTMLQuoteElement.idl:
   62427         * html/HTMLScriptElement.idl:
   62428         * html/HTMLStyleElement.idl:
   62429         * html/HTMLTextAreaElement.idl:
   62430         * html/HTMLTitleElement.idl:
   62431         * html/HTMLUListElement.idl:
   62432         Generate constructors.
   62433 
   62434         * html/HTMLSelectElement.cpp:
   62435         (WebCore::HTMLSelectElement::length):
   62436         * html/HTMLSelectElement.h:
   62437         Make length() return unsigned for auto-generated code to be happy.
   62438 
   62439         * html/HTMLSelectElement.idl: Adjusted to be usable for JS.
   62440 
   62441         * bindings/JSHTMLSelectElementCustom.cpp: Added. Implements remove().
   62442 
   62443         * page/DOMWindow.idl:
   62444         Added properties for most elements' constructors.
   62445 
   62446 2007-01-21  Mark Rowe  <mrowe (a] apple.com>
   62447 
   62448         Reviewed by Maciej.
   62449 
   62450         http://bugs.webkit.org/show_bug.cgi?id=12357
   62451         Bug 12357: Reproducible crash in WebCore::Settings::isJavaScriptEnabled in svg/custom/js-update-bounce.svg under guard-malloc
   62452 
   62453         * page/Frame.cpp:
   62454         (WebCore::Frame::~Frame): Access the global object directly rather than via Window::retrieveWindow to prevent our reference to
   62455         a deleted settings object being used.
   62456 
   62457 2007-01-21  Darin Adler  <darin (a] apple.com>
   62458 
   62459         Reviewed by Maciej.
   62460 
   62461         - fix <rdar://problem/4930503> REGRESSION: Page changes title when
   62462           command-clicking on named anchor link (12299)
   62463 
   62464         * loader/FrameLoader.cpp:
   62465         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   62466         Return if shouldContinue is false. This matches the other similar
   62467         functions and prevents us from doing extra work in the "ignore" case.
   62468 
   62469 2007-01-21  Mark Rowe  <mrowe (a] apple.com>
   62470 
   62471         Reviewed by Darin.
   62472 
   62473         http://bugs.webkit.org/show_bug.cgi?id=12355
   62474         Bug 12355: Reproducible crash in WebCore::parseNumber in svg/custom/js-update-bounce.svg under guard-malloc
   62475 
   62476         * ksvg2/svg/SVGParserUtilities.cpp:
   62477         (WebCore::parseNumber): Parenthesize to prevent reading past end of buffer.
   62478 
   62479 2007-01-21  Mitz Pettel  <mitz (a] webkit.org>
   62480 
   62481         Reviewed by Darin.
   62482 
   62483         - fix http://bugs.webkit.org/show_bug.cgi?id=12345
   62484           REGRESSION: Disabled pop-up text is not grayed out
   62485 
   62486         Test: fast/forms/select-disabled-appearance.html
   62487 
   62488         * rendering/RenderThemeMac.mm:
   62489         (WebCore::RenderThemeMac::adjustMenuListStyle):
   62490 
   62491 2007-01-21  Darin Adler  <darin (a] apple.com>
   62492 
   62493         - fix non-Mac builds
   62494 
   62495         * CMakeLists.txt: Added JSDocumentCustom.cpp.
   62496         * WebCore.pro: Ditto.
   62497         * WebCoreSources.bkl: Ditto.
   62498 
   62499 2007-01-21  Mitz Pettel  <mitz (a] webkit.org>
   62500 
   62501         Reviewed by Darin.
   62502 
   62503         - fix http://bugs.webkit.org/show_bug.cgi?id=12353 <rdar://problem/4944599>
   62504           REGRESSION: Crash on load (mutation event dispatch under the image element constructor deletes the element)
   62505     
   62506         Test: fast/dom/HTMLImageElement/constructor-mutation-event-dispatch.html
   62507 
   62508         * bindings/js/kjs_html.cpp:
   62509         (KJS::ImageConstructorImp::construct): Protect the image element before setting
   62510         its attributes.
   62511 
   62512 2007-01-21  Sam Weinig  <sam (a] webkit.org>
   62513 
   62514         Rolling out patch for http://bugs.webkit.org/show_bug.cgi?id=8360.
   62515 
   62516         * rendering/RenderLayer.cpp:
   62517         (WebCore::RenderLayer::RenderLayer):
   62518         (WebCore::RenderLayer::scrollToOffset):
   62519         (WebCore::RenderLayer::scrollRectToVisible):
   62520         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   62521         (WebCore::Marquee::start):
   62522         * rendering/RenderLayer.h:
   62523 
   62524 2007-01-21  David Kilzer  <ddkilzer (a] webkit.org>
   62525 
   62526         Reviewed by Darin.
   62527 
   62528         - fix http://bugs.webkit.org/show_bug.cgi?id=12280
   62529           select element not available by name through document.all
   62530           (dropdown list not available on smarthome.com checkout)
   62531 
   62532         Test: fast/dom/document-all-select.html
   62533 
   62534         * html/HTMLCollection.cpp:
   62535         (WebCore::HTMLCollection::checkForNameMatch):
   62536         (WebCore::HTMLCollection::updateNameCache):
   62537 
   62538 2007-01-21  Mitz Pettel  <mitz (a] webkit.org>
   62539 
   62540         Reviewed by Darin.
   62541 
   62542         - http://bugs.webkit.org/show_bug.cgi?id=10805
   62543           REGRESSION (r15720): manual-tests/onblur-remove.html failing
   62544 
   62545         * manual-tests/onblur-remove.html: Changed the test to not require pressing
   62546         Enter, since the correct behavior for Enter is to send a blur event.
   62547 
   62548 2007-01-21  Sanjay Madhav  <sanjay12 (a] gmail.com>
   62549 
   62550         Reviewed by Darin.
   62551 
   62552         Fix for: <rdar://problem/4928583> Memory usage grows when reloading google.com/ig
   62553 
   62554         JSDocuments are now responsible for marking the DOM wrappers associated with them, when they get marked.
   62555         This fixes a JS object leak when a DOM wrapper has a reference to a JSDocument that is otherwise not reachable.
   62556 
   62557         Test: fast/dom/gc-10.html
   62558 
   62559         * WebCore.vcproj/WebCore/WebCore.vcproj:
   62560         * WebCore.xcodeproj/project.pbxproj:
   62561         * bindings/js/JSDocumentCustom.cpp: Added.
   62562         (WebCore::JSDocument::mark):
   62563         * bindings/js/kjs_binding.cpp:
   62564         (KJS::ScriptInterpreter::markDOMNodesForDocument):
   62565         (KJS::ScriptInterpreter::mark):
   62566         * bindings/js/kjs_binding.h:
   62567         * dom/Document.idl:
   62568 
   62569 2007-01-21  Mitz Pettel  <mitz (a] webkit.org>
   62570 
   62571         Reviewed by Darin.
   62572 
   62573         - fix http://bugs.webkit.org/show_bug.cgi?id=10692
   62574           REGRESSION (r14847): Unnecessary scrollbars with position:relative; and overflow:auto;
   62575 
   62576         Test: fast/overflow/position-relative.html
   62577 
   62578         * rendering/RenderBox.cpp:
   62579         (WebCore::RenderBox::lowestPosition): Add the relative position offset only
   62580         if 'includeSelf' is true.
   62581         (WebCore::RenderBox::rightmostPosition): Ditto.
   62582         (WebCore::RenderBox::leftmostPosition): Ditto.
   62583         * rendering/RenderFlow.cpp:
   62584         (WebCore::RenderFlow::lowestPosition): Ditto.
   62585         (WebCore::RenderFlow::rightmostPosition): Ditto.
   62586         (WebCore::RenderFlow::leftmostPosition): Ditto.
   62587 
   62588 2007-01-21  Mitz Pettel  <mitz (a] webkit.org>
   62589 
   62590         Reviewed by Darin.
   62591 
   62592         - fix http://bugs.webkit.org/show_bug.cgi?id=10472
   62593           REGRESSION: "add" method of <select> object does not put the <option> object in the correct position
   62594 
   62595         Test: fast/dom/HTMLSelectElement/options-collection-detached.html
   62596 
   62597         * html/HTMLSelectElement.cpp:
   62598         (WebCore::HTMLSelectElement::setRecalcListItems): Reset the options collection
   62599         info if the <select> is not in the document. For in-document <select>s this
   62600         happens anyway as a result of the DOM tree version increasing.
   62601 
   62602 2007-01-21  Mitz Pettel  <mitz (a] webkit.org>
   62603 
   62604         Reviewed by Darin.
   62605 
   62606         - fix http://bugs.webkit.org/show_bug.cgi?id=12349
   62607           NativeFileUpload: Button text is not grayed out when the control is disabled
   62608 
   62609         Covered by fast/forms/file-input-disabled.html 
   62610 
   62611         * css/html4.css: Changed selectors that had pseudo-classes after the -webkit-file-upload-button
   62612         pseudo-element to have the pseudo-element at the end. Pseudo-elements must be at the end.
   62613         * rendering/RenderFileUploadControl.cpp:
   62614         (WebCore::RenderFileUploadControl::createButtonStyle): Changed to not overwrite the button's
   62615         style with its parent's style. getPseudoStyle() handles inheritance properly.
   62616 
   62617 2007-01-21  Mitz Pettel  <mitz (a] webkit.org>
   62618 
   62619         Reviewed by Darin.
   62620 
   62621         - fix http://bugs.webkit.org/show_bug.cgi?id=12343
   62622           crash in css2.1/t1202-counter-09-b.html
   62623 
   62624         * platform/Font.cpp:
   62625         (WebCore::Font::glyphDataForCharacter):
   62626 
   62627 2007-01-21  Darin Adler  <darin (a] apple.com>
   62628 
   62629         Reviewed by Adam and Mitz.
   62630 
   62631         - fix http://bugs.webkit.org/show_bug.cgi?id=12347
   62632           REGRESSION: list box scrolling broken (fast/forms/listbox-selection.html)
   62633 
   62634         Covered by existing test: fast/forms/listbox-selection.html
   62635 
   62636         * rendering/RenderListBox.h: Added override of layout(), made selectionChanged()
   62637         no longer an inline. Added private scrollToRevealSelection(),
   62638         m_scrollToRevealSelectionAfterLayout, and m_inAutoscroll.
   62639         * rendering/RenderListBox.cpp:
   62640         (WebCore::RenderListBox::RenderListBox): Initialize new data members.
   62641         (WebCore::RenderListBox::updateFromElement): Remove scrolling code.
   62642         (WebCore::RenderListBox::selectionChanged): Moved from header. Calls repaint
   62643         and then scrollToRevealSelection, but if we need layout, instead schedules
   62644         scrollToRevealSelection to be done after layout.
   62645         (WebCore::RenderListBox::layout): Added. After calling base class, calls
   62646         scrollToRevealSelection if the m_scrollToRevealSelectionAfterLayout is set.
   62647         (WebCore::RenderListBox::scrollToRevealSelection): Added. Code was originally
   62648         in updateFromElement.
   62649         (WebCore::RenderListBox::autoscroll): Set m_inAutoscroll so that the
   62650         selectionChanged function knows not to scroll. Also removed the repaint()
   62651         here because updateListBoxSelection() takes care of repainting by calling
   62652         selectionChanged().
   62653 
   62654 2007-01-21  David Kilzer  <ddkilzer (a] webkit.org>
   62655 
   62656         * page/EventHandler.cpp:
   62657         (WebCore::EventHandler::handleMouseMoveEvent): Changed #if SVG_SUPPORT to #ifdef SVG_SUPPORT.
   62658 
   62659 2007-01-20  Mitz Pettel  <mitz (a] webkit.org>
   62660 
   62661         Reviewed by Maciej.
   62662 
   62663         - fix http://bugs.webkit.org/show_bug.cgi?id=11115
   62664           REGRESSION: Crash on Flickr after hitting cancel from adding a note
   62665 
   62666         Test: fast/forms/text-set-value-crash.html
   62667 
   62668         * html/HTMLInputElement.cpp:
   62669         (WebCore::HTMLInputElement::setValue): Added a call to Document::updateRendering().
   62670         * html/HTMLTextAreaElement.cpp:
   62671         (WebCore::HTMLTextAreaElement::setValue): Ditto.
   62672 
   62673 2007-01-20  Mitz Pettel  <mitz (a] webkit.org>
   62674 
   62675         Reviewed by Darin.
   62676 
   62677         - fix http://bugs.webkit.org/show_bug.cgi?id=8360
   62678           Repro crash when onscroll handler deletes the scrolled object
   62679 
   62680         Test: fast/layers/removed-by-scroll-handler.html
   62681 
   62682         * rendering/RenderLayer.cpp:
   62683         (WebCore::RenderLayer::RenderLayer):
   62684         (WebCore::RenderLayer::dispatchScrollEvent): Added. Called when the timer
   62685         fires and dispatches the scroll event to the layer's element.
   62686         (WebCore::RenderLayer::scrollToOffset): Instead of dispatching the scroll
   62687         event from this function, which is called during layout, schedule a 0-duration
   62688         timer to dispatch the event after layout.
   62689         (WebCore::RenderLayer::scrollRectToVisible):
   62690         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
   62691         (WebCore::Marquee::start):
   62692         * rendering/RenderLayer.h:
   62693 
   62694 2007-01-20  Nikolas Zimmermann  <zimmermann (a] kde.org>
   62695 
   62696         Reviewed by Sam.
   62697 
   62698         Fix JS bindings for SVGAnimated{Boolean, Enumeration, Integer, Number, String}.
   62699 
   62700         Dynamic SVG DOM updates (ie. "someUse.href.baseVal = '#rect'") with these types
   62701         didn't work. Existing gradient updating examples relied on calling setAttribute
   62702         after a SVG DOM update - that was the only reason it worked, added a new test
   62703         only using SVG DOM updates (js-update-stop.svg).
   62704 
   62705         Added test: js-update-stop.svg
   62706         Added test: use-property-changes-through-dom.svg (change xlink:href, x/y attributes using setAttribute)
   62707         Added test: use-property-changes-through-svg-dom.svg (change xlink:href, x/y attributes using SVG DOM)
   62708 
   62709         * bindings/js/JSSVGPODTypeWrapper.h:
   62710         (WebCore::JSSVGPODTypeWrapper::commitChange):
   62711         (WebCore::JSSVGPODTypeWrapperCreator::commitChange):
   62712         (WebCore::JSSVGPODTypeWrapperCreatorForList::commitChange):
   62713         * bindings/js/JSSVGPathSegListCustom.cpp:
   62714         (WebCore::updatePathSegContextMap):
   62715         (WebCore::removeFromPathSegContextMap):
   62716         * bindings/scripts/CodeGeneratorJS.pm:
   62717         * ksvg2/misc/SVGDocumentExtensions.h:
   62718         (WebCore::SVGDocumentExtensions::baseValueMap):
   62719         (WebCore::SVGDocumentExtensions::genericContextMap):
   62720         (WebCore::SVGDocumentExtensions::baseValue):
   62721         (WebCore::SVGDocumentExtensions::setBaseValue):
   62722         (WebCore::SVGDocumentExtensions::removeBaseValue):
   62723         (WebCore::SVGDocumentExtensions::hasBaseValue):
   62724         (WebCore::SVGDocumentExtensions::genericContext):
   62725         (WebCore::SVGDocumentExtensions::setGenericContext):
   62726         (WebCore::SVGDocumentExtensions::removeGenericContext):
   62727         (WebCore::SVGDocumentExtensions::hasGenericContext):
   62728         (WebCore::String):
   62729         (WebCore::FloatRect):
   62730         (WebCore::bool):
   62731         (WebCore::double):
   62732         * ksvg2/svg/SVGClipPathElement.h:
   62733         * ksvg2/svg/SVGElement.h:
   62734         (WebCore::SVGElement::notifyAttributeChange):
   62735         * ksvg2/svg/SVGPathSegList.cpp:
   62736         (WebCore::SVGPathSegList::SVGPathSegList):
   62737         (WebCore::SVGPathSegList::context):
   62738         * ksvg2/svg/SVGPathSegList.h:
   62739         * ksvg2/svg/SVGPatternElement.h:
   62740         * ksvg2/svg/SVGPointList.cpp:
   62741         (SVGPointList::SVGPointList):
   62742         (SVGPointList::context):
   62743         * ksvg2/svg/SVGPointList.h:
   62744         * ksvg2/svg/SVGStopElement.cpp:
   62745         (WebCore::SVGStopElement::parseMappedAttribute):
   62746         (WebCore::SVGStopElement::notifyAttributeChange):
   62747         * ksvg2/svg/SVGStopElement.h:
   62748         * ksvg2/svg/SVGUseElement.cpp:
   62749         (WebCore::SVGUseElement::notifyAttributeChange):
   62750 
   62751 2007-01-20  Rob Buis  <buis (a] kde.org>
   62752 
   62753         Reviewed by Sam.
   62754 
   62755         http://bugs.webkit.org/show_bug.cgi?id=12334
   62756         Respect <text> boundaries for svg text selecting
   62757 
   62758         Make sure the text selection for svg stays inside
   62759         containing blocks.
   62760         Added one manual test since html selection does not
   62761         seem to work for SVG and selectSubString for SVG
   62762         is not implemented yet.
   62763 
   62764         * manual-tests/svg-text-selection.svg: Added.
   62765         * page/EventHandler.cpp:
   62766         (WebCore::EventHandler::handleMouseMoveEvent):
   62767         * rendering/RenderObject.h:
   62768         (WebCore::RenderObject::isSVGText):
   62769         * rendering/RenderSVGInlineText.h:
   62770         (WebCore::RenderSVGInlineText::isSVGText):
   62771         * rendering/RenderSVGText.h:
   62772         (WebCore::RenderSVGText::isSVGText):
   62773 
   62774 2007-01-19  Adele Peterson  <adele (a] apple.com>
   62775 
   62776         Reviewed by Hyatt.
   62777 
   62778         Fix for: <rdar://problem/4697438> REGRESSION: select menu lists match the wrong css rule on www.chainreaction.com
   62779 
   62780         Update the size attribute value for select elements to match the numeric value.  This is a special case since this
   62781         attribute is used to determine which control to use.  We want to make sure that the size attribute is valid when we match
   62782         CSS rules.
   62783 
   62784         Test: fast/forms/select-size.html
   62785 
   62786         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::parseMappedAttribute): If the attribute string value is not the
   62787           same as its integer value, then update the attribute value to match the integer.
   62788         * dom/Attribute.h: Made setValue and setPrefix public.
   62789 
   62790 2007-01-19  John Sullivan  <sullivan (a] apple.com>
   62791 
   62792         Reviewed by Darin
   62793 
   62794         - WebCore part of fix for: <rdar://problem/4451715> REGRESSION: On some sites, have to 
   62795           type a character before username/password autofill kicks in
   62796 
   62797         * loader/FrameLoaderClient.h:
   62798         new dispatchDidFinishDocumentLoad call
   62799 
   62800         * loader/FrameLoader.cpp:
   62801         (WebCore::FrameLoader::finishedParsing):
   62802         call dispatchDidFinishDocumentLoad
   62803         
   62804         * platform/graphics/svg/SVGImageEmptyClients.h:
   62805         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFinishDocumentLoad):
   62806         empty implementation for dispatchDidFinishDocumentLoad
   62807 
   62808 2007-01-19  Adele Peterson  <adele (a] apple.com>
   62809 
   62810         Reviewed by Hyatt.
   62811 
   62812         Fix for <rdar://problem/4760280> REGRESSION: Bottom portion of text hangs off edge of SELECT element at http://macreviewzone.com/index.php
   62813         
   62814         Test: fast/forms/control-restrict-line-height.html
   62815 
   62816         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::setFontFromControlSize): Don't honor line-height for controls that
   62817           have restricted font size.
   62818 
   62819 2007-01-19  Darin Adler  <darin (a] apple.com>
   62820 
   62821         Reviewed by Adele.
   62822 
   62823         - fix http://bugs.webkit.org/show_bug.cgi?id=11999
   62824           <rdar://problem/4940442> REGRESSION: Incomplete listing in TVListings window (11999)
   62825           Fix was to use the actual size of the renderer in the RenderListBox
   62826           case, instead of always using the size specified by the select element.
   62827 
   62828         Test: fast/forms/select-list-box-with-height.html
   62829 
   62830         - fix http://bugs.webkit.org/show_bug.cgi?id=11995
   62831           <rdar://problem/4901834> REGRESSION(NativeListBox): Focus is not placed on
   62832           SELECT after mousing down on OPTION
   62833 
   62834         Test: fast/forms/select-list-box-mouse-focus.html
   62835 
   62836         - fix bug where auto-scrolling was not working in list box select elements
   62837 
   62838         No test yet.
   62839 
   62840         - fix a missing semicolon in the radio/checkbox section of html4.css
   62841 
   62842         Test: fast/forms/radio-no-theme-padding.html
   62843 
   62844         - fix bug where the scroll bars for select elements were pixel-type scroll
   62845           bars even though the scrolling is line at a time scrolling
   62846 
   62847         No test.
   62848 
   62849         * html/HTMLSelectElement.cpp:
   62850         (WebCore::HTMLSelectElement::selectAll): Removed an explicit call
   62851         to repaint, since the RenderListBox now does that in selectionChanged.
   62852         (WebCore::HTMLSelectElement::notifyOptionSelected): Call the new
   62853         selectionChanged instead of the old setSelectionChanged.
   62854         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Added a call
   62855         to focus. Removed an explicit call to repaint and added a call to the
   62856         new setMouseDownMayStartAutoscroll function in EventHandler. Removed an
   62857         explicit call to repaint as above.
   62858         (WebCore::HTMLSelectElement::updateListBoxSelection): Call the new
   62859         selectionChanged instead of the old setSelectionChanged.
   62860 
   62861         * page/EventHandler.h: Added setMouseDownMayStartAutoscroll, needed
   62862         because the existing code to set that flag won't get triggered when
   62863         the select element's default event handler handles the event.
   62864 
   62865         * rendering/RenderListBox.h: Made ScrollbarClient a private base class.
   62866         Removed setSelectionChanged and m_selectionChanged. Added selectionChanged,
   62867         which is really just a synonym for repaint for now. Moved valueChanged,
   62868         the ScrollbarClient function implementations, and itemHeight into the
   62869         private part of the class. Added numVisibleItems() and listHeight() to
   62870         the private section. Changed m_vBar to be a RefPtr.
   62871 
   62872         * rendering/RenderListBox.cpp: Removed unneeded includes. Moved all
   62873         the constants to the top of the file.
   62874         (WebCore::RenderListBox::RenderListBox): Removed initialization of
   62875         m_selectionChanged because it was removed and of m_vBar because it's
   62876         now a RefPtr which is automaticall initialized.
   62877         (WebCore::RenderListBox::~RenderListBox): Removed the explicit deref of
   62878         m_vBar because it's a RefPtr. Added null checking for FrameView.
   62879         (WebCore::RenderListBox::updateFromElement): Use numItems().
   62880         (WebCore::RenderListBox::calcMinMaxWidth): Added null checking for
   62881         FrameView and used RefPtr for the newly-created scroll bar.
   62882         (WebCore::RenderListBox::size): Tweaked formatting. Also renamed the
   62883         misleading minDefaultSize to maxDefaultSize, since it's a maximum.
   62884         (WebCore::RenderListBox::numVisibleItems): Added. Used in many places
   62885         where size() was used before. This computes the number of rows we have
   62886         room for. We don't need a row space after the last row, and this takes
   62887         that into account.
   62888         (WebCore::RenderListBox::numItems): Tweaked to remove the local variable.
   62889         (WebCore::RenderListBox::listHeight): Added. Total height of all the rows
   62890         and spaces between them.
   62891         (WebCore::RenderListBox::calcHeight): Changed to call itemHeight for the
   62892         row height, and to subtract the last row spacing off since we don't need
   62893         a space after the last row. Changed the scroll bar setup to make it
   62894         correspond to row numbers, not pixel numbers.
   62895         (WebCore::RenderListBox::baselinePosition): Moved the comment to the
   62896         constant declaration at the top of the file.
   62897         (WebCore::RenderListBox::itemBoundingBoxRect): Simplified by using
   62898         the itemHeight() function.
   62899         (WebCore::RenderListBox::paintObject): Changed to use numItems and
   62900         to use numVisibleItems instead of size.
   62901         (WebCore::RenderListBox::isPointInScrollbar): Added get() call since
   62902         m_vBar is now a RefPtr.
   62903         (WebCore::RenderListBox::listIndexAtOffset): Changed to use numItems(),
   62904         itemHeight(), and rearranged a min/max combo so it starts with the low,
   62905         then the value, then the high value for pinning.
   62906         (WebCore::RenderListBox::autoscroll): Use numVisibleItems() instead of
   62907         size().
   62908         (WebCore::RenderListBox::stopAutoscroll): Removed an unneeded nil check
   62909         of the element.
   62910         (WebCore::RenderListBox::scrollToRevealElementAtListIndex): Changed
   62911         to use numItems() and to use numVisibleItems() instead of size().
   62912         Also changed scroll bar code to work more simply now that the scroll
   62913         bar is row-based.
   62914         (WebCore::RenderListBox::listIndexIsVisible): Changed to use
   62915         numVisibleItems() instead of size().
   62916         (WebCore::RenderListBox::valueChanged): Simplified since the scrollbar
   62917         is now row-based. Also removed an unnecessary null check.
   62918         (WebCore::RenderListBox::itemHeight): Updated for name change from
   62919         optionsSpacingMiddle to rowSpacing.
   62920         (WebCore::RenderListBox::scrollHeight): Changed to use listHeight().
   62921         (WebCore::RenderListBox::setScrollTop): Simplified, and removed the code
   62922         that does nothing if the computed list index is visible (which did not
   62923         make sense for this function and seemed a cut and paste error from the
   62924         scrollToReveal function). The scrollbar part is simpler now that it's
   62925         row-based.
   62926         (WebCore::RenderListBox::windowClipRect): Changed to use document()->view()
   62927         so we don't have to include RenderView.h.
   62928 
   62929         * css/html4.css: Added a semicolon I noticed was missing.
   62930 
   62931 2007-01-19  Beth Dakin  <bdakin (a] apple.com>
   62932 
   62933         Reviewed by Maciej and Darin.
   62934 
   62935         Fix for <rdar://problem/4702420> REGRESSION: Null characters need 
   62936         to be stripped from text nodes (townhall.com)
   62937 
   62938         This was a regression from the fix for <rdar://problem/3727939>
   62939         Safari strips \0 characters from HTML tags making them valid, which
   62940         was fixed with r12652. We still need to strip null characters in
   62941         text nodes.
   62942 
   62943         * html/HTMLTokenizer.cpp:
   62944         (WebCore::HTMLTokenizer::write): No behavior change here, this is
   62945         just to make Darin happy.
   62946         (WebCore::HTMLTokenizer::processToken): Call into StringImpl's new 
   62947         createStrippingNull function instead of the normal StringImpl 
   62948         constructor.
   62949         * platform/StringImpl.cpp:
   62950         (WebCore::StringImpl::createStrippingNull): Strip null.
   62951         * platform/StringImpl.h:
   62952 
   62953 2007-01-19  David Kilzer  <ddkilzer (a] webkit.org>
   62954 
   62955         Reviewed by NOBODY (no-svg build fix).
   62956 
   62957         * ksvg2/svg/SVGMPathElement.cpp: Added #ifdef SVG_SUPPORT/#endif guards.
   62958 
   62959 2007-01-19  Anders Carlsson  <acarlsson (a] apple.com>
   62960         
   62961         Build fix.
   62962         
   62963         * platform/graphics/svg/SVGImageEmptyClients.h:
   62964         (WebCore::SVGEmptyChromeClient::setStatusbarText):
   62965 
   62966 2007-01-18  Anders Carlsson  <acarlsson (a] apple.com>
   62967 
   62968         Reviewed by Adam.
   62969 
   62970         Move JavaScript alert and status bar functions to the chrome.
   62971         
   62972         * bindings/js/kjs_window.cpp:
   62973         (KJS::WindowFunc::callAsFunction):
   62974         * page/Chrome.cpp:
   62975         (WebCore::Chrome::runJavaScriptAlert):
   62976         (WebCore::Chrome::runJavaScriptConfirm):
   62977         (WebCore::Chrome::runJavaScriptPrompt):
   62978         (WebCore::Chrome::setStatusBarText):
   62979         * page/Chrome.h:
   62980         * page/ChromeClient.h:
   62981         * page/Frame.cpp:
   62982         (WebCore::Frame::setJSStatusBarText):
   62983         (WebCore::Frame::setJSDefaultStatusBarText):
   62984         * page/Frame.h:
   62985         * page/mac/FrameMac.h:
   62986         * page/mac/FrameMac.mm:
   62987         * page/mac/WebCoreFrameBridge.h:
   62988         * platform/graphics/svg/SVGImageEmptyClients.h:
   62989         (WebCore::SVGEmptyChromeClient::runJavaScriptAlert):
   62990         (WebCore::SVGEmptyChromeClient::runJavaScriptConfirm):
   62991         (WebCore::SVGEmptyChromeClient::runJavaScriptPrompt):
   62992         (WebCore::SVGEmptyChromeClient::setStatusBarText):
   62993 
   62994 2007-01-19  Zack Rusin  <zack (a] kde.org>
   62995 
   62996         Fix the build.
   62997 
   62998         * WebCore.pro: Add missing files
   62999 
   63000 2007-01-19  Eric Seidel  <eric (a] webkit.org>
   63001 
   63002         Reviewed by rwlbuis.
   63003 
   63004         More cleanup to SVGAnimated* classes.
   63005 
   63006         No tests possible (only code cleanup)
   63007 
   63008         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   63009         (WebCore::SVGAnimateMotionElement::applyAnimationToValue):
   63010         * ksvg2/svg/SVGAnimateMotionElement.h:
   63011         * ksvg2/svg/SVGAnimationElement.cpp:
   63012         (WebCore::SVGAnimationElement::parseBeginOrEndValue):
   63013         (WebCore::SVGAnimationElement::parseMappedAttribute):
   63014         (WebCore::SVGAnimationElement::parseClockValue):
   63015         (WebCore::SVGAnimationElement::isIndefinite):
   63016         * ksvg2/svg/SVGAnimationElement.h:
   63017 
   63018 2007-01-19  Nikolas Zimmermann  <zimmermann (a] kde.org>
   63019 
   63020         Not reviewed.
   63021 
   63022         Remove accidently commited debug output. Shame on me :-)
   63023 
   63024         * ksvg2/svg/SVGUseElement.cpp:
   63025         (WebCore::SVGUseElement::notifyAttributeChange):
   63026 
   63027 2007-01-19  Nikolas Zimmermann  <zimmermann (a] kde.org>
   63028 
   63029         Reviewed by Eric.
   63030 
   63031         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10410 (SVG Slider example renders completely wrong (inserting <use> dynamically doesn't work))
   63032         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11660 (SVG: creation of <use/> elements through scripting/DOM doesn't work)
   63033 
   63034         Added test: svg/custom/use-instanceRoot-modifications.svg
   63035         Added test: svg/custom/use-on-g.svg
   63036         Added test: svg/custom/use-on-rect.svg
   63037         Added test: svg/custom/use-on-symbol-inside-pattern.svg
   63038         Added test: svg/custom/use-on-symbol.svg
   63039         Added test: svg/custom/use-on-text.svg
   63040         Added test: svg/custom/use-transform.svg
   63041 
   63042         Fixes: svg/W3C-SVG-1.1/text-text-04-t.svg (missing use elements)
   63043         Fixes: svg/carto.net/button.svg (image buttons didn't appear)
   63044         Fixes: svg/carto.net/colourpicker.svg (slider handles finally show up)
   63045         Fixes: svg/carto.net/slider.svg (slider handles finally show up)
   63046         Fixes: svg/carto.net/window.svg (window decorations show up) 
   63047         Fixes: svg/custom/use-forward-refs.svg (missing use elements)
   63048 
   63049         Rewrite <use> support with a real-shadow tree (as the spec demands), and implement SVGElementInstance.
   63050         AFAIK we're the first implementing this SVG feature - after ASV3 (!).
   63051 
   63052         * DerivedSources.make:
   63053         * WebCore.xcodeproj/project.pbxproj:
   63054         * bindings/objc/DOMInternal.h:
   63055         * bindings/objc/DOMSVG.h:
   63056         * ksvg2/misc/SVGDocumentExtensions.cpp:
   63057         (WebCore::SVGDocumentExtensions::reportWarning):
   63058         (WebCore::SVGDocumentExtensions::reportError):
   63059         (WebCore::SVGDocumentExtensions::addPendingResource):
   63060         (WebCore::SVGDocumentExtensions::isPendingResource):
   63061         (WebCore::SVGDocumentExtensions::removePendingResource):
   63062         (WebCore::SVGDocumentExtensions::mapInstanceToElement):
   63063         (WebCore::SVGDocumentExtensions::removeInstanceMapping):
   63064         (WebCore::SVGDocumentExtensions::instancesForElement):
   63065         * ksvg2/misc/SVGDocumentExtensions.h:
   63066         * ksvg2/svg/SVGCircleElement.cpp:
   63067         (WebCore::SVGCircleElement::notifyAttributeChange):
   63068         * ksvg2/svg/SVGElement.cpp:
   63069         (WebCore::SVGElement::insertedIntoDocument):
   63070         * ksvg2/svg/SVGElement.h:
   63071         (WebCore::SVGElement::buildPendingResource):
   63072         * ksvg2/svg/SVGElementInstance.cpp:
   63073         (WebCore::SVGElementInstance::SVGElementInstance):
   63074         (WebCore::SVGElementInstance::~SVGElementInstance):
   63075         (WebCore::SVGElementInstance::clonedElement):
   63076         (WebCore::SVGElementInstance::correspondingElement):
   63077         (WebCore::SVGElementInstance::correspondingUseElement):
   63078         (WebCore::SVGElementInstance::parentNode):
   63079         (WebCore::SVGElementInstance::childNodes):
   63080         (WebCore::SVGElementInstance::previousSibling):
   63081         (WebCore::SVGElementInstance::nextSibling):
   63082         (WebCore::SVGElementInstance::firstChild):
   63083         (WebCore::SVGElementInstance::lastChild):
   63084         (WebCore::SVGElementInstance::appendChild):
   63085         (WebCore::SVGElementInstance::updateInstance):
   63086         * ksvg2/svg/SVGElementInstance.h:
   63087         * ksvg2/svg/SVGElementInstance.idl: Added.
   63088         * ksvg2/svg/SVGElementInstanceList.cpp:
   63089         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
   63090         (WebCore::SVGElementInstanceList::length):
   63091         (WebCore::SVGElementInstanceList::item):
   63092         * ksvg2/svg/SVGElementInstanceList.h:
   63093         * ksvg2/svg/SVGElementInstanceList.idl: Added.
   63094         * ksvg2/svg/SVGEllipseElement.cpp:
   63095         (WebCore::SVGEllipseElement::notifyAttributeChange):
   63096         * ksvg2/svg/SVGGElement.cpp:
   63097         * ksvg2/svg/SVGGElement.h:
   63098         (WebCore::SVGGElement::contextElement):
   63099         * ksvg2/svg/SVGGradientElement.cpp:
   63100         * ksvg2/svg/SVGGradientElement.h:
   63101         * ksvg2/svg/SVGHiddenElement.h: Added.
   63102         (WebCore::SVGHiddenElement::Type):
   63103         (WebCore::SVGHiddenElement::~SVGHiddenElement):
   63104         (WebCore::SVGHiddenElement::localName):
   63105         * ksvg2/svg/SVGImageElement.cpp:
   63106         (WebCore::SVGImageElement::notifyAttributeChange):
   63107         * ksvg2/svg/SVGLineElement.cpp:
   63108         (WebCore::SVGLineElement::notifyAttributeChange):
   63109         * ksvg2/svg/SVGPathElement.cpp:
   63110         (WebCore::SVGPathElement::notifyAttributeChange):
   63111         * ksvg2/svg/SVGPatternElement.cpp:
   63112         * ksvg2/svg/SVGPatternElement.h:
   63113         * ksvg2/svg/SVGPolyElement.cpp:
   63114         (WebCore::SVGPolyElement::notifyAttributeChange):
   63115         * ksvg2/svg/SVGRectElement.cpp:
   63116         (WebCore::SVGRectElement::notifyAttributeChange):
   63117         * ksvg2/svg/SVGStyledElement.cpp:
   63118         (WebCore::SVGStyledElement::notifyAttributeChange):
   63119         (WebCore::SVGStyledElement::updateElementInstance):
   63120         * ksvg2/svg/SVGStyledElement.h:
   63121         * ksvg2/svg/SVGUseElement.cpp:
   63122         (WebCore::SVGUseElement::instanceRoot):
   63123         (WebCore::SVGUseElement::animatedInstanceRoot):
   63124         (WebCore::SVGUseElement::hasChildNodes):
   63125         (WebCore::SVGUseElement::insertedIntoDocument):
   63126         (WebCore::SVGUseElement::buildPendingResource):
   63127         (WebCore::SVGUseElement::createRenderer):
   63128         (WebCore::SVGUseElement::buildShadowTree):
   63129         (WebCore::SVGUseElement::recursiveShadowTreeBuilder):
   63130         (WebCore::dumpShadowTree):
   63131         (WebCore::SVGUseElement::addShadowTree):
   63132         * ksvg2/svg/SVGUseElement.h:
   63133         * ksvg2/svg/SVGUseElement.idl:
   63134 
   63135 2007-01-19  Eric Seidel  <eric (a] webkit.org>
   63136 
   63137         Reviewed by rwlbuis.
   63138 
   63139         Add support for SVGMPathElement parsing.
   63140 
   63141         No test cases possible (SVGAnimateMotion doesn't work yet)
   63142 
   63143         * WebCore.xcodeproj/project.pbxproj:
   63144         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   63145         (WebCore::SVGAnimateMotionElement::animationPath):
   63146         * ksvg2/svg/SVGMPathElement.cpp: Added.
   63147         (WebCore::SVGMPathElement::SVGMPathElement):
   63148         (WebCore::SVGMPathElement::~SVGMPathElement):
   63149         (WebCore::SVGMPathElement::parseMappedAttribute):
   63150         (WebCore::SVGMPathElement::pathElement):
   63151         * ksvg2/svg/SVGMPathElement.h: Added.
   63152         * ksvg2/svg/SVGNumberList.cpp:
   63153         (WebCore::SVGNumberList::parse): fix typo in comment
   63154         * ksvg2/svg/svgtags.in: add back mpath
   63155 
   63156 2007-01-19  Eric Seidel  <eric (a] webkit.org>
   63157 
   63158         Reviewed by rwlbuis.
   63159 
   63160         Implement better parsing for keyTimes, keySplines and keyPoints.
   63161 
   63162         Unfortunately none of this code is used much yet, thus isn't very testable.
   63163 
   63164         * ksvg2/svg/SVGAnimateMotionElement.cpp:
   63165         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
   63166         * ksvg2/svg/SVGAnimationElement.cpp:
   63167         (WebCore::SVGAnimationElement::parseKeyNumbers):
   63168         (WebCore::parseKeySplines):
   63169         (WebCore::SVGAnimationElement::parseMappedAttribute):
   63170         * ksvg2/svg/SVGAnimationElement.h:
   63171         * ksvg2/svg/SVGNumberList.cpp:
   63172         (WebCore::SVGNumberList::parse):
   63173 
   63174 2007-01-18  Adam Roben  <aroben (a] apple.com>
   63175 
   63176         Reviewed by Beth.
   63177 
   63178         Fix: <rdar://problem/4939672> REGRESSION: With text selected that is
   63179         not a link, the "Remove Link" contextual menu item remains active
   63180 
   63181         * platform/ContextMenuItem.h: Added enabled method.
   63182         * platform/qt/ContextMenuItemQt.cpp:
   63183         (WebCore::ContextMenuItem::enabled): Implemented.
   63184         * platform/mac/ContextMenuItemMac.mm:
   63185         (WebCore::ContextMenuItem::enabled): Ditto.
   63186         * platform/mac/ContextMenuMac.mm:
   63187         (-[WebCoreMenuTarget validateMenuItem:]): Implemented to fulfill the
   63188         NSMenuValidation protocol.
   63189         
   63190 2007-01-18  Beth Dakin  <bdakin (a] apple.com>
   63191 
   63192         Reviewed by Adele.
   63193 
   63194         Fix for <rdar://problem/4939558> REGRESSION: "Search in Google", 
   63195         "Search in Spotlight" and "Look up in Dictionary" are missing 
   63196         initially from the contextual menu
   63197 
   63198         The bug here is that we select the we were selecting the word after 
   63199         the context menu event was dispatched and after the context menu 
   63200         was built up.
   63201 
   63202         * page/EventHandler.cpp:
   63203         (WebCore::EventHandler::sendContextMenuEvent): Select the word 
   63204         before dispatching the event. It is safe to remove the check for 
   63205         swallowEvent since WebCore context menus ensure that we always 
   63206         swallow the event anyway.
   63207 
   63208 2007-01-18  Mark Rowe  <mrowe (a] apple.com>
   63209 
   63210         Reviewed by Tim H.
   63211 
   63212         Fix for http://bugs.webkit.org/show_bug.cgi?id=7926
   63213         Bug 7926: Crash using -callWebScriptMethod to access offsetTop property
   63214 
   63215         * bindings/objc/WebScriptObject.mm:
   63216         (-[WebScriptObject callWebScriptMethod:withArguments:]): Bail out early if function value is an immediate,
   63217         or if the function object is not callable.
   63218 
   63219 2007-01-18  Sam Weinig  <sam (a] webkit.org>
   63220 
   63221         Reviewed by Maciej.
   63222 
   63223         Patch for http://bugs.webkit.org/show_bug.cgi?id=11853
   63224         REGRESSION (r17352): Whitespace in <title> is rendered
   63225 
   63226         * loader/DocumentLoader.cpp:
   63227         (WebCore::canonicalizedTitle): Changed to also collapse internal
   63228         whitespace.  This required removing an optimization that is no
   63229         longer possible.
   63230         * manual-tests/title-internal-whitespace.html: Added.
   63231 
   63232 2007-01-18  Mitz Pettel  <mitz (a] webkit.org>
   63233 
   63234         Reviewed by Maciej.
   63235 
   63236         - fix http://bugs.webkit.org/show_bug.cgi?id=12039
   63237           Assertion failure in WebCore::Font::primaryFont
   63238 
   63239         Test: fast/text/font-initial.html
   63240 
   63241         * css/cssstyleselector.cpp:
   63242         (WebCore::CSSStyleSelector::applyProperty): Give 'font: initial' the
   63243         Standard generic family. This makes the FontDescription different from
   63244         that of the initial font of a GraphicsContext, ensuring that the latter
   63245         will not be used.
   63246 
   63247 2007-01-18  Mitz Pettel  <mitz (a] webkit.org>
   63248 
   63249         Reviewed by Darin.
   63250 
   63251         - fix http://bugs.webkit.org/show_bug.cgi?id=11451
   63252           REGRESSION: Dell.com does not render correctly in ToT (stylesheet not loaded)
   63253 
   63254         Test: http/tests/misc/css-accept-any-type.html
   63255 
   63256         * loader/CachedCSSStyleSheet.cpp:
   63257         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): Changed the accept header
   63258         for stylesheets to "text/css,*/*;q=0.1" to match Firefox, accepting CSS served
   63259         as any type.
   63260 
   63261 2007-01-18  Mitz Pettel  <mitz (a] webkit.org>
   63262 
   63263         Reviewed by Darin.
   63264 
   63265         - fix http://bugs.webkit.org/show_bug.cgi?id=11271
   63266         REGRESSION (r12358): Text in display: table unselectable
   63267 
   63268         Test: editing/selection/display-table-text.html
   63269 
   63270         * editing/htmlediting.cpp:
   63271         (WebCore::isTableElement): Changed to return false for text nodes.
   63272 
   63273 2007-01-18  Mitz Pettel  <mitz (a] webkit.org>
   63274 
   63275         Reviewed by Darin.
   63276 
   63277         - fix http://bugs.webkit.org/show_bug.cgi?id=6218
   63278           CSS1: WebTextRenderer caches and re-uses fallback renderers that are based on family lists
   63279 
   63280         This patch takes character-to-glyph mapping out of FontData and instead makes
   63281         each Font keep its own mapping, using a shared set of glyph page fallback trees.
   63282 
   63283         For each page number there is (at most) one tree. A path from the root to a
   63284         node in the tree corresponds to a fallback list of FontDatas. The node points to
   63285         a page (which may be shared with other nodes) that maps each character in its range
   63286         to a glyph in the first FontData in the fallback list that has it, or to 0 if none of
   63287         the FontDatas has a glyph for that character. A special kind of node, that can
   63288         only occur as a leaf, corresponds to using system fallback fonts after the list
   63289         has been exhausted. This prevents system fallback from polluting non-leaf
   63290         nodes.
   63291 
   63292         Nodes and pages are initialized lazily and employ "copy on write".
   63293 
   63294         * CMakeLists.txt:
   63295         * WebCore.pro:
   63296         * WebCore.vcproj/WebCore/WebCore.vcproj:
   63297         * WebCore.xcodeproj/project.pbxproj:
   63298         * WebCoreSources.bkl:
   63299         * platform/Font.cpp:
   63300         (WebCore::WidthIterator::WidthIterator): Removed substituteFontData.
   63301         (WebCore::WidthIterator::advance): Moved all character-to-glyph mapping logic out
   63302         of here and replaced it with a call to Font::glyphDataForCharacter().
   63303         (WebCore::Font::Font):
   63304         (WebCore::Font::operator=):
   63305         (WebCore::Font::glyphDataForCharacter): Added. This method performs the lookup in the
   63306         page fallback trees, triggering lazy initialization as needed, and caching pointers to
   63307         the retrieved page tree nodes in the font.
   63308         (WebCore::Font::update):
   63309         (WebCore::Font::drawSimpleText):
   63310         (WebCore::Font::floatWidth):
   63311         (WebCore::Font::floatWidthForSimpleText): Removed substituteFont argument.
   63312         (WebCore::Font::offsetForPositionForSimpleText):
   63313         * platform/Font.h:
   63314         * platform/FontData.cpp:
   63315         (WebCore::FontData::FontData):
   63316         * platform/FontData.h:
   63317         (WebCore::FontData::missingGlyphData): Added. Returns the "missing glyph" GlyphData for
   63318         this FontData.
   63319         * platform/GlyphMap.cpp: Removed.
   63320         * platform/GlyphMap.h: Removed.
   63321         * platform/GlyphPageTreeNode.cpp: Renamed GlyphMap.cpp to this.
   63322         (WebCore::GlyphPageTreeNode::getRoot): Added. Returns the root of the page fallback tree for
   63323         the given page number.
   63324         (WebCore::GlyphPageTreeNode::initializePage): Added. Helper method that initializes the page
   63325         pointer of a node, possibly to a pointer to another node's page or to 0.
   63326         (WebCore::GlyphPageTreeNode::getChild): Added.
   63327         * platform/GlyphPageTreeNode.h: Renamed GlyphMap.h to this.
   63328         (WebCore::GlyphPage::glyphDataForCharacter):
   63329         (WebCore::GlyphPage::setGlyphDataForCharacter):
   63330         (WebCore::GlyphPage::setGlyphDataForIndex):
   63331         (WebCore::GlyphPageTreeNode::GlyphPageTreeNode):
   63332         (WebCore::GlyphPageTreeNode::getRootChild):
   63333         (WebCore::GlyphPageTreeNode::parent):
   63334         (WebCore::GlyphPageTreeNode::page):
   63335         (WebCore::GlyphPageTreeNode::level):
   63336         (WebCore::GlyphPageTreeNode::isSystemFallback): Added. Returns whether the node corresponds
   63337         to the system providing fallback fonts, which is done on a character-by-character basis.
   63338         * platform/gdk/GlyphMapGdk.cpp: Removed.
   63339         * platform/gdk/GlyphPageTreeNodeGdk.cpp: Renamed GlyphMapGdk.cpp to this.
   63340         (WebCore::GlyphPage::fill):
   63341         * platform/mac/FontDataMac.mm:
   63342         (WebCore::FontData::platformInit):
   63343         * platform/mac/FontMac.mm:
   63344         (WebCore::Font::Font):
   63345         * platform/mac/GlyphMapMac.cpp: Removed.
   63346         * platform/mac/GlyphPageTreeNodeMac.cpp: Renamed GlypMapMac.cpp to this.
   63347         (WebCore::GlyphPage::fill): Changed to return false if the font has no glyphs in the page.
   63348         * platform/qt/GlyphMapQt.cpp: Removed.
   63349         * platform/qt/GlyphPageTreeNodeQt.cpp: Renamed GlyphMapQt.cpp to this.
   63350         (WebCore::GlyphPage::fill):
   63351         * platform/win/GlyphMapWin.cpp: Removed.
   63352         * platform/win/GlyphPageTreeNodeWin.cpp: Renamed GlyphMapWin to this.
   63353         (WebCore::GlyphPage::fill):
   63354 
   63355 2007-01-18  Mitz Pettel  <mitz (a] webkit.org>
   63356 
   63357         Reviewed by Darin.
   63358 
   63359         - fix http://bugs.webkit.org/show_bug.cgi?id=9952
   63360           REGRESSION: Repro crash when dragging an image from the window to the address bar
   63361 
   63362         * page/FrameView.cpp:
   63363         (WebCore::FrameView::~FrameView): Removed the call to Document::detach(). If this
   63364         view is the current view, then the Frame should have already detached the document.
   63365         Added an assertion that this is the case. If this view is not the current view,
   63366         then it cannot access its document, but the page cache should have detached it already.
   63367         Similarly, changed to call RenderPart::setWidget() only if this is the current view
   63368         in the frame.
   63369         (WebCore::FrameView::adjustViewSize): Added an assertion that this view is the current
   63370         view in the frame.
   63371         (WebCore::FrameView::layout): Ditto.
   63372         (WebCore::FrameView::scheduleRelayout): Ditto.
   63373         (WebCore::FrameView::scheduleRelayoutOfSubtree): Ditto.
   63374         (WebCore::FrameView::windowClipRect): Ditto.
   63375 
   63376 2007-01-18  Eric Seidel  <eric (a] webkit.org>
   63377 
   63378         Reviewed by bdash.
   63379 
   63380         No test needed, removed bogus debug-only ASSERT.
   63381 
   63382         * rendering/RenderSVGContainer.cpp:
   63383         (WebCore::RenderSVGContainer::paint):
   63384 
   63385 2007-01-18  Alice Liu  <alice.liu (a] apple.com>
   63386 
   63387         Build Fix
   63388 
   63389         * platform/mac/PasteboardMac.mm:
   63390         (WebCore::Pasteboard::writeSelection):
   63391 
   63392 2007-01-18  Alice Liu  <alice.liu (a] apple.com>
   63393 
   63394         Reviewed by Mark Rowe.
   63395 
   63396         Fixes the leaks from my last patch, except for the first change below which is a missing delegate call for Mail purposes
   63397 
   63398         * editing/Editor.cpp:
   63399         (WebCore::Editor::cut):
   63400         * platform/Pasteboard.h:
   63401         * platform/mac/PasteboardMac.mm:
   63402         (WebCore::Pasteboard::Pasteboard):
   63403         (WebCore::Pasteboard::clear):
   63404         (WebCore::Pasteboard::writeSelection):
   63405         (WebCore::Pasteboard::writeURL):
   63406         (WebCore::Pasteboard::plainText):
   63407         (WebCore::Pasteboard::documentFragment):
   63408 
   63409 2007-01-18  David Hyatt  <hyatt (a] apple.com>
   63410 
   63411         Make sure layer autoscrolling puts the event coordinates into the layer's coordinate space before
   63412         calling hitTest on it.  Fixes "flashy" selection in textareas.
   63413 
   63414         Reviewed by darin
   63415 
   63416         * rendering/RenderLayer.cpp:
   63417         (WebCore::RenderLayer::autoscroll):
   63418         * rendering/RenderTextControl.cpp:
   63419         (WebCore::RenderTextControl::nodeAtPoint):
   63420 
   63421 2007-01-18  Anders Carlsson  <acarlsson (a] apple.com>
   63422 
   63423         Reviewed by Adam.
   63424 
   63425         Get rid of ResourceLoaderMac.mm and make willCacheResponse platform-independent.
   63426         
   63427         * loader/ResourceLoader.cpp:
   63428         (WebCore::ResourceLoader::willCacheResponse):
   63429         * loader/ResourceLoader.h:
   63430         * loader/mac/ResourceLoaderMac.mm: Removed.
   63431         * platform/network/ResourceHandleClient.h:
   63432         (WebCore::):
   63433         (WebCore::ResourceHandleClient::willCacheResponse):
   63434         (WebCore::ResourceHandleClient::willStopBufferingData):
   63435         * platform/network/mac/ResourceHandleMac.mm:
   63436         (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
   63437 
   63438 2007-01-18  Maciej Stachowiak  <mjs (a] apple.com>
   63439 
   63440         Reviewed by John.
   63441 
   63442         - fixed <rdar://problem/4887416> REGRESSION (SearchField): Assertion failure in HTMLInputElement::setValueFromRenderer when editing via drag and drop (11846)
   63443         http://bugs.webkit.org/show_bug.cgi?id=11846
   63444         
   63445         * editing/ReplaceSelectionCommand.cpp:
   63446         (WebCore::ReplaceSelectionCommand::doApply): Don't insert extra paragraph separators to avoid
   63447         nesting blocks in plaintext mode, since that's not an issue under normal circumstances.
   63448         * html/HTMLInputElement.h:
   63449         * manual-tests/drag-move-in-search-field.html: Added.
   63450         * rendering/RenderTextControl.cpp:
   63451         (WebCore::RenderTextControl::subtreeHasChanged): constrain the value; we'd
   63452         rather truncate it than end up with an illegal value here.
   63453 
   63454 2007-01-18  Simon Hausmann  <hausmann (a] kde.org>
   63455 
   63456         Reviewed by Zack.
   63457 
   63458         * WebCore.pro: Ha^H^HFix to support massive parallel builds.
   63459 
   63460 2007-01-18  David Kilzer  <ddkilzer (a] kilzer.net>
   63461 
   63462         Reviewed by Darin and Mitz.
   63463 
   63464         - fix http://bugs.webkit.org/show_bug.cgi?id=12305
   63465           REGRESSION: Images do not load in video sections on CNN.com homepage
   63466 
   63467         <rdar://problem/4931480> REGRESSION: Images do not load in video sections on CNN.com homepage (12305)
   63468 
   63469         Test: fast/dom/HTMLImageElement/image-lowsrc-getset.html
   63470 
   63471         * html/HTMLAttributeNames.in: Added lowsrc.
   63472         * html/HTMLImageElement.cpp:
   63473         (WebCore::HTMLImageElement::isURLAttribute): Added lowsrc.
   63474         (WebCore::HTMLImageElement::lowsrc): Added.
   63475         (WebCore::HTMLImageElement::setLowsrc): Added.
   63476         * html/HTMLImageElement.h: Added lowsrc and setLowsrc.
   63477         * html/HTMLImageElement.idl: Added lowsrc.
   63478 
   63479 2007-01-18  Simon Hausmann  <hausmann (a] kde.org>
   63480 
   63481         Reviewed by Zack.
   63482 
   63483         * WebCore.pro: Remove generated files on make clean.
   63484 
   63485 2007-01-17  Alice Liu  <alice.liu (a] apple.com>
   63486 
   63487         Reviewed by Harrison.
   63488 
   63489         Fix for <rdar://problem/4894155> REGRESSION: Extra line break is pasted with content into message body after choosing File - Paste
   63490 
   63491         Migration of some editing code from WebHTMView to WebCore::Editor
   63492         resulted in not calling pasteboardTypesForSelection, which Mail was
   63493         overriding for the special purpose of adding a type to the
   63494         pasteboard after WebKit did.  This patch adds 2 separate code paths
   63495         for Tiger and Leopard.  On Tiger we give in and call the WebView's
   63496         pasteboardTypesForSelection.  On Leopard we call a delegate after
   63497         the pasteboard types are set. 
   63498 
   63499         * bridge/EditorClient.h:
   63500         * editing/Editor.h:
   63501         * platform/Pasteboard.h:
   63502         * platform/graphics/svg/SVGImageEmptyClients.h:
   63503         (WebCore::SVGEmptyEditorClient::didSetSelectionTypesForPasteboard):
   63504         (WebCore::SVGEmptyEditorClient::pasteboardTypesForSelection):
   63505         * platform/mac/PasteboardMac.mm:
   63506         (WebCore::Pasteboard::Pasteboard):
   63507         (WebCore::Pasteboard::clear):
   63508         (WebCore::Pasteboard::writeSelection):
   63509         (WebCore::Pasteboard::writeURL):
   63510         (WebCore::Pasteboard::plainText):
   63511         (WebCore::Pasteboard::documentFragment):
   63512 
   63513 2007-01-17  John Sullivan  <sullivan (a] apple.com>
   63514 
   63515         Reviewed by Darin
   63516 
   63517         - WebCore part of fix for <rdar://problem/4462420> REGRESSION: Mail hangs during 
   63518           Replace All if the replacement string contains the search string
   63519         
   63520         * page/Frame.h:
   63521         * page/Frame.cpp:
   63522         (WebCore::Frame::findString):
   63523         new startInSelection parameter -- if true, search starts looking in selection; if false,
   63524         search starts looking after the selection
   63525         
   63526         * page/mac/WebCoreFrameBridge.h:
   63527         * page/mac/WebCoreFrameBridge.mm:
   63528         (-[WebCoreFrameBridge searchFor:direction:caseSensitive:wrap:startInSelection:]):
   63529         new startInSelection parameter, passed through to Frame::findString()
   63530 
   63531         * editing/JSEditor.cpp:
   63532         pass false for new findString parameter, to match old behavior
   63533 
   63534 2007-01-17  Beth Dakin  <bdakin (a] apple.com>
   63535 
   63536         Rubber stamped by Darin.
   63537 
   63538         * rendering/HitTestResult.cpp: Just added a comment.
   63539 
   63540 2007-01-17  Justin Garcia  <justin.garcia (a] apple.com>
   63541 
   63542         Reviewed by darin
   63543         
   63544         <rdar://problem/4920488>
   63545         REGRESSION: A crash occurs at WebCore::Range::processContents () when removing formatting from selected text (that contains a link)
   63546 
   63547         * dom/Range.cpp:
   63548         (WebCore::Range::commonAncestorContainer): Return null if the nodes
   63549         don't have a common ancestor.  As a side effect, the public 
   63550         commonAncestorContainer now sets an exception if the Range starts
   63551         in one document and ends in another, or starts or ends in a tree
   63552         that's been removed from the document.  The spec doesn't cover
   63553         this and there is no precedent in other browsers for this case because
   63554         they don't allow invalid Ranges (you can create one with WebCore
   63555         by removing a node that contains the start/end of a Range).
   63556         (WebCore::Range::compareBoundaryPoints): If the the two positions
   63557         are in nodes that have no common ancestor, return null.  This doesn't
   63558         change the behavior of the public compareBoundaryPoints: it already
   63559         throws an exception if the two positions are in nodes that don't have
   63560         a common ancestor.  This follows the spec.
   63561 
   63562 2007-01-17  John Sullivan  <sullivan (a] apple.com>
   63563 
   63564         The one word was typed by me, but only after debugging for a long time with Darin.
   63565 
   63566         - fixed <rdar://problem/4912002> REGRESSION: Series of words marked as a single misspelled word
   63567 
   63568         * editing/TextIterator.cpp:
   63569         (WebCore::WordAwareIterator::WordAwareIterator):
   63570         We were creating a TextIterator with the default kind, but WordAwareIterator is designed to work
   63571         in concert with CharacterIterator, so they need to use the same kind. CharacterIterator uses
   63572         kind RUNFINDER, so WordAwareIterator needs to do so also.
   63573 
   63574 2007-01-17  Adele Peterson  <adele (a] apple.com>
   63575 
   63576         Reviewed by Brady.
   63577 
   63578         Fix for <rdar://problem/4900895> REGRESSION: onChange doesn't always fire for popups that have had value changed by JS
   63579 
   63580         No test case since you need to open up the menu to fire onChange.
   63581 
   63582         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setSelectedIndex):
   63583           Keep track of m_lastOnChangeIndex even when we're not firing onChange.  Since
   63584           the selected index has changed, we still want the m_lastOnChangeIndex to be up to date when we compare
   63585           it later.  This matches our behavior in Safari 2.0.
   63586 
   63587 2007-01-17  Adele Peterson  <adele (a] apple.com>
   63588 
   63589         Reviewed by Darin and John.
   63590 
   63591         - Fix for <rdar://problem/4816550> REGRESSION: autoscrolling doesn't work after double-click
   63592 
   63593         * page/EventHandler.cpp: (WebCore::EventHandler::handleMousePressEvent): Set swallowEvent bool instead
   63594           of returning early for double and triple clicks.
   63595 
   63596 2007-01-17  Darin Adler  <darin (a] apple.com>
   63597 
   63598         Reviewed by Hyatt.
   63599 
   63600         * rendering/RenderObject.h: Removed unused nextEditable and previousEditable.
   63601         * rendering/RenderObject.cpp: Ditto.
   63602 
   63603 2007-01-17  Darin Adler  <darin (a] apple.com>
   63604 
   63605         Reviewed by Maciej.
   63606 
   63607         - fix http://bugs.webkit.org/show_bug.cgi?id=12278
   63608           <rdar://problem/4928705> REGRESSION(r13070): Dragged image size includes padding (12278)
   63609 
   63610         * WebCore.exp: Added HitTestResult::imageRect,
   63611         removed HitTestResult::boundingBox.
   63612 
   63613         * rendering/HitTestResult.h:
   63614         * rendering/HitTestResult.cpp: (WebCore::HitTestResult::imageRect):
   63615         Added. Returns the content rectangle of the image.
   63616 
   63617         * rendering/RenderObject.h:
   63618         * rendering/RenderObject.cpp:
   63619         (WebCore::RenderObject::absolutePosition): Made const.
   63620         (WebCore::RenderObject::contentBox): Added.
   63621         (WebCore::RenderObject::absoluteContentBox): Added.
   63622 
   63623         * rendering/RenderBox.h:
   63624         * rendering/RenderBox.cpp:
   63625         (WebCore::RenderBox::absolutePosition): Made const.
   63626 
   63627         * rendering/RenderTableCell.h:
   63628         * rendering/RenderTableCell.cpp:
   63629         (WebCore::RenderTableCell::absolutePosition): Made const.
   63630 
   63631         * rendering/RenderView.h:
   63632         * rendering/RenderView.cpp:
   63633         (WebCore::RenderView::absolutePosition): Made const.
   63634 
   63635 2007-01-17  Adele Peterson  <adele (a] apple.com>
   63636 
   63637         Reviewed by Beth.
   63638 
   63639         Fix for  http://bugs.webkit.org/show_bug.cgi?id=10139
   63640         <rdar://problem/4823028> REGRESSION: Reproducible crash when selecting a popup/button with ::selection pseudostyle
   63641 
   63642         Test: fast/css/pseudostyle-anonymous-text.html
   63643 
   63644         * rendering/RenderObject.cpp: (WebCore::RenderObject::getPseudoStyle): Nil check the node.
   63645 
   63646 2007-01-17  Adele Peterson  <adele (a] apple.com>
   63647 
   63648         Reviewed by Anders and John.
   63649 
   63650         Fix for http://bugs.webkit.org/show_bug.cgi?id=11278
   63651         <rdar://problem/4826875> REGRESSION: Popup width doesn't change to accommodate dynamic changes to options
   63652 
   63653         Test: fast/forms/menulist-width-change.html
   63654 
   63655         * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
   63656           When the options change, call setNeedsLayoutAndMinMaxRecalc.
   63657 
   63658 2007-01-16  Alexey Proskuryakov  <ap (a] webkit.org>
   63659 
   63660         Reviewed by Maciej.
   63661 
   63662         http://bugs.webkit.org/show_bug.cgi?id=12268
   63663         Give object prototypes their own names
   63664 
   63665         * bindings/js/kjs_html.cpp: Changed the names of KJS:HTMLElement and KJS::HTMLElement to 
   63666         not match the names of their WebCore counterparts. The "DOM" prefix I gave them doesn't 
   63667         seem to carry much sense, but matches some other kjs_html object names.
   63668 
   63669         * bindings/scripts/CodeGeneratorJS.pm: Append "Proto" to interface name for the prototype's ClassInfo.
   63670 
   63671         * bindings/js/JSHTMLInputElementBase.cpp:
   63672         (WebCore::JSHTMLInputElementBasePrototypeFunction::callAsFunction):
   63673         (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
   63674         * bindings/js/JSHTMLInputElementBase.h:
   63675         * bindings/js/JSXMLHttpRequest.cpp:
   63676         (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
   63677         (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
   63678         (KJS::JSXMLHttpRequestPrototypeFunction::callAsFunction):
   63679         * bindings/js/JSXMLHttpRequest.h:
   63680         * bindings/js/JSXSLTProcessor.cpp:
   63681         (KJS::JSXSLTProcessor::JSXSLTProcessor):
   63682         (KJS::XSLTProcessorPrototypeFunction::callAsFunction):
   63683         (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
   63684         * bindings/js/kjs_css.cpp:
   63685         (KJS::DOMCSSStyleDeclaration::DOMCSSStyleDeclaration):
   63686         (KJS::DOMCSSStyleDeclarationPrototypeFunction::callAsFunction):
   63687         (KJS::DOMMediaList::DOMMediaList):
   63688         (KJS::KJS::DOMMediaListPrototypeFunction::callAsFunction):
   63689         (KJS::DOMCSSStyleSheet::DOMCSSStyleSheet):
   63690         (KJS::DOMCSSStyleSheetPrototypeFunction::callAsFunction):
   63691         (KJS::DOMCSSValue::DOMCSSValue):
   63692         (KJS::DOMCSSValuePrototypeFunction::callAsFunction):
   63693         * bindings/js/kjs_css.h:
   63694         * bindings/js/kjs_dom.cpp:
   63695         (KJS::DOMNode::DOMNode):
   63696         (KJS::DOMNodePrototypeFunction::callAsFunction):
   63697         (KJS::DOMEventTargetNode::DOMEventTargetNode):
   63698         (KJS::DOMEventTargetNodePrototypeFunction::callAsFunction):
   63699         (KJS::DOMNamedNodeMap::DOMNamedNodeMap):
   63700         (KJS::DOMNamedNodeMapPrototypeFunction::callAsFunction):
   63701         * bindings/js/kjs_dom.h:
   63702         * bindings/js/kjs_domnode.h:
   63703         * bindings/js/kjs_events.cpp:
   63704         (KJS::DOMEvent::DOMEvent):
   63705         (KJS::DOMEventPrototypeFunction::callAsFunction):
   63706         (KJS::Clipboard::Clipboard):
   63707         (KJS::ClipboardPrototypeFunction::callAsFunction):
   63708         * bindings/js/kjs_events.h:
   63709         * bindings/js/kjs_html.cpp:
   63710         (KJS::JSHTMLDocumentPrototypeFunction::callAsFunction):
   63711         (KJS::):
   63712         (KJS::JSHTMLDocument::JSHTMLDocument):
   63713         (KJS::JSHTMLElementPrototypeFunction::callAsFunction):
   63714         (KJS::JSHTMLElement::JSHTMLElement):
   63715         (KJS::JSHTMLCollection::JSHTMLCollection):
   63716         (KJS::JSHTMLCollectionPrototypeFunction::callAsFunction):
   63717         * bindings/js/kjs_html.h:
   63718         * bindings/js/kjs_navigator.cpp:
   63719         * bindings/js/kjs_traversal.cpp:
   63720         (KJS::DOMNodeFilter::DOMNodeFilter):
   63721         (KJS::DOMNodeFilterPrototypeFunction::callAsFunction):
   63722         * bindings/js/kjs_window.cpp:
   63723         (KJS::Window::clear):
   63724         Changed Proto to Prototype, and ProtoFunc to PrototypeFunction.
   63725 
   63726 2007-01-17  Lars Knoll <lars (a] trolltech.com>
   63727 
   63728         Reviewed by Zack and Darin
   63729 
   63730         Fix the Qt build again after the latest Image changes.
   63731         Also make some of the methods implemented in ImageCG 
   63732         crossplatform.
   63733 
   63734         * platform/graphics/BitmapImage.h:
   63735         * platform/graphics/Image.cpp:
   63736         (WebCore::Image::fillWithSolidColor):
   63737         (WebCore::calculatePatternScale):
   63738         (WebCore::Image::drawTiled):
   63739         * platform/graphics/Image.h:
   63740         * platform/graphics/cg/ImageCG.cpp:
   63741         (WebCore::BitmapImage::draw):
   63742         * platform/graphics/qt/ImageQt.cpp:
   63743         (WebCore::Image::loadPlatformResource):
   63744         (WebCore::Image::drawPattern):
   63745         (WebCore::BitmapImage::initPlatformData):
   63746         (WebCore::BitmapImage::invalidatePlatformData):
   63747         (WebCore::BitmapImage::draw):
   63748         (WebCore::BitmapImage::drawPattern):
   63749         * platform/qt/TemporaryLinkStubs.cpp:
   63750 
   63751 2007-01-17  Darin Adler  <darin (a] apple.com>
   63752 
   63753         - quick attempt to fix the Qt build
   63754 
   63755         * platform/graphics/qt/ImageQt.cpp: (WebCore::BitmapImage::drawTiled):
   63756         Remove obsolete parameters from this stub.
   63757 
   63758 2007-01-17  Eric Seidel  <eric (a] webkit.org>
   63759 
   63760         Reviewed by rwlbuis.
   63761 
   63762         Test: svg/custom/inner-svg-hit-test.svg
   63763 
   63764         * rendering/RenderSVGContainer.cpp:
   63765         (WebCore::RenderSVGContainer::nodeAtPoint): never allow containers to be hit.
   63766 
   63767 2007-01-17  Lars Knoll <lars (a] trolltech.com>
   63768 
   63769         Reviewed by Zack
   63770 
   63771         Don't call receivedResponse twice for file: URLs.
   63772         Never call back into the ResourceHandleClient once
   63773         cancel() has been called on the ResourceHandle.
   63774 
   63775         * WebCore.pro:
   63776         * platform/network/qt/ResourceHandleManagerQt.cpp:
   63777         (WebCore::ResourceHandleManager::cancel):
   63778         (WebCore::ResourceHandleManager::receivedResponse):
   63779         (WebCore::ResourceHandleManager::receivedData):
   63780         (WebCore::ResourceHandleManager::receivedFinished):
   63781         (WebCore::FileLoader::request):
   63782         (WebCore::FileLoader::parseDataUrl):
   63783         (WebCore::WebCoreHttp::scheduleNextRequest):
   63784         * platform/network/qt/ResourceHandleManagerQt.h:
   63785 
   63786 2007-01-17  Eric Seidel  <eric (a] webkit.org>
   63787 
   63788         No review, build fix only.
   63789 
   63790         * platform/graphics/cg/ImageCG.cpp: correct drawPatternCombined to drawPattern
   63791         (WebCore::Image::drawPattern):
   63792         (WebCore::Image::drawTiled):
   63793 
   63794 2007-01-17  Eric Seidel  <eric (a] webkit.org>
   63795 
   63796         Reviewed by mitz and rwlbuis.
   63797         
   63798         SVGs do not work as background images:
   63799         http://bugs.webkit.org/show_bug.cgi?id=12096
   63800 
   63801         Tests updated:
   63802         - fast/images/svg-as-background.svg: now passes
   63803         - fast/images/svg-as-tiled-background.svg: now passes
   63804 
   63805         * platform/graphics/BitmapImage.h:
   63806         (WebCore::BitmapImage::nativeImageForCurrentFrame):
   63807         (WebCore::BitmapImage::mayFillWithSolidColor):
   63808         (WebCore::BitmapImage::solidColor):
   63809         * platform/graphics/Image.h:
   63810         (WebCore::Image::mayFillWithSolidColor):
   63811         (WebCore::Image::solidColor):
   63812         (WebCore::Image::nativeImageForCurrentFrame):
   63813         (WebCore::Image::startAnimation):
   63814         * platform/graphics/cg/ImageCG.cpp:
   63815         (WebCore::Image::drawPatternCallback):
   63816         (WebCore::Image::drawPatternCombined):
   63817         (WebCore::caculatePatternScale):
   63818         (WebCore::Image::drawTiled):
   63819         * platform/graphics/cg/PDFDocumentImage.cpp:
   63820         * platform/graphics/cg/PDFDocumentImage.h:
   63821         * platform/graphics/svg/SVGImage.cpp:
   63822         (WebCore::SVGImage::nativeImageForCurrentFrame):
   63823         * platform/graphics/svg/SVGImage.h:
   63824 
   63825 2007-01-17  Rob Buis  <buis (a] kde.org>
   63826 
   63827         Reviewed by Eric
   63828 
   63829         Add proper condition for rx attribute negative check.
   63830 
   63831         * ksvg2/svg/SVGRectElement.cpp:
   63832         (WebCore::SVGRectElement::parseMappedAttribute):
   63833 
   63834 2007-01-17  Lars Knoll <lars (a] trolltech.com>
   63835 
   63836         Reviewed by Zack
   63837 
   63838         change all notImplemented() macros to use qDebug
   63839         instead of fprintf(stder, ...)
   63840 
   63841         * loader/qt/DocumentLoaderQt.cpp:
   63842         * loader/qt/FrameLoaderQt.cpp:
   63843         * page/qt/EventHandlerQt.cpp:
   63844         * page/qt/FrameQt.cpp:
   63845         * platform/graphics/qt/GraphicsContextQt.cpp:
   63846         * platform/graphics/qt/IconQt.cpp:
   63847         * platform/network/qt/ResourceHandleManagerQt.cpp:
   63848         * platform/network/qt/ResourceHandleQt.cpp:
   63849         * platform/qt/CursorQt.cpp:
   63850         * platform/qt/FileChooserQt.cpp:
   63851         * platform/qt/MimeTypeRegistryQt.cpp:
   63852         * platform/qt/PageQt.cpp: Removed.
   63853         * platform/qt/PopupMenuQt.cpp:
   63854         * platform/qt/ScrollViewQt.cpp:
   63855         * platform/qt/TemporaryLinkStubs.cpp:
   63856         * platform/qt/TextBoundaries.cpp:
   63857         * platform/qt/WidgetQt.cpp:
   63858 
   63859 2007-01-16  Brady Eidson  <beidson (a] apple.com>
   63860 
   63861         Reviewed by Oliver
   63862 
   63863         A few enhancements to the HTTP Auth architecture
   63864 
   63865         * platform/network/ProtectionSpace.cpp:
   63866         (WebCore::ProtectionSpace::isProxy):
   63867         (WebCore::ProtectionSpace::receivesCredentialSecurely):
   63868         * platform/network/ProtectionSpace.h:
   63869 
   63870 2007-01-16  Alice Liu  <alice.liu (a] apple.com>
   63871 
   63872         Reviewed by harrison.
   63873 
   63874         Fixed <rdar://problem/4921134> WebKit needs extensible cut/copy to allow additional types to be written to pasteboard
   63875 
   63876         * WebCore.xcodeproj/project.pbxproj:
   63877         * bridge/EditorClient.h:
   63878         * editing/Editor.cpp:
   63879         (WebCore::Editor::copy):
   63880         (WebCore::Editor::didWriteSelectionToPasteboard):
   63881         * editing/Editor.h:
   63882         * platform/graphics/svg/SVGImageEmptyClients.h:
   63883         (WebCore::SVGEmptyEditorClient::didWriteSelectionToPasteboard):
   63884 
   63885 2007-01-16  Justin Garcia  <justin.garcia (a] apple.com>
   63886 
   63887         Reviewed by harrison
   63888         
   63889         <rdar://problem/4747450>
   63890         Gmail Editor: Caret doesn't always position itself after list marker
   63891         <rdar://problem/4917055>
   63892         GMail Editor: A hang can occur when attempting to apply list styling to selected indented text
   63893 
   63894         * editing/TextIterator.cpp:
   63895         (WebCore::TextIterator::rangeFromLocationAndLength): Use VisiblePositions
   63896         to compute the end of a run for emitted '\n's, because it's often wrong
   63897         in that case.
   63898 
   63899 2007-01-16  Darin Adler  <darin (a] apple.com>
   63900 
   63901         - quick lame attempt to get Qt compiling again
   63902 
   63903         * platform/qt/ContextMenuQt.cpp: Removed show() function.
   63904 
   63905 2007-01-17  Nicholas Shanks  <contact (a] nickshanks.com>
   63906 
   63907         Reviewed by Darin.
   63908 
   63909         * platform/network/ResourceRequest.h:
   63910         (WebCore::ResourceRequest::setHTTPAccept): Correct argument name.
   63911 
   63912 2007-01-16  Beth Dakin  <bdakin (a] apple.com>
   63913 
   63914         Reviewed by Adam.
   63915 
   63916         Get rid of show() and hide() since they don't do anything.
   63917 
   63918         * page/ContextMenuController.cpp:
   63919         (WebCore::ContextMenuController::handleContextMenuEvent):
   63920         * platform/ContextMenu.h:
   63921         * platform/mac/ContextMenuMac.mm:
   63922 
   63923 2007-01-16  Lars Knoll <lars (a] trolltech.com>
   63924 
   63925         Reviewed by Zack
   63926 
   63927         Cleaned up the way we create native widgets. They are
   63928         now not created in WebCore anymore, but in the new
   63929         Qt API to WebKit.
   63930 
   63931         Fix a compile issue in the ResourceHandleManager.
   63932 
   63933         * WebCore.pro:
   63934         * platform/ScrollView.h:
   63935         * platform/Widget.h:
   63936         (WebCore::ResourceHandleManager::cancel):
   63937         * platform/qt/ScrollViewCanvasQt.cpp:
   63938         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
   63939         (WebCore::ScrollViewCanvasQt::paintEvent):
   63940         (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
   63941         (WebCore::ScrollViewCanvasQt::mousePressEvent):
   63942         (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
   63943         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
   63944         * platform/qt/ScrollViewCanvasQt.h:
   63945         * platform/qt/ScrollViewQt.cpp:
   63946         (WebCore::ScrollView::ScrollView):
   63947         (WebCore::ScrollView::setScrollArea):
   63948         (WebCore::ScrollView::addChild):
   63949         * platform/qt/WidgetQt.cpp:
   63950         * platform/network/qt/ResourceHandleManagerQt.cpp:
   63951 
   63952 2007-01-16  Lars Knoll <lars (a] trolltech.com>
   63953 
   63954         Reviewed by Zack
   63955 
   63956         Looks like ResourceHandle _has_ to do everything
   63957         asynchronously if we don't want to run into
   63958         lots of trouble in the loader.
   63959 
   63960         Implement support data: URLs.
   63961 
   63962         Remove some unused Qt only code in ResourceHandleClient.h
   63963 
   63964         * platform/network/ResourceHandleClient.h:
   63965         * platform/network/qt/ResourceHandleManagerQt.cpp:
   63966         (WebCore::RequestQt::setURL):
   63967         (WebCore::ResourceHandleManager::add):
   63968         (WebCore::ResourceHandleManager::cancel):
   63969         (WebCore::ResourceHandleManager::receivedFinished):
   63970         (WebCore::LoaderThread::run):
   63971         (WebCore::FileLoader::request):
   63972         (WebCore::FileLoader::sendData):
   63973         (WebCore::FileLoader::parseDataUrl):
   63974         * platform/network/qt/ResourceHandleManagerQt.h:
   63975 
   63976 2007-01-16  Eric Seidel  <eric (a] webkit.org>
   63977 
   63978         Reviewed by mitz.
   63979 
   63980         Refactor drawTiled implementations in preparation for combining them.
   63981         Removed unused RoundTile code path.
   63982 
   63983         * platform/graphics/cg/ImageCG.cpp:
   63984         (WebCore::drawPattern):
   63985         (WebCore::BitmapImage::drawTiled):
   63986         (WebCore::caculatePatternScale):
   63987 
   63988 2007-01-16  Darin Adler  <darin (a] apple.com>
   63989 
   63990         Reviewed by Mark Rowe.
   63991 
   63992         - removed unused field from loader
   63993 
   63994         * loader/loader.cpp:
   63995         (WebCore::Loader::numRequests):
   63996         (WebCore::Loader::cancelRequests):
   63997         * loader/loader.h:
   63998 
   63999 2007-01-15  Rob Buis  <buis (a] kde.org>
   64000 
   64001         Reviewed by Eric.
   64002 
   64003         http://bugs.webkit.org/show_bug.cgi?id=12272
   64004         SVG picture is clipped (edges not visible)
   64005 
   64006         Expose css dpi constant and use it for svg, making
   64007         1in amount to 96 pixels like for html.
   64008 
   64009         * css/CSSPrimitiveValue.cpp:
   64010         (WebCore::CSSPrimitiveValue::computeLengthFloat):
   64011         (WebCore::scaleFactorForConversion):
   64012         * css/csshelper.h:
   64013         * ksvg2/svg/SVGLength.cpp:
   64014         (WebCore::SVGLength::value):
   64015         (WebCore::SVGLength::setValue):
   64016         * ksvg2/svg/SVGLength.h:
   64017 
   64018 2007-01-15  Brady Eidson  <beidson (a] apple.com>
   64019 
   64020         Reviewed by Adam
   64021         
   64022         CFNet additions
   64023 
   64024         * platform/network/AuthenticationChallenge.cpp:
   64025         (WebCore::operator==):
   64026         * platform/network/AuthenticationChallenge.h:
   64027         (WebCore::AuthenticationChallenge::sourceHandle):
   64028         (WebCore::AuthenticationChallenge::cfURLAuthChallengeRef):
   64029         * platform/network/ResourceError.h:
   64030         * platform/network/ResourceHandle.h:
   64031         * platform/network/ResourceHandleInternal.h:
   64032         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   64033 
   64034 2007-01-15  Eric Seidel  <eric (a] webkit.org>
   64035 
   64036         Reviewed by hyatt.
   64037 
   64038         Don't map attributes in namespaces other than null to CSS properties.
   64039         
   64040         Test: svg/custom/attribute-namespace-check.svg
   64041 
   64042         * ksvg2/svg/SVGStyledElement.cpp:
   64043         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
   64044 
   64045 2007-01-15  Lars Naesbye Christensen  <lars (a] naesbye.dk>
   64046 
   64047         Reviewed by Darin.
   64048 
   64049         - http://bugs.webkit.org/show_bug.cgi?id=11112
   64050           add a drop shadow to the hand cursor used for links
   64051 
   64052         * Resources/linkCursor.png: Added a drop shadow.
   64053 
   64054 2007-01-15  Darin Adler  <darin (a] apple.com>
   64055 
   64056         Reviewed by Adam.
   64057 
   64058         - fix http://bugs.webkit.org/show_bug.cgi?id=12190
   64059           REGRESSION: Placeholder text does not reflect dynamic updates
   64060 
   64061         Test: fast/forms/placeholder-set-attribute.html
   64062 
   64063         * html/HTMLTextFieldInnerElement.cpp:
   64064         (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler):
   64065         Call onSearch on the element since I removed it from the renderer.
   64066 
   64067         * rendering/RenderTextControl.h: Added explicit virtual keywords for overrides
   64068         of virtual functions. Removed the unneeded onSearch function. Made the inheritance
   64069         from PopupMenuClient be private, and made the overrides all private. Replaced the
   64070         showPlaceholderIfNeeded and hidePlaceholderIfNeeded functions with updatePlaceholder.
   64071         * rendering/RenderTextControl.cpp:
   64072         (WebCore::RenderTextControl::createResultsButtonStyle): Added an assertion.
   64073         (WebCore::RenderTextControl::updatePlaceholder): Added. Replaces the two
   64074         functions, showPlaceholderIfNeeded and hidePlaceholderIfNeeded.
   64075         (WebCore::RenderTextControl::updateFromElement): Added call to
   64076         updatePlaceholder before updating the value. Also improved the structure
   64077         of the function and corrected incorrect use of copy and replace.
   64078         (WebCore::RenderTextControl::updateCancelButtonVisibility): Added an
   64079         assertion and removed an unneeded local variable.
   64080         (WebCore::RenderTextControl::subtreeHasChanged): Removed an unneeded
   64081         null check and virtual function calls.
   64082         (WebCore::RenderTextControl::forwardEvent): Replaced calls to the old
   64083         functions with calls to updatePlaceholder.
   64084         (WebCore::RenderTextControl::selectionChanged): Changed code to dispatch
   64085         the select event directly -- I plan to remove the onSelect function, which
   64086         was only called here.
   64087         (WebCore::RenderTextControl::autosaveName): Removed too-specific cast and
   64088         local variable.
   64089         (WebCore::RenderTextControl::addSearchResult): Added assertion and changed
   64090         variable name for clarity.
   64091         (WebCore::RenderTextControl::valueChanged): Changed code to check for empty
   64092         autosave name instead of null for consistency with other call sites that
   64093         manage the autosave name. Also changed the code that dispatches an event
   64094         to call onSearch on the input element so we don't need our own function.
   64095 
   64096 2007-01-15  Eric Seidel  <eric (a] webkit.org>
   64097 
   64098         Reviewed by hyatt.
   64099 
   64100         Fix SVGStyledElement::parseMappedAttribute to only map SVG-allowed CSS properties
   64101         (i.e. width is no longer mapped to CSS for SVG)
   64102         Add SVGStyledElement::mapToEntry to allow RenderStyle-sharing
   64103         http://bugs.webkit.org/show_bug.cgi?id=12060
   64104 
   64105         * dom/MappedAttributeEntry.h:
   64106         (WebCore::):
   64107         * ksvg2/svg/SVGStyledElement.cpp:
   64108         (WebCore::cssPropertyIdForName): new helper
   64109         (WebCore::mapAttributeToCSSProperty): new helper
   64110         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName): new helper
   64111         (WebCore::SVGStyledElement::mapToEntry): added.
   64112         (WebCore::SVGStyledElement::parseMappedAttribute): use cssPropertyIdForSVGAttributeName
   64113         * ksvg2/svg/SVGStyledElement.h:
   64114 
   64115 2007-01-15  Eric Seidel  <eric (a] webkit.org>
   64116 
   64117         Reviewed by bdash.
   64118 
   64119         Update header guards to follow new style guidelines using new clean-header-guards script.
   64120 
   64121         * bindings/js/JSHTMLElementWrapperFactory.h:
   64122         * bindings/js/JSHTMLInputElementBase.h:
   64123         * bindings/js/JSHTMLOptionElementConstructor.h:
   64124         * bindings/js/JSSVGElementWrapperFactory.h:
   64125         * bindings/js/JSSVGPODTypeWrapper.h:
   64126         * bindings/js/JSXMLHttpRequest.h:
   64127         * bindings/js/JSXSLTProcessor.h:
   64128         * bindings/js/kjs_binding.h:
   64129         * bindings/js/kjs_css.h:
   64130         * bindings/js/kjs_dom.h:
   64131         * bindings/js/kjs_domnode.h:
   64132         * bindings/js/kjs_events.h:
   64133         * bindings/js/kjs_html.h:
   64134         * bindings/js/kjs_navigator.h:
   64135         * bindings/js/kjs_proxy.h:
   64136         * bindings/js/kjs_traversal.h:
   64137         * bindings/js/kjs_window.h:
   64138         * bridge/EditorClient.h:
   64139         * bridge/History.h:
   64140         * css/CSSStyleSheet.h:
   64141         * css/CSSValue.h:
   64142         * css/CSSValueList.h:
   64143         * css/DashboardRegion.h:
   64144         * css/FontFamilyValue.h:
   64145         * css/FontValue.h:
   64146         * css/MediaFeatureNames.h:
   64147         * css/MediaList.h:
   64148         * css/Pair.h:
   64149         * css/RectImpl.h:
   64150         * css/ShadowValue.h:
   64151         * css/StyleBase.h:
   64152         * css/StyleList.h:
   64153         * css/StyleSheet.h:
   64154         * css/StyleSheetList.h:
   64155         * css/cssstyleselector.h:
   64156         * dom/BeforeTextInsertedEvent.h:
   64157         * dom/CDATASection.h:
   64158         * dom/CharacterData.h:
   64159         * dom/ChildNodeList.h:
   64160         * dom/Comment.h:
   64161         * dom/DOMImplementation.h:
   64162         * dom/DocPtr.h:
   64163         * dom/Document.h:
   64164         * dom/DocumentFragment.h:
   64165         * dom/DocumentMarker.h:
   64166         * dom/DocumentType.h:
   64167         * dom/EditingText.h:
   64168         * dom/Entity.h:
   64169         * dom/EntityReference.h:
   64170         * dom/EventNames.h:
   64171         * dom/EventTargetNode.h:
   64172         * dom/NameNodeList.h:
   64173         * dom/NamedNodeMap.h:
   64174         * dom/Node.h:
   64175         * dom/NodeList.h:
   64176         * dom/Notation.h:
   64177         * dom/Position.h:
   64178         * dom/ProcessingInstruction.h:
   64179         * dom/Range.h:
   64180         * dom/StyleElement.h:
   64181         * dom/Text.h:
   64182         * editing/AppendNodeCommand.h:
   64183         * editing/ApplyStyleCommand.h:
   64184         * editing/BreakBlockquoteCommand.h:
   64185         * editing/CommandByName.h:
   64186         * editing/CompositeEditCommand.h:
   64187         * editing/DeleteButton.h:
   64188         * editing/DeleteButtonController.h:
   64189         * editing/DeleteFromTextNodeCommand.h:
   64190         * editing/DeleteSelectionCommand.h:
   64191         * editing/InsertIntoTextNodeCommand.h:
   64192         * editing/InsertLineBreakCommand.h:
   64193         * editing/InsertNodeBeforeCommand.h:
   64194         * editing/InsertParagraphSeparatorCommand.h:
   64195         * editing/InsertTextCommand.h:
   64196         * editing/JoinTextNodesCommand.h:
   64197         * editing/MergeIdenticalElementsCommand.h:
   64198         * editing/ModifySelectionListLevel.h:
   64199         * editing/MoveSelectionCommand.h:
   64200         * editing/RemoveCSSPropertyCommand.h:
   64201         * editing/RemoveNodeAttributeCommand.h:
   64202         * editing/RemoveNodeCommand.h:
   64203         * editing/RemoveNodePreservingChildrenCommand.h:
   64204         * editing/ReplaceSelectionCommand.h:
   64205         * editing/SetNodeAttributeCommand.h:
   64206         * editing/SplitElementCommand.h:
   64207         * editing/SplitTextNodeCommand.h:
   64208         * editing/SplitTextNodeContainingElementCommand.h:
   64209         * editing/TextGranularity.h:
   64210         * editing/TypingCommand.h:
   64211         * editing/WrapContentsInDummySpanCommand.h:
   64212         * history/BackForwardList.h:
   64213         * history/HistoryItem.h:
   64214         * history/HistoryItemTimer.h:
   64215         * history/PageCache.h:
   64216         * html/CanvasGradient.h:
   64217         * html/CanvasPattern.h:
   64218         * html/CanvasRenderingContext2D.h:
   64219         * html/CanvasStyle.h:
   64220         * html/FormDataList.h:
   64221         * html/HTMLAnchorElement.h:
   64222         * html/HTMLAppletElement.h:
   64223         * html/HTMLAreaElement.h:
   64224         * html/HTMLBRElement.h:
   64225         * html/HTMLBaseElement.h:
   64226         * html/HTMLBaseFontElement.h:
   64227         * html/HTMLBlockquoteElement.h:
   64228         * html/HTMLBodyElement.h:
   64229         * html/HTMLButtonElement.h:
   64230         * html/HTMLCanvasElement.h:
   64231         * html/HTMLCollection.h:
   64232         * html/HTMLDListElement.h:
   64233         * html/HTMLDirectoryElement.h:
   64234         * html/HTMLDivElement.h:
   64235         * html/HTMLElement.h:
   64236         * html/HTMLElementFactory.h:
   64237         * html/HTMLEmbedElement.h:
   64238         * html/HTMLFieldSetElement.h:
   64239         * html/HTMLFontElement.h:
   64240         * html/HTMLFormCollection.h:
   64241         * html/HTMLFormElement.h:
   64242         * html/HTMLFrameSetElement.h:
   64243         * html/HTMLGenericFormElement.h:
   64244         * html/HTMLHRElement.h:
   64245         * html/HTMLHeadElement.h:
   64246         * html/HTMLHeadingElement.h:
   64247         * html/HTMLHtmlElement.h:
   64248         * html/HTMLImageElement.h:
   64249         * html/HTMLImageLoader.h:
   64250         * html/HTMLInputElement.h:
   64251         * html/HTMLIsIndexElement.h:
   64252         * html/HTMLKeygenElement.h:
   64253         * html/HTMLLIElement.h:
   64254         * html/HTMLLabelElement.h:
   64255         * html/HTMLLegendElement.h:
   64256         * html/HTMLLinkElement.h:
   64257         * html/HTMLMapElement.h:
   64258         * html/HTMLMarqueeElement.h:
   64259         * html/HTMLMenuElement.h:
   64260         * html/HTMLMetaElement.h:
   64261         * html/HTMLModElement.h:
   64262         * html/HTMLNameCollection.h:
   64263         * html/HTMLOListElement.h:
   64264         * html/HTMLObjectElement.h:
   64265         * html/HTMLOptGroupElement.h:
   64266         * html/HTMLOptionElement.h:
   64267         * html/HTMLOptionsCollection.h:
   64268         * html/HTMLParagraphElement.h:
   64269         * html/HTMLParamElement.h:
   64270         * html/HTMLParser.h:
   64271         * html/HTMLPlugInElement.h:
   64272         * html/HTMLPreElement.h:
   64273         * html/HTMLQuoteElement.h:
   64274         * html/HTMLScriptElement.h:
   64275         * html/HTMLSelectElement.h:
   64276         * html/HTMLStyleElement.h:
   64277         * html/HTMLTableCaptionElement.h:
   64278         * html/HTMLTableCellElement.h:
   64279         * html/HTMLTableColElement.h:
   64280         * html/HTMLTableElement.h:
   64281         * html/HTMLTablePartElement.h:
   64282         * html/HTMLTableRowElement.h:
   64283         * html/HTMLTableSectionElement.h:
   64284         * html/HTMLTextAreaElement.h:
   64285         * html/HTMLTextFieldInnerElement.h:
   64286         * html/HTMLTitleElement.h:
   64287         * html/HTMLUListElement.h:
   64288         * ksvg2/css/SVGRenderStyle.h:
   64289         * ksvg2/css/SVGRenderStyleDefs.h:
   64290         * ksvg2/events/JSSVGLazyEventListener.h:
   64291         * ksvg2/events/SVGZoomEvent.h:
   64292         * ksvg2/misc/KCanvasRenderingStyle.h:
   64293         * ksvg2/misc/PointerEventsHitRules.h:
   64294         * ksvg2/misc/SVGDocumentExtensions.h:
   64295         * ksvg2/misc/SVGImageLoader.h:
   64296         * ksvg2/misc/TimeScheduler.h:
   64297         * ksvg2/svg/GradientAttributes.h:
   64298         * ksvg2/svg/LinearGradientAttributes.h:
   64299         * ksvg2/svg/PatternAttributes.h:
   64300         * ksvg2/svg/RadialGradientAttributes.h:
   64301         * ksvg2/svg/SVGAElement.h:
   64302         * ksvg2/svg/SVGAngle.h:
   64303         * ksvg2/svg/SVGAnimateColorElement.h:
   64304         * ksvg2/svg/SVGAnimateElement.h:
   64305         * ksvg2/svg/SVGAnimateMotionElement.h:
   64306         * ksvg2/svg/SVGAnimateTransformElement.h:
   64307         * ksvg2/svg/SVGAnimatedPathData.h:
   64308         * ksvg2/svg/SVGAnimatedPoints.h:
   64309         * ksvg2/svg/SVGAnimatedTemplate.h:
   64310         * ksvg2/svg/SVGAnimationElement.h:
   64311         * ksvg2/svg/SVGCircleElement.h:
   64312         * ksvg2/svg/SVGClipPathElement.h:
   64313         * ksvg2/svg/SVGColor.h:
   64314         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
   64315         * ksvg2/svg/SVGCursorElement.h:
   64316         * ksvg2/svg/SVGDOMImplementation.h:
   64317         * ksvg2/svg/SVGDefsElement.h:
   64318         * ksvg2/svg/SVGDescElement.h:
   64319         * ksvg2/svg/SVGDocument.h:
   64320         * ksvg2/svg/SVGElement.h:
   64321         * ksvg2/svg/SVGElementInstance.h:
   64322         * ksvg2/svg/SVGElementInstanceList.h:
   64323         * ksvg2/svg/SVGEllipseElement.h:
   64324         * ksvg2/svg/SVGExternalResourcesRequired.h:
   64325         * ksvg2/svg/SVGFEBlendElement.h:
   64326         * ksvg2/svg/SVGFEColorMatrixElement.h:
   64327         * ksvg2/svg/SVGFEComponentTransferElement.h:
   64328         * ksvg2/svg/SVGFECompositeElement.h:
   64329         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
   64330         * ksvg2/svg/SVGFEDisplacementMapElement.h:
   64331         * ksvg2/svg/SVGFEDistantLightElement.h:
   64332         * ksvg2/svg/SVGFEFloodElement.h:
   64333         * ksvg2/svg/SVGFEFuncAElement.h:
   64334         * ksvg2/svg/SVGFEFuncBElement.h:
   64335         * ksvg2/svg/SVGFEFuncGElement.h:
   64336         * ksvg2/svg/SVGFEFuncRElement.h:
   64337         * ksvg2/svg/SVGFEGaussianBlurElement.h:
   64338         * ksvg2/svg/SVGFEImageElement.h:
   64339         * ksvg2/svg/SVGFELightElement.h:
   64340         * ksvg2/svg/SVGFEMergeElement.h:
   64341         * ksvg2/svg/SVGFEMergeNodeElement.h:
   64342         * ksvg2/svg/SVGFEOffsetElement.h:
   64343         * ksvg2/svg/SVGFEPointLightElement.h:
   64344         * ksvg2/svg/SVGFESpecularLightingElement.h:
   64345         * ksvg2/svg/SVGFESpotLightElement.h:
   64346         * ksvg2/svg/SVGFETileElement.h:
   64347         * ksvg2/svg/SVGFETurbulenceElement.h:
   64348         * ksvg2/svg/SVGFilterElement.h:
   64349         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
   64350         * ksvg2/svg/SVGFitToViewBox.h:
   64351         * ksvg2/svg/SVGForeignObjectElement.h:
   64352         * ksvg2/svg/SVGGElement.h:
   64353         * ksvg2/svg/SVGGradientElement.h:
   64354         * ksvg2/svg/SVGImageElement.h:
   64355         * ksvg2/svg/SVGLangSpace.h:
   64356         * ksvg2/svg/SVGLength.h:
   64357         * ksvg2/svg/SVGLengthList.h:
   64358         * ksvg2/svg/SVGLineElement.h:
   64359         * ksvg2/svg/SVGLinearGradientElement.h:
   64360         * ksvg2/svg/SVGList.h:
   64361         * ksvg2/svg/SVGListTraits.h:
   64362         * ksvg2/svg/SVGLocatable.h:
   64363         * ksvg2/svg/SVGMarkerElement.h:
   64364         * ksvg2/svg/SVGMaskElement.h:
   64365         * ksvg2/svg/SVGMetadataElement.h:
   64366         * ksvg2/svg/SVGNumberList.h:
   64367         * ksvg2/svg/SVGPaint.h:
   64368         * ksvg2/svg/SVGParserUtilities.h:
   64369         * ksvg2/svg/SVGPathElement.h:
   64370         * ksvg2/svg/SVGPathSeg.h:
   64371         * ksvg2/svg/SVGPathSegArc.h:
   64372         * ksvg2/svg/SVGPathSegClosePath.h:
   64373         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
   64374         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
   64375         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
   64376         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
   64377         * ksvg2/svg/SVGPathSegLineto.h:
   64378         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
   64379         * ksvg2/svg/SVGPathSegLinetoVertical.h:
   64380         * ksvg2/svg/SVGPathSegList.h:
   64381         * ksvg2/svg/SVGPathSegMoveto.h:
   64382         * ksvg2/svg/SVGPatternElement.h:
   64383         * ksvg2/svg/SVGPointList.h:
   64384         * ksvg2/svg/SVGPolyElement.h:
   64385         * ksvg2/svg/SVGPolygonElement.h:
   64386         * ksvg2/svg/SVGPolylineElement.h:
   64387         * ksvg2/svg/SVGPreserveAspectRatio.h:
   64388         * ksvg2/svg/SVGRadialGradientElement.h:
   64389         * ksvg2/svg/SVGRectElement.h:
   64390         * ksvg2/svg/SVGRenderingIntent.h:
   64391         * ksvg2/svg/SVGSVGElement.h:
   64392         * ksvg2/svg/SVGScriptElement.h:
   64393         * ksvg2/svg/SVGSetElement.h:
   64394         * ksvg2/svg/SVGStopElement.h:
   64395         * ksvg2/svg/SVGStringList.h:
   64396         * ksvg2/svg/SVGStylable.h:
   64397         * ksvg2/svg/SVGStyleElement.h:
   64398         * ksvg2/svg/SVGStyledElement.h:
   64399         * ksvg2/svg/SVGStyledLocatableElement.h:
   64400         * ksvg2/svg/SVGStyledTransformableElement.h:
   64401         * ksvg2/svg/SVGSwitchElement.h:
   64402         * ksvg2/svg/SVGSymbolElement.h:
   64403         * ksvg2/svg/SVGTRefElement.h:
   64404         * ksvg2/svg/SVGTSpanElement.h:
   64405         * ksvg2/svg/SVGTests.h:
   64406         * ksvg2/svg/SVGTextContentElement.h:
   64407         * ksvg2/svg/SVGTextElement.h:
   64408         * ksvg2/svg/SVGTextPositioningElement.h:
   64409         * ksvg2/svg/SVGTitleElement.h:
   64410         * ksvg2/svg/SVGTransform.h:
   64411         * ksvg2/svg/SVGTransformList.h:
   64412         * ksvg2/svg/SVGTransformable.h:
   64413         * ksvg2/svg/SVGURIReference.h:
   64414         * ksvg2/svg/SVGUnitTypes.h:
   64415         * ksvg2/svg/SVGUseElement.h:
   64416         * ksvg2/svg/SVGViewElement.h:
   64417         * ksvg2/svg/SVGZoomAndPan.h:
   64418         * loader/CachedCSSStyleSheet.h:
   64419         * loader/CachedImage.h:
   64420         * loader/CachedXSLStyleSheet.h:
   64421         * loader/DocumentLoader.h:
   64422         * loader/Request.h:
   64423         * loader/SubresourceLoader.h:
   64424         * loader/icon/IconDataCache.h:
   64425         * loader/icon/IconDatabase.h:
   64426         * loader/icon/IconLoader.h:
   64427         * loader/icon/SQLDatabase.h:
   64428         * loader/icon/SQLStatement.h:
   64429         * loader/icon/SQLTransaction.h:
   64430         * page/Frame.h:
   64431         * page/FrameLoadRequest.h:
   64432         * page/FrameTree.h:
   64433         * page/FrameView.h:
   64434         * page/PageState.h:
   64435         * page/Plugin.h:
   64436         * page/qt/FrameQt.h:
   64437         * page/qt/FrameQtClient.h:
   64438         * platform/Arena.h:
   64439         * platform/ArrayImpl.h:
   64440         * platform/Cursor.h:
   64441         * platform/DeprecatedArray.h:
   64442         * platform/DeprecatedCString.h:
   64443         * platform/FileChooser.h:
   64444         * platform/Font.h:
   64445         * platform/FontCache.h:
   64446         * platform/FontData.h:
   64447         * platform/FontDescription.h:
   64448         * platform/FontFamily.h:
   64449         * platform/GlyphBuffer.h:
   64450         * platform/GlyphMap.h:
   64451         * platform/GlyphWidthMap.h:
   64452         * platform/Logging.h:
   64453         * platform/Pasteboard.h:
   64454         * platform/PlatformString.h:
   64455         * platform/PlugInInfoStore.h:
   64456         * platform/PopupMenu.h:
   64457         * platform/PopupMenuClient.h:
   64458         * platform/ScrollBar.h:
   64459         * platform/ScrollView.h:
   64460         * platform/SearchPopupMenu.h:
   64461         * platform/Shared.h:
   64462         * platform/Sound.h:
   64463         * platform/SystemTime.h:
   64464         * platform/Timer.h:
   64465         * platform/Widget.h:
   64466         * platform/cf/RetainPtr.h:
   64467         * platform/gdk/ChromeClientGdk.h:
   64468         * platform/gdk/FontPlatformData.h:
   64469         * platform/gdk/FrameGdk.h:
   64470         * platform/gdk/KeyboardCodes.h:
   64471         * platform/gdk/RenderPopupMenuGdk.h:
   64472         * platform/gdk/RenderThemeGdk.h:
   64473         * platform/graphics/BitmapImage.h:
   64474         * platform/graphics/Color.h:
   64475         * platform/graphics/FloatPoint.h:
   64476         * platform/graphics/FloatPoint3D.h:
   64477         * platform/graphics/FloatRect.h:
   64478         * platform/graphics/Icon.h:
   64479         * platform/graphics/Image.h:
   64480         * platform/graphics/ImageAnimationObserver.h:
   64481         * platform/graphics/ImageBuffer.h:
   64482         * platform/graphics/ImageSource.h:
   64483         * platform/graphics/IntPoint.h:
   64484         * platform/graphics/IntRect.h:
   64485         * platform/graphics/IntSize.h:
   64486         * platform/graphics/IntSizeHash.h:
   64487         * platform/graphics/PathTraversalState.h:
   64488         * platform/graphics/Pen.h:
   64489         * platform/graphics/qt/ImageDecoderQt.h:
   64490         * platform/graphics/svg/SVGImage.h:
   64491         * platform/graphics/svg/SVGImageEmptyClients.h:
   64492         * platform/graphics/svg/SVGPaintServer.h:
   64493         * platform/graphics/svg/SVGPaintServerGradient.h:
   64494         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
   64495         * platform/graphics/svg/SVGPaintServerPattern.h:
   64496         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
   64497         * platform/graphics/svg/SVGPaintServerSolid.h:
   64498         * platform/graphics/svg/SVGResource.h:
   64499         * platform/graphics/svg/SVGResourceClipper.h:
   64500         * platform/graphics/svg/SVGResourceFilter.h:
   64501         * platform/graphics/svg/SVGResourceMarker.h:
   64502         * platform/graphics/svg/SVGResourceMasker.h:
   64503         * platform/graphics/svg/cg/CgSupport.h:
   64504         * platform/graphics/svg/filters/SVGDistantLightSource.h:
   64505         * platform/graphics/svg/filters/SVGFEBlend.h:
   64506         * platform/graphics/svg/filters/SVGFEColorMatrix.h:
   64507         * platform/graphics/svg/filters/SVGFEComponentTransfer.h:
   64508         * platform/graphics/svg/filters/SVGFEComposite.h:
   64509         * platform/graphics/svg/filters/SVGFEConvolveMatrix.h:
   64510         * platform/graphics/svg/filters/SVGFEDiffuseLighting.h:
   64511         * platform/graphics/svg/filters/SVGFEDisplacementMap.h:
   64512         * platform/graphics/svg/filters/SVGFEFlood.h:
   64513         * platform/graphics/svg/filters/SVGFEGaussianBlur.h:
   64514         * platform/graphics/svg/filters/SVGFEImage.h:
   64515         * platform/graphics/svg/filters/SVGFEMerge.h:
   64516         * platform/graphics/svg/filters/SVGFEMorphology.h:
   64517         * platform/graphics/svg/filters/SVGFEOffset.h:
   64518         * platform/graphics/svg/filters/SVGFESpecularLighting.h:
   64519         * platform/graphics/svg/filters/SVGFETile.h:
   64520         * platform/graphics/svg/filters/SVGFETurbulence.h:
   64521         * platform/graphics/svg/filters/SVGFilterEffect.h:
   64522         * platform/graphics/svg/filters/SVGLightSource.h:
   64523         * platform/graphics/svg/filters/SVGPointLightSource.h:
   64524         * platform/graphics/svg/filters/SVGSpotLightSource.h:
   64525         * platform/mac/FontPlatformData.h:
   64526         * platform/mac/PlatformScrollBar.h:
   64527         * platform/network/AuthenticationChallenge.h:
   64528         * platform/network/Credential.h:
   64529         * platform/network/HTTPHeaderMap.h:
   64530         * platform/network/ProtectionSpace.h:
   64531         * platform/network/ResourceError.h:
   64532         * platform/network/ResourceRequest.h:
   64533         * platform/network/ResourceResponse.h:
   64534         * platform/network/cf/FormDataStreamCFNet.h:
   64535         * platform/network/cf/ResourceRequestCFNet.h:
   64536         * platform/network/cf/ResourceResponseCFNet.h:
   64537         * platform/network/gdk/ResourceHandleManager.h:
   64538         * platform/network/mac/AuthenticationMac.h:
   64539         * platform/network/mac/FormDataStreamMac.h:
   64540         * platform/network/qt/ResourceHandleManagerKDE.h:
   64541         * platform/network/qt/ResourceHandleManagerQt.h:
   64542         * platform/network/win/ResourceHandleWin.h:
   64543         * platform/qt/FontPlatformData.h:
   64544         * platform/qt/KeyboardCodes.h:
   64545         * platform/qt/PlatformScrollBar.h:
   64546         * platform/qt/ScrollViewCanvasQt.h:
   64547         * platform/qt/SharedTimerQt.h:
   64548         * platform/win/FontPlatformData.h:
   64549         * platform/win/PlatformScrollBar.h:
   64550         * rendering/AutoTableLayout.h:
   64551         * rendering/HitTestRequest.h:
   64552         * rendering/HitTestResult.h:
   64553         * rendering/InlineBox.h:
   64554         * rendering/InlineFlowBox.h:
   64555         * rendering/Length.h:
   64556         * rendering/ListMarkerBox.h:
   64557         * rendering/RenderBox.h:
   64558         * rendering/RenderMenuList.h:
   64559         * rendering/RenderPart.h:
   64560         * rendering/RenderPartObject.h:
   64561         * rendering/RenderPath.h:
   64562         * rendering/RenderReplaced.h:
   64563         * rendering/RenderSVGContainer.h:
   64564         * rendering/RenderSVGImage.h:
   64565         * rendering/RenderSVGInline.h:
   64566         * rendering/RenderSVGInlineText.h:
   64567         * rendering/RenderSVGTSpan.h:
   64568         * rendering/RenderSVGText.h:
   64569         * rendering/RenderStyle.h:
   64570         * rendering/RenderTableCol.h:
   64571         * rendering/RenderThemeWin.h:
   64572         * rendering/bidi.h:
   64573         * xml/DOMParser.h:
   64574         * xml/XPathEvaluator.h:
   64575         * xml/XPathExpression.h:
   64576         * xml/XPathExpressionNode.h:
   64577         * xml/XPathFunctions.h:
   64578         * xml/XPathNSResolver.h:
   64579         * xml/XPathNamespace.h:
   64580         * xml/XPathParser.h:
   64581         * xml/XPathPath.h:
   64582         * xml/XPathPredicate.h:
   64583         * xml/XPathResult.h:
   64584         * xml/XPathStep.h:
   64585         * xml/XPathUtil.h:
   64586         * xml/XPathValue.h:
   64587         * xml/XPathVariableReference.h:
   64588         * xml/XSLImportRule.h:
   64589         * xml/XSLStyleSheet.h:
   64590         * xml/XSLTProcessor.h:
   64591         * xml/xmlhttprequest.h:
   64592 
   64593 2007-01-15  Anders Carlsson  <acarlsson (a] apple.com>
   64594 
   64595         Build fix.
   64596         
   64597         * loader/ProgressTracker.cpp:
   64598 
   64599 2007-01-15  Lars Knoll <lars (a] trolltech.com>
   64600 
   64601         Fix the Qt build
   64602 
   64603         * WebCore.pro:
   64604 
   64605 2007-01-15  Anders Carlsson  <acarlsson (a] apple.com>
   64606 
   64607         Reviewed by Darin.
   64608 
   64609         * loader/ProgressTracker.cpp:
   64610         Set finalProgressValue to its value explicitly instead of calculating it 
   64611         (which causes a global initializer to be generated).
   64612 
   64613 2007-01-15  Anders Carlsson  <acarlsson (a] apple.com>
   64614 
   64615         Reviewed by Darin and Adam.
   64616 
   64617         Move progress tracking down to WebCore.
   64618         
   64619         * WebCore.exp:
   64620         Add ProgressTracker::estimatedProgress() to be used by WebKit.
   64621         
   64622         * WebCore.xcodeproj/project.pbxproj:
   64623         Add ProgressTracker.[cpp|h]
   64624         
   64625         * loader/FrameLoader.cpp:
   64626         (WebCore::FrameLoader::prepareForLoadStart):
   64627         (WebCore::FrameLoader::clearProvisionalLoad):
   64628         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   64629         (WebCore::FrameLoader::startLoading):
   64630         (WebCore::FrameLoader::didReceiveResponse):
   64631         (WebCore::FrameLoader::didReceiveData):
   64632         (WebCore::FrameLoader::didFailToLoad):
   64633         (WebCore::FrameLoader::requestFromDelegate):
   64634         (WebCore::FrameLoader::didFinishLoad):
   64635         Call directly to the progress tracker instead of through the frame loader client.
   64636         
   64637         * loader/FrameLoaderClient.h:
   64638         Get rid of the old methods and add new methods for tracking progress.
   64639         
   64640         * loader/ProgressTracker.cpp: Added.
   64641         (WebCore::ProgressItem::ProgressItem):
   64642         (WebCore::ProgressTracker::ProgressTracker):
   64643         (WebCore::ProgressTracker::~ProgressTracker):
   64644         (WebCore::ProgressTracker::estimatedProgress):
   64645         (WebCore::ProgressTracker::reset):
   64646         (WebCore::ProgressTracker::progressStarted):
   64647         (WebCore::ProgressTracker::progressCompleted):
   64648         (WebCore::ProgressTracker::finalProgressComplete):
   64649         (WebCore::ProgressTracker::incrementProgress):
   64650         (WebCore::ProgressTracker::completeProgress):
   64651         (WebCore::ProgressTracker::createUniqueIdentifier):
   64652         * loader/ProgressTracker.h: Added.
   64653         New per page class which tracks progress.
   64654         
   64655         * loader/ResourceLoader.cpp:
   64656         (WebCore::ResourceLoader::willSendRequest):
   64657         * page/Page.cpp:
   64658         (WebCore::Page::Page):
   64659         * page/Page.h:
   64660         (WebCore::Page::progress):
   64661         Move createUniqueIdentifier to ProgressTracker, add ProgressTracker object to Page.
   64662         
   64663         * platform/graphics/svg/SVGImageEmptyClients.h:
   64664         (WebCore::SVGEmptyFrameLoaderClient::willChangeEstimatedProgress):
   64665         (WebCore::SVGEmptyFrameLoaderClient::didChangeEstimatedProgress):
   64666         (WebCore::SVGEmptyFrameLoaderClient::postProgressStartedNotification):
   64667         (WebCore::SVGEmptyFrameLoaderClient::postProgressEstimateChangedNotification):
   64668         (WebCore::SVGEmptyFrameLoaderClient::postProgressFinishedNotification):
   64669         Add new methods, get rid of the old ones.
   64670 
   64671 2007-01-15  Adam Roben  <aroben (a] apple.com>
   64672 
   64673         Reviewed by Anders.
   64674 
   64675         Fix comment.
   64676 
   64677         * html/HTMLScriptElement.cpp:
   64678         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
   64679 
   64680 2007-01-15  John Sullivan  <sullivan (a] apple.com>
   64681 
   64682         * platform/ContextMenu.cpp:
   64683         (WebCore::ContextMenu::checkOrEnableIfNeeded):
   64684         Leopard build fix; don't declare one of the case values twice
   64685 
   64686 2007-01-15  Mitz Pettel  <mitz (a] webkit.org>
   64687 
   64688         Reviewed by Darin.
   64689 
   64690         - fix http://bugs.webkit.org/show_bug.cgi?id=8604
   64691           rowspan does not work when set through javascript
   64692 
   64693         Covered by existing tests.
   64694 
   64695         * rendering/RenderTableCell.cpp:
   64696         (WebCore::RenderTableCell::updateFromElement): Mark the section for grid recalc
   64697         if row span or column span change.
   64698 
   64699 2007-01-15  Adam Roben  <aroben (a] apple.com>
   64700 
   64701         Reviewed by Darin.
   64702 
   64703         Small context menu fixes.
   64704 
   64705         * platform/ContextMenu.cpp:
   64706         (WebCore::ContextMenu::populate): Fix typo.
   64707         (WebCore::ContextMenu::checkOrEnableIfNeeded): Disabled "No Guesses
   64708         Found", and added all enum values explicitly.
   64709 
   64710 2007-01-15  Alexey Proskuryakov  <ap (a] webkit.org>
   64711 
   64712         Reviewed by Darin.
   64713 
   64714         http://bugs.webkit.org/show_bug.cgi?id=6272
   64715         XMLHttpRequest freezes on getting a missing document with overridden Content-Length
   64716 
   64717         http://bugs.webkit.org/show_bug.cgi?id=6212
   64718         Investigate disallowing some XMLHttpRequest headers from being set via setRequestHeader.
   64719 
   64720         Tests:
   64721         - http/tests/xmlhttprequest/connection-error-sync.html
   64722         - http/tests/xmlhttprequest/set-dangerous-headers.html
   64723 
   64724         * bindings/js/kjs_binding.cpp:
   64725         (KJS::):
   64726         (KJS::setDOMException): Added support for NETWORK_ERR. Changed the temporary 
   64727         PERMISSION_DENIED error into a special case.
   64728 
   64729         * loader/FrameLoader.cpp:
   64730         (WebCore::FrameLoader::loadResourceSynchronously):
   64731         * loader/FrameLoader.h:
   64732         Return the error object to the caller. Removed an extra local variable for error, 
   64733         which shadowed the one from enclosing block.
   64734 
   64735         * dom/XMLTokenizer.cpp:
   64736         (WebCore::openFunc): 
   64737         * xml/XSLTProcessor.cpp:
   64738         (WebCore::docLoaderFunc): 
   64739         Updated to pass an error object (currently ignored).
   64740 
   64741         * xml/xmlhttprequest.cpp:
   64742         (WebCore::canSetRequestHeader): Added. The headers to block include the ones from 
   64743         the current XMLHttpRequest draft plus "Via", which is blocked by Firefox.
   64744         (WebCore::XMLHttpRequest::send): Raise an exception if a sync request results in 
   64745         an error.
   64746         (WebCore::XMLHttpRequest::setRequestHeader): Call canSetRequestHeader().
   64747         * xml/xmlhttprequest.h:
   64748         (WebCore::): Added NETWORK_ERR and a comment about PERMISSION_DENIED.
   64749 
   64750 2007-01-15  Zack Rusin  <zack (a] kde.org>
   64751 
   64752         Optimizing rendering on the Qt platform. Mainly
   64753         switching from client side QImage to QPixmap's.
   64754         Also cleaning the the ScrollViewCanvasQt code
   64755         quite a bit.
   64756 
   64757         * platform/graphics/ImageSource.h: use QPixmap
   64758         * platform/graphics/qt/GraphicsContextQt.cpp:
   64759         (WebCore::TransparencyLayer::TransparencyLayer):
   64760         (WebCore::GraphicsContext::clip): clip rects when you can
   64761         * platform/graphics/qt/ImageDecoderQt.cpp:
   64762         (WebCore::ImageDecoderQt::ImageData::ImageData):
   64763         (WebCore::ImageDecoderQt::ReadContext::read):
   64764         (WebCore::ImageDecoderQt::ReadContext::readImageLines):
   64765         (WebCore::ImageDecoderQt::imageAtIndex):
   64766         * platform/graphics/qt/ImageDecoderQt.h: use QPixmap
   64767         * platform/graphics/qt/ImageQt.cpp: QPixmap instead of QImage
   64768         (WebCore::BitmapImage::draw):
   64769         (WebCore::BitmapImage::drawTiled):
   64770         * platform/graphics/qt/ImageSourceQt.cpp:
   64771         (WebCore::):
   64772         (WebCore::ImageSource::createFrameAtIndex):
   64773         (WebCore::ImageSource::frameHasAlphaAtIndex):
   64774         * platform/qt/ScrollViewCanvasQt.cpp: clean up
   64775         (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
   64776         (WebCore::ScrollViewCanvasQt::updateFrameView):
   64777         (WebCore::ScrollViewCanvasQt::paintEvent):
   64778         (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
   64779         (WebCore::ScrollViewCanvasQt::mousePressEvent):
   64780         (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
   64781         (WebCore::ScrollViewCanvasQt::handleKeyEvent):
   64782         * platform/qt/ScrollViewCanvasQt.h:
   64783         * platform/qt/ScrollViewQt.cpp: remove hacks
   64784         (WebCore::ScrollView::ScrollView):
   64785         (WebCore::ScrollView::setParentWidget):
   64786         (WebCore::ScrollView::updateContents):
   64787 
   64788 2007-01-15  Lars Knoll <lars (a] trolltech.com>
   64789 
   64790         Reviewed by Zack
   64791 
   64792         Fix weird crashes when running the layout tests. The
   64793         reason was that I used KURL (and thus DeprecatedString)
   64794         in a thread. Unfortunately that class is not threadsafe
   64795         at all.
   64796 
   64797         * platform/network/qt/ResourceHandleManagerQt.cpp:
   64798         (WebCore::RequestQt::RequestQt):
   64799         (WebCore::RequestQt::setURL):
   64800         (WebCore::ResourceHandleManager::add):
   64801         (WebCore::ResourceHandleManager::cancel):
   64802         (WebCore::ResourceHandleManager::receivedResponse):
   64803         (WebCore::FileLoader::request):
   64804         (WebCore::HostInfo::HostInfo):
   64805         (WebCore::NetworkLoader::request):
   64806         (WebCore::NetworkLoader::cancel):
   64807         * platform/network/qt/ResourceHandleManagerQt.h:
   64808         (WebCore::HostInfo::HostInfo):
   64809         (WebCore::HostInfo::isLocalFile):
   64810 
   64811 2007-01-15  Eric Seidel  <eric (a] webkit.org>
   64812 
   64813         Reviewed by rwlbuis.
   64814 
   64815         Make isValid check not malloc 3 SVGStringLists for every element.
   64816         
   64817         No test possible, performance fix only.
   64818 
   64819         * ksvg2/svg/SVGTests.cpp:
   64820         (WebCore::SVGTests::isValid):
   64821 
   64822 2007-01-15  Rob Buis  <buis (a] kde.org>
   64823 
   64824         Reviewed by Eric.
   64825 
   64826         Remove unused member var.
   64827 
   64828         * ksvg2/svg/SVGStyledElement.h:
   64829 
   64830 2007-01-15  Rob Buis  <buis (a] kde.org>
   64831 
   64832         Reviewed by Eric.
   64833 
   64834         http://bugs.webkit.org/show_bug.cgi?id=12069
   64835         Hit detection fails under some viewbox constraints
   64836 
   64837         Do not take viewBox into account when hit testing svg container.
   64838 
   64839         * rendering/RenderSVGContainer.cpp:
   64840         (WebCore::RenderSVGContainer::nodeAtPoint):
   64841 
   64842 2007-01-15  David Hyatt  <hyatt (a] apple.com>
   64843 
   64844         Fix  for 12275, negative margins confuse page breaks.
   64845 
   64846         Reviewed by Eric
   64847 
   64848         * rendering/RenderBlock.cpp:
   64849         (WebCore::RenderBlock::paintChildren):
   64850 
   64851 2007-01-15  Eric Seidel  <eric (a] webkit.org>
   64852 
   64853         Reviewed by mjs.
   64854         
   64855         SVG gradients do not notice stop additions
   64856         http://bugs.webkit.org/show_bug.cgi?id=12192
   64857 
   64858         Test: svg/custom/gradient-add-stops.svg
   64859 
   64860         * ksvg2/svg/SVGGradientElement.cpp:
   64861         (WebCore::SVGGradientElement::childrenChanged):
   64862         * ksvg2/svg/SVGGradientElement.h:
   64863 
   64864 2007-01-14  David Hyatt  <hyatt (a] apple.com>
   64865 
   64866         Fix for bug 10356, positioning doesn't work with <svg> elements in XHTML.  Change the requiresLayer
   64867         check to use the DOM, since the old check would fail if the parent block had no element.
   64868 
   64869         Reviewed by Eric
   64870 
   64871         Added svg/custom/relative-positioning.html (absolute/fixed too)
   64872 
   64873         * rendering/RenderSVGContainer.cpp:
   64874         (WebCore::RenderSVGContainer::requiresLayer):
   64875 
   64876 2007-01-14  Eric Seidel  <eric (a] webkit.org>
   64877 
   64878         Reviewed by hyatt.
   64879         
   64880         SVG does not correctly handle float: left
   64881         http://bugs.webkit.org/show_bug.cgi?id=12210
   64882 
   64883         Test: svg/custom/svg-float-border-padding.xml
   64884 
   64885         * rendering/RenderSVGContainer.cpp:
   64886         (WebCore::RenderSVGContainer::paint):
   64887 
   64888 2007-01-14  David Hyatt  <hyatt (a] apple.com>
   64889 
   64890         More work to fix 10145, regression where form elements don't break properly.  Make sure to really use
   64891         the parent of the replaced element's whitespace value everywhere.
   64892 
   64893         Reviewed by olliej
   64894 
   64895         fast/replaced/three-selects-break.html
   64896 
   64897         * rendering/bidi.cpp:
   64898         (WebCore::RenderBlock::findNextLineBreak):
   64899 
   64900 2007-01-14  Sam Weinig  <sam (a] webkit.org>
   64901 
   64902         Reviewed by Darin and then by Mitz.
   64903 
   64904         Patch for http://bugs.webkit.org/show_bug.cgi?id=12228
   64905         Cleanup assorted CSS classes
   64906 
   64907         * css/CSSBorderImageValue.cpp:
   64908         (WebCore::CSSBorderImageValue::CSSBorderImageValue):
   64909         (WebCore::CSSBorderImageValue::cssText):
   64910         * css/CSSBorderImageValue.h:
   64911         * css/CSSComputedStyleDeclaration.cpp:
   64912         (WebCore::valueForLength):
   64913         (WebCore::valueForBorderStyle):
   64914         (WebCore::valueForTextAlign):
   64915         (WebCore::valueForShadow):
   64916         (WebCore::getPositionOffsetValue):
   64917         (WebCore::CSSComputedStyleDeclaration::cssText):
   64918         (WebCore::primitiveValueFromLength):
   64919         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   64920         (WebCore::CSSComputedStyleDeclaration::getPropertyPriority):
   64921         (WebCore::CSSComputedStyleDeclaration::removeProperty):
   64922         (WebCore::CSSComputedStyleDeclaration::setProperty):
   64923         (WebCore::CSSComputedStyleDeclaration::length):
   64924         (WebCore::CSSComputedStyleDeclaration::item):
   64925         * css/CSSComputedStyleDeclaration.h:
   64926         * css/CSSCursorImageValue.cpp:
   64927         (WebCore::CSSCursorImageValue::CSSCursorImageValue):
   64928         * css/CSSCursorImageValue.h:
   64929         * css/CSSGrammar.y:
   64930         * css/CSSImageValue.cpp:
   64931         * css/CSSImageValue.h:
   64932         * css/CSSInheritedValue.cpp:
   64933         * css/CSSInheritedValue.h:
   64934         * css/CSSInitialValue.cpp:
   64935         * css/CSSInitialValue.h:
   64936         * css/CSSMutableStyleDeclaration.cpp:
   64937         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
   64938         (WebCore::CSSMutableStyleDeclaration::operator=):
   64939         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
   64940         (WebCore::CSSMutableStyleDeclaration::get4Values):
   64941         (WebCore::CSSMutableStyleDeclaration::getShorthandValue):
   64942         (WebCore::CSSMutableStyleDeclaration::getPropertyCSSValue):
   64943         (WebCore::CSSMutableStyleDeclaration::removeProperty):
   64944         (WebCore::CSSMutableStyleDeclaration::setChanged):
   64945         (WebCore::CSSMutableStyleDeclaration::getPropertyPriority):
   64946         (WebCore::CSSMutableStyleDeclaration::getPropertyShorthand):
   64947         (WebCore::CSSMutableStyleDeclaration::isPropertyImplicit):
   64948         (WebCore::CSSMutableStyleDeclaration::setProperty):
   64949         (WebCore::CSSMutableStyleDeclaration::setImageProperty):
   64950         (WebCore::CSSMutableStyleDeclaration::parseDeclaration):
   64951         (WebCore::CSSMutableStyleDeclaration::addParsedProperties):
   64952         (WebCore::CSSMutableStyleDeclaration::setLengthProperty):
   64953         (WebCore::CSSMutableStyleDeclaration::cssText):
   64954         (WebCore::CSSMutableStyleDeclaration::merge):
   64955         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
   64956         * css/CSSMutableStyleDeclaration.h:
   64957         (WebCore::CSSMutableStyleDeclaration::setProperty):
   64958         (WebCore::CSSMutableStyleDeclaration::removeProperty):
   64959         * css/CSSNamespace.h:
   64960         (WebCore::CSSNamespace::CSSNamespace):
   64961         * css/CSSPrimitiveValue.cpp:
   64962         (WebCore::isCSSTokenizerIdentifier):
   64963         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
   64964         (WebCore::CSSPrimitiveValue::cleanup):
   64965         (WebCore::CSSPrimitiveValue::computeLengthInt):
   64966         (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
   64967         (WebCore::CSSPrimitiveValue::computeLengthShort):
   64968         (WebCore::CSSPrimitiveValue::computeLengthFloat):
   64969         (WebCore::CSSPrimitiveValue::setFloatValue):
   64970         (WebCore::scaleFactorForConversion):
   64971         (WebCore::CSSPrimitiveValue::getFloatValue):
   64972         (WebCore::CSSPrimitiveValue::setStringValue):
   64973         (WebCore::CSSPrimitiveValue::getStringValue):
   64974         (WebCore::CSSPrimitiveValue::parseString):
   64975         (WebCore::CSSPrimitiveValue::getIdent):
   64976         (WebCore::CSSPrimitiveValue::cssText):
   64977         * css/CSSPrimitiveValue.h:
   64978         (WebCore::CSSPrimitiveValue::getCounterValue):
   64979         (WebCore::CSSPrimitiveValue::getRectValue):
   64980         (WebCore::CSSPrimitiveValue::getRGBColorValue):
   64981         (WebCore::CSSPrimitiveValue::getPairValue):
   64982         (WebCore::CSSPrimitiveValue::getDashboardRegionValue):
   64983         * css/CSSProperty.cpp:
   64984         (WebCore::operator==):
   64985         * css/CSSProperty.h:
   64986         (WebCore::CSSProperty::operator=):
   64987         * css/CSSQuirkPrimitiveValue.h:
   64988         (WebCore::CSSQuirkPrimitiveValue::CSSQuirkPrimitiveValue):
   64989         * css/CSSRuleList.cpp:
   64990         (WebCore::CSSRuleList::CSSRuleList):
   64991         (WebCore::CSSRuleList::deleteRule):
   64992         (WebCore::CSSRuleList::insertRule):
   64993         * css/CSSRuleList.h:
   64994         (WebCore::CSSRuleList::item):
   64995         * css/CSSSelector.cpp:
   64996         (WebCore::CSSSelector::print):
   64997         (WebCore::CSSSelector::specificity):
   64998         (WebCore::CSSSelector::extractPseudoType):
   64999         (WebCore::CSSSelector::operator==):
   65000         (WebCore::CSSSelector::selectorText):
   65001         * css/CSSSelector.h:
   65002         (WebCore::CSSSelector::CSSSelector):
   65003         (WebCore::CSSSelector::~CSSSelector):
   65004         (WebCore::CSSSelector::append):
   65005         (WebCore::CSSSelector::next):
   65006         (WebCore::CSSSelector::pseudoType):
   65007         (WebCore::CSSSelector::hasTag):
   65008         (WebCore::CSSSelector::hasAttribute):
   65009         * css/CSSStyleDeclaration.cpp:
   65010         (WebCore::propertyID):
   65011         (WebCore::CSSStyleDeclaration::getPropertyPriority):
   65012         (WebCore::CSSStyleDeclaration::getPropertyShorthand):
   65013         (WebCore::CSSStyleDeclaration::isPropertyImplicit):
   65014         (WebCore::CSSStyleDeclaration::setProperty):
   65015         (WebCore::CSSStyleDeclaration::isPropertyName):
   65016         (WebCore::CSSStyleDeclaration::parentRule):
   65017         (WebCore::CSSStyleDeclaration::diff):
   65018         (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
   65019         * css/CSSStyleDeclaration.h:
   65020         * css/Counter.h:
   65021         (WebCore::Counter::Counter):
   65022         (WebCore::Counter::listStyleNumber):
   65023         * css/csshelper.cpp:
   65024         (WebCore::parseURL):
   65025         * css/csshelper.h:
   65026         * css/cssparser.h:
   65027         (WebCore::domString):
   65028         (WebCore::atomicString):
   65029         (WebCore::CSSParser::operator|):
   65030         * css/cssstyleselector.cpp:
   65031         (WebCore::CSSStyleSelector::matchRulesForList):
   65032         (WebCore::CSSStyleSelector::checkSelector):
   65033         (WebCore::CSSStyleSelector::checkOneSelector):
   65034         (WebCore::CSSRuleSet::addRule):
   65035 
   65036 2007-01-14  Mitz Pettel  <mitz (a] webkit.org>
   65037 
   65038         Reviewed by Adam.
   65039 
   65040         - fix http://bugs.webkit.org/show_bug.cgi?id=12264
   65041           REGRESSION (r18843): Webkit crashes on 43Folders.com home page
   65042 
   65043         Test: fast/tokenizer/ignore-tags-in-iframe.html
   65044 
   65045         * html/HTMLParser.cpp:
   65046         (WebCore::HTMLParser::reset): Removed unused inSelect member variable.
   65047         (WebCore::HTMLParser::selectCreateErrorCheck): Ditto.
   65048         (WebCore::HTMLParser::processCloseTag): Ditto.
   65049         * html/HTMLParser.h: Ditto.
   65050         * html/HTMLTokenizer.cpp:
   65051         (WebCore::HTMLTokenizer::parseTag): Changed not to process <pre>, <listing>,
   65052         <script>, <style>, <title>, <textarea> and <xmp> if the parser is in skip mode
   65053         (waiting for a close tag of an element whose contents are not parsed,
   65054         such as iframe).
   65055         * html/HTMLTokenizer.h:
   65056         (WebCore::HTMLTokenizer::State::setInStyle): Removed unused bit.
   65057         (WebCore::HTMLTokenizer::State::): Ditto.
   65058 
   65059 2007-01-14  Alexey Proskuryakov  <ap (a] webkit.org>
   65060 
   65061         Reviewed by Darin.
   65062 
   65063         http://bugs.webkit.org/show_bug.cgi?id=12258
   65064         fast/tokenizer/002 test broken
   65065 
   65066         * loader/FrameLoader.h: Added a flush parameter to write().
   65067         * loader/FrameLoader.cpp:
   65068         (WebCore::FrameLoader::write): Ditto.
   65069         (WebCore::FrameLoader::endIfNotLoading): Instead of poorly duplicating the logic in write(),
   65070         call it directly.
   65071 
   65072 2007-01-14  Adam Roben  <aroben (a] apple.com>
   65073 
   65074         Reviewed by Maciej.
   65075 
   65076         Make sure our whitelisting of the type and language attributes of the
   65077         <script> element is enforced in all HTMLTokenizer/HTMLScriptElement
   65078         code paths.
   65079 
   65080         All layout tests pass.
   65081 
   65082         * html/HTMLScriptElement.cpp:
   65083         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript): New method to
   65084         determine whether the script should be executed, given its type and
   65085         language attributes.
   65086         (WebCore::HTMLScriptElement::evaluateScript): Check type/language
   65087         before executing.
   65088         * html/HTMLScriptElement.h: Added new declarations.
   65089         * html/HTMLTokenizer.cpp:
   65090         (WebCore::HTMLTokenizer::begin): Made scriptSrc a String. 
   65091         (WebCore::HTMLTokenizer::scriptHandler): Check
   65092         shouldExecuteAsJavaScript before executing.
   65093         (WebCore::HTMLTokenizer::notifyFinished): Ditto.
   65094         (WebCore::HTMLTokenizer::parseTag): Moved type/language checking from
   65095         here to HTMLScriptElement::shouldExecuteAsJavaScript.
   65096         * html/HTMLTokenizer.h: Made scriptSrc a String, and removed the
   65097         javascript member.
   65098 
   65099 2007-01-14  David Hyatt  <hyatt (a] apple.com>
   65100 
   65101         Make sure floats are avoided if you have non-auto column property values.  Fixes the crazy layout
   65102         on http://weblogs.mozillazine.org/roc.
   65103 
   65104         Reviewed by mitz
   65105 
   65106         Added fast/multicol/float-avoidance.html
   65107 
   65108         * rendering/RenderBlock.cpp:
   65109         (WebCore::RenderBlock::avoidsFloats):
   65110 
   65111 2007-01-14  David Hyatt  <hyatt (a] apple.com>
   65112 
   65113         Fix for 10145, regression where line breaks are not being honored between adjacent replaced elements.
   65114         When checking for break opportunities where replaced elements are involved, we ignore their white-space
   65115         values and use their parents' instead.  The assumption/idea behind this change is that because the element
   65116         is replaced, its white-space value is irrelevant except as a means of applying style to its interior.
   65117 
   65118         The CSS spec does not cover this situation, so we're implementing this based off what other browsers seem to
   65119         do.
   65120 
   65121         Reviewed by aroben
   65122 
   65123         * css/CSSComputedStyleDeclaration.cpp:
   65124         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   65125         * css/CSSValueKeywords.in:
   65126         * css/cssparser.cpp:
   65127         (WebCore::CSSParser::parseValue):
   65128         * css/cssstyleselector.cpp:
   65129         (WebCore::CSSStyleSelector::applyProperty):
   65130         * page/EventHandler.cpp:
   65131         (WebCore::EventHandler::EventHandler):
   65132         (WebCore::EventHandler::clear):
   65133         (WebCore::EventHandler::handleWheelEvent):
   65134         * page/EventHandler.h:
   65135         * rendering/RenderBox.cpp:
   65136         (WebCore::RenderBox::calcHeight):
   65137         * rendering/RenderLayer.cpp:
   65138         (WebCore::Marquee::Marquee):
   65139         (WebCore::Marquee::start):
   65140         (WebCore::Marquee::updateMarqueePosition):
   65141         (WebCore::Marquee::updateMarqueeStyle):
   65142         (WebCore::Marquee::timerFired):
   65143         * rendering/RenderLayer.h:
   65144         * rendering/RenderPartObject.cpp:
   65145         (WebCore::RenderPartObject::viewCleared):
   65146         * rendering/RenderStyle.h:
   65147         (WebCore::):
   65148         * rendering/bidi.cpp:
   65149         (WebCore::RenderBlock::findNextLineBreak):
   65150 
   65151 2007-01-13  David Hyatt  <hyatt (a] apple.com>
   65152 
   65153         While optimizing form controls and fixing their clipping, I caused this text zoom regression.  The layout
   65154         of text is necessary because it needs to recalc minmaxwidth.  This is still a really unfortunate
   65155         bit of code... since a lot of properties don't apply to text (e.g., borders), we're marking text renderers
   65156         as dirty when we don't have to.
   65157 
   65158         Reviewed by mitz
   65159 
   65160         * rendering/RenderObject.cpp:
   65161         (WebCore::RenderObject::setStyle):
   65162 
   65163 2007-01-13  Lars Knoll <lars (a] trolltech.com>
   65164 
   65165         Reviewed by Alexey
   65166 
   65167         String::format() was relying on undefined behaviour, which
   65168         happened to work on lots of systems (Mac and 32bit Linux at least)
   65169         but broke badly on 64bit Linux.
   65170         
   65171         * platform/String.cpp:
   65172         (WebCore::String::format):
   65173 
   65174 2007-01-13  Martin Reddy  <reddy (a] pixar.com>
   65175 
   65176         Fix for bug 11924: WebCore would crash on any HTML content
   65177         with a non-empty <table> tag in it on a 64-bit machine. The
   65178         size_t (64bit) vs int (32bit) cast is now fixed in ensureRows,
   65179         and the clients of this function have been updated to check
   65180         for a false return code.
   65181 
   65182         Reviewed by Darin, landed by Lars
   65183 
   65184         * rendering/RenderTableSection.cpp:
   65185         (WebCore::RenderTableSection::addChild):
   65186         (WebCore::RenderTableSection::ensureRows):
   65187         (WebCore::RenderTableSection::recalcCells):
   65188 
   65189 2007-01-13  Alexey Proskuryakov  <ap (a] webkit.org>
   65190 
   65191         Reviewed by Darin.
   65192 
   65193         http://bugs.webkit.org/show_bug.cgi?id=12165
   65194         REGRESSION: text encoding problem at jn.sapo.pt
   65195 
   65196         Test: fast/encoding/script-in-head.html
   65197 
   65198         * loader/TextResourceDecoder.cpp:
   65199         (WebCore::TextResourceDecoder::checkForHeadCharset):
   65200         Ignore tags within <script> elements in head, just like we do for <title>.
   65201 
   65202 2007-01-13  Lars Knoll <lars (a] trolltech.com>
   65203 
   65204         Reviewed by Maciej
   65205 
   65206         Don't crash when constructing a GraphicsContext with a 0
   65207         PlatformGraphicsContext and don't do anything if painting
   65208         is disabled.
   65209 
   65210         * platform/graphics/qt/GraphicsContextQt.cpp:
   65211         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
   65212         (WebCore::GraphicsContext::origin):
   65213         (WebCore::GraphicsContext::setPlatformFont):
   65214         (WebCore::GraphicsContext::setPlatformStrokeColor):
   65215         (WebCore::GraphicsContext::setPlatformStrokeStyle):
   65216         (WebCore::GraphicsContext::setPlatformStrokeThickness):
   65217         (WebCore::GraphicsContext::setPlatformFillColor):
   65218 
   65219 2007-01-13  Eric Seidel  <eric (a] webkit.org>
   65220 
   65221         Reviewed by hyatt.
   65222 
   65223         RichDraw demo does not live-update in Safari
   65224         (SVG elements should ignore CSS position)
   65225         http://bugs.webkit.org/show_bug.cgi?id=10364
   65226 
   65227         * css/cssstyleselector.cpp:
   65228         (WebCore::CSSStyleSelector::adjustRenderStyle): ignore position for everything but <svg>
   65229         * ksvg2/svg/SVGStyledElement.cpp:
   65230         (WebCore::SVGStyledElement::rebuildRenderer): move path generation into layout()
   65231         * rendering/RenderContainer.cpp:
   65232         (WebCore::RenderContainer::layout): ASSERT kids marked as having completed layout
   65233         * rendering/RenderPath.cpp:
   65234         (WebCore::RenderPath::layout): move path generation into layout()
   65235         * rendering/RenderSVGContainer.cpp:
   65236         (WebCore::RenderSVGContainer::layout): ASSERT kids marked as having completed layout
   65237 
   65238 2007-01-12  David Hyatt  <hyatt (a] apple.com>
   65239 
   65240         Add support for column rules.
   65241 
   65242         Reviewed by bdash
   65243 
   65244         fast/multicol/column-rules.html
   65245 
   65246         * rendering/RenderBlock.cpp:
   65247         (WebCore::RenderBlock::paintColumns):
   65248         * rendering/RenderStyle.h:
   65249         (WebCore::RenderStyle::columnRuleIsTransparent):
   65250 
   65251 2007-01-12  David Hyatt  <hyatt (a] apple.com>
   65252 
   65253         Make multicolumn layout work with floats.
   65254 
   65255         Reviewed by andersca
   65256 
   65257         Added fast/multicol/float-multicol.html
   65258 
   65259         * rendering/RenderBlock.cpp:
   65260         (WebCore::RenderBlock::layoutBlock):
   65261         (WebCore::RenderBlock::paintColumns):
   65262         (WebCore::RenderBlock::paintObject):
   65263         * rendering/RenderBlock.h:
   65264 
   65265 2007-01-12  David Kilzer  <ddkilzer (a] kilzer.net>
   65266 
   65267         Reviewed by Maciej.
   65268 
   65269         - fix http://bugs.webkit.org/show_bug.cgi?id=12239
   65270           REGRESSION (r18816-r18818): Assertion failure in 
   65271           WebCore::Length::Length[in-charge](int, WebCore::LengthType, bool)
   65272 
   65273         Test: fast/css/line-height.html
   65274 
   65275         * rendering/RenderTextControl.cpp:
   65276         (WebCore::RenderTextControl::createInnerTextStyle): Use a float to create a percent Length.
   65277 
   65278 2007-01-12  Anders Carlsson  <acarlsson (a] apple.com>
   65279 
   65280         Reviewed by Darin.
   65281 
   65282         Use unsigned long for identifiers instead of Objective-C objects.
   65283         
   65284         * loader/FrameLoader.cpp:
   65285         (WebCore::FrameLoader::loadResourceSynchronously):
   65286         (WebCore::FrameLoader::startLoadingMainResource):
   65287         (WebCore::FrameLoader::startLoading):
   65288         (WebCore::FrameLoader::assignIdentifierToInitialRequest):
   65289         (WebCore::FrameLoader::opened):
   65290         (WebCore::FrameLoader::sendRemainingDelegateMessages):
   65291         (WebCore::FrameLoader::requestFromDelegate):
   65292         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
   65293         * loader/FrameLoader.h:
   65294         * loader/FrameLoaderClient.h:
   65295         * loader/ResourceLoader.cpp:
   65296         (WebCore::ResourceLoader::ResourceLoader):
   65297         (WebCore::ResourceLoader::willSendRequest):
   65298         * loader/ResourceLoader.h:
   65299         (WebCore::ResourceLoader::setIdentifier):
   65300         (WebCore::ResourceLoader::identifier):
   65301         * page/Page.cpp:
   65302         (WebCore::Page::Page):
   65303         (WebCore::Page::createUniqueIdentifier):
   65304         * page/Page.h:
   65305         * platform/graphics/svg/SVGImageEmptyClients.h:
   65306         (WebCore::SVGEmptyFrameLoaderClient::assignIdentifierToInitialRequest):
   65307         (WebCore::SVGEmptyFrameLoaderClient::dispatchWillSendRequest):
   65308         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
   65309         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
   65310         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveResponse):
   65311         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveContentLength):
   65312         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFinishLoading):
   65313         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFailLoading):
   65314         (WebCore::SVGEmptyFrameLoaderClient::incrementProgress):
   65315         (WebCore::SVGEmptyFrameLoaderClient::completeProgress):
   65316 
   65317 2007-01-12  Mitz Pettel  <mitz (a] webkit.org>
   65318 
   65319         Reviewed by Darin.
   65320 
   65321         - fix http://bugs.webkit.org/show_bug.cgi?id=12235
   65322           REGRESSION (r18815): Marquees do not scroll
   65323 
   65324         * css/cssstyleselector.cpp:
   65325         (WebCore::CSSStyleSelector::applyProperty): Apply the '-webkit-marquee' value
   65326         of 'overflow-x' and 'overflow-y'.
   65327 
   65328 2007-01-12  Justin Garcia  <justin.garcia (a] apple.com>
   65329 
   65330         Reviewed by hyatt
   65331         
   65332         <rdar://problem/4875425>
   65333         EBay, GMail, and GoogleDocs RTEs font size popups don't work
   65334 
   65335         Changed execCommand("FontSize", ...) to match the spec 
   65336         and the behavior of other browsers.  It expects a number, 
   65337         n, which, the spec says can be 1 through 7.  Other browsers 
   65338         perform the font size change by creating a font element 
   65339         wrapper with size="n".  We convert n into one of the absolute 
   65340         size CSS keywords (x-small, medium, etc.).
   65341 
   65342         * editing/JSEditor.cpp: Call cssValueFromFontSizeNumber.  If
   65343         successful, perform the style change.
   65344         * html/HTMLFontElement.cpp:
   65345         (WebCore::HTMLFontElement::cssValueFromFontSizeNumber):  Added.
   65346         Moved this code from parsedMappedAttribute so that it could be
   65347         called from the Editor.
   65348         (WebCore::HTMLFontElement::parseMappedAttribute): Moved code into
   65349         cssValueFromFontSizeNumber.
   65350         * html/HTMLFontElement.h:
   65351 
   65352 2007-01-12  David Hyatt  <hyatt (a] apple.com>
   65353 
   65354         Fix for bug 11598, implement lightweight control clipping mechanism for
   65355         buttons, list boxes, and dropdown lists.  Make sure list box respects
   65356         scrollLeft/Top/Width/Height as well as clientWidth/Height.
   65357 
   65358         Fix bugs in RenderStyle::diff.  CursorData was not being compared properly.
   65359         vertical-align had a non-inline display check that was wrong (preventing
   65360         dynamic changes to keyword-based vertical-align from working).
   65361 
   65362         Reviewed by mitz
   65363 
   65364         * page/EventHandler.cpp:
   65365         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
   65366         * rendering/RenderBlock.cpp:
   65367         (WebCore::RenderBlock::layout):
   65368         (WebCore::RenderBlock::layoutBlock):
   65369         (WebCore::RenderBlock::determineHorizontalPosition):
   65370         (WebCore::RenderBlock::layoutBlockChildren):
   65371         (WebCore::RenderBlock::paint):
   65372         (WebCore::RenderBlock::fillHorizontalSelectionGap):
   65373         (WebCore::RenderBlock::nodeAtPoint):
   65374         (WebCore::RenderBlock::layoutColumns):
   65375         * rendering/RenderBox.cpp:
   65376         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   65377         * rendering/RenderBox.h:
   65378         * rendering/RenderButton.cpp:
   65379         (WebCore::RenderButton::setStyle):
   65380         (WebCore::RenderButton::controlClipRect):
   65381         * rendering/RenderButton.h:
   65382         (WebCore::RenderButton::hasControlClip):
   65383         * rendering/RenderFlexibleBox.cpp:
   65384         (WebCore::RenderFlexibleBox::layoutBlock):
   65385         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   65386         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   65387         * rendering/RenderFlow.cpp:
   65388         (WebCore::RenderFlow::addFocusRingRects):
   65389         * rendering/RenderListBox.cpp:
   65390         (WebCore::RenderListBox::itemBoundingBoxRect):
   65391         (WebCore::RenderListBox::paintObject):
   65392         (WebCore::RenderListBox::itemHeight):
   65393         (WebCore::RenderListBox::verticalScrollbarWidth):
   65394         (WebCore::RenderListBox::scrollWidth):
   65395         (WebCore::RenderListBox::scrollHeight):
   65396         (WebCore::RenderListBox::scrollLeft):
   65397         (WebCore::RenderListBox::setScrollLeft):
   65398         (WebCore::RenderListBox::scrollTop):
   65399         (WebCore::RenderListBox::setScrollTop):
   65400         (WebCore::RenderListBox::controlClipRect):
   65401         * rendering/RenderListBox.h:
   65402         (WebCore::RenderListBox::hasControlClip):
   65403         * rendering/RenderMenuList.cpp:
   65404         (WebCore::RenderMenuList::setStyle):
   65405         (WebCore::RenderMenuList::controlClipRect):
   65406         * rendering/RenderMenuList.h:
   65407         (WebCore::RenderMenuList::hasControlClip):
   65408         * rendering/RenderObject.cpp:
   65409         (WebCore::RenderObject::verticalScrollbarWidth):
   65410         (WebCore::RenderObject::horizontalScrollbarHeight):
   65411         (WebCore::RenderObject::clientWidth):
   65412         (WebCore::RenderObject::clientHeight):
   65413         (WebCore::RenderObject::setStyle):
   65414         * rendering/RenderObject.h:
   65415         (WebCore::RenderObject::hasControlClip):
   65416         (WebCore::RenderObject::controlClipRect):
   65417         (WebCore::RenderObject::contentWidth):
   65418         (WebCore::RenderObject::contentHeight):
   65419         * rendering/RenderStyle.cpp:
   65420         (WebCore::StyleVisualData::StyleVisualData):
   65421         (WebCore::cursorDataEqvuialent):
   65422         (WebCore::StyleInheritedData::operator==):
   65423         (WebCore::CursorList::operator==):
   65424         (WebCore::RenderStyle::diff):
   65425         * rendering/RenderStyle.h:
   65426         (WebCore::LengthBox::operator!=):
   65427         (WebCore::StyleVisualData::operator==):
   65428         (WebCore::CursorData::operator==):
   65429         (WebCore::CursorData::operator!=):
   65430         (WebCore::CursorList::operator!=):
   65431         (WebCore::RenderStyle::setTableLayout):
   65432         * rendering/bidi.cpp:
   65433         (WebCore::RenderBlock::layoutInlineChildren):
   65434 
   65435 2007-01-12  David Hyatt  <hyatt (a] apple.com>
   65436 
   65437         Fix for bug 9934, smaller line heights should not be allowed on
   65438         text fields.
   65439 
   65440         Reviewed by darin
   65441 
   65442         * rendering/RenderTextControl.cpp:
   65443         (WebCore::RenderTextControl::createInnerTextStyle):
   65444 
   65445 2007-01-12  Mitz Pettel  <mitz (a] webkit.org>
   65446 
   65447         Reviewed by Hyatt.
   65448 
   65449         - http://bugs.webkit.org/show_bug.cgi?id=12215
   65450           Treat 'overflow' and '-webkit-border-radius' as shorthands when parsing and
   65451           when removing.
   65452 
   65453         Test: fast/css/remove-shorthand.html (updated)
   65454 
   65455         * css/CSSMutableStyleDeclaration.cpp:
   65456         (WebCore::initShorthandMap):
   65457         * css/cssparser.cpp:
   65458         (WebCore::CSSParser::parseValue):
   65459 
   65460 2007-01-12  Rob Buis  <buis (a] kde.org>
   65461 
   65462         Reviewed by Mitz.
   65463 
   65464         Do not mix up JSSVGPolygonElement and JSSVGPolylineElement.
   65465 
   65466         * bindings/js/JSSVGElementWrapperFactory.cpp:
   65467 
   65468 2007-01-12  Kevin Decker <kdecker (a] apple.com>
   65469 
   65470         Reviewed by andersca.
   65471 
   65472         Fixed: <rdar://problem/4701326>21.2 ms launch time regression spent in +[WebPluginDatabase installedPlugins]
   65473 
   65474         * dom/DOMImplementation.cpp:
   65475         (WebCore::DOMImplementation::createDocument): Added a guard clause for text/html which used to be in WebKit before a lot of the 
   65476         loader plumbing was moved to WebCore.  Pinging the plug-in database to ask it if it supports a given mime type has the side 
   65477         effect of reading from disk on first call, therefore such a check should be a last resort.  
   65478 
   65479 2007-01-12  Mitz Pettel  <mitz (a] webkit.org>
   65480 
   65481         Reviewed by Darin.
   65482 
   65483         - fix http://bugs.webkit.org/show_bug.cgi?id=12223
   65484           REGRESSION: Leaks under CSSStyleSelector::applyProperty
   65485 
   65486         No test possible (no change to functionality).
   65487 
   65488         * rendering/RenderObject.h: Removed unused forward declaration.
   65489         * rendering/RenderStyle.cpp:
   65490         (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
   65491         Delete shadow data.
   65492 
   65493 2007-01-12  Anders Carlsson  <acarlsson (a] apple.com>
   65494 
   65495         Build fix.
   65496         
   65497         * WebCore.xcodeproj/project.pbxproj:
   65498         Remove SubresourceLoaderMac.mm.
   65499         
   65500 2007-01-12  Lars Knoll <lars (a] trolltech.com>
   65501 
   65502         Reviewed by Darin and Anders.
   65503 
   65504         Make some more of the loader code platform independent.
   65505 
   65506         * loader/FrameLoader.cpp:
   65507         (WebCore::FrameLoader::clear):
   65508         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   65509         (WebCore::FrameLoader::urlSelected):
   65510         (WebCore::FrameLoader::createEmptyDocument):
   65511         (WebCore::FrameLoader::setTitle):
   65512         (WebCore::FrameLoader::originalRequestURL):
   65513         (WebCore::FrameLoader::referrer):
   65514         * loader/SubresourceLoader.cpp:
   65515         (WebCore::SubresourceLoader::SubresourceLoader):
   65516         (WebCore::SubresourceLoader::load):
   65517         (WebCore::SubresourceLoader::create):
   65518         (WebCore::SubresourceLoader::willSendRequest):
   65519         (WebCore::SubresourceLoader::didReceiveResponse):
   65520         (WebCore::SubresourceLoader::didReceiveData):
   65521         (WebCore::SubresourceLoader::didFinishLoading):
   65522         (WebCore::SubresourceLoader::didFail):
   65523         (WebCore::SubresourceLoader::didCancel):
   65524         (WebCore::SubresourceLoader::stopLoading):
   65525         * loader/SubresourceLoader.h:
   65526         * loader/mac/FrameLoaderMac.mm:
   65527         * loader/mac/SubresourceLoaderMac.mm: Removed.
   65528         * loader/qt/FrameLoaderQt.cpp:
   65529 
   65530 2007-01-12  Lars Knoll <lars (a] trolltech.com>
   65531 
   65532         Reviewed by Zack
   65533 
   65534         Valgrind reported uninitialized variable.
   65535 
   65536         * platform/network/qt/ResourceHandleManagerQt.cpp:
   65537         (WebCore::FileLoader::request):
   65538 
   65539 2007-01-12  Mitz Pettel  <mitz (a] webkit.org>
   65540 
   65541         Reviewed by rwlbuis.
   65542 
   65543         - add missing null check in new fixed table layout code
   65544 
   65545         * rendering/FixedTableLayout.cpp:
   65546         (WebCore::FixedTableLayout::calcWidthArray):
   65547 
   65548 2007-01-12  Lars Knoll <lars (a] trolltech.com>
   65549 
   65550         Fix the Qt build after the Authenitcation changes.
   65551 
   65552         * WebCore.pro:
   65553         * platform/network/ResourceHandleInternal.h:
   65554 
   65555 2007-01-12  David Hyatt  <hyatt (a] apple.com>
   65556 
   65557         Fix for bug 9569.  Make sure the selection offset for selection roots excludes border and padding.
   65558 
   65559         Reviewed by Eric
   65560 
   65561         * rendering/RenderBlock.cpp:
   65562         (WebCore::RenderBlock::leftSelectionOffset):
   65563         (WebCore::RenderBlock::rightSelectionOffset):
   65564 
   65565 2007-01-11  David Hyatt  <hyatt (a] apple.com>
   65566 
   65567         Fix for bug 8705, readonly text fields should not get focus rings.  Add a rule to that effect to
   65568         html4.css and then also add readonly as a special case for style sharing so that we can retain the
   65569         performance boost from sharing styles on inputs.
   65570 
   65571         Reviewed by bdash
   65572 
   65573         * css/cssstyleselector.cpp:
   65574         (WebCore::CSSStyleSelector::canShareStyleWithElement):
   65575         (WebCore::CSSStyleSelector::checkOneSelector):
   65576         * css/html4.css:
   65577 
   65578 2007-01-11  David Hyatt  <hyatt (a] apple.com>
   65579 
   65580         Fix for bug 11595.  Autoscrolling of layers didn't really work at all unless the layer was coincidentally
   65581         in the root layer's coordinate space.  The event point was an absolute position within the document, but
   65582         the layer's rect was only local coords.  This patch makes sure to use absolute bounds for the layer
   65583         when comparing it with the point.
   65584 
   65585         This is covered by the scrollRevealButton test case already in the tree... the results change to be more
   65586         correct.
   65587 
   65588         Reviewed by ggaren
   65589 
   65590         * rendering/RenderLayer.cpp:
   65591         (WebCore::RenderLayer::scrollRectToVisible):
   65592 
   65593 2007-01-11  Brady Eidson  <beidson (a] apple.com>
   65594 
   65595         Reviewed by Oliver
   65596 
   65597         -Move more HTTP Auth handling towards ResourceHandle, away from ResourceHandleClient
   65598         -Make more of ResourceLoader cross-platform
   65599 
   65600         * loader/ResourceLoader.cpp:
   65601         (WebCore::ResourceLoader::ResourceLoader):
   65602         (WebCore::ResourceLoader::releaseResources):
   65603         (WebCore::ResourceLoader::didCancel):
   65604         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
   65605         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
   65606         (WebCore::ResourceLoader::receivedCancellation):
   65607         * loader/ResourceLoader.h:
   65608         (WebCore::ResourceLoader::willStopBufferingData):
   65609         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
   65610         (WebCore::ResourceLoader::willCacheResponse):
   65611         * loader/mac/ResourceLoaderMac.mm:
   65612         * platform/network/ResourceHandle.h:
   65613         * platform/network/ResourceHandleClient.h:
   65614         (WebCore::ResourceHandleClient::willStopBufferingData):
   65615         * platform/network/ResourceHandleInternal.h:
   65616         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
   65617         * platform/network/mac/ResourceHandleMac.mm:
   65618         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
   65619         (WebCore::ResourceHandle::didCancelAuthenticationChallenge):
   65620         (WebCore::ResourceHandle::receivedCredential):
   65621         (WebCore::ResourceHandle::receivedRequestToContinueWithoutCredential):
   65622         (WebCore::ResourceHandle::receivedCancellation):
   65623         (WebCore::ResourceHandle::clearAuthentication):
   65624         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
   65625         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
   65626         (-[WebCoreResourceHandleAsDelegate useCredential:forAuthenticationChallenge:]):
   65627         (-[WebCoreResourceHandleAsDelegate continueWithoutCredentialForAuthenticationChallenge:]):
   65628         (-[WebCoreResourceHandleAsDelegate cancelAuthenticationChallenge:]):
   65629 
   65630 2007-01-11  David Hyatt  <hyatt (a] apple.com>
   65631 
   65632         A hit test is returning a null renderer.  Make sure to null-check it in the autoscroll code.
   65633         This really shouldn't happen, but I'm just going to bullet proof for now given that it's happening
   65634         on the front page of yahoo.com!
   65635 
   65636         Reviewed by mark
   65637 
   65638         * rendering/RenderLayer.cpp:
   65639         (WebCore::RenderLayer::autoscroll):
   65640 
   65641 2007-01-11  David Hyatt  <hyatt (a] apple.com>
   65642 
   65643         Force column-width to parse in strict mode so that there is no confusion when it is used in the columns
   65644         shorthand (it can be mistaken for column-count otherwise).
   65645 
   65646         Reviewed by Mark
   65647 
   65648         fast/multicol/columns-shorthand-parsing.html
   65649 
   65650         * css/cssparser.cpp:
   65651         (WebCore::CSSParser::parseValue):
   65652 
   65653 2007-01-11  Mitz Pettel  <mitz (a] webkit.org>
   65654 
   65655         Reviewed by Hyatt.
   65656 
   65657         - fix http://bugs.webkit.org/show_bug.cgi?id=12124
   65658           RenderTable::section{Above,Below}() can return the wrong answer for the {footer,header}
   65659 
   65660         * rendering/RenderTable.cpp:
   65661         (WebCore::resetSectionPointerIfNotBefore): Added this function to help with
   65662         checking if a section being inserted is the going to be the first of its kind.
   65663         (WebCore::RenderTable::addChild): Changed to maintain the pointers to the
   65664         header, the footer, the caption and the first table body properly when objects
   65665         are inserted in the middle. Also changed to make the first caption win over
   65666         any other captions. This matches Firefox and what already used to happen when a
   65667         section recalc took place.
   65668         (WebCore::RenderTable::layout): Changed to use sectionBelow() for iterating
   65669         over the sections from top to bottom.
   65670         (WebCore::RenderTable::calcBorderLeft): Changed to really find the section
   65671         containing the first row.
   65672         (WebCore::RenderTable::calcBorderRight): Ditto.
   65673         (WebCore::RenderTable::sectionAbove): Fixed a bug when the last section was
   65674         skipped if the input was the footer.
   65675         (WebCore::RenderTable::sectionBelow): Ditto for "first" and "header"
   65676         respectively.
   65677 
   65678 2007-01-11  Mitz Pettel  <mitz (a] webkit.org>
   65679 
   65680         Reviewed by Hyatt.
   65681 
   65682         - fix http://bugs.webkit.org/show_bug.cgi?id=12115
   65683           RTL text is jumbled on display
   65684 
   65685         Fixed fixed table layout. Implemented an algorithm that matches the behavior
   65686         of Firefox, up to rounding errors.
   65687 
   65688         Fixes three existing table tests.
   65689 
   65690         * rendering/FixedTableLayout.cpp:
   65691         Undid accidental search-and-replace of "width" to "m_width" in the comments.
   65692         Removed an outdated comment, since WebKit no longer honors table-layout:fixed
   65693         for variable-width tables.
   65694         (WebCore::FixedTableLayout::calcWidthArray): Fixed the logic that finds the
   65695         first row. Changed to divide the width specified for a cell that spans multiple
   65696         columns between the columns rather than assign its entire width to each column.
   65697         (WebCore::FixedTableLayout::calcMinMaxWidth):
   65698         (WebCore::FixedTableLayout::layout): Implemented the behavior observed in
   65699         Firefox.
   65700         * rendering/FixedTableLayout.h:
   65701 
   65702 2007-01-11  Mitz Pettel  <mitz (a] webkit.org>
   65703 
   65704         Reviewed by Hyatt.
   65705 
   65706         - fix http://bugs.webkit.org/show_bug.cgi?id=8438
   65707           iExploder(#460): Assertion failure in RenderObject::drawBorder()
   65708 
   65709         Test: fast/block/basic/fieldset-stretch-to-legend.html
   65710 
   65711         * rendering/RenderBox.cpp:
   65712         (WebCore::RenderBox::calcWidth): Stretch to the minimum intrinsic
   65713         width if the object requires it.
   65714         (WebCore::RenderBox::calcHorizontalMargins): Some style cleanup.
   65715         (WebCore::RenderBox::calcAbsoluteHorizontal): Stretch to the minimum
   65716         intrinsic width if the object requires it.
   65717         * rendering/RenderBox.h:
   65718         (WebCore::RenderBox::stretchesToMinIntrinsicWidth): Added. Returns false.
   65719         * rendering/RenderFieldset.cpp:
   65720         (WebCore::RenderFieldset::calcMinMaxWidth): Overloaded RenderBlock's
   65721         implementation to ensure that the legend's will fit in the fieldset's
   65722         minimum intrinsic width.
   65723         (WebCore::RenderFieldset::findLegend): Made const.
   65724         (WebCore::RenderFieldset::paintBoxDecorations):
   65725         (WebCore::RenderFieldset::paintBorderMinusLegend): Fixed the behavior when
   65726         the legend does overflow the fieldset. This is the part of the fix that
   65727         prevents the assertion failure. If the legend intersects with a corner of
   65728         the fieldset's border, that corner will not be painted, even if it is not
   65729         completely occluded. This edge case can be improved with clipping in the
   65730         future. Added FIXME to implement border-radius.
   65731         * rendering/RenderFieldset.h:
   65732         (WebCore::RenderFieldset::stretchesToMinIntrinsicWidth): Overloaded to
   65733         return true.
   65734 
   65735 2007-01-11  Brady Eidson  <beidson (a] apple.com>
   65736 
   65737         Reviewed by Build Fix Karma
   65738 
   65739         I broke the release build (debug build passed)
   65740 
   65741         * platform/network/mac/AuthenticationMac.mm:
   65742         (WebCore::core):
   65743 
   65744 2007-01-11  Brady Eidson  <beidson (a] apple.com>
   65745 
   65746         Reviewed by Anders
   65747 
   65748         Rewrites HTTP Authentication setting up a more platform-independent structure
   65749 
   65750         * WebCore.exp:
   65751         * WebCore.xcodeproj/project.pbxproj:
   65752         * loader/FrameLoader.cpp:
   65753         (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
   65754         (WebCore::FrameLoader::didCancelAuthenticationChallenge):
   65755         * loader/FrameLoader.h:
   65756         * loader/FrameLoaderClient.h:
   65757         * loader/ResourceLoader.cpp:
   65758         (WebCore::ResourceLoader::ResourceLoader):
   65759         (WebCore::ResourceLoader::didCancel):
   65760         * loader/ResourceLoader.h:
   65761         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
   65762         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
   65763         (WebCore::ResourceLoader::receivedCredential):
   65764         (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
   65765         (WebCore::ResourceLoader::receivedCancellation):
   65766         * loader/mac/FrameLoaderMac.mm:
   65767         * loader/mac/ResourceLoaderMac.mm:
   65768         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
   65769         (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
   65770         (WebCore::ResourceLoader::receivedCredential):
   65771         (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
   65772         (WebCore::ResourceLoader::receivedCancellation):
   65773         * platform/graphics/svg/SVGImageEmptyClients.h:
   65774         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
   65775         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
   65776         * platform/network/ResourceHandleClient.h:
   65777         (WebCore::ResourceHandleClient::willSendRequest):
   65778         (WebCore::ResourceHandleClient::didReceiveAuthenticationChallenge):
   65779         (WebCore::ResourceHandleClient::didCancelAuthenticationChallenge):
   65780         (WebCore::ResourceHandleClient::receivedCredential):
   65781         (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential):
   65782         (WebCore::ResourceHandleClient::receivedCancellation):
   65783         (WebCore::ResourceHandleClient::willCacheResponse):
   65784         * platform/network/ResourceResponse.h:
   65785         (WebCore::operator!=):
   65786         * platform/network/URLAuthenticationChallenge.cpp: Added.
   65787         (WebCore::URLAuthenticationChallenge::URLAuthenticationChallenge):
   65788         (WebCore::URLAuthenticationChallenge::previousFailureCount):
   65789         (WebCore::URLAuthenticationChallenge::proposedCredential):
   65790         (WebCore::URLAuthenticationChallenge::protectionSpace):
   65791         (WebCore::URLAuthenticationChallenge::failureResponse):
   65792         (WebCore::URLAuthenticationChallenge::error):
   65793         (WebCore::URLAuthenticationChallenge::isNull):
   65794         (WebCore::URLAuthenticationChallenge::nullify):
   65795         (WebCore::operator==):
   65796         (WebCore::operator!=):
   65797         * platform/network/URLAuthenticationChallenge.h: Added.
   65798         (WebCore::URLAuthenticationChallenge::sender):
   65799         (WebCore::URLAuthenticationChallenge::nsURLAuthenticationChallenge):
   65800         * platform/network/URLCredential.cpp: Added.
   65801         (WebCore::URLCredential::URLCredential):
   65802         (WebCore::URLCredential::user):
   65803         (WebCore::URLCredential::password):
   65804         (WebCore::URLCredential::hasPassword):
   65805         (WebCore::URLCredential::persistence):
   65806         (WebCore::operator==):
   65807         * platform/network/URLCredential.h: Added.
   65808         (WebCore::):
   65809         (WebCore::operator!=):
   65810         * platform/network/URLProtectionSpace.cpp: Added.
   65811         (WebCore::URLProtectionSpace::URLProtectionSpace):
   65812         (WebCore::URLProtectionSpace::host):
   65813         (WebCore::URLProtectionSpace::port):
   65814         (WebCore::URLProtectionSpace::serverType):
   65815         (WebCore::URLProtectionSpace::realm):
   65816         (WebCore::URLProtectionSpace::authenticationScheme):
   65817         (WebCore::operator==):
   65818         * platform/network/URLProtectionSpace.h: Added.
   65819         (WebCore::):
   65820         (WebCore::operator!=):
   65821         * platform/network/mac/AuthenticationMac.h: Added.
   65822         * platform/network/mac/AuthenticationMac.mm: Added.
   65823         (WebCore::URLAuthenticationChallenge::URLAuthenticationChallenge):
   65824         (WebCore::mac):
   65825         (WebCore::core):
   65826         * platform/network/mac/ResourceHandleMac.mm:
   65827         (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
   65828         (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
   65829         (-[WebCoreResourceHandleAsDelegate useCredential:forAuthenticationChallenge:]):
   65830         (-[WebCoreResourceHandleAsDelegate continueWithoutCredentialForAuthenticationChallenge:]):
   65831         (-[WebCoreResourceHandleAsDelegate cancelAuthenticationChallenge:]):
   65832         * platform/network/mac/ResourceResponseMac.mm:
   65833         (WebCore::operator==):
   65834 
   65835 2007-01-11  Geoffrey Garen  <ggaren (a] apple.com>
   65836 
   65837         Reviewed by Anders Carlsson.
   65838         
   65839         Even more cleanup in preparation for fixing <rdar://problem/4608404> 
   65840         WebScriptObject's _executionContext lack of ownership policy causes 
   65841         crashes (e.g., in Dashcode)
   65842         
   65843         Layout tests pass.
   65844         
   65845         Renames:
   65846             findRootObjectForNativeHandleFunction => createRootObject
   65847             FindRootObjectForNativeHandleFunctionPtr => createRootObjectFunction
   65848             rootForView => createRootObject
   65849             getInstanceForView => getPluginInstanceForWidget
   65850 
   65851         * page/mac/FrameMac.mm:
   65852         (WebCore::FrameMac::getAppletInstanceForWidget): Put the NSView * in a void*
   65853         variable named "nativeHandle" to be more explicit about the fact that JavaScript's
   65854         "nativeHandle" is just an NSView *.
   65855 
   65856         (WebCore::getPluginInstanceForWidget): This function now does the NSView *
   65857         fetching that its callers used to do.
   65858         (WebCore::FrameMac::getEmbedInstanceForWidget): Updated for rename.
   65859         (WebCore::FrameMac::getObjectInstanceForWidget): ditto
   65860 
   65861         * page/mac/WebCoreFrameBridge.mm: Killed the WebCoreBridgeInternal category,
   65862         which was really more of a shmategory.
   65863         (createRootObject): Removed rootObjectForView, folding it into its only
   65864         caller, the similarly named rootForView. Renamed the pair to "createRootObject"
   65865         because that's what they do.
   65866 
   65867         (-[WebCoreFrameBridge init]): Updated for renames
   65868 
   65869 2007-01-11  Anders Carlsson  <acarlsson (a] apple.com>
   65870 
   65871         Reviewed by Darin.
   65872 
   65873         Fix crash on platforms that don't use the new loader yet.
   65874         
   65875         * loader/DocLoader.cpp:
   65876         (WebCore::DocLoader::requestResource):
   65877 
   65878 2007-01-11  Mitz Pettel  <mitz (a] webkit.org>
   65879 
   65880         Reviewed by Adam.
   65881 
   65882         - fix http://bugs.webkit.org/show_bug.cgi?id=11449
   65883           Type-to-select in unopened popups doesn't work with Hebrew
   65884 
   65885         Test: fast/forms/select-type-ahead-non-latin.html
   65886 
   65887         * html/HTMLSelectElement.cpp:
   65888         (WebCore::HTMLSelectElement::defaultEventHandler): Changed locale-specific
   65889         isprint() condition to a Unicode isPrintableChar().
   65890 
   65891 2007-01-09  Justin Garcia  <justin.garcia (a] apple.com>
   65892 
   65893         Reviewed by geoff
   65894         
   65895         <rdar://problem/4889140>
   65896         GMail Editor: List creation fails in new message
   65897 
   65898         * editing/InsertListCommand.cpp:
   65899         (WebCore::InsertListCommand::doApply): Inserting the list
   65900         into an empty paragraph not held open by a br or a '\n', 
   65901         will invalidate start and end.  Insert a placeholder and 
   65902         then recompute start and end.
   65903 
   65904 2007-01-11  Lars Knoll <lars (a] trolltech.com>
   65905 
   65906         Rubberstamped by Anders
   65907 
   65908         This one is not needed any longer neither.
   65909 
   65910         * ChangeLog:
   65911         * WebCore.pro:
   65912         * loader/qt/NavigationActionQt.cpp: Removed.
   65913 
   65914 2007-01-11  Lars Knoll <lars (a] trolltech.com>
   65915 
   65916         Reviewed by Anders
   65917 
   65918         Remove now unused file
   65919 
   65920         * WebCore.pro:
   65921         * loader/qt/LoaderFunctionsQt.cpp: Removed.
   65922 
   65923 2007-01-11  David Kilzer  <ddkilzer (a] webkit.org>
   65924 
   65925         Reviewed by NOBODY (build fix).
   65926 
   65927         * loader/mac/FrameLoaderMac.mm:  Removed import of LoaderNSURLRequestExtras.h.
   65928         * loader/mac/SubresourceLoaderMac.mm:  Ditto.
   65929 
   65930 2007-01-11  George Staikos  <staikos (a] kde.org>
   65931 
   65932         Fix compile.
   65933 
   65934         * page/qt/FrameQtClient.cpp:
   65935 
   65936 2007-01-11  Anders Carlsson  <acarlsson (a] apple.com>
   65937 
   65938         Fix build.
   65939         
   65940         * dom/XMLTokenizer.cpp:
   65941         * loader/CachedCSSStyleSheet.cpp:
   65942         * loader/CachedImage.cpp:
   65943         * loader/DocLoader.cpp:
   65944         * loader/loader.cpp:
   65945         * xml/XSLTProcessor.cpp:
   65946         * xml/xmlhttprequest.cpp:
   65947 
   65948 2007-01-11  Anders Carlsson  <acarlsson (a] apple.com>
   65949 
   65950         Reviewed by Adam.
   65951 
   65952         Loader cleanup, get rid of unused code.
   65953         
   65954         * WebCore.xcodeproj/project.pbxproj:
   65955         * loader/CachedResource.h:
   65956         * loader/DocLoader.cpp:
   65957         (WebCore::DocLoader::requestResource):
   65958         (WebCore::DocLoader::checkCacheObjectStatus):
   65959         * loader/DocLoader.h:
   65960         * loader/LoaderFunctions.h: Removed.
   65961         * loader/mac/CachedResourceMac.mm: Removed.
   65962         * loader/mac/LoaderFunctionsMac.mm: Removed.
   65963         * loader/mac/LoaderNSURLRequestExtras.h: Removed.
   65964         * loader/mac/LoaderNSURLRequestExtras.m: Removed.
   65965         * loader/mac/SubresourceLoaderMac.mm:
   65966         * page/mac/WebCoreFrameBridge.mm:
   65967         * platform/network/ResourceHandle.cpp:
   65968 
   65969 2007-01-11  Beth Dakin  <bdakin (a] apple.com>
   65970 
   65971         Reviewed by Adam.
   65972 
   65973         Fix for http://bugs.webkit.org/show_bug.cgi?id=12135 REGRESSION: 
   65974         <input> and <textarea> not focused on right click (4908884 in 
   65975         Radar)
   65976 
   65977         * page/EventHandler.cpp:
   65978         (WebCore::EventHandler::sendContextMenuEvent): Since WebcCore now 
   65979         handles the context menu event, we want to ask if we *have* 
   65980         swallowed the event instead of if we *haven't* when deciding to 
   65981         perform a selection. In the past, WebKit handled the event, so 
   65982         swallowEvent was false in the case where we want to pop up a menu. 
   65983 
   65984 2007-01-11  Darin Adler  <darin (a] apple.com>
   65985 
   65986         Reviewed by Anders.
   65987 
   65988         - fix http://bugs.webkit.org/show_bug.cgi?id=12189
   65989           REGRESSION(r18614-18640): Crash in WebCore::SharedBuffer::hasPlatformData()
   65990 
   65991         * loader/mac/LoaderFunctionsMac.mm: (WebCore::CheckCacheObjectStatus):
   65992         Added null check.
   65993 
   65994 2007-01-11  Darin Adler  <darin (a] apple.com>
   65995 
   65996         * platform/CharacterNames.h: Oops! horizontalEllipsis != zeroWidthSpace!
   65997 
   65998 2007-01-11  Lars Knoll <lars (a] trolltech.com>
   65999 
   66000         Reviewed by Darin.
   66001 
   66002         Start using the loader in the Qt port.
   66003 
   66004         * loader/FrameLoader.cpp:
   66005         (WebCore::FrameLoader::clear):
   66006         (WebCore::FrameLoader::URL):
   66007         (WebCore::FrameLoader::createEmptyDocument):
   66008         * loader/qt/FrameLoaderQt.cpp:
   66009         (WebCore::FrameLoader::setTitle):
   66010         (WebCore::FrameLoader::originalRequestURL):
   66011         (WebCore::FrameLoader::referrer):
   66012         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   66013         * page/qt/FrameQtClient.cpp:
   66014         (WebCore::FrameQtClient::openURL):
   66015 
   66016 2007-01-11  Darin Adler  <darin (a] apple.com>
   66017 
   66018         Reviewed by Hyatt.
   66019 
   66020         - removed a couple Mac bridging classes; put the code in WebKit instead
   66021 
   66022         * WebCore.exp: Updated for new WebKit uses.
   66023 
   66024         * WebCore.xcodeproj/project.pbxproj: Removed files.
   66025         * bridge/mac/WebCoreEncodings.h: Removed.
   66026         * bridge/mac/WebCoreEncodings.mm: Removed.
   66027         * bridge/mac/WebMimeTypeRegistryBridge.h: Removed.
   66028         * bridge/mac/WebMimeTypeRegistryBridge.mm: Removed.
   66029         * platform/mac/WebNSAttributedStringExtras.h: Removed.
   66030         * platform/mac/WebNSAttributedStringExtras.mm: Removed.
   66031 
   66032         * platform/mac/PasteboardMac.mm:
   66033         (WebCore::stripAttachmentCharacters): Added. Moved code from
   66034         WebNSAttributedStringExtras.mm, and fixed a garbage collection problem
   66035         (a global with a plain old retain rather than HardRetain).
   66036         (WebCore::Pasteboard::writeSelection): Updated to use stripAttachmentCharacters.
   66037 
   66038         - removed some DeprecatedCString use
   66039 
   66040         * loader/FrameLoader.cpp: Changed to use String more to eliminate use of
   66041         DeprecatedCString here in the mailto form support. But maybe we can remove
   66042         this entirely. Do we really care about mailto forms any more?
   66043 
   66044         * platform/Pasteboard.h: Removed unneeded DeprecatedCString declaration.
   66045 
   66046         * platform/PlatformString.h: Added replace that takes two strings.
   66047         * platform/StringImpl.h: Ditto.
   66048         * platform/StringImpl.cpp: (WebCore::StringImpl::replace): Ditto.
   66049 
   66050         * platform/TextStream.h: Remove DeprecatedCString case.
   66051         * platform/TextStream.cpp: Ditto.
   66052 
   66053         - made a few more files use CharacterNames.h
   66054 
   66055         * platform/CharacterNames.h: Added some more character names and
   66056         sorted alphabetically.
   66057 
   66058         * bridge/mac/WebCoreStringTruncator.mm:
   66059         (centerTruncateToBuffer): Use character name from CharacterNames.h.
   66060         (rightTruncateToBuffer): Ditto.
   66061         (truncateString): Ditto.
   66062         * platform/mac/FontMac.mm: (WebCore::addDirectionalOverride): Ditto.
   66063         * rendering/RenderFlexibleBox.cpp:
   66064         (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto.
   66065         * rendering/bidi.cpp:
   66066         (WebCore::RenderBlock::checkLinesForTextOverflow): Ditto.
   66067 
   66068 2007-01-11  David Hyatt  <hyatt (a] apple.com>
   66069 
   66070         Fix two bugs in positionForCoordinates.  (Make it work when you have a margin in between your border and
   66071         your first child block.)
   66072 
   66073         Rewrite column rebalancing to have two modes: constrained and unconstrained.  In unconstrained mode,
   66074         the system will dynamically rebalance as it loses space to breaks and compute a final intrinsic height
   66075         for the overall block.  In constrained mode, columns flow into the fixed height block, and extra columns
   66076         spill out horizontally in the appropriate direction (RTL/LTR).
   66077 
   66078         Make columns work properly with both LTR and RTL overflow blocks.
   66079 
   66080         Initial column test suite coming soon now that the basic layout is right.
   66081 
   66082         Reviewed by darin
   66083 
   66084         * rendering/RenderBlock.cpp:
   66085         (WebCore:::RenderFlow):
   66086         (WebCore::RenderBlock::layoutBlock):
   66087         (WebCore::RenderBlock::paintColumns):
   66088         (WebCore::RenderBlock::lowestPosition):
   66089         (WebCore::RenderBlock::rightmostPosition):
   66090         (WebCore::RenderBlock::leftmostPosition):
   66091         (WebCore::RenderBlock::hitTestColumns):
   66092         (WebCore::RenderBlock::positionForCoordinates):
   66093         (WebCore::RenderBlock::availableWidth):
   66094         (WebCore::RenderBlock::calcColumnWidth):
   66095         (WebCore::RenderBlock::layoutColumns):
   66096         (WebCore::RenderBlock::adjustPointToColumnContents):
   66097         * rendering/RenderBlock.h:
   66098         (WebCore::RenderBlock::hasColumns):
   66099 
   66100 2007-01-10  Rob Buis  <buis (a] kde.org>
   66101 
   66102         Reviewed by Eric.
   66103 
   66104         http://bugs.webkit.org/show_bug.cgi?id=12201
   66105         Fix image dragging issues with http://www.carto.net/papers/svg/gui/scrollbar/index.svg
   66106 
   66107         Fix calculation of absolute transform so that viewport x,y
   66108         translation is always done, also when viewBox is set.     
   66109 
   66110         * rendering/RenderSVGContainer.cpp:
   66111         (WebCore::RenderSVGContainer::paint):
   66112         (WebCore::RenderSVGContainer::viewportTransform):
   66113         (WebCore::RenderSVGContainer::absoluteTransform):
   66114 
   66115 2007-01-10  David Hyatt  <hyatt (a] apple.com>
   66116 
   66117         Rework positionForCoordinates to be more efficient and to handle multi-column content.  This entailed
   66118         adding a new field to HitTestResult called localPoint that cached the mouse coordinate in the coordinate
   66119         space of the renderer.
   66120 
   66121         positionForCoordinates now takes local coordinates and so no longer needs to waste time recomputing
   66122         absolute positions over and over again.
   66123 
   66124         Reviewed by darin
   66125 
   66126         * bridge/mac/WebCoreAXObject.mm:
   66127         (-[WebCoreAXObject value]):
   66128         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
   66129         (-[WebCoreAXObject doAXTextMarkerForPosition:]):
   66130         * dom/Document.cpp:
   66131         (WebCore::Document::prepareMouseEvent):
   66132         * editing/SelectionController.cpp:
   66133         (WebCore::SelectionController::contains):
   66134         * editing/visible_units.cpp:
   66135         (WebCore::previousLinePosition):
   66136         (WebCore::nextLinePosition):
   66137         * page/EventHandler.cpp:
   66138         (WebCore::EventHandler::selectClosestWordFromMouseEvent):
   66139         (WebCore::EventHandler::handleMousePressEventDoubleClick):
   66140         (WebCore::EventHandler::handleMousePressEventTripleClick):
   66141         (WebCore::EventHandler::handleMousePressEventSingleClick):
   66142         (WebCore::EventHandler::handleMouseMoveEvent):
   66143         (WebCore::EventHandler::handleMouseReleaseEvent):
   66144         (WebCore::EventHandler::sendContextMenuEvent):
   66145         * page/EventHandler.h:
   66146         * page/MouseEventWithHitTestResults.cpp:
   66147         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
   66148         * page/MouseEventWithHitTestResults.h:
   66149         (WebCore::MouseEventWithHitTestResults::localPoint):
   66150         * page/mac/WebCoreFrameBridge.mm:
   66151         (-[WebCoreFrameBridge _visiblePositionForPoint:]):
   66152         * rendering/EllipsisBox.cpp:
   66153         (WebCore::EllipsisBox::nodeAtPoint):
   66154         * rendering/HitTestResult.h:
   66155         (WebCore::HitTestResult::localPoint):
   66156         (WebCore::HitTestResult::setLocalPoint):
   66157         * rendering/InlineFlowBox.cpp:
   66158         (WebCore::InlineFlowBox::nodeAtPoint):
   66159         * rendering/InlineTextBox.cpp:
   66160         (WebCore::InlineTextBox::nodeAtPoint):
   66161         * rendering/RenderBlock.cpp:
   66162         (WebCore::RenderBlock::nodeAtPoint):
   66163         (WebCore::RenderBlock::hitTestContents):
   66164         (WebCore::RenderBlock::positionForCoordinates):
   66165         * rendering/RenderBox.cpp:
   66166         (WebCore::RenderBox::nodeAtPoint):
   66167         * rendering/RenderContainer.cpp:
   66168         (WebCore::RenderContainer::positionForCoordinates):
   66169         * rendering/RenderFlow.cpp:
   66170         (WebCore::RenderFlow::hitTestLines):
   66171         * rendering/RenderInline.cpp:
   66172         (WebCore::RenderInline::positionForCoordinates):
   66173         * rendering/RenderLayer.cpp:
   66174         (WebCore::RenderLayer::autoscroll):
   66175         (WebCore::RenderLayer::hitTestLayer):
   66176         * rendering/RenderObject.cpp:
   66177         (WebCore::RenderObject::updateHitTestResult):
   66178         * rendering/RenderObject.h:
   66179         * rendering/RenderPath.cpp:
   66180         (WebCore::RenderPath::nodeAtPoint):
   66181         * rendering/RenderReplaced.cpp:
   66182         (WebCore::RenderReplaced::positionForCoordinates):
   66183         * rendering/RenderTableRow.cpp:
   66184         (WebCore::RenderTableRow::nodeAtPoint):
   66185         * rendering/RenderTableSection.cpp:
   66186         (WebCore::RenderTableSection::nodeAtPoint):
   66187         * rendering/RenderText.cpp:
   66188         (WebCore::RenderText::positionForCoordinates):
   66189         * rendering/RootInlineBox.cpp:
   66190         (WebCore::RootInlineBox::nodeAtPoint):
   66191         (WebCore::RootInlineBox::closestLeafChildForXPos):
   66192         * rendering/RootInlineBox.h:
   66193 
   66194 2007-01-11  George Staikos  <staikos (a] kde.org>
   66195 
   66196         Reviewed by Maciej.
   66197 
   66198         Fix Qt Build.
   66199 
   66200         * loader/qt/DocumentLoaderQt.cpp:
   66201         (WebCore::DocumentLoader::getResponseModifiedHeader):
   66202 
   66203 2007-01-10  Pam Greene  <pam (a] chromium.org>
   66204 
   66205         Reviewed by Darin.
   66206 
   66207         Fixes for http://bugs.webkit.org/show_bug.cgi?id=11841
   66208 
   66209         Set image size to fit alt text when image or input-image element
   66210         has no src attribute, so that those images show their alt text instead
   66211         of showing nothing at all.
   66212 
   66213         * html/HTMLImageElement.cpp:
   66214         (WebCore::HTMLImageElement::attach):
   66215         * html/HTMLInputElement.cpp:
   66216         (WebCore::HTMLInputElement::attach):
   66217         * rendering/RenderImage.cpp:
   66218         (WebCore::RenderImage::setImageSizeForAltText):
   66219         (WebCore::RenderImage::imageChanged):
   66220         * rendering/RenderImage.h:
   66221 
   66222 2007-01-11  Mark Rowe  <mrowe (a] apple.com>
   66223 
   66224         Build fix.
   66225 
   66226         * rendering/RenderView.cpp:
   66227         (WebCore::RenderView::printing):
   66228 
   66229 2007-01-10  Mitz Pettel  <mitz (a] webkit.org>
   66230 
   66231         Reviewed by Darin.
   66232 
   66233         - fix http://bugs.webkit.org/show_bug.cgi?id=9284
   66234           Quirksmode (CSS1): Removing inline border styles is impossible
   66235 
   66236         Test: fast/css/remove-shorthand.html
   66237 
   66238         * css/CSSMutableStyleDeclaration.cpp:
   66239         (WebCore::PropertyLonghand::PropertyLonghand): Added this structure
   66240         containing a pointer to an array if properties and the array's length.
   66241         (WebCore::PropertyLonghand::properties):
   66242         (WebCore::PropertyLonghand::length):
   66243         (WebCore::initShorthandMap): Initialize the mapping from shorthand
   66244         properties to their dependent properties.
   66245         (WebCore::CSSMutableStyleDeclaration::removeProperty): Changed to check
   66246         if the property being removed is a shorthand, and if so, to remove all
   66247         of its dependent properties.
   66248         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet): Added a
   66249         'notifyChanged' boolean parameter which controls whether this method
   66250         calls setChanged() if it actually removes any property.
   66251         * css/CSSMutableStyleDeclaration.h:
   66252 
   66253 2007-01-10  Steve Falkenburg  <sfalken (a] apple.com>
   66254 
   66255         Reviewed by Kevin.
   66256 
   66257         Removed unnecessary printing state
   66258 
   66259         * page/FrameView.cpp:
   66260         (WebCore::FrameView::layout):
   66261         * page/mac/WebCoreFrameBridge.mm:
   66262         (-[WebCoreFrameBridge forceLayoutAdjustingViewSize:]):
   66263         (-[WebCoreFrameBridge forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
   66264         (-[WebCoreFrameBridge drawRect:]):
   66265         (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
   66266         (-[WebCoreFrameBridge adjustPageHeightNew:top:bottom:limit:]):
   66267         * rendering/RenderLayer.cpp:
   66268         (WebCore::RenderLayer::updateLayerPositions):
   66269         * rendering/RenderObject.cpp:
   66270         (WebCore::RenderObject::repaint):
   66271         (WebCore::RenderObject::repaintRectangle):
   66272         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
   66273         * rendering/RenderView.cpp:
   66274         (WebCore::RenderView::RenderView):
   66275         (WebCore::RenderView::calcHeight):
   66276         (WebCore::RenderView::calcWidth):
   66277         (WebCore::RenderView::layout):
   66278         (WebCore::RenderView::paint):
   66279         (WebCore::RenderView::repaintViewRectangle):
   66280         (WebCore::RenderView::computeAbsoluteRepaintRect):
   66281         (WebCore::RenderView::printing):
   66282         (WebCore::RenderView::viewRect):
   66283         (WebCore::RenderView::docHeight):
   66284         (WebCore::RenderView::docWidth):
   66285         * rendering/RenderView.h:
   66286         * rendering/RenderWidget.cpp:
   66287         (WebCore::RenderWidget::updateWidgetPosition):
   66288         * rendering/bidi.cpp:
   66289         (WebCore::RenderBlock::layoutInlineChildren):
   66290 
   66291 2007-01-10  Anders Carlsson  <acarlsson (a] apple.com>
   66292 
   66293         Reviewed by Maciej.
   66294 
   66295         Get the Refresh header directly from the ResourceResponse.
   66296         
   66297         * loader/DocumentLoader.h:
   66298         * loader/FrameLoader.cpp:
   66299         (WebCore::FrameLoader::commitProvisionalLoad):
   66300         * loader/mac/DocumentLoaderMac.mm:
   66301         (WebCore::DocumentLoader::getResponseModifiedHeader):
   66302 
   66303 2007-01-10  Beth Dakin  <bdakin (a] apple.com>
   66304 
   66305         Reviewed by John.
   66306 
   66307         Fix for <rdar://problem/4914258> REGRESSION: Search in Google now 
   66308         operates on the current WebView instead of invoking Safari's 
   66309         service
   66310 
   66311         * page/ContextMenuClient.h: New call to the client to search in 
   66312         google.
   66313         * page/ContextMenuController.cpp:
   66314         (WebCore::ContextMenuController::contextMenuItemSelected): Call 
   66315         into the client instead of forming a new url string and loading it.
   66316         * platform/graphics/svg/SVGImageEmptyClients.h:
   66317         (WebCore::SVGEmptyContextMenuClient::searchWithGoogle): New call.
   66318 
   66319 2007-01-10  Adam Roben  <aroben (a] apple.com>
   66320 
   66321         Rubberstamped by Darin.
   66322 
   66323         * page/ContextMenuController.cpp:
   66324         (WebCore::ContextMenuController::contextMenuItemSelected): Pass 0
   66325         instead of an empty Event to FrameLoader::load and
   66326         FrameLoader::urlSelected.
   66327 
   66328 2007-01-10  Anders Carlsson  <acarlsson (a] apple.com>
   66329 
   66330         * loader/ResourceLoader.cpp:
   66331         (WebCore::ResourceLoader::~ResourceLoader):
   66332         Disable assertion (I forgot to do this even though I added the comment!)
   66333 
   66334 2007-01-10  Ross Burton  <ross (a] burtonini.com>
   66335 
   66336         Reviewed and landed by Anders.
   66337 
   66338         Fix case in vcproj file (the GTK+ port uses the vcproj file).
   66339 
   66340         * WebCore.vcproj/WebCore/WebCore.vcproj:
   66341 
   66342 2007-01-10  Lars Knoll  <lars (a] trolltech.com>
   66343 
   66344         Make the Qt build compile again after 
   66345         the ResourceLoader was made platform
   66346         independent. 
   66347 
   66348         * WebCore.pro:
   66349         * loader/FrameLoader.cpp:
   66350         (WebCore::FrameLoader::didFirstLayout):
   66351         * loader/qt/FrameLoaderQt.cpp:
   66352         * loader/qt/MainResourceLoaderQt.cpp: Removed.
   66353         * loader/qt/ResourceLoaderQt.cpp: Removed.
   66354         * page/qt/FrameQtClient.cpp:
   66355         (WebCore::FrameQtClient::openURL):
   66356         * platform/network/qt/ResourceHandleQt.cpp:
   66357         (WebCore::ResourceHandle::setDefersLoading):
   66358 
   66359 2007-01-10  Anders Carlsson  <acarlsson (a] apple.com>
   66360 
   66361         Rubber-stamped by Maciej.
   66362         
   66363         Move most of ResourceLoader and MainResourceLoader into the platform-independent files.
   66364         
   66365         * WebCore.xcodeproj/project.pbxproj:
   66366         * loader/FrameLoader.cpp:
   66367         (WebCore::FrameLoader::didFinishLoad):
   66368         * loader/MainResourceLoader.cpp:
   66369         (WebCore::MainResourceLoader::MainResourceLoader):
   66370         (WebCore::MainResourceLoader::~MainResourceLoader):
   66371         (WebCore::MainResourceLoader::create):
   66372         (WebCore::MainResourceLoader::receivedError):
   66373         (WebCore::MainResourceLoader::didCancel):
   66374         (WebCore::MainResourceLoader::interruptionForPolicyChangeError):
   66375         (WebCore::MainResourceLoader::stopLoadingForPolicyChange):
   66376         (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
   66377         (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
   66378         (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
   66379         (WebCore::MainResourceLoader::addData):
   66380         (WebCore::MainResourceLoader::willSendRequest):
   66381         (WebCore::shouldLoadAsEmptyDocument):
   66382         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   66383         (WebCore::MainResourceLoader::callContinueAfterContentPolicy):
   66384         (WebCore::MainResourceLoader::didReceiveResponse):
   66385         (WebCore::MainResourceLoader::didReceiveData):
   66386         (WebCore::MainResourceLoader::didFinishLoading):
   66387         (WebCore::MainResourceLoader::didFail):
   66388         (WebCore::MainResourceLoader::loadNow):
   66389         (WebCore::MainResourceLoader::load):
   66390         (WebCore::MainResourceLoader::setDefersLoading):
   66391         * loader/MainResourceLoader.h:
   66392         * loader/ResourceLoader.cpp:
   66393         (WebCore::ResourceLoader::ResourceLoader):
   66394         (WebCore::ResourceLoader::~ResourceLoader):
   66395         (WebCore::ResourceLoader::releaseResources):
   66396         (WebCore::ResourceLoader::load):
   66397         (WebCore::ResourceLoader::setDefersLoading):
   66398         (WebCore::ResourceLoader::frameLoader):
   66399         (WebCore::ResourceLoader::addData):
   66400         (WebCore::ResourceLoader::clearResourceData):
   66401         (WebCore::ResourceLoader::willSendRequest):
   66402         (WebCore::ResourceLoader::didReceiveResponse):
   66403         (WebCore::ResourceLoader::didReceiveData):
   66404         (WebCore::ResourceLoader::willStopBufferingData):
   66405         (WebCore::ResourceLoader::didFinishLoading):
   66406         (WebCore::ResourceLoader::didFinishLoadingOnePart):
   66407         (WebCore::ResourceLoader::didFail):
   66408         (WebCore::ResourceLoader::didCancel):
   66409         (WebCore::ResourceLoader::cancel):
   66410         (WebCore::ResourceLoader::response):
   66411         (WebCore::ResourceLoader::cancelledError):
   66412         * loader/ResourceLoader.h:
   66413         (WebCore::ResourceLoader::willStopBufferingData):
   66414         (WebCore::ResourceLoader::setRequest):
   66415         * loader/mac/FrameLoaderMac.mm:
   66416         * loader/mac/MainResourceLoaderMac.mm: Removed.
   66417         * loader/mac/ResourceLoaderMac.mm:
   66418 
   66419 2007-01-10  Lars Knoll <lars (a] trolltech.com>
   66420 
   66421         Move files to the correct location,
   66422         and remove a few unused methods from 
   66423         LoaderFunctionsQt.cpp
   66424 
   66425         * WebCore.pro:
   66426         * loader/qt/LoaderFunctionsQt.cpp: Added.
   66427         (WebCore::CheckCacheObjectStatus):
   66428         * page/qt/FrameQt.cpp: Added.
   66429         (WebCore::doScroll):
   66430         (WebCore::FrameQt::FrameQt):
   66431         (WebCore::FrameQt::~FrameQt):
   66432         (WebCore::FrameQt::passMouseDownEventToWidget):
   66433         (WebCore::FrameQt::isLoadTypeReload):
   66434         (WebCore::FrameQt::markedTextRange):
   66435         (WebCore::FrameQt::mimeTypeForFileName):
   66436         (WebCore::FrameQt::unfocusWindow):
   66437         (WebCore::FrameQt::focusWindow):
   66438         (WebCore::FrameQt::getEmbedInstanceForWidget):
   66439         (WebCore::FrameQt::getObjectInstanceForWidget):
   66440         (WebCore::FrameQt::getAppletInstanceForWidget):
   66441         (WebCore::FrameQt::issueCutCommand):
   66442         (WebCore::FrameQt::issueCopyCommand):
   66443         (WebCore::FrameQt::issuePasteCommand):
   66444         (WebCore::FrameQt::issuePasteAndMatchStyleCommand):
   66445         (WebCore::FrameQt::issueTransposeCommand):
   66446         (WebCore::FrameQt::respondToChangedSelection):
   66447         (WebCore::FrameQt::shouldChangeSelection):
   66448         (WebCore::FrameQt::print):
   66449         (WebCore::FrameQt::shouldInterruptJavaScript):
   66450         (WebCore::FrameQt::keyEvent):
   66451         (WebCore::FrameQt::setFrameGeometry):
   66452         (WebCore::FrameQt::client):
   66453         (WebCore::FrameQt::createNewWindow):
   66454         (WebCore::FrameQt::goBackOrForward):
   66455         (WebCore::FrameQt::historyURL):
   66456         (WebCore::FrameQt::runJavaScriptAlert):
   66457         (WebCore::FrameQt::runJavaScriptConfirm):
   66458         (WebCore::FrameQt::runJavaScriptPrompt):
   66459         (WebCore::FrameQt::bindingRootObject):
   66460         (WebCore::FrameQt::addPluginRootObject):
   66461         * page/qt/FrameQt.h: Added.
   66462         (WebCore::QtFrame):
   66463         * page/qt/FrameQtClient.cpp: Added.
   66464         (WebCore::FrameQtClient::FrameQtClient):
   66465         (WebCore::FrameQtClient::~FrameQtClient):
   66466         (WebCore::FrameQtClient::setFrame):
   66467         (WebCore::FrameQtClient::openURL):
   66468         (WebCore::FrameQtClient::submitForm):
   66469         (WebCore::FrameQtClient::didReceiveResponse):
   66470         (WebCore::FrameQtClient::didFinishLoading):
   66471         (WebCore::FrameQtClient::didFail):
   66472         (WebCore::FrameQtClient::didReceiveData):
   66473         (WebCore::FrameQtClient::traverseNextFrameStayWithin):
   66474         (WebCore::numRequests):
   66475         (WebCore::FrameQtClient::numPendingOrLoadingRequests):
   66476         * page/qt/FrameQtClient.h: Added.
   66477         * platform/qt/FrameQt.cpp: Removed.
   66478         * platform/qt/FrameQt.h: Removed.
   66479         * platform/qt/FrameQtClient.cpp: Removed.
   66480         * platform/qt/FrameQtClient.h: Removed.
   66481         * platform/qt/LoaderFunctionsQt.cpp: Removed.
   66482 
   66483 2007-01-10  Adam Roben  <aroben (a] apple.com>
   66484 
   66485         Reviewed by Geoff.
   66486 
   66487         Fix: <rdar://problem/4917054> ContextMenuController leaks Events
   66488 
   66489         No layout tests possible.
   66490 
   66491         * page/ContextMenuController.cpp:
   66492         (WebCore::ContextMenuController::contextMenuItemSelected): Use RefPtr
   66493         to manage the lifetime of Shared objects.
   66494 
   66495 2007-01-10  Rob Buis  <buis (a] kde.org>
   66496 
   66497         Reviewed by Sam.
   66498 
   66499         http://bugs.webkit.org/show_bug.cgi?id=12196
   66500         SVGPatternElement should not be locatable
   66501 
   66502         Replace SVGStyledLocatableElement derivation with
   66503         SVGStyledElement.
   66504 
   66505         * ksvg2/svg/SVGPatternElement.cpp:
   66506         (WebCore::SVGPatternElement::SVGPatternElement):
   66507         * ksvg2/svg/SVGPatternElement.h:
   66508 
   66509 2007-01-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   66510 
   66511         Build fix, not reviewed.
   66512 
   66513         * rendering/RenderSVGText.cpp: Use correct method name.
   66514         (WebCore::RenderSVGText::relativeBBox):
   66515 
   66516 2007-01-10  Nikolas Zimmermann  <zimmermann (a] kde.org>
   66517 
   66518         Reviewed by Eric.
   66519 
   66520         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10262 (SVG fails to redraw top 20 pixels)
   66521         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10263 (SVG seems to repaint way too many times during load)
   66522         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10404 (Invalidation issues with text skew)
   66523         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10407 (bad SVG text invalidation issues on mouseover/mouseout)
   66524         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10806 (failing manual-tests/svg-repaint-group.svg)
   66525         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10913 (SVG charts from plotkit fail to render unless you scroll them offscreen)
   66526         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10964 (inclusion of svg into svg leave a ghost invisible rectangle)
   66527         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11680 (DojoKit SVG test chart fails to render (clipping issue?))
   66528         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11883 (SVG Text has updating/repainting issues)
   66529         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11907 (RenderSVGContainer does not mark itself for repaint after setting viewBox, slice or align) 
   66530         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11913 (Invalidation issues in SVG javascript-based animation example)
   66531         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11979 (SVG text does not respect font-size scaling in bbox calculation)
   66532         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11984 (SVG <text> does not calculate the correct absoluteRepaintRect)
   66533         Partly fixes: http://bugs.webkit.org/show_bug.cgi?id=10745 (SVG layout needs to move out of DOM and into rendering tree during layout() call)
   66534 
   66535         Fixes text redrawing issues seen in svg/carto.net (when actually playing with those files, manually)
   66536         Fixes svg/carto.net/window.svg (moving "Navigation Window" caused artefacts)
   66537         Fixes svg/W3C-SVG-1.1/types-basicDOM-01-b.svg (bbox calculations had one pixel offset)
   66538 
   66539         Large SVG dynamic update rework/optimization. Also fixes SVG printing.
   66540 
   66541         Rename updateCanvasItem() to rebuildRenderer(), as this is what it really does.
   66542 
   66543         Do NOT call rebuildRenderer() in notifyAttributeChange() anymore,
   66544         but override notifyAttributeChange() in SVGPathElement/SVGCircleElement/etc..
   66545         (as only primitives using RenderPath as rendering object need this logic!)
   66546 
   66547         This should clarify what really happens, as discussed with Eric.
   66548 
   66549         Remove the invocations of notifyAttributeChange() in SVGLength. It's already
   66550         handled by the JS bindings, and we do double updating work. Fixed.
   66551 
   66552         Because SVG dynamic updates have been flaky in the past, there was a hack introduced
   66553         in RenderPath causing the updateCanvasItem() function to be called _on every layout_ (!!!).
   66554         Finally this hack is gone. Offer RenderSVGContainer::absoluteRects() function to be able
   66555         to use WebInspector for <g> elements (very handy!).
   66556 
   66557         Remove the unneeded "m_updateVectorial" bool from SVGStyledElement.
   66558         Remove computeAbsoluteRepaintRect() from RenderSVGContainer/RenderSVGImage/RenderSVGText,
   66559         as dicussed with David (we only need to reimplement getAbsoluteRepaintRect there).
   66560 
   66561         Make RenderSVGText::absoluteRects just use the getAbsoluteRepaintRect() function, instead of
   66562         code duplication. Remove unneeded RenderSVGImage::layout() function (RenderImage does the same).
   66563 
   66564         Add new function SVGStyledElement::renderStyleForElement, which centralizes the manual style
   66565         resolving needed for gradient stops.
   66566 
   66567         * ksvg2/svg/SVGCircleElement.cpp:
   66568         (WebCore::SVGCircleElement::notifyAttributeChange):
   66569         (WebCore::SVGCircleElement::hasRelativeValues):
   66570         * ksvg2/svg/SVGCircleElement.h:
   66571         * ksvg2/svg/SVGEllipseElement.cpp:
   66572         (WebCore::SVGEllipseElement::notifyAttributeChange):
   66573         (WebCore::SVGEllipseElement::hasRelativeValues):
   66574         * ksvg2/svg/SVGEllipseElement.h:
   66575         * ksvg2/svg/SVGImageElement.cpp:
   66576         (WebCore::SVGImageElement::notifyAttributeChange):
   66577         * ksvg2/svg/SVGImageElement.h:
   66578         * ksvg2/svg/SVGLength.cpp:
   66579         (WebCore::SVGLength::setValue):
   66580         (WebCore::SVGLength::setValueInSpecifiedUnits):
   66581         * ksvg2/svg/SVGLength.h:
   66582         (WebCore::SVGLength::isRelative):
   66583         * ksvg2/svg/SVGLineElement.cpp:
   66584         (WebCore::SVGLineElement::notifyAttributeChange):
   66585         (WebCore::SVGLineElement::hasRelativeValues):
   66586         * ksvg2/svg/SVGLineElement.h:
   66587         * ksvg2/svg/SVGLocatable.cpp:
   66588         (WebCore::SVGLocatable::getBBox):
   66589         * ksvg2/svg/SVGPathElement.cpp:
   66590         (WebCore::SVGPathElement::notifyAttributeChange):
   66591         * ksvg2/svg/SVGPathElement.h:
   66592         * ksvg2/svg/SVGPolyElement.cpp:
   66593         (WebCore::SVGPolyElement::notifyAttributeChange):
   66594         * ksvg2/svg/SVGPolyElement.h:
   66595         (WebCore::SVGPolyElement::rendererIsNeeded):
   66596         * ksvg2/svg/SVGRectElement.cpp:
   66597         (WebCore::SVGRectElement::notifyAttributeChange):
   66598         (WebCore::SVGRectElement::hasRelativeValues):
   66599         * ksvg2/svg/SVGRectElement.h:
   66600         * ksvg2/svg/SVGSVGElement.cpp:
   66601         (WebCore::SVGSVGElement::hasRelativeValues):
   66602         * ksvg2/svg/SVGSVGElement.h:
   66603         * ksvg2/svg/SVGStyledElement.cpp:
   66604         (WebCore::SVGStyledElement::SVGStyledElement):
   66605         (WebCore::SVGStyledElement::createRenderer):
   66606         (WebCore::SVGStyledElement::notifyAttributeChange):
   66607         (WebCore::SVGStyledElement::rebuildRenderer):
   66608         * ksvg2/svg/SVGStyledElement.h:
   66609         (WebCore::SVGStyledElement::hasRelativeValues):
   66610         * rendering/RenderPath.cpp:
   66611         (WebCore::RenderPath::setLocalTransform):
   66612         (WebCore::RenderPath::fillContains):
   66613         (WebCore::RenderPath::relativeBBox):
   66614         (WebCore::RenderPath::layout):
   66615         (WebCore::RenderPath::getAbsoluteRepaintRect):
   66616         (WebCore::RenderPath::paint):
   66617         (WebCore::RenderPath::nodeAtPoint):
   66618         (WebCore::drawMarkerWithData):
   66619         (WebCore::updateMarkerDataForElement):
   66620         (WebCore::drawStartAndMidMarkers):
   66621         (WebCore::RenderPath::drawMarkersIfNeeded):
   66622         (WebCore::RenderPath::hasRelativeValues):
   66623         * rendering/RenderPath.h:
   66624         * rendering/RenderSVGContainer.cpp:
   66625         (WebCore::RenderSVGContainer::layout):
   66626         (WebCore::RenderSVGContainer::paint):
   66627         (WebCore::RenderSVGContainer::calcViewport):
   66628         (WebCore::RenderSVGContainer::setViewBox):
   66629         (WebCore::RenderSVGContainer::setAlign):
   66630         (WebCore::RenderSVGContainer::viewportTransform):
   66631         (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
   66632         (WebCore::RenderSVGContainer::absoluteRects):
   66633         (WebCore::RenderSVGContainer::fillContains):
   66634         (WebCore::RenderSVGContainer::strokeContains):
   66635         (WebCore::RenderSVGContainer::relativeBBox):
   66636         (WebCore::RenderSVGContainer::setSlice):
   66637         * rendering/RenderSVGContainer.h:
   66638         * rendering/RenderSVGImage.cpp:
   66639         (WebCore::RenderSVGImage::RenderSVGImage):
   66640         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
   66641         (WebCore::RenderSVGImage::relativeBBox):
   66642         (WebCore::RenderSVGImage::imageChanged):
   66643         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
   66644         (WebCore::RenderSVGImage::absoluteRects):
   66645         * rendering/RenderSVGImage.h:
   66646         * rendering/RenderSVGText.cpp:
   66647         (WebCore::RenderSVGText::getAbsoluteRepaintRect):
   66648         (WebCore::RenderSVGText::layout):
   66649         (WebCore::RenderSVGText::createInlineBox):
   66650         (WebCore::RenderSVGText::absoluteRects):
   66651         (WebCore::RenderSVGText::relativeBBox):
   66652         * rendering/RenderSVGText.h:
   66653         * rendering/SVGInlineFlowBox.cpp:
   66654         (WebCore::placePositionedBoxesHorizontally):
   66655 
   66656 2007-01-10  David Hyatt  <hyatt (a] apple.com>
   66657 
   66658         Make the selectionRect() method of RenderText better by reusing computeAbsoluteRepaintRect.  This enables
   66659         the method to be multi-column aware and also to understand when the selection is clipped out by overflow.
   66660 
   66661         Reviewed by bdash
   66662 
   66663         * rendering/RenderText.cpp:
   66664         (WebCore::RenderText::selectionRect):
   66665 
   66666 2007-01-10  David Hyatt  <hyatt (a] apple.com>
   66667 
   66668         Make the absolutePosition method multi-column aware.  Note that there is now a real problem with the
   66669         absoluteRects method, since an object can split across multiple columns and break into multiple rects.
   66670         absolutePosition just returns the top-left corner of the element's box in the first column in which it
   66671         appears.
   66672 
   66673         Reviewed by bdash
   66674 
   66675         * rendering/RenderBlock.cpp:
   66676         (WebCore::RenderBlock::adjustRectForColumns):
   66677         * rendering/RenderBlock.h:
   66678         * rendering/RenderBox.cpp:
   66679         (WebCore::RenderBox::absolutePosition):
   66680         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   66681         * rendering/RenderFlow.cpp:
   66682         (WebCore::RenderFlow::getAbsoluteRepaintRect):
   66683 
   66684 2007-01-09  David Hyatt  <hyatt (a] apple.com>
   66685 
   66686         Avoid crashing when repainting multiple columns... make sure to use the current vector's size and
   66687         not the newly-computed column count.
   66688 
   66689         * rendering/RenderBlock.cpp:
   66690         (WebCore::RenderBlock::layoutColumns):
   66691         (WebCore::RenderBlock::adjustRepaintRectForColumns):
   66692 
   66693 2007-01-09  David Hyatt  <hyatt (a] apple.com>
   66694 
   66695         Break up painting and hit testing of children into helper methods and add multi-column versions for both.
   66696         
   66697         Make incremental repainting able to invalidate the right spot in multiple column layouts so that e.g., link
   66698         hover works.
   66699 
   66700         Turn off selection gap filling in columns for now until it can be made to work correctly.
   66701 
   66702         Improve the column balancing heuristic by adding in the block's lineHeight/2 to each column initially to
   66703         account for column break adjustments that shrink the columns slightly.  Avoid clipping of the last column's
   66704         contents by ensuring it gets all the remaining available height.
   66705 
   66706         Reviewed by mitz
   66707 
   66708         * rendering/RenderBlock.cpp:
   66709         (WebCore::RenderBlock::paintColumns):
   66710         (WebCore::RenderBlock::paintContents):
   66711         (WebCore::RenderBlock::paintObject):
   66712         (WebCore::RenderBlock::fillSelectionGaps):
   66713         (WebCore::RenderBlock::nodeAtPoint):
   66714         (WebCore::RenderBlock::hitTestColumns):
   66715         (WebCore::RenderBlock::layoutColumns):
   66716         (WebCore::RenderBlock::adjustRepaintRectForColumns):
   66717         * rendering/RenderBlock.h:
   66718         * rendering/RenderBox.cpp:
   66719         (WebCore::RenderBox::computeAbsoluteRepaintRect):
   66720         * rendering/RenderFlow.cpp:
   66721         (WebCore::RenderFlow::getAbsoluteRepaintRect):
   66722 
   66723 2007-01-09  Remi Zara  <remi_zara (a] mac.com>
   66724 
   66725         Reviewed by Darin and Eric.
   66726 
   66727         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12150
   66728 
   66729         Don't use memset to set float to 0
   66730 
   66731         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   66732         (WebCore::cgGradientCallback):
   66733 
   66734 2007-01-09  Anders Carlsson  <acarlsson (a] apple.com>
   66735 
   66736         Reviewed by Brady.
   66737 
   66738         Add default constructor to SharedBuffer.
   66739 
   66740         * platform/SharedBuffer.cpp:
   66741         (WebCore::SharedBuffer::SharedBuffer):
   66742         * platform/SharedBuffer.h:
   66743 
   66744 2007-01-09  David Hyatt  <hyatt (a] apple.com>
   66745 
   66746         This patch gets rudimentary column layout working.  Normal flow content only gets laid out into
   66747         columns properly and painted correctly initially.  What doesn't work: hit testing, incremental repainting,
   66748         column rule painting, child layers.
   66749 
   66750         Some work needs to be done on the render tree dumper before column tests will be
   66751         meaningful.
   66752 
   66753         Also reworked overflow and fixed a bunch of bugs with the computation of overflow.  These include an error
   66754         in the height calculations caused by not adding in the horizontal scrollbar height and other errors caused
   66755         by not checking overflow in lowest/rightmostPosition.  Existing tests improve their rendering to match
   66756         Firefox with this change.
   66757 
   66758         Fixed a bug where a table cell incorrectly expanded to encompass floats inside an overflow:auto block.
   66759         This should not have happened.  Covered by new test fast/overflow/table-overflow-float.html.
   66760 
   66761         Reviewed by mitz
   66762 
   66763         * page/Frame.cpp:
   66764         * rendering/RenderBlock.cpp:
   66765         (WebCore:::RenderFlow):
   66766         (WebCore::RenderBlock::layoutBlock):
   66767         (WebCore::RenderBlock::paintContents):
   66768         (WebCore::RenderBlock::paintChildren):
   66769         (WebCore::RenderBlock::paintObject):
   66770         (WebCore::RenderBlock::lowestPosition):
   66771         (WebCore::RenderBlock::rightmostPosition):
   66772         (WebCore::RenderBlock::leftmostPosition):
   66773         (WebCore::RenderBlock::avoidsFloats):
   66774         (WebCore::RenderBlock::nodeAtPoint):
   66775         (WebCore::RenderBlock::hitTestContents):
   66776         (WebCore::RenderBlock::layoutColumns):
   66777         * rendering/RenderBlock.h:
   66778         (WebCore::RenderBlock::hasOverhangingFloats):
   66779         (WebCore::RenderBlock::hasColumns):
   66780         * rendering/RenderFlexibleBox.cpp:
   66781         (WebCore::RenderFlexibleBox::layoutBlock):
   66782         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
   66783         (WebCore::RenderFlexibleBox::layoutVerticalBox):
   66784         * rendering/RenderFlow.cpp:
   66785         (WebCore::RenderFlow::paintLines):
   66786         (WebCore::RenderFlow::lowestPosition):
   66787         (WebCore::RenderFlow::rightmostPosition):
   66788         (WebCore::RenderFlow::leftmostPosition):
   66789         * rendering/RenderFlow.h:
   66790         (WebCore::RenderFlow::hasColumns):
   66791         * rendering/RenderListMarker.cpp:
   66792         (WebCore::RenderListMarker::paint):
   66793         * rendering/RenderObject.h:
   66794         (WebCore::RenderObject::expandsToEncloseOverflow):
   66795         * rendering/RenderTableCell.h:
   66796         (WebCore::RenderTableCell::expandsToEncloseOverflow):
   66797         * rendering/RenderView.cpp:
   66798         (WebCore::RenderView::paint):
   66799 
   66800 2007-01-09  Darin Adler  <darin (a] apple.com>
   66801 
   66802         - update all 2007 Apple copyrights for the new company name
   66803 
   66804         * css/cssstyleselector.cpp:
   66805         * html/HTMLLIElement.cpp:
   66806         * platform/CharacterNames.h:
   66807         * platform/TextBreakIterator.h:
   66808         * platform/TextBreakIteratorICU.cpp:
   66809         * platform/graphics/ImageBuffer.h:
   66810         * rendering/CounterNode.cpp:
   66811         * rendering/CounterNode.h:
   66812         * rendering/RenderBox.h:
   66813         * rendering/RenderContainer.cpp:
   66814         * rendering/RenderCounter.cpp:
   66815         * rendering/RenderCounter.h:
   66816         * rendering/RenderImage.h:
   66817         * rendering/RenderListItem.h:
   66818         * rendering/RenderListMarker.h:
   66819         * rendering/RenderObject.cpp:
   66820         * rendering/RenderObject.h:
   66821         * rendering/RenderStyle.cpp:
   66822         * rendering/RenderStyle.h:
   66823         * rendering/RenderTable.cpp:
   66824         * rendering/RenderTableCell.cpp:
   66825         * rendering/RenderTableCell.h:
   66826         * rendering/RenderText.cpp:
   66827         * rendering/RenderText.h:
   66828         * rendering/RenderTreeAsText.cpp:
   66829         * rendering/SVGRenderTreeAsText.cpp:
   66830         * rendering/break_lines.cpp:
   66831 
   66832 2007-01-09  Justin Garcia  <justin.garcia (a] apple.com>
   66833 
   66834         Reviewed by john
   66835 
   66836         <rdar://problem/4840662>
   66837         REGRESSION: Mail crash when dragging text into a link
   66838         
   66839         moveParagraphs fails to move content into a display:block 
   66840         anchor because of code in positionAvoidingSpecialElementBoundary,
   66841         and so it infinitely recurs.
   66842         
   66843         * editing/htmlediting.cpp:
   66844         (WebCore::positionAvoidingSpecialElementBoundary): Don't avoid anchors
   66845         that have display:block so that content is inserted in the expected
   66846         paragraph.  This fixes the bug and weird behavior when typing before/after
   66847         anchors with display:block.
   66848 
   66849 2007-01-09  Rob Buis  <buis (a] kde.org>
   66850 
   66851         Reviewed by Darin.
   66852 
   66853         http://bugs.webkit.org/show_bug.cgi?id=12145
   66854         Color parsing is too relaxed in strict mode
   66855         http://bugs.webkit.org/show_bug.cgi?id=12166
   66856         REGRESSION (r18480): "336633" is not parsed as a color
   66857 
   66858         Fix a regression by using String::format return value.
   66859         Also make strict mode more strict for cases where hexcolors
   66860         lack a #.
   66861 
   66862         * css/cssparser.cpp:
   66863         (WebCore::CSSParser::parseColor):
   66864         (WebCore::CSSParser::parseColorFromValue):
   66865         * css/cssparser.h:
   66866 
   66867 2007-01-09  Darin Adler  <darin (a] apple.com>
   66868 
   66869         Reviewed by Maciej.
   66870 
   66871         - fixed regression where redirects did not have user-agent any more
   66872 
   66873         Showed up as a failure in one of the http tests, so no new test needed.
   66874 
   66875         * loader/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::willSendRequest):
   66876         Don't use a copy of the ResourceRequest; pass the original so it can be modified.
   66877 
   66878 2007-01-09  Mitz Pettel  <mitz (a] webkit.org>
   66879 
   66880         Reviewed by Darin.
   66881 
   66882         - fix http://bugs.webkit.org/show_bug.cgi?id=11078
   66883           Forms Don't Submit (ASP Pages)
   66884 
   66885         Test: fast/dom/collection-namedItem-via-item.html
   66886 
   66887         * bindings/js/kjs_html.cpp:
   66888         (KJS::JSHTMLCollectionProtoFunc::callAsFunction): Changed item() to fall back
   66889         to namedItem() if its argument does not convert to a number.
   66890 
   66891 2007-01-09  Darin Adler  <darin (a] apple.com>
   66892 
   66893         Reviewed by Maciej.
   66894 
   66895         - fix http://bugs.webkit.org/show_bug.cgi?id=12174
   66896           improve Unicode use (less WTF::Unicode:: prefix, centralized character names)
   66897 
   66898         - got rid of namespace prefixes from most uses of WTF::Unicode
   66899 
   66900         - updated for removal of WTF::Unicode::memcmp
   66901         - updated for renaming of WTF::Unicode::strcasecmp to umemcasecmp.
   66902 
   66903         - unified constants for special Unicode characters in a new
   66904           CharacterNames.h header
   66905 
   66906         * WebCore.xcodeproj/project.pbxproj:
   66907         * css/cssparser.cpp:
   66908         (WebCore::ParseString::lower):
   66909         * dom/Document.cpp:
   66910         (WebCore::isValidNameStart):
   66911         (WebCore::isValidNamePart):
   66912         * dom/Position.cpp:
   66913         (WebCore::Position::leadingWhitespacePosition):
   66914         (WebCore::Position::trailingWhitespacePosition):
   66915         * editing/CompositeEditCommand.cpp:
   66916         (WebCore::isWhitespace):
   66917         * editing/HTMLInterchange.cpp:
   66918         * editing/TextIterator.cpp:
   66919         (WebCore::CircularSearchBuffer::CircularSearchBuffer):
   66920         (WebCore::CircularSearchBuffer::append):
   66921         * editing/htmlediting.cpp:
   66922         (WebCore::stringWithRebalancedWhitespace):
   66923         (WebCore::nonBreakingSpaceString):
   66924         * editing/htmlediting.h:
   66925         * html/HTMLFontElement.cpp:
   66926         (WebCore::parseFontSizeNumber):
   66927         * html/HTMLParser.cpp:
   66928         (WebCore::HTMLParser::handleError):
   66929         * html/HTMLSelectElement.cpp:
   66930         (WebCore::stripLeadingWhiteSpace):
   66931         * platform/Font.cpp:
   66932         (WebCore::WidthIterator::advance):
   66933         (WebCore::WidthIterator::normalizeVoicingMarks):
   66934         * platform/GlyphMap.cpp:
   66935         (WebCore::GlyphMap::locatePage):
   66936         * platform/MimeTypeRegistry.h:
   66937         * platform/StringHash.h:
   66938         * platform/StringImpl.cpp:
   66939         (WebCore::isSpace):
   66940         (WebCore::StringImpl::append):
   66941         (WebCore::StringImpl::insert):
   66942         (WebCore::StringImpl::truncate):
   66943         (WebCore::StringImpl::remove):
   66944         (WebCore::parseLength):
   66945         (WebCore::StringImpl::isLower):
   66946         (WebCore::StringImpl::lower):
   66947         (WebCore::StringImpl::upper):
   66948         (WebCore::StringImpl::secure):
   66949         (WebCore::StringImpl::foldCase):
   66950         (WebCore::StringImpl::capitalize):t
   66951         (WebCore::StringImpl::toInt):
   66952         (WebCore::equalIgnoringCase):
   66953         (WebCore::StringImpl::find):
   66954         * platform/TextBoundaries.h:
   66955         * platform/TextCodec.h:
   66956         * platform/TextCodecLatin1.cpp:
   66957         * platform/TextEncoding.h:
   66958         * platform/TextEncodingRegistry.h:
   66959         * platform/mac/PasteboardMac.mm:
   66960         (WebCore::Pasteboard::writeSelection):
   66961         * platform/mac/TextCodecMac.cpp:
   66962         (WebCore::TextCodecMac::decode):
   66963         * rendering/RenderBlock.cpp:
   66964         (WebCore::RenderBlock::updateFirstLetter):
   66965         * rendering/RenderListMarker.cpp:
   66966         (WebCore::listMarkerText):
   66967         (WebCore::RenderListMarker::paint):
   66968         * rendering/RenderText.cpp:
   66969         (WebCore::RenderText::widthFromCache):
   66970         (WebCore::isSpaceAccordingToStyle):
   66971         (WebCore::RenderText::setInternalString):
   66972         * rendering/RenderTreeAsText.cpp:
   66973         (WebCore::quoteAndEscapeNonPrintables):
   66974         (WebCore::operator<<):
   66975         * rendering/bidi.cpp:
   66976         (WebCore::BidiState::BidiState):
   66977         (WebCore::BidiContext::BidiContext):
   66978         (WebCore::bidiNext):
   66979         (WebCore::bidiFirst):
   66980         (WebCore::BidiIterator::direction):
   66981         (WebCore::appendRun):
   66982         (WebCore::embed):
   66983         (WebCore::RenderBlock::bidiReorderLine):
   66984         (WebCore::RenderBlock::layoutInlineChildren):
   66985         (WebCore::skipNonBreakingSpace):
   66986         (WebCore::RenderBlock::findNextLineBreak):
   66987         * rendering/break_lines.cpp:
   66988         (WebCore::nextBreakablePosition):
   66989         * rendering/break_lines.h:
   66990         * xml/XPathParser.cpp:
   66991         (WebCore::XPath::charCat):
   66992 
   66993 2007-01-09  Matt Perry  <mpcomplete (a] chromium.org>
   66994 
   66995         Reviewed by Darin.
   66996 
   66997         - fix http://bugs.webkit.org/show_bug.cgi?id=12170
   66998           RenderView holds dangling reference to RenderObjects as selection markers
   66999 
   67000         This fixes the crash seen on Windows -- the underlying problem
   67001         may still exist.
   67002 
   67003         * rendering/RenderText.h:
   67004         (WebCore::RenderText::selectionState):
   67005         Change the m_selectionState enum-bitfield to an unsigned-bitfield,
   67006         because enums on Windows are signed, which caused it to become
   67007         negative (whereas the valid values are all positive).
   67008 
   67009 2007-01-09  Darin Adler  <darin (a] apple.com>
   67010 
   67011         Reviewed by Hyatt.
   67012 
   67013         - http://bugs.webkit.org/show_bug.cgi?id=12175
   67014           port break_lines.cpp to be platform independent
   67015 
   67016         * platform/TextBreakIterator.h: Added lineBreakIterator.
   67017         Removed ICU-specific stuff from the header.
   67018 
   67019         * platform/TextBreakIteratorICU.cpp:
   67020         (WebCore::setUpIterator): Added helper to be shared by the three different
   67021         creation functions.
   67022         (WebCore::characterBreakIterator): Changed to use setUpIterator.
   67023         (WebCore::wordBreakIterator): Ditto.
   67024         (WebCore::lineBreakIterator): Added.
   67025 
   67026         * platform/qt/TextBreakIteratorQt.cpp:
   67027         (WebCore::lineBreakIterator): Added a stub.
   67028 
   67029         * rendering/break_lines.cpp:
   67030         (WebCore::isBreakableSpace): Added.
   67031         (WebCore::shouldBreakAfter): Added.
   67032         (WebCore::needsAdvancedBreakAnalysis): Added.
   67033         (WebCore::nextBreakablePosition): Changed to use TextBreakIterator on platforms
   67034         other than Mac.
   67035 
   67036 2007-01-09  Maciej Stachowiak  <mjs (a] apple.com>
   67037 
   67038         Reviewed by Darin.
   67039 
   67040         - move WebDataProtocol load handling from ResourceLoader to MainResourceLoader
   67041         
   67042         (it's only ever used for main resources)
   67043 
   67044         * loader/ResourceLoader.h:
   67045         (WebCore::ResourceLoader::setRequest):
   67046         * loader/mac/MainResourceLoaderMac.mm:
   67047         (WebCore::MainResourceLoader::willSendRequest):
   67048         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   67049         * loader/mac/ResourceLoaderMac.mm:
   67050         (WebCore::ResourceLoader::willSendRequest):
   67051         (WebCore::ResourceLoader::didReceiveResponse):
   67052 
   67053 2007-01-09  Rob Buis  <buis (a] kde.org>
   67054 
   67055         Reviewed by Eric.
   67056 
   67057         http://bugs.webkit.org/show_bug.cgi?id=12129
   67058         repaint issue after setting viewBox attribute with ECMAScript
   67059 
   67060         Make sure RenderSVGContainer updates after setting viewBox from js.
   67061 
   67062         * ksvg2/svg/SVGSVGElement.cpp:
   67063         (WebCore::SVGSVGElement::parseMappedAttribute):
   67064         * rendering/RenderSVGContainer.cpp:
   67065         (WebCore::RenderSVGContainer::setViewBox):
   67066 
   67067 2007-01-09  Lars Knoll <lars (a] trolltech.com>
   67068 
   67069         Make the Qt build compile... again!
   67070 
   67071         * WebCore.pro:
   67072         * loader/qt/FrameLoaderQt.cpp:
   67073         * platform/graphics/qt/GraphicsContextQt.cpp:
   67074         * platform/graphics/qt/ImageBufferQt.cpp:
   67075         (WebCore::ImageBuffer::create):
   67076         * platform/qt/WidgetQt.cpp:
   67077         (WebCore::Widget::focusPolicy):
   67078 
   67079 2007-01-09  David Hyatt  <hyatt (a] apple.com>
   67080 
   67081         Fix for background: inherit bug where background-color wasn't getting properly overridden.  This was a
   67082         regression from Safari 1.3 to 2.0.
   67083 
   67084         Reviewed by bdash
   67085 
   67086         fast/backgrounds/background-color-inherit-bug.html
   67087 
   67088         * css/cssstyleselector.cpp:
   67089         (WebCore::CSSStyleSelector::applyProperty):
   67090 
   67091 2007-01-08  Brady Eidson <beidson (a] apple.com>
   67092 
   67093         Reviewed by Brian Dash
   67094 
   67095         <rdar://problem/4895178> 
   67096         WebCore::BackForwardList vector should be backed by a HashSet to remove
   67097         the potential expense in frequently calling BackForwardList::containsItem()
   67098 
   67099         * history/BackForwardList.cpp:
   67100         (WebCore::BackForwardList::addItem): Maintain HashSet as well as Vector
   67101         (WebCore::BackForwardList::setCapacity): Ditto
   67102         (WebCore::BackForwardList::close): Ditto
   67103         (WebCore::BackForwardList::removeItem): Ditto
   67104         (WebCore::BackForwardList::containsItem): Make a hash lookup instead of iterate 
   67105         through the Vector
   67106         * history/BackForwardList.h:
   67107 
   67108 2007-01-08  David Hyatt  <hyatt (a] apple.com>
   67109 
   67110         Fix a regression where layout is triggering on all recalcStyles, due to a bad comparison
   67111         in the multicol assignment operator.
   67112 
   67113         * rendering/RenderStyle.cpp:
   67114         (WebCore::StyleMultiColData::operator==):
   67115 
   67116 2007-01-08  Darin Adler  <darin (a] apple.com>
   67117 
   67118         - rolled out Beth's RenderFlow::destroy change, which broke 5 editing tests
   67119 
   67120         * rendering/InlineBox.cpp: (WebCore::InlineBox::root):
   67121         * rendering/RenderFlow.cpp: (WebCore::RenderFlow::destroy):
   67122         Used svn merge to roll the change out.
   67123 
   67124 2007-01-09  Mark Rowe  <mrowe (a] apple.com>
   67125 
   67126         Reviewed by Tim H.
   67127 
   67128         Build fix for 64-bit platforms.
   67129 
   67130         * platform/graphics/svg/SVGPaintServerGradient.h:
   67131         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   67132         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
   67133 
   67134 2007-01-08  Anders Carlsson  <acarlsson (a] apple.com>
   67135 
   67136         Reviewed by Brady.
   67137 
   67138         Move some history related functions off the bridge and into FrameLoader directly.
   67139 
   67140         * loader/FrameLoader.cpp:
   67141         (WebCore::FrameLoader::canGoBackOrForward):
   67142         (WebCore::FrameLoader::getHistoryLength):
   67143         (WebCore::FrameLoader::historyURL):
   67144         * loader/mac/FrameLoaderMac.mm:
   67145         * page/mac/WebCoreFrameBridge.h:
   67146 
   67147 2007-01-08  Sam Weinig  <sam (a] webkit.org>
   67148 
   67149         Reviewed by Mark.
   67150 
   67151         Adds outline-color to list of computable styles.
   67152 
   67153         * css/CSSComputedStyleDeclaration.cpp:
   67154         (WebCore::):
   67155 
   67156 2007-01-08  Beth Dakin  <bdakin (a] apple.com>
   67157 
   67158         Reviewed by Hyatt.
   67159 
   67160         Fix for a bug that Adam, Hyatt, and I noticed when debugging 
   67161         another problem.
   67162 
   67163         * rendering/InlineBox.cpp:
   67164         (WebCore::InlineBox::root): Added assertion. If we are casting to a 
   67165         root, we should make sure we are root.
   67166         * rendering/RenderFlow.cpp:
   67167         (WebCore::RenderFlow::destroy): It is not enough to remove the 
   67168         child boxes for anonymous blocks. We need to be more thorough when 
   67169         cleaning these up. Adam's test case illustrates the problem well.
   67170 
   67171 2007-01-08  John Sullivan  <sullivan (a] apple.com>
   67172 
   67173         Tweak to previous checkin
   67174 
   67175         * page/ContextMenuController.cpp:
   67176         (WebCore::ContextMenuController::contextMenuItemSelected):
   67177         Adam suggested I should nil-check frame->page()
   67178 
   67179 2007-01-08  John Sullivan  <sullivan (a] apple.com>
   67180 
   67181         Reviewed by Brady and Beth
   67182         
   67183         - fixed <rdar://problem/4912541> GMAIL: With selected text in a rich text message, choosing 
   67184         "Search in Google" displays search results in the message body field
   67185 
   67186         * page/ContextMenuController.cpp:
   67187         (WebCore::ContextMenuController::contextMenuItemSelected):
   67188         Visit google URL in main frame rather than in current frame
   67189 
   67190 2007-01-08  David Hyatt  <hyatt (a] apple.com>
   67191 
   67192         Fix computed style errors for color properties that had invalid colors.
   67193         They should return the value of the 'color' property when their colors
   67194         are not valid.
   67195 
   67196         Fixed the computed style value for border-top-color (a typo was causing it to
   67197         use border-left-color instead).
   67198 
   67199         Implement outline-color computed style.
   67200 
   67201         Reviewed by harrison
   67202 
   67203         * css/CSSComputedStyleDeclaration.cpp:
   67204         (WebCore::currentColorOrValidColor):
   67205         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   67206 
   67207 2007-01-08  Remi Zara  <remi_zara (a] mac.com>
   67208 
   67209         Reviewed by Darin and Eric.
   67210 
   67211         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12150
   67212         Handle correctly cases where no stops are defined, cases where a
   67213         stop offset value is less than previous stops offset value, and cases
   67214         where a stop offset value is greater than 1.0.
   67215         
   67216         * platform/graphics/svg/SVGPaintServerGradient.cpp:
   67217         (WebCore::SVGPaintServerGradient::setGradientStops): Don't sort stops
   67218         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   67219         (WebCore::cgGradientCallback): When there are no stops, use a transparent
   67220         fill
   67221         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
   67222         a stop offset must always be considered at greater or equal to all
   67223         preceding stop offsets, but no more than 1.0
   67224 
   67225 2007-01-08  Timothy Hatcher  <timothy (a] apple.com>
   67226 
   67227         Reviewed by Geoff.
   67228 
   67229         <rdar://problem/4865325> please re-add auto font activation support in WebKit
   67230 
   67231         * platform/mac/WebFontCache.mm:
   67232         (+[WebFontCache fontWithFamily:traits:size:]):
   67233 
   67234 2007-01-08  Darin Adler  <darin (a] apple.com>
   67235 
   67236         Reviewed by Adam.
   67237 
   67238         - http://bugs.webkit.org/show_bug.cgi?id=12143
   67239           remove Widget code unneeded now that form elements do not use Widget
   67240 
   67241         * bindings/objc/DOMHTML.mm: (-[DOMHTMLSelectElement _activateItemAtIndex:]):
   67242         Removed useless implementation that would only work with NSView-based
   67243         <select> elements, and added a FIXME about the fact that this function
   67244         doesn't do anything any more. I think it's used by Safari forms auto-fill.
   67245 
   67246         * bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject rendererForView:]):
   67247         Removed code that depends on elementForView:, since that always returns
   67248         nil now.
   67249 
   67250         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::~HTMLFormElement):
   67251         Use a formDestroyed() function rather than clearing m_form directly so that
   67252         this class doesn't have to be a friend of HTMLGenericFormElement.
   67253 
   67254         * html/HTMLGenericFormElement.h: Removed now-unneeded friend declaration
   67255         for HTMLFormElement. Moved definition of supportsFocus into the .cpp file.
   67256         Added a public formDestroyed function for use by HTMLFormElement.
   67257         * html/HTMLGenericFormElement.cpp:
   67258         (WebCore::HTMLGenericFormElement::attach): Removed widget-specific code.
   67259         (WebCore::HTMLGenericFormElement::isKeyboardFocusable): Ditto.
   67260         (WebCore::HTMLGenericFormElement::isMouseFocusable): Ditto.
   67261         (WebCore::HTMLGenericFormElement::supportsFocus): Added this here; it was
   67262         in the header file before, for no good reason.
   67263 
   67264         * page/EventHandler.h: Removed unused Mac-specific
   67265         currentEventIsMouseDownInWidget.
   67266         * page/mac/EventHandlerMac.mm: Ditto.
   67267 
   67268         * page/Frame.cpp: (WebCore::Frame::frameForWidget): Changed to use
   67269         RenderWidget to find the frame rather than the WigetClient element()
   67270         function.
   67271 
   67272         * page/mac/FrameMac.h: Removed unused bridgeForWidget.
   67273         * page/mac/FrameMac.mm: Ditto.
   67274 
   67275         * page/mac/WebCoreFrameBridge.h: Removed elementForView.
   67276         * page/mac/WebCoreFrameBridge.mm: Ditto. While the scroll bar still did
   67277         implement WebCoreWidgetHolder, it does not correspond to a DOM element,
   67278         so this method was always returning nil.
   67279 
   67280         * platform/Widget.h: Moved unused types and functions that are still
   67281         in the platform-specific implementations into a "to be deleted" section:
   67282         FocusPolicy, NoFocus, TabFocus, ClickFocus, StrongFocus, WheelFocus,
   67283         lockDrawingFocus, font, focusPolicy, hasFocus, clearFocus, setFont,
   67284         disableFlushDrawing, enableFlushDrawing, unlockDrawingFocus.
   67285         Removed unused functions that are not in platform-specific implementations:
   67286         sizeHint, baselinePosition, checksDescendantsForFocus.
   67287         * platform/Widget.cpp: Removed functions.
   67288 
   67289         * platform/WidgetClient.h: Emptied out the class. Soon we can delete it.
   67290 
   67291         * platform/mac/PlatformScrollBarMac.mm: (-[WebCoreScrollBar mouseDown:]):
   67292         Got rid of unneeded includes, removed use of the WebCoreWidgetHolder
   67293         protocol and the one method in it, and changed the calls to beforeMouseDown
   67294         and afterMouseDown to pass the widget pointer in.
   67295 
   67296         * platform/mac/WebCoreWidgetHolder.h: Emptied out the file -- to be deleted
   67297         later.
   67298 
   67299         * platform/mac/WidgetMac.mm:
   67300         (WebCore::Widget::~Widget): Removed code to manage deferredFirstResponder.
   67301         (WebCore::Widget::hasFocus): Removed body of function and replaced with
   67302         an assertion that it's never called. Later we'll remove it.
   67303         (WebCore::Widget::setFocus): Tweaked a bit to work given changes to the
   67304         FrameMac class. Also added a FIXME. Given how this works, it does not
   67305         belong in the platform layer.
   67306         (WebCore::Widget::clearFocus): Removed body of function and replaced with
   67307         an assertion that it's never called. Later we'll remove it.
   67308         (WebCore::Widget::focusPolicy): Ditto.
   67309         (WebCore::Widget::font): Ditto.
   67310         (WebCore::Widget::setFont): Ditto.
   67311         (WebCore::Widget::lockDrawingFocus): Ditto.
   67312         (WebCore::Widget::unlockDrawingFocus): Ditto.
   67313         (WebCore::Widget::disableFlushDrawing): Ditto.
   67314         (WebCore::Widget::enableFlushDrawing): Ditto.
   67315         (WebCore::Widget::paint): Removed obsolete comment.
   67316         (WebCore::Widget::sendConsumedMouseUp): Removed body of function and replaced with
   67317         an assertion that it's never called. Later we'll remove it.
   67318         (WebCore::Widget::setIsSelected): Tweaked a bit to work given changes to the
   67319         FrameMac class. Also added a FIXME. Given how this works, it does not
   67320         belong in the platform layer.
   67321         (WebCore::Widget::beforeMouseDown): Changed to take an explicit Widget parameter.
   67322         (WebCore::Widget::afterMouseDown): Ditto.
   67323 
   67324         * rendering/RenderApplet.cpp:
   67325         (WebCore::RenderApplet::intrinsicWidth): Changed to not call sizeHint() any more.
   67326         I didn't change the values returned by the function, but they make no sense and
   67327         this should probably be fixed later.
   67328         (WebCore::RenderApplet::intrinsicHeight): Ditto.
   67329 
   67330         * rendering/RenderWidget.h: Removed unneeded WidgetClient.h include. Changed
   67331         RenderWidget to no longer inherit from WidgetClient. Added a find function to find
   67332         a RenderWidget given a Widget. Removed all the virtual functions that override
   67333         WidgetClient hooks.
   67334         * rendering/RenderWidget.cpp: Removed all the WidgetClient functions.
   67335         (WebCore::widgetRendererMap): Added. Map that gives the RenderWidget for each
   67336         Widget that is owned by a RenderWidget.
   67337         (WebCore::RenderWidget::destroy): Removed the setClient call and added a call to
   67338         remove the widget from the widgetRendererMap.
   67339         (WebCore::RenderWidget::setWidget): Ditto.
   67340         (WebCore::RenderWidget::setStyle): Removed the call to Widget::setFont.
   67341         (WebCore::RenderWidget::find): Added. Returns the RenderWidget for a Widget, if any.
   67342 
   67343         - other changes
   67344 
   67345         * dom/Node.cpp:
   67346         (WebCore::Node::dump): Removed unnecessary use of DeprecatedString.
   67347         (WebCore::appendAttributeDesc): Ditto.
   67348         (WebCore::Node::showNode): Ditto.
   67349         (WebCore::Node::formatForDebugger): Ditto.
   67350 
   67351         * loader/CachedImage.cpp: (WebCore::CachedImage::createImage): Cleaned up
   67352         conditional compilation so adding more MIME types here doesn't make the
   67353         function more and more difficult to read.
   67354 
   67355         * page/Frame.h: Removed unneeded includes and declarations.
   67356         Tweaked formatting.
   67357         * page/Page.h: Removed unneeded declarations.
   67358         * platform/ScrollView.h: Removed unneeded includes.
   67359 
   67360         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::renderName): Tweaked formatting.
   67361 
   67362 2007-01-08  Mitz Pettel  <mitz (a] webkit.org>
   67363 
   67364         Reviewed by Darin.
   67365 
   67366         - fix http://bugs.webkit.org/show_bug.cgi?id=12162
   67367           The inheritableProperties array is duplicated
   67368 
   67369         No test possible (no change to functionality).
   67370 
   67371         * css/CSSComputedStyleDeclaration.cpp:
   67372         (WebCore::CSSComputedStyleDeclaration::removeComputedInheritablePropertiesFrom): Added.
   67373         Removes the inheritable properties that CSSComputedStyleDeclaration knows how to compute
   67374         from the given mutable declaration.
   67375         * css/CSSComputedStyleDeclaration.h:
   67376         * css/CSSMutableStyleDeclaration.cpp: Removed one copy of the inheritableProperties array.
   67377         * css/CSSMutableStyleDeclaration.h:
   67378         * editing/ReplaceSelectionCommand.cpp:
   67379         (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Changed to call
   67380         CSSComputedStyleDeclaration::removeComputedInheritablePropertiesFrom.
   67381 
   67382 2007-01-08  Alexey Proskuryakov  <ap (a] webkit.org>
   67383 
   67384         Reviewed by Darin.
   67385 
   67386         http://bugs.webkit.org/show_bug.cgi?id=12099
   67387         XMLHttpRequest shouldn't honor a charset specified via setRequestHeader
   67388 
   67389         Test: http/tests/xmlhttprequest/request-encoding.html
   67390 
   67391         * xml/xmlhttprequest.cpp:
   67392         (WebCore::XMLHttpRequest::send): Don't try to get the charset from Content-Type. Keep checking 
   67393         for unknown charsets, because that will be needed again when we start using document.xmlEncoding.
   67394 
   67395 2007-01-08  Alexey Proskuryakov  <ap (a] webkit.org>
   67396 
   67397         Reviewed by Darin.
   67398 
   67399         http://bugs.webkit.org/show_bug.cgi?id=7640
   67400         Menu items are displayed as "undefined"
   67401 
   67402         * bindings/js/kjs_dom.cpp:
   67403         (KJS::DOMNodeProtoFunc::callAsFunction):
   67404         * bindings/js/kjs_domnode.h:
   67405         (KJS::DOMNode::):
   67406         Removed Node::item. No idea why it was there in the first place.
   67407 
   67408         * bindings/js/kjs_html.cpp:
   67409         (KJS::HTMLElementFunction::callAsFunction):
   67410         * bindings/js/kjs_html.h:
   67411         (KJS::JSHTMLElement::):
   67412         Added HTMLSelectElement::item. It is not in DOM2 IDL, but the spec seems to mentions it anyway:
   67413         "The contained options can be directly accessed through the select element as a collection."
   67414 
   67415         * html/HTMLSelectElement.cpp:
   67416         (WebCore::HTMLSelectElement::namedItem):
   67417         (WebCore::HTMLSelectElement::item):
   67418         * html/HTMLSelectElement.h:
   67419         * html/HTMLSelectElement.idl:
   67420         Added this method to DOM and IDL, too. Made namedItem() non-virtual.
   67421 
   67422 2007-01-08  Beth Dakin  <bdakin (a] apple.com>
   67423 
   67424         Reviewed by Maciej.
   67425 
   67426         Fix for <rdar://problem/4912254> REGRESSION: After copying text to 
   67427         the clipboard, the paste contextual remains dimmed when it should
   67428         be active
   67429 
   67430         No layout test for context menu problems.
   67431 
   67432         * platform/ContextMenu.cpp:
   67433         (WebCore::ContextMenu::checkOrEnableIfNeeded): Remove check to see 
   67434         if the content is richly editable; it only has to be regular 
   67435         editable and the call to canPaste() takes care of that.
   67436 
   67437 2007-01-08  Sam Weinig  <sam (a] webkit.org>
   67438 
   67439         Reviewed by Mitz.
   67440 
   67441         Attempt to fix build for buildbots.
   67442 
   67443         * rendering/RenderBlock.cpp:
   67444         (WebCore::RenderBlock::columnGap):
   67445         (WebCore::RenderBlock::calcColumnWidth):
   67446 
   67447 2007-01-08  Darin Adler  <darin (a] apple.com>
   67448 
   67449         Reviewed by Maciej.
   67450 
   67451         - fix http://bugs.webkit.org/show_bug.cgi?id=3232
   67452           CSS2: Web Kit does not support all list style types
   67453 
   67454         Test case showed problems in cjk-ideographic and hebrew
   67455         Test: fast/lists/w3-list-styles.html
   67456 
   67457         * rendering/RenderListMarker.cpp:
   67458         (WebCore::toCJKIdeographic): Fix the algorithm so it doesn't include leading zeroes.
   67459         I had misread the part that says you start with the decimal form of the number.
   67460         Fix an assertion that was too stringent. Fix the code to collapse consecutive zeroes
   67461         so that it doesn't get confused by intervening "noChar" characters.
   67462         (WebCore::RenderListMarker::paint): Reverse the text before painting if the first character's
   67463         direction is right to left.
   67464 
   67465 2007-01-08  Darin Adler  <darin (a] apple.com>
   67466 
   67467         Reviewed by Beth.
   67468 
   67469         - http://bugs.webkit.org/show_bug.cgi?id=12142
   67470           render tree dump for test results should include the value of list markers
   67471 
   67472         * rendering/RenderTreeAsText.cpp:
   67473         (WebCore::getTagName): Changed to use String instead of DeprecatedString.
   67474         (WebCore::quoteAndEscapeNonPrintables): Ditto. Also moved up so it can be used
   67475         in the operator below.
   67476         (WebCore::operator<<): Added clause for RenderListMarker that dumps the value
   67477         of the list marker's text.
   67478         (WebCore::nodePosition): Changed to use String instead of DeprecatedString.
   67479         * rendering/SVGRenderTreeAsText.cpp:
   67480         (WebCore::TextStreamSeparator::TextStreamSeparator): Changed to use String
   67481         instead of DeprecatedString.
   67482         (WebCore::getTagName): Ditto.
   67483         (WebCore::write): Ditto.
   67484 
   67485 2007-01-08  Sam Weinig  <sam (a] webkit.org>
   67486 
   67487         Reviewed by ap and the rubber stamp of Maciej.
   67488 
   67489         Patch for http://bugs.webkit.org/show_bug.cgi?id=12164
   67490         Cleanup Tokenizers
   67491 
   67492         - Moves Tokenizer class into its own file.
   67493         - Move XMLTokenizer declaration from XMLTokenizer.cpp to XMLTokenizer.h
   67494         - Fixup #includes.
   67495 
   67496         * WebCore.xcodeproj/project.pbxproj:
   67497         * dom/Document.cpp:
   67498         (WebCore::Document::createTokenizer):
   67499         * dom/Tokenizer.h: Added.
   67500         (WebCore::Tokenizer::Tokenizer):
   67501         (WebCore::Tokenizer::~Tokenizer):
   67502         (WebCore::Tokenizer::stopParsing):
   67503         (WebCore::Tokenizer::processingData):
   67504         (WebCore::Tokenizer::executingScript):
   67505         (WebCore::Tokenizer::wantsRawData):
   67506         (WebCore::Tokenizer::writeRawData):
   67507         (WebCore::Tokenizer::inViewSourceMode):
   67508         (WebCore::Tokenizer::setInViewSourceMode):
   67509         (WebCore::Tokenizer::wellFormed):
   67510         (WebCore::Tokenizer::lineNumber):
   67511         (WebCore::Tokenizer::columnNumber):
   67512         * dom/XMLTokenizer.cpp:
   67513         * dom/XMLTokenizer.h:
   67514         (WebCore::XMLTokenizer::):
   67515         (WebCore::XMLTokenizer::setIsXHTMLDocument):
   67516         (WebCore::XMLTokenizer::isXHTMLDocument):
   67517         (WebCore::XMLTokenizer::wellFormed):
   67518         * html/HTMLElement.cpp:
   67519         * html/HTMLTokenizer.h:
   67520         (WebCore::Token::reset):
   67521         (WebCore::HTMLTokenizer::checkBuffer):
   67522         (WebCore::HTMLTokenizer::checkScriptBuffer):
   67523         (WebCore::HTMLTokenizer::State::State):
   67524         (WebCore::HTMLTokenizer::State::setBit):
   67525         * xml/XSLTProcessor.cpp:
   67526 
   67527 2007-01-08  Sam Weinig  <sam (a] webkit.org>
   67528 
   67529         Reviewed by Tim H.
   67530 
   67531         Adds -webkit-box-shadow to list of computable styles.
   67532 
   67533         * css/CSSComputedStyleDeclaration.cpp:
   67534         (WebCore::):
   67535 
   67536 2007-01-08  Rob Buis  <buis (a] kde.org>
   67537 
   67538         Reviewed by bdash.
   67539 
   67540         Initialize the member vars, fixes testcases
   67541         pointer-events-path.svg and pointer-events-text.svg
   67542         on the PPC build.
   67543 
   67544         * ksvg2/misc/PointerEventsHitRules.cpp:
   67545         (WebCore::PointerEventsHitRules::PointerEventsHitRules):
   67546 
   67547 2007-01-08  David Hyatt  <hyatt (a] apple.com>
   67548 
   67549         This patch computes the correct column width and column count.  It ensures that content lays out constrained
   67550         to the column width in one long strip.  It does not yet balance the long strip into multiple columns.
   67551 
   67552         Reviewed by Mark
   67553 
   67554         * rendering/RenderBlock.cpp:
   67555         (WebCore:::RenderFlow):
   67556         (WebCore::RenderBlock::layoutBlock):
   67557         (WebCore::RenderBlock::rightOffset):
   67558         (WebCore::RenderBlock::availableWidth):
   67559         (WebCore::RenderBlock::columnGap):
   67560         (WebCore::RenderBlock::calcColumnWidth):
   67561         * rendering/RenderBlock.h:
   67562         * rendering/RenderStyle.h:
   67563         (WebCore::RenderStyle::setColumnWidth):
   67564 
   67565 2007-01-08  David Hyatt  <hyatt (a] apple.com>
   67566 
   67567         Fix column-count so that it supports auto just like column-width does.
   67568 
   67569         Add a new function, availableWidth(), that will be used to return the width available to content placed inside
   67570         a block.  For now it still returns contentWidth(), so no behavioral change has occurred yet.
   67571 
   67572         Subclass calcWidth() in RenderBlock, but don't change anything yet.  This is where RenderBlock will calc the
   67573         correct column width.
   67574 
   67575         Reviewed by mark
   67576 
   67577         * css/CSSComputedStyleDeclaration.cpp:
   67578         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   67579         * css/cssstyleselector.cpp:
   67580         (WebCore::CSSStyleSelector::applyProperty):
   67581         * rendering/RenderBlock.cpp:
   67582         (WebCore::RenderBlock::leftRelOffset):
   67583         (WebCore::RenderBlock::rightRelOffset):
   67584         (WebCore::RenderBlock::getClearDelta):
   67585         (WebCore::RenderBlock::availableWidth):
   67586         (WebCore::RenderBlock::calcWidth):
   67587         * rendering/RenderBlock.h:
   67588         * rendering/RenderBox.cpp:
   67589         (WebCore::RenderBox::containingBlockWidth):
   67590         * rendering/RenderObject.cpp:
   67591         (WebCore::RenderObject::containingBlockWidth):
   67592         (WebCore::RenderObject::paddingTop):
   67593         (WebCore::RenderObject::paddingBottom):
   67594         (WebCore::RenderObject::paddingLeft):
   67595         (WebCore::RenderObject::paddingRight):
   67596         * rendering/RenderObject.h:
   67597         (WebCore::RenderObject::availableWidth):
   67598         * rendering/RenderStyle.cpp:
   67599         (WebCore::StyleMultiColData::StyleMultiColData):
   67600         (WebCore::StyleMultiColData::operator==):
   67601         * rendering/RenderStyle.h:
   67602         (WebCore::RenderStyle::hasAutoColumnCount):
   67603         (WebCore::RenderStyle::setColumnCount):
   67604         (WebCore::RenderStyle::setHasAutoColumnCount):
   67605         * rendering/RenderTable.cpp:
   67606         (WebCore::RenderTable::calcWidth):
   67607 
   67608 2007-01-08  David Hyatt  <hyatt (a] apple.com>
   67609 
   67610         Fix z-index:inherit so that it works properly when inheriting from z-index:auto.
   67611 
   67612         Reviewed by eric
   67613 
   67614         fast/layers/zindex-inherit.html
   67615 
   67616         * css/cssstyleselector.cpp:
   67617         (WebCore::CSSStyleSelector::applyProperty):
   67618 
   67619 2007-01-08  David Hyatt  <hyatt (a] apple.com>
   67620 
   67621         Add support for all of the CSS3 multi-column properties in preparation for implementing the
   67622         feature.
   67623 
   67624         Reviewed by eric
   67625 
   67626         * css/CSSComputedStyleDeclaration.cpp:
   67627         (WebCore::):
   67628         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   67629         * css/CSSMutableStyleDeclaration.cpp:
   67630         (WebCore::):
   67631         * css/CSSPropertyNames.in:
   67632         * css/cssparser.cpp:
   67633         (WebCore::CSSParser::parseValue):
   67634         * css/cssstyleselector.cpp:
   67635         (WebCore::CSSStyleSelector::applyProperty):
   67636         * rendering/RenderStyle.cpp:
   67637         (WebCore::StyleMultiColData::StyleMultiColData):
   67638         (WebCore::StyleMultiColData::operator==):
   67639         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   67640         (WebCore::StyleRareNonInheritedData::operator==):
   67641         (WebCore::RenderStyle::RenderStyle):
   67642         (WebCore::RenderStyle::diff):
   67643         * rendering/RenderStyle.h:
   67644         (WebCore::StyleMultiColData::operator!=):
   67645         (WebCore::StyleMultiColData::ruleWidth):
   67646         (WebCore::RenderStyle::columnWidth):
   67647         (WebCore::RenderStyle::hasAutoColumnWidth):
   67648         (WebCore::RenderStyle::columnCount):
   67649         (WebCore::RenderStyle::columnGap):
   67650         (WebCore::RenderStyle::hasAutoColumnGap):
   67651         (WebCore::RenderStyle::columnRuleColor):
   67652         (WebCore::RenderStyle::columnRuleStyle):
   67653         (WebCore::RenderStyle::columnRuleWidth):
   67654         (WebCore::RenderStyle::columnBreakBefore):
   67655         (WebCore::RenderStyle::columnBreakInside):
   67656         (WebCore::RenderStyle::columnBreakAfter):
   67657         (WebCore::RenderStyle::setColumnWidth):
   67658         (WebCore::RenderStyle::setHasAutoColumnWidth):
   67659         (WebCore::RenderStyle::setColumnCount):
   67660         (WebCore::RenderStyle::setColumnGap):
   67661         (WebCore::RenderStyle::setHasAutoColumnGap):
   67662         (WebCore::RenderStyle::setColumnRuleColor):
   67663         (WebCore::RenderStyle::setColumnRuleStyle):
   67664         (WebCore::RenderStyle::setColumnRuleWidth):
   67665         (WebCore::RenderStyle::resetColumnRule):
   67666         (WebCore::RenderStyle::setColumnBreakBefore):
   67667         (WebCore::RenderStyle::setColumnBreakInside):
   67668         (WebCore::RenderStyle::setColumnBreakAfter):
   67669         (WebCore::RenderStyle::initialColumnCount):
   67670         (WebCore::RenderStyle::initialColumnWidth):
   67671 
   67672 2007-01-07  Rob Buis  <buis (a] kde.org>
   67673 
   67674         Reviewed by Eric.
   67675 
   67676         http://bugs.webkit.org/show_bug.cgi?id=10587
   67677         pointer-events is not implemented for RenderSVGImage or RenderSVGText
   67678 
   67679         Implement pointer-events for raster images and svg text.
   67680 
   67681         * WebCore.xcodeproj/project.pbxproj:
   67682         * ksvg2/misc/PointerEventsHitRules.cpp: Added.
   67683         (WebCore::PointerEventsHitRules::PointerEventsHitRules):
   67684         * ksvg2/misc/PointerEventsHitRules.h: Added.
   67685         (WebCore::PointerEventsHitRules::):
   67686         * rendering/RenderPath.cpp:
   67687         (WebCore::RenderPath::nodeAtPoint):
   67688         * rendering/RenderPath.h:
   67689         * rendering/RenderSVGImage.cpp:
   67690         (WebCore::RenderSVGImage::nodeAtPoint):
   67691         * rendering/RenderSVGImage.h:
   67692         * rendering/RenderSVGText.cpp:
   67693         (WebCore::RenderSVGText::nodeAtPoint):
   67694         * rendering/RenderSVGText.h:
   67695 
   67696 2007-01-07  David Hyatt  <hyatt (a] apple.com>
   67697 
   67698         Fix a regression where border-radius was not clipping the background when border was set to none.
   67699         Fix multi-line inline flow painting to properly apply border-radius to the background only at the
   67700         beginning of the first line and end of the last line.
   67701 
   67702         Reviewed by eric
   67703 
   67704         * rendering/InlineFlowBox.cpp:
   67705         (WebCore::InlineFlowBox::paintBackground):
   67706         * rendering/RenderBox.cpp:
   67707         (WebCore::RenderBox::paintBackground):
   67708         (WebCore::RenderBox::paintBackgroundExtended):
   67709         * rendering/RenderBox.h:
   67710         * rendering/RenderObject.h:
   67711         (WebCore::RenderObject::paintBackgroundExtended):
   67712 
   67713 2007-01-07  David Hyatt  <hyatt (a] apple.com>
   67714 
   67715         Add support for the CSS3 box-shadow property.
   67716 
   67717         Reviewed by olliej
   67718 
   67719         fast/box-shadow/ contains the tests for this feature.
   67720 
   67721         * platform/graphics/GraphicsContext.cpp:
   67722         (WebCore::GraphicsContext::clipOutRoundedRect):
   67723         * platform/graphics/GraphicsContext.h:
   67724         * platform/graphics/cg/GraphicsContextCG.cpp:
   67725         (WebCore::GraphicsContext::fillRoundedRect):
   67726         (WebCore::GraphicsContext::clipOut):
   67727         (WebCore::GraphicsContext::clipOutEllipseInRect):
   67728         * platform/graphics/qt/GraphicsContextQt.cpp:
   67729         (WebCore::GraphicsContext::fillRoundedRect):
   67730         (WebCore::GraphicsContext::clipOut):
   67731         (WebCore::GraphicsContext::clipOutEllipseInRect):
   67732         * rendering/InlineFlowBox.cpp:
   67733         (WebCore::InlineFlowBox::paint):
   67734         (WebCore::InlineFlowBox::paintBoxShadow):
   67735         (WebCore::InlineFlowBox::paintBoxDecorations):
   67736         (WebCore::shouldDrawTextDecoration):
   67737         (WebCore::InlineFlowBox::paintTextDecorations):
   67738         * rendering/InlineFlowBox.h:
   67739         * rendering/InlineRunBox.h:
   67740         (WebCore::InlineRunBox::paintBoxDecorations):
   67741         (WebCore::InlineRunBox::paintTextDecorations):
   67742         * rendering/RenderBlock.cpp:
   67743         (WebCore::RenderBlock::paintObject):
   67744         * rendering/RenderBox.cpp:
   67745         (WebCore::RenderBox::setStyle):
   67746         (WebCore::RenderBox::paintBoxDecorations):
   67747         (WebCore::RenderBox::paintBackgroundExtended):
   67748         * rendering/RenderFieldset.cpp:
   67749         (WebCore::RenderFieldset::paintBoxDecorations):
   67750         * rendering/RenderHTMLCanvas.cpp:
   67751         (WebCore::RenderHTMLCanvas::paint):
   67752         * rendering/RenderImage.cpp:
   67753         (WebCore::RenderImage::paint):
   67754         * rendering/RenderImage.h:
   67755         * rendering/RenderListMarker.cpp:
   67756         (WebCore::RenderListMarker::paint):
   67757         * rendering/RenderObject.cpp:
   67758         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
   67759         (WebCore::RenderObject::paintBoxShadow):
   67760         (WebCore::RenderObject::dump):
   67761         (WebCore::RenderObject::setStyle):
   67762         * rendering/RenderObject.h:
   67763         (WebCore::RenderObject::hasBoxDecorations):
   67764         (WebCore::RenderObject::setHasBoxDecorations):
   67765         * rendering/RenderSVGContainer.cpp:
   67766         (WebCore::RenderSVGContainer::paint):
   67767         * rendering/RenderTable.cpp:
   67768         (WebCore::RenderTable::paint):
   67769         (WebCore::RenderTable::paintBoxDecorations):
   67770         * rendering/RenderTableCell.cpp:
   67771         (WebCore::RenderTableCell::RenderTableCell):
   67772         (WebCore::RenderTableCell::setStyle):
   67773         (WebCore::RenderTableCell::paintBoxDecorations):
   67774         * rendering/RenderWidget.cpp:
   67775         (WebCore::RenderWidget::paint):
   67776 
   67777 2007-01-07  Rob Buis  <buis (a] kde.org>
   67778 
   67779         Reviewed by weinig.
   67780 
   67781         http://bugs.webkit.org/show_bug.cgi?id=10362
   67782         SVG needs to support SVGError events and some form of "error state"
   67783 
   67784         Report SVG warnings and errors on (JS) console.
   67785         Expose line and column number getters in Tokenizer in
   67786         order to display them with the error message.
   67787 
   67788         * dom/XMLTokenizer.cpp:
   67789         * dom/XMLTokenizer.h:
   67790         (WebCore::Tokenizer::lineNumber):
   67791         (WebCore::Tokenizer::columnNumber):
   67792         * html/HTMLTokenizer.h:
   67793         (WebCore::HTMLTokenizer::lineNumber):
   67794         (WebCore::HTMLTokenizer::columnNumber):
   67795         * ksvg2/misc/SVGDocumentExtensions.cpp:
   67796         (WebCore::SVGDocumentExtensions::reportWarning):
   67797         (WebCore::SVGDocumentExtensions::reportError):
   67798         * ksvg2/misc/SVGDocumentExtensions.h:
   67799         * ksvg2/svg/SVGCircleElement.cpp:
   67800         (WebCore::SVGCircleElement::parseMappedAttribute):
   67801         * ksvg2/svg/SVGElement.h:
   67802         * ksvg2/svg/SVGEllipseElement.cpp:
   67803         (WebCore::SVGEllipseElement::parseMappedAttribute):
   67804         * ksvg2/svg/SVGFitToViewBox.cpp:
   67805         (WebCore::SVGFitToViewBox::parseViewBox):
   67806         * ksvg2/svg/SVGFitToViewBox.h:
   67807         * ksvg2/svg/SVGImageElement.cpp:
   67808         (WebCore::SVGImageElement::parseMappedAttribute):
   67809         * ksvg2/svg/SVGParserUtilities.cpp:
   67810         (WebCore::SVGPolyParser::parsePoints):
   67811         * ksvg2/svg/SVGParserUtilities.h:
   67812         * ksvg2/svg/SVGPathElement.cpp:
   67813         (WebCore::SVGPathElement::parseMappedAttribute):
   67814         * ksvg2/svg/SVGPatternElement.cpp:
   67815         (WebCore::SVGPatternElement::parseMappedAttribute):
   67816         * ksvg2/svg/SVGPolyElement.cpp:
   67817         (WebCore::SVGPolyElement::parseMappedAttribute):
   67818         * ksvg2/svg/SVGRadialGradientElement.cpp:
   67819         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
   67820         * ksvg2/svg/SVGRectElement.cpp:
   67821         (WebCore::SVGRectElement::parseMappedAttribute):
   67822         * ksvg2/svg/SVGSVGElement.cpp:
   67823         (WebCore::SVGSVGElement::parseMappedAttribute):
   67824         * ksvg2/svg/SVGTextContentElement.cpp:
   67825         (WebCore::SVGTextContentElement::parseMappedAttribute):
   67826         * ksvg2/svg/SVGUseElement.cpp:
   67827         (WebCore::SVGUseElement::parseMappedAttribute):
   67828 
   67829 2007-01-07  Nikolas Zimmermann  <zimmermann (a] kde.org>
   67830 
   67831         Reviewed by Sam.
   67832 
   67833         Cleanup code & fix InlineBox positioning when text-anchor is used.
   67834 
   67835         * rendering/RenderSVGText.cpp: Cleanup code.
   67836         (WebCore::RenderSVGText::nodeAtPoint):
   67837         (WebCore::RenderSVGText::absoluteRects):
   67838         (WebCore::RenderSVGText::paint):
   67839         * rendering/RenderText.cpp: Remove unused function posOfChar()
   67840         * rendering/RenderText.h: Ditto.
   67841         * rendering/SVGInlineFlowBox.cpp:
   67842         (WebCore::translateBox):
   67843         (WebCore::placePositionedBoxesHorizontally):
   67844 
   67845 2007-01-06  George Staikos  <staikos (a] kde.org>
   67846 
   67847         Reviewed by Brady.
   67848 
   67849         Make the Qt build work.... again.
   67850 
   67851         * WebCore.pro:
   67852         * loader/FrameLoader.cpp:
   67853         (WebCore::FrameLoader::requestFromDelegate):
   67854         * loader/qt/DocumentLoaderQt.cpp:
   67855         * loader/qt/FrameLoaderQt.cpp:
   67856         * loader/qt/MainResourceLoaderQt.cpp: Added.
   67857         (WebCore::MainResourceLoader::create):
   67858         * loader/qt/ResourceLoaderQt.cpp:
   67859         (WebCore::ResourceLoader::load):
   67860         (WebCore::ResourceLoader::cancel):
   67861         (WebCore::ResourceLoader::releaseResources):
   67862         (WebCore::ResourceLoader::addData):
   67863         * platform/network/qt/ResourceHandleQt.cpp:
   67864         (WebCore::ResourceHandle::supportsBufferedData):
   67865         (WebCore::ResourceHandle::bufferedData):
   67866         (WebCore::ResourceHandle::loadResourceSynchronously):
   67867         * platform/qt/LoaderFunctionsQt.cpp:
   67868         * platform/qt/TemporaryLinkStubs.cpp: implemented some functions
   67869         (WebCore::screenDepth):
   67870         (WebCore::screenDepthPerComponent):
   67871         (WebCore::screenIsMonochrome):
   67872         (WebCore::screenRect):
   67873         (WebCore::screenAvailableRect):
   67874 
   67875 2007-01-07  Mitz Pettel  <mitz (a] webkit.org>
   67876 
   67877         Reviewed by Mark Rowe.
   67878 
   67879         - fix http://bugs.webkit.org/show_bug.cgi?id=11133
   67880 
   67881         Test: fast/forms/listbox-clip.html
   67882 
   67883         * platform/mac/PlatformScrollBarMac.mm:
   67884         (-[WebCoreScrollBar initWithPlatformScrollbar:]): Get the correct scrollbar
   67885         width/height based on control size.
   67886         * rendering/RenderListBox.cpp:
   67887         Renamed optionsSpacingLeft to optionsSpacingHorizontal since it is applied
   67888         on both sides.
   67889         (WebCore::RenderListBox::calcMinMaxWidth): Account for optionsSpacingHorizontal.
   67890         Not including the spacing before went unnoticed since the scrollbar was lying
   67891         about its width by exactly the same amount.
   67892         (WebCore::RenderListBox::paintObject): Clip out the scrollbar.
   67893         (WebCore::RenderListBox::paintItemForeground): Changed for the rename.
   67894 
   67895 2007-01-07  Mitz Pettel  <mitz (a] webkit.org>
   67896 
   67897         Reviewed by Hyatt.
   67898 
   67899         - fix http://bugs.webkit.org/show_bug.cgi?id=11935
   67900           REGRESSION: Changing the overflow style dynamically does not force repaint
   67901 
   67902         Test: fast/repaint/erase-overflow.html
   67903 
   67904         * rendering/RenderBox.cpp:
   67905         (WebCore::RenderBox::setStyle): Added a repaint before changing hasOverflowClip
   67906         to true, to ensure that the current overflow is erased.
   67907 
   67908 2007-01-07  Graham Dennis  <graham.dennis (a] gmail.com>
   67909 
   67910         Reviewed by Darin.
   67911 
   67912         Patch for http://bugs.webkit.org/show_bug.cgi?id=12106
   67913         Changed URL from WebResourceLoadDelegate's webView:resource:willSendRequest:... is ignored
   67914 
   67915         * loader/mac/SubresourceLoaderMac.mm:
   67916         (WebCore::SubresourceLoader::willSendRequest): Use m_originalURL instead of request().url()
   67917         as m_request is not set until the end of ResourceLoader::willSendRequest. Also, ensure that
   67918         the request is updated if the frame's client changes it, and that the SubresourceLoader's client
   67919         gets the new request and not the old one. 
   67920 
   67921 2007-01-07  Alexey Proskuryakov  <ap (a] webkit.org>
   67922 
   67923         Reviewed by Darin.
   67924 
   67925         http://bugs.webkit.org/show_bug.cgi?id=10313
   67926         xsl:import doesn't work in stylesheets loaded via XMLHttpRequest
   67927 
   67928         This is a partial fix that makes a couple more steps towards fixing the problem.
   67929 
   67930         Test: fast/xsl/transform-xhr-doc.xhtml
   67931 
   67932         * xml/XSLTProcessor.cpp:
   67933         (WebCore::xsltStylesheetPointer): Pass an URL for the stylesheet. I'm not sure why this constructor even needs it, 
   67934         given that it has a Node, but this is a small modifications that makes XSLImportRule try to load from a correct URL.
   67935         (WebCore::XSLTProcessor::transformToString): Fix the crash for real this time.
   67936 
   67937 2007-01-06  Rob Buis  <buis (a] kde.org>
   67938 
   67939         Reviewed by Darin.
   67940 
   67941         http://bugs.webkit.org/show_bug.cgi?id=12125
   67942         overflow attribute of the symbol element not respected
   67943 
   67944         Copy the attribute map to the cloned node so the overflow on
   67945         the symbol is respected.
   67946 
   67947         * ksvg2/svg/SVGUseElement.cpp:
   67948         (WebCore::SVGUseElement::closeRenderer):
   67949 
   67950 2007-01-06  Eric Seidel  <eric (a] webkit.org>
   67951 
   67952         Reviewed and significantly tweaked by Darin.
   67953 
   67954         - fix http://bugs.webkit.org/show_bug.cgi?id=12103
   67955           LEAK: Fix the leaking ImageBuffer buffers on TOT
   67956 
   67957         * ksvg2/svg/SVGMaskElement.h:
   67958         * ksvg2/svg/SVGMaskElement.cpp:
   67959         (WebCore::SVGMaskElement::drawMaskerContent):
   67960         Changed to return auto_ptr since it returns a newly-created ImageBuffer.
   67961 
   67962         * ksvg2/svg/SVGPatternElement.cpp:
   67963         (WebCore::SVGPatternElement::buildPattern):
   67964         Changed to use auto_ptr since ImageBuffer::create now returns one.
   67965 
   67966         * platform/graphics/GraphicsContext.h: Removed the include of ImageBuffer.h,
   67967         which was never needed, and the declaration of createImageBuffer, which is
   67968         now a class member function of ImageBuffer.
   67969 
   67970         * platform/graphics/ImageBuffer.h: Replaced the constructor with a create
   67971         function. Added a comment about the need to move renderSubtreeToImage
   67972         elsewhere. Added an m_data member to store the data so it can be deleted
   67973         when the object is done, made the m_size member non-platform-specific.
   67974         Added a private constructor for use to create the CG version.
   67975 
   67976         * platform/graphics/cg/GraphicsContextCG.cpp: Removed
   67977         GraphicsContext::createImageBuffer.
   67978 
   67979         * platform/graphics/cg/ImageBufferCG.cpp:
   67980         (WebCore::ImageBuffer::create): Added. Replaces the old
   67981         GraphicsContext::createImageBuffer function.
   67982         (WebCore::ImageBuffer::ImageBuffer): Added m_data and m_context.
   67983         (WebCore::ImageBuffer::~ImageBuffer): Added a fastFree of the data and got
   67984         rid of the unneeded null check before calling CGImageRelease.
   67985 
   67986         * platform/graphics/svg/SVGPaintServerGradient.h: Removed the include of
   67987         ImageBuffer.h and declared the ImageBuffer class instead.
   67988 
   67989         * platform/graphics/svg/SVGPaintServerPattern.h: Removed the include of
   67990         ImageBuffer.h and declared the ImageBuffer class instead, and changed setTile
   67991         to take an auto_ptr since it takes ownership of the ImageBuffer.
   67992         * platform/graphics/svg/SVGPaintServerPattern.cpp:
   67993         (WebCore::SVGPaintServerPattern::setTile): Ditto.
   67994 
   67995         * platform/graphics/svg/SVGResourceMasker.h: Removed the include of
   67996         ImageBuffer.h and declared the ImageBuffer class instead, and changed setMask
   67997         to take an auto_ptr since it takes ownership of the ImageBuffer.
   67998         * platform/graphics/svg/SVGResourceMasker.cpp:
   67999         (WebCore::SVGResourceMasker::setMask): Ditto.
   68000 
   68001         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   68002         (WebCore::SVGPaintServerGradient::setup): Updated to use auto_ptr.
   68003 
   68004         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: Updated includes.
   68005 
   68006         * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
   68007         (WebCore::SVGResourceMasker::applyMask): Updated to use auto_ptr.
   68008 
   68009         - other changes
   68010 
   68011         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   68012         (WebCore::SVGAnimateTransformElement::handleStartCondition):
   68013         Remove unused variables.
   68014 
   68015 2007-01-06  Mitz Pettel  <mitz (a] webkit.org>
   68016 
   68017         Reviewed by Maciej.
   68018 
   68019         - fix http://bugs.webkit.org/show_bug.cgi?id=12136
   68020           REGRESSION: Counters-related leaks
   68021 
   68022         * rendering/RenderCounter.cpp:
   68023         (WebCore::destroyCounterNodeChildren): Delete the child counter nodes.
   68024 
   68025 2007-01-05  Adele Peterson  <adele (a] apple.com>
   68026 
   68027         Release build fix.
   68028 
   68029         * rendering/RenderListItem.cpp: (WebCore::RenderListItem::explicitValueChanged): Initialize listRenderer.
   68030 
   68031 2007-01-05  Darin Adler  <darin (a] apple.com>
   68032 
   68033         Reviewed by Hyatt.
   68034 
   68035         - eliminated use of DeprecatedString for list item markers
   68036         - eliminated use of DeprecatedValueList for border style collapsing
   68037         - made many members private instead of protected or public
   68038 
   68039         - reworked counter implementation to fix most of the CSS 2.1 counter tests;
   68040             made CounterNode be a simple non-polymorphic class, moved most counter-
   68041             specific code out of RenderObject into RenderCounter, changed the data
   68042             structure in RenderStyle to be more speed-efficient but less space-
   68043             efficient for nodes with counter styles
   68044         - fixed http://bugs.webkit.org/show_bug.cgi?id=11557
   68045 
   68046         Tests: css2.1
   68047 
   68048         - fixed a bug where counter text did not have text transform or text security
   68049           applied to it
   68050 
   68051         Test: fast/css/counters/counter-text-security.html
   68052         Test: fast/css/counters/counter-text-transform.html
   68053 
   68054         - improved handling of CSS content property values with data of the wrong
   68055           type; this probably needs a bit more refinement
   68056 
   68057         Test: fast/css-generated-content/reset-content-to-initial-expected.txt
   68058 
   68059         - fixed a bug where removing the value attribute from an HTMLLIElement would
   68060           set the list item's value to 0 instead of restoring it to normal
   68061 
   68062         Test: fast/lists/li-values.html
   68063 
   68064         - fixed a bug where changing the text security style from one style to another
   68065           would not change the displayed text
   68066 
   68067         Test: fast/css/text-security.html
   68068 
   68069         - fixed some problems handling long sequences of counter-related styles;
   68070           still needs more work and some super-large test cases to check if
   68071           recursive algorithms for these that will overflow stack remain
   68072 
   68073         - added support for list styles decimal-leading-zero, hiragana, hirigana-iroha,
   68074           katakana, katakana-iroha, cjk-ideographic, armenian, and georgian
   68075 
   68076         Test: fast/lists/decimal-leading-zero.html
   68077 
   68078         - minor tweaks and bug fixes for other list styles, including range checking
   68079 
   68080         * WebCore.exp: Updated for RenderListItem change.
   68081 
   68082         * bridge/mac/WebCoreAXObject.mm: (-[WebCoreAXObject value]): Updated to use
   68083         String instead of DeprecatedString.
   68084 
   68085         * css/CSSComputedStyleDeclaration.cpp:
   68086         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Removed
   68087         implementation for counter styles for now. We should probably restore it
   68088         later, but we need to make sure the returned list is separate from the
   68089         original list in the DOM -- modifying the list should not change the element
   68090         it was computed from.
   68091 
   68092         * css/Counter.h: Removed unneeded empty constructor and destructor.
   68093 
   68094         * css/cssstyleselector.cpp:
   68095         (WebCore::applyCounterList): Added. Stores counter directives in hash tables
   68096         that should allow us to efficiently implement dynamic counter changes. Full
   68097         support will have to wait for a future check-in.
   68098         (WebCore::CSSStyleSelector::applyProperty): Changed counter properties to
   68099         call applyCounterList. Reformatted the code to parse the content property for
   68100         changes to RenderStyle and to handle the case where some the items in the
   68101         content list don't generate any content.
   68102 
   68103         * editing/visible_units.cpp:
   68104         * rendering/RenderBox.cpp:
   68105         * rendering/RenderFlexibleBox.cpp:
   68106         * rendering/RenderFlow.cpp:
   68107         * rendering/RenderSlider.cpp:
   68108         Added includes needed because of header changes.
   68109 
   68110         * html/HTMLLIElement.H: Removed unneeded m_isValued.
   68111         * html/HTMLLIElement.cpp:
   68112         (WebCore::HTMLLIElement::parseMappedAttribute): To match test results seen
   68113         in WinIE, ignore values that are 0 or negative, and use new functions in
   68114         RenderListItem to communicate the lack of a valid value.
   68115         (WebCore::HTMLLIElement::attach): More of the same.
   68116 
   68117         * rendering/CounterNode.h: Made CounterNode be a non-polymorphic class,
   68118         removing all the subclasses. Merged in CounterResetNode. Removed
   68119         m_total from CounterResetNode, because it isn't needed for any of
   68120         the styles (decimal-leading-zero always uses two digits). Removed
   68121         m_hasSeparator and m_willNeedLayout since they aren't needed any more.
   68122         Renamed m_count to m_countInParent for clarify, and named the list
   68123         links the same as their associated functions. Removed many functions
   68124         as well.
   68125         * rendering/CounterNode.cpp:
   68126         (WebCore::CounterNode::CounterNode): Added new fields.
   68127         (WebCore::CounterNode::computeCountInParent): Added. Used by recount.
   68128         (WebCore::CounterNode::recount): Simplified by removing unused parameter and the
   68129         "get next" idiom. Changed to be iterative instead of recursive so we can handle
   68130         arbitrarily long lists.
   68131         (WebCore::CounterNode::insertAfter): Moved here from CounterResetNode. Updated
   68132         for field name changes. Corrected rule for when to recount.
   68133         (WebCore::CounterNode::removeChild): Moved here from CounterResetNode. Changed
   68134         to only work on nodes without children. Corrected rule for when to recount.
   68135         (WebCore::nextInPreOrderAfterChildren): Added. For debugging only.
   68136         (WebCore::nextInPreOrder): Ditto.
   68137         (WebCore::showTreeAndMark): Ditto.
   68138         (showTree): Ditto.
   68139 
   68140         * rendering/CounterListItem.h:
   68141         * rendering/CounterResetNode.h:
   68142         * rendering/CounterResetNode.cpp:
   68143         Marked ready to remove. I'll do the remove in a separate patch, since I have
   68144         to update a lot of different make files when I do.
   68145 
   68146         * rendering/ListMarkerBox.cpp: (WebCore::ListMarkerBox::isText): Changed for the
   68147         change to RenderListMarker.
   68148 
   68149         * rendering/RenderBlock.cpp:
   68150         (WebCore::RenderBlock::addChildToFlow): Changed to use functions instead of
   68151         direct field access so the fields can be private and we don't need to be friends.
   68152         (WebCore::RenderBlock::getBaselineOfFirstLineBox): Ditto.
   68153         (WebCore::RenderBlock::getBaselineOfLastLineBox): Ditto.
   68154         * rendering/RenderBlock.h:
   68155         (WebCore::RenderBlock::initMaxMarginValues): Ditto.
   68156         (WebCore::RenderBlock::firstRootBox): Ditto.
   68157         (WebCore::RenderBlock::lastRootBox): Ditto.
   68158         * rendering/RenderBox.h:
   68159         (WebCore::RenderBox::setWidth): Ditto.
   68160         (WebCore::RenderBox::setHeight): Ditto.
   68161         * rendering/RenderButton.cpp:
   68162         (WebCore::RenderButton::addChild): Ditto.
   68163         * rendering/bidi.cpp:
   68164         (WebCore::RenderBlock::determineStartPosition): Ditto.
   68165 
   68166         * rendering/RenderContainer.h: Renamed m_first and m_last to m_firstChild
   68167         and m_lastChild. Made them private instead of proected. Removed the
   68168         setFirstChild and setLastChild functions.
   68169         * rendering/RenderContainer.cpp:
   68170         (WebCore::RenderContainer::RenderContainer): Updated for field name change.
   68171         Changed all calls to get at fields directly instead of using functions.
   68172         (WebCore::RenderContainer::destroyLeftoverChildren): Ditto.
   68173         (WebCore::updateListMarkerNumbers): Updated for RenderListItem change.
   68174         (WebCore::RenderContainer::addChild): Changed to get at fields directly
   68175         instead of using functions. Also used release() since RenderText::setText
   68176         now takes PassRefPtr.
   68177         (WebCore::RenderContainer::removeChildNode): Changed to get at fields directly
   68178         instead of using functions.
   68179         (WebCore::RenderContainer::updatePseudoChildForObject): Create the anonymous
   68180         box only if at least one of of the items in the content list actually
   68181         generates content. Since a RenderCounter is a RenderText, don't bother making
   68182         a new style for it -- it just shares the style with its parent. Changed code
   68183         to use RenderImage::setCachedImage() instead of of setContentObject().
   68184         Added a call to setIsAnonymousImage() here, which was the only special thing
   68185         that setContentObject() used to do. Pass a reference to the counter to the
   68186         RenderCounter rather than a pointer. Pass document() as the node instead of
   68187         passing the element to RenderCounter, which makes it anonymous automatically,
   68188         and removed the setIsAnonymous call.
   68189         (WebCore::RenderContainer::appendChildNode): Chagned to get at fields directly
   68190         instead of using functions.
   68191         (WebCore::RenderContainer::insertChildNode): Ditto.
   68192         (WebCore::RenderContainer::layout): Ditto.
   68193         (WebCore::RenderContainer::removeLeftoverAnonymousBoxes): Ditto.
   68194         (WebCore::RenderContainer::positionForCoordinates): Ditto.
   68195         (WebCore::RenderContainer::addLineBoxRects): Ditto.
   68196 
   68197         * rendering/RenderCounter.h: Removed unneeded layout override, never called on a
   68198         text node. Added override of originalString. Replaced CounterData* with a copy of
   68199         the CounterContent -- it's two atomic strings and an integer so it's efficient
   68200         enough to store all three in the render object, and this eliminates the lifetime
   68201         problems we could have if we used a pointer.
   68202         * rendering/RenderCounter.cpp: Removed duplicate copy of list marker code.
   68203         (WebCore::counterMaps): Moved these maps here from RenderObject.
   68204         (WebCore::previousSiblingOrParent): Added.
   68205         (WebCore::lastDescendant): Added.
   68206         (WebCore::previousInPreOrder): Added.
   68207         (WebCore::planCounter): Added.
   68208         (WebCore::findPlaceForCounter): Added.
   68209         (WebCore::counter): New name of function that was named RenderObject::findCounter.
   68210         Also uses a new algorithm that passes all the CSS 2.1 tests.
   68211         (WebCore::RenderCounter::RenderCounter): Changed to take a Document* instead of a
   68212         Node*, since at the moment counters are always anonymous.
   68213         (WebCore::RenderCounter::originalString): Added. This overrides the originalString
   68214         in the RenderText base class so that any text transforms will use the counter's
   68215         value. This code was previously in calcMinMaxWidth.
   68216         (WebCore::RenderCounter::calcMinMaxWidth): Changed to call setInternalString and
   68217         pass originalString -- this uses the counter's value from the counter tree.
   68218         (WebCore::destroyCounterNodeChildren): Added.
   68219         (WebCore::RenderCounter::destroyCounterNodes): Added. Called as needed from
   68220         RenderObject::destroy for objects that have counter nodes.
   68221 
   68222         * rendering/RenderFlow.h: Made m_continuation private instead of protected.
   68223 
   68224         * rendering/RenderImage.h: Removed unneeded includes, and unnecessary element()
   68225         function that casts to HTMLElement*. Made image() protected, and made the two
   68226         calcAspectRatio functions private. Removed setContentObject(). Renamed the
   68227         errorOccured() function to isErrorImage() and made it private.
   68228         * rendering/RenderImage.cpp:
   68229         (WebCore::RenderImage::RenderImage): Removed initialization of removed
   68230         m_selectionState field.
   68231         (WebCore::RenderImage::setCachedImage): Rearrange code so it won't try to
   68232         call isErrorImage() on a null image.
   68233         (WebCore::RenderImage::paint): Updated for name change.
   68234 
   68235         * rendering/RenderListBox.h: Removed unneeded forward declarations.
   68236 
   68237         * rendering/RenderListItem.h:
   68238         Renamed markerStringValue() to markerText() and made it return a String instead of
   68239         a DeprecatedString. Renamed m_prededfVal to m_explicitValue. Added booleans named
   68240         m_hasExplicitValue and m_isValueUpToDate and marked m_value mutable so it can be
   68241         computed in const member functions.
   68242         (WebCore::RenderListItem::value): Changed to update value on demand at the time
   68243         you ask for it.
   68244         (WebCore::RenderListItem::hasExplicitValue): Added. Use instead of magic -1 value
   68245         to indicate that the item does or does not have an explicit value.
   68246         (WebCore::RenderListItem::explicitValue): Added.
   68247         (WebCore::RenderListItem::setExplicitValue): Added.
   68248         (WebCore::RenderListItem::clearExplicitValue): Added.
   68249         * rendering/RenderListItem.cpp:
   68250         (WebCore::RenderListItem::RenderListItem): Updated to not use magic -1 values.
   68251         (WebCore::RenderListItem::setStyle): Removed call to RenderListMarker::setListItem
   68252         since it's not needed any more, and instead pass the list item to the constructor.
   68253         (WebCore::previousListItem): Made parameter const.
   68254         (WebCore::RenderListItem::calcValue): Restructed the function a bit.
   68255         (WebCore::RenderListItem::updateValueNow): Added. Calls calcValue.
   68256         (WebCore::RenderListItem::updateValue): Added. New name for resetValue(). Unlike
   68257         the old version, this no longer calculates the value until it's asked-for later.
   68258         (WebCore::RenderListItem::markerText): Changed to return String rather than a
   68259         DeprecatedString and to return a null string rather than empty string when there
   68260         is no marker.
   68261 
   68262         * rendering/RenderListMarker.h: Added listMarkerText function -- common code shared
   68263         with anyone who needs to convert a value into text given a list style.
   68264         Changed constructor to take a RenderListItem and figure out the document from that.
   68265         Added isImage() and isText() functions and removed listImage() function. Changed the
   68266         type of the text() function from DeprecatedString to String. Removed the listItem()
   68267         and seListeItem() functions. Made the getRelativeMarkerRect() function private.
   68268         Renamed m_item to m_text and chagned it from DeprecatedString to String. Renamed
   68269         m_listImage to m_image.
   68270         * rendering/RenderListMarker.cpp:
   68271         (WebCore::toRoman): Added range checking to fix buffer overrun for large or negative
   68272         numbers. Rewrote to use a local UChar array and String rather than prepending to a
   68273         DeprecatedString.
   68274         (WebCore::toAlphabetic): Replaces toLetterString, and is more flexible since it takes
   68275         an alphabet array. Changed to match CSS 3 specification by using decimal numbering for
   68276         0 and negative numbers. Rewrote to use a local UChar array and String rather than
   68277         prepending to a DeprecatedString.
   68278         (WebCore::toHebrewUnder1000): Added. Helper function for Hebrew numbers so we can
   68279         handle numbers up to a million.
   68280         (WebCore::toHebrew): Changed to use toHebrewUnder1000, added a special case for
   68281         zero, negative, and too-large numbers.
   68282         (WebCore::toArmenianUnder10000): Added. Used by toArmenian.
   68283         (WebCore::toArmenian): Added.
   68284         (WebCore::toGeorgian): Added.
   68285         (WebCore::toCJKIdeographic): Added.
   68286         (WebCore::listMarkerText): Added. Moved the code here from calcMinMaxWidth, but added
   68287         support for text for the styles disc, circle, square, decimal-leading-zero, hiragana,
   68288         hirigana-iroha, katakana, katakana-iroha, cjk-ideographic, armenian, and georgian.
   68289         Also changed some of the styles to share the new toAlphabetic function.
   68290         (WebCore::RenderListMarker::RenderListMarker): Updated for name changes and list
   68291         item parameter.
   68292         (WebCore::RenderListMarker::~RenderListMarker): Updated for name changes.
   68293         (WebCore::RenderListMarker::setStyle): Updated for name changes.
   68294         (WebCore::RenderListMarker::isImage): Added. Useful helper that unifies the check
   68295         for no image and the error image.
   68296         (WebCore::RenderListMarker::paint): Updated for name changes to to use isImage()
   68297         and rearranged the code a bit.
   68298         (WebCore::RenderListMarker::imageChanged): Updated for name change
   68299         (WebCore::RenderListMarker::calcMinMaxWidth): Updated for name change, fixed a bug
   68300         where we'd leave the old text around if we were using an image-based marker. Also
   68301         changed the code to use isImage() instead of checking m_listImage.
   68302         (WebCore::RenderListMarker::calcWidth): Changed to use isImage().
   68303         (WebCore::RenderListMarker::lineHeight): Changed to use isImage().
   68304         (WebCore::RenderListMarker::baselinePosition): Changed to use isImage().
   68305         (WebCore::RenderListMarker::getRelativeMarkerRect): Changed to use isImage(),
   68306         restructured the code a little.
   68307 
   68308         * rendering/RenderObject.h: Removed now-uneeded includes. Removed collectBorders()
   68309         and isFormElement(). Made remove() function and m_hasCounterNodeMap public so
   68310         we could remove friend declarations for RenderListItem and RenderView.
   68311         Moved findCounter() to become a private function inside RenderCounter.cpp.
   68312         * rendering/RenderObject.cpp:
   68313         (WebCore::RenderObject::createObject): Fix bug where a contentData() with
   68314         CONTENT_NONE is treated as image content -- only look at the content property
   68315         if it has exactly one entry which is a CONTENT_OBJECT.
   68316         (WebCore::RenderObject::selectionStartEnd): Add const.
   68317         (WebCore::RenderObject::destroy): Moved counter-specific code to
   68318         RenderCounter::destroyCounterNodes.
   68319         (WebCore::RenderObject::recalcMinMaxWidths): Changed code to set m_recalcMinMax
   68320         near the top of the function -- the old code would potentially reset it after it
   68321         was set by the calcMinMaxWidths functions, and possibly skip a future needed
   68322         recalc. That came up in counter test cases. Removed unneeded boolean check right
   68323         after an assertion.
   68324 
   68325         * rendering/RenderPart.h: Marked two virtual functions virtual for clarity.
   68326 
   68327         * rendering/RenderReplaced.h: Made shouldPaint be protected, and made
   68328         m_intrinsicWidth, m_intrinsicHeight, and m_selectionState be private.
   68329         Also marked isSelected() const.
   68330         * rendering/RenderReplaced.cpp: Added newly-needed include.
   68331         (WebCore::RenderReplaced::RenderReplaced): Use constructor syntax.
   68332         (WebCore::RenderReplaced::isSelected): Made const and changed to call the
   68333         selectionStartEnd function in the straightforward way.
   68334 
   68335         * rendering/RenderSVGText.cpp:
   68336         (WebCore::RenderSVGText::absoluteRects): Use functions instead of direct field
   68337         access so the fields can be private.
   68338         (WebCore::RenderSVGText::relativeBBox): Ditto.
   68339 
   68340         * rendering/RenderStyle.h: Tweaked formatting. Changed names of CSS3 holders
   68341         to say "rare" instead, since it's not all CSS 3. Renamed CounterData to
   68342         CounterContent, since it's used inside ContentData. Changed names of fields in
   68343         ContentData to have m prefix. Moved content and counter fields into the rare
   68344         non-inherited data object. Removed unneeded assignment operator from a class
   68345         that already inherits from Shared which makes it start out noncopyable.
   68346         * rendering/RenderStyle.cpp: Name changes, plus:
   68347         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
   68348         Updated for added fields (content, counter-reset, counter-increment).
   68349         (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData): Ditto.
   68350         (WebCore::StyleRareNonInheritedData::operator==): Reformatted and sorted so it's
   68351         easy to see if any fields are missing.
   68352         (WebCore::operator!=): Added. Compares two CounterContent objects.
   68353         (WebCore::RenderStyle::arenaDelete): Removed code to handle content, which is
   68354         now in the rareNonInheritedData structure.
   68355         (WebCore::RenderStyle::RenderStyle): Ditto.
   68356         (WebCore::RenderStyle::inheritFrom): Ditto.
   68357         (WebCore::RenderStyle::operator==): Ditto.
   68358         (WebCore::RenderStyle::inheritedNotEqual):
   68359         (WebCore::RenderStyle::diff):
   68360         (WebCore::RenderStyle::contentDataEquivalent): Added case for counter,
   68361         which previously would be ignored when determining if content is equivalent.
   68362         (WebCore::RenderStyle::clearContent): Added.
   68363         (WebCore::RenderStyle::setContent): Updated for change in content location.
   68364         (WebCore::ContentData::clear): Changed algorithm so that it's not recursive
   68365         and thus can handle a very long list of ContentData.
   68366         (WebCore::operator==): Added. Compares two CounterDirective objects.
   68367         (WebCore::RenderStyle::counterDirectives): Added.
   68368         (WebCore::RenderStyle::accessCounterDirectives): Added.
   68369 
   68370         * rendering/RenderTable.h: Made m_currentBorder const to better reflect the
   68371         paint algorithm.
   68372         * rendering/RenderTable.cpp: (WebCore::RenderTable::paint): Changed to use
   68373         Vector instead of DeprecatedValueList for the border styles, and to sort
   68374         rather than inserting in sorted order as we go. Put the code to loop through
   68375         the nodes and collect border styles here instead of in a RenderObject virtual
   68376         function. Also set m_currentBorder to 0 after the loop for greater clarity.
   68377 
   68378         * rendering/RenderTableCell.h: Added a typedef for a vector of border values.
   68379         Removed the virtual collectBorders and replaced with the non-virtual named
   68380         collectBorderStyles. Also added a static member function named sortBorderStyles.
   68381         * rendering/RenderTableCell.cpp:
   68382         (WebCore::CollapsedBorders::CollapsedBorders): Removed unneeded constructor
   68383         parameter.
   68384         (WebCore::addBorderStyle): Changed to use a vector instead of a
   68385         DeprecatedValueList. Wrote out a loop since Vector doesn't have a contains
   68386         member function. Removed the code to insert the border at a sorted location;
   68387         instead we have a separate call to sort the border styles
   68388         (WebCore::RenderTableCell::collectBorderStyles): Renamed, and changed the
   68389         parameter type.
   68390         (WebCore::compareBorderStylesForQSort): Added.
   68391         (WebCore::RenderTableCell::sortBorderStyles): Added.
   68392 
   68393         * rendering/RenderText.h: Changed StringImpl parameters in setText functions
   68394         to be PassRefPtr; added a new setInternalString function. Made a bunch of the
   68395         member functions private and made all the data members private instead of
   68396         protected.
   68397         * rendering/RenderText.cpp:
   68398         (WebCore::RenderText::setStyle): Restructure a bit for clarity. Fix case where
   68399         the old style has a different security than the new style. Use release() since
   68400         RenderText::setText now takes PassRefPtr. Always call cacheWidths here.
   68401         (WebCore::RenderText::setTextWithOffset): Changed to take the string as a
   68402         PassRefPtr instead of a raw pointer.
   68403         (WebCore::isInlineFlowOrEmptyText): Added.
   68404         (WebCore::RenderText::setInternalString): Refactored core of setText into a
   68405         separate protected member function that can be used RenderCounter. Changed
   68406         the text security square character to match what's used in list markers.
   68407         Changed the text transform switch statement so that gcc will warn us if we add
   68408         a new value and don't add a case for it.
   68409         (WebCore::RenderText::setText): Refactored most of the function into
   68410         setInternalString. Removed the call to cacheWidths -- that's now done in the
   68411         setStyle function only.
   68412 
   68413         * rendering/RenderView.h:
   68414         * rendering/RenderView.cpp: (WebCore::RenderView::selectionStartEnd): Now const.
   68415 
   68416         * rendering/RenderWidget.cpp: Added newly-needed include.
   68417         (WebCore::RenderWidget::setSelectionState): Don't bother setting m_selectionState
   68418         here since RenderReplaced::setSelectionState already does that.
   68419 
   68420 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   68421 
   68422         Rubber stamped by Adam.
   68423         
   68424         Move even more code to .cpp files.
   68425 
   68426         * WebCore.xcodeproj/project.pbxproj:
   68427         * loader/FrameLoader.cpp:
   68428         (WebCore::FrameLoader::createWindow):
   68429         (WebCore::FrameLoader::load):
   68430         (WebCore::FrameLoader::canLoad):
   68431         (WebCore::FrameLoader::initialRequest):
   68432         (WebCore::FrameLoader::receivedData):
   68433         (WebCore::FrameLoader::setRequest):
   68434         (WebCore::FrameLoader::setResponse):
   68435         (WebCore::FrameLoader::willUseArchive):
   68436         (WebCore::FrameLoader::handleUnimplementablePolicy):
   68437         (WebCore::FrameLoader::cannotShowMIMEType):
   68438         (WebCore::FrameLoader::interruptionForPolicyChangeError):
   68439         (WebCore::FrameLoader::checkNavigationPolicy):
   68440         (WebCore::FrameLoader::checkContentPolicy):
   68441         (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
   68442         (WebCore::FrameLoader::reloadAllowingStaleData):
   68443         (WebCore::FrameLoader::reload):
   68444         (WebCore::FrameLoader::finishedLoading):
   68445         (WebCore::FrameLoader::continueAfterWillSubmitForm):
   68446         (WebCore::FrameLoader::submitForm):
   68447         (WebCore::FrameLoader::post):
   68448         (WebCore::FrameLoader::isReloading):
   68449         (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
   68450         (WebCore::FrameLoader::loadResourceSynchronously):
   68451         (WebCore::FrameLoader::startLoadingMainResource):
   68452         (WebCore::FrameLoader::startLoading):
   68453         (WebCore::FrameLoader::cancelMainResourceLoad):
   68454         (WebCore::FrameLoader::identifierForInitialRequest):
   68455         (WebCore::FrameLoader::willSendRequest):
   68456         (WebCore::FrameLoader::didReceiveResponse):
   68457         (WebCore::FrameLoader::didReceiveData):
   68458         (WebCore::FrameLoader::didFailToLoad):
   68459         (WebCore::FrameLoader::originalRequest):
   68460         (WebCore::FrameLoader::receivedMainResourceError):
   68461         (WebCore::FrameLoader::callContinueFragmentScrollAfterNavigationPolicy):
   68462         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   68463         (WebCore::FrameLoader::opened):
   68464         (WebCore::FrameLoader::dataURLBaseFromRequest):
   68465         (WebCore::FrameLoader::checkNewWindowPolicy):
   68466         (WebCore::FrameLoader::continueAfterNewWindowPolicy):
   68467         (WebCore::FrameLoader::continueAfterNavigationPolicy):
   68468         (WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy):
   68469         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
   68470         (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy):
   68471         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
   68472         (WebCore::FrameLoader::sendRemainingDelegateMessages):
   68473         (WebCore::FrameLoader::requestFromDelegate):
   68474         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
   68475         (WebCore::FrameLoader::applyUserAgent):
   68476         (WebCore::PolicyCheck::PolicyCheck):
   68477         (WebCore::PolicyCheck::clear):
   68478         (WebCore::PolicyCheck::set):
   68479         (WebCore::PolicyCheck::call):
   68480         (WebCore::PolicyCheck::clearRequest):
   68481         * loader/FrameLoader.h:
   68482         * loader/FrameLoaderClient.h:
   68483         * loader/MainResourceLoader.h:
   68484         * loader/ResourceLoader.h:
   68485         (WebCore::ResourceLoader::setIdentifier):
   68486         (WebCore::ResourceLoader::identifier):
   68487         * loader/mac/FrameLoaderMac.mm:
   68488         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   68489         (WebCore::FrameLoader::referrer):
   68490         (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
   68491         (WebCore::FrameLoader::didCancelAuthenticationChallenge):
   68492         (WebCore::FrameLoader::didChangeTitle):
   68493         * platform/graphics/svg/SVGImageEmptyClients.h:
   68494         (WebCore::SVGEmptyFrameLoaderClient::dispatchCreatePage):
   68495 
   68496 2007-01-05  Mitz Pettel  <mitz (a] webkit.org>
   68497 
   68498         Reviewed by Hyatt.
   68499 
   68500         - fix http://bugs.webkit.org/show_bug.cgi?id=12079
   68501           Nested tables don't repaint properly when a certain row is added
   68502 
   68503         Tests: fast/repaint/table-section-repaint.html
   68504                fast/repaint/table-section-overflow.html
   68505 
   68506         Fixed repainting when table sections move during layout.
   68507 
   68508         Made table cells' overflows propagate to table sections and gave tables
   68509         overflows.
   68510 
   68511         * rendering/RenderTable.cpp:
   68512         (WebCore::RenderTable::layout): Added computation of horizontal and vertical overflows
   68513         based on the caption's and the table sections' overflows.
   68514         Added checks for table sections that change position during layout. When that happens,
   68515         we assume all sections below the first section that moved also moved, and repaint
   68516         everything downwards from there.
   68517         Added calls to repaintDuringLayoutIfMoved() for the caption.
   68518         Changed the way table sections are iterated over and added a FIXME to change it again
   68519         once bug 12124 is fixed.
   68520         (WebCore::RenderTable::paint): Changed to paint overflow.
   68521         (WebCore::RenderTable::outerBorderBottom):
   68522         * rendering/RenderTableSection.cpp:
   68523         (WebCore::RenderTableSection::RenderTableSection):
   68524         (WebCore::RenderTableSection::layoutRows): Added code to compute the section's overflow
   68525         and a flag saying whether any cells in this section overflow.
   68526         (WebCore::RenderTableSection::paint): Changed to paint overflow. If any cell
   68527         in the section has overflow, then all cells are given a chance to paint. This is needed
   68528         because there can be internal overflow, and external overflow can be coming from any
   68529         cell inside.
   68530         * rendering/RenderTableSection.h:
   68531         (WebCore::RenderTableSection::overflowWidth):
   68532         (WebCore::RenderTableSection::overflowLeft):
   68533 
   68534 2007-01-05  Beth Dakin  <bdakin (a] apple.com>
   68535 
   68536         Reviewed by Adam.
   68537 
   68538         Fix for <rdar://problem/4863434> Wrong contextual menu appears for 
   68539         textarea and input elements at http://www.apple.com/feedback/
   68540         ical.html
   68541 
   68542         No test cases added since context menus are not in DRT.
   68543 
   68544         * page/ContextMenuController.cpp: 
   68545         (WebCore::ContextMenuController::handleContextMenuEvent): Call 
   68546         EventHandler's hitTestResultAtPoint() instead of just hit testing 
   68547         the layer.
   68548 
   68549 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   68550 
   68551         Rubber-stamped by Adam.
   68552         
   68553         Move a bunch of platform independent code over to DocumentLoader.cpp
   68554 
   68555         * WebCore.xcodeproj/project.pbxproj:
   68556         * loader/DocumentLoader.cpp:
   68557         (WebCore::canonicalizedTitle):
   68558         (WebCore::DocumentLoader::DocumentLoader):
   68559         (WebCore::DocumentLoader::frameLoader):
   68560         (WebCore::DocumentLoader::~DocumentLoader):
   68561         (WebCore::DocumentLoader::setMainResourceData):
   68562         (WebCore::DocumentLoader::mainResourceData):
   68563         (WebCore::DocumentLoader::originalRequest):
   68564         (WebCore::DocumentLoader::originalRequestCopy):
   68565         (WebCore::DocumentLoader::request):
   68566         (WebCore::DocumentLoader::initialRequest):
   68567         (WebCore::DocumentLoader::actualRequest):
   68568         (WebCore::DocumentLoader::URL):
   68569         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
   68570         (WebCore::DocumentLoader::setRequest):
   68571         (WebCore::DocumentLoader::setMainDocumentError):
   68572         (WebCore::DocumentLoader::clearErrors):
   68573         (WebCore::DocumentLoader::mainReceivedError):
   68574         (WebCore::DocumentLoader::stopLoading):
   68575         (WebCore::DocumentLoader::setupForReplace):
   68576         (WebCore::DocumentLoader::commitIfReady):
   68577         (WebCore::DocumentLoader::finishedLoading):
   68578         (WebCore::DocumentLoader::setCommitted):
   68579         (WebCore::DocumentLoader::isCommitted):
   68580         (WebCore::DocumentLoader::setLoading):
   68581         (WebCore::DocumentLoader::isLoading):
   68582         (WebCore::DocumentLoader::commitLoad):
   68583         (WebCore::DocumentLoader::doesProgressiveLoad):
   68584         (WebCore::DocumentLoader::receivedData):
   68585         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
   68586         (WebCore::DocumentLoader::updateLoading):
   68587         (WebCore::DocumentLoader::setFrame):
   68588         (WebCore::DocumentLoader::attachToFrame):
   68589         (WebCore::DocumentLoader::detachFromFrame):
   68590         (WebCore::DocumentLoader::prepareForLoadStart):
   68591         (WebCore::DocumentLoader::setIsClientRedirect):
   68592         (WebCore::DocumentLoader::isClientRedirect):
   68593         (WebCore::DocumentLoader::setPrimaryLoadComplete):
   68594         (WebCore::DocumentLoader::isLoadingInAPISense):
   68595         (WebCore::DocumentLoader::addResponse):
   68596         (WebCore::DocumentLoader::stopRecordingResponses):
   68597         (WebCore::DocumentLoader::title):
   68598         (WebCore::DocumentLoader::setLastCheckedRequest):
   68599         (WebCore::DocumentLoader::lastCheckedRequest):
   68600         (WebCore::DocumentLoader::triggeringAction):
   68601         (WebCore::DocumentLoader::setTriggeringAction):
   68602         (WebCore::DocumentLoader::responses):
   68603         (WebCore::DocumentLoader::setOverrideEncoding):
   68604         (WebCore::DocumentLoader::overrideEncoding):
   68605         (WebCore::DocumentLoader::setTitle):
   68606         (WebCore::DocumentLoader::urlForHistory):
   68607         * loader/DocumentLoader.h:
   68608         * loader/FrameLoader.cpp:
   68609         (WebCore::FrameLoader::load):
   68610         (WebCore::FrameLoader::committedLoad):
   68611         (WebCore::FrameLoader::setMainDocumentError):
   68612         (WebCore::FrameLoader::mainReceivedCompleteError):
   68613         (WebCore::FrameLoader::mainReceivedError):
   68614         (WebCore::FrameLoader::cancelledError):
   68615         (WebCore::FrameLoader::fileDoesNotExistError):
   68616         (WebCore::FrameLoader::mainResourceData):
   68617         * loader/FrameLoader.h:
   68618         * loader/FrameLoaderClient.h:
   68619         * loader/mac/DocumentLoaderMac.mm:
   68620         (WebCore::DocumentLoader::unreachableURL):
   68621         * loader/mac/FrameLoaderMac.mm:
   68622 
   68623 2007-01-05  Brady Eidson  <beidson (a] apple.com>
   68624 
   68625         Reviewed by Eric Seidel
   68626 
   68627         http://bugs.webkit.org/show_bug.cgi?id=12117
   68628         Fixes null deref when opening links from a gmail account
   68629 
   68630         * loader/FrameLoader.cpp:
   68631         (WebCore::FrameLoader::updateHistoryForStandardLoad): Null check m_currentHistoryItem
   68632         (WebCore::FrameLoader::updateHistoryForClientRedirect): Ditto
   68633 
   68634 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   68635 
   68636         Move some now cross platform functions over to ResourceLoader.cpp in an attempt to fix the non Mac builds.
   68637         
   68638         * loader/CachedResource.h:
   68639         (WebCore::CachedResource::setAllData):
   68640         * loader/ResourceLoader.cpp:
   68641         (WebCore::ResourceLoader::resourceData):
   68642         * loader/ResourceLoader.h:
   68643         * loader/SubresourceLoader.cpp:
   68644         (WebCore::SubresourceLoader::didFinishLoading):
   68645         * loader/mac/LoaderFunctionsMac.mm:
   68646         * loader/mac/ResourceLoaderMac.mm:
   68647         * platform/SharedBuffer.cpp:
   68648         (WebCore::SharedBuffer::platformDataSize):
   68649         * platform/network/ResourceHandle.h:
   68650 
   68651 2007-01-05  David Hyatt  <hyatt (a] apple.com>
   68652 
   68653         Back out fix for 12114.  I missed rule #5 in the float positioning part of the CSS2.1 spec.  Keep all
   68654         the code cleanup though.
   68655 
   68656         Reviewed by mitz
   68657 
   68658         * rendering/RenderBlock.cpp:
   68659         (WebCore::RenderBlock::positionNewFloats):
   68660 
   68661 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   68662 
   68663         Reviewed by Maciej.
   68664 
   68665         Add a shared buffer class which is backed by either a vector or an NSData object. This object can also
   68666         be held in a custom NSData subclass. Use this in the loader wherever NSData was used.
   68667         
   68668         * WebCore.exp:
   68669         * WebCore.xcodeproj/project.pbxproj:
   68670         * loader/CachedResource.h:
   68671         (WebCore::CachedResource::allData):
   68672         * loader/DocumentLoader.h:
   68673         * loader/FrameLoader.h:
   68674         * loader/ResourceLoader.h:
   68675         * loader/SubresourceLoaderClient.h:
   68676         (WebCore::SubresourceLoaderClient::didFail):
   68677         * loader/loader.cpp:
   68678         (WebCore::Loader::didFinishLoading):
   68679         * loader/loader.h:
   68680         * loader/mac/DocumentLoaderMac.mm:
   68681         (WebCore::DocumentLoader::setMainResourceData):
   68682         (WebCore::DocumentLoader::mainResourceData):
   68683         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
   68684         * loader/mac/FrameLoaderMac.mm:
   68685         (WebCore::FrameLoader::mainResourceData):
   68686         * loader/mac/ImageDocumentMac.mm:
   68687         (WebCore::finishImageLoad):
   68688         * loader/mac/LoaderFunctionsMac.mm:
   68689         (WebCore::CheckCacheObjectStatus):
   68690         (WebCore::CachedResource::setAllData):
   68691         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
   68692         (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
   68693         * loader/mac/ResourceLoaderMac.mm:
   68694         (WebCore::ResourceLoader::addData):
   68695         (WebCore::ResourceLoader::resourceData):
   68696         (WebCore::ResourceLoader::clearResourceData):
   68697         (WebCore::ResourceLoader::didReceiveData):
   68698         (WebCore::ResourceLoader::willStopBufferingData):
   68699         * loader/mac/SubresourceLoaderMac.mm:
   68700         (WebCore::SubresourceLoader::didReceiveResponse):
   68701         (WebCore::SubresourceLoader::didFinishLoading):
   68702         * page/mac/WebCoreFrameBridge.mm:
   68703         (-[WebCoreFrameBridge getData:andResponse:forURL:]):
   68704         (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
   68705         * platform/KURL.h:
   68706         * platform/SharedBuffer.cpp: Added.
   68707         (WebCore::SharedBuffer::SharedBuffer):
   68708         (WebCore::SharedBuffer::size):
   68709         (WebCore::SharedBuffer::data):
   68710         (WebCore::SharedBuffer::append):
   68711         (WebCore::SharedBuffer::clear):
   68712         (WebCore::SharedBuffer::clearPlatformData):
   68713         (WebCore::SharedBuffer::maybeTransferPlatformData):
   68714         (WebCore::SharedBuffer::hasPlatformData):
   68715         (WebCore::SharedBuffer::platformData):
   68716         * platform/SharedBuffer.h: Added.
   68717         * platform/mac/SharedBufferMac.mm: Added.
   68718         (-[SharedBufferData dealloc]):
   68719         (-[SharedBufferData finalize]):
   68720         (-[SharedBufferData initWithSharedBuffer:]):
   68721         (-[SharedBufferData length]):
   68722         (-[SharedBufferData bytes]):
   68723         (WebCore::SharedBuffer::wrapNSData):
   68724         (WebCore::SharedBuffer::SharedBuffer):
   68725         (WebCore::SharedBuffer::createNSData):
   68726         (WebCore::SharedBuffer::hasPlatformData):
   68727         (WebCore::SharedBuffer::platformData):
   68728         (WebCore::SharedBuffer::platformDataSize):
   68729         (WebCore::SharedBuffer::maybeTransferPlatformData):
   68730         (WebCore::SharedBuffer::clearPlatformData):
   68731         * platform/network/ResourceHandle.h:
   68732         * platform/network/ResourceHandleClient.h:
   68733         * platform/network/mac/ResourceHandleMac.mm:
   68734         (WebCore::ResourceHandle::bufferedData):
   68735 
   68736 2007-01-05  Anders Carlsson  <acarlsson (a] apple.com>
   68737 
   68738         Reviewed by Adam.
   68739 
   68740         http://bugs.webkit.org/show_bug.cgi?id=12120
   68741         REGRESSION(r18605): Safari snippet editor no longer works
   68742         
   68743         * loader/mac/ResourceLoaderMac.mm:
   68744         (WebCore::ResourceLoader::willSendRequest):
   68745         Put back the code change in r18607.
   68746         
   68747         * platform/mac/KURLMac.mm:
   68748         (WebCore::KURL::KURL):
   68749         Convert nil NSURLs to null KURLs.
   68750 
   68751 2007-01-04  Alexey Proskuryakov  <ap (a] webkit.org>
   68752 
   68753         Reviewed by Geoff.
   68754 
   68755         http://bugs.webkit.org/show_bug.cgi?id=7296
   68756         Disable JavaScript exceptions when dynamically changing CSS properties.
   68757 
   68758         * bindings/js/kjs_css.cpp:
   68759         (KJS::DOMCSSStyleDeclaration::put): Removed the Dashboard quirk logic.
   68760 
   68761         * css/CSSMutableStyleDeclaration.cpp:
   68762         (WebCore::CSSMutableStyleDeclaration::setProperty): Don't raise an exception if parsing fails.
   68763 
   68764 2007-01-05  Antti Koivisto  <koivisto (a] iki.fi>
   68765 
   68766         Reviewed by hyatt.
   68767         
   68768         http://bugs.webkit.org/show_bug.cgi?id=12109
   68769         
   68770         Fix layer visibility in some cases with nested layers.
   68771 
   68772         * rendering/RenderLayer.cpp:
   68773         (WebCore::RenderLayer::updateVisibilityStatus):
   68774 
   68775 2007-01-05  Lars Knoll <lars (a] trolltech.com>
   68776 
   68777         Make it compile with gcc 4.1
   68778 
   68779         * rendering/RenderTableSection.h:
   68780 
   68781 2007-01-04  Adam Roben  <aroben (a] apple.com>
   68782 
   68783         Reviewed by Geoff, cheered by others.
   68784 
   68785         Dead code elimination.
   68786 
   68787         All layout tests pass.
   68788 
   68789         * page/EventHandler.h:
   68790         * page/mac/EventHandlerMac.mm:
   68791         * page/mac/WebCoreFrameBridge.h:
   68792         * page/mac/WebCoreFrameBridge.mm:
   68793 
   68794 2007-01-04  Adam Roben  <aroben (a] apple.com>
   68795 
   68796         Reviewed by Geoff.
   68797 
   68798         Fix: <rdar://4800335> REGRESSION: shift-tabbing from location field
   68799         goes to first field rather than last (businessweek.com)
   68800 
   68801         Fix: <rdar://4800373> REGRESSION: tabbing from last control focuses
   68802         nothing visible (busniessweek.com)
   68803 
   68804         Handle tabbing into/out of subframes in WebCore instead of letting
   68805         AppKit do the dirty work. This change also fixes a number of bugs and
   68806         changes some behavior to match other browsers:
   68807           - No frames receive a focus event when the page is first loaded.
   68808           - When a frame is clicked or focused with the keyboard, it receives
   68809             a focus event and all other frames receive a blur event.
   68810           - tabindex values are clamped to the range of a signed short, rather
   68811             than overflowing within an unsigned short.
   68812           - tabindex is respected on frame owner elements, even though HTML4
   68813             says it shouldn't be.
   68814           - Subframes will be focused when tabbing if they don't contain any
   68815             focusable elements within them (it would be nice to only focus the
   68816             frame if it has scrollbars).
   68817 
   68818         Renamed SelectionDirection to FocusDirection and put it in its own file.
   68819 
   68820         * page/FocusDirection.h: Added.
   68821         (WebCore::):
   68822         * page/mac/WebCoreFrameBridge.mm: Updated for renames.
   68823         (-[WebCoreFrameBridge nextKeyView]):
   68824         (-[WebCoreFrameBridge previousKeyView]):
   68825         (-[WebCoreFrameBridge nextKeyViewInsideWebFrameViews]):
   68826         (-[WebCoreFrameBridge previousKeyViewInsideWebFrameViews]):
   68827 
   68828         Moved advanceFocus from EventHandler to FocusController and added
   68829         support for moving into/out of subframes..
   68830 
   68831         * page/EventHandler.cpp: Moved advanceFocus to FocusController.
   68832         * page/EventHandler.h: Ditto.
   68833         * page/FocusController.cpp:
   68834         (WebCore::deepFocusableNode): Static helper function to find focusable
   68835         nodes nested within frames.
   68836         (WebCore::FocusController::advanceFocus): Moved from EventHandler and
   68837         rewritten to handle subframes.
   68838         * page/FocusController.h: Added advanceFocus declaration.
   68839         * dom/EventTargetNode.cpp:
   68840         (WebCore::EventTargetNode::defaultEventHandler): Updated for the move
   68841         of advanceFocus to FocusController.
   68842         * html/HTMLFrameOwnerElement.h:
   68843         (WebCore::HTMLFrameOwnerElement::isFrameOwnerElement): New method.
   68844         (WebCore::HTMLFrameOwnerElement::isKeyboardFocusable): New virtual
   68845         implementation used to trick Document::nextFocusableNode so that we
   68846         can focus frames.
   68847 
   68848         Rewrote/renamed
   68849         Document::nextFocusableNode/Document::previousFocusableNode.
   68850 
   68851         * dom/Document.cpp:
   68852         (WebCore::nextNodeWithExactTabIndex): New static helper
   68853         function.
   68854         (WebCore::previousNodeWithExactTabIndex): Ditto.
   68855         (WebCore::nextNodeWithGreaterTabIndex): Ditto.
   68856         (WebCore::previousNodeWithLowerTabIndex): Ditto.
   68857         (WebCore::Document::nextFocusableNode): Renamed from nextFocusedNode,
   68858         and rewritten with much simpler logic.
   68859         (WebCore::Document::previousFocusableNode): Ditto.
   68860         * dom/Document.h: Updated declarations for renames.
   68861         * page/mac/EventHandlerMac.mm: Updated for rename of SelectionDirection
   68862         to FocusDirection.
   68863         (WebCore::EventHandler::nextKeyViewInFrame): Updated for renames.
   68864         (WebCore::EventHandler::nextKeyViewInFrameHierarchy): Ditto.
   68865         (WebCore::EventHandler::nextKeyView): Ditto.
   68866         (WebCore::EventHandler::focusDocumentView): Added call to
   68867         setFocusedFrame when focusing the document view.
   68868         (WebCore::EventHandler::passMouseDownEventToWidget): Removed LOG_ERROR
   68869         when a nil NSView is returned from AppKit, as this is a fairly common
   68870         occurrence when a RenderWidget has a border.
   68871         (WebCore::EventHandler::passWheelEventToWidget): Added a nil-check of
   68872         the hit-tested NSView.
   68873 
   68874         Changed storage of tabIndex to a signed short, and added clamping of
   68875         tabindex attribute values to match Firefox's behavior.
   68876 
   68877         * dom/Node.h: Use a signed short to store m_tabIndex.
   68878         (WebCore::Node::isFrameOwnerElement): New method.
   68879         (WebCore::Node::tabIndex): Updated for signedness.
   68880         (WebCore::Node::setTabIndex): Ditto.
   68881         * html/HTMLAnchorElement.cpp: Remove implementation of tabIndex() so
   68882         that Node::tabIndex() will be called instead and return the clamped
   68883         value (which matches Firefox's behavior).
   68884         * html/HTMLAnchorElement.h: Ditto.
   68885         * html/HTMLAreaElement.cpp: Ditto.
   68886         * html/HTMLAreaElement.h: Ditto.
   68887         * html/HTMLGenericFormElement.cpp: Ditto.
   68888         * html/HTMLGenericFormElement.h: Ditto.
   68889         * html/HTMLObjectElement.cpp: Ditto.
   68890         * html/HTMLObjectElement.h: Ditto.
   68891         * html/HTMLElement.cpp:
   68892         (WebCore::HTMLElement::parseMappedAttribute): Clamp tabIndex to the
   68893         range of a signed short to match Firefox.
   68894 
   68895         Added two new Chrome methods for transferring focus out of the
   68896         WebView.
   68897 
   68898         * page/Chrome.cpp:
   68899         (WebCore::Chrome::canTakeFocus):
   68900         (WebCore::Chrome::takeFocus):
   68901         * page/Chrome.h:
   68902         * page/ChromeClient.h:
   68903         * platform/graphics/svg/SVGImageEmptyClients.h: Fixed typo "CromeClient" -> "ChromeClient".
   68904         (WebCore::SVGEmptyChromeClient::~SVGEmptyChromeClient):
   68905         (WebCore::SVGEmptyChromeClient::canTakeFocus):
   68906         (WebCore::SVGEmptyChromeClient::takeFocus):
   68907         * platform/graphics/svg/SVGImage.cpp:
   68908         (WebCore::SVGImage::setData): Fixed typo.
   68909 
   68910         Miscellaneous:
   68911 
   68912         * WebCore.exp: Updated/sorted symbols.
   68913         * WebCore.xcodeproj/project.pbxproj: Made FocusController.h Private so
   68914         WebKit can access it.
   68915 
   68916 2007-01-04  Brady Eidson  <beidson (a] apple.com>
   68917 
   68918         Reverted Anders' change to fix the world
   68919 
   68920         * loader/mac/ResourceLoaderMac.mm:
   68921         (WebCore::ResourceLoader::willSendRequest):
   68922         (WebCore::ResourceLoader::didReceiveResponse):
   68923 
   68924 2007-01-04  Mitz Pettel  <mitz (a] webkit.org>
   68925 
   68926         Reviewed by Sam Weinig.
   68927 
   68928         - http://bugs.webkit.org/show_bug.cgi?id=12078
   68929           Clean up RenderTable*
   68930 
   68931         - Coding style cleanup.
   68932         - Canceled AutoTableLayout and FixedTableLayout being friend classes of
   68933           RenderTable. Instead, added public accessors to RenderTable for what
   68934           the table layout classes need and changed TableLayout::calcMinMaxWidth()
   68935           to take references to the caller's min and max widths.
   68936         - Made RenderTableSection's grid protected and moved code that accessed it
   68937           from RenderTable into RenderTableSection.
   68938 
   68939         No test possible (no change to functionality).
   68940 
   68941         * rendering/AutoTableLayout.cpp:
   68942         (WebCore::AutoTableLayout::calcMinMaxWidth):
   68943         (WebCore::AutoTableLayout::layout):
   68944         * rendering/AutoTableLayout.h:
   68945         * rendering/FixedTableLayout.cpp:
   68946         (WebCore::FixedTableLayout::calcWidthArray):
   68947         (WebCore::FixedTableLayout::calcMinMaxWidth):
   68948         (WebCore::FixedTableLayout::layout):
   68949         * rendering/FixedTableLayout.h:
   68950         * rendering/RenderTable.cpp:
   68951         (WebCore::RenderTable::RenderTable):
   68952         (WebCore::RenderTable::~RenderTable):
   68953         (WebCore::RenderTable::setStyle):
   68954         (WebCore::RenderTable::addChild):
   68955         (WebCore::RenderTable::calcWidth):
   68956         (WebCore::RenderTable::layout):
   68957         (WebCore::RenderTable::setCellWidths):
   68958         (WebCore::RenderTable::paint):
   68959         (WebCore::RenderTable::paintBoxDecorations):
   68960         (WebCore::RenderTable::calcMinMaxWidth):
   68961         (WebCore::RenderTable::splitColumn): Factored out the section work
   68962         to RenderTableSection::splitColumn().
   68963         (WebCore::RenderTable::appendColumn): Factored out the section work
   68964         to RenderTableSection::appendColumn().
   68965         (WebCore::RenderTable::colElement):
   68966         (WebCore::RenderTable::recalcSections):
   68967         (WebCore::RenderTable::removeChildNode):
   68968         (WebCore::RenderTable::calcBorderLeft):
   68969         (WebCore::RenderTable::calcBorderRight):
   68970         (WebCore::RenderTable::outerBorderTop):
   68971         (WebCore::RenderTable::outerBorderBottom):
   68972         (WebCore::RenderTable::outerBorderLeft):
   68973         (WebCore::RenderTable::outerBorderRight):
   68974         (WebCore::RenderTable::sectionAbove):
   68975         (WebCore::RenderTable::sectionBelow):
   68976         (WebCore::RenderTable::cellAbove):
   68977         (WebCore::RenderTable::cellBelow):
   68978         (WebCore::RenderTable::cellBefore):
   68979         (WebCore::RenderTable::getOverflowClipRect):
   68980         (WebCore::RenderTable::dump):
   68981         * rendering/RenderTable.h:
   68982         (WebCore::RenderTable::getColumnPos):
   68983         (WebCore::RenderTable::hBorderSpacing):
   68984         (WebCore::RenderTable::vBorderSpacing):
   68985         (WebCore::RenderTable::getRules):
   68986         (WebCore::RenderTable::cellPadding):
   68987         (WebCore::RenderTable::setCellPadding):
   68988         (WebCore::RenderTable::ColumnStruct::ColumnStruct):
   68989         (WebCore::RenderTable::columns): Added this accessor.
   68990         (WebCore::RenderTable::columnPositions): Added this accessor.
   68991         (WebCore::RenderTable::header):
   68992         (WebCore::RenderTable::footer):
   68993         (WebCore::RenderTable::firstBody):
   68994         (WebCore::RenderTable::numEffCols):
   68995         (WebCore::RenderTable::spanOfEffCol):
   68996         (WebCore::RenderTable::colToEffCol):
   68997         (WebCore::RenderTable::effColToCol):
   68998         (WebCore::RenderTable::bordersPaddingAndSpacing):
   68999         (WebCore::RenderTable::needsSectionRecalc):
   69000         (WebCore::RenderTable::setNeedsSectionRecalc): Renamed setNeedSectionRecalc()
   69001         to this.
   69002         (WebCore::RenderTable::hasSections):
   69003         (WebCore::RenderTable::recalcSectionsIfNeeded):
   69004         * rendering/RenderTableCell.cpp:
   69005         (WebCore::RenderTableCell::RenderTableCell):
   69006         (WebCore::RenderTableCell::destroy):
   69007         (WebCore::RenderTableCell::updateFromElement):
   69008         (WebCore::RenderTableCell::styleOrColWidth):
   69009         (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
   69010         (WebCore::RenderTableCell::absolutePosition):
   69011         (WebCore::RenderTableCell::baselinePosition):
   69012         (WebCore::RenderTableCell::setStyle):
   69013         (WebCore::compareBorders):
   69014         (WebCore::RenderTableCell::collapsedTopBorder):
   69015         (WebCore::RenderTableCell::paint):
   69016         (WebCore::collapsedBorderStyle):
   69017         (WebCore::CollapsedBorder::CollapsedBorder):
   69018         (WebCore::CollapsedBorders::CollapsedBorders):
   69019         (WebCore::CollapsedBorders::addBorder):
   69020         (WebCore::CollapsedBorders::nextBorder):
   69021         (WebCore::RenderTableCell::paintCollapsedBorder):
   69022         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
   69023         (WebCore::RenderTableCell::paintBoxDecorations):
   69024         (WebCore::RenderTableCell::dump):
   69025         * rendering/RenderTableCell.h:
   69026         (WebCore::RenderTableCell::colSpan):
   69027         (WebCore::RenderTableCell::setColSpan):
   69028         (WebCore::RenderTableCell::rowSpan):
   69029         (WebCore::RenderTableCell::setRowSpan):
   69030         (WebCore::RenderTableCell::col):
   69031         (WebCore::RenderTableCell::setCol):
   69032         (WebCore::RenderTableCell::row):
   69033         (WebCore::RenderTableCell::setRow):
   69034         (WebCore::RenderTableCell::section):
   69035         (WebCore::RenderTableCell::table):
   69036         (WebCore::RenderTableCell::yPos):
   69037         (WebCore::RenderTableCell::setCellTopExtra):
   69038         (WebCore::RenderTableCell::setCellBottomExtra):
   69039         (WebCore::RenderTableCell::borderTopExtra):
   69040         (WebCore::RenderTableCell::borderBottomExtra):
   69041         * rendering/RenderTableRow.cpp:
   69042         (WebCore::RenderTableRow::destroy):
   69043         (WebCore::RenderTableRow::setStyle):
   69044         (WebCore::RenderTableRow::addChild):
   69045         (WebCore::RenderTableRow::layout):
   69046         (WebCore::RenderTableRow::getAbsoluteRepaintRect):
   69047         (WebCore::RenderTableRow::paint):
   69048         * rendering/RenderTableRow.h:
   69049         (WebCore::RenderTableRow::section):
   69050         (WebCore::RenderTableRow::table):
   69051         (WebCore::RenderTableRow::lineHeight):
   69052         * rendering/RenderTableSection.cpp:
   69053         (WebCore::RenderTableSection::RenderTableSection):
   69054         (WebCore::RenderTableSection::destroy):
   69055         (WebCore::RenderTableSection::setStyle):
   69056         (WebCore::RenderTableSection::addChild):
   69057         (WebCore::RenderTableSection::ensureRows):
   69058         (WebCore::RenderTableSection::addCell):
   69059         (WebCore::RenderTableSection::setCellWidths):
   69060         (WebCore::RenderTableSection::calcRowHeight):
   69061         (WebCore::RenderTableSection::layoutRows):
   69062         (WebCore::RenderTableSection::lowestPosition):
   69063         (WebCore::RenderTableSection::rightmostPosition):
   69064         (WebCore::RenderTableSection::leftmostPosition):
   69065         (WebCore::RenderTableSection::calcOuterBorderTop):
   69066         (WebCore::RenderTableSection::calcOuterBorderBottom):
   69067         (WebCore::RenderTableSection::calcOuterBorderLeft):
   69068         (WebCore::RenderTableSection::calcOuterBorderRight):
   69069         (WebCore::RenderTableSection::paint):
   69070         (WebCore::RenderTableSection::recalcCells):
   69071         (WebCore::RenderTableSection::clearGrid):
   69072         (WebCore::RenderTableSection::numColumns):
   69073         (WebCore::RenderTableSection::appendColumn): Added. Moved code from
   69074         RenderTable::appendColumn() into here.
   69075         (WebCore::RenderTableSection::splitColumn): Added. Moved code from
   69076         RenderTable::splitColumn() into here.
   69077         (WebCore::RenderTableSection::removeChildNode):
   69078         (WebCore::RenderTableSection::dump):
   69079         * rendering/RenderTableSection.h:
   69080         (WebCore::RenderTableSection::renderName):
   69081         (WebCore::RenderTableSection::isTableSection):
   69082         (WebCore::RenderTableSection::lineHeight):
   69083         (WebCore::RenderTableSection::table):
   69084         (WebCore::RenderTableSection::cellAt):
   69085         (WebCore::RenderTableSection::numRows):
   69086         (WebCore::RenderTableSection::recalcCellsIfNeeded):
   69087         (WebCore::RenderTableSection::needsCellRecalc):
   69088         (WebCore::RenderTableSection::setNeedsCellRecalc):
   69089         (WebCore::RenderTableSection::getBaseline):
   69090         * rendering/TableLayout.h:
   69091 
   69092 2007-01-04  Anders Carlsson  <acarlsson (a] apple.com>
   69093 
   69094         Reviewed by Adam.
   69095 
   69096         http://bugs.webkit.org/show_bug.cgi?id=12120
   69097         REGRESSION(r18605): Safari snippet editor no longer works
   69098         
   69099         * loader/mac/ResourceLoaderMac.mm:
   69100         (WebCore::ResourceLoader::willSendRequest):
   69101         Fix logic so applewebdata: URLs no longer cause the underlying URL to be fetched .
   69102 
   69103 2007-01-04  Anders Carlsson  <acarlsson (a] apple.com>
   69104 
   69105         Reviewed by Adam.
   69106 
   69107         Move all remaining instances of NSURLRequest over to ResourceRequest (well, pretty much all).
   69108 
   69109         * loader/MainResourceLoader.h:
   69110         * loader/ResourceLoader.h:
   69111         * loader/SubresourceLoader.h:
   69112         * loader/mac/FrameLoaderMac.mm:
   69113         (WebCore::FrameLoader::startLoadingMainResource):
   69114         * loader/mac/MainResourceLoaderMac.mm:
   69115         (WebCore::MainResourceLoader::loadNow):
   69116         (WebCore::MainResourceLoader::load):
   69117         (WebCore::MainResourceLoader::setDefersLoading):
   69118         * loader/mac/ResourceLoaderMac.mm:
   69119         (WebCore::ResourceLoader::load):
   69120         * loader/mac/SubresourceLoaderMac.mm:
   69121         (WebCore::SubresourceLoader::load):
   69122         (WebCore::SubresourceLoader::create):
   69123         * platform/graphics/svg/SVGImage.cpp:
   69124         (WebCore::SVGImage::setData):
   69125         * platform/network/mac/ResourceRequestMac.mm:
   69126         (WebCore::ResourceRequest::doUpdatePlatformRequest):
   69127 
   69128 2007-01-04  Anders Carlsson  <acarlsson (a] apple.com>
   69129 
   69130         Reviewed by Brady.
   69131 
   69132         Move more NSURLRequests over to ResourceRequests.
   69133         
   69134         * loader/DocumentLoader.h:
   69135         * loader/FrameLoader.h:
   69136         * loader/FrameLoaderClient.h:
   69137         * loader/MainResourceLoader.h:
   69138         * loader/ResourceLoader.h:
   69139         (WebCore::ResourceLoader::request):
   69140         * loader/SubresourceLoader.h:
   69141         * loader/mac/FrameLoaderMac.mm:
   69142         (WebCore::FrameLoader::willSendRequest):
   69143         (WebCore::FrameLoader::opened):
   69144         (WebCore::FrameLoader::requestFromDelegate):
   69145         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
   69146         (WebCore::FrameLoader::loadResourceSynchronously):
   69147         * loader/mac/MainResourceLoaderMac.mm:
   69148         (WebCore::MainResourceLoader::willSendRequest):
   69149         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   69150         (WebCore::MainResourceLoader::loadNow):
   69151         (WebCore::MainResourceLoader::setDefersLoading):
   69152         * loader/mac/ResourceLoaderMac.mm:
   69153         (WebCore::ResourceLoader::load):
   69154         (WebCore::ResourceLoader::willSendRequest):
   69155         (WebCore::ResourceLoader::didReceiveResponse):
   69156         (WebCore::ResourceLoader::cancelledError):
   69157         * loader/mac/SubresourceLoaderMac.mm:
   69158         (WebCore::SubresourceLoader::willSendRequest):
   69159         * platform/graphics/svg/SVGImageEmptyClients.h:
   69160         (WebCore::SVGEmptyFrameLoaderClient::dispatchWillSendRequest):
   69161         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
   69162         * platform/network/ResourceRequest.cpp:
   69163         (WebCore::ResourceRequest::isNull):
   69164         * platform/network/ResourceRequest.h:
   69165 
   69166 2007-01-04  Brady Eidson  <beidson (a] apple.com>
   69167 
   69168         Reviewed by Mark Rowe
   69169 
   69170         http://bugs.webkit.org/show_bug.cgi?id=12119
   69171         Changing the behavior of HistoryItem::pageCache() this morning also necessitated
   69172         changing the behavior of HistoryItem::hasPageCache()
   69173 
   69174         * history/HistoryItem.cpp:
   69175         (WebCore::HistoryItem::hasPageCache): Add the same pendingRelease check pageCache() has
   69176 
   69177 2007-01-04  Mitz Pettel  <mitz (a] webkit.org>
   69178 
   69179         Reviewed by Sam Weinig.
   69180 
   69181         - fix http://bugs.webkit.org/show_bug.cgi?id=12043
   69182           Another assertion failure in WebCore::RenderObject::drawBorder
   69183 
   69184         Test: fast/borders/border-radius-huge-assert.html
   69185 
   69186         * platform/graphics/cg/GraphicsContextCG.cpp:
   69187         (WebCore::GraphicsContext::addRoundedRectClip): Fixed the check for border radii
   69188         that do not fit in the given width or height to work with radii that sum up to
   69189         more than MAX_INT.
   69190         * rendering/RenderObject.cpp:
   69191         (WebCore::RenderObject::paintBorder): Ditto.
   69192 
   69193 2007-01-04  Justin Garcia  <justin.garcia (a] apple.com>
   69194 
   69195         Reviewed by john
   69196 
   69197         <rdar://problem/4861080>
   69198         GMail Editor: Crash when dropping content into certain list items
   69199         
   69200         A rendering bug (4907469) creates unwanted space at the top of a 
   69201         list item when its contents are wrapped in span.  Dropping content 
   69202         inside that space causes a crash because positionForCoordinates 
   69203         fails there and the code that creates drag carets can't handle it.
   69204 
   69205         * page/mac/WebCoreFrameBridge.mm:
   69206         (-[WebCoreFrameBridge _visiblePositionForPoint:]): Added the
   69207         that's inside click handling for the case where 
   69208         positionForCoordinates returns null.  We should also fix 
   69209         positionForCoordinates but that's less important: now its only side 
   69210         effect is that a no-op drop is performed instead of a snap back 
   69211         when you drop the contents of one of these list items its own 
   69212         unwanted space.
   69213 
   69214 2007-01-04  Beth Dakin  <bdakin (a] apple.com>
   69215 
   69216         Reviewed by Adam.
   69217 
   69218         Fix for http://bugs.webkit.org/show_bug.cgi?id=12118 REGRESSION 
   69219         (Context menus): No context menu displayed when clicking outside a 
   69220         short document
   69221 
   69222         No test case added since we do not currently have a way to automate 
   69223         context menus. 
   69224 
   69225         * page/ContextMenuController.cpp:
   69226         (WebCore::ContextMenuController::handleContextMenuEvent): If the 
   69227         hit test does not find a node, use the document node.
   69228 
   69229 2007-01-04  Anders Carlsson  <acarlsson (a] apple.com>
   69230 
   69231         Reviewed by Adam.
   69232 
   69233         Convert NSURLRequest to ResourceRequest in a few places
   69234 
   69235         * loader/FrameLoader.h:
   69236         * loader/FrameLoaderClient.h:
   69237         * loader/MainResourceLoader.h:
   69238         * loader/mac/FrameLoaderMac.mm:
   69239         (WebCore::FrameLoader::identifierForInitialRequest):
   69240         (WebCore::FrameLoader::willUseArchive):
   69241         * loader/mac/MainResourceLoaderMac.mm:
   69242         (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
   69243         * platform/graphics/svg/SVGImageEmptyClients.h:
   69244         (WebCore::SVGEmptyFrameLoaderClient::download):
   69245         (WebCore::SVGEmptyFrameLoaderClient::willUseArchive):
   69246 
   69247 2007-01-04  David Hyatt  <hyatt (a] apple.com>
   69248 
   69249         Bug 12114 fix, make sure left/right floats are allowed to go above
   69250         other floats of opposite alignment.
   69251 
   69252         Reviewed by aroben
   69253 
   69254         fast/block/float/independent-align-positioning.html
   69255 
   69256         * rendering/RenderBlock.cpp:
   69257         (WebCore::RenderBlock::positionNewFloats):
   69258 
   69259 2007-01-04  Anders Carlsson  <acarlsson (a] apple.com>
   69260 
   69261         Reviewed by Brady.
   69262 
   69263         http://bugs.webkit.org/show_bug.cgi?id=12116
   69264         REGRESSION: ASSERTION FAILED: URL in +[WebDataProtocol _webIsDataProtocolURL:]
   69265         
   69266         <rdar://problem/4908910> 
   69267         REGRESSION: After switching to Bookmarks view, the browser window is completely empty (no bookmarks are displayed)
   69268         
   69269         * platform/network/ResourceResponse.h:
   69270         (WebCore::ResourceResponse::ResourceResponse):
   69271         Initialize m_isNull
   69272 
   69273 2007-01-04  Beth Dakin  <bdakin (a] apple.com>
   69274 
   69275         Reviewed by Adam.
   69276 
   69277         Turn on WebCore context menus.
   69278 
   69279         * dom/EventTargetNode.cpp:
   69280         (WebCore::EventTargetNode::defaultEventHandler): Turn on WebCore 
   69281         menus.
   69282         * page/ContextMenuClient.h: Name change and have the 
   69283         former getCustomMenuFromDefaultItems function return the 
   69284         PlatformMenuDescription since it feels funny to have the client set 
   69285         the new platform description.
   69286         * page/ContextMenuController.cpp:
   69287         (WebCore::ContextMenuController::handleContextMenuEvent): Above 
   69288         name change.
   69289         (WebCore::ContextMenuController::contextMenuItemSelected): Use 
   69290         local variable.
   69291         * platform/ContextMenu.cpp:
   69292         (WebCore::createAndAppendSpeechSubMenu): Fix silly mistake -- make 
   69293         "Stop speaking" actually stop speaking.
   69294         * platform/graphics/svg/SVGImageEmptyClients.h: Name change and 
   69295         have the former getCustomMenuFromDefaultItems function return the 
   69296         PlatformMenuDescription since it feels funny to have the client set 
   69297         the new platform description.
   69298        (WebCore::SVGEmptyContextMenuClient::getCustomMenuFromDefaultItems):
   69299 
   69300 2007-01-04  Mitz Pettel  <mitz (a] webkit.org>
   69301 
   69302         Reviewed and landed by Brady
   69303 
   69304         - fix http://bugs.webkit.org/show_bug.cgi?id=12087
   69305           REGRESSION: Reproducible crash going back in Back/Forward history
   69306 
   69307         Allow a PageCache that is pending release to be resurrected by its
   69308         HistoryItem instead of creating a new PageCache. This avoids the
   69309         the condition of having two PageCaches for the same HistoryItem, one
   69310         current and one pending release but not yet released, which was causing
   69311         this and other bugs before.
   69312         
   69313         Replaced the vector of PageCaches pending release with a set of
   69314         HistoryItems that are pending release of their PageCache.
   69315 
   69316         * history/HistoryItem.cpp:
   69317         (WebCore::HistoryItem::HistoryItem):
   69318         (WebCore::HistoryItem::setHasPageCache): Check for an existing PageCache
   69319         pending release, and if found, resurrect it by canceling the release.
   69320         (WebCore::HistoryItem::pageCache): Return 0 if the PageCache is pending
   69321         release.
   69322         (WebCore::itemsWithPendingPageCacheToRelease): Renamed pendingPageCacheToRelease
   69323         to this. This method now returns a HashSet of HistoryItems that have scheduled
   69324         their PageCaches for release.
   69325         (WebCore::HistoryItem::releasePageCachesOrReschedule): Renamed releasePageCache
   69326         to this.
   69327         (WebCore::HistoryItem::releasePageCache): Added. Actually closes and releases
   69328         the PageCache.
   69329         (WebCore::HistoryItem::releaseAllPendingPageCaches): Rolled closeObjectsInPendingPageCaches
   69330         into this method.
   69331         (WebCore::HistoryItem::scheduleRelease):
   69332         (WebCore::HistoryItem::cancelRelease): Added.
   69333         * history/HistoryItem.h: Removed unused declaration of scheduleReleaseTimer()
   69334         * history/HistoryItemTimer.cpp:
   69335         (WebCore::HistoryItemTimer::HistoryItemTimer):
   69336         (WebCore::HistoryItemTimer::callReleasePageCachesOrReschedule):
   69337         * history/HistoryItemTimer.h:
   69338 
   69339 2007-01-04  David Hyatt  <hyatt (a] apple.com>
   69340 
   69341         Just make the synthetic bold offset always be 1.0.  This fixes bug
   69342         9534, synthetic bold looks doubled.
   69343 
   69344         Reviewed by olliej
   69345 
   69346         * platform/mac/FontDataMac.mm:
   69347         (WebCore::FontData::platformInit):
   69348 
   69349 2007-01-04  Anders Carlsson  <acarlsson (a] apple.com>
   69350 
   69351         Reviewed by Brady.
   69352 
   69353         Convert almost all occurrences of NSURLResponse to ResourceResponse.
   69354 
   69355         * WebCore.exp:
   69356         * loader/DocumentLoader.h:
   69357         * loader/FrameLoader.h:
   69358         * loader/FrameLoaderClient.h:
   69359         * loader/MainResourceLoader.h:
   69360         * loader/NetscapePlugInStreamLoader.h:
   69361         * loader/ResourceLoader.h:
   69362         * loader/SubresourceLoader.h:
   69363         * loader/loader.h:
   69364         * loader/mac/FrameLoaderMac.mm:
   69365         (WebCore::FrameLoader::willSendRequest):
   69366         (WebCore::FrameLoader::didReceiveResponse):
   69367         (WebCore::FrameLoader::opened):
   69368         (WebCore::FrameLoader::sendRemainingDelegateMessages):
   69369         (WebCore::FrameLoader::loadedResourceFromMemoryCache):
   69370         (WebCore::FrameLoader::loadResourceSynchronously):
   69371         * loader/mac/LoaderFunctionsMac.mm:
   69372         (WebCore::CheckCacheObjectStatus):
   69373         * loader/mac/MainResourceLoaderMac.mm:
   69374         (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
   69375         (WebCore::MainResourceLoader::willSendRequest):
   69376         (WebCore::MainResourceLoader::continueAfterContentPolicy):
   69377         (WebCore::MainResourceLoader::didReceiveResponse):
   69378         (WebCore::MainResourceLoader::loadNow):
   69379         * loader/mac/NetscapePlugInStreamLoaderMac.mm:
   69380         (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
   69381         * loader/mac/ResourceLoaderMac.mm:
   69382         (WebCore::ResourceLoader::willSendRequest):
   69383         (WebCore::ResourceLoader::didReceiveResponse):
   69384         (WebCore::ResourceLoader::response):
   69385         * loader/mac/SubresourceLoaderMac.mm:
   69386         (WebCore::SubresourceLoader::willSendRequest):
   69387         (WebCore::SubresourceLoader::didReceiveResponse):
   69388         * platform/graphics/svg/SVGImageEmptyClients.h:
   69389         (WebCore::SVGEmptyFrameLoaderClient::download):
   69390         (WebCore::SVGEmptyFrameLoaderClient::dispatchWillSendRequest):
   69391         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveResponse):
   69392         (WebCore::SVGEmptyFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
   69393         (WebCore::SVGEmptyFrameLoaderClient::incrementProgress):
   69394         * platform/network/ResourceHandle.h:
   69395         * platform/network/ResourceHandleClient.h:
   69396         * platform/network/ResourceResponse.cpp:
   69397         (WebCore::ResourceResponse::isHTTP):
   69398         * platform/network/ResourceResponse.h:
   69399         (WebCore::ResourceResponse::ResourceResponse):
   69400         (WebCore::ResourceResponse::isNull):
   69401         * platform/network/mac/ResourceResponseMac.mm:
   69402         (WebCore::ResourceResponse::nsURLResponse):
   69403         (WebCore::ResourceResponse::doUpdateResourceResponse):
   69404 
   69405 2007-01-03  Adele Peterson  <adele (a] apple.com>
   69406 
   69407         Reviewed by Darin.
   69408 
   69409         - Fix for <rdar://problem/4887422>
   69410         http://bugs.webkit.org/show_bug.cgi?id=11848
   69411         REGRESSION (SearchField): Search field on developer.apple.com not drawn with top/bottom borders (11848)
   69412 
   69413         Test: fast/forms/searchfield-heights.html
   69414 
   69415         Override the border and the height for search fields that use -webkit-appearance: searchfield.
   69416 
   69417         * css/html4.css: Use box-sizing: border-box for search fields.  We don't need to have the border-box quirk
   69418           that we use for the other text fields for this control.
   69419         * rendering/RenderThemeMac.h:
   69420         * rendering/RenderThemeMac.mm:
   69421         (WebCore::RenderThemeMac::searchFieldSizes): Added.
   69422         (WebCore::RenderThemeMac::setSearchFieldSize): Added.
   69423         (WebCore::RenderThemeMac::adjustSearchFieldStyle): Override the border and the height of the search field.
   69424 
   69425 2007-01-04  Lars Knoll <lars (a] trolltech.com>
   69426 
   69427         * platform/qt/TemporaryLinkStubs.cpp:
   69428         (WebCore::inputElementAltText):
   69429         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   69430         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   69431         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   69432         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   69433         (WebCore::contextMenuItemTagDownloadImageToDisk):
   69434         (WebCore::contextMenuItemTagCopyImageToClipboard):
   69435         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   69436         (WebCore::contextMenuItemTagCopy):
   69437         (WebCore::contextMenuItemTagGoBack):
   69438         (WebCore::contextMenuItemTagGoForward):
   69439         (WebCore::contextMenuItemTagStop):
   69440         (WebCore::contextMenuItemTagReload):
   69441         (WebCore::contextMenuItemTagCut):
   69442         (WebCore::contextMenuItemTagPaste):
   69443         (WebCore::contextMenuItemTagNoGuessesFound):
   69444         (WebCore::contextMenuItemTagIgnoreSpelling):
   69445         (WebCore::contextMenuItemTagLearnSpelling):
   69446         (WebCore::contextMenuItemTagSearchWeb):
   69447         (WebCore::contextMenuItemTagLookUpInDictionary):
   69448         (WebCore::contextMenuItemTagOpenLink):
   69449         (WebCore::contextMenuItemTagIgnoreGrammar):
   69450         (WebCore::contextMenuItemTagSpellingMenu):
   69451         (WebCore::contextMenuItemTagShowSpellingPanel):
   69452         (WebCore::contextMenuItemTagCheckSpelling):
   69453         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   69454         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   69455         (WebCore::contextMenuItemTagFontMenu):
   69456         (WebCore::contextMenuItemTagBold):
   69457         (WebCore::contextMenuItemTagItalic):
   69458         (WebCore::contextMenuItemTagUnderline):
   69459         (WebCore::contextMenuItemTagOutline):
   69460         (WebCore::contextMenuItemTagWritingDirectionMenu):
   69461         (WebCore::contextMenuItemTagDefaultDirection):
   69462         (WebCore::contextMenuItemTagLeftToRight):
   69463         (WebCore::contextMenuItemTagRightToLeft):
   69464             Added missing stubs.
   69465 
   69466 2007-01-04  Peter Kasting  <pkasting (a] google.com>
   69467 
   69468         Reviewed by Alexey.
   69469 
   69470         http://bugs.webkit.org/show_bug.cgi?id=11900:
   69471         Windows build bustage
   69472 
   69473         * WebCore.vcproj/WebCore/WebCore.vcproj:
   69474         * bridge/win/FrameWin.cpp:
   69475         (WebCore::FrameWin::FrameWin):
   69476         * platform/graphics/BitmapImage.h:
   69477         * platform/graphics/GraphicsContext.cpp:
   69478         (WebCore::GraphicsContext::setPlatformStrokeColor):
   69479         * platform/graphics/Image.h:
   69480         * platform/graphics/cairo/GraphicsContextCairo.cpp:
   69481         (WebCore::GraphicsContext::drawRect):
   69482         (WebCore::adjustLineToPixelBoundaries):
   69483         (WebCore::GraphicsContext::drawLine):
   69484         (WebCore::GraphicsContext::drawEllipse):
   69485         (WebCore::GraphicsContext::strokeArc):
   69486         (WebCore::GraphicsContext::drawConvexPolygon):
   69487         * platform/graphics/cairo/ImageCairo.cpp:
   69488         (WebCore::BitmapImage::checkForSolidColor):
   69489         (WebCore::BitmapImage::draw):
   69490         (WebCore::BitmapImage::drawTiled):
   69491         * platform/graphics/win/ImageWin.cpp:
   69492         (WebCore::BitmapImage::initPlatformData):
   69493         (WebCore::BitmapImage::invalidatePlatformData):
   69494         (WebCore::Image::loadPlatformResource):
   69495         * platform/win/FontWin.cpp:
   69496         (WebCore::Font::drawGlyphs):
   69497         * platform/win/TemporaryLinkStubs.cpp:
   69498         (WebCore::userIdleTime):
   69499         (WebCore::BitmapImage::drawTiled):
   69500         (WebCore::BitmapImage::getHBITMAP):
   69501         (WebCore::ContextMenu::~ContextMenu):
   69502         (WebCore::ContextMenu::appendItem):
   69503         (WebCore::ContextMenuItem::ContextMenuItem):
   69504         (WebCore::ContextMenuItem::releasePlatformDescription):
   69505         (WebCore::ContextMenuItem::type):
   69506         (WebCore::ContextMenuItem::setType):
   69507         (WebCore::ContextMenuItem::setAction):
   69508         (WebCore::ContextMenuItem::setTitle):
   69509         (WebCore::ContextMenuItem::setSubMenu):
   69510         (WebCore::ContextMenuItem::setChecked):
   69511         (WebCore::ContextMenuItem::setEnabled):
   69512         (WebCore::DocumentLoader::originalRequest):
   69513         (WebCore::DocumentLoader::request):
   69514         (WebCore::DocumentLoader::unreachableURL):
   69515         (WebCore::DocumentLoader::getResponseRefreshAndModifiedHeaders):
   69516         (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
   69517         (WebCore::DocumentLoader::setCommitted):
   69518         (WebCore::DocumentLoader::isLoading):
   69519         (WebCore::DocumentLoader::prepareForLoadStart):
   69520         (WebCore::DocumentLoader::isClientRedirect):
   69521         (WebCore::DocumentLoader::title):
   69522         (WebCore::DocumentLoader::urlForHistory):
   69523         (WebCore::Editor::markMisspellingsAfterTypingToPosition):
   69524         (WebCore::FrameLoader::load):
   69525         (WebCore::FrameLoader::referrer):
   69526         (WebCore::FrameLoader::dataURLBaseFromRequest):
   69527         (WebCore::FrameLoader::opened):
   69528         (WebCore::FrameLoader::applyUserAgent):
   69529         (WebCore::GraphicsContext::strokeRect):
   69530         (WebCore::IconDatabase::iconForPageURL):
   69531         (WebCore::IconDatabase::defaultIcon):
   69532         (WebCore::IconDatabase::retainIconForPageURL):
   69533         (WebCore::IconDatabase::releaseIconForPageURL):
   69534         (WebCore::PageCache::close):
   69535         (WebCore::ResourceHandle::willLoadFromCache):
   69536         (WebCore::SearchPopupMenu::saveRecentSearches):
   69537         (WebCore::SearchPopupMenu::loadRecentSearches):
   69538         (WebCore::SearchPopupMenu::SearchPopupMenu):
   69539 
   69540 2007-01-04  Alexey Proskuryakov  <ap (a] webkit.org>
   69541 
   69542         Reviewed by Darin.
   69543 
   69544         http://bugs.webkit.org/show_bug.cgi?id=11611
   69545         REGRESSION: No http referer header sent on XMLHttpRequest
   69546 
   69547         Test: http/tests/xmlhttprequest/referer.html
   69548 
   69549         * loader/FrameLoader.h: Removed FrameLoader::addExtraFieldsToRequest(NSMutableURLRequest*, bool, bool),
   69550         which is no longer used.
   69551         * loader/mac/FrameLoaderMac.mm: Ditto.
   69552         * WebCore.exp: Do not export this method (WebKit doesn't use it).
   69553 
   69554         * loader/mac/SubresourceLoaderMac.mm:
   69555         (WebCore::SubresourceLoader::create): Rewrote to create the request with ResourceRequest::nsURLRequest.
   69556 
   69557         * platform/PlatformString.h:
   69558         (WebCore::operator!): Added. Previously, attempts to use operator! on a String would result 
   69559         with an NSString* conversion, which never returns nil. This was causing a problem in SubresourceLoader::create().
   69560 
   69561 2007-01-04  Lars Knoll <lars (a] trolltech.com>
   69562 
   69563 
   69564         Make the Qt build compile again.
   69565 
   69566         * platform/ContextMenu.cpp:
   69567         (WebCore::ContextMenu::populate):
   69568 
   69569 2007-01-03  Mitz Pettel  <mitz (a] webkit.org>
   69570 
   69571         Reviewed by Hyatt.
   69572 
   69573         - fix http://bugs.webkit.org/show_bug.cgi?id=5164
   69574           Non-integer percentages are incorrectly rounded down in Safari
   69575 
   69576         Test: fast/css/percentage-non-integer.html
   69577 
   69578         Added floating point constructor and accessors to Length for use with
   69579         Percent lengths only. The raw value of a percent length is the integer
   69580         part of a constant multiple of the original double value. The constant
   69581         is percentScaleFactor, which is currently 128.
   69582         
   69583         Added assertions that the correct constructors and accessors are used
   69584         depending on the type: the double-based percent(), setValue() and Length()
   69585         for the Percent type, and the integer-based value(), setValue() and Length()
   69586         for all other types.
   69587         
   69588         calcValue() and calcMinValue() work the same as before, regardless of the
   69589         type.
   69590 
   69591         Added helpers for testing if the value is 0, positive, negative or undefined
   69592         without having to check the type first.
   69593         
   69594         Added raw value accessors. These are useful for doing integer math and
   69595         comparisons with scaled percent values or doing Length type-agnostic math.
   69596 
   69597         Changed the rest of the code to use the appropriate accessors and helpers.
   69598 
   69599         * css/CSSComputedStyleDeclaration.cpp:
   69600         (WebCore::valueForLength):
   69601         (WebCore::primitiveValueFromLength):
   69602         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   69603         * css/cssstyleselector.cpp:
   69604         (WebCore::convertToLength):
   69605         (WebCore::CSSStyleSelector::applyProperty):
   69606         (WebCore::CSSStyleSelector::mapBackgroundSize):
   69607         (WebCore::CSSStyleSelector::mapBackgroundXPosition):
   69608         (WebCore::CSSStyleSelector::mapBackgroundYPosition):
   69609         * platform/StringImpl.cpp:
   69610         (WebCore::parseLength):
   69611         * rendering/AutoTableLayout.cpp:
   69612         (WebCore::AutoTableLayout::recalcColumn):
   69613         (WebCore::AutoTableLayout::fullRecalc):
   69614         (WebCore::AutoTableLayout::calcMinMaxWidth):
   69615         (WebCore::AutoTableLayout::calcEffectiveWidth):
   69616         (WebCore::AutoTableLayout::layout):
   69617         (WebCore::AutoTableLayout::calcPercentages):
   69618         * rendering/FixedTableLayout.cpp:
   69619         (WebCore::FixedTableLayout::calcWidthArray):
   69620         (WebCore::FixedTableLayout::layout):
   69621         * rendering/Length.h:
   69622         (WebCore::Length::Length):
   69623         (WebCore::Length::value):
   69624         (WebCore::Length::rawValue):
   69625         (WebCore::Length::percent):
   69626         (WebCore::Length::setValue):
   69627         (WebCore::Length::setRawValue):
   69628         (WebCore::Length::calcValue):
   69629         (WebCore::Length::calcMinValue):
   69630         (WebCore::Length::isUndefined):
   69631         (WebCore::Length::isZero):
   69632         (WebCore::Length::isPositive):
   69633         (WebCore::Length::isNegative):
   69634         * rendering/RenderBR.cpp:
   69635         (WebCore::RenderBR::lineHeight):
   69636         * rendering/RenderBlock.cpp:
   69637         (WebCore::RenderBlock::isSelfCollapsingBlock):
   69638         * rendering/RenderBox.cpp:
   69639         (WebCore::cacluateBackgroundSize):
   69640         (WebCore::RenderBox::calcWidth):
   69641         (WebCore::RenderBox::calcHeight):
   69642         (WebCore::RenderBox::calcReplacedWidth):
   69643         (WebCore::RenderBox::calcReplacedHeight):
   69644         (WebCore::RenderBox::calcAbsoluteHorizontal):
   69645         (WebCore::RenderBox::calcAbsoluteVertical):
   69646         * rendering/RenderFlexibleBox.cpp:
   69647         (WebCore::RenderFlexibleBox::allowedChildFlex):
   69648         * rendering/RenderFlow.cpp:
   69649         (WebCore::RenderFlow::lineHeight):
   69650         * rendering/RenderImage.cpp:
   69651         (WebCore::RenderImage::calcReplacedWidth):
   69652         (WebCore::RenderImage::calcReplacedHeight):
   69653         * rendering/RenderLayer.cpp:
   69654         (WebCore::Marquee::direction):
   69655         (WebCore::Marquee::start):
   69656         * rendering/RenderObject.cpp:
   69657         (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
   69658         (WebCore::RenderObject::lineHeight):
   69659         * rendering/RenderSlider.cpp:
   69660         (WebCore::RenderSlider::layout): Added FIXMEs.
   69661         * rendering/RenderStyle.h:
   69662         (WebCore::LengthBox::nonZero):
   69663         (WebCore::RenderStyle::initialLineHeight):
   69664         * rendering/RenderTable.cpp:
   69665         (WebCore::RenderTable::calcWidth):
   69666         * rendering/RenderTableSection.cpp:
   69667         (WebCore::RenderTableSection::addCell):
   69668         (WebCore::RenderTableSection::layoutRows):
   69669 
   69670 2007-01-03  Mitz Pettel  <mitz (a] webkit.org>
   69671 
   69672         Reviewed by Hyatt.
   69673 
   69674         - fix http://bugs.webkit.org/show_bug.cgi?id=11744
   69675           Setting the 'content' property dynamically has no effect
   69676 
   69677         Test: fast/css/content-dynamic.html
   69678 
   69679         * dom/Node.cpp:
   69680         (WebCore::Node::diff): Changed to return 'Detach' if the styles' content
   69681         data are not equivalent.
   69682 
   69683 2007-01-03  Mitz Pettel  <mitz (a] webkit.org>
   69684 
   69685         Reviewed by Darin.
   69686 
   69687         - fix http://bugs.webkit.org/show_bug.cgi?id=12082
   69688           REGRESSION (r18333): Crash in RenderFrameSet::layOutAxis()
   69689 
   69690         Test: fast/frames/negative-remaining-length-crash.html
   69691 
   69692         * rendering/RenderFrameSet.cpp:
   69693         (WebCore::RenderFrameSet::layOutAxis): Treat negative availableLength
   69694         as zero.
   69695 
   69696 2007-01-03  John Sullivan  <sullivan (a] apple.com>
   69697 
   69698         Written by Darin over my shoulder; reviewed by me
   69699 
   69700         - fixed <rdar://problem/4907437> Find doesn't work if invoked when a form field is focused
   69701 
   69702         * page/Frame.cpp:
   69703         (WebCore::isInShadowTree):
   69704         new helper function used by findString
   69705         (WebCore::Frame::findString):
   69706         when deciding whether to start from the selection, ignore selections that are in
   69707         a shadow tree (i.e. in a form control)
   69708 
   69709 2007-01-03  Brady Eidson  <beidson (a] apple.com>
   69710 
   69711         Reviewed by Mark Rowe
   69712 
   69713         Fixes http://bugs.webkit.org/show_bug.cgi?id=12089
   69714 
   69715         * loader/FrameLoader.cpp:
   69716         (WebCore::FrameLoader::updateHistoryForCommit): Null check the documentLoader
   69717 
   69718 2007-01-03  David Hyatt  <hyatt (a] apple.com>
   69719 
   69720         Relax the display type restriction a little bit for generated content inside
   69721         inlines.  We still don't allow block display types like we should (since this
   69722         will cause a crash), but we at least handle inline-table and inline-block now.
   69723 
   69724         Reviewed by beth
   69725 
   69726         fast/css-generated-content/inline-display-types.html
   69727 
   69728         * rendering/RenderContainer.cpp:
   69729         (WebCore::RenderContainer::updatePseudoChildForObject):
   69730 
   69731 2007-01-03  Justin Garcia  <justin.garcia (a] apple.com>
   69732 
   69733         Reviewed by john
   69734         
   69735         <rdar://problem/4663571> Spell checking won't cross boundary of individual To-Do item
   69736         
   69737         No layout tests because advanceToNextMisspelling isn't yet exposed to automated tests.
   69738 
   69739         * editing/mac/EditorMac.mm:
   69740         (WebCore::Editor::advanceToNextMisspelling): Confine spell checking to
   69741         the highest editable root, instead of the lowest.  Use firstEditablePosition...
   69742         to look for an editable position.
   69743 
   69744 2007-01-03  Beth Dakin  <bdakin (a] apple.com>
   69745 
   69746         Fixing silly mistake. 
   69747 
   69748         * platform/ContextMenu.cpp:
   69749         (WebCore::ContextMenu::checkOrEnableIfNeeded): Called wrong string 
   69750         function.
   69751 
   69752 2007-01-03  Brady Eidson  <beidson (a] apple.com>
   69753 
   69754         Reviewed by Anders
   69755 
   69756         http://bugs.webkit.org/show_bug.cgi?id=12093 - Assertion in certain SVG layout tests
   69757         I can't really think of a cleaner way to fix this then to help these SVG cases avoid
   69758         the ASSERT - hopefully we can clean up the svg-as-image situation as the loader stabilizes 
   69759         and we find better ways to handle it...
   69760 
   69761         * loader/mac/DocumentLoaderMac.mm:
   69762         (WebCore::DocumentLoader::urlForHistory): empty-check the url before passing it to the
   69763         ASSERTing method
   69764 
   69765 2007-01-03  Darin Adler  <darin (a] apple.com>
   69766 
   69767         Reviewed by Adele.
   69768 
   69769         - removed some obsolete source files
   69770 
   69771         * CMakeLists.txt: Removed obsolete files.
   69772         * WebCore.pro: Ditto.
   69773         * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
   69774         * WebCore.xcodeproj/project.pbxproj: Ditto.
   69775         * WebCoreSources.bkl: Ditto.
   69776 
   69777         * html/HTMLGenericFormElement.h: Removed reference to RenderFormElement.
   69778 
   69779         * platform/qt/ComboBoxQt.cpp: Removed.
   69780         * platform/qt/LineEditQt.cpp: Removed.
   69781         * platform/qt/ListBoxQt.cpp: Removed.
   69782         * platform/qt/TextEditQt.cpp: Removed.
   69783         * rendering/RenderFormElement.cpp: Removed.
   69784         * rendering/RenderFormElement.h: Removed.
   69785         * rendering/RenderLabel.cpp: Removed.
   69786         * rendering/RenderLabel.h: Removed.
   69787 
   69788 2007-01-03  Darin Adler  <darin (a] apple.com>
   69789 
   69790         Reviewed by Hyatt.
   69791 
   69792         - fix bug where :after content appears backwards
   69793 
   69794         Test: fast/css-generated-content/after-order.html
   69795 
   69796         * rendering/RenderBlock.cpp:
   69797         (WebCore::isAfterContent): Added.
   69798         (WebCore::RenderBlock::addChildToFlow): Use isAfterContent.
   69799         * rendering/RenderInline.cpp:
   69800         (WebCore::isAfterContent): Added.
   69801         (WebCore::RenderInline::addChildToFlow): Use isAfterContent.
   69802 
   69803 2007-01-03  David Hyatt  <hyatt (a] apple.com>
   69804 
   69805         Implement box-shadow parsing... getting it all into the RenderStyle.
   69806 
   69807         Reviewed by beth
   69808 
   69809         * css/CSSComputedStyleDeclaration.cpp:
   69810         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
   69811         * css/CSSPropertyNames.in:
   69812         * css/cssparser.cpp:
   69813         (WebCore::CSSParser::parseValue):
   69814         * css/cssstyleselector.cpp:
   69815         (WebCore::CSSStyleSelector::applyProperty):
   69816         * rendering/RenderStyle.cpp:
   69817         (WebCore::StyleCSS3NonInheritedData::StyleCSS3NonInheritedData):
   69818         (WebCore::StyleCSS3NonInheritedData::operator==):
   69819         (WebCore::StyleCSS3NonInheritedData::shadowDataEquivalent):
   69820         (WebCore::RenderStyle::diff):
   69821         (WebCore::RenderStyle::setBoxShadow):
   69822         * rendering/RenderStyle.h:
   69823         (WebCore::RenderStyle::boxShadow):
   69824 
   69825 2007-01-03  Beth Dakin  <bdakin (a] apple.com>
   69826 
   69827         Reviewed by John.
   69828 
   69829         Call into WebKit to get localized strings for all of the context 
   69830         menu item titles.
   69831 
   69832         * page/mac/WebCoreViewFactory.h:
   69833         * platform/ContextMenu.cpp:
   69834         (WebCore::createAndAppendFontSubMenu):
   69835         (WebCore::createAndAppendSpellingAndGrammarSubMenu):
   69836         (WebCore::createAndAppendSpellingSubMenu):
   69837         (WebCore::createAndAppendSpeechSubMenu):
   69838         (WebCore::createAndAppendWritingDirectionSubMenu):
   69839         (WebCore::ContextMenu::populate):
   69840         (WebCore::ContextMenu::checkOrEnableIfNeeded):
   69841         * platform/LocalizedStrings.h:
   69842         * platform/mac/LocalizedStringsMac.mm:
   69843         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
   69844         (WebCore::contextMenuItemTagDownloadLinkToDisk):
   69845         (WebCore::contextMenuItemTagCopyLinkToClipboard):
   69846         (WebCore::contextMenuItemTagOpenImageInNewWindow):
   69847         (WebCore::contextMenuItemTagDownloadImageToDisk):
   69848         (WebCore::contextMenuItemTagCopyImageToClipboard):
   69849         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
   69850         (WebCore::contextMenuItemTagCopy):
   69851         (WebCore::contextMenuItemTagGoBack):
   69852         (WebCore::contextMenuItemTagGoForward):
   69853         (WebCore::contextMenuItemTagStop):
   69854         (WebCore::contextMenuItemTagReload):
   69855         (WebCore::contextMenuItemTagCut):
   69856         (WebCore::contextMenuItemTagPaste):
   69857         (WebCore::contextMenuItemTagNoGuessesFound):
   69858         (WebCore::contextMenuItemTagIgnoreSpelling):
   69859         (WebCore::contextMenuItemTagLearnSpelling):
   69860         (WebCore::contextMenuItemTagSearchInSpotlight):
   69861         (WebCore::contextMenuItemTagSearchWeb):
   69862         (WebCore::contextMenuItemTagLookUpInDictionary):
   69863         (WebCore::contextMenuItemTagOpenLink):
   69864         (WebCore::contextMenuItemTagIgnoreGrammar):
   69865         (WebCore::contextMenuItemTagSpellingMenu):
   69866         (WebCore::contextMenuItemTagShowSpellingPanel):
   69867         (WebCore::contextMenuItemTagCheckSpelling):
   69868         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
   69869         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
   69870         (WebCore::contextMenuItemTagFontMenu):
   69871         (WebCore::contextMenuItemTagShowFonts):
   69872         (WebCore::contextMenuItemTagBold):
   69873         (WebCore::contextMenuItemTagItalic):
   69874         (WebCore::contextMenuItemTagUnderline):
   69875         (WebCore::contextMenuItemTagOutline):
   69876         (WebCore::contextMenuItemTagStyles):
   69877         (WebCore::contextMenuItemTagShowColors):
   69878         (WebCore::contextMenuItemTagSpeechMenu):
   69879         (WebCore::contextMenuItemTagStartSpeaking):
   69880         (WebCore::contextMenuItemTagStopSpeaking):
   69881         (WebCore::contextMenuItemTagWritingDirectionMenu):
   69882         (WebCore::contextMenuItemTagDefaultDirection):
   69883         (WebCore::contextMenuItemTagLeftToRight):
   69884         (WebCore::contextMenuItemTagRightToLeft):
   69885 
   69886 2007-01-03  Brady Eidson  <beidson (a] apple.com>
   69887 
   69888         Reviewed by Darin and Geoff
   69889 
   69890         http://bugs.webkit.org/show_bug.cgi?id=12105 - Crash visiting Acid2 test page
   69891         -Replace lost "free nil checking" in the WebKit->WebCore conversion of the BackForwardList
   69892         -Changed ::createItem and ::createItemTree to ::createHistoryItem and ::createHistoryItemTree
   69893 
   69894         * loader/FrameLoader.cpp:
   69895         (WebCore::FrameLoader::createHistoryItem):
   69896         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget):
   69897         (WebCore::FrameLoader::createHistoryItemTree):
   69898         (WebCore::FrameLoader::updateHistoryForInternalLoad):
   69899         * loader/FrameLoader.h:
   69900 
   69901 2007-01-03  Anders Carlsson  <acarlsson (a] apple.com>
   69902 
   69903         Reviewed by Geoff.
   69904         
   69905         Allow plugin elements to handle off events to their widgets.
   69906         
   69907         * html/HTMLPlugInElement.cpp:
   69908         (WebCore::HTMLPlugInElement::defaultEventHandler):
   69909         * html/HTMLPlugInElement.h:
   69910         * platform/Widget.h:
   69911         (WebCore::Widget::handleEvent):
   69912 
   69913 2007-01-03  Lars Knoll <lars (a] trolltech.com>
   69914 
   69915         Fix the Qt build
   69916 
   69917         * WebCore.pro:
   69918         * history/qt/PageCacheQt.cpp: Added.
   69919         (WebCore::PageCache::close):
   69920         * loader/qt/DocumentLoaderQt.cpp:
   69921         (WebCore::DocumentLoader::getResponseRefreshAndModifiedHeaders):
   69922         (WebCore::DocumentLoader::urlForHistory):
   69923         * loader/qt/FrameLoaderQt.cpp:
   69924         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   69925         (WebCore::FrameLoader::didFirstLayout):
   69926         (WebCore::FrameLoader::load):
   69927         (WebCore::FrameLoader::opened):
   69928         (WebCore::FrameLoader::dataURLBaseFromRequest):
   69929         (WebCore::FrameLoader::applyUserAgent):
   69930         * platform/network/qt/ResourceHandleQt.cpp:
   69931         (WebCore::ResourceHandle::loadsBlocked):
   69932         (WebCore::ResourceHandle::willLoadFromCache):
   69933 
   69934 2007-01-02  Brady Eidson  <beidson (a] apple.com>
   69935 
   69936         Reviewed extensively and repeatedly by Darin
   69937 
   69938         <rdar://problem/4887137> - WebCore Back/Forward Cache
   69939 
   69940         * WebCore.exp:
   69941         * WebCore.xcodeproj/project.pbxproj:
   69942 
   69943         * bridge/mac/WebCorePageState.h: Removed.
   69944         * bridge/mac/WebCorePageState.mm: Removed.
   69945 
   69946         * history/BackForwardList.cpp: Added - This largely emulates the design of WebBackForwardList
   69947         (WebCore::BackForwardList::BackForwardList):
   69948         (WebCore::BackForwardList::~BackForwardList):
   69949         (WebCore::BackForwardList::addItem):
   69950         (WebCore::BackForwardList::goBack):
   69951         (WebCore::BackForwardList::goForward):
   69952         (WebCore::BackForwardList::goToItem):
   69953         (WebCore::BackForwardList::backItem):
   69954         (WebCore::BackForwardList::currentItem):
   69955         (WebCore::BackForwardList::forwardItem):
   69956         (WebCore::BackForwardList::backListWithLimit):
   69957         (WebCore::BackForwardList::forwardListWithLimit):
   69958         (WebCore::BackForwardList::capacity):
   69959         (WebCore::BackForwardList::setCapacity):
   69960         (WebCore::BackForwardList::setPageCacheSize):
   69961         (WebCore::BackForwardList::pageCacheSize):
   69962         (WebCore::BackForwardList::clearPageCache):
   69963         (WebCore::BackForwardList::usesPageCache):
   69964         (WebCore::BackForwardList::backListCount):
   69965         (WebCore::BackForwardList::forwardListCount):
   69966         (WebCore::BackForwardList::itemAtIndex):
   69967         (WebCore::BackForwardList::entries):
   69968         (WebCore::BackForwardList::close):
   69969         (WebCore::BackForwardList::closed):
   69970         (WebCore::BackForwardList::removeItem):
   69971         (WebCore::BackForwardList::containsItem):
   69972         (WebCore::BackForwardList::setDefaultPageCacheSize):
   69973         (WebCore::BackForwardList::defaultPageCacheSize):
   69974         * history/BackForwardList.h: Added.
   69975 
   69976         * history/HistoryItem.cpp: Added - This largely emulates the design of WebBackForwardList
   69977         (WebCore::defaultNotifyHistoryItemChanged):
   69978         (WebCore::HistoryItem::HistoryItem):
   69979         (WebCore::HistoryItem::~HistoryItem):
   69980         (WebCore::HistoryItem::copy):
   69981         (WebCore::HistoryItem::setHasPageCache):
   69982         (WebCore::HistoryItem::retainIconInDatabase):
   69983         (WebCore::HistoryItem::urlString):
   69984         (WebCore::HistoryItem::originalURLString):
   69985         (WebCore::HistoryItem::title):
   69986         (WebCore::HistoryItem::alternateTitle):
   69987         (WebCore::HistoryItem::icon):
   69988         (WebCore::HistoryItem::lastVisitedTime):
   69989         (WebCore::HistoryItem::url):
   69990         (WebCore::HistoryItem::originalURL):
   69991         (WebCore::HistoryItem::target):
   69992         (WebCore::HistoryItem::parent):
   69993         (WebCore::HistoryItem::setAlternateTitle):
   69994         (WebCore::HistoryItem::setURLString):
   69995         (WebCore::HistoryItem::setURL):
   69996         (WebCore::HistoryItem::setOriginalURLString):
   69997         (WebCore::HistoryItem::setTitle):
   69998         (WebCore::HistoryItem::setTarget):
   69999         (WebCore::HistoryItem::setParent):
   70000         (WebCore::HistoryItem::setLastVisitedTime):
   70001         (WebCore::HistoryItem::visitCount):
   70002         (WebCore::HistoryItem::setVisitCount):
   70003         (WebCore::HistoryItem::scrollPoint):
   70004         (WebCore::HistoryItem::setScrollPoint):
   70005         (WebCore::HistoryItem::clearScrollPoint):
   70006         (WebCore::HistoryItem::setDocumentState):
   70007         (WebCore::HistoryItem::documentState):
   70008         (WebCore::HistoryItem::clearDocumentState):
   70009         (WebCore::HistoryItem::isTargetItem):
   70010         (WebCore::HistoryItem::setIsTargetItem):
   70011         (WebCore::HistoryItem::alwaysAttemptToUsePageCache):
   70012         (WebCore::HistoryItem::setAlwaysAttemptToUsePageCache):
   70013         (WebCore::HistoryItem::addChildItem):
   70014         (WebCore::HistoryItem::childItemWithName):
   70015         (WebCore::HistoryItem::recurseToFindTargetItem):
   70016         (WebCore::HistoryItem::targetItem):
   70017         (WebCore::HistoryItem::pageCache):
   70018         (WebCore::HistoryItem::children):
   70019         (WebCore::HistoryItem::hasChildren):
   70020         (WebCore::HistoryItem::formContentType):
   70021         (WebCore::HistoryItem::formReferrer):
   70022         (WebCore::HistoryItem::rssFeedReferrer):
   70023         (WebCore::HistoryItem::setRSSFeedReferrer):
   70024         (WebCore::HistoryItem::setFormInfoFromRequest):
   70025         (WebCore::HistoryItem::formData):
   70026         (WebCore::HistoryItem::mergeAutoCompleteHints):
   70027         (WebCore::HistoryItem::hasPageCache):
   70028         (WebCore::timer): Function to manage the global release timer
   70029         (WebCore::pendingPageCacheToRelease): Function to manage the global queue of caches to be released
   70030         (WebCore::HistoryItem::releasePageCache):
   70031         (WebCore::closeObjectsInPendingPageCaches):
   70032         (WebCore::HistoryItem::releaseAllPendingPageCaches):
   70033         (WebCore::HistoryItem::scheduleRelease):
   70034         (WebCore::HistoryItem::print):
   70035         * history/HistoryItem.h: Added.
   70036         * history/mac/HistoryItemMac.mm: Added.
   70037         (WebCore::HistoryItem::viewState): In the future we need a platform agnostic way to manage the view state
   70038         (WebCore::HistoryItem::setViewState):
   70039         (WebCore::HistoryItem::getTransientProperty): Transient properties are, for now, only a Mac concept
   70040         (WebCore::HistoryItem::setTransientProperty):
   70041 
   70042         * history/HistoryItemTimer.cpp: Added
   70043         (WebCore::HistoryItemTimer::HistoryItemTimer): We need a specific class to be the history item timer because
   70044         WebCore::Timers only work when you have an instance of an object, but the caches pending release is a static concept
   70045         (WebCore::HistoryItemTimer::isActive):
   70046         (WebCore::HistoryItemTimer::schedule):
   70047         (WebCore::HistoryItemTimer::invalidate):
   70048         (WebCore::HistoryItemTimer::callReleasePageCache):
   70049         * history/HistoryItemTimer.h: Added.
   70050 
   70051         * history/PageCache.cpp Added - This is a class that contains the fields that used to be in an NSDictionary in WebKit
   70052         (WebCore::PageCache::PageCache):
   70053         (WebCore::PageCache::setPageState):
   70054         (WebCore::PageCache::~PageCache):
   70055         (WebCore::PageCache::pageState):
   70056         (WebCore::PageCache::setDocumentLoader):
   70057         (WebCore::PageCache::documentLoader):
   70058         (WebCore::PageCache::setTimeStamp):
   70059         (WebCore::PageCache::setTimeStampToNow):
   70060         (WebCore::PageCache::timeStamp):
   70061         * history/PageCache.h: Added.
   70062         * history/mac/PageCacheMac.mm: Added.
   70063         (WebCore::PageCache::close):
   70064         (WebCore::PageCache::setDocumentView): In the future we need a platform agnostic way to manage the documentView
   70065         (WebCore::PageCache::documentView):
   70066 
   70067         * loader/DocumentLoader.cpp:
   70068         (WebCore::DocumentLoader::loadFromPageCache):
   70069         (WebCore::DocumentLoader::setLoadingFromPageCache): 
   70070         (WebCore::DocumentLoader::isLoadingFromPageCache):
   70071         (WebCore::DocumentLoader::originalURL):
   70072         (WebCore::DocumentLoader::requestURL):
   70073         (WebCore::DocumentLoader::responseURL):
   70074         (WebCore::DocumentLoader::responseMIMEType):
   70075         * loader/DocumentLoader.h:
   70076 
   70077         * loader/FrameLoader.cpp: Responsibilities previously scattered in WebKit but concentrated in WebView and WebFrame 
   70078           are now here, where they should be.
   70079         (WebCore::FrameLoader::clear):
   70080         (WebCore::FrameLoader::restoreDocumentState):
   70081         (WebCore::FrameLoader::goBackOrForward):
   70082         (WebCore::FrameLoader::provisionalLoadStarted):
   70083         (WebCore::FrameLoader::canCachePage):
   70084         (WebCore::FrameLoader::commitProvisionalLoad):
   70085         (WebCore::FrameLoader::transitionToCommitted):
   70086         (WebCore::FrameLoader::open):
   70087         (WebCore::FrameLoader::didFirstLayout):
   70088         (WebCore::FrameLoader::dispatchDidChangeLocationWithinPage):
   70089         (WebCore::FrameLoader::dispatchDidFinishLoadToClient):
   70090         (WebCore::FrameLoader::updateGlobalHistoryForStandardLoad): Marked for usage in future GlobalHistory (uses client for now)
   70091         (WebCore::FrameLoader::updateGlobalHistoryForReload): Ditto
   70092         (WebCore::FrameLoader::shouldGoToHistoryItem):
   70093         (WebCore::FrameLoader::addExtraFieldsToRequest):
   70094         (WebCore::FrameLoader::addHistoryItemForFragmentScroll):
   70095         (WebCore::FrameLoader::loadProvisionalItemFromPageCache):
   70096         (WebCore::FrameLoader::createPageCache):
   70097         (WebCore::FrameLoader::shouldTreatURLAsSameAsCurrent):
   70098         (WebCore::FrameLoader::createItem):
   70099         (WebCore::FrameLoader::addBackForwardItemClippedAtTarget):
   70100         (WebCore::FrameLoader::createItemTree):
   70101         (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem):
   70102         (WebCore::FrameLoader::restoreScrollPositionAndViewState):
   70103         (WebCore::FrameLoader::purgePageCache):
   70104         (WebCore::FrameLoader::invalidateCurrentItemPageCache):
   70105         (WebCore::FrameLoader::saveDocumentState):
   70106         (WebCore::FrameLoader::loadItem):
   70107         (WebCore::FrameLoader::urlsMatchItem):
   70108         (WebCore::FrameLoader::goToItem):
   70109         (WebCore::FrameLoader::recursiveGoToItem):
   70110         (WebCore::FrameLoader::childFramesMatchItem):
   70111         (WebCore::FrameLoader::updateHistoryForStandardLoad):
   70112         (WebCore::FrameLoader::updateHistoryForClientRedirect):
   70113         (WebCore::FrameLoader::updateHistoryForBackForwardNavigation):
   70114         (WebCore::FrameLoader::updateHistoryForReload):
   70115         (WebCore::FrameLoader::updateHistoryForInternalLoad):
   70116         (WebCore::FrameLoader::updateHistoryForCommit):
   70117         (WebCore::FrameLoader::saveDocumentAndScrollState):
   70118         (WebCore::FrameLoader::currentHistoryItem):
   70119         (WebCore::FrameLoader::previousHistoryItem):
   70120         (WebCore::FrameLoader::provisionalHistoryItem):
   70121         (WebCore::FrameLoader::setCurrentHistoryItem):
   70122         (WebCore::FrameLoader::setPreviousHistoryItem):
   70123         (WebCore::FrameLoader::setProvisionalHistoryItem):
   70124         * loader/FrameLoader.h:
   70125 
   70126         * loader/FrameLoaderClient.h:
   70127 
   70128         * loader/mac/DocumentLoaderMac.mm:
   70129         (WebCore::DocumentLoader::DocumentLoader):
   70130         (WebCore::DocumentLoader::getResponseRefreshAndModifiedHeaders):
   70131         (WebCore::DocumentLoader::commitIfReady):
   70132         (WebCore::DocumentLoader::urlForHistory):
   70133 
   70134         * loader/mac/FrameLoaderMac.mm:
   70135         (WebCore::FrameLoader::load):
   70136         (WebCore::FrameLoader::startLoading):
   70137         (WebCore::FrameLoader::receivedMainResourceError):
   70138         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
   70139         (WebCore::FrameLoader::opened):
   70140         (WebCore::FrameLoader::dataURLBaseFromRequest):
   70141         (WebCore::FrameLoader::didChangeTitle):
   70142         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
   70143         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
   70144 
   70145         * page/FrameTree.cpp:
   70146         (WebCore::FrameTree::removeChild):
   70147 
   70148         * page/Page.cpp: Transfered a handful of concepts from WebView
   70149         (WebCore::Page::Page):
   70150         (WebCore::Page::~Page):
   70151         (WebCore::Page::backForwardList):
   70152         (WebCore::Page::goBack):
   70153         (WebCore::Page::goForward):
   70154         (WebCore::Page::goToItem):
   70155         * page/Page.h:
   70156 
   70157         * page/PageState.h:
   70158         * page/mac/FrameMac.h:
   70159         * page/mac/FrameMac.mm:
   70160         * page/mac/WebCoreFrameBridge.h:
   70161         * page/mac/WebCoreFrameBridge.mm:
   70162 
   70163         * platform/KURL.cpp:
   70164         (WebCore::KURL::print):  Added debug only method for debugging convenience
   70165         * platform/KURL.h:
   70166 
   70167         * platform/Logging.cpp:
   70168         (WebCore::): Added some logging channels
   70169         * platform/Logging.h:
   70170 
   70171         * platform/PlatformString.h:
   70172         (WebCore::nsStringNilIfEmpty): Added for WebKit use
   70173 
   70174         * platform/SystemTime.h: Added userIdleTime()
   70175 
   70176         * platform/graphics/svg/SVGImage.cpp:
   70177         * platform/graphics/svg/SVGImageEmptyClients.h: Updated for new FrameLoaderClient methods
   70178         (WebCore::SVGEmptyFrameLoaderClient::setDocumentViewFromPageCache):
   70179         (WebCore::SVGEmptyFrameLoaderClient::updateGlobalHistoryForStandardLoad):
   70180         (WebCore::SVGEmptyFrameLoaderClient::updateGlobalHistoryForReload):
   70181         (WebCore::SVGEmptyFrameLoaderClient::shouldGoToHistoryItem):
   70182         (WebCore::SVGEmptyFrameLoaderClient::saveScrollPositionAndViewStateToItem):
   70183         (WebCore::SVGEmptyFrameLoaderClient::saveDocumentViewToPageCache):
   70184         (WebCore::SVGEmptyFrameLoaderClient::canCachePage):
   70185         (WebCore::SVGEmptyEditorClient::~SVGEmptyEditorClient):
   70186 
   70187         * platform/mac/LoggingMac.mm:
   70188         (WebCore::InitializeLoggingChannelsIfNecessary):
   70189 
   70190         * platform/mac/SystemTimeMac.cpp:
   70191         (WebCore::userIdleTime):
   70192 
   70193         * platform/mac/WebCoreSystemInterface.h: Added wkSecondsSinceLastInput for use in userIdleTime
   70194         * platform/mac/WebCoreSystemInterface.mm:
   70195 
   70196         * platform/network/FormData.cpp:
   70197         (WebCore::FormData::FormData):
   70198         (WebCore::FormData::copy):
   70199         * platform/network/FormData.h:
   70200 
   70201         * platform/network/ResourceHandle.h:
   70202         * platform/network/mac/ResourceHandleMac.mm:
   70203         (WebCore::ResourceHandle::willLoadFromCache): For "are you sure you want to resubmit?" nag
   70204 
   70205         * platform/qt/TemporaryLinkStubs.cpp:
   70206         (WebCore::userIdleTime):
   70207         * rendering/RenderPart.h:
   70208 
   70209 2007-01-02  Darin Adler  <darin (a] apple.com>
   70210 
   70211         Rubber stamped by Mitz.
   70212 
   70213         Rename isRenderSVGContainer to isSVGContainer.
   70214 
   70215         * platform/graphics/ImageBuffer.cpp:
   70216         (WebCore::ImageBuffer::renderSubtreeToImage):
   70217         * rendering/RenderObject.cpp:
   70218         (WebCore::RenderObject::containingBlock):
   70219         * rendering/RenderObject.h:
   70220         (WebCore::RenderObject::isSVGContainer):
   70221         * rendering/RenderSVGContainer.cpp:
   70222         (WebCore::RenderSVGContainer::viewportTransform):
   70223         * rendering/RenderSVGContainer.h:
   70224         (WebCore::RenderSVGContainer::isSVGContainer):
   70225         * rendering/RenderTreeAsText.cpp:
   70226         (WebCore::write):
   70227 
   70228 2007-01-03  Nikolas Zimmermann  <zimmermann (a] kde.org>
   70229 
   70230         Reviewed by Mitz.
   70231 
   70232         Rename isKCanvasContainer to isRenderSVGContainer.
   70233 
   70234         * platform/graphics/ImageBuffer.cpp:
   70235         (WebCore::ImageBuffer::renderSubtreeToImage):
   70236         * rendering/RenderObject.cpp:
   70237         (WebCore::RenderObject::containingBlock):
   70238         * rendering/RenderObject.h:
   70239         (WebCore::RenderObject::isRenderSVGContainer):
   70240         * rendering/RenderSVGContainer.cpp:
   70241         (WebCore::RenderSVGContainer::viewportTransform):
   70242         * rendering/RenderSVGContainer.h:
   70243         (WebCore::RenderSVGContainer::isRenderSVGContainer):
   70244         * rendering/RenderTreeAsText.cpp:
   70245         (WebCore::write):
   70246 
   70247 2007-01-02  Beth Dakin  <bdakin (a] apple.com>
   70248 
   70249         Reviewed by Darin.
   70250 
   70251         Fix assertion failure with WebCore context menus by getting "Copy 
   70252         Image" item added in.
   70253 
   70254         * platform/ContextMenu.cpp:
   70255         (WebCore::ContextMenu::populate): Check if the image url is a local 
   70256         file or if we have an image in the cache.
   70257 
   70258 2007-01-02  Sam Weinig  <sam (a] webkit.org>
   70259 
   70260         Reviewed by Anders.
   70261 
   70262         Patch for http://bugs.webkit.org/show_bug.cgi?id=12072
   70263         select with align attribute should not affect contained text
   70264 
   70265         Don't map align for select elements.
   70266 
   70267         Test: fast/forms/select-align.html
   70268 
   70269         * html/HTMLSelectElement.cpp:
   70270         (WebCore::HTMLSelectElement::parseMappedAttribute):
   70271 
   70272 2007-01-02  Sam Weinig  <sam (a] webkit.org>
   70273 
   70274         Reviewed by Mitz.
   70275 
   70276         Patch for http://bugs.webkit.org/show_bug.cgi?id=12071
   70277         button with align attribute should not affect contained text
   70278 
   70279         Don't map align for button elements.
   70280 
   70281         Test: fast/forms/button-align.html
   70282 
   70283         * html/HTMLButtonElement.cpp:
   70284         (WebCore::HTMLButtonElement::parseMappedAttribute):
   70285 
   70286 2007-01-02  Sam Weinig  <sam (a] webkit.org>
   70287 
   70288         Reviewed by Mitz and Anders.
   70289 
   70290         Patch for http://bugs.webkit.org/show_bug.cgi?id=7075
   70291         textarea with align=right should not cause contained text to 
   70292         be right-justified
   70293 
   70294         Don't map align for textarea elements.
   70295 
   70296         Test: fast/forms/textarea-align.html
   70297 
   70298         * html/HTMLTextAreaElement.cpp:
   70299         (WebCore::HTMLTextAreaElement::parseMappedAttribute):
   70300 
   70301 2007-01-02  Eric Seidel  <eric (a] webkit.org>
   70302 
   70303         Reviewed by mitz.
   70304 
   70305         Implement SVGSVGElement::deselectAll()
   70306 
   70307         * ksvg2/svg/SVGAnimationElement.h:
   70308         (WebCore::SVGAnimationElement::updateLastValueWithCurrent): add comment
   70309         * ksvg2/svg/SVGSVGElement.cpp:
   70310         (WebCore::SVGSVGElement::deselectAll): implement
   70311         (WebCore::SVGSVGElement::setCurrentTime): add comment about bug
   70312         * ksvg2/svg/SVGSVGElement.idl: remove unnecessary comment
   70313 
   70314 2007-01-02  Sam Weinig  <sam (a] webkit.org>
   70315 
   70316         Reviewed by Darin.
   70317 
   70318         Patch for http://bugs.webkit.org/show_bug.cgi?id=3360
   70319         align="right" on a text input aligns the input field to the right
   70320 
   70321         Don't map align if input type is not 'image'.
   70322 
   70323         Test: fast/forms/input-align-image.html
   70324         Test: fast/forms/input-align.html
   70325 
   70326         * WebCore.xcodeproj/project.pbxproj:
   70327         * html/HTMLInputElement.cpp:
   70328         (WebCore::HTMLInputElement::setInputType):
   70329         (WebCore::HTMLInputElement::mapToEntry):
   70330         (WebCore::HTMLInputElement::parseMappedAttribute):
   70331 
   70332 2007-01-02  Nikolas Zimmermann  <zimmermann (a] kde.org>
   70333 
   70334         Reviewed by Eric.
   70335 
   70336         Fixes: http://bugs.webkit.org/show_bug.cgi?id=12013
   70337         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11980
   70338         Partly fixes: http://bugs.webkit.org/show_bug.cgi?id=6000 (pattern/gradient recursion works now)
   70339 
   70340         Fixed testcases:
   70341         coords-units-01-b.svg (<pattern> in objectBoundingBoxMode were broken.)
   70342         pattern-in-defs.svg (clip pattern size against target size, to avoid excessive mallocs)
   70343         js-update-pattern.svg (live updating really works now!)
   70344         js-late-gradient-and-object-creation.svg (objectBoundingBoxMode gradients-on-text work now)
   70345         js-late-gradient-creation.svg (same)
   70346 
   70347         Added testcases:
   70348         js-late-pattern-and-object-creation.svg (objectBoundingBoxMode patterns-on-text work now)
   70349         js-late-pattern-creation.svg (same)
   70350         gradient-cycle-detection.svg (tests that cyclic gradients are ignored)
   70351         gradient-deep-referencing.svg
   70352         pattern-cycle-detection.svg (tests that cyclic patterns are ignored)
   70353         pattern-deep-referencing.svg
   70354 
   70355         Rewrite gradient & pattern code, fixing all known bugs & regressions.
   70356 
   70357         -> Remove SVGResourceListener completly (the ugly resourceNotification() hack is gone now)
   70358 
   70359         -> Make patterns operate in all possible combinations of patternUnits / patternContentunits
   70360            The SVGPaintServerPattern now asks the SVGPatternElement to build the pattern tile, passing
   70361            the target object's bbox rectangle -> objectBoundingBox calculations can be done, so SVGPaintServerPattern
   70362            itself doesn't need to know anything about "bounding box mode". Same could be done for gradients.
   70363 
   70364         -> SVGLength::valueAsPercentage() returns again fractional values, saves some "/ 100.0" statements.
   70365 
   70366         -> Deep references (gradientA -> gradientB -> gradientC...) work now. Previously only one reference worked.
   70367            Adding GradientAttributes.h / PatternAttributes.h helper structures for the property collection.
   70368            Cycle detection is implemented and won't kill us anymore :-)
   70369 
   70370         JS updates on gradients/patterns only cause one repaint of the client's now. Gradient drawing
   70371         does not cause the target object to be redrawn immediately afterwards anymore.
   70372 
   70373         * WebCore.xcodeproj/project.pbxproj:
   70374         * ksvg2/misc/KCanvasRenderingStyle.cpp:
   70375         (WebCore::KSVGPainterFactory::fillPaintServer):
   70376         (WebCore::KSVGPainterFactory::strokePaintServer):
   70377         * ksvg2/misc/KCanvasRenderingStyle.h:
   70378         * ksvg2/misc/SVGDocumentExtensions.cpp:
   70379         (WebCore::SVGDocumentExtensions::addPendingResource):
   70380         (WebCore::SVGDocumentExtensions::isPendingResource):
   70381         (WebCore::SVGDocumentExtensions::removePendingResource):
   70382         * ksvg2/misc/SVGDocumentExtensions.h:
   70383         * ksvg2/svg/GradientAttributes.h: Added.
   70384         (WebCore::GradientAttributes::GradientAttributes):
   70385         (WebCore::GradientAttributes::spreadMethod):
   70386         (WebCore::GradientAttributes::boundingBoxMode):
   70387         (WebCore::GradientAttributes::gradientTransform):
   70388         (WebCore::GradientAttributes::stops):
   70389         (WebCore::GradientAttributes::setSpreadMethod):
   70390         (WebCore::GradientAttributes::setBoundingBoxMode):
   70391         (WebCore::GradientAttributes::setGradientTransform):
   70392         (WebCore::GradientAttributes::setStops):
   70393         (WebCore::GradientAttributes::hasSpreadMethod):
   70394         (WebCore::GradientAttributes::hasBoundingBoxMode):
   70395         (WebCore::GradientAttributes::hasGradientTransform):
   70396         (WebCore::GradientAttributes::hasStops):
   70397         * ksvg2/svg/LinearGradientAttributes.h: Added.
   70398         (WebCore::LinearGradientAttributes::LinearGradientAttributes):
   70399         (WebCore::LinearGradientAttributes::x1):
   70400         (WebCore::LinearGradientAttributes::y1):
   70401         (WebCore::LinearGradientAttributes::x2):
   70402         (WebCore::LinearGradientAttributes::y2):
   70403         (WebCore::LinearGradientAttributes::setX1):
   70404         (WebCore::LinearGradientAttributes::setY1):
   70405         (WebCore::LinearGradientAttributes::setX2):
   70406         (WebCore::LinearGradientAttributes::setY2):
   70407         (WebCore::LinearGradientAttributes::hasX1):
   70408         (WebCore::LinearGradientAttributes::hasY1):
   70409         (WebCore::LinearGradientAttributes::hasX2):
   70410         (WebCore::LinearGradientAttributes::hasY2):
   70411         * ksvg2/svg/PatternAttributes.h: Added.
   70412         (WebCore::PatternAttributes::PatternAttributes):
   70413         (WebCore::PatternAttributes::x):
   70414         (WebCore::PatternAttributes::y):
   70415         (WebCore::PatternAttributes::width):
   70416         (WebCore::PatternAttributes::height):
   70417         (WebCore::PatternAttributes::boundingBoxMode):
   70418         (WebCore::PatternAttributes::boundingBoxModeContent):
   70419         (WebCore::PatternAttributes::patternTransform):
   70420         (WebCore::PatternAttributes::patternContentElement):
   70421         (WebCore::PatternAttributes::setX):
   70422         (WebCore::PatternAttributes::setY):
   70423         (WebCore::PatternAttributes::setWidth):
   70424         (WebCore::PatternAttributes::setHeight):
   70425         (WebCore::PatternAttributes::setBoundingBoxMode):
   70426         (WebCore::PatternAttributes::setBoundingBoxModeContent):
   70427         (WebCore::PatternAttributes::setPatternTransform):
   70428         (WebCore::PatternAttributes::setPatternContentElement):
   70429         (WebCore::PatternAttributes::hasX):
   70430         (WebCore::PatternAttributes::hasY):
   70431         (WebCore::PatternAttributes::hasWidth):
   70432         (WebCore::PatternAttributes::hasHeight):
   70433         (WebCore::PatternAttributes::hasBoundingBoxMode):
   70434         (WebCore::PatternAttributes::hasBoundingBoxModeContent):
   70435         (WebCore::PatternAttributes::hasPatternTransform):
   70436         (WebCore::PatternAttributes::hasPatternContentElement):
   70437         * ksvg2/svg/RadialGradientAttributes.h: Added.
   70438         (WebCore::RadialGradientAttributes::RadialGradientAttributes):
   70439         (WebCore::RadialGradientAttributes::cx):
   70440         (WebCore::RadialGradientAttributes::cy):
   70441         (WebCore::RadialGradientAttributes::r):
   70442         (WebCore::RadialGradientAttributes::fx):
   70443         (WebCore::RadialGradientAttributes::fy):
   70444         (WebCore::RadialGradientAttributes::setCx):
   70445         (WebCore::RadialGradientAttributes::setCy):
   70446         (WebCore::RadialGradientAttributes::setR):
   70447         (WebCore::RadialGradientAttributes::setFx):
   70448         (WebCore::RadialGradientAttributes::setFy):
   70449         (WebCore::RadialGradientAttributes::hasCx):
   70450         (WebCore::RadialGradientAttributes::hasCy):
   70451         (WebCore::RadialGradientAttributes::hasR):
   70452         (WebCore::RadialGradientAttributes::hasFx):
   70453         (WebCore::RadialGradientAttributes::hasFy):
   70454         * ksvg2/svg/SVGGradientElement.cpp:
   70455         (WebCore::SVGGradientElement::notifyAttributeChange):
   70456         (WebCore::SVGGradientElement::canvasResource):
   70457         (WebCore::SVGGradientElement::buildStops):
   70458         (WebCore::SVGGradientElement::insertedIntoDocument):
   70459         * ksvg2/svg/SVGGradientElement.h:
   70460         * ksvg2/svg/SVGLength.cpp:
   70461         (WebCore::SVGLength::valueAsPercentage):
   70462         * ksvg2/svg/SVGLinearGradientElement.cpp:
   70463         (WebCore::SVGLinearGradientElement::buildGradient):
   70464         (WebCore::SVGLinearGradientElement::collectGradientProperties):
   70465         * ksvg2/svg/SVGLinearGradientElement.h:
   70466         * ksvg2/svg/SVGLocatable.cpp:
   70467         (WebCore::SVGLocatable::getScreenCTM):
   70468         * ksvg2/svg/SVGPatternElement.cpp:
   70469         (WebCore::SVGPatternElement::SVGPatternElement):
   70470         (WebCore::SVGPatternElement::buildPattern):
   70471         (WebCore::SVGPatternElement::notifyAttributeChange):
   70472         (WebCore::SVGPatternElement::canvasResource):
   70473         (WebCore::SVGPatternElement::insertedIntoDocument):
   70474         (WebCore::SVGPatternElement::collectPatternProperties):
   70475         * ksvg2/svg/SVGPatternElement.h:
   70476         * ksvg2/svg/SVGRadialGradientElement.cpp:
   70477         (WebCore::SVGRadialGradientElement::buildGradient):
   70478         (WebCore::SVGRadialGradientElement::collectGradientProperties):
   70479         * ksvg2/svg/SVGRadialGradientElement.h:
   70480         * platform/graphics/svg/SVGPaintServerGradient.cpp:
   70481         (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
   70482         (WebCore::SVGPaintServerGradient::externalRepresentation):
   70483         * platform/graphics/svg/SVGPaintServerGradient.h:
   70484         (WebCore::):
   70485         * platform/graphics/svg/SVGPaintServerLinearGradient.cpp:
   70486         (WebCore::SVGPaintServerLinearGradient::SVGPaintServerLinearGradient):
   70487         * platform/graphics/svg/SVGPaintServerLinearGradient.h:
   70488         * platform/graphics/svg/SVGPaintServerPattern.cpp:
   70489         (WebCore::SVGPaintServerPattern::SVGPaintServerPattern):
   70490         (WebCore::SVGPaintServerPattern::patternBoundaries):
   70491         (WebCore::SVGPaintServerPattern::setPatternBoundaries):
   70492         (WebCore::SVGPaintServerPattern::setTile):
   70493         (WebCore::SVGPaintServerPattern::externalRepresentation):
   70494         * platform/graphics/svg/SVGPaintServerPattern.h:
   70495         * platform/graphics/svg/SVGPaintServerRadialGradient.cpp:
   70496         (WebCore::SVGPaintServerRadialGradient::SVGPaintServerRadialGradient):
   70497         * platform/graphics/svg/SVGPaintServerRadialGradient.h:
   70498         * platform/graphics/svg/SVGResource.cpp:
   70499         (WebCore::SVGResource::invalidate):
   70500         (WebCore::SVGResource::repaintClients):
   70501         * platform/graphics/svg/SVGResource.h:
   70502         * platform/graphics/svg/SVGResourceListener.h:
   70503         * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
   70504         (WebCore::cgGradientCallback):
   70505         (WebCore::CGShadingRefForRadialGradient):
   70506         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
   70507         (WebCore::SVGPaintServerGradient::updateQuartzGradientCache):
   70508         (WebCore::SVGPaintServerGradient::teardown):
   70509         (WebCore::SVGPaintServerGradient::renderPath):
   70510         (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
   70511         (WebCore::SVGPaintServerGradient::setup):
   70512         (WebCore::SVGPaintServerGradient::invalidate):
   70513         * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
   70514         (WebCore::SVGPaintServerPattern::setup):
   70515         (WebCore::SVGPaintServerPattern::teardown):
   70516         * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
   70517         (WebCore::SVGPaintServerLinearGradient::setup):
   70518         * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
   70519         (WebCore::SVGPaintServerPattern::setup):
   70520         * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
   70521         (WebCore::SVGPaintServerRadialGradient::setup):
   70522 
   70523 2007-01-02  Zack Rusin  <zack (a] kde.org>
   70524 
   70525         Compilation fix. File names are case-sensitive.
   70526 
   70527         * ksvg2/svg/SVGPathSegList.cpp:
   70528 
   70529 2007-01-02  Zack Rusin  <zack (a] kde.org>
   70530 
   70531         Compilation fixes for the Qt port.
   70532 
   70533         * WebCore.pro:
   70534         * platform/qt/FrameQt.cpp:
   70535         (WebCore::FrameQt::bindingRootObject):
   70536         (WebCore::FrameQt::addPluginRootObject):
   70537 
   70538 2007-01-02  Eric Seidel  <eric (a] webkit.org>
   70539 
   70540         Reviewed by rwlbuis.
   70541 
   70542         Refactor more animation code for better sharing between SVGAnimate*Element classes.
   70543         - replace handleEndCondition with resetValues() and updateLastValueWithCurrent()
   70544         - move initialTransform() function down into SVGTimer (eventually to AnimationCompositor)
   70545         Add non-functional (only parses) SVGAnimateMotionElement
   70546         Improve precision of getPointAtLength calculations and add support for "getNormalAtLength" functionality (needed for rotate='auto' support in animateMotion)
   70547         Move add getSegmentAtLength functionality to SVGPathSegList, move toPathData into SVGPathSegList as well.
   70548         Add SVGAnimationElement::hasValidTarget() for future better/simpler ASSERT checking
   70549         change transformMatrix() to currentTransform() to match AffineTransform class name
   70550 
   70551         * WebCore.xcodeproj/project.pbxproj:
   70552         * ksvg2/misc/SVGTimer.cpp:
   70553         (WebCore::SVGTimer::animationsByElement):
   70554         (WebCore::baseValueTransformList):
   70555         (WebCore::SVGTimer::applyAnimations):
   70556         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70557         (WebCore::SVGAnimateColorElement::updateLastValueWithCurrent):
   70558         * ksvg2/svg/SVGAnimateColorElement.h:
   70559         * ksvg2/svg/SVGAnimateMotionElement.cpp: Added.
   70560         (WebCore::SVGAnimateMotionElement::SVGAnimateMotionElement):
   70561         (WebCore::SVGAnimateMotionElement::~SVGAnimateMotionElement):
   70562         (WebCore::SVGAnimateMotionElement::hasValidTarget): added.
   70563         (WebCore::SVGAnimateMotionElement::parseMappedAttribute):
   70564         (WebCore::SVGAnimateMotionElement::animationPath): fetch path from <mpath> or d attribute
   70565         (WebCore::SVGAnimateMotionElement::updateCurrentValue):
   70566         (WebCore::SVGAnimateMotionElement::handleStartCondition):
   70567         (WebCore::SVGAnimateMotionElement::applyAnimationToValue):
   70568         * ksvg2/svg/SVGAnimateMotionElement.h: Added.
   70569         (WebCore::SVGAnimateMotionElement::contextElement):
   70570         (WebCore::SVGAnimateMotionElement::):
   70571         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   70572         (WebCore::SVGAnimateTransformElement::hasValidTarget): added.
   70573         (WebCore::SVGAnimateTransformElement::storeInitialValue):
   70574         (WebCore::SVGAnimateTransformElement::updateCurrentValue):
   70575         (WebCore::SVGAnimateTransformElement::updateLastValueWithCurrent):
   70576         (WebCore::SVGAnimateTransformElement::applyAnimationToValue):
   70577         (WebCore::SVGAnimateTransformElement::currentTransform):
   70578         * ksvg2/svg/SVGAnimateTransformElement.h:
   70579         * ksvg2/svg/SVGAnimationElement.cpp:
   70580         (WebCore::SVGAnimationElement::hasValidTarget): added.
   70581         (WebCore::SVGAnimationElement::parseMappedAttribute):
   70582         (WebCore::SVGAnimationElement::isAdditive):
   70583         (WebCore::SVGAnimationElement::isAccumulated):
   70584         (WebCore::SVGAnimationElement::handleTimerEvent):
   70585         * ksvg2/svg/SVGAnimationElement.h:
   70586         (WebCore::SVGAnimationElement::updateLastValueWithCurrent):
   70587         (WebCore::SVGAnimationElement::resetValues):
   70588         * ksvg2/svg/SVGPathElement.cpp:
   70589         (WebCore::SVGPathElement::getPointAtLength):
   70590         (WebCore::SVGPathElement::getPathSegAtLength):
   70591         (WebCore::SVGPathElement::parseMappedAttribute):
   70592         (WebCore::SVGPathElement::toPathData):
   70593         * ksvg2/svg/SVGPathSegList.cpp:
   70594         (WebCore::SVGPathSegList::getPathSegAtLength): added.
   70595         (WebCore::SVGPathSegList::toPathData): added.
   70596         * ksvg2/svg/SVGPathSegList.h:
   70597         * ksvg2/svg/svgtags.in: add animateMotion
   70598         * platform/graphics/Path.cpp:
   70599         (WebCore::pathLengthApplierFunction): add support for TraversalNormalAngleAtLength
   70600         * platform/graphics/PathTraversalState.cpp:
   70601         (WebCore::curveLength): support higher precision pointAtLength calculations, and add normalAtLength support
   70602         (WebCore::PathTraversalState::quadraticBezierTo):
   70603         (WebCore::PathTraversalState::cubicBezierTo):
   70604         * platform/graphics/PathTraversalState.h:
   70605         (WebCore::PathTraversalState::): add TraversalNormalAngleAtLength mode
   70606 
   70607 2007-01-01  Mitz Pettel  <mitz (a] webkit.org>
   70608 
   70609         Reviewed by Darin.
   70610 
   70611         - WebCore changes for http://bugs.webkit.org/show_bug.cgi?id=11849
   70612           REGRESSION (r18182): Google Calendar is broken (a regular expression containing a null character is not parsed correctly)
   70613 
   70614         * platform/RegularExpression.cpp:
   70615         (WebCore::RegularExpression::Private::compile): Changed to not null-terminate
   70616         the pattern string and instead pass its length to pcre_compile.
   70617 
   70618 2007-01-01  Mitz Pettel  <mitz (a] webkit.org>
   70619 
   70620         Reviewed by Darin.
   70621 
   70622         - fix http://bugs.webkit.org/show_bug.cgi?id=11359
   70623           Incomplete repaint of table cell's collapsed border when changing only the cell
   70624 
   70625         Test: fast/repaint/table-cell-collapsed-border.html
   70626 
   70627         * rendering/RenderTable.h:
   70628         Added needsSectionRecalc() accessor.
   70629         * rendering/RenderTableCell.cpp:
   70630         (WebCore::RenderTableCell::getAbsoluteRepaintRect): Overloaded to add the
   70631         outer half of any collapsed borders. This function checks the cell's borders'
   70632         widths but also the widths of the adjoining cells' borders, since they can
   70633         contribute to the length of this cell's borders perpendicular to them, making
   70634         such a border overflow the cell in both dimensions.
   70635         (WebCore::RenderTableCell::borderLeft): Split the collapsing borders case off to
   70636         borderHalfLeft().
   70637         (WebCore::RenderTableCell::borderRight): Ditto.
   70638         (WebCore::RenderTableCell::borderTop): Ditto.
   70639         (WebCore::RenderTableCell::borderBottom): Ditto.
   70640         (WebCore::RenderTableCell::borderHalfLeft): Added. Takes an 'outer' boolean
   70641         parameter. When true, this function returns the width of the part of the border
   70642         that is outside the cell (different from the inner width when the total width is odd).
   70643         (WebCore::RenderTableCell::borderHalfRight): Ditto.
   70644         (WebCore::RenderTableCell::borderHalfTop): Ditto.
   70645         (WebCore::RenderTableCell::borderHalfBottom): Ditto.
   70646         * rendering/RenderTableCell.h:
   70647 
   70648 2007-01-01  David Kilzer  <ddkilzer (a] webkit.org>
   70649 
   70650         WebCore.vcproj change reviewed by Darin.  Additional build files updated by ddkilzer.
   70651 
   70652         * CMakeLists.txt: Removed RenderLineEdit.cpp.
   70653         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RenderLineEdit.cpp and RenderLineEdit.h.
   70654         * WebCoreSources.bkl: Removed RenderLineEdit.cpp.
   70655 
   70656 2007-01-01  Mitz Pettel  <mitz (a] webkit.org>
   70657 
   70658         Reviewed by Mark Rowe.
   70659 
   70660         - fix http://bugs.webkit.org/show_bug.cgi?id=12042
   70661           Assertion failure in WebCore::RenderObject::drawBorder
   70662 
   70663         Test: fast/borders/outline-offset-min-assert.html
   70664 
   70665         * rendering/RenderObject.cpp:
   70666         (WebCore::RenderObject::paintOutline): Bail out if the width or height is
   70667         smaller than twice the outline inset.
   70668         
   70669 2007-01-01  Mark Rowe  <bdash (a] webkit.org>
   70670 
   70671         Reviewed by Eric.
   70672 
   70673         http://bugs.webkit.org/show_bug.cgi?id=12061
   70674         Bug 12061: Crash in WebCore::Shared<WebCore::StringImpl>::deref
   70675 
   70676         * rendering/RenderStyle.cpp:
   70677         (WebCore::ContentData::clearContent): Reset _contentType to CONTENT_NONE to ensure repeated calls to clearContent
   70678         do not result in derefing deallocated members.
   70679 
   70680 2007-01-01  Eric Seidel  <eric (a] webkit.org>
   70681 
   70682         Reviewed by andersca.
   70683 
   70684         Begin pushing code down into SVGAnimateElement
   70685 
   70686         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70687         (WebCore::SVGAnimateColorElement::handleStartCondition):
   70688         * ksvg2/svg/SVGAnimateColorElement.h:
   70689         * ksvg2/svg/SVGAnimateElement.h:
   70690         (WebCore::SVGAnimateElement::updateCurrentValue):
   70691         (WebCore::SVGAnimateElement::handleStartCondition):
   70692         (WebCore::SVGAnimateElement::handleEndCondition):
   70693         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   70694         (WebCore::SVGAnimateTransformElement::handleStartCondition):
   70695         * ksvg2/svg/SVGAnimateTransformElement.h:
   70696         * ksvg2/svg/SVGAnimationElement.cpp:
   70697         (WebCore::SVGAnimationElement::handleTimerEvent):
   70698         * ksvg2/svg/SVGAnimationElement.h:
   70699         * ksvg2/svg/SVGSetElement.cpp:
   70700         (WebCore::SVGSetElement::updateCurrentValue):
   70701         (WebCore::SVGSetElement::handleStartCondition):
   70702         (WebCore::SVGSetElement::handleEndCondition):
   70703         * ksvg2/svg/SVGSetElement.h:
   70704 
   70705 2007-01-01  Eric Seidel  <eric (a] webkit.org>
   70706 
   70707         Reviewed by andersca.
   70708 
   70709         Add static function SVGColor::colorFromRGBColorString to allow parsing Colors from SVG color strings w/o creating an SVGColor object.
   70710 
   70711         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70712         (WebCore::SVGAnimateColorElement::storeInitialValue): use colorFromRGBColorString
   70713         (WebCore::SVGAnimateColorElement::startIfNecessary): use colorFromRGBColorString
   70714         * ksvg2/svg/SVGColor.cpp:
   70715         (WebCore::SVGColor::setRGBColor): use colorFromRGBColorString
   70716         (WebCore::parseNumberOrPercent): new color parsing helper
   70717         (WebCore::SVGColor::colorFromRGBColorString): cleaned up version of setRGBColor parsing logic
   70718         * ksvg2/svg/SVGColor.h:
   70719 
   70720 2007-01-01  Eric Seidel  <eric (a] webkit.org>
   70721 
   70722         Reviewed by andersca.
   70723 
   70724         Split handleTimerEvent logic into separate functions in preparation for moving down into SVGAnimationElement
   70725 
   70726         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70727         (WebCore::SVGAnimateColorElement::storeInitialValue):
   70728         (WebCore::SVGAnimateColorElement::resetValues):
   70729         (WebCore::SVGAnimateColorElement::updateCurrentValue):
   70730         (WebCore::SVGAnimateColorElement::startIfNecessary):
   70731         (WebCore::SVGAnimateColorElement::handleEndCondition):
   70732         (WebCore::SVGAnimateColorElement::handleTimerEvent):
   70733         * ksvg2/svg/SVGAnimateColorElement.h:
   70734         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   70735         (WebCore::SVGAnimateTransformElement::storeInitialValue):
   70736         (WebCore::SVGAnimateTransformElement::resetValues):
   70737         (WebCore::SVGAnimateTransformElement::updateCurrentValue):
   70738         (WebCore::SVGAnimateTransformElement::startIfNecessary):
   70739         (WebCore::SVGAnimateTransformElement::handleEndCondition):
   70740         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
   70741         * ksvg2/svg/SVGAnimateTransformElement.h:
   70742 
   70743 2007-01-01  Rob Buis  <buis (a] kde.org>
   70744 
   70745         Reviewed by Eric.
   70746 
   70747         Simple cleanups, removing unused color table, copyright and include guard fixes.
   70748 
   70749         * ksvg2/svg/SVGColor.cpp:
   70750         * ksvg2/svg/SVGColor.h:
   70751 
   70752 2007-01-01  Eric Seidel  <eric (a] webkit.org>
   70753 
   70754         Reviewed by andersca.
   70755 
   70756         More animation code cleanup.
   70757 
   70758         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70759         (WebCore::SVGAnimateColorElement::handleTimerEvent):
   70760         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   70761         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
   70762         * ksvg2/svg/SVGAnimationElement.cpp:
   70763         (WebCore::SVGAnimationElement::SVGAnimationElement):
   70764         (WebCore::SVGAnimationElement::connectedToTimer):
   70765         (WebCore::SVGAnimationElement::connectTimer):
   70766         (WebCore::SVGAnimationElement::disconnectTimer):
   70767         (WebCore::SVGAnimationElement::updateForElapsedSeconds):
   70768         * ksvg2/svg/SVGAnimationElement.h:
   70769         * ksvg2/svg/SVGSetElement.cpp:
   70770         (WebCore::SVGSetElement::handleTimerEvent):
   70771         * ksvg2/svg/SVGSetElement.h:
   70772 
   70773 2007-01-01  Eric Seidel  <eric (a] webkit.org>
   70774 
   70775         Reviewed by mitz.
   70776 
   70777         More clean-up to animation code.
   70778 
   70779         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70780         (WebCore::SVGAnimateColorElement::handleTimerEvent):
   70781         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   70782         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
   70783         (WebCore::SVGAnimateTransformElement::parseTransformValue):
   70784         (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
   70785 
   70786 2007-01-01  Eric Seidel  <eric (a] webkit.org>
   70787 
   70788         Reviewed by olliej.
   70789 
   70790         Begin pushing more animation logic out of SVGTimer and into the SVGAnimate* classes.
   70791         
   70792         * ksvg2/misc/SVGTimer.cpp:
   70793         (WebCore::SVGTimer::animationsByElement): add comment
   70794         (WebCore::SVGTimer::notifyAll): push logic into SVGAnimte* classes
   70795         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70796         (WebCore::SVGAnimateColorElement::applyAnimationToValue): added.
   70797         * ksvg2/svg/SVGAnimateColorElement.h:
   70798         * ksvg2/svg/SVGAnimateElement.cpp:
   70799         * ksvg2/svg/SVGAnimateTransformElement.cpp:
   70800         (WebCore::SVGAnimateTransformElement::applyAnimationToValue): added.
   70801         * ksvg2/svg/SVGAnimateTransformElement.h:
   70802         * ksvg2/svg/SVGAnimationElement.cpp:
   70803         (WebCore::calculateTimePercentage): logic moved from SVGTimer
   70804         (WebCore::SVGAnimationElement::updateForElapsedSeconds): logic moved from SVGTimer
   70805         * ksvg2/svg/SVGAnimationElement.h:
   70806         * ksvg2/svg/SVGTransformList.cpp:
   70807         (SVGTransformList::concatenate): fixed spacing
   70808 
   70809 2007-01-01  Eric Seidel  <eric (a] webkit.org>
   70810 
   70811         Reviewed by olliej.
   70812 
   70813         Split out animationsByElement() logic in preparation for adding AnimationCompositor class
   70814         Add addColorsAndClamp helper (since adding and clamping is the common case)
   70815 
   70816         * ksvg2/misc/SVGTimer.cpp:
   70817         (WebCore::SVGTimer::animationsByElement): split out from notifyAll
   70818         (WebCore::SVGTimer::notifyAll):
   70819         * ksvg2/misc/SVGTimer.h:
   70820         * ksvg2/svg/SVGAnimateColorElement.cpp:
   70821         (WebCore::SVGAnimateColorElement::addColorsAndClamp): added.
   70822         * ksvg2/svg/SVGAnimateColorElement.h:
   70823 
   70824 2006-12-31  Eric Seidel  <eric (a] webkit.org>
   70825 
   70826         Reviewed by olliej.
   70827 
   70828         Split KSVGTimeScheduler into SVGTimer and TimeScheduler.
   70829         (Basic clean-up before re-working animation system)
   70830 
   70831         * WebCore.xcodeproj/project.pbxproj:
   70832         * ksvg2/misc/KSVGTimeScheduler.cpp: Removed.
   70833         * ksvg2/misc/KSVGTimeScheduler.h: Removed.
   70834         * ksvg2/misc/SVGTimer.cpp: Added.
   70835         (WebCore::SVGTimer::SVGTimer):
   70836         (WebCore::SVGTimer::calculateTimePercentage):
   70837         (WebCore::SVGTimer::notifyAll):
   70838         * ksvg2/misc/SVGTimer.h: Added.
   70839         * ksvg2/misc/TimeScheduler.cpp: Added.
   70840         (WebCore::TimeScheduler::TimeScheduler):
   70841 
   70842 2006-12-31  Eric Seidel  <eric (a] webkit.org>
   70843 
   70844         Reviewed by olliej.
   70845 
   70846         Re-enable animateTransform (now that SVGList is fixed)
   70847         (Things are only "less broken" not totally fixed yet.)
   70848 
   70849         * ksvg2/misc/KSVGTimeScheduler.cpp:
   70850         (WebCore::SVGTimer::notifyAll):
   70851 
   70852 2006-12-31  Mitz Pettel  <mitz (a] webkit.org>
   70853 
   70854         Reviewed by Hyatt.
   70855 
   70856         - http://bugs.webkit.org/show_bug.cgi?id=12049
   70857           RenderBlock::calcMinMaxWidth() should not examine children of fixed-width blocks
   70858 
   70859         No test possible (no change to functionality).
   70860 
   70861         * rendering/RenderBlock.cpp:
   70862         (WebCore::RenderBlock::calcMinMaxWidth): Call calc{Inline,Block}MinMaxWidth()
   70863         only if their result is needed.
   70864 
   70865 == Rolled over to ChangeLog-2006-12-31 ==
   70866