2006-03-20 Eric Seidel <eseidel@apple.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2006-03-20  Eric Seidel  <eseidel@apple.com>
2
3         Reviewed by adele & ggaren.
4
5         Added new cachePluginDataIfNecessary function to update
6         plugins and mimes arrays.  Made sure to call this in
7         constructor as well as refresh.  The crash was caused by
8         a refresh rendering a "plugins" object invalid.
9         Changed existing test case to depend on this new correct behavior.
10         
11         <rdar://problem/4480571> Safari crashed at exit at KXMLCore::deleteAllValues + 24
12
13         * khtml/ecma/kjs_navigator.cpp:
14         (KJS::PluginBase::cachePluginDataIfNecessary):
15         (KJS::PluginBase::PluginBase):
16         (KJS::PluginBase::~PluginBase):
17         (KJS::PluginBase::refresh):
18
19 2006-03-20  Adele Peterson  <adele@apple.com>
20
21         Reviewed by Justin.
22
23         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::visiblePositionForIndex):
24         When calculating the VisiblePosition for the first position in the text field, it
25         makes more sense for the position to have a downstream affinity.
26
27 2006-03-20  Maciej Stachowiak  <mjs@apple.com>
28
29         Reviewed by Darin.
30         
31         <rdar://problem/4458568> WebCore should not disclose https referrers
32
33         * bridge/mac/WebCoreFrameBridge.mm:
34         (-[WebCoreFrameBridge canLoadURL:fromReferrer:hideReferrer:]):
35         Don't send https URLs as referrers to non-secure http sites.
36
37 2006-03-20  Darin Adler  <darin@apple.com>
38
39         Reviewed by Geoff.
40
41         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7867
42           get rid of macro hacks for DOM, KDOM, KSVG, khtml, DOMString, QString
43
44         * config.h: Remove the defines for DOM, KDOM, KSVG, khtml, DOMString, QString,
45         and qstring().
46
47         * WebCore.xcodeproj/project.pbxproj: Pass in WebCore instead of KSVG as the
48         namespace for SVG names.
49         * ksvg2/scripts/make_names.pl: Made a couple changes to trick the SVG names into
50         recompiling, since they are in a different namespace now.
51
52         * ForwardingHeaders/kjs/identifier.h: Added.
53
54         * dom/PlatformWheelEvent.idl: Removed.
55         * dom/WheelEvent.idl: Added. This file was renamed by accident.
56
57         * bindings/js/JSDOMCore.cpp:
58         * bindings/js/JSDOMEvents.cpp:
59         * bindings/js/JSDOMHTML.cpp:
60         * dom/Attr.idl:
61         * dom/CharacterData.idl:
62         * dom/DOMImplementation.idl:
63         * dom/DocumentType.idl:
64         * dom/Element.idl:
65         * dom/Entity.idl:
66         * dom/MutationEvent.idl:
67         * dom/Notation.idl:
68         * dom/ProcessingInstruction.idl:
69         * dom/Text.idl:
70         * html/CanvasGradient.idl:
71         * html/CanvasPattern.idl:
72         * html/CanvasRenderingContext2D.idl:
73         Touched, to get CodeGeneratorJS.pm changes to take effect.
74  
75         * css/CSSGrammar.y:
76         * css/css_valueimpl.cpp: (WebCore::propertyID):
77         Changed calls to get CSS property values to use an explicit SVG:: namespace,
78         to match what the script writes out.
79
80         * khtml/ecma/kjs_binding.h: Added forward declaration of WebCore::String.
81
82         * ksvg2/scripts/cssmakeget rid of macro hacks for DOM, KDOM, KSVG, khtml, DOMString, QString
83           props: Made this compile with warnings and strict turned on.
84         Really just a trick to get properties to recompile, which turned out to be unneeded.
85         * ksvg2/scripts/cssmakevalues: Ditto.
86
87         * ksvg2/svg/SVGAElement.cpp:
88         (SVGAElement::parseMappedAttribute):
89         (SVGAElement::defaultEventHandler):
90         * ksvg2/svg/SVGAnimateTransformElement.cpp:
91         (SVGAnimateTransformElement::parseMappedAttribute):
92         * ksvg2/svg/SVGAnimationElement.cpp:
93         (SVGAnimationElement::parseMappedAttribute):
94         * ksvg2/svg/SVGClipPathElement.cpp:
95         (SVGClipPathElement::parseMappedAttribute):
96         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
97         (SVGComponentTransferFunctionElement::parseMappedAttribute):
98         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
99         (SVGExternalResourcesRequired::parseMappedAttribute):
100         * ksvg2/svg/SVGFEBlendElement.cpp:
101         (SVGFEBlendElement::parseMappedAttribute):
102         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
103         (SVGFEColorMatrixElement::parseMappedAttribute):
104         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
105         (SVGFEComponentTransferElement::parseMappedAttribute):
106         * ksvg2/svg/SVGFECompositeElement.cpp:
107         (SVGFECompositeElement::parseMappedAttribute):
108         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
109         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
110         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
111         (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
112         (SVGFEDisplacementMapElement::stringToChannel):
113         (SVGFEDisplacementMapElement::parseMappedAttribute):
114         (SVGFEDisplacementMapElement::filterEffect):
115         * ksvg2/svg/SVGFEDisplacementMapElement.h:
116         * ksvg2/svg/SVGFEFloodElement.cpp:
117         (SVGFEFloodElement::parseMappedAttribute):
118         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
119         (SVGFEGaussianBlurElement::parseMappedAttribute):
120         * ksvg2/svg/SVGFEImageElement.cpp:
121         (SVGFEImageElement::parseMappedAttribute):
122         * ksvg2/svg/SVGFELightElement.cpp:
123         (SVGFELightElement::parseMappedAttribute):
124         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
125         (SVGFEMergeNodeElement::parseMappedAttribute):
126         * ksvg2/svg/SVGFEOffsetElement.cpp:
127         (SVGFEOffsetElement::parseMappedAttribute):
128         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
129         (SVGFESpecularLightingElement::parseMappedAttribute):
130         * ksvg2/svg/SVGFETileElement.cpp:
131         (SVGFETileElement::parseMappedAttribute):
132         * ksvg2/svg/SVGFETurbulenceElement.cpp:
133         (SVGFETurbulenceElement::parseMappedAttribute):
134         * ksvg2/svg/SVGFilterElement.cpp:
135         (SVGFilterElement::parseMappedAttribute):
136         * ksvg2/svg/SVGGradientElement.cpp:
137         (SVGGradientElement::parseMappedAttribute):
138         * ksvg2/svg/SVGMaskElement.cpp:
139         (WebCore::SVGMaskElement::parseMappedAttribute):
140         * ksvg2/svg/SVGPolyElement.cpp:
141         (SVGPolyElement::parseMappedAttribute):
142         * ksvg2/svg/SVGStopElement.cpp:
143         (SVGStopElement::parseMappedAttribute):
144         * ksvg2/svg/SVGStyledElement.cpp:
145         (WebCore::SVGStyledElement::parseMappedAttribute):
146         * ksvg2/svg/SVGTests.cpp:
147         (WebCore::SVGTests::parseMappedAttribute):
148         * ksvg2/svg/SVGTextContentElement.cpp:
149         (SVGTextContentElement::parseMappedAttribute):
150         * ksvg2/svg/SVGTextPositioningElement.cpp:
151         (SVGTextPositioningElement::parseMappedAttribute):
152         * ksvg2/svg/SVGViewElement.cpp:
153         (SVGViewElement::parseMappedAttribute):
154         * ksvg2/svg/SVGZoomAndPan.cpp:
155         (SVGZoomAndPan::parseMappedAttribute):
156         Changed code that converts an AtomicString to a String to do it in a
157         more-efficient fashion that works even with all the new conversions.
158
159         * page/Frame.cpp:
160         (WebCore::getString): Removed unneeded .deprecatedString().
161         (WebCore::Frame::begin): Removed the only use of QSTRING_NULL.
162
163         * platform/AtomicString.h: Added conversion to and from KJS::Identifier
164         and KJS::UString.
165         * platform/AtomicString.cpp:
166         (WebCore::AtomicString::add): Added overloads for Identifier and UString.
167         (WebCore::AtomicString::operator Identifier): Added.
168         (WebCore::AtomicString::operator UString): Added.
169
170         * platform/DeprecatedString.h: Added conversion to and from KJS::Identifier
171         and KJS::UString.
172         * platform/DeprecatedString.cpp:
173         (DeprecatedString::DeprecatedString): Added overloads for Identifier and UString.
174         (DeprecatedString::operator Identifier): Added.
175         (DeprecatedString::operator UString): Added.
176
177         * platform/PlatformString.h: Added conversion to and from KJS::Identifier
178         and KJS::UString.
179         * platform/String.cpp:
180         (WebCore::String::String): Added overloads for Identifier and UString.
181         (WebCore::String::operator Identifier): Added.
182         (WebCore::String::operator UString): Added.
183
184         * platform/StringImpl.h: Added constructors that take KJS::Identifier
185         and KJS::UString
186         * platform/StringImpl.cpp:
187         (WebCore::getWordBreakIterator): Changed a use of UChar to say ::UChar
188         instead because of ambiguity with KJS::UChar.
189         (WebCore::StringImpl::StringImpl): Added overloads for Identifier and String.
190
191         * bindings/js/JSCanvasRenderingContext2DBase.cpp:
192         (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction):
193         (WebCore::toHTMLCanvasStyle):
194         * bindings/scripts/CodeGeneratorJS.pm:
195         * bridge/mac/WebCoreFrameBridge.mm:
196         (aeDescFromJSValue):
197         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
198         * dom/QualifiedName.cpp:
199         (WebCore::QualifiedName::toString):
200         * khtml/ecma/JSDOMParser.cpp:
201         (KJS::DOMParserProtoFunc::callAsFunction):
202         * khtml/ecma/JSXMLHttpRequest.cpp:
203         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
204         * khtml/ecma/JSXSLTProcessor.cpp:
205         (KJS::XSLTProcessorProtoFunc::callAsFunction):
206         * khtml/ecma/kjs_binding.cpp:
207         (KJS::valueToStringWithNullCheck):
208         * khtml/ecma/kjs_css.cpp:
209         (KJS::cssPropertyName):
210         (KJS::DOMCSSStyleDeclaration::put):
211         (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction):
212         (KJS::DOMStyleSheetList::nameGetter):
213         (KJS::DOMStyleSheetList::getOwnPropertySlot):
214         (KJS::DOMMediaList::put):
215         (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
216         (KJS::DOMCSSStyleSheetProtoFunc::callAsFunction):
217         (KJS::DOMCSSRule::putValueProperty):
218         (KJS::DOMCSSRuleFunc::callAsFunction):
219         (KJS::DOMCSSValue::put):
220         (KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction):
221         * khtml/ecma/kjs_dom.cpp:
222         (KJS::DOMNode::putValueProperty):
223         (KJS::DOMNode::toString):
224         (KJS::DOMNodeProtoFunc::callAsFunction):
225         (KJS::DOMEventTargetNodeProtoFunc::callAsFunction):
226         (KJS::DOMNodeList::nameGetter):
227         (KJS::DOMNodeList::getOwnPropertySlot):
228         (KJS::DOMDocument::putValueProperty):
229         (KJS::DOMDocumentProtoFunc::callAsFunction):
230         (KJS::DOMElement::attributeGetter):
231         (KJS::DOMElement::getOwnPropertySlot):
232         (KJS::DOMNamedNodeMap::nameGetter):
233         (KJS::DOMNamedNodeMap::getOwnPropertySlot):
234         (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
235         (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
236         * khtml/ecma/kjs_events.cpp:
237         (KJS::JSAbstractEventListener::handleEvent):
238         (KJS::DOMEvent::getValueProperty):
239         (KJS::DOMEventProtoFunc::callAsFunction):
240         (KJS::DOMUIEventProtoFunc::callAsFunction):
241         (KJS::DOMMouseEventProtoFunc::callAsFunction):
242         (KJS::DOMKeyboardEventProtoFunc::callAsFunction):
243         (KJS::Clipboard::putValueProperty):
244         (KJS::ClipboardProtoFunc::callAsFunction):
245         * khtml/ecma/kjs_html.cpp:
246         (KJS::HTMLDocFunction::callAsFunction):
247         (KJS::JSHTMLDocument::namedItemGetter):
248         (KJS::JSHTMLDocument::getOwnPropertySlot):
249         (KJS::JSHTMLDocument::putValueProperty):
250         (KJS::JSHTMLElement::framesetNameGetter):
251         (KJS::JSHTMLElement::getOwnPropertySlot):
252         (KJS::HTMLElementFunction::callAsFunction):
253         (KJS::JSHTMLElement::putValueProperty):
254         (KJS::JSHTMLCollection::callAsFunction):
255         (KJS::JSHTMLCollection::getNamedItems):
256         (KJS::HTMLCollectionProtoFunc::callAsFunction):
257         (KJS::OptionConstructorImp::construct):
258         * khtml/ecma/kjs_navigator.cpp:
259         (KJS::Plugins::nameGetter):
260         (KJS::Plugins::getOwnPropertySlot):
261         (KJS::MimeTypes::nameGetter):
262         (KJS::MimeTypes::getOwnPropertySlot):
263         (KJS::Plugin::nameGetter):
264         (KJS::Plugin::getOwnPropertySlot):
265         * khtml/ecma/kjs_proxy.cpp:
266         (WebCore::KJSProxy::evaluate):
267         * khtml/ecma/kjs_range.cpp:
268         (KJS::DOMRangeProtoFunc::callAsFunction):
269         * khtml/ecma/kjs_views.cpp:
270         (KJS::DOMAbstractViewProtoFunc::callAsFunction):
271         * khtml/ecma/kjs_window.cpp:
272         (KJS::parseModalDialogFeatures):
273         (KJS::showModalDialog):
274         (KJS::Window::childFrameGetter):
275         (KJS::Window::namedFrameGetter):
276         (KJS::Window::namedItemGetter):
277         (KJS::Window::getOwnPropertySlot):
278         (KJS::Window::put):
279         (KJS::WindowFunc::callAsFunction):
280         (KJS::ScheduledAction::execute):
281         (KJS::Window::installTimeout):
282         (KJS::FrameArray::nameGetter):
283         (KJS::FrameArray::getOwnPropertySlot):
284         (KJS::Location::put):
285         (KJS::LocationFunc::callAsFunction):
286         (KJS::SelectionFunc::callAsFunction):
287         Removed explicit calls to domString(), sometimes replacing with explicit calls to the
288         String() constructor. Other similar changes for AtomicString and DeprecatedString use.
289
290 2006-03-20  Eric Seidel  <eseidel@apple.com>
291
292         Reviewed by darin.
293
294         Remove many, many uses of DeprecatedString.
295         Fix various style issues throughout the touched code.
296
297         * bindings/objc/DOM.mm:
298         (-[DOMRange _text]):
299         * bridge/mac/BrowserExtensionMac.mm:
300         (WebCore::BrowserExtensionMac::createNewWindow):
301         * bridge/mac/FrameMac.h:
302         (WebCore::FrameMac::bridge):
303         (WebCore::FrameMac::markedTextRange):
304         (WebCore::Mac):
305         * bridge/mac/FrameMac.mm:
306         (WebCore::FrameMac::openURLRequest):
307         (WebCore::FrameMac::searchForLabelsAboveCell):
308         (WebCore::FrameMac::searchForLabelsBeforeElement):
309         (WebCore::FrameMac::matchLabelsAgainstElement):
310         (WebCore::FrameMac::findString):
311         (WebCore::FrameMac::submitForm):
312         (WebCore::FrameMac::urlSelected):
313         (WebCore::FrameMac::objectContentType):
314         (WebCore::FrameMac::createPlugin):
315         (WebCore::FrameMac::createFrame):
316         (WebCore::FrameMac::setTitle):
317         (WebCore::FrameMac::setStatusBarText):
318         (WebCore::FrameMac::advanceToNextMisspelling):
319         (WebCore::FrameMac::userAgent):
320         (WebCore::FrameMac::mimeTypeForFileName):
321         (WebCore::FrameMac::openURLFromPageCache):
322         (WebCore::FrameMac::incomingReferrer):
323         (WebCore::FrameMac::attributedString):
324         (WebCore::FrameMac::overrideMediaType):
325         (WebCore::FrameMac::shouldClose):
326         * bridge/mac/WebCoreFrameBridge.mm:
327         (-[WebCoreFrameBridge _documentTypeString]):
328         (-[WebCoreFrameBridge selectedString]):
329         (-[WebCoreFrameBridge stringForRange:]):
330         (-[WebCoreFrameBridge advanceToNextMisspelling]):
331         (-[WebCoreFrameBridge advanceToNextMisspellingStartingJustBeforeSelection]):
332         (-[WebCoreFrameBridge domain]):
333         * bridge/mac/WebCoreSettings.mm:
334         (-[WebCoreSettings setStandardFontFamily:]):
335         (-[WebCoreSettings setFixedFontFamily:]):
336         (-[WebCoreSettings setSerifFontFamily:]):
337         (-[WebCoreSettings setSansSerifFontFamily:]):
338         (-[WebCoreSettings setCursiveFontFamily:]):
339         (-[WebCoreSettings setFantasyFontFamily:]):
340         (-[WebCoreSettings setUserStyleSheetLocation:]):
341         (-[WebCoreSettings setDefaultTextEncoding:]):
342         * css/css_valueimpl.cpp:
343         (WebCore::quoteStringIfNeeded):
344         * css/cssstyleselector.cpp:
345         (WebCore::CSSStyleSelector::CSSStyleSelector):
346         (WebCore::CSSStyleSelector::setEncodedURL):
347         (WebCore::cleanpath):
348         (WebCore::checkPseudoState):
349         (WebCore::CSSStyleSelector::styleForElement):
350         (WebCore::CSSStyleSelector::styleRulesForElement):
351         (WebCore::convertToLength):
352         (WebCore::colorForCSSValue):
353         (WebCore::CSSStyleSelector::applyProperty):
354         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
355         * css/cssstyleselector.h:
356         * dom/CDATASection.cpp:
357         (WebCore::CDATASection::toString):
358         * dom/Document.cpp:
359         (WebCore::Document::recalcStyle):
360         * dom/Document.h:
361         (WebCore::Document::baseTarget):
362         (WebCore::Document::setBaseTarget):
363         * dom/dom_elementimpl.cpp:
364         (WebCore::Element::openTagStartToString):
365         * dom/xml_tokenizer.cpp:
366         (WebCore::handleElementAttributes):
367         (WebCore::XMLTokenizer::startElementNs):
368         * editing/SelectionController.cpp:
369         (WebCore::SelectionController::type):
370         * editing/TextIterator.cpp:
371         (WebCore::TextIterator::advance):
372         (WebCore::TextIterator::handleTextBox):
373         (WebCore::TextIterator::handleNonTextNode):
374         (WebCore::TextIterator::exitNode):
375         (WebCore::SimplifiedBackwardsTextIterator::advance):
376         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
377         (WebCore::CharacterIterator::advance):
378         (WebCore::WordAwareIterator::advance):
379         (WebCore::WordAwareIterator::length):
380         (WebCore::WordAwareIterator::characters):
381         (WebCore::CircularSearchBuffer::CircularSearchBuffer):
382         (WebCore::CircularSearchBuffer::append):
383         (WebCore::TextIterator::rangeFromLocationAndLength):
384         (WebCore::findPlainText):
385         * editing/TextIterator.h:
386         * html/HTMLFormElement.cpp:
387         (WebCore::HTMLFormElement::formData):
388         * khtml/ecma/kjs_navigator.cpp:
389         (KJS::Navigator::getValueProperty):
390         * khtml/ecma/kjs_proxy.cpp:
391         (WebCore::KJSProxy::initScriptIfNeeded):
392         * khtml/ecma/kjs_window.cpp:
393         (KJS::Location::getValueProperty):
394         * ksvg2/misc/KCanvasRenderingStyle.cpp:
395         (WebCore::KSVGPainterFactory::fillPaintServer):
396         (WebCore::KSVGPainterFactory::strokePaintServer):
397         * ksvg2/svg/SVGAngle.cpp:
398         (SVGAngle::calculate):
399         (SVGAngle::setValueAsString):
400         (SVGAngle::valueAsString):
401         (SVGAngle::convertToSpecifiedUnits):
402         (SVGAngle::shortestArcBisector):
403         * ksvg2/svg/SVGAngle.h:
404         * ksvg2/svg/SVGAnimationElement.cpp:
405         (SVGAnimationElement::targetElement):
406         (SVGAnimationElement::parseMappedAttribute):
407         (SVGAnimationElement::parseClockValue):
408         (SVGAnimationElement::targetAttribute):
409         (SVGAnimationElement::setTargetAttribute):
410         (SVGAnimationElement::detectAnimationMode):
411         (SVGAnimationElement::calculateCurrentValueItem):
412         (SVGAnimationElement::calculateRelativeTimePercentage):
413         * ksvg2/svg/SVGColor.cpp:
414         (SVGColor::setRGBColor):
415         * ksvg2/svg/SVGDOMImplementation.cpp:
416         (svgFeatureSet):
417         (SVGDOMImplementation::self):
418         (SVGDOMImplementation::hasFeature):
419         (SVGDOMImplementation::createDocumentType):
420         (SVGDOMImplementation::createDocument):
421         * ksvg2/svg/SVGDOMImplementation.h:
422         * ksvg2/svg/SVGPaint.cpp:
423         (SVGPaint::cssText):
424         * ksvg2/svg/SVGPathSegClosePath.h:
425         (WebCore::SVGPathSegClosePath::toString):
426         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
427         (SVGPreserveAspectRatio::parsePreserveAspectRatio):
428         (SVGPreserveAspectRatio::getCTM):
429         * ksvg2/svg/SVGStopElement.cpp:
430         (SVGStopElement::parseMappedAttribute):
431         * ksvg2/svg/SVGStyleElement.cpp:
432         (SVGStyleElement::childrenChanged):
433         * ksvg2/svg/SVGURIReference.cpp:
434         (SVGURIReference::getTarget):
435         * kwq/ClipboardMac.mm:
436         (WebCore::ClipboardMac::setData):
437         (WebCore::ClipboardMac::types):
438         (WebCore::ClipboardMac::setEffectAllowed):
439         (WebCore::cocoaOpFromIEOp):
440         (WebCore::IEOpFromCocoaOp):
441         (WebCore::ClipboardMac::sourceOperation):
442         (WebCore::ClipboardMac::destinationOperation):
443         * kwq/KWQCString.cpp:
444         (DeprecatedCString::append):
445         * kwq/KWQKHTMLSettings.h:
446         (KHTMLSettings::stdFontName):
447         (KHTMLSettings::fixedFontName):
448         (KHTMLSettings::serifFontName):
449         (KHTMLSettings::sansSerifFontName):
450         (KHTMLSettings::cursiveFontName):
451         (KHTMLSettings::fantasyFontName):
452         (KHTMLSettings::minFontSize):
453         (KHTMLSettings::minLogicalFontSize):
454         (KHTMLSettings::mediumFontSize):
455         (KHTMLSettings::mediumFixedFontSize):
456         (KHTMLSettings::autoLoadImages):
457         (KHTMLSettings::isJavaScriptEnabled):
458         (KHTMLSettings::JavaScriptCanOpenWindowsAutomatically):
459         (KHTMLSettings::isJavaEnabled):
460         (KHTMLSettings::isPluginsEnabled):
461         (KHTMLSettings::encoding):
462         (KHTMLSettings::userStyleSheet):
463         (KHTMLSettings::shouldPrintBackgrounds):
464         (KHTMLSettings::textAreasAreResizable):
465         (KHTMLSettings::setStdFontName):
466         (KHTMLSettings::setFixedFontName):
467         (KHTMLSettings::setSerifFontName):
468         (KHTMLSettings::setSansSerifFontName):
469         (KHTMLSettings::setCursiveFontName):
470         (KHTMLSettings::setFantasyFontName):
471         (KHTMLSettings::setMinFontSize):
472         (KHTMLSettings::setMinLogicalFontSize):
473         (KHTMLSettings::setMediumFontSize):
474         (KHTMLSettings::setMediumFixedFontSize):
475         (KHTMLSettings::setAutoLoadImages):
476         (KHTMLSettings::setIsJavaScriptEnabled):
477         (KHTMLSettings::setIsJavaEnabled):
478         (KHTMLSettings::setArePluginsEnabled):
479         (KHTMLSettings::setJavaScriptCanOpenWindowsAutomatically):
480         (KHTMLSettings::setEncoding):
481         (KHTMLSettings::setUserStyleSheet):
482         (KHTMLSettings::setShouldPrintBackgrounds):
483         (KHTMLSettings::setTextAreasAreResizable):
484         * kwq/KWQLoader.mm:
485         (KWQServeSynchronousRequest):
486         * kwq/KWQTextStream.cpp:
487         (QTextStream::QTextStream):
488         (QTextStream::operator<<):
489         (QTextStream::precision):
490         * kwq/KWQTextStream.h:
491         * kwq/RenderTreeAsText.cpp:
492         (operator<<):
493         (quoteAndEscapeNonPrintables):
494         (writeTextRun):
495         (write):
496         (writeSelection):
497         * loader/Cache.cpp:
498         (WebCore::Cache::init):
499         (WebCore::Cache::requestImage):
500         (WebCore::Cache::requestStyleSheet):
501         (WebCore::Cache::preloadStyleSheet):
502         (WebCore::Cache::requestScript):
503         (WebCore::Cache::preloadScript):
504         (WebCore::Cache::requestXSLStyleSheet):
505         (WebCore::Cache::requestXBLDocument):
506         (WebCore::Cache::remove):
507         * loader/Cache.h:
508         * loader/CachedCSSStyleSheet.cpp:
509         (WebCore::CachedCSSStyleSheet::error):
510         * loader/CachedCSSStyleSheet.h:
511         * loader/CachedImage.cpp:
512         (WebCore::CachedImage::error):
513         * loader/CachedImage.h:
514         * loader/CachedObject.h:
515         * loader/CachedScript.cpp:
516         (WebCore::CachedScript::checkNotify):
517         (WebCore::CachedScript::error):
518         * loader/CachedScript.h:
519         * loader/CachedXBLDocument.cpp:
520         (WebCore::CachedXBLDocument::error):
521         * loader/CachedXBLDocument.h:
522         * loader/CachedXSLStyleSheet.cpp:
523         (WebCore::CachedXSLStyleSheet::error):
524         * loader/CachedXSLStyleSheet.h:
525         * loader/DocLoader.cpp:
526         (WebCore::DocLoader::DocLoader):
527         (WebCore::DocLoader::~DocLoader):
528         (WebCore::DocLoader::needReload):
529         (WebCore::DocLoader::requestImage):
530         (WebCore::DocLoader::requestStyleSheet):
531         (WebCore::DocLoader::requestScript):
532         (WebCore::DocLoader::requestXSLStyleSheet):
533         (WebCore::DocLoader::requestXBLDocument):
534         (WebCore::DocLoader::setAutoloadImages):
535         (WebCore::DocLoader::setShowAnimations):
536         (WebCore::DocLoader::removeCachedObject):
537         * loader/loader.cpp:
538         (WebCore::Loader::receivedAllData):
539         (WebCore::Loader::receivedResponse):
540         * page/Frame.cpp:
541         (WebCore::UserStyleSheetLoader::setStyleSheet):
542         (WebCore::Frame::didOpenURL):
543         (WebCore::Frame::setMetaRefreshEnabled):
544         (WebCore::Frame::setAutoloadImages):
545         (WebCore::Frame::autoloadImages):
546         (WebCore::Frame::clear):
547         (WebCore::Frame::receivedFirstData):
548         (WebCore::Frame::begin):
549         (WebCore::Frame::write):
550         (WebCore::Frame::baseTarget):
551         (WebCore::Frame::completeURL):
552         (WebCore::Frame::scheduleRedirection):
553         (WebCore::Frame::scheduleLocationChange):
554         (WebCore::Frame::scheduleHistoryNavigation):
555         (WebCore::Frame::changeLocation):
556         (WebCore::Frame::redirectionTimerFired):
557         (WebCore::Frame::encoding):
558         (WebCore::Frame::gotoAnchor):
559         (WebCore::Frame::setStandardFont):
560         (WebCore::Frame::setFixedFont):
561         (WebCore::Frame::selectedText):
562         (WebCore::Frame::selection):
563         (WebCore::Frame::dragCaret):
564         (WebCore::Frame::setSelection):
565         (WebCore::Frame::setDragCaret):
566         (WebCore::Frame::paintCaret):
567         (WebCore::Frame::paintDragCaret):
568         (WebCore::Frame::urlSelected):
569         (WebCore::Frame::requestFrame):
570         (WebCore::Frame::requestObject):
571         (WebCore::Frame::shouldUsePlugin):
572         (WebCore::Frame::loadPlugin):
573         (WebCore::Frame::loadSubframe):
574         (WebCore::Frame::submitForm):
575         (WebCore::Frame::lastModified):
576         (WebCore::Frame::reparseConfiguration):
577         (WebCore::Frame::shouldChangeSelection):
578         (WebCore::Frame::appliedEditing):
579         (WebCore::Frame::unappliedEditing):
580         (WebCore::Frame::reappliedEditing):
581         (WebCore::Frame::executeScript):
582         (WebCore::updateState):
583         (WebCore::Frame::isCharacterSmartReplaceExempt):
584         (WebCore::Frame::openURL):
585         (WebCore::Frame::didNotOpenURL):
586         (WebCore::Frame::setEncoding):
587         (WebCore::Frame::saveInterpreterBuiltins):
588         (WebCore::Frame::restoreInterpreterBuiltins):
589         (WebCore::Frame::mutableInstances):
590         (WebCore::Frame::setPolicyBaseURL):
591         (WebCore::Frame::addMetaData):
592         (WebCore::Frame::scrollToAnchor):
593         (WebCore::Frame::setMediaType):
594         (WebCore::Frame::highlightAllMatchesForString):
595         (WebCore::Frame::tree):
596         * page/Frame.h:
597         (WebCore::Frame::instances):
598         * page/FramePrivate.h:
599         * page/FrameView.cpp:
600         (WebCore::FrameViewPrivate::FrameViewPrivate):
601         (WebCore::FrameView::FrameView):
602         (WebCore::FrameView::~FrameView):
603         (WebCore::FrameView::init):
604         (WebCore::FrameView::setMarginWidth):
605         (WebCore::FrameView::setMarginHeight):
606         (WebCore::FrameView::adjustViewSize):
607         (WebCore::FrameView::layout):
608         (WebCore::FrameView::dispatchDragEvent):
609         (WebCore::FrameView::scrollTo):
610         (WebCore::FrameView::setMediaType):
611         (WebCore::FrameView::mediaType):
612         (WebCore::FrameView::setResizingFrameSet):
613         (WebCore::FrameView::setIgnoreWheelEvents):
614         * page/FrameView.h:
615         (WebCore::FrameView::frameWidth):
616         (WebCore::FrameView::marginWidth):
617         (WebCore::FrameView::marginHeight):
618         (WebCore::FrameView::ref):
619         (WebCore::FrameView::deref):
620         * page/ResourceRequest.h:
621         (WebCore::ResourceRequest::contentType):
622         (WebCore::ResourceRequest::setContentType):
623         * platform/FontFamily.h:
624         * platform/Image.h:
625         * platform/KURL.cpp:
626         (KURL::KURL):
627         (KURL::parse):
628         (urlcmp):
629         (KURL::encode_string):
630         (encodeHostname):
631         * platform/KURL.h:
632         * platform/PlatformString.h:
633         (WebCore::String::left):
634         (WebCore::String::right):
635         * platform/String.cpp:
636         (WebCore::String::toInt):
637         * platform/StringImpl.cpp:
638         (WebCore::StringImpl::toInt):
639         * platform/TransferJob.cpp:
640         (WebCore::TransferJob::queryMetaData):
641         (WebCore::TransferJob::addMetaData):
642         * platform/TransferJob.h:
643         * platform/mac/ImageMac.mm:
644         (WebCore::Image::supportsType):
645         * platform/mac/TransferJobMac.mm:
646         (WebCore::TransferJob::start):
647         * rendering/RenderObject.cpp:
648         (WebCore::RenderObject::information):
649         * rendering/RenderTextField.cpp:
650         (WebCore::RenderTextField::updateFromElement):
651         * xml/xmlhttprequest.cpp:
652         (WebCore::getMIMEType):
653         (WebCore::getCharset):
654         (WebCore::XMLHttpRequest::getReadyState):
655         (WebCore::XMLHttpRequest::getResponseText):
656         (WebCore::XMLHttpRequest::getResponseXML):
657         (WebCore::XMLHttpRequest::XMLHttpRequest):
658         (WebCore::XMLHttpRequest::~XMLHttpRequest):
659         (WebCore::XMLHttpRequest::changeState):
660         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
661         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
662         (WebCore::XMLHttpRequest::open):
663         (WebCore::XMLHttpRequest::send):
664         (WebCore::XMLHttpRequest::abort):
665         (WebCore::XMLHttpRequest::overrideMIMEType):
666         (WebCore::XMLHttpRequest::setRequestHeader):
667         (WebCore::XMLHttpRequest::getRequestHeader):
668         (WebCore::XMLHttpRequest::getAllResponseHeaders):
669         (WebCore::XMLHttpRequest::getResponseHeader):
670         (WebCore::XMLHttpRequest::responseIsXML):
671         (WebCore::XMLHttpRequest::getStatus):
672         (WebCore::XMLHttpRequest::getStatusText):
673         (WebCore::XMLHttpRequest::processSyncLoadResults):
674         (WebCore::XMLHttpRequest::receivedAllData):
675         (WebCore::XMLHttpRequest::receivedRedirect):
676         (WebCore::XMLHttpRequest::receivedData):
677         (WebCore::XMLHttpRequest::cancelRequests):
678         (WebCore::XMLHttpRequest::detachRequests):
679         * xml/xmlhttprequest.h:
680
681 2006-03-20  Alexey Proskuryakov  <ap@nypop.com>
682
683         Reviewed by Darin.
684
685         - http://bugzilla.opendarwin.org/show_bug.cgi?id=3439
686          mouseover effects can get stuck sometimes due to missing events
687         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7701
688          mouseout sent to the wrong element when layout changes simultaneously
689         
690         Implemented saving the previous node under the mouse, so that we don't need to 
691         recalculate it, which is slow and even not really possible. This has fixed a number 
692         of issues with mouse event dispatching when the content changes.
693         The code still needs refactoring and cleanup, see bug 3439 for comments.
694
695         Tests (both files perform multiple checks):
696         - fast/events/mouseover-mouseout.html
697         - fast/events/mouseover-mouseout2.html
698
699         * page/Frame.h: Added a Frame parameter to passSubframeEventToSubframe(),
700         used for mouseMoved events.
701         * bridge/mac/FrameMac.h: Ditto.
702         * bridge/mac/FrameMac.mm: 
703         (WebCore::FrameMac::passSubframeEventToSubframe): Use the passed subframe to target 
704         NSMouseMoved events.
705         * page/FrameView.h: Added a prepareMouseEvent() helper that does viewportToContents translation.
706         * page/FrameView.cpp: Added data members for storing the previous node and subframe 
707         under the mouse to FrameViewPrivate. Removed the now unused prevMouseX/prevMouseY.
708         (WebCore::FrameViewPrivate::reset): Reset the new data members.
709         (WebCore::subframeForEvent): A temporary place for the code that extracts a subframe
710         pointer from MouseEventWithHitTestResults, moved from FrameMac::passSubframeEventToSubframe().
711         (WebCore::FrameView::prepareMouseEvent): The new helper.
712         (WebCore::FrameView::handleMousePressEvent): Use the new helper.
713         (WebCore::FrameView::handleMouseDoubleClickEvent): Ditto.
714         (WebCore::FrameView::handleMouseReleaseEvent): Ditto.
715         (WebCore::FrameView::updateDragAndDrop): Ditto.
716         (WebCore::FrameView::hoverTimerFired): Ditto.
717         (WebCore::FrameView::dispatchMouseEvent): Store and use the oldUnder node, don't store 
718         or use prevMouseX/Y.
719         (WebCore::FrameView::handleMouseMoveEvent): Rewrote dispatching events to subframes using 
720         a stored oldSubframe reference. Protect "this" from being removed while in this function.
721
722 2006-03-20  Darin Adler  <darin@apple.com>
723
724         Reviewed by Anders.
725
726         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7875
727           autogenerate bindings for Range
728
729         * dom/Range.idl: Added.
730         * khtml/ecma/kjs_range.cpp: Removed.
731         * khtml/ecma/kjs_range.h: Removed.
732
733         * WebCore.vcproj/WebCore/build-generated-files.sh: Removed code to generate
734         kjs_range.lut.h.
735
736         * WebCore.xcodeproj/project.pbxproj: Added Range.idl source file.
737         Removed kjs_range.h and kjs_range.cpp source files. Sorted the "dom" group.
738         Removed rule to generate kjs_range.lut.h.
739
740         * bindings/js/JSDOMCore.cpp: Added include of JSRange.cpp.
741
742         * bindings/scripts/CodeGeneratorJS.pm: Added DocumentFragment, Range, CompareHow,
743         and short to the types this script can handle. Added code to generate toRange
744         functions and the like. Added separate code to handle exceptions for getters
745         vs. setters for attributes. Changed return values for the "bad ID" case to 0
746         -- there's no need to generate the extra code to return jsUndefined() in such
747         cases, which should be unreachable. Changed exception handling to use setDOMException
748         directly instead of DOMExceptionTranslator; DOMExceptionTranslator was a trick
749         to make it easier to convert existing bindings and shouldn't be used going
750         forward. Fixed names of constructors to use the JavaScript class name (the
751         interface name), not the name of the C++ implementation class. Fixed generation
752         of code for functions that have no parameters but do raise exceptions.
753
754         * bindings/scripts/IDLParser.pm: Added parsing for separate getter and setter
755         exceptions in attributes. The syntax is not real IDL, but real IDL doesn't support
756         declaring exceptions on attributes at all. We'll probably want to revisit our
757         syntax for this some day.
758
759         * bindings/scripts/IDLStructure.pm: Removed unused exceptionName field from
760         domAttribute, and replaced raisesExceptions field with getterExceptions and
761         setterExceptions. Added regular expressions for parsing getter/setter syntax.
762         We'll probably have to redo this whole thing parse in a better way at some
763         point -- the regular expressions allow any invalid syntax in between them.
764
765         * dom/Attr.idl: Change exception declaration for setting the value attribute
766         to use setter-specific exception syntax.
767         * dom/CharacterData.idl: Change exception declaration for setting the data
768         attribute to use setter-specific exception syntax.
769         * dom/ProcessingInstruction.idl: Change exception declaration for setting the
770         data attribute to use setter-specific exception syntax.
771
772         * khtml/ecma/kjs_dom.cpp: Include JSRange.h instead of kjs_range.h.
773         * khtml/ecma/kjs_window.cpp: Include JSRange.h instead of kjs_range.h.
774         (KJS::Window::getValueProperty): Use JSRange::getConstructor instead of
775         getRangeConstructor.
776
777 2006-03-20  Eric Seidel  <eseidel@apple.com>
778
779         Reviewed by hyatt.
780
781         Fix win32 compile.
782
783         * Viewer/ImageView.cpp:
784         * platform/GraphicsContext.cpp:
785         (WebCore::WebCore::GraphicsContext::createGraphicsContextPrivate):
786         (WebCore::WebCore::GraphicsContext::destroyGraphicsContextPrivate):
787         * platform/cairo/GraphicsContextCairo.cpp:
788         (WebCore::fillRectSourceOver):
789         (WebCore::GraphicsContext::drawLine):
790         (WebCore::GraphicsContext::drawFocusRing):
791         * platform/win/FontWin.cpp:
792         (WebCore::Font::drawHighlightForText):
793         (WebCore::Font::drawLineForText):
794
795 2006-03-19  Darin Adler  <darin@apple.com>
796
797         Rubber stamped by Eric.
798
799         - moved khtml/html files all into html directory
800
801         * WebCore.vcproj/WebCore/WebCore.vcproj: Updated for new paths.
802         * WebCore.vcproj/WebCore/build-generated-files.sh: Ditto.
803         * WebCore.xcodeproj/project.pbxproj: Ditto.
804
805         * khtml/html: Removed.
806
807         * html/DocTypeStrings.gperf: Moved.
808         * html/FormDataList.cpp: Ditto.
809         * html/FormDataList.h: Ditto.
810         * html/HTMLBaseFontElement.cpp: Ditto.
811         * html/HTMLBaseFontElement.h: Ditto.
812         * html/HTMLButtonElement.cpp: Ditto.
813         * html/HTMLButtonElement.h: Ditto.
814         * html/HTMLCanvasElement.cpp: Ditto.
815         * html/HTMLCanvasElement.h: Ditto.
816         * html/HTMLCollection.cpp: Ditto.
817         * html/HTMLCollection.h: Ditto.
818         * html/HTMLDocument.cpp: Ditto.
819         * html/HTMLDocument.h: Ditto.
820         * html/HTMLElement.cpp: Ditto.
821         * html/HTMLElement.h: Ditto.
822         * html/HTMLElementFactory.cpp: Ditto.
823         * html/HTMLElementFactory.h: Ditto.
824         * html/HTMLEntityNames.gperf: Ditto.
825         * html/HTMLFieldSetElement.cpp: Ditto.
826         * html/HTMLFieldSetElement.h: Ditto.
827         * html/HTMLFormCollection.cpp: Ditto.
828         * html/HTMLFormCollection.h: Ditto.
829         * html/HTMLFormElement.cpp: Ditto.
830         * html/HTMLFormElement.h: Ditto.
831         * html/HTMLGenericFormElement.cpp: Ditto.
832         * html/HTMLGenericFormElement.h: Ditto.
833         * html/HTMLInputElement.cpp: Ditto.
834         * html/HTMLInputElement.h: Ditto.
835         * html/HTMLIsIndexElement.cpp: Ditto.
836         * html/HTMLIsIndexElement.h: Ditto.
837         * html/HTMLKeygenElement.cpp: Ditto.
838         * html/HTMLKeygenElement.h: Ditto.
839         * html/HTMLLabelElement.cpp: Ditto.
840         * html/HTMLLabelElement.h: Ditto.
841         * html/HTMLLegendElement.cpp: Ditto.
842         * html/HTMLLegendElement.h: Ditto.
843         * html/HTMLNameCollection.cpp: Ditto.
844         * html/HTMLNameCollection.h: Ditto.
845         * html/HTMLNames.cpp: Ditto.
846         * html/HTMLNames.h: Ditto.
847         * html/HTMLOptGroupElement.cpp: Ditto.
848         * html/HTMLOptGroupElement.h: Ditto.
849         * html/HTMLOptionElement.cpp: Ditto.
850         * html/HTMLOptionElement.h: Ditto.
851         * html/HTMLOptionsCollection.cpp: Ditto.
852         * html/HTMLOptionsCollection.h: Ditto.
853         * html/HTMLParser.cpp: Ditto.
854         * html/HTMLParser.h: Ditto.
855         * html/HTMLSelectElement.cpp: Ditto.
856         * html/HTMLSelectElement.h: Ditto.
857         * html/HTMLTextAreaElement.cpp: Ditto.
858         * html/HTMLTextAreaElement.h: Ditto.
859         * html/HTMLTextFieldInnerElement.cpp: Ditto.
860         * html/HTMLTextFieldInnerElement.h: Ditto.
861         * html/HTMLTokenizer.cpp: Ditto.
862         * html/HTMLTokenizer.h: Ditto.
863         * html/html_baseimpl.cpp: Ditto.
864         * html/html_baseimpl.h: Ditto.
865         * html/html_blockimpl.cpp: Ditto.
866         * html/html_blockimpl.h: Ditto.
867         * html/html_headimpl.cpp: Ditto.
868         * html/html_headimpl.h: Ditto.
869         * html/html_imageimpl.cpp: Ditto.
870         * html/html_imageimpl.h: Ditto.
871         * html/html_inlineimpl.cpp: Ditto.
872         * html/html_inlineimpl.h: Ditto.
873         * html/html_listimpl.cpp: Ditto.
874         * html/html_listimpl.h: Ditto.
875         * html/html_objectimpl.cpp: Ditto.
876         * html/html_objectimpl.h: Ditto.
877         * html/html_tableimpl.cpp: Ditto.
878         * html/html_tableimpl.h: Ditto.
879
880         * bindings/objc/DOM.mm:
881         * bridge/mac/WebCoreEncodings.mm:
882         * bridge/mac/WebCoreFrameBridge.mm:
883         * css/CSSGrammar.y:
884         * css/cssstyleselector.cpp:
885         * dom/Document.cpp:
886         * dom/EventTargetNode.cpp:
887         * dom/NameNodeList.cpp:
888         * dom/Node.cpp:
889         * dom/Position.cpp:
890         * dom/dom_elementimpl.cpp:
891         * dom/xml_tokenizer.cpp:
892         * editing/ApplyStyleCommand.cpp:
893         * editing/BreakBlockquoteCommand.cpp:
894         * editing/CompositeEditCommand.cpp:
895         * editing/DeleteSelectionCommand.cpp:
896         * editing/InsertLineBreakCommand.cpp:
897         * editing/InsertParagraphSeparatorCommand.cpp:
898         * editing/JSEditor.cpp:
899         * editing/ReplaceSelectionCommand.cpp:
900         * editing/TextIterator.cpp:
901         * editing/VisiblePosition.cpp:
902         * editing/htmlediting.cpp:
903         * editing/markup.cpp:
904         * editing/visible_units.cpp:
905         * html/CanvasRenderingContext2D.cpp:
906         * kcanvas/KCanvasTreeDebug.cpp:
907         * khtml/ecma/JSDOMParser.cpp:
908         * khtml/ecma/kjs_css.cpp:
909         * khtml/ecma/kjs_dom.cpp:
910         * khtml/ecma/kjs_events.cpp:
911         * khtml/misc/decoder.cpp:
912         * khtml/xsl/XSLStyleSheet.cpp:
913         * khtml/xsl/XSLTProcessor.cpp:
914         * ksvg2/misc/SVGImageLoader.h:
915         * ksvg2/svg/SVGElement.cpp:
916         * ksvg2/svg/SVGSVGElement.cpp:
917         * kwq/WebCoreAXObject.mm:
918         * page/Frame.cpp:
919         * page/FrameView.cpp:
920         * rendering/RenderBlock.cpp:
921         * rendering/RenderBox.cpp:
922         * rendering/RenderFlow.cpp:
923         * rendering/RenderHTMLCanvas.cpp:
924         * rendering/RenderImage.cpp:
925         * rendering/RenderLayer.cpp:
926         * rendering/RenderObject.cpp:
927         * rendering/RenderTable.cpp:
928         * rendering/RenderTableCell.cpp:
929         * rendering/RenderTableCol.cpp:
930         * rendering/RenderTableRow.cpp:
931         * rendering/RenderTableSection.cpp:
932         * rendering/RenderTextField.cpp:
933         * rendering/RenderTheme.cpp:
934         * rendering/render_applet.cpp:
935         * rendering/render_button.cpp:
936         * rendering/render_frames.cpp:
937         * rendering/render_list.cpp:
938         Updated includes.
939
940 2006-03-17  Eric Seidel  <eseidel@apple.com>
941
942         Reviewed by darin.
943
944         Move Form code from MacFrame to Frame.
945         Move GraphicsContext code from GraphicsContextMac to GraphicsContext.
946         Use IntRect, FloatRect in more places throughout the code.
947         http://bugzilla.opendarwin.org/show_bug.cgi?id=7824
948
949         * bridge/mac/MacFrame.h:
950         * bridge/mac/MacFrame.mm:
951         (WebCore::MacFrame::MacFrame):
952         (WebCore::MacFrame::searchForLabelsAboveCell):
953         (WebCore::MacFrame::searchForLabelsBeforeElement):
954         (WebCore::dictionaryFromHashMap):
955         (WebCore::MacFrame::submitForm):
956         (WebCore::MacFrame::setView):
957         (WebCore::MacFrame::currentEventIsMouseDownInWidget):
958         (WebCore::MacFrame::currentEventIsKeyboardOptionTab):
959         (WebCore::MacFrame::handleKeyboardOptionTabInView):
960         (WebCore::MacFrame::tabsToAllControls):
961         (WebCore::MacFrame::shouldDragAutoNode):
962         (WebCore::MacFrame::selectionImage):
963         (WebCore::MacFrame::snapshotDragImage):
964         * bridge/mac/WebCoreFrameBridge.mm:
965         (-[WebCoreFrameBridge nextKeyView]):
966         (-[WebCoreFrameBridge previousKeyView]):
967         (-[WebCoreFrameBridge nextKeyViewInsideWebFrameViews]):
968         (-[WebCoreFrameBridge previousKeyViewInsideWebFrameViews]):
969         * kcanvas/RenderSVGImage.cpp:
970         (WebCore::RenderSVGImage::paint):
971         * page/Frame.cpp:
972         (WebCore::Frame::Frame):
973         (WebCore::Frame::clearRecordedFormValues):
974         (WebCore::Frame::recordFormValue):
975         (WebCore::Frame::didNotOpenURL):
976         (WebCore::scanForForm):
977         (WebCore::Frame::paint):
978         (WebCore::Frame::prepareForUserAction):
979         * page/Frame.h:
980         * platform/GraphicsContext.cpp:
981         (WebCore::GraphicsContextState::GraphicsContextState):
982         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
983         (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate):
984         (WebCore::GraphicsContext::save):
985         (WebCore::GraphicsContext::restore):
986         (WebCore::GraphicsContext::font):
987         (WebCore::GraphicsContext::setFont):
988         (WebCore::GraphicsContext::pen):
989         (WebCore::GraphicsContext::setPen):
990         (WebCore::GraphicsContext::setBrush):
991         (WebCore::GraphicsContext::brush):
992         (WebCore::GraphicsContext::setUsesInactiveTextBackgroundColor):
993         (WebCore::GraphicsContext::usesInactiveTextBackgroundColor):
994         (WebCore::GraphicsContext::updatingControlTints):
995         (WebCore::GraphicsContext::setUpdatingControlTints):
996         (WebCore::GraphicsContext::setPaintingDisabled):
997         (WebCore::GraphicsContext::paintingDisabled):
998         (WebCore::GraphicsContext::printing):
999         (WebCore::GraphicsContext::drawImageAtPoint):
1000         (WebCore::GraphicsContext::drawImageInRect):
1001         (WebCore::GraphicsContext::drawImage):
1002         (WebCore::GraphicsContext::initFocusRing):
1003         (WebCore::GraphicsContext::clearFocusRing):
1004         (WebCore::GraphicsContext::addFocusRingRect):
1005         (WebCore::GraphicsContext::focusRingWidth):
1006         (WebCore::GraphicsContext::focusRingOffset):
1007         (WebCore::GraphicsContext::focusRingRects):
1008         * platform/GraphicsContext.h:
1009         * platform/mac/GraphicsContextMac.mm:
1010         (WebCore::fillRectSourceOver):
1011         (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1012         (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
1013         (WebCore::GraphicsContext::GraphicsContext):
1014         (WebCore::GraphicsContext::~GraphicsContext):
1015         (WebCore::GraphicsContext::savePlatformState):
1016         (WebCore::GraphicsContext::restorePlatformState):
1017         (WebCore::GraphicsContext::drawRect):
1018         (WebCore::GraphicsContext::setColorFromBrush):
1019         (WebCore::GraphicsContext::setColorFromPen):
1020         (WebCore::GraphicsContext::drawLine):
1021         (WebCore::GraphicsContext::drawEllipse):
1022         (WebCore::GraphicsContext::drawArc):
1023         (WebCore::GraphicsContext::drawConvexPolygon):
1024         (WebCore::GraphicsContext::drawFloatImage):
1025         (WebCore::GraphicsContext::drawTiledImage):
1026         (WebCore::GraphicsContext::drawScaledAndTiledImage):
1027         (WebCore::GraphicsContext::selectedTextBackgroundColor):
1028         (WebCore::GraphicsContext::fillRect):
1029         (WebCore::GraphicsContext::addClip):
1030         (WebCore::GraphicsContext::addRoundedRectClip):
1031         (WebCore::GraphicsContext::beginTransparencyLayer):
1032         (WebCore::GraphicsContext::endTransparencyLayer):
1033         (WebCore::GraphicsContext::setShadow):
1034         (WebCore::GraphicsContext::clearShadow):
1035         (WebCore::GraphicsContext::drawFocusRing):
1036         * rendering/render_box.cpp:
1037         (WebCore::RenderBox::paintBackgroundExtended):
1038         (WebCore::RenderBox::outlineBox):
1039         * rendering/render_frames.cpp:
1040         (WebCore::RenderFrameSet::userResize):
1041         * rendering/render_image.cpp:
1042         (WebCore::RenderImage::paint):
1043         * rendering/render_list.cpp:
1044         (WebCore::RenderListMarker::paint):
1045         * rendering/render_object.cpp:
1046         (WebCore::RenderObject::drawBorder):
1047         (WebCore::RenderObject::paintBorderImage):
1048
1049 2006-03-19  Darin Adler  <darin@apple.com>
1050
1051         Reviewed by Eric.
1052
1053         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7854
1054           CanvasGradient leaks
1055
1056         * html/CanvasGradient.cpp: (WebCore::CanvasGradient::platformShading):
1057         Don't make the CG shading object keep a reference to the DOM gradient object.
1058         I got confused because in the case of a CanvasPattern, the pattern does need
1059         to keep a reference to the DOM pattern object, but the object lifetime is
1060         handled differently here. The CG shading object is used right away, not set
1061         in a graphics context.
1062
1063 2006-03-19  Darin Adler  <darin@apple.com>
1064
1065         Reviewed by Eric.
1066
1067         - attempt to fix the buildbot by handling DOMImplementation another way
1068
1069         * WebCore.xcodeproj/project.pbxproj: Added DOMImplementationFront.h/cpp.
1070
1071         * bindings/objc/DOMImplementationFront.cpp: Added.
1072         * bindings/objc/DOMImplementationFront.h: Added.
1073
1074         * bindings/objc/DOMInternal.h: Use DOMImplementationFront, not DOMImplementation.
1075         * bindings/objc/DOM.mm:
1076         (-[DOMImplementation dealloc]): Ditto.
1077         (-[DOMImplementation finalize]): Ditto.
1078         (-[DOMImplementation _initWithDOMImplementation:]): Ditto.
1079         (+[DOMImplementation _DOMImplementationWith:]): Ditto.
1080         (-[DOMImplementation _DOMImplementation]): Ditto.
1081         (-[DOMDocument implementation]): Call implementationFront from the
1082         DOMImplementationFront header instead of using the real implementation
1083         function on the Document.
1084
1085 2006-03-19  Darin Adler  <darin@apple.com>
1086
1087         - global rename, done by script
1088
1089         * <lots of files>: Renamed XXXImpl to XXX, and a number of other renames.
1090         See WebKitTools/Scripts/do-webcore-rename version 13392 for details.
1091
1092 2006-03-19  Darin Adler  <darin@apple.com>
1093
1094         - roll out fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6314
1095           Unclosed <style> element in <head> makes page completely blank
1096
1097         This fix was breaking major sites -- details in the bug report.
1098
1099         * khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::parseTag):
1100         Removed the bug fix, added a FIXME about the <title> code that has
1101         the same problem.
1102
1103 2006-03-18  David Carson  <dacarson@gmail.com>
1104
1105         Test: fast/canvas/patternfill-repeat.html
1106
1107         Reviewed by Darin.
1108
1109         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7830
1110           <canvas> createPattern 'repeat' options fail
1111
1112         * CanvasPattern.cpp (CanvasPattern::createPattern)
1113         Change stepping so that repeat-x, repeat-y, and no-repeat repeat 
1114         outside the view area by using large values for repeat interval.
1115
1116 2006-03-18  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1117
1118         Test: fast/dom/Element/class-attribute-whitespace.html
1119
1120         Reviewed by Darin.
1121
1122         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7761
1123           Tabs in class attribute not treated as whitespace
1124
1125         * dom/dom_elementimpl.cpp:
1126         (WebCore::isClassWhitespace): Helper function to check if a character
1127         in the class attribute should be treated as whitespace. Added \r and \t.
1128         (WebCore::NamedMappedAttrMapImpl::parseClassAttribute): Instead of creating
1129         a QStringList and iterating it, do everything in one pass over the string.
1130
1131 2006-03-18  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1132
1133         Test: fast/block/float/vertical-move-relayout.html
1134
1135         Reviewed by Hyatt.
1136
1137         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6795
1138           Slow image load causes render problem
1139
1140         * rendering/RenderBlock.cpp:
1141         (WebCore::RenderBlock::layoutBlockChildren): Call markAllDescendantsWithFloatsForLayout
1142         when the child's vertical position changes.
1143
1144 2006-03-18  David Kilzer  <ddkilzer@kilzer.net>
1145
1146         Reviewed by Darin.
1147
1148         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6314
1149         Unclosed <style> element in <head> makes page completely blank
1150
1151         Test: fast/js/exception-linenums-in-html-3.html
1152         Test: fast/js/missing-style-end-tag-js.html
1153         Test: fast/tokenizer/missing-style-end-tag-1.html
1154         Test: fast/tokenizer/missing-style-end-tag-2.html
1155
1156         * khtml/html/htmlparser.cpp:
1157         (WebCore::HTMLParser::handleError): Add check for missing </style> tag and handle
1158         this condition if identified.
1159         * khtml/html/htmltokenizer.cpp:
1160         (WebCore::HTMLTokenizer::parseTag): If parseSpecial() consumes the rest of the
1161         document looking for a </style> tag, reset the state of the tokenizer and
1162         retokenize with no special handling for <style>.  The parser will handle the
1163         missing </style> tag in HTMLParser::handleError().
1164
1165 2006-03-18  Rob Buis  <buis@kde.org>
1166
1167         Reviewed by Darin.
1168
1169         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=5351:
1170         SVG: Safari ignores <title> elements
1171
1172         Make SVGTitleElementImpl act the same as HTMLTitleElementImpl,
1173         in the process setting the title on the right triggers.
1174
1175         * ksvg2/svg/SVGTitleElementImpl.cpp:
1176         (SVGTitleElementImpl::SVGTitleElementImpl):
1177         (SVGTitleElementImpl::title):
1178         (SVGTitleElementImpl::closeRenderer):
1179         (SVGTitleElementImpl::insertedIntoDocument):
1180         (SVGTitleElementImpl::removedFromDocument):
1181         (SVGTitleElementImpl::childrenChanged):
1182         * ksvg2/svg/SVGTitleElementImpl.h:
1183
1184 2006-03-18  Darin Adler  <darin@apple.com>
1185
1186         - another try at fixing Windows build
1187
1188         * WebCore.vcproj/WebCore/WebCore.vcproj: Added EventTargetNodeImpl.h and .cpp.
1189
1190 2006-03-18  Darin Adler  <darin@apple.com>
1191
1192         - another try at fixing Windows build
1193
1194         * bridge/win/FrameWin.cpp: (WebCore::FrameWin::keyPress): Added EventTargetNodeCast.
1195
1196 2006-03-18  Darin Adler  <darin@apple.com>
1197
1198         - try to fix Windows build
1199
1200         * bridge/win/FrameWin.h: Remove KURL parameter.
1201         * bridge/win/FrameWin.cpp: (WebCore::FrameWin::urlSelected): Ditto.
1202         * platform/win/TemporaryLinkStubs.cpp: (BrowserExtensionWin::canRunModal): Ditto.
1203
1204 2006-03-18  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1205
1206         Reviewed by Darin.
1207
1208         - fix leaks caused by the fix for Bugzilla bug 3560
1209
1210         * rendering/RenderContainer.cpp:
1211         (WebCore::RenderContainer::destroyLeftoverChildren): Text renderers with
1212         first-letter pseudo style are children of an existing first-letter inline
1213         that has been updated, and should be destroyed.
1214
1215 2006-03-18  David Hyatt  <hyatt@apple.com>
1216
1217         Fix for bug 7841, tables, table rows, and table row groups should
1218         all support overflow:hidden.
1219
1220         Reviewed by eric
1221
1222         * css/cssstyleselector.cpp:
1223         (WebCore::CSSStyleSelector::adjustRenderStyle):
1224         * rendering/RenderTable.cpp:
1225         (WebCore::RenderTable::layout):
1226         (WebCore::RenderTable::paint):
1227         (WebCore::RenderTable::getOverflowClipRect):
1228         * rendering/RenderTable.h:
1229         * rendering/RenderTableCol.h:
1230         (WebCore::RenderTableCol::requiresLayer):
1231         * rendering/RenderTableRow.h:
1232         (WebCore::RenderTableRow::requiresLayer):
1233         * rendering/render_box.cpp:
1234         (WebCore::RenderBox::setStyle):
1235         * rendering/render_layer.cpp:
1236         (WebCore::RenderLayer::paintLayer):
1237
1238 2006-03-17  Alice Liu  <alice.liu@apple.com>
1239
1240         Reviewed by Hyatt.
1241
1242         - fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=6999
1243           "Dynamically added link-tag disables the use of change styles 
1244            dynamically"
1245
1246         * khtml/html/html_headimpl.cpp:
1247         (WebCore::HTMLLinkElementImpl::process):
1248         - dynamically added link-tags for stylesheets were messing up the
1249           counting of pending stylesheets.  If a head link element 
1250           specifies a new stylesheet but the previously specified 
1251           stylesheet is still loading, tell the document that stylesheets 
1252           are loaded so that there are no remaining requests for it to be 
1253           loaded.
1254
1255 2006-03-17  Geoffrey Garen  <ggaren@apple.com>
1256
1257         Reviewed by Darin.
1258
1259         - Fixed some crashes in event dispatch and settled the question of 
1260         when getDocument() can return NULL, removing superfluous NULL checks.
1261
1262         I promise to check in a test case soon, but I need to land this before
1263         the global rename happens, and I left the test file on my other machine.
1264
1265         Here's what I did:
1266
1267         (1) Removed NULL checks for getDocument() in cases where we know it
1268         should not return NULL (which turned out to be all but one). Replaced 
1269         with ASSERT inside getDocument(). Tested to ensure there was no 
1270         regression @ albertsons.com.
1271
1272         (2) Added the EventTargetNode class, which represents Nodes that
1273         implement the DOM EventTarget interface. Discussed this design with
1274         Maciej and Hyatt. The previous dsign -- assuming that all Nodes were 
1275         EventTargets -- made it possible to crash WebKit by, for example, 
1276         dispatching a mouse event to a documentType node that was not 
1277         associated with a document.
1278
1279         (3) Reflected (2) into the JS bindings and touched JSDOMCore.cpp to 
1280         force a re-build.
1281
1282         (4) Using classInfo checking, strengthened type constraints on 
1283         JavaScript method dispatch so that you can't finagle JavaScript into, 
1284         for example, invoking a document-dependent method belonging to a
1285         node type that's guaranteed to have a document on a node type that may
1286         not have one. 
1287
1288         (5) Pushed some IE-specific JS bindings that depend on a node having a 
1289         document down from DOMNode to DOMElement. (An element always has a 
1290         document.) Tested that Firefox's behavior matched. Confirmed with MSDN.
1291
1292         (6) Updated Objc bindigns to throw an exception if you try to use
1293         the event interface on a node that doesn't support it. Discussed this
1294         design with Maciej and TimH.
1295
1296         (7) Consolidated repeated documentElement-finding code in the Position 
1297         class into the Position::documentElement() method. Did the same for
1298         repeated top-level document finding and DocumentImpl::topDocument().
1299         
1300         * WebCore+SVG/KDOMHeaders.h:
1301         * WebCore.xcodeproj/project.pbxproj:
1302         * bindings/js/JSDOMCore.cpp:
1303         * bindings/objc/DOM.mm:
1304         (-[DOMNode addEventListener:::]):
1305         (-[DOMNode removeEventListener:::]):
1306         (-[DOMNode dispatchEvent:]):
1307         (-[DOMNode KJS::Bindings::]):
1308         * bridge/mac/MacFrame.mm:
1309         (WebCore::MacFrame::keyEvent):
1310         (WebCore::MacFrame::dispatchCPPEvent):
1311         * bridge/mac/WebCoreFrameBridge.mm:
1312         (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]):
1313         (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]):
1314         * css/css_base.cpp:
1315         (WebCore::StyleBaseImpl::baseURL):
1316         * css/css_computedstyle.cpp:
1317         (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
1318         * css/css_valueimpl.cpp:
1319         (WebCore::CSSMutableStyleDeclarationImpl::removeProperty):
1320         (WebCore::CSSMutableStyleDeclarationImpl::setProperty):
1321         * css/cssstyleselector.cpp:
1322         (WebCore::CSSStyleSelector::applyProperty):
1323         * dom/Attr.idl:
1324         * dom/CharacterData.idl:
1325         * dom/CharacterDataImpl.cpp:
1326         (WebCore::CharacterDataImpl::CharacterDataImpl):
1327         (WebCore::CharacterDataImpl::rendererIsNeeded):
1328         (WebCore::CharacterDataImpl::dump):
1329         * dom/CharacterDataImpl.h:
1330         * dom/ContainerNodeImpl.cpp:
1331         (WebCore::ContainerNodeImpl::ContainerNodeImpl):
1332         (WebCore::ContainerNodeImpl::removeChild):
1333         (WebCore::ContainerNodeImpl::attach):
1334         (WebCore::ContainerNodeImpl::detach):
1335         (WebCore::ContainerNodeImpl::insertedIntoDocument):
1336         (WebCore::ContainerNodeImpl::removedFromDocument):
1337         (WebCore::ContainerNodeImpl::insertedIntoTree):
1338         (WebCore::ContainerNodeImpl::removedFromTree):
1339         (WebCore::ContainerNodeImpl::setFocus):
1340         (WebCore::ContainerNodeImpl::setActive):
1341         (WebCore::ContainerNodeImpl::setHovered):
1342         (WebCore::dispatchChildInsertionEvents):
1343         (WebCore::dispatchChildRemovalEvents):
1344         * dom/ContainerNodeImpl.h:
1345         * dom/DOMImplementationImpl.cpp:
1346         (WebCore::DOMImplementationImpl::createDocument):
1347         * dom/DocumentImpl.cpp:
1348         (WebCore::DocumentImpl::removeAllEventListenersFromAllNodes):
1349         (WebCore::DocumentImpl::removeAllDisconnectedNodeEventListeners):
1350         (WebCore::DocumentImpl::getAccObjectCache):
1351         (WebCore::DocumentImpl::setFocusNode):
1352         (WebCore::DocumentImpl::topDocument):
1353         * dom/Element.idl:
1354         * dom/EventTargetNodeImpl.cpp: Added.
1355         (WebCore::EventTargetNodeImpl::EventTargetNodeImpl):
1356         (WebCore::EventTargetNodeImpl::~EventTargetNodeImpl):
1357         (WebCore::EventTargetNodeImpl::insertedIntoDocument):
1358         (WebCore::EventTargetNodeImpl::removedFromDocument):
1359         (WebCore::EventTargetNodeImpl::addEventListener):
1360         (WebCore::EventTargetNodeImpl::removeEventListener):
1361         (WebCore::EventTargetNodeImpl::removeAllEventListeners):
1362         (WebCore::EventTargetNodeImpl::handleLocalEvents):
1363         (WebCore::EventTargetNodeImpl::dispatchGenericEvent):
1364         (WebCore::EventTargetNodeImpl::dispatchEvent):
1365         (WebCore::EventTargetNodeImpl::dispatchSubtreeModifiedEvent):
1366         (WebCore::EventTargetNodeImpl::dispatchWindowEvent):
1367         (WebCore::EventTargetNodeImpl::dispatchUIEvent):
1368         (WebCore::EventTargetNodeImpl::dispatchKeyEvent):
1369         (WebCore::EventTargetNodeImpl::dispatchMouseEvent):
1370         (WebCore::EventTargetNodeImpl::dispatchSimulatedMouseEvent):
1371         (WebCore::EventTargetNodeImpl::dispatchWheelEvent):
1372         (WebCore::EventTargetNodeImpl::dispatchHTMLEvent):
1373         (WebCore::EventTargetNodeImpl::removeHTMLEventListener):
1374         (WebCore::EventTargetNodeImpl::setHTMLEventListener):
1375         (WebCore::EventTargetNodeImpl::getHTMLEventListener):
1376         (WebCore::EventTargetNodeImpl::disabled):
1377         (WebCore::EventTargetNodeImpl::defaultEventHandler):
1378         (WebCore::EventTargetNodeImpl::dump):
1379         * dom/EventTargetNodeImpl.h: Added.
1380         (WebCore::EventTargetNodeImpl::isEventTargetNode):
1381         (WebCore::EventTargetNodeImpl::preDispatchEventHandler):
1382         (WebCore::EventTargetNodeImpl::postDispatchEventHandler):
1383         (WebCore::EventTarget):
1384         (WebCore::forbidEventDispatch):
1385         (WebCore::allowEventDispatch):
1386         (WebCore::eventDispatchForbidden):
1387         * dom/NodeImpl.cpp:
1388         (WebCore::NodeImpl::NodeImpl):
1389         (WebCore::NodeImpl::~NodeImpl):
1390         (WebCore::NodeImpl::dump):
1391         (WebCore::NodeImpl::detach):
1392         (WebCore::NodeImpl::insertedIntoDocument):
1393         (WebCore::NodeImpl::removedFromDocument):
1394         * dom/NodeImpl.h:
1395         (WebCore::NodeImpl::isEventTargetNode):
1396         (WebCore::NodeImpl::isLink):
1397         (WebCore::NodeImpl::getDocument):
1398         (WebCore::NodeImpl::inDocument):
1399         * dom/dom2_eventsimpl.cpp:
1400         (WebCore::MouseRelatedEventImpl::receivedTarget):
1401         * dom/dom2_rangeimpl.cpp:
1402         (WebCore::RangeImpl::commonAncestorContainer):
1403         * dom/dom_elementimpl.cpp:
1404         (WebCore::inHTMLDocument):
1405         (WebCore::ElementImpl::focus):
1406         (WebCore::ElementImpl::blur):
1407         (WebCore::StyledElementImpl::parseMappedAttribute):
1408         * dom/dom_position.cpp:
1409         (WebCore::Position::documentElement):
1410         * dom/dom_position.h:
1411         * editing/ReplaceSelectionCommand.cpp:
1412         (WebCore::computeAndStoreNodeDesiredStyle):
1413         * editing/SelectionController.cpp:
1414         (WebCore::SelectionController::needsCaretRepaint):
1415         * editing/visible_units.cpp:
1416         (WebCore::previousBoundary):
1417         (WebCore::nextBoundary):
1418         (WebCore::previousLinePosition):
1419         (WebCore::nextLinePosition):
1420         (WebCore::startOfDocument):
1421         (WebCore::endOfDocument):
1422         * khtml/ecma/kjs_dom.cpp:
1423         (KJS::DOMNode::mark):
1424         (KJS::DOMNode::getValueProperty):
1425         (KJS::DOMNode::putValueProperty):
1426         (KJS::DOMNodeProtoFunc::callAsFunction):
1427         (KJS::DOMEventTargetNode::DOMEventTargetNode):
1428         (KJS::DOMEventTargetNode::getOwnPropertySlot):
1429         (KJS::DOMEventTargetNode::getValueProperty):
1430         (KJS::DOMEventTargetNode::put):
1431         (KJS::DOMEventTargetNode::putValueProperty):
1432         (KJS::DOMEventTargetNode::setListener):
1433         (KJS::DOMEventTargetNode::getListener):
1434         (KJS::DOMEventTargetNode::pushEventHandlerScope):
1435         (KJS::DOMEventTargetNodeProtoFunc::callAsFunction):
1436         (KJS::):
1437         (KJS::DOMDocument::DOMDocument):
1438         (KJS::DOMDocument::getOwnPropertySlot):
1439         (KJS::DOMDocument::put):
1440         (KJS::DOMDocument::putValueProperty):
1441         (KJS::DOMDocumentProtoFunc::callAsFunction):
1442         (KJS::DOMElement::DOMElement):
1443         (KJS::DOMElement::getValueProperty):
1444         (KJS::DOMElement::put):
1445         (KJS::DOMElement::putValueProperty):
1446         (KJS::DOMElement::getOwnPropertySlot):
1447         (KJS::DOMElementProtoFunc::callAsFunction):
1448         (KJS::checkNodeSecurity):
1449         * khtml/ecma/kjs_dom.h:
1450         (KJS::DOMNode::):
1451         (KJS::DOMEventTargetNode::):
1452         (KJS::DOMElement::):
1453         * khtml/ecma/kjs_events.cpp:
1454         (KJS::JSLazyEventListener::parseCode):
1455         (KJS::getNodeEventListener):
1456         * khtml/ecma/kjs_html.cpp:
1457         (KJS::HTMLElement::bodyGetter):
1458         (KJS::HTMLElement::anchorGetter):
1459         (KJS::HTMLElement::getValueProperty):
1460         (KJS::HTMLElement::bodySetter):
1461         * khtml/ecma/kjs_views.cpp:
1462         (KJS::DOMAbstractViewProtoFunc::callAsFunction):
1463         * khtml/html/HTMLFormElementImpl.cpp:
1464         (WebCore::HTMLFormElementImpl::registerFormElement):
1465         (WebCore::HTMLFormElementImpl::removeFormElement):
1466         * khtml/html/HTMLGenericFormElementImpl.cpp:
1467         (WebCore::HTMLGenericFormElementImpl::insertedIntoTree):
1468         * khtml/html/HTMLInputElementImpl.cpp:
1469         (WebCore::HTMLInputElementImpl::~HTMLInputElementImpl):
1470         (WebCore::HTMLInputElementImpl::focus):
1471         * khtml/html/HTMLOptionElementImpl.cpp:
1472         (WebCore::HTMLOptionElementImpl::text):
1473         * khtml/html/HTMLSelectElementImpl.cpp:
1474         (WebCore::HTMLSelectElementImpl::~HTMLSelectElementImpl):
1475         * khtml/html/HTMLTextAreaElementImpl.cpp:
1476         (WebCore::HTMLTextAreaElementImpl::~HTMLTextAreaElementImpl):
1477         * khtml/html/html_baseimpl.cpp:
1478         (WebCore::HTMLBodyElementImpl::insertedIntoDocument):
1479         (WebCore::HTMLFrameElementImpl::isURLAllowed):
1480         (WebCore::HTMLFrameElementImpl::openURL):
1481         (WebCore::HTMLFrameElementImpl::frameWidth):
1482         (WebCore::HTMLFrameElementImpl::frameHeight):
1483         * khtml/html/html_imageimpl.cpp:
1484         (WebCore::HTMLImageLoader::~HTMLImageLoader):
1485         (WebCore::HTMLImageLoader::updateFromElement):
1486         (WebCore::HTMLImageLoader::notifyFinished):
1487         (WebCore::HTMLImageElementImpl::width):
1488         (WebCore::HTMLImageElementImpl::height):
1489         (WebCore::HTMLMapElementImpl::~HTMLMapElementImpl):
1490         * khtml/html/html_inlineimpl.cpp:
1491         (WebCore::HTMLAnchorElementImpl::defaultEventHandler):
1492         * khtml/html/htmltokenizer.cpp:
1493         (WebCore::HTMLTokenizer::notifyFinished):
1494         * ksvg2/svg/SVGAnimateColorElementImpl.cpp:
1495         (SVGAnimateColorElementImpl::handleTimerEvent):
1496         * ksvg2/svg/SVGAnimateElementImpl.cpp:
1497         (SVGAnimateElementImpl::handleTimerEvent):
1498         * ksvg2/svg/SVGAnimateTransformElementImpl.cpp:
1499         (SVGAnimateTransformElementImpl::handleTimerEvent):
1500         * ksvg2/svg/SVGAnimationElementImpl.cpp:
1501         (SVGAnimationElementImpl::closeRenderer):
1502         * ksvg2/svg/SVGDOMImplementationImpl.cpp:
1503         * ksvg2/svg/SVGDocumentImpl.cpp:
1504         (WebCore::SVGDocumentImpl::dispatchRecursiveEvent):
1505         * ksvg2/svg/SVGDocumentImpl.h:
1506         * ksvg2/svg/SVGImageElementImpl.cpp:
1507         * ksvg2/svg/SVGSetElementImpl.cpp:
1508         (SVGSetElementImpl::handleTimerEvent):
1509         * kwq/KWQAccObject.mm:
1510         (-[KWQAccObject mouseButtonListener]):
1511         (-[KWQAccObject accessibilityPerformAction:]):
1512         * kwq/KWQTextArea.mm:
1513         (-[KWQTextAreaTextView dispatchHTMLEvent:]):
1514         * page/Frame.cpp:
1515         (WebCore::dispatchKHTMLEditableContentChanged):
1516         * page/FrameView.cpp:
1517         (WebCore::FrameView::dispatchDragEvent):
1518         (WebCore::FrameView::dispatchMouseEvent):
1519         (WebCore::FrameView::viewportWheelEvent):
1520         * rendering/render_layer.cpp:
1521         (WebCore::RenderLayer::scrollToOffset):
1522         * rendering/render_object.cpp:
1523         (WebCore::RenderObject::shouldSelect):
1524         (WebCore::RenderObject::backslashAsCurrencySymbol):
1525         * rendering/render_replaced.cpp:
1526         (WebCore::RenderWidget::sendConsumedMouseUp):
1527
1528 2006-03-17  David Hyatt  <hyatt@apple.com>
1529
1530         Fix for 7837, make opacity work with table rows.  Make transparent backgrounds
1531         stack properly in cells (so that the layers behind can show through like they
1532         should).
1533
1534         Reviewed by beth
1535
1536         * rendering/RenderTableCell.cpp:
1537         (WebCore::RenderTableCell::requiresLayer):
1538         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
1539         (WebCore::RenderTableCell::paintBoxDecorations):
1540         * rendering/RenderTableCell.h:
1541         * rendering/RenderTableRow.cpp:
1542         (WebCore::RenderTableRow::paint):
1543         * rendering/RenderTableRow.h:
1544         (WebCore::RenderTableRow::requiresLayer):
1545         * rendering/RenderTableSection.cpp:
1546         (WebCore::RenderTableSection::paint):
1547         * rendering/render_layer.cpp:
1548         (WebCore::RenderLayer::updateLayerPosition):
1549         (WebCore::RenderLayer::isTransparent):
1550         (WebCore::RenderLayer::transparentAncestor):
1551         (WebCore::RenderLayer::beginTransparencyLayers):
1552         (WebCore::RenderLayer::paintLayer):
1553         (WebCore::RenderLayer::absoluteBoundingBox):
1554         * rendering/render_object.cpp:
1555         (WebCore::RenderObject::requiresLayer):
1556         * rendering/render_object.h:
1557         (WebCore::RenderObject::isTransparent):
1558         (WebCore::RenderObject::opacity):
1559
1560 2006-03-17  Maciej Stachowiak  <mjs@apple.com>
1561
1562         Reviewed by Adele.
1563
1564         - clean up ResourceRequest to be closer to a proper request interface
1565
1566         * page/ResourceRequest.h: folded URL into ResourceRequest, other cleanup
1567         (WebCore::ResourceRequest::ResourceRequest): Add new explicit constructor
1568         that takes a KURL.
1569         (WebCore::ResourceRequest::url): getter for KURL
1570         (WebCore::ResourceRequest::setURL): corresponding setter
1571         (WebCore::ResourceRequest::referrer): new getter for referrer, instead
1572         of storing it in m_metaData (it was the only remaining real use of it)
1573         (WebCore::ResourceRequest::setReferrer): corresponding setter
1574         * bridge/BrowserExtension.h: 
1575         - removed unused openURLRequest and openURLNotify methods
1576         - folded KURL parameter into ResourceRequest
1577         * bridge/mac/BrowserExtensionMac.h: remove KURL args from methods that
1578         also take a ResourceRequest
1579         * bridge/mac/BrowserExtensionMac.mm:
1580         (WebCore::BrowserExtensionMac::createNewWindow): adjust for ResourceRequest
1581         changes.
1582         * bridge/mac/MacFrame.h: remove KURL args from methods that also take a
1583         ResourceRequest
1584         * bridge/mac/MacFrame.mm:
1585         (WebCore::MacFrame::openURLRequest): adjust for ResourceRequest changes
1586         (WebCore::MacFrame::submitForm): ditto
1587         (WebCore::MacFrame::urlSelected): ditto
1588         * bridge/mac/WebCoreFrameBridge.mm:
1589         (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): 
1590         adjust for ResourceRequest changes
1591         * bridge/win/BrowserExtensionWin.h:
1592         * khtml/ecma/kjs_window.cpp:
1593         (KJS::createNewWindow): adjust for ResourceRequest changes
1594         (KJS::WindowFunc::callAsFunction): ditto
1595         * page/Frame.cpp:
1596         (WebCore::Frame::didOpenURL): adjust for ResourceRequest changes
1597         (WebCore::Frame::receivedFirstData): ditto
1598         (WebCore::Frame::begin): ditto
1599         (WebCore::Frame::completeURL): ditto
1600         (WebCore::Frame::changeLocation): ditto
1601         (WebCore::Frame::urlSelected): ditto
1602         (WebCore::Frame::requestFrame): ditto
1603         (WebCore::Frame::submitForm): ditto
1604         * page/Frame.h:
1605         * platform/win/TemporaryLinkStubs.cpp:
1606         (BrowserExtensionWin::createNewWindow): ditto
1607
1608 2006-03-17  Adele Peterson  <adele@apple.com>
1609
1610         Reviewed by Tim H.
1611
1612         Make default backgrounds for new text fields white
1613         instead of transparent.  This will move to html4.css
1614         when we flip the switch.
1615
1616         Test added:
1617         * fast/forms/input-appearance-default-bkcolor.html
1618
1619         * rendering/render_theme_mac.mm:
1620         (WebCore::RenderThemeMac::adjustTextFieldStyle):
1621
1622 2006-03-17  David Hyatt  <hyatt@apple.com>
1623
1624         Make table sections and table captions support opacity.
1625
1626         Reviewed by darin
1627
1628         Covered by some of the new Mozilla table tests.
1629
1630         * rendering/RenderTable.cpp:
1631         (WebCore::RenderTable::paint):
1632
1633 2006-03-17  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1634
1635         Reviewed by Maciej, landed by Beth.
1636
1637         fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3560
1638         page with use of first-letter crashes reproducibly in 
1639         RenderObject::renderArena()
1640
1641         * rendering/RenderBlock.cpp:
1642         (WebCore::RenderBlock::updateFirstLetter): Pass the first-leter 
1643         renderer to the remaining text fragment.
1644         * rendering/RenderContainer.cpp:
1645         (WebCore::RenderContainer::destroyLeftoverChildren): Do not destroy 
1646         first-letter renderers since they are destroyed by their remaining 
1647         text now.
1648         * rendering/RenderTextFragment.cpp:
1649         (khtml::RenderTextFragment::RenderTextFragment):
1650         (khtml::RenderTextFragment::destroy): Destroy the first-letter 
1651         renderer.
1652         * rendering/RenderTextFragment.h:
1653         (khtml::RenderTextFragment::firstLetter):
1654
1655 2006-03-17  Adele Peterson  <adele@apple.com>
1656
1657         Reviewed by Eric.
1658
1659         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7798 
1660         New text fields are much wider than they should be for a specified size
1661
1662         I changed the character we use to calculate the width from "w" back to "0", 
1663         which matches our old behavior.  The original change was intentional, to try
1664         to better match other browsers, but "w" is a little too wide.  For now, lets
1665         go back to the old behavior.
1666
1667         I also set the minWidth = maxWidth.  We were trying to match a WinIE quirk,
1668         but that caused some odd behavior with growth of the text field in table cells.
1669
1670         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::calcMinMaxWidth):
1671
1672 2006-03-17  Eric Seidel  <eseidel@apple.com>
1673
1674         Reviewed by adele.
1675
1676         Fix win32 build.
1677         Add PageWin class.
1678         Add previously forgotten KeyEventWin class.
1679         Pass MouseEvent() instead of 0 in a couple places to make compiler happy.
1680
1681         * WebCore.vcproj/WebCore/WebCore.vcproj:
1682         * bridge/win/BrowserExtensionWin.h:
1683         * bridge/win/FrameWin.cpp:
1684         (WebCore::FrameWin::urlSelected):
1685         (WebCore::FrameWin::keyPress):
1686         * bridge/win/FrameWin.h:
1687         * bridge/win/PageWin.cpp: Added.
1688         (WebCore::rootWindowForFrame):
1689         (WebCore::Page::windowRect):
1690         (WebCore::Page::setWindowRect):
1691         * page/FrameView.cpp:
1692         (WebCore::FrameView::updateDragAndDrop):
1693         (WebCore::FrameView::hoverTimerFired):
1694         * page/Page.h:
1695         (WebCore::Page::mainFrame):
1696         * platform/win/KeyEventWin.cpp: Added.
1697         (WebCore::KeyEvent::KeyEvent):
1698         * platform/win/TemporaryLinkStubs.cpp:
1699         (WebCore::findNextWordFromIndex):
1700         (FrameWin::passMouseDownEventToWidget):
1701         (FrameWin::scheduleClose):
1702         (BrowserExtensionWin::createNewWindow):
1703         (WebCore::findWordBoundary):
1704         (FrameWin::registerCommandForUndo):
1705         (FrameWin::markMisspellingsInAdjacentWords):
1706         (FrameWin::respondToChangedContents):
1707
1708 2006-03-17  David Hyatt  <hyatt@apple.com>
1709
1710         Fix pixel test regression in fast/table/overflowHidden.html.  There was
1711         a borderTopExtra error made in the new boundingBox code for layers that
1712         caused the bottom half of cells with opacity set to be clipped out.
1713
1714         Reviewed by andersca
1715
1716         * rendering/render_layer.cpp:
1717         (WebCore::RenderLayer::absoluteBoundingBox):
1718
1719 2006-03-17  David Hyatt  <hyatt@apple.com>
1720
1721         Give table rows and sections accurate dimensions.  Fix absolutePosition
1722         to work for table cells properly.  Add an absolutePositionForContent method
1723         to make sure callers that want to deal with the content of a cell handle
1724         the cell's extra space correctly.
1725
1726         Reviewed by darin
1727
1728         Existing layout tests cover this change.
1729
1730         * bridge/mac/WebCoreFrameBridge.mm:
1731         (-[WebCoreFrameBridge copyRenderNode:copier:]):
1732         * dom/ContainerNodeImpl.cpp:
1733         (WebCore::ContainerNodeImpl::getUpperLeftCorner):
1734         (WebCore::ContainerNodeImpl::getLowerRightCorner):
1735         * dom/NodeImpl.cpp:
1736         (WebCore::NodeImpl::getRect):
1737         * editing/SelectionController.cpp:
1738         (WebCore::SelectionController::layout):
1739         (WebCore::SelectionController::caretRect):
1740         * editing/visible_units.cpp:
1741         (WebCore::previousLinePosition):
1742         (WebCore::nextLinePosition):
1743         * khtml/html/HTMLInputElementImpl.cpp:
1744         (WebCore::HTMLInputElementImpl::defaultEventHandler):
1745         * kwq/KWQRenderTreeDebug.cpp:
1746         (operator<<):
1747         * rendering/RenderBlock.cpp:
1748         (WebCore::RenderBlock::selectionGapRects):
1749         (WebCore::RenderBlock::positionForCoordinates):
1750         * rendering/RenderContainer.cpp:
1751         (WebCore::RenderContainer::positionForCoordinates):
1752         (WebCore::RenderContainer::lineBoxRects):
1753         * rendering/RenderTableCell.cpp:
1754         (WebCore::RenderTableCell::computeAbsoluteRepaintRect):
1755         (WebCore::RenderTableCell::absolutePosition):
1756         * rendering/RenderTableRow.cpp:
1757         (WebCore::RenderTableRow::addChild):
1758         (WebCore::RenderTableRow::getAbsoluteRepaintRect):
1759         (WebCore::RenderTableRow::nodeAtPoint):
1760         * rendering/RenderTableRow.h:
1761         * rendering/RenderTableSection.cpp:
1762         (WebCore::RenderTableSection::ensureRows):
1763         (WebCore::RenderTableSection::addCell):
1764         (WebCore::RenderTableSection::layoutRows):
1765         (WebCore::RenderTableSection::recalcCells):
1766         (WebCore::RenderTableSection::nodeAtPoint):
1767         * rendering/RenderTableSection.h:
1768         * rendering/RenderText.cpp:
1769         (WebCore::RenderText::lineBoxRects):
1770         (WebCore::RenderText::positionForCoordinates):
1771         (WebCore::RenderText::caretRect):
1772         (WebCore::RenderText::posOfChar):
1773         (WebCore::RenderText::selectionRect):
1774         * rendering/render_box.cpp:
1775         (WebCore::RenderBox::absolutePosition):
1776         (WebCore::RenderBox::caretRect):
1777         * rendering/render_br.cpp:
1778         (WebCore::RenderBR::caretRect):
1779         * rendering/render_canvas.h:
1780         * rendering/render_flow.cpp:
1781         (WebCore::RenderFlow::caretRect):
1782         * rendering/render_frames.cpp:
1783         (WebCore::RenderPart::updateWidgetPosition):
1784         * rendering/render_layer.cpp:
1785         (WebCore::RenderLayer::updateLayerPosition):
1786         * rendering/render_object.cpp:
1787         (WebCore::RenderObject::absoluteRects):
1788         (WebCore::RenderObject::absoluteBoundingBoxRect):
1789         (WebCore::RenderObject::absolutePosition):
1790         * rendering/render_object.h:
1791         (WebCore::RenderObject::absolutePositionForContent):
1792         (WebCore::RenderObject::offsetHeight):
1793         * rendering/render_replaced.cpp:
1794         (WebCore::RenderWidget::updateWidgetPosition):
1795
1796 2006-03-17  Adele Peterson  <adele@apple.com>
1797
1798         Reviewed by Hyatt.
1799
1800         WebCore part of fix for:
1801         http://bugzilla.opendarwin.org/show_bug.cgi?id=7797 
1802         Can't set background color on new text fields
1803
1804         Bezeled NSTextFieldCells always draw a background, so instead we'll use a new 
1805         WebKitSystemInterface function to just draw the border of the cell.
1806
1807         Since the theme is drawing the border and the engine is drawing the background 
1808         (which is different from the other form controls), we have to make sure we let the 
1809         theme paint the border after the engine paints the background.
1810
1811         * platform/mac/WebCoreGraphicsBridge.h:
1812         * platform/mac/WebCoreGraphicsBridge.m:
1813         (-[WebCoreGraphicsBridge drawBezeledTextFieldCell:enabled:]):
1814         * rendering/render_box.cpp: (WebCore::RenderBox::paintBoxDecorations):
1815         * rendering/render_theme.cpp:
1816         (WebCore::RenderTheme::paint):
1817         (WebCore::RenderTheme::paintBorder):
1818         (WebCore::RenderTheme::shouldPaintBorder):
1819         * rendering/render_theme.h:
1820         * rendering/render_theme_mac.mm:
1821         (WebCore::RenderThemeMac::paintTextField):
1822         (WebCore::RenderThemeMac::setTextFieldCellState):
1823
1824 2006-03-16  Darin Adler  <darin@apple.com>
1825
1826         Reviewed by Eric.
1827
1828         - removed KWQWindowWidget
1829         - changed most event handling to use references instead of pointers
1830         - chagned PageMac to no longer be a subclass of Page
1831
1832         Yes, I know there's no detail in this ChangeLog entry.
1833         No, I don't plan to make a habit of doing things this way.
1834         Yes, this will probably break the Windows build again.
1835
1836         * WebCore.xcodeproj/project.pbxproj:
1837         * bridge/mac/BrowserExtensionMac.mm:
1838         (WebCore::BrowserExtensionMac::createNewWindow):
1839         * bridge/mac/FrameViewMac.mm:
1840         * bridge/mac/MacFrame.h:
1841         * bridge/mac/MacFrame.mm:
1842         (WebCore::MacFrame::MacFrame):
1843         (WebCore::MacFrame::~MacFrame):
1844         (WebCore::MacFrame::wheelEvent):
1845         (WebCore::MacFrame::keyEvent):
1846         (WebCore::MacFrame::khtmlMousePressEvent):
1847         (WebCore::MacFrame::khtmlMouseMoveEvent):
1848         (WebCore::MacFrame::khtmlMouseReleaseEvent):
1849         (WebCore::MacFrame::mouseDown):
1850         (WebCore::MacFrame::mouseDragged):
1851         (WebCore::MacFrame::mouseUp):
1852         (WebCore::MacFrame::mouseMoved):
1853         (WebCore::MacFrame::sendContextMenuEvent):
1854         (WebCore::MacFrame::setBridge):
1855         (WebCore::MacFrame::dragSourceMovedTo):
1856         (WebCore::MacFrame::dragSourceEndedAt):
1857         (WebCore::MacFrame::dispatchDragSrcEvent):
1858         * bridge/mac/PageMac.h: Removed.
1859         * bridge/mac/PageMac.mm: Added.
1860         (WebCore::Page::Page):
1861         (WebCore::Page::windowRect):
1862         (WebCore::Page::setWindowRect):
1863         * bridge/mac/WebCoreFrameBridge.h:
1864         * bridge/mac/WebCoreFrameBridge.mm:
1865         (-[WebCoreFrameBridge page]):
1866         (-[WebCoreFrameBridge initializeSettings:]):
1867         (globalPoint):
1868         (createMouseEventFromDraggingInfo):
1869         (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
1870         (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
1871         (-[WebCoreFrameBridge concludeDragForDraggingInfo:]):
1872         (-[WebCoreFrameBridge dragSourceMovedTo:]):
1873         (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
1874         * bridge/mac/WebCoreFrameNamespaces.mm:
1875         (WebCore::):
1876         * bridge/mac/WebCorePageBridge.h:
1877         * bridge/mac/WebCorePageBridge.mm:
1878         (-[WebCorePageBridge init]):
1879         * dom/DocumentImpl.cpp:
1880         (WebCore::DocumentImpl::prepareMouseEvent):
1881         (WebCore::DocumentImpl::defaultEventHandler):
1882         * dom/DocumentImpl.h:
1883         * dom/NodeImpl.cpp:
1884         (WebCore::NodeImpl::dispatchMouseEvent):
1885         (WebCore::NodeImpl::dispatchKeyEvent):
1886         (WebCore::NodeImpl::dispatchWheelEvent):
1887         * dom/NodeImpl.h:
1888         * dom/dom2_eventsimpl.cpp:
1889         (WebCore::KeyboardEventImpl::KeyboardEventImpl):
1890         * dom/dom2_eventsimpl.h:
1891         (WebCore::KeyboardEventImpl::keyEvent):
1892         * khtml/ecma/kjs_window.cpp:
1893         (KJS::Window::getValueProperty):
1894         (KJS::WindowFunc::callAsFunction):
1895         * khtml/html/html_inlineimpl.cpp:
1896         (WebCore::HTMLAnchorElementImpl::defaultEventHandler):
1897         * ksvg2/svg/SVGDocumentImpl.cpp:
1898         * ksvg2/svg/SVGDocumentImpl.h:
1899         * kwq/KWQWindowWidget.h:
1900         * kwq/KWQWindowWidget.mm: Removed.
1901         * page/Frame.cpp:
1902         (WebCore::Frame::selectClosestWordFromMouseEvent):
1903         (WebCore::Frame::handleMousePressEventDoubleClick):
1904         (WebCore::Frame::handleMousePressEventTripleClick):
1905         (WebCore::Frame::handleMousePressEventSingleClick):
1906         (WebCore::Frame::khtmlMousePressEvent):
1907         (WebCore::Frame::handleMouseMoveEventSelection):
1908         (WebCore::Frame::khtmlMouseMoveEvent):
1909         (WebCore::Frame::khtmlMouseReleaseEvent):
1910         (WebCore::Frame::khtmlMouseDoubleClickEvent):
1911         (WebCore::Frame::passWidgetMouseDownEventToWidget):
1912         * page/Frame.h:
1913         * page/FrameView.cpp:
1914         (WebCore::FrameView::viewportMousePressEvent):
1915         (WebCore::FrameView::viewportMouseDoubleClickEvent):
1916         (WebCore::FrameView::viewportMouseMoveEvent):
1917         (WebCore::FrameView::viewportMouseReleaseEvent):
1918         (WebCore::FrameView::dispatchDragEvent):
1919         (WebCore::FrameView::updateDragAndDrop):
1920         (WebCore::FrameView::cancelDragAndDrop):
1921         (WebCore::FrameView::performDragAndDrop):
1922         (WebCore::FrameView::dispatchMouseEvent):
1923         (WebCore::FrameView::viewportWheelEvent):
1924         * page/FrameView.h:
1925         * page/MouseEventWithHitTestResults.h:
1926         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
1927         (WebCore::MouseEventWithHitTestResults::event):
1928         * page/Page.cpp:
1929         (WebCore::Page::init):
1930         * page/Page.h:
1931         (WebCore::Page::bridge):
1932         * platform/KeyEvent.h:
1933         (WebCore::KeyEvent::isAutoRepeat):
1934         * platform/MouseEvent.h:
1935         (WebCore::MouseEvent::MouseEvent):
1936         * platform/mac/KeyEventMac.mm:
1937         (WebCore::KeyEvent::KeyEvent):
1938         * platform/win/TemporaryLinkStubs.cpp:
1939         (FrameView::isFrameView):
1940         * rendering/render_form.cpp:
1941         (WebCore::RenderFormElement::clicked):
1942
1943 2006-03-16  Eric Seidel  <eseidel@apple.com>
1944
1945         Reviewed by darin.
1946
1947         Add additional hackish Font, focusring and caret code.
1948         http://bugzilla.opendarwin.org/show_bug.cgi?id=7803
1949
1950         * WebCore.vcproj/WebCore/WebCore.vcproj:
1951         * WebCore.vcproj/WebCore/build-generated-files.sh:
1952         * bindings/js/JSCanvasRenderingContext2DBase.cpp:
1953         * bridge/win/FrameWin.cpp:
1954         (WebCore::FrameWin::keyPress):
1955         * bridge/win/FrameWin.h:
1956         * html/CanvasRenderingContext2D.h:
1957         * platform/IntSize.h:
1958         * platform/KeyEvent.h:
1959         * platform/cairo/GraphicsContextCairo.cpp:
1960         (WebCore::GraphicsContext::drawArc):
1961         (WebCore::GraphicsContext::drawFocusRing):
1962         * platform/win/FontWin.cpp:
1963         (WebCore::hackishExtentForString):
1964         (WebCore::Font::floatWidth):
1965         (WebCore::convertRange):
1966         (WebCore::Font::drawText):
1967         (WebCore::Font::drawHighlightForText):
1968         (WebCore::Font::selectionRectForText):
1969         (WebCore::Font::checkSelectionPoint):
1970         (WebCore::Font::drawLineForText):
1971         (WebCore::Font::misspellingLineThickness):
1972         * platform/win/IntSizeWin.cpp: Added.
1973         (WebCore::IntSize::IntSize):
1974         (WebCore::IntSize::operator SIZE):
1975         * platform/win/ScrollViewWin.cpp:
1976         (WebCore::ScrollView::visibleContentRect):
1977         * platform/win/TemporaryLinkStubs.cpp:
1978         (Widget::disableFlushDrawing):
1979         (GraphicsContext::GraphicsContext):
1980         (QListBox::setSelected):
1981         (QListBox::sizeForNumberOfLines):
1982         (QListBox::isSelected):
1983         (QListBox::appendItem):
1984         (QListBox::doneAppendingItems):
1985         (FrameWin::locationbarVisible):
1986         (FrameWin::canUndo):
1987         (FrameWin::mimeTypeForFileName):
1988         (FrameWin::issueTransposeCommand):
1989         (RenderCanvasImage::setNeedsImageUpdate):
1990         (FrameWin::shouldChangeSelection):
1991         (FrameWin::respondToChangedSelection):
1992         (FrameWin::clearRecordedFormValues):
1993         (FrameWin::recordFormValue):
1994         (BrowserExtensionWin::getHistoryLength):
1995         (Widget::setIsSelected):
1996         (GraphicsContext::selectedTextBackgroundColor):
1997         (GraphicsContext::addRoundedRectClip):
1998         (QScrollBar::QScrollBar):
1999         (QScrollBar::~QScrollBar):
2000         (QScrollBar::setSteps):
2001         (QScrollBar::scroll):
2002         (QScrollBar::setValue):
2003         (QScrollBar::setKnobProportion):
2004         (QListBox::QListBox):
2005         (QListBox::~QListBox):
2006         (QListBox::setSelectionMode):
2007         (QListBox::setFont):
2008         * rendering/render_canvasimage.h:
2009
2010 2006-03-16  Maciej Stachowiak  <mjs@apple.com>
2011
2012         Reviewed by Eric.
2013
2014         - renamed URLArgs to ResourceRequest, split it into its own header
2015         - moved methods to get and set ResourceRequest to Frame
2016
2017         * WebCore.xcodeproj/project.pbxproj:
2018         * bridge/BrowserExtension.h:
2019         * bridge/mac/BrowserExtensionMac.h:
2020         * bridge/mac/BrowserExtensionMac.mm:
2021         (WebCore::BrowserExtensionMac::openURLRequest):
2022         (WebCore::BrowserExtensionMac::createNewWindow):
2023         * bridge/mac/MacFrame.h:
2024         * bridge/mac/MacFrame.mm:
2025         (WebCore::MacFrame::openURLRequest):
2026         (WebCore::MacFrame::submitForm):
2027         (WebCore::MacFrame::urlSelected):
2028         * bridge/mac/WebCoreFrameBridge.mm:
2029         (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
2030         * khtml/ecma/kjs_window.cpp:
2031         (KJS::createNewWindow):
2032         (KJS::WindowFunc::callAsFunction):
2033         * page/Frame.cpp:
2034         (WebCore::Frame::didOpenURL):
2035         (WebCore::Frame::receivedFirstData):
2036         (WebCore::Frame::setResourceRequest):
2037         (WebCore::Frame::resourceRequest):
2038         (WebCore::Frame::begin):
2039         (WebCore::Frame::changeLocation):
2040         (WebCore::Frame::urlSelected):
2041         (WebCore::Frame::requestFrame):
2042         (WebCore::Frame::submitForm):
2043         * page/Frame.h:
2044         * page/FramePrivate.h:
2045         * page/ResourceRequest.h: Added.
2046         (WebCore::ResourceRequest::ResourceRequest):
2047         (WebCore::ResourceRequest::contentType):
2048         (WebCore::ResourceRequest::setContentType):
2049         (WebCore::ResourceRequest::doPost):
2050         (WebCore::ResourceRequest::setDoPost):
2051         (WebCore::ResourceRequest::lockHistory):
2052         (WebCore::ResourceRequest::setLockHistory):
2053         (WebCore::ResourceRequest::metaData):
2054
2055 2006-03-16  Darin Adler  <darin@apple.com>
2056
2057         - need to touch one more file to fix the build
2058           (Darn the lack of dependencies for autogenerated bindings!)
2059
2060         * dom/Element.idl: Touch. (Really this time.)
2061
2062 2006-03-16  Eric Seidel  <eseidel@apple.com>
2063
2064         Reviewed by darin.
2065
2066         Pushed focus ring handling down into GraphicsContext.cpp
2067
2068         * bridge/mac/MacFrame.mm:
2069         (WebCore::MacFrame::mouseDown):
2070         * platform/GraphicsContext.cpp:
2071         (WebCore::GraphicsContext::initFocusRing):
2072         (WebCore::GraphicsContext::clearFocusRing):
2073         (WebCore::GraphicsContext::addFocusRingRect):
2074         * platform/GraphicsContext.h:
2075         * platform/mac/GraphicsContextMac.mm:
2076         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
2077         (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate):
2078         (WebCore::GraphicsContext::GraphicsContext):
2079         (WebCore::GraphicsContext::drawFocusRing):
2080         * rendering/render_flow.cpp:
2081         (WebCore::RenderFlow::addFocusRingRects):
2082         * rendering/render_object.cpp:
2083         (WebCore::RenderObject::addFocusRingRects):
2084
2085 2006-03-15  Darin Adler  <darin@apple.com>
2086
2087         Reviewed by Hyatt.
2088
2089         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7749
2090           canvas should be in DOM, not implemented in the JS bindings
2091
2092         * WebCore.xcodeproj/project.pbxproj: Added new files.
2093         Changed bindings-generation code to work on the new html directory
2094         as well as the dom one.
2095
2096         * bindings/js/JSCanvasRenderingContext2DBase.cpp: Added.
2097         * bindings/js/JSCanvasRenderingContext2DBase.h: Added.
2098         * bindings/js/JSDOMHTML.cpp: Added.
2099         * html: Added.
2100         * html/CanvasGradient.cpp: Added.
2101         * html/CanvasGradient.h: Added.
2102         * html/CanvasGradient.idl: Added.
2103         * html/CanvasPattern.cpp: Added.
2104         * html/CanvasPattern.h: Added.
2105         * html/CanvasPattern.idl: Added.
2106         * html/CanvasRenderingContext2D.cpp: Added.
2107         * html/CanvasRenderingContext2D.h: Added.
2108         * html/CanvasRenderingContext2D.idl: Added.
2109         * html/CanvasStyle.cpp: Added.
2110         * html/CanvasStyle.h: Added.
2111
2112         * bindings/js/JSDOMCore.cpp: Touched so that it will recompile.
2113         * bindings/js/JSDOMEvents.cpp: Ditto.
2114         * dom/Attr.idl: Ditto.
2115         * dom/DOMImplementation.idl: Ditto.
2116         * dom/DocumentType.idl: Ditto.
2117         * dom/MutationEvent.idl: Ditto.
2118         * dom/ProcessingInstruction.idl: Ditto.
2119         * dom/Text.idl: Ditto.
2120
2121         * khtml/ecma/kjs_binding.h: (KJS::toJS): Added. Template so that you can call
2122         toJS on a PassRefPtr as well as on a raw pointer.
2123
2124         * bindings/scripts/CodeGeneratorJS.pm: Fixed handling of a class that has only
2125         a legacy parent, no conventional parents. Added JSCanvasRenderingContext2DBase
2126         as a legacy parent, and html as a legacy module. Added CanvasRenderingContext2D,
2127         CanvasGradient, and CanvasPattern to the "waht to include". Added a special
2128         case for strings beginning with Canvas to not add an "Impl" suffix. Made the
2129         generated impl() function be a const member function. Made m_mimpl be private
2130         instead of protected. Generate a toJS function for each class. Added flaot as
2131         a type. Generate String, not DOMString. Made the HashTable const.
2132
2133         * bindings/scripts/IDLParser.pm: Fix a couple small things. I had started to
2134         try to make a missing semicolon trigger an error, but ended up giving up on
2135         that for now.
2136
2137         * khtml/html/html_canvasimpl.h:
2138         * khtml/html/html_canvasimpl.cpp:
2139         (WebCore::HTMLCanvasElementImpl::HTMLCanvasElementImpl): Set m_2DContext to 0.
2140         (WebCore::HTMLCanvasElementImpl::~HTMLCanvasElementImpl): Call detachCanvas
2141         on m_2DContext, if any.
2142         (WebCore::HTMLCanvasElementImpl::detach): Call reset on m_2DContext, if any.
2143         (WebCore::HTMLCanvasElementImpl::getContext): Added.
2144         (WebCore::HTMLCanvasElementImpl::size): Added.
2145         (WebCore::HTMLCanvasElementImpl::createPlatformImage): Added.
2146
2147         * platform/Image.h:
2148         * platform/Image.cpp: (WebCore::Image::compositeOperatorFromString):
2149         Changed to take a String instead of a const char*.
2150
2151         * khtml/html/html_imageimpl.h:
2152         * khtml/html/html_imageimpl.cpp: (WebCore::HTMLMapElementImpl::areas):
2153         Tweaked formatting. Changed to use PassRefPtr.
2154
2155         * bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]):
2156         * khtml/ecma/JSXMLHttpRequest.cpp: (KJS::JSXMLHttpRequest::getValueProperty):
2157         * khtml/ecma/XSLTProcessor.cpp: (KJS::XSLTProcessorProtoFunc::callAsFunction):
2158         * khtml/ecma/domparser.cpp: (KJS::DOMParserProtoFunc::callAsFunction):
2159         * khtml/ecma/kjs_css.cpp:
2160         (KJS::DOMCSSStyleDeclaration::getValueProperty):
2161         (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction):
2162         (KJS::toJS):
2163         (KJS::DOMStyleSheet::getValueProperty):
2164         (KJS::DOMStyleSheetList::indexGetter):
2165         (KJS::DOMStyleSheetList::nameGetter):
2166         (KJS::DOMStyleSheetListFunc::callAsFunction):
2167         (KJS::DOMCSSStyleSheet::getValueProperty):
2168         (KJS::DOMCSSRuleList::indexGetter):
2169         (KJS::DOMCSSRuleListFunc::callAsFunction):
2170         (KJS::DOMCSSRule::getValueProperty):
2171         (KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction):
2172         (KJS::DOMCSSValueList::indexGetter):
2173         (KJS::DOMCSSValueListFunc::callAsFunction):
2174         (KJS::DOMRect::getValueProperty):
2175         * khtml/ecma/kjs_css.h:
2176         * khtml/ecma/kjs_dom.cpp:
2177         (KJS::DOMNode::getValueProperty):
2178         (KJS::DOMNodeProtoFunc::callAsFunction):
2179         (KJS::DOMNodeList::indexGetter):
2180         (KJS::DOMNodeList::nameGetter):
2181         (KJS::DOMNodeList::callAsFunction):
2182         (KJS::DOMNodeListFunc::callAsFunction):
2183         (KJS::DOMDocument::getValueProperty):
2184         (KJS::DOMDocumentProtoFunc::callAsFunction):
2185         (KJS::DOMNamedNodeMap::indexGetter):
2186         (KJS::DOMNamedNodeMap::nameGetter):
2187         (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
2188         (KJS::toJS):
2189         (KJS::DOMNamedNodesCollection::indexGetter):
2190         * khtml/ecma/kjs_dom.h:
2191         * khtml/ecma/kjs_events.cpp:
2192         (KJS::JSAbstractEventListener::handleEvent):
2193         (KJS::JSLazyEventListener::parseCode):
2194         (KJS::DOMEvent::getValueProperty):
2195         (KJS::toJS):
2196         (KJS::DOMUIEvent::getValueProperty):
2197         (KJS::DOMMouseEvent::getValueProperty):
2198         * khtml/ecma/kjs_events.h:
2199         * khtml/ecma/kjs_html.cpp:
2200         (KJS::HTMLDocFunction::callAsFunction):
2201         (KJS::HTMLDocument::namedItemGetter):
2202         (KJS::HTMLDocument::getValueProperty):
2203         (KJS::HTMLDocument::put):
2204         (KJS::HTMLDocument::putValueProperty):
2205         (KJS::HTMLElement::classInfo):
2206         (KJS::HTMLElement::formIndexGetter):
2207         (KJS::HTMLElement::selectIndexGetter):
2208         (KJS::HTMLElement::implementsCall):
2209         (KJS::HTMLElement::callAsFunction):
2210         (KJS::HTMLElement::linkGetter):
2211         (KJS::HTMLElement::isIndexGetter):
2212         (KJS::HTMLElement::styleGetter):
2213         (KJS::HTMLElement::selectGetter):
2214         (KJS::HTMLElement::optionGetter):
2215         (KJS::HTMLElement::inputGetter):
2216         (KJS::HTMLElement::textAreaGetter):
2217         (KJS::HTMLElement::buttonGetter):
2218         (KJS::HTMLElement::labelGetter):
2219         (KJS::HTMLElement::fieldSetGetter):
2220         (KJS::HTMLElement::legendGetter):
2221         (KJS::HTMLElement::objectGetter):
2222         (KJS::HTMLElement::tableGetter):
2223         (KJS::HTMLElement::frameGetter):
2224         (KJS::HTMLElement::iFrameGetter):
2225         (KJS::HTMLElement::getValueProperty):
2226         (KJS::HTMLElement::toString):
2227         (KJS::HTMLElement::pushEventHandlerScope):
2228         (KJS::toJS):
2229         (KJS::HTMLElementFunction::callAsFunction):
2230         (KJS::HTMLElement::put):
2231         (KJS::HTMLCollection::indexGetter):
2232         (KJS::HTMLCollection::callAsFunction):
2233         (KJS::HTMLCollection::getNamedItems):
2234         (KJS::HTMLCollectionProtoFunc::callAsFunction):
2235         (KJS::HTMLSelectCollection::put):
2236         (KJS::OptionConstructorImp::construct):
2237         (KJS::ImageConstructorImp::construct):
2238         * khtml/ecma/kjs_html.h:
2239         * khtml/ecma/kjs_proxy.cpp: (WebCore::KJSProxyImpl::evaluate):
2240         * khtml/ecma/kjs_range.cpp:
2241         (KJS::DOMRange::getValueProperty):
2242         (KJS::DOMRangeProtoFunc::callAsFunction):
2243         (KJS::toJS):
2244         * khtml/ecma/kjs_range.h:
2245         * khtml/ecma/kjs_traversal.cpp:
2246         (KJS::DOMNodeIterator::getValueProperty):
2247         (KJS::DOMNodeIteratorProtoFunc::callAsFunction):
2248         (KJS::toJS):
2249         (KJS::DOMTreeWalker::getValueProperty):
2250         (KJS::DOMTreeWalkerProtoFunc::callAsFunction):
2251         (KJS::JSNodeFilterCondition::acceptNode):
2252         * khtml/ecma/kjs_traversal.h:
2253         * khtml/ecma/kjs_views.cpp:
2254         (KJS::DOMAbstractView::getValueProperty):
2255         (KJS::DOMAbstractViewProtoFunc::callAsFunction):
2256         (KJS::toJS):
2257         * khtml/ecma/kjs_views.h:
2258         * khtml/ecma/kjs_window.cpp:
2259         (KJS::Window::getValueProperty):
2260         (KJS::Window::namedItemGetter):
2261         (KJS::Selection::getValueProperty):
2262         (KJS::SelectionFunc::callAsFunction):
2263         Rename uses and definitions of all the various converstions to JavaScript
2264         wrappers to the new common overloaded name: "toJS".
2265
2266 2006-03-15  Eric Seidel  <eseidel@apple.com>
2267
2268         Reviewed by darin.
2269
2270         Push more of MacFrame down into Frame.
2271         Add visibleContentRect method to ScrollView.
2272
2273         * bridge/mac/MacFrame.h:
2274         * bridge/mac/MacFrame.mm:
2275         (WebCore::MacFrame::imageFromRect):
2276         (WebCore::MacFrame::setDisplaysWithFocusAttributes):
2277         (WebCore::MacFrame::bodyBackgroundColor):
2278         * bridge/mac/WebCoreFrameBridge.mm:
2279         * page/Frame.cpp:
2280         (WebCore::Frame::visibleSelectionRect):
2281         (WebCore::Frame::setDisplaysWithFocusAttributes):
2282         * page/Frame.h:
2283         * platform/ScrollView.h:
2284         * platform/mac/ScrollViewMac.mm:
2285         (WebCore::ScrollView::visibleWidth):
2286         (WebCore::ScrollView::visibleHeight):
2287         (WebCore::ScrollView::visibleContentRect):
2288         (WebCore::ScrollView::contentsWidth):
2289         (WebCore::ScrollView::contentsHeight):
2290         (WebCore::ScrollView::contentsX):
2291         (WebCore::ScrollView::contentsY):
2292         (WebCore::ScrollView::scrollXOffset):
2293         (WebCore::ScrollView::scrollYOffset):
2294         (WebCore::ScrollView::inWindow):
2295
2296 2006-03-15  Eric Seidel  <eseidel@apple.com>
2297
2298         Reviewed by darin.
2299
2300         Remove unused code and clean-up style.
2301
2302         * bridge/mac/MacFrame.mm:
2303         (WebCore::MacFrame::advanceToNextMisspelling):
2304         (WebCore::MacFrame::wheelEvent):
2305         (WebCore::MacFrame::nextKeyViewInFrame):
2306         (WebCore::MacFrame::nextKeyViewInFrameHierarchy):
2307         (WebCore::MacFrame::nextKeyView):
2308         * page/Frame.cpp:
2309         * page/Frame.h:
2310         * page/FrameView.cpp:
2311         (WebCore::FrameView::dispatchMouseEvent):
2312
2313 2006-03-15  Eric Seidel  <eseidel@apple.com>
2314
2315         Reviewed by mjs.
2316
2317         http://bugzilla.opendarwin.org/show_bug.cgi?id=7790
2318         addEventListener does not work with "dblclick" event.
2319         Renamed khtmlDblclickEvent to dblclickEvent to fix.
2320
2321         Test: fast/events/dblclick-addEventListener.html
2322
2323         * WebCore.xcodeproj/project.pbxproj:
2324         * bridge/mac/MacFrame.mm:
2325         (WebCore::MacFrame::mouseUp):
2326         (WebCore::MacFrame::mouseMoved):
2327         (WebCore::MacFrame::shouldDragAutoNode):
2328         (WebCore::MacFrame::sendContextMenuEvent):
2329         * dom/EventNames.h:
2330         * dom/NodeImpl.cpp:
2331         (WebCore::NodeImpl::dispatchMouseEvent):
2332         * dom/NodeImpl.h:
2333         * khtml/ecma/kjs_binding.cpp:
2334         (KJS::ScriptInterpreter::wasRunByUserGesture):
2335         * khtml/ecma/kjs_dom.cpp:
2336         (KJS::DOMNode::getValueProperty):
2337         (KJS::DOMNode::putValueProperty):
2338         * khtml/ecma/kjs_window.cpp:
2339         (KJS::Window::getValueProperty):
2340         (KJS::Window::put):
2341         * khtml/html/HTMLElementImpl.cpp:
2342         (WebCore::HTMLElementImpl::parseMappedAttribute):
2343         * page/FrameView.cpp:
2344         (WebCore::FrameView::dispatchMouseEvent):
2345         * page/FrameView.h:
2346
2347 2006-03-16  Alexey Proskuryakov  <ap@nypop.com>
2348
2349         Reviewed by Maciej.
2350
2351         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4395
2352          REGRESSION: document.open doesn't clear the document
2353
2354         Test: fast/dom/Document/document-reopen.html
2355         Test: fast/dom/Document/doc-open-while-parsing.html
2356
2357         * dom/DocumentImpl.cpp:
2358         (WebCore::DocumentImpl::open): Only ignore open() while the frame is still loading the main resource.
2359         * page/Frame.cpp:
2360         (WebCore::Frame::isComplete): Added const specifier.
2361         (WebCore::Frame::isLoadingMainResource): New function.
2362         * page/Frame.h:
2363
2364 2006-03-15  Adele Peterson  <adele@apple.com>
2365
2366         Reviewed by Eric.
2367
2368         - Fixes win32 build.
2369
2370         * page/Frame.cpp: (WebCore::Frame::autoscrollTimerFired): Calls isMouseButtonDown instead of CG function.
2371         * platform/MouseEvent.h: Added isMouseButtonDown
2372         * platform/mac/MouseEventMac.mm: (WebCore::MouseEvent::isMouseButtonDown): Calls CG function to get state of mouse button.
2373         * platform/win/TemporaryLinkStubs.cpp: (MouseEvent::isMouseButtonDown): Added stub.
2374
2375 2006-03-15  Eric Seidel  <eseidel@apple.com>
2376
2377         Reviewed by geoff.
2378
2379         * platform/KeyEvent.h: Fix #define from QEvent_H to KeyEvent_H
2380
2381 2006-03-15  David Hyatt  <hyatt@apple.com>
2382
2383         Fix the box-sizing layout test by stopping integer overflowing from
2384         occurring in the flexbox code.
2385
2386         Reviewed by beth
2387
2388         * rendering/render_flexbox.cpp:
2389         (khtml::RenderFlexibleBox::allowedChildFlex):
2390
2391 2006-03-15  Beth Dakin  <bdakin@apple.com>
2392
2393         Reviewed by Eric
2394
2395         Fix for some leaks and intermittent broken pipes in the layout 
2396         tests after check-in for http://bugzilla.opendarwin.org/
2397         show_bug.cgi?id=4171.  
2398
2399         * platform/StringImpl.cpp:
2400         (WebCore::StringImpl::capitalize): Call deleteQCharVector() for 
2401         stringWithPrevious and make sure we don't walk off the end of 
2402         stringWithPrevious when copying to capitalizedString.
2403
2404 2006-03-15  Adele Peterson  <adele@apple.com>
2405
2406        Reviewed by Maciej.
2407
2408        Followup fix for previous checkin.
2409        http://bugzilla.opendarwin.org/show_bug.cgi?id=7114
2410        <rdar://problem/3695120> dragging to scroll doesn't work with overflow:auto/scroll/overlay areas 
2411
2412        Many of the bugs related to the Radar bug have to do with autoscrolling in the RSS View.  
2413        This fix walks the layer tree to find the first scrollable layer, so that autoscrolling will 
2414        also work with nested layers, like those in the RSS View.
2415
2416        * bridge/mac/MacFrame.mm: (WebCore::MacFrame::khtmlMouseMoveEvent):
2417
2418 2006-03-15  Adele Peterson  <adele@apple.com>
2419
2420         Reviewed by Maciej.
2421
2422         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7114
2423         Dragging to scroll doesn't work for overflow areas
2424
2425         No test case.  There doesn't appear to be a way to trigger the autoscroll with the EventSender.
2426
2427         * bridge/mac/MacFrame.mm:
2428         (WebCore::MacFrame::khtmlMouseMoveEvent):  If we have a layer that can scroll, let the layer handle its autoscroll.  
2429          Otherwise, call over the bridge to let AppKit scroll the view.
2430         (WebCore::MacFrame::khtmlMouseReleaseEvent): Stops the autoscroll timer.
2431         * page/Frame.cpp:
2432         (WebCore::Frame::khtmlMouseReleaseEvent): Stops the autoscroll timer.
2433         (WebCore::Frame::handleAutoscroll): Added. Saves the layer, and starts the timer.
2434         (WebCore::Frame::autoscrollTimerFired): Added. Calls autoscroll() on the layer.
2435         (WebCore::Frame::startAutoscrollTimer): Added.
2436         (WebCore::Frame::stopAutoscrollTimer): Added.
2437         * page/Frame.h: Added new autoscroll methods.
2438         * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Initialize m_autoscrollTimer and m_autoscrollLayer.
2439         * rendering/render_layer.cpp:
2440         (WebCore::RenderLayer::autoscroll): Calculates how much the layer should scroll, and actually scrolls.
2441         (WebCore::RenderLayer::shouldAutoscroll): If the layer has overflow then it should be able to scroll.  
2442          Except for overflow:hidden areas that aren't editable.  
2443          In the future, we may want to have a css property that indicates an overflow:hidden style that should also scroll.
2444         * rendering/render_layer.h: Added new autoscroll methods.
2445
2446 2006-03-14  Justin Garcia  <justin.garcia@apple.com>
2447
2448         Reviewed by mjs
2449         
2450         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7578>
2451         TinyMCE: Implement execCommand CreateLink
2452         
2453         Used ApplyStyleCommand so that creating a link from
2454         a selection doesn't change document structure.
2455
2456         * WebCore.xcodeproj/project.pbxproj:
2457         * editing/ApplyStyleCommand.cpp:
2458         (WebCore::ApplyStyleCommand::ApplyStyleCommand):
2459         (WebCore::ApplyStyleCommand::doApply):
2460         (WebCore::ApplyStyleCommand::removeInlineStyle):
2461         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
2462         * editing/ApplyStyleCommand.h:
2463         * editing/CompositeEditCommand.cpp:
2464         (WebCore::CompositeEditCommand::applyStyle):
2465         * editing/CreateLinkCommand.cpp: Added.
2466         (WebCore::CreateLinkCommand::CreateLinkCommand):
2467         (WebCore::CreateLinkCommand::doApply):
2468         * editing/CreateLinkCommand.h: Added.
2469         * editing/jsediting.cpp:
2470         * page/Frame.cpp:
2471         (WebCore::Frame::computeAndSetTypingStyle):
2472         (WebCore::Frame::applyStyle):
2473         (WebCore::Frame::applyParagraphStyle):
2474
2475 2006-03-14  Beth Dakin  <bdakin@apple.com>
2476
2477         Reviewed by Maciej
2478
2479         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=4171
2480         This patch changes the word-break algorithm used to apply text-
2481         transform:capitalize to use a UBreakIterator. This fixes some 
2482         existing edge cases we have in our text-transform:capitalize 
2483         support and generally makes our results more consistent.
2484
2485         * platform/StringImpl.cpp:
2486         (WebCore::getWordBreakIterator): Returns a UBreakIterator for a 
2487         given string of a given length.
2488         (WebCore::StringImpl::capitalize): Now uses the UBreakIterator to 
2489         step between words and requires the previous character as input.
2490         * platform/StringImpl.h: Change the declaration of capitalize() to 
2491         take the previous character as a parameter. 
2492         * rendering/RenderText.cpp:
2493         (WebCore::RenderText::setText): Find the previous character and 
2494         send it to StringImpl::capitalize()
2495
2496 2006-03-14  Justin Garcia  <justin.garcia@apple.com>
2497
2498         Reviewed by adele
2499         
2500         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7770>
2501         Should only dispatch the khtmlTextInsertedEvent for high level editing operations
2502
2503         Dispatching this event for low level editing operations 
2504         isn't necessary and causes a big performance regression. 
2505         Also renamed the event because it's dispatched for changes
2506         other than just text insertion.
2507
2508         * dom/EventNames.h: 
2509         * editing/EditCommand.cpp:
2510         (WebCore::EditCommand::apply):
2511         (WebCore::EditCommand::unapply):
2512         (WebCore::EditCommand::reapply):
2513         * khtml/html/HTMLTextFieldInnerElementImpl.cpp:
2514         (WebCore::HTMLTextFieldInnerElementImpl::defaultEventHandler):
2515         * page/Frame.cpp:
2516         (WebCore::dispatchKHTMLEditableContentChanged):
2517         (WebCore::Frame::appliedEditing):
2518         (WebCore::Frame::unappliedEditing):
2519         (WebCore::Frame::reappliedEditing):
2520
2521 2006-03-14  Darin Adler  <darin@apple.com>
2522
2523         Reviewed by Eric.
2524
2525         - fix <rdar://problem/4478121> -[WebCoreFrameBridge finalize] crashes under GC
2526
2527         * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge finalize]):
2528         Don't call setBridge(nil).
2529
2530 2006-03-14  Darin Adler  <darin@apple.com>
2531
2532         - oops, didn't mean to check this in
2533
2534         * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::parseMappedAttribute):
2535         Reverted nil-document check that I didn't mean to remove.
2536
2537 2006-03-14  Beth Dakin  <bdakin@apple.com>
2538
2539         Reviewed by Hyatt
2540
2541         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6796
2542         This fix prevents infinite recursion when a block with overflow: 
2543         auto can't decide if it needs scrollbars or not. This fix puts a 
2544         guard in place in updateScrollInforAfterLayout that only allows you 
2545         to re-layout if you are not currently laying out.  
2546
2547         * rendering/render_layer.cpp:
2548         (WebCore::RenderLayer::RenderLayer): Initialize 
2549         m_inOverflowRelayout to false. Fixed spacing too.
2550         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Place guard 
2551         around layout calls in overflow:auto case.
2552         * rendering/render_layer.h: Add m_inOverflowRelayout.
2553
2554 2006-03-14  Darin Adler  <darin@apple.com>
2555
2556         Reviewed by Geoff and Eric.
2557
2558         - fix <http://bugzilla.opendarwin.org/show_bug.cgi?id=7765>, <rdar://problem/4474884>
2559           hasAttribute always returns false for uppercase attribute names like "STYLE"
2560         - re-add missing JavaScript binding for getAttributeNS
2561         - fixed handling of null namespace parameters in getAttributeNS and friends
2562
2563         Test: fast/dom/Element/attribute-uppercase.html
2564
2565         To match Gecko's behavior, the magic "lowercasing" of all attribute names
2566         is only done when calling DOM Level 1 functions that lack an NS suffix.
2567         The functions with an NS suffix are case sensitive, even in HTML documents.
2568
2569         * dom/NamedNodeMapImpl.h: Changed getNamedItem and removeNamedItem to be pure virtual
2570         functions instead of calling through to getNamedItemNS and removeNamedItemNS.
2571
2572         * dom/dom_elementimpl.h: Eliminated inline versions of non-NS functions that called
2573         the NS functions. They can't work that way any more since the lowercasing behavior
2574         is different.
2575         * dom/dom_elementimpl.cpp:
2576         (WebCore::ElementImpl::getAttribute): Added. Lowercases the name if the document
2577         is an HTML document, and then calls through to the qualified name version. Removed
2578         the null check since getDocument is guaranteed to never return 0 now that nodes
2579         hold a reference to their document.
2580         (WebCore::ElementImpl::getAttributeNS): Removed the lowercasing code.
2581         (WebCore::ElementImpl::setAttribute): More of the same.
2582         (WebCore::ElementImpl::setAttributeNS): Ditto.
2583         (WebCore::ElementImpl::removeAttribute): Ditto.
2584         (WebCore::ElementImpl::removeAttributeNS): Ditto.
2585         (WebCore::ElementImpl::getAttributeNode): Ditto.
2586         (WebCore::ElementImpl::getAttributeNodeNS): Ditto.
2587         (WebCore::ElementImpl::hasAttribute): Ditto.
2588         (WebCore::ElementImpl::hasAttributeNS): Ditto.
2589         (WebCore::NamedAttrMapImpl::getNamedItem): Ditto.
2590         (WebCore::NamedAttrMapImpl::getNamedItemNS): Ditto.
2591         (WebCore::NamedAttrMapImpl::removeNamedItem): Ditto.
2592         (WebCore::NamedAttrMapImpl::removeNamedItemNS): Ditto.
2593         (WebCore::StyledElementImpl::parseMappedAttribute): Removed another unneeded null
2594         check like the one mentioned above.
2595
2596         * dom/Element.idl: Set ConvertNullToNullString for all the namespaceURI
2597         parameters, since we don't want null to turn into "null". Added a semicolon
2598         to the end of the hasAttributeNS line -- was causing the next declaration to
2599         be eaten up (so getAttributeNS was completely broken).
2600
2601         * khtml/ecma/kjs_dom.cpp: (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
2602         Call valueToStringWithNullCheck to do the equivalent of ConvertNullToNullString
2603         for both getNamedItemNS and removeNamedItemNS.
2604
2605         * bindings/js/JSDOMCore.cpp: Touched so that the changes above will take effect.
2606
2607 2006-03-14  David Hyatt  <hyatt@apple.com>
2608
2609         Fix for bug 7259, opacity performs badly.
2610
2611         Reviewed by mjs
2612
2613         Adding some tests in fast/opacity.
2614
2615         * rendering/RenderTableRow.h:
2616         (WebCore::RenderTableRow::requiresLayer):
2617         * rendering/render_layer.cpp:
2618         (WebCore::transparencyClipBox):
2619         (WebCore::RenderLayer::beginTransparencyLayers):
2620         (WebCore::RenderLayer::paintLayer):
2621         (WebCore::RenderLayer::intersectsDamageRect):
2622         (WebCore::RenderLayer::absoluteBoundingBox):
2623         * rendering/render_layer.h:
2624         (WebCore::RenderLayer::root):
2625
2626 2006-03-14  Eric Seidel  <eseidel@apple.com>
2627
2628         Reviewed by mjs.
2629
2630         Fix Gif crasher.
2631
2632         * platform/image-decoders/gif/GIFImageReader.cpp:
2633         (GIFImageReader::do_lzw): Initialize array after new.
2634
2635 2006-03-14  Eric Seidel  <eseidel@apple.com>
2636
2637         Reviewed by mjs.
2638
2639         Make MouseEvents aware of current scroll position.
2640
2641         * platform/win/ScrollViewWin.cpp:
2642         (WebCore::ScrollView::viewportToContents):
2643         (WebCore::ScrollView::contentsToViewport):
2644
2645 2006-03-13  Eric Seidel  <eseidel@apple.com>
2646
2647         Reviewed by mjs.
2648
2649         Fix mouse events to be window-relative.
2650
2651         * platform/win/MouseEventWin.cpp:
2652         (WebCore::positionForEvent):
2653         (WebCore::globalPositionForEvent):
2654         (WebCore::MouseEvent::MouseEvent):
2655
2656 2006-03-13  Eric Seidel  <eseidel@apple.com>
2657
2658         Reviewed by mjs.
2659
2660         Close DeviceContext leaks in Font code.
2661         Also add moveCursor stub to make maps.google.com not crash.
2662
2663         * platform/win/FontWin.cpp:
2664         (WebCore::getFontData):
2665         (WebCore::Font::floatWidth):
2666         (WebCore::Font::drawText):
2667         * platform/win/TemporaryLinkStubs.cpp:
2668         (Cursor::Cursor):
2669         (WebCore::moveCursor):
2670
2671 2006-03-13  Eric Seidel  <eseidel@apple.com>
2672
2673         Reviewed by ggaren & TimH.
2674
2675         <rdar://problem/4473288> XSL file containing <xsl:include href="../Styles/EscapeString.xsl" /> fails to load file
2676         XML_DTD_NODE objects in the tree were causing loadChildSheets to 
2677         fail to preload child stylesheets, this patch causes us to 
2678         correctly ignore all nodes besides the first XML_ELEMENT_NODE at 
2679         the root level when searching the tree for xsl:include statements 
2680         to pre-load.
2681
2682         Test: fast/xsl/xslt-second-level-import.xml
2683
2684         * khtml/xsl/xsl_stylesheetimpl.cpp:
2685         (WebCore::XSLStyleSheetImpl::loadChildSheets):
2686
2687 2006-03-10  Rob Buis  <buis@kde.org>
2688
2689         Reviewed by darin.  Landed by eseidel.
2690
2691         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7666:
2692         dasharray on rounded rectangles is broken
2693
2694         Make sure the rounded rectangle is drawn clockwise, as outlined
2695         in the specification.
2696
2697         Test: svg/custom/dashArrayOrigin.svg
2698
2699         * kcanvas/KCanvasCreator.cpp:
2700         (WebCore::KCanvasCreator::createRoundedRectangle):
2701
2702 2006-03-12  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2703
2704         Reviewed by Maciej, landed by ap.
2705
2706         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5923
2707           REGRESSION: scrolling on Google maps continues after the mouse is 
2708           released outside the window
2709
2710         Test: fast/events/drag-outside-window.html
2711
2712         * rendering/render_layer.cpp:
2713         (WebCore::RenderLayer::containsPoint): Always return true for the root
2714         object to ensure that mouse events occurring outside the window target
2715         the document.
2716
2717 2006-03-12  Alexey Proskuryakov  <ap@nypop.com>
2718
2719         Reviewed by Maciej.
2720
2721         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7735
2722         REGRESSION: crash on importing bookmarks
2723
2724         No test - only reproducible when Safari imports the bookmarks.
2725
2726         * dom/EventNames.cpp:
2727         (WebCore::EventNames::init): Initialize AtomicString before using it.
2728         * dom/QualifiedName.cpp:
2729         (WebCore::QualifiedName::init): Ditto.
2730         * khtml/html/htmlnames.cpp:
2731         (WebCore::HTMLNames::init): Ditto.
2732         * ksvg2/scripts/make_names.pl: Ditto.
2733
2734 2006-03-12  David Kilzer  <ddkilzer@kilzer.net>
2735
2736         Reviewed by Darin, landed by ap.
2737
2738         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7724
2739         Minor refactoring to HTMLParser::handleError() to remove duplicate code
2740
2741         Test: fast/invalid/missing-address-end-tag.html
2742         Test: fast/invalid/missing-dl-end-tag.html
2743         Test: fast/invalid/missing-dt-end-tag.html
2744         Test: fast/invalid/missing-font-end-tag.html
2745
2746         * khtml/html/htmlparser.cpp:
2747         (WebCore::HTMLParser::handleError): Refactored code.
2748
2749 2006-03-10  Darin Adler  <darin@apple.com>
2750
2751         - fix Windows build
2752
2753         * bridge/win/FrameWin.h: Removed declaration of generateFrameName.
2754
2755 2006-03-10  Darin Adler  <darin@apple.com>
2756
2757         Reviewed by Adele.
2758
2759         - removed some unused stuff from Frame and MacFrame
2760
2761         * page/Frame.h: Removed autoloadImages (the setter), enableMetaRefresh,
2762         setCharset, backgroundURL, findTextBegin, findTextNext, preloadStyleSheet,
2763         preloadScript, restored, onURL, selectionChanged, htmlError, openFile,
2764         updateActions, openURLInFrame, overURL, checkLinkSecurity, and cacheId.
2765         * page/FramePrivate.h: Removed m_restored, m_frameNameId, m_strSelectedURL,
2766         m_strSelectedURLTarget, m_bDnd, m_bClearing, m_bSecurityInQuestion,
2767         m_focusNodeRestored, m_focusNodeNumber, and m_newJSInterpreterExists.
2768         * page/Frame.cpp:
2769         (WebCore::Frame::didOpenURL): Removed use of m_restored, code to set
2770         m_bClearing.
2771         (WebCore::Frame::clear): Removed code to set m_bClearing and m_frameNameId.
2772         (WebCore::Frame::khtmlMousePressEvent): Removed code to set m_strSelectedURL
2773         and m_strSelectedURLTarget.
2774
2775         * bridge/mac/MacFrame.h: Removed scheduleHistoryNavigation and
2776         requestedURLString.
2777         * bridge/mac/MacFrame.mm:
2778         (WebCore::MacFrame::openURLFromPageCache): Removed use of m_restored.
2779         Removed unused requestedURLString.
2780
2781         * bridge/mac/WebCoreFrameBridge.h: Removed requestedURLString.
2782
2783 2006-03-10  Darin Adler  <darin@apple.com>
2784
2785         - fix Windows build
2786
2787         * page/FrameTree.cpp: Add include of <stdarg.h>.
2788
2789 2006-03-10  Darin Adler  <darin@apple.com>
2790
2791         Reviewed by Geoff.
2792
2793         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3308
2794           Pop-up blocking blocks window.open for already open windows
2795
2796         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7422
2797           Setting a frame name to the same value resets it to a generated one
2798
2799         - refactor frame-name-related functions into the FrameTree object
2800
2801         * WebCore.xcodeproj/project.pbxproj: Update for rename.
2802         * bridge/mac/MacFrame.h: Remove generateFrameName.
2803         * bridge/mac/MacFrame.mm: Ditto.
2804         * bridge/mac/PageMac.h: Added a declaration for WebCorePageBridge.
2805
2806         * bridge/mac/WebCoreFrameBridge.h: Remove _frameNamespace, generateFrameName,
2807         setFrameNamespace, frameNamespace.
2808         * bridge/mac/WebCoreFrameBridge.mm:
2809         (-[WebCoreFrameBridge childFrameNamed:]): Change to call the new child
2810         function on the FrameTree.
2811         (-[WebCoreFrameBridge findFrameNamed:]): Change to call the new find
2812         function on the FrameTree.
2813         (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:]): Change since the
2814         contentPart function has been renamed to contentFrame.
2815
2816         * bridge/mac/WebCoreFrameNamespaces.h: Removed everything except for the
2817         one method still used on the WebKit side, framesInNamespace:.
2818         * bridge/mac/WebCoreFrameNamespaces.m: Renamed.
2819         * bridge/mac/WebCoreFrameNamespaces.mm: Added. Reimplemented the
2820         framesInNamespace method to use the namespace in WebCore::Page.
2821
2822         * bridge/mac/WebCorePageBridge.h: Added setGroupName and groupName.
2823         * bridge/mac/WebCorePageBridge.mm:
2824         (-[WebCorePageBridge setGroupName:]): Added. Calls through to Page.
2825         (-[WebCorePageBridge groupName]): Ditto.
2826
2827         * khtml/ecma/kjs_html.cpp:
2828         (KJS::HTMLDocument::namedItemGetter): Changed to call contentFrame by its new name.
2829         (KJS::HTMLElement::frameGetter): Ditto.
2830         (KJS::HTMLElement::iFrameGetter): Ditto.
2831
2832         * khtml/ecma/kjs_window.cpp:
2833         (KJS::Window::getValueProperty): Changed to call FrameTree::childCount
2834         instead of Frame::frames.
2835         (KJS::Window::childFrameGetter): Changed to call FrameTree::child
2836         instead of Frame::childFrameNamed.
2837         (KJS::Window::namedFrameGetter): Changed to call FrameTree::find
2838         instead of Frame::findFrame.
2839         (KJS::Window::indexGetter): Changed to call FrameTree::child
2840         instead of Frame::frames.
2841         (KJS::Window::getOwnPropertySlot): Changed to call FrameTree::child,
2842         FrameTree::find, and FrameTree::childCount instead of Frame::childFrameNamed,
2843         and Frame::findFrame, and Frame::frames.
2844         (KJS::WindowFunc::callAsFunction): Call FrameTree::find to check if the window
2845         is already open when considering whether to block a pop-up.
2846         (KJS::FrameArray::getValueProperty): Changed to call FrameTree::childCount
2847         instead of Frame::frames.
2848         (KJS::FrameArray::indexGetter): Changed to call FrameTree::child
2849         instead of Frame::frames.
2850         (KJS::FrameArray::nameGetter): Changed to call FrameTree::child
2851         instead of Frame::findFrame.
2852         (KJS::FrameArray::getOwnPropertySlot): Changed to call FrameTree::child,
2853         and FrameTree::childCount instead of Frame::findFrame and Frame::frames.
2854
2855         * khtml/html/html_baseimpl.h:
2856         * khtml/html/html_baseimpl.cpp:
2857         (WebCore::HTMLFrameElementImpl::isURLAllowed): Changed to call Page::frameCount
2858         instead of Frame::topLevelFrameCount.
2859         (WebCore::HTMLFrameElementImpl::openURL): Changed to call FrameTree::child
2860         instead of Frame::findFrame.
2861         (WebCore::HTMLFrameElementImpl::attach): Changed to call Page::incrementFrameCount
2862         instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName
2863         instead of Frame::requestFrameName.
2864         (WebCore::HTMLFrameElementImpl::close): Changed to call Page::decrementFrameCount
2865         instead of Frame::decrementFrameCount. Changed to call FrameTree::child
2866         instead of Frame::findFrame.
2867         (WebCore::HTMLFrameElementImpl::contentFrame): Renamed from contentPart. Also
2868         changed to call FrameTree::child instead of Frame::findFrame.
2869         (WebCore::HTMLFrameElementImpl::contentDocument): Updated for name change of
2870         contentFrame from contentPart.
2871         (WebCore::HTMLIFrameElementImpl::attach): Changed to call Page::incrementFrameCount
2872         instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName
2873         instead of Frame::requestFrameName.
2874
2875         * rendering/render_frames.cpp: (WebCore::isURLAllowed): Changed to call Page::frameCount
2876         instead of Frame::topLevelFrameCount.
2877
2878         * page/Frame.h: Removed frameNames, frames, childFrameNamed, findFrame, currentFrame,
2879         frameExists, incrementFrameCount, decrementFrameCount, topLevelFrameCount,
2880         generateFrameName, and requestFrameName functions.
2881         * page/Frame.cpp: (WebCore::Frame::requestFrame): Changed to use FrameTree::child
2882         instead of Frame::childFrameNamed.
2883
2884         * page/FrameTree.h: Changed name to an atomic string. Changed childCount to unsigned.
2885         Added isDescendantOf, traverseNext, child, find, uniqueChildName.
2886         * page/FrameTree.cpp:
2887         (WebCore::FrameTree::setName): Changed to call uniqueChildName to handle name
2888         duplication logic.
2889         (WebCore::FrameTree::uniqueChildName): Added. Checks for duplication and generates
2890         an appropriate frame name if there is a duplicate.
2891         (WebCore::FrameTree::child): Added.
2892         (WebCore::FrameTree::find): Added.
2893         (WebCore::FrameTree::isDescendantOf): Added.
2894         (WebCore::FrameTree::traverseNext): Added.
2895
2896         * page/Page.h: Added setGroupName, groupName, frameNamespace, incrementFrameCount,
2897         decrementFrameCount, and frameCount.
2898         * page/Page.cpp:
2899         (WebCore::Page::Page): Initialize m_frameCount to 0.
2900         (WebCore::Page::~Page): Call setGroupName to remove the page from any group it's in.
2901         (WebCore::Page::setGroupName): Added.
2902         (WebCore::Page::frameNamespace): Added.
2903
2904         * platform/win/TemporaryLinkStubs.cpp: Removed FrameWin::generateFrameName.
2905
2906 2006-03-10  Justin Garcia  <justin.garcia@apple.com>
2907         
2908         Reviewed by darin, harrison
2909         
2910         ~3x speedup pasting plain text from the console
2911
2912         * dom/dom_position.cpp:
2913         (WebCore::Position::next): 
2914         (WebCore::Position::atEnd): 
2915
2916 2006-03-10  David Hyatt <hyatt@apple.com>
2917
2918         More refactoring.  Split the FontData into cross-platform and
2919         platform-specific components.
2920
2921         Reviewed by eric
2922
2923         * WebCore.vcproj/WebCore/WebCore.vcproj:
2924         * platform/FontData.h: Added.
2925         (WebCore::FontData:::m_platformData):
2926         (WebCore::FontData::platformData):
2927         (WebCore::FontData::setMetrics):
2928         (WebCore::FontData::ascent):
2929         (WebCore::FontData::descent):
2930         (WebCore::FontData::xHeight):
2931         (WebCore::FontData::lineSpacing):
2932         * platform/FontPlatformData.h: Added.
2933         (WebCore::FontPlatformData::hfont):
2934         (WebCore::FontPlatformData::scaledFont):
2935         * platform/win/FontPlatformDataWin.cpp: Added.
2936         (WebCore::FontPlatformData::FontPlatformData):
2937         (WebCore::FontPlatformData::~FontPlatformData):
2938         * platform/win/FontWin.cpp:
2939         (WebCore::Font::floatWidth):
2940         (WebCore::Font::drawText):
2941
2942 2006-03-10  Maciej Stachowiak  <mjs@apple.com>
2943
2944         Reviewed by Eric.
2945
2946         - fix win32 networking to properly use async load API
2947
2948         * platform/win/TransferJobWin.cpp:
2949         (WebCore::TransferJobWndProc):
2950         (WebCore::TransferJob::start):
2951
2952 2006-03-10  Eric Seidel  <eseidel@apple.com>
2953
2954         Fix build.
2955
2956         * platform/win/FontWin.cpp:
2957         (WebCore::getFontData):
2958         * platform/win/TemporaryLinkStubs.cpp:
2959
2960 2006-03-10  Adele Peterson  <adele@apple.com>
2961
2962         Reviewed by Tim Hatcher.
2963
2964         - fix for <rdar://problem/4469419> 
2965         REGRESSION: RadioButtons are not checked in Safari when name attribute comes after checked attribute
2966
2967         Test: fast/forms/radio-attr-order.html
2968
2969         * khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::parseMappedAttribute):
2970         When the name attribute gets parsed for radio buttons, if its supposed to be checked by default, call setChecked.
2971         Also, when the name changes on a checked button, we don't need to check that 
2972         there's a form before removing it as the checked button for that group.  
2973         That was an old check from when we required a form to keep track of checked buttons.
2974
2975 2006-03-10  Eric Seidel  <eseidel@apple.com>
2976
2977         Reviewed by darin.
2978
2979         Add real ScrollViewWin implementation (fixes redraw bugs, adds ScrollBar support.)
2980
2981         * platform/ScrollView.h:
2982         * platform/Widget.h:
2983         * platform/win/FontWin.cpp:
2984         (WebCore::getCairoFont): Fix crasher.
2985         * platform/win/ScrollViewWin.cpp:
2986         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
2987         (WebCore::ScrollView::ScrollView):
2988         (WebCore::ScrollView::~ScrollView):
2989         (WebCore::ScrollView::updateContents):
2990         (WebCore::ScrollView::visibleWidth):
2991         (WebCore::ScrollView::visibleHeight):
2992         (WebCore::ScrollView::setContentsPos):
2993         (WebCore::ScrollView::resizeContents):
2994         (WebCore::ScrollView::contentsX):
2995         (WebCore::ScrollView::contentsY):
2996         (WebCore::ScrollView::contentsWidth):
2997         (WebCore::ScrollView::contentsHeight):
2998         (WebCore::ScrollView::viewportToContents):
2999         (WebCore::ScrollView::contentsToViewport):
3000         (WebCore::ScrollView::scrollXOffset):
3001         (WebCore::ScrollView::scrollYOffset):
3002         (WebCore::ScrollView::scrollBy):
3003         (WebCore::ScrollView::hScrollBarMode):
3004         (WebCore::ScrollView::vScrollBarMode):
3005         (WebCore::ScrollView::suppressScrollBars):
3006         (WebCore::ScrollView::setHScrollBarMode):
3007         (WebCore::ScrollView::setVScrollBarMode):
3008         (WebCore::ScrollView::setScrollBarsMode):
3009         (WebCore::ScrollView::setStaticBackground):
3010         (WebCore::ScrollView::updateScrollInfo):
3011         (WebCore::ScrollView::updateScrollBars):
3012         * platform/win/TemporaryLinkStubs.cpp:
3013         (BrowserExtensionWin::goBackOrForward):
3014         (BrowserExtensionWin::setIconURL):
3015         (ScrollView::scrollPointRecursively):
3016         * platform/win/WidgetWin.cpp:
3017         (WebCore::Widget::windowHandle): mark as const
3018
3019 2006-03-10  David Hyatt  <hyatt@apple.com>
3020
3021         Rename the m_renderer variable to m_dataSet now that the class name
3022         has changed.
3023
3024         Reviewed by adele
3025
3026         * platform/Font.cpp:
3027         (WebCore::m_wordSpacing):
3028         (WebCore::Font::Font):
3029         (WebCore::Font::operator=):
3030         (WebCore::Font::update):
3031         * platform/Font.h:
3032         * platform/FontDataSet.h:
3033         * platform/mac/FontMac.mm:
3034         (WebCore::Font::getWebCoreFont):
3035         (WebCore::Font::ascent):
3036         (WebCore::Font::descent):
3037         (WebCore::Font::lineSpacing):
3038         (WebCore::Font::xHeight):
3039         (WebCore::Font::isFixedPitch):
3040         (WebCore::Font::selectionRectForText):
3041         (WebCore::Font::drawText):
3042         (WebCore::Font::drawHighlightForText):
3043         (WebCore::Font::drawLineForText):
3044         (WebCore::Font::drawLineForMisspelling):
3045         (WebCore::Font::misspellingLineThickness):
3046         (WebCore::Font::floatWidth):
3047         (WebCore::Font::checkSelectionPoint):
3048         * platform/win/FontWin.cpp:
3049         (WebCore::FontData::FontData):
3050         (WebCore::FontData::~FontData):
3051         (WebCore::getFontData):
3052         (WebCore::FontDataSet::primaryFont):
3053         (WebCore::Font::floatWidth):
3054         (WebCore::Font::ascent):
3055         (WebCore::Font::descent):
3056         (WebCore::Font::xHeight):
3057         (WebCore::Font::lineSpacing):
3058         (WebCore::Font::isFixedPitch):
3059         (WebCore::Font::drawText):
3060
3061 2006-03-10  David Hyatt  <hyatt@apple.com>
3062
3063         Rename FontRenderer to FontDataSet.
3064
3065         Reviewed by adele
3066
3067         * WebCore.xcodeproj/project.pbxproj:
3068         * platform/Font.cpp:
3069         (WebCore::Font::update):
3070         * platform/Font.h:
3071         * platform/FontDataSet.h: Added.
3072         * platform/FontRenderer.h: Removed.
3073         * platform/mac/FontMac.mm:
3074         (WebCore::FontDataSet::~FontDataSet):
3075         (WebCore::FontDataSet::getWebCoreFont):
3076         (WebCore::FontDataSet::getRenderer):
3077         (WebCore::FontDataSet::determinePitch):
3078         (WebCore::FontDataSet::invalidate):
3079         * platform/win/FontWin.cpp:
3080         (WebCore::getCairoFont):
3081         (WebCore::FontDataSet::~FontDataSet):
3082         (WebCore::FontDataSet::determinePitch):
3083         (WebCore::FontDataSet::invalidate):
3084         (WebCore::FontDataSet::primaryCairoFont):
3085
3086 2006-03-09  Justin Garcia  <justin.garcia@apple.com>
3087
3088         Reviewed by adele
3089         
3090         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7692>
3091         Should use an iterator in CompositeEditCommand::doUnapply()
3092         
3093         ~30% speedup of a big undo
3094
3095         * editing/CompositeEditCommand.cpp:
3096         (WebCore::CompositeEditCommand::doUnapply):
3097         (WebCore::CompositeEditCommand::doReapply):
3098
3099 2006-03-09  Adele Peterson  <adele@apple.com>
3100
3101         Reviewed by Tim O.
3102
3103         Removed unnecessary alerts in TextIterator advance methods.  
3104         We want to be able to use advance() even if the iterator is already at the end.
3105
3106         * editing/visible_text.cpp:
3107         (khtml::TextIterator::advance): remove assert since TextIterator will just do nothing if its already at the end.
3108         (khtml::CharacterIterator::advance): ditto.
3109         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::visiblePositionForIndex):
3110         Since the asserts in the iterator are removed, we don't have to check for it.atEnd() before calling advance.
3111
3112 2006-03-09  David Hyatt <hyatt@apple.com>
3113
3114         Make text paint with the correct foreground color on Windows.
3115         Make the face validation check case insensitive.
3116         Force ClearType to be on for font rendering.
3117
3118         Reviewed by Tim Hatcher
3119
3120         * platform/win/FontWin.cpp:
3121         (WebCore::getCairoFont):
3122         (WebCore::Font::drawText):
3123
3124 2006-03-09  Adele Peterson  <adele@apple.com>
3125
3126         Reviewed by Hyatt.
3127
3128         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7675
3129         When new text fields change from visibility:hidden to visibility:visible, value doesn't display
3130
3131         Test: fast/forms/input-appearance-visibility.html
3132
3133         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::setStyle):
3134         Sets the style directly on the children of the inner div.
3135
3136 2006-03-09  David Hyatt <hyatt@apple.com>
3137
3138         Make basic text rendering work on Win32.
3139
3140         Reviewed by eric
3141
3142         * WebCore.vcproj/WebCore/WebCore.vcproj:
3143         Add FontDescription.h to the Visual Studio project.
3144
3145         * bridge/win/FrameWin.cpp:
3146         (WebCore::FrameWin::FrameWin):
3147         Add some good default font settings to KHTMLSettings.
3148
3149         * platform/Font.cpp:
3150         (WebCore::Font::update):
3151         Renamed the FontRenderer method to invalidate, so that's what
3152         update calls now.
3153
3154         * platform/FontRenderer.h:
3155         * platform/mac/FontMac.mm:
3156         (WebCore::FontRenderer::~FontRenderer):
3157         (WebCore::FontRenderer::invalidate):
3158         Rename the update method to invalidate.  Make sure the Mac
3159         font renderer releases its resources when it gets destroyed.
3160
3161         * platform/win/FontWin.cpp:
3162         (WebCore::CairoFont::CairoFont):
3163         (WebCore::CairoFont::~CairoFont):
3164         (WebCore::CairoFont::hfont):
3165         (WebCore::CairoFont::scaledFont):
3166         (WebCore::CairoFont::setMetrics):
3167         (WebCore::CairoFont::ascent):
3168         (WebCore::CairoFont::descent):
3169         (WebCore::CairoFont::xHeight):
3170         (WebCore::CairoFont::lineSpacing):
3171         Implement a new class called CairoFont that encapsulates
3172         the windows HFONT, the cairo font face, and the cairo scaled
3173         font.
3174
3175         (WebCore::getCairoFont):
3176         The method to look up a Cairo font.  This will eventually use
3177         a hash, but for now it just always makes the fonts over and
3178         over again.
3179
3180         (WebCore:::m_pitch):
3181         (WebCore::FontRenderer::~FontRenderer):
3182         (WebCore::FontRenderer::determinePitch):
3183         (WebCore::FontRenderer::invalidate):
3184         More of the FontRenderer plumbing.
3185
3186         (WebCore::FontRenderer::primaryCairoFont):
3187         Returns the primary Cairo font for a family list.  This is basically
3188         the first family that is present on the system.
3189
3190         (WebCore::Font::floatWidth):
3191         The width method uses GetTextExtentPoint32W for now.  This
3192         is totally wrong and will eventually be replaced by Cairo
3193         code.
3194
3195         (WebCore::Font::ascent):
3196         (WebCore::Font::descent):
3197         (WebCore::Font::xHeight):
3198         (WebCore::Font::lineSpacing):
3199         (WebCore::Font::isFixedPitch):
3200         Accessors for the metrics and pitch info.
3201
3202         (WebCore::Font::drawText):
3203         Drawing of text.  Uses TextOut and is also basically throwaway
3204         code.
3205
3206         * platform/win/TemporaryLinkStubs.cpp:
3207         (Font::checkSelectionPoint):
3208         Move the checkSelectionPoint method back to the link stubs.
3209
3210 2006-03-09  Justin Garcia  <justin.garcia@apple.com>
3211
3212         Reviewed by harrison
3213     
3214         Fixed formatting and changed functions to take in 
3215         a const Selection& instead of a Selection.
3216
3217         * editing/ModifySelectionListLevelCommand.cpp:
3218         (WebCore::ModifySelectionListLevelCommand::canIncreaseSelectionListLevel):
3219         (WebCore::ModifySelectionListLevelCommand::canDecreaseSelectionListLevel):
3220         (WebCore::ModifySelectionListLevelCommand::increaseSelectionListLevel):
3221         (WebCore::ModifySelectionListLevelCommand::decreaseSelectionListLevel):
3222         (WebCore::modifySelectionListLevel):
3223         (WebCore::getStartEndListChildren):
3224         (WebCore::canIncreaseListLevel):
3225         (WebCore::canDecreaseListLevel):
3226         (WebCore::ModifySelectionListLevelCommand::increaseListLevel):
3227         (WebCore::ModifySelectionListLevelCommand::decreaseListLevel):
3228         * editing/ModifySelectionListLevelCommand.h:
3229
3230 2006-03-09  Adele Peterson  <adele@apple.com>
3231
3232         Reviewed by Darin.
3233
3234         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6814
3235         Implement selection methods for RenderTextField
3236
3237         Test: fast/forms/input-appearance-selection.html
3238
3239         * rendering/RenderTextField.cpp:
3240         (WebCore::RenderTextField::createDivStyle): removed extra space.
3241         (WebCore::RenderTextField::select): Removed checks for document and m_div since there should always be a document and 
3242          m_div will be initialized as the renderer gets attached.
3243         (WebCore::RenderTextField::selectionStart): Calls indexForVisiblePosition.
3244         (WebCore::RenderTextField::selectionEnd): ditto.
3245         (WebCore::RenderTextField::setSelectionStart): calls setSelectionRange.
3246         (WebCore::RenderTextField::setSelectionEnd): ditto.
3247         (WebCore::RenderTextField::setSelectionRange): gets VisiblePositions for both indices, and sets the selection.
3248         (WebCore::RenderTextField::visiblePositionForIndex): Added helper method.
3249         (WebCore::RenderTextField::indexForVisiblePosition): Added helper method.
3250         * rendering/RenderTextField.h: Added new helper methods for selection.
3251
3252 2006-03-09  David Carson  <dacarson@gmail.com>
3253
3254         Test: fast/canvas/fillrect_gradient.html
3255
3256         Reviewed by Darin.
3257
3258         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6103
3259           Rectangles are not filled according to the Web Applications Working Draft
3260
3261         * khtml/ecma/kjs_html.cpp: (KJS::Context2DFunction::callAsFunction):
3262         Modified fillrect function to check and use a gradient if set.
3263         Builds a path to fill rects with a gradient.
3264
3265 2006-03-09  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3266
3267         No test because this fixes an existing pixel test (and does not affect
3268         the render tree).
3269
3270         Reviewed by Maciej.
3271
3272         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7664
3273           REGRESSION: tests that include numeric list markers fail in pixel mode
3274
3275         * platform/GraphicsContext.cpp:
3276         (WebCore::GraphicsContext::drawText): Restored AlignRight behavior.
3277
3278 2006-03-09  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3279
3280         No test because we couldn't figure out how to write one.
3281
3282         Reviewed by Darin.
3283
3284         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7680
3285           REGRESSION: Ellipsis painted over the chrome and in invalid contexts
3286
3287         * rendering/render_line.cpp:
3288         (WebCore::EllipsisBox::paint): Replaced call to Font::drawText with
3289         GraphicsContext::drawText, which checks the paintingDisabled flag.
3290
3291 2006-03-09  Maciej Stachowiak  <mjs@apple.com>
3292
3293         Reviewed by Eric.
3294
3295         - make link clicks work by propagating them up to a client
3296
3297         * Viewer/ImageView.cpp:
3298         * bridge/win/FrameWin.cpp:
3299         * bridge/win/FrameWin.h:
3300         * platform/win/TemporaryLinkStubs.cpp:
3301         (FrameWin::incomingReferrer):
3302
3303 2006-03-09  Eric Seidel  <eseidel@apple.com>
3304
3305         Reviewed by mjs.
3306
3307         Add support for Timers under 10ms.
3308         Fix random crashers due to multi-threaded loading.
3309
3310         * platform/TransferJob.h:
3311         * platform/TransferJobInternal.h:
3312         (WebCore::TransferJobInternal::TransferJobInternal):
3313         * platform/Widget.h:
3314         * platform/win/SharedTimerWin.cpp:
3315         (WebCore::TimerWindowWndProc):
3316         (WebCore::initializeOffScreenTimerWindow):
3317         (WebCore::setSharedTimerFireTime):
3318         * platform/win/TemporaryLinkStubs.cpp:
3319         (WebCore::TransferJob::assembleResponseHeaders):
3320         (WebCore::TransferJob::retrieveCharset):
3321         * platform/win/TransferJobWin.cpp:
3322         (WebCore::addToOutstandingJobs):
3323         (WebCore::removeFromOutstandingJobs):
3324         (WebCore::lookupTransferJob):
3325         (WebCore::TransferJobWndProc):
3326         (WebCore::initializeOffScreenTransferJobWindow):
3327         (WebCore::TransferJob::~TransferJob):
3328         (WebCore::transferJobStatusCallback):
3329         (WebCore::TransferJob::start):
3330         (WebCore::TransferJob::cancel):
3331         * platform/win/WidgetWin.cpp:
3332
3333 2006-03-08  Justin Garcia  <justin.garcia@apple.com>
3334
3335         Reviewed by darin
3336         
3337         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7579>
3338         TinyMCE: Implement execCommand(insertImage, ...)
3339         
3340         Implemented InsertImage and also changed paste to use a single 
3341         rule for when to remove junk that remains after node removal. 
3342
3343         * editing/ReplaceSelectionCommand.cpp:
3344         (WebCore::ReplaceSelectionCommand::removeNodeAndPruneAncestors):
3345         (WebCore::ReplaceSelectionCommand::doApply):
3346         (WebCore::ReplaceSelectionCommand::removeLinePlaceholderIfNeeded):
3347         * editing/ReplaceSelectionCommand.h:
3348         * editing/htmlediting.cpp:
3349         * editing/jsediting.cpp:
3350
3351 2006-03-08  Eric Seidel  <eseidel@apple.com>
3352
3353         Reviewed by hyatt.
3354
3355         Fix build script to properly copy dll files.
3356
3357         * WebCore.vcproj/WebCore/build-generated-files.sh:
3358
3359 2006-03-08  Rob Buis  <buis@kde.org>
3360
3361         Reviewed by eseidel.
3362
3363         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6899 SVG <rect> does not respect display: none
3364
3365         For svg elements that can render, call StyledElementImpl::rendererIsNeeded
3366         to decide whether the element should render. In particular this way
3367         any setting of display="none" is handled.
3368
3369         * ksvg2/svg/SVGAElementImpl.h:
3370         (WebCore::SVGAElementImpl::rendererIsNeeded):
3371         * ksvg2/svg/SVGCircleElementImpl.h:
3372         (WebCore::SVGCircleElementImpl::rendererIsNeeded):
3373         * ksvg2/svg/SVGEllipseElementImpl.h:
3374         (WebCore::SVGEllipseElementImpl::rendererIsNeeded):
3375         * ksvg2/svg/SVGForeignObjectElementImpl.h:
3376         (WebCore::SVGForeignObjectElementImpl::rendererIsNeeded):
3377         * ksvg2/svg/SVGGElementImpl.h:
3378         (WebCore::SVGGElementImpl::rendererIsNeeded):
3379         * ksvg2/svg/SVGImageElementImpl.h:
3380         (WebCore::SVGImageElementImpl::rendererIsNeeded):
3381         * ksvg2/svg/SVGLineElementImpl.h:
3382         (WebCore::SVGLineElementImpl::rendererIsNeeded):
3383         * ksvg2/svg/SVGMarkerElementImpl.h:
3384         (WebCore::SVGMarkerElementImpl::rendererIsNeeded):
3385         * ksvg2/svg/SVGMaskElementImpl.h:
3386         (WebCore::SVGMaskElementImpl::rendererIsNeeded):
3387         * ksvg2/svg/SVGPathElementImpl.h:
3388         (WebCore::SVGPathElementImpl::rendererIsNeeded):
3389         * ksvg2/svg/SVGPatternElementImpl.h:
3390         (WebCore::SVGPatternElementImpl::rendererIsNeeded):
3391         * ksvg2/svg/SVGPolyElementImpl.h:
3392         (WebCore::SVGPolyElementImpl::rendererIsNeeded):
3393         * ksvg2/svg/SVGRectElementImpl.h:
3394         (WebCore::SVGRectElementImpl::rendererIsNeeded):
3395         * ksvg2/svg/SVGSVGElementImpl.h:
3396         (WebCore::SVGSVGElementImpl::rendererIsNeeded):
3397         * ksvg2/svg/SVGSwitchElementImpl.h:
3398         (WebCore::SVGSwitchElementImpl::rendererIsNeeded):
3399         * ksvg2/svg/SVGTSpanElementImpl.h:
3400         (WebCore::SVGTSpanElementImpl::rendererIsNeeded):
3401         * ksvg2/svg/SVGTextElementImpl.h:
3402         (WebCore::SVGTextElementImpl::rendererIsNeeded):
3403         * ksvg2/svg/SVGUseElementImpl.h:
3404         (WebCore::SVGUseElementImpl::rendererIsNeeded):
3405
3406 2006-03-08  Eric Seidel  <eseidel@apple.com>
3407
3408         Reviewed by mjs.
3409
3410         Add stubs to allow JavaScript-enabled WebCore to not crash.
3411         Add ScreenWin implementation.
3412         Add alert() support.
3413
3414         * WebCore.vcproj/WebCore/WebCore.vcproj:
3415         * bridge/win/FrameWin.cpp:
3416         (WebCore::FrameWin::runJavaScriptAlert):
3417         (WebCore::FrameWin::runJavaScriptConfirm):
3418         * platform/win/ScreenWin.cpp: Added.
3419         (WebCore::monitorInfoForWidget):
3420         (WebCore::WebCore::screenRect):
3421         (WebCore::WebCore::screenDepth):
3422         (WebCore::WebCore::usableScreenRect):
3423         * platform/win/TemporaryLinkStubs.cpp:
3424         (FrameWin::canUndo):
3425         (FrameWin::runJavaScriptPrompt):
3426         (FrameWin::canPaste):
3427         (WebCore::setCookies):
3428         (WebCore::cookies):
3429         (WebCore::cookiesEnabled):
3430         (PlugInInfoStore::createPluginInfoForPluginAtIndex):
3431         (PlugInInfoStore::pluginCount):
3432         (WebCore::refreshPlugins):
3433         (FrameWin::clearUndoRedoOperations):
3434         (FrameWin::incomingReferrer):
3435
3436 2006-03-08  Darin Adler  <darin@apple.com>
3437
3438         Reviewed by Maciej.
3439
3440         - fix another instance of the bug I just fixed in the Macintosh-specific code path
3441
3442         * platform/image-decoders/gif/GIFImageReader.h: Remove not-so-useful 100ms constant.
3443         * platform/image-decoders/gif/GIFImageReader.cpp: (GIFImageReader::read):
3444         Use the correct rule for minimum frame durations.
3445
3446 2006-03-08  Maciej Stachowiak  <mjs@apple.com>
3447
3448         Reviewed by Eric.
3449
3450         - very rough implementation of networking in TransferJob for windows
3451
3452         * platform/TransferJob.h:
3453         * platform/TransferJobInternal.h:
3454         (WebCore::TransferJobInternal::TransferJobInternal):
3455         * platform/win/TransferJobWin.cpp:
3456         (WebCore::transferJobStatusCallback):
3457         (WebCore::TransferJob::start):
3458
3459 2006-03-08  Maciej Stachowiak  <mjs@apple.com>
3460
3461         Reviewed by Darin.
3462
3463         - fix win32 build
3464
3465         * platform/win/FontWin.cpp:
3466         (WebCore::Font::drawText):
3467         (WebCore::Font::drawHighlightForText):
3468         * platform/win/TemporaryLinkStubs.cpp:
3469         (GraphicsContext::clearFocusRing):
3470         (GraphicsContext::selectedTextBackgroundColor):
3471         (Font::selectionRectForText):
3472
3473 2006-03-08  Darin Adler  <darin@apple.com>
3474
3475         Reviewed by Maciej.
3476
3477         - fix one more thing from http://bugzilla.opendarwin.org/show_bug.cgi?id=7528
3478           REGRESSION: GIF animation speeds are wrong on a page with many animated GIFs
3479
3480         No layout test because I don't know how to test animated GIF speed.
3481
3482         * platform/mac/ImageSourceMac.cpp: (WebCore::ImageSource::frameDurationAtIndex):
3483         Use the correct rule for minimum frame durations. It's a bit non-intuitive, so
3484         I made the comment more explicit. The old code in WebKit had this rule.
3485
3486 2006-03-08  David Hyatt  <hyatt@apple.com>
3487
3488         Make GraphicsContext call into Font to draw all text and eliminate
3489         all knowledge of WebTextRenderers from it.
3490
3491         Reviewed by darin
3492
3493         * platform/Font.h:
3494         * platform/GraphicsContext.cpp:
3495         (WebCore::GraphicsContext::drawText):
3496         (WebCore::GraphicsContext::drawHighlightForText):
3497         (WebCore::GraphicsContext::drawLineForText):
3498         (WebCore::GraphicsContext::drawLineForMisspelling):
3499         (WebCore::GraphicsContext::misspellingLineThickness):
3500         * platform/GraphicsContext.h:
3501         (WebCore::GraphicsContext::platformContext):
3502         * platform/cairo/GraphicsContextCairo.cpp:
3503         (WebCore::GraphicsContext::platformContext):
3504         * platform/mac/FontMac.mm:
3505         (WebCore::Font::drawText):
3506         (WebCore::Font::drawHighlightForText):
3507         (WebCore::Font::drawLineForText):
3508         (WebCore::Font::drawLineForMisspelling):
3509         (WebCore::Font::misspellingLineThickness):
3510         * platform/mac/GraphicsContextMac.mm:
3511         * platform/win/FontWin.cpp:
3512         (WebCore::Font::drawText):
3513         * rendering/InlineTextBox.cpp:
3514         (WebCore::InlineTextBox::paint):
3515         (WebCore::InlineTextBox::paintSelection):
3516         (WebCore::InlineTextBox::paintMarkedTextBackground):
3517         (WebCore::InlineTextBox::paintTextMatchMarker):
3518
3519 2006-03-08  Darin Adler  <darin@apple.com>
3520
3521         Reviewed by Hyatt.
3522
3523         - fixed super-fast animation of many animated GIFs
3524
3525         No layout test because I don't know how to test animated GIF speed.
3526
3527         * platform/mac/ImageSourceMac.cpp: (WebCore::ImageSource::frameDurationAtIndex):
3528         Always take the minimum duration into account, even if there's some kind of failure
3529         getting the duration from the GIF.
3530
3531 2006-03-07  Darin Adler  <darin@apple.com>
3532
3533         Reviewed by Anders.
3534
3535         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7655
3536           unwanted output while running layout tests
3537
3538         * khtml/xsl/xsl_stylesheetimpl.cpp: (WebCore::XSLStyleSheetImpl::parseString):
3539         Pass XML_PARSE_NOERROR and XML_PARSE_NOWARNING. We don't want errors and warnings
3540         to be logged to stdout or stderr. If we later decide we want the error messages,
3541         then we should do the additional work to put them into the web page or the
3542         console (along with the JavaScript errors).
3543
3544         * platform/ArrayImpl.cpp: (WebCore::ArrayImpl::resize): Add a preflight to protect
3545         against integer overflow due to large array size. Noticed this while looking into
3546         the malloc error message.
3547
3548 2006-03-07  Darin Adler  <darin@apple.com>
3549
3550         Reviewed by Adele.
3551
3552         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7647
3553           Crash when typing into text contols
3554
3555         I missed a couple places that were still saying KWQWidgetHolder
3556         in the change I landed late last night.
3557
3558         * kwq/KWQTextArea.h:
3559         * kwq/KWQTextArea.mm:
3560         * kwq/KWQTextField.h: