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