4aa3703e55ae8ba5ae254b0bb97056879f2b6a0c
[WebKit-https.git] / WebCore / ChangeLog
1 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
2
3         Reviewed by harrison
4         
5         * editing/CompositeEditCommand.cpp:
6         (WebCore::hasARenderedDescendant):
7         (WebCore::CompositeEditCommand::prune): Ascend using the DOM
8         (WebCore::CompositeEditCommand::moveParagraphs): Placeholder insertion
9         during deletion is fixed, removing the fall back.
10
11 2006-06-15  Nicholas Shanks  <contact@nickshanks.com>
12
13         Reviewed by Hyatt, landed by Joost de Valk.
14
15         Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3233
16
17         Add support for the :lang pseudo-class.
18
19         * css/CSSGrammar.y:
20         * css/CSSSelector.cpp:
21         (WebCore::CSSSelector::operator == ):
22         * css/CSSSelector.h:
23         (WebCore::CSSSelector::CSSSelector):
24         * css/cssparser.cpp:
25         (WebCore::CSSParser::lex):
26         * css/cssstyleselector.cpp:
27         (WebCore::CSSStyleSelector::checkOneSelector):
28         * css/tokenizer.flex:
29
30 2006-06-15  Justin Garcia  <justin.garcia@apple.com>
31
32         Reviewed by harrison
33         
34         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9456>
35         REGRESSION (417.9.2-420+): Cmd-G doesn't work in Safari after double-click and Cmd-E
36         
37         * page/Frame.cpp:
38         (WebCore::Frame::findString): When comparing the found range with
39         what's currently selected a) build a selection with the found
40         range to remove collapsed whitespace and b) compare ranges 
41         instead of selection objects to ignore the way that the 
42         current selection was made (to ignore the base and extent).
43
44 2006-06-15  David Kilzer  <ddkilzer@kilzer.net>
45
46         Reviewed by mjs.
47
48         http://bugzilla.opendarwin.org/show_bug.cgi?id=9382
49         IDL files missing copyright/license headers
50
51         Add Apple BSD license and copyright to IDL files.
52
53         * ksvg2/bindings/idl/svg/GetSVGDocument.idl:
54         * ksvg2/bindings/idl/svg/SVGAElement.idl:
55         * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl:
56         * ksvg2/bindings/idl/svg/SVGAnimateElement.idl:
57         * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl:
58         * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl:
59         * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl:
60         * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl:
61         * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl:
62         * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl:
63         * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl:
64         * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl:
65         * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl:
66         * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl:
67         * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl:
68         * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl:
69         * ksvg2/bindings/idl/svg/SVGAnimatedString.idl:
70         * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl:
71         * ksvg2/bindings/idl/svg/SVGAnimationElement.idl:
72         * ksvg2/bindings/idl/svg/SVGCircleElement.idl:
73         * ksvg2/bindings/idl/svg/SVGClipPathElement.idl:
74         * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl:
75         * ksvg2/bindings/idl/svg/SVGCursorElement.idl:
76         * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl:
77         * ksvg2/bindings/idl/svg/SVGDefsElement.idl:
78         * ksvg2/bindings/idl/svg/SVGDescElement.idl:
79         * ksvg2/bindings/idl/svg/SVGElementInstance.idl:
80         * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl:
81         * ksvg2/bindings/idl/svg/SVGEllipseElement.idl:
82         * ksvg2/bindings/idl/svg/SVGEvent.idl:
83         * ksvg2/bindings/idl/svg/SVGException.idl:
84         * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl:
85         * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl:
86         * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl:
87         * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl:
88         * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl:
89         * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl:
90         * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl:
91         * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl:
92         * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl:
93         * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl:
94         * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl:
95         * ksvg2/bindings/idl/svg/SVGFEImageElement.idl:
96         * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl:
97         * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl:
98         * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl:
99         * ksvg2/bindings/idl/svg/SVGFETileElement.idl:
100         * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl:
101         * ksvg2/bindings/idl/svg/SVGFilterElement.idl:
102         * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl:
103         * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl:
104         * ksvg2/bindings/idl/svg/SVGGElement.idl:
105         * ksvg2/bindings/idl/svg/SVGGradientElement.idl:
106         * ksvg2/bindings/idl/svg/SVGICCColor.idl:
107         * ksvg2/bindings/idl/svg/SVGImageElement.idl:
108         * ksvg2/bindings/idl/svg/SVGLangSpace.idl:
109         * ksvg2/bindings/idl/svg/SVGLengthList.idl:
110         * ksvg2/bindings/idl/svg/SVGLineElement.idl:
111         * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl:
112         * ksvg2/bindings/idl/svg/SVGLocatable.idl:
113         * ksvg2/bindings/idl/svg/SVGMarkerElement.idl:
114         * ksvg2/bindings/idl/svg/SVGNumberList.idl:
115         * ksvg2/bindings/idl/svg/SVGPaint.idl:
116         * ksvg2/bindings/idl/svg/SVGPathElement.idl:
117         * ksvg2/bindings/idl/svg/SVGPathSeg.idl:
118         * ksvg2/bindings/idl/svg/SVGPathSegArc.idl:
119         * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl:
120         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl:
121         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl:
122         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl:
123         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl:
124         * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl:
125         * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl:
126         * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl:
127         * ksvg2/bindings/idl/svg/SVGPathSegList.idl:
128         * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl:
129         * ksvg2/bindings/idl/svg/SVGPatternElement.idl:
130         * ksvg2/bindings/idl/svg/SVGPointList.idl:
131         * ksvg2/bindings/idl/svg/SVGPolygonElement.idl:
132         * ksvg2/bindings/idl/svg/SVGPolylineElement.idl:
133         * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl:
134         * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl:
135         * ksvg2/bindings/idl/svg/SVGRectElement.idl:
136         * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl:
137         * ksvg2/bindings/idl/svg/SVGScriptElement.idl:
138         * ksvg2/bindings/idl/svg/SVGSetElement.idl:
139         * ksvg2/bindings/idl/svg/SVGStopElement.idl:
140         * ksvg2/bindings/idl/svg/SVGStringList.idl:
141         * ksvg2/bindings/idl/svg/SVGStylable.idl:
142         * ksvg2/bindings/idl/svg/SVGStyleElement.idl:
143         * ksvg2/bindings/idl/svg/SVGSwitchElement.idl:
144         * ksvg2/bindings/idl/svg/SVGSymbolElement.idl:
145         * ksvg2/bindings/idl/svg/SVGTSpanElement.idl:
146         * ksvg2/bindings/idl/svg/SVGTests.idl:
147         * ksvg2/bindings/idl/svg/SVGTextContentElement.idl:
148         * ksvg2/bindings/idl/svg/SVGTextElement.idl:
149         * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl:
150         * ksvg2/bindings/idl/svg/SVGTitleElement.idl:
151         * ksvg2/bindings/idl/svg/SVGTransformList.idl:
152         * ksvg2/bindings/idl/svg/SVGTransformable.idl:
153         * ksvg2/bindings/idl/svg/SVGURIReference.idl:
154         * ksvg2/bindings/idl/svg/SVGUnitTypes.idl:
155         * ksvg2/bindings/idl/svg/SVGUseElement.idl:
156         * ksvg2/bindings/idl/svg/SVGViewElement.idl:
157         * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl:
158         * ksvg2/bindings/idl/svg/SVGZoomEvent.idl:
159         * ksvg2/svg/SVGAnimatedLength.idl:
160
161 2006-06-14  Justin Garcia  <justin.garcia@apple.com>
162
163         Reviewed by levi
164
165         <rdar://problem/4439248>
166         REGRESSION(412-417): [RTL] Serious problem with RTL signatures in Mail.app in 10.4.4 (7766)
167
168         * editing/markup.cpp:
169         (WebCore::renderedText): Use plainText so that we'll pull rendered text but in DOM order.
170
171 2006-06-14  Levi Weintraub  <lweintraub@apple.com>
172
173         Reviewed by justin
174
175         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7580>
176         TinyMCE: Implement execCommand(formatBlock, ...)
177
178         * WebCore.xcodeproj/project.pbxproj: Added FormatBlock.{h,cpp} to the project.
179         * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
180         * bridge/mac/WebCoreFrameBridge.h: Added WebUndoActions
181         * editing/CompositeEditCommand.cpp:
182         (WebCore::CompositeEditCommand::moveParagraph): Added a preserveStyle bool.
183         (WebCore::CompositeEditCommand::moveParagraphs): Ditto.  downstream() the start
184         or else we'll move collapsed whitespace and uncollapse it.
185         * editing/CompositeEditCommand.h:
186         * editing/DeleteSelectionCommand.cpp:
187         (WebCore::DeleteSelectionCommand::initializePositionData):
188         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Don't update m_endingPosition
189         because that's removeNode's responsibility.
190         (WebCore::updatePositionForNodeRemoval): Added.
191         (WebCore::DeleteSelectionCommand::removeNode): Turned removeFullySelectedNode into a virtual
192         overload of removeNode so that we can update positions as we remove nodes.
193         (WebCore::updatePositionForTextRemoval): Added.
194         (WebCore::DeleteSelectionCommand::deleteTextFromNode):
195         (WebCore::DeleteSelectionCommand::handleGeneralDelete): 
196         (WebCore::DeleteSelectionCommand::fixupWhitespace): Got rid of m_trailingWhitespaceValid
197         since m_trailingWhitespace is always valid (we update it as we remove nodes).
198         (WebCore::DeleteSelectionCommand::mergeParagraphs):
199         (WebCore::DeleteSelectionCommand::doApply): Leading and trailing spaces should
200         be fixed if they have collapsed before merging paragraphs.
201         * editing/DeleteSelectionCommand.h:
202         * editing/EditAction.h:
203         (WebCore::):
204         * editing/FormatBlockCommand.cpp: Added.
205         (WebCore::FormatBlockCommand::FormatBlockCommand):
206         (WebCore::FormatBlockCommand::modifyRange): Similar to InsertListCommand::modifyRange().
207         (WebCore::FormatBlockCommand::doApply):
208         * editing/FormatBlockCommand.h: Added.
209         (WebCore::FormatBlockCommand::editingAction):
210         * editing/InsertListCommand.h:
211         (WebCore::InsertListCommand::editingAction):
212         * editing/JSEditor.cpp:
213         * editing/MergeIdenticalElementsCommand.cpp:
214         (WebCore::MergeIdenticalElementsCommand::doApply):
215         * editing/htmlediting.cpp:
216         (WebCore::validBlockTag):
217         (WebCore::createElement):
218         * editing/htmlediting.h:
219
220 2006-06-14  Maciej Stachowiak  <mjs@apple.com>
221
222         Reviewed by Anders.
223
224         - fixed <rdar://problem/4586051> 10.4.7 regression: 'Saved and recent' button on mapquest.com does not work
225
226         * dom/EventTargetNode.cpp:
227         (WebCore::EventTargetNode::dispatchWindowEvent):
228
229 2006-06-14  David Hyatt  <hyatt@apple.com>
230
231         Rename RenderSlider to DeprecatedSlider, so that I can start work on
232         the new NSView-less slider.
233
234         Reviewed by john
235
236         * WebCore.vcproj/WebCore/WebCore.vcproj:
237         * WebCore.xcodeproj/project.pbxproj:
238         * html/HTMLInputElement.cpp:
239         (WebCore::HTMLInputElement::createRenderer):
240         * rendering/DeprecatedSlider.cpp: Added.
241         (WebCore::DeprecatedSlider::DeprecatedSlider):
242         (WebCore::DeprecatedSlider::calcMinMaxWidth):
243         (WebCore::DeprecatedSlider::updateFromElement):
244         (WebCore::DeprecatedSlider::valueChanged):
245         * rendering/DeprecatedSlider.h: Added.
246         (WebCore::DeprecatedSlider::renderName):
247         * rendering/RenderSlider.cpp: Removed.
248         * rendering/RenderSlider.h: Removed.
249
250 2006-06-13  Geoffrey Garen  <ggaren@apple.com>
251
252         Reviewed by Maciej.
253         
254         - Fixed <rdar://problem/4562192> Creating a new DOMHTMLDocument 
255         appears challenging.
256         
257         - Added createHTMLDocument to Objc bindings, fixed up implementation
258         to comply with the DOM 2 Candidate Recommendation in which is was defined.
259         (It never made the final spec.) Also removed use of deprecatedString,
260         to avoid unnecessary killing of puppies.
261
262         * WebCore.xcodeproj/project.pbxproj:
263         * bindings/objc/DOM.mm:
264         (-[DOMImplementation createHTMLDocument:]):
265         * bindings/objc/DOMPrivate.h:
266         * dom/DOMImplementation.cpp:
267         (WebCore::DOMImplementation::createDocument):
268         (WebCore::DOMImplementation::createHTMLDocument):
269
270 2006-06-13  Alice Liu  <alice.liu@apple.com>
271
272         Reviewed by Adele.
273
274         fixed <rdar://problem/4457902> HTMLSelectElement.remove() can't handle an option obj being passed to it, results in hang on http://www.ibc-solar.de/www_ibc/fst_solarmonitoring.jsp
275
276         * bindings/js/kjs_html.cpp:
277         (KJS::HTMLElementFunction::callAsFunction):
278         support this by converting the argument to an options object
279         before passing to remove()
280
281 2006-06-13  Darin Adler  <darin@apple.com>
282
283         Reviewed by Geoff.
284
285         - fix <rdar://problem/4585333> Changing location for weather on yahoo.com home page redirects to another page
286
287         This patch fixes a bug where the event listener cache does not distinguish
288         HTML and non-HTML listeners. Incorrect behavior where stopPropagation also
289         prevented default masked a case of this bug on the yahoo.com home page until
290         we fixed bug 5180 on 2005-10-03.
291
292         Test: fast/events/event-listener-html-non-html-confusion.html
293
294         * bindings/js/kjs_window.h: Add additional listener maps for HTML event listeners.
295
296         * bindings/js/kjs_window.cpp:
297         (KJS::Window::~Window): Go through the additional maps when clearing the window object
298         pointer in event listeners.
299         (KJS::Window::getJSEventListener): Look in the HTML or non-HTML map depending on the
300         argument passed.
301         (KJS::Window::getJSUnprotectedEventListener): Ditto.
302
303         * bindings/js/kjs_events.cpp:
304         (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): Add to either the HTML
305         or non-HTML map depending on the argument passed.
306         (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): Remove from either the
307         HTML or non-HTML map depending on whether the HTML flag is set.
308         (KJS::JSEventListener::JSEventListener): More of the same.
309         (KJS::JSEventListener::~JSEventListener): Ditto.
310         (KJS::JSLazyEventListener::parseCode): Same thing here. In a lazy event listener there
311         is not a listener at construction time, thus the code here to put the listener into a
312         map needs the HTML vs. non-HTML logic.
313
314 2006-06-13  Maciej Stachowiak  <mjs@apple.com>
315
316         Reviewed by Darin.
317         
318         <rdar://problem/4583892> 10.4.7 regression: Hang occurs when attempting to load search results at mapquest.com
319
320         * dom/EventTargetNode.cpp:
321         (WebCore::EventTargetNode::dispatchGenericEvent): Don't allow
322         "load" events to propagate up to the window. We need this quirk to
323         avoid site hangs, because they depend on an old Mozilla bug.
324
325 2006-06-13  Antti Koivisto  <koivisto@iki.fi>
326
327         Reviewed by Hyatt.
328
329         http://bugzilla.opendarwin.org/show_bug.cgi?id=9314
330         Relative positioned block size doesnt update root layer size
331
332         - take relative positioning into account in leftmost/rightmost/lowestPosition()
333         - ignore zero width/height boxes in leftmost/rightmost/lowestPosition()
334         - split relativePositionOffset() to x and y functions
335         
336         * rendering/RenderBox.cpp:
337         (WebCore::RenderBox::absolutePosition):
338         (WebCore::RenderBox::relativePositionOffsetX):
339         (WebCore::RenderBox::relativePositionOffsetY):
340         (WebCore::RenderBox::lowestPosition):
341         (WebCore::RenderBox::rightmostPosition):
342         (WebCore::RenderBox::leftmostPosition):
343         * rendering/RenderBox.h:
344         * rendering/RenderFlow.cpp:
345         (WebCore::RenderFlow::lowestPosition):
346         (WebCore::RenderFlow::rightmostPosition):
347         (WebCore::RenderFlow::leftmostPosition):
348         * rendering/RenderLayer.cpp:
349         (WebCore::RenderLayer::updateLayerPosition):
350         * rendering/RenderObject.cpp:
351         (WebCore::RenderObject::offsetLeft):
352         (WebCore::RenderObject::offsetTop):
353
354 2006-06-13  Anders Carlsson  <acarlsson@apple.com>
355
356         Reviewed by Dave Hyatt.
357
358         http://bugzilla.opendarwin.org/show_bug.cgi?id=9427
359         xml-stylesheet processing instructions outside of the prolog should have no effect.
360
361         * dom/ProcessingInstruction.cpp:
362         (WebCore::ProcessingInstruction::checkStyleSheet):
363         Remove todo comment.
364         
365         * dom/xml_tokenizer.cpp:
366         (WebCore::XMLTokenizer::processingInstruction):
367         Only check for style sheet if the root element hasn't yet been encountered.
368
369 2006-06-13  Anders Carlsson  <acarlsson@apple.com>
370
371         Reviewed by Geoff.
372
373         http://bugzilla.opendarwin.org/show_bug.cgi?id=9406
374         REGRESSION: fix for bug 9390 broke two layout tests
375         
376         * loader/PluginDocument.cpp:
377         (WebCore::PluginTokenizer::writeRawData):
378         Call finished() after setting up the document structure so we'll emit onload events.
379
380 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
381
382         build fix -- forgot to svn add this file
383         
384         * ForwardingHeaders/kjs/SavedBuiltins.h: Added.
385
386 2006-06-12  Brady Eidson  <beidson@apple.com>
387
388         Reviewed by Maciej.
389
390         Fixed a bug in append(char) and append(UChar) where our intended copy-on-write semantics was ignored!
391
392         * platform/String.cpp:
393         (WebCore::String::append):
394
395 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
396
397         Reviewed by TimO, Maciej.
398
399         - WebCore part of merging InterpreterImp into Interpreter. No test
400         because there's no behavior change.
401         
402         A substantive change here is that ScriptInterpreter::mark must now chain to
403         Interpreter::mark, since Interpreter needs to mark the things that
404         InterpreterImp used to mark.
405         
406         * WebCore.xcodeproj/project.pbxproj:
407         * bindings/js/kjs_binding.cpp:
408         * bindings/js/kjs_window.cpp:
409         (KJS::Window::put):
410         * bridge/mac/WebCoreFrameBridge.mm:
411         * bridge/mac/WebCoreScriptDebugger.mm:
412         (-[WebCoreScriptCallFrame evaluateWebScript:]):
413         * kwq/KWQPageState.mm:
414
415 2006-06-12  Brady Eidson <beidson@apple.com>
416
417         Reviewed by Maciej.
418
419         Changed String::ascii() to return a Vector<char> instead of const char*
420         This allows us to use it "regularly" as the returned vector will destruct
421         and not leak memory like the previous approach.
422         We can now do a String.ascii().data() to get a char* buffer instead of 
423         String.deprecatedString().ascii().  It doesn't improve the style much but
424         dumping the memory-leak issue is a plus.
425
426         * icon/IconDatabase.cpp:
427         (WebCore::IconDatabase::open):
428         (WebCore::IconDatabase::clearDatabase):
429         * icon/SQLDatabase.cpp:
430         (SQLDatabase::open):
431         * icon/SQLStatement.cpp:
432         (WebCore::SQLStatement::prepare):
433         (WebCore::SQLStatement::step):
434         (WebCore::SQLStatement::returnTextResults):
435         (WebCore::SQLStatement::returnTextResults16):
436         (WebCore::SQLStatement::returnIntResults):
437         (WebCore::SQLStatement::returnInt64Results):
438         (WebCore::SQLStatement::returnDoubleResults):
439         In addition to the changes to the string classes, changed my database code over to the new
440         preferred method.
441
442         * platform/PlatformString.h:
443         * platform/String.cpp:
444         (WebCore::String::ascii):
445         * platform/StringImpl.cpp:
446         (WebCore::StringImpl::ascii):
447         * platform/StringImpl.h:
448
449 2006-06-12  Dave Hyatt <hyatt@apple.com>
450
451         Add the notion of a selection foreground color to the engine for
452         Win32.  Rename existing selectionColor methods to be
453         selectionBackgroundColor instead.
454
455         Change the 60% alpha blend rule for transparent selection to
456         instead be a range from 60-80%, with less transparency being
457         used as needed to ensure the transformed color more closely
458         approximates the original operating system color when blended
459         with a white background.
460
461         Reviewed by mjs
462
463         * platform/Color.cpp:
464         (WebCore::blend):
465         (WebCore::Color::blendWithWhite):
466         * platform/Color.h:
467         * rendering/InlineTextBox.cpp:
468         (WebCore::InlineTextBox::paint):
469         (WebCore::InlineTextBox::paintSelection):
470         * rendering/RenderBlock.cpp:
471         (WebCore::RenderBlock::fillHorizontalSelectionGap):
472         (WebCore::RenderBlock::fillVerticalSelectionGap):
473         (WebCore::RenderBlock::fillLeftSelectionGap):
474         (WebCore::RenderBlock::fillRightSelectionGap):
475         * rendering/RenderHTMLCanvas.cpp:
476         (WebCore::RenderHTMLCanvas::paint):
477         * rendering/RenderImage.cpp:
478         (WebCore::RenderImage::paint):
479         * rendering/RenderListMarker.cpp:
480         (WebCore::RenderListMarker::paint):
481         * rendering/RenderObject.cpp:
482         (WebCore::RenderObject::selectionBackgroundColor):
483         (WebCore::RenderObject::selectionForegroundColor):
484         * rendering/RenderObject.h:
485         * rendering/RenderTheme.cpp:
486         (WebCore::RenderTheme::activeSelectionBackgroundColor):
487         (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
488         (WebCore::RenderTheme::platformActiveSelectionBackgroundColor):
489         (WebCore::RenderTheme::platformInactiveSelectionBackgroundColor):
490         (WebCore::RenderTheme::platformActiveSelectionForegroundColor):
491         (WebCore::RenderTheme::platformInactiveSelectionForegroundColor):
492         * rendering/RenderTheme.h:
493         * rendering/RenderThemeMac.h:
494         * rendering/RenderThemeMac.mm:
495         (WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
496         (WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
497         * rendering/RenderThemeWin.cpp:
498         (WebCore::RenderThemeWin::platformActiveSelectionBackgroundColor):
499         (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
500         (WebCore::RenderThemeWin::platformActiveSelectionForegroundColor):
501         (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
502         * rendering/RenderThemeWin.h:
503         * rendering/RenderWidget.cpp:
504         (WebCore::RenderWidget::paint):
505
506 2006-06-12  John Sullivan  <sullivan@apple.com>
507
508         Reviewed by Darin Adler.
509         
510         * page/Frame.cpp:
511         (WebCore::Frame::markAllMatchesForText):
512         Do a "fake" paint here so that the rectangles for the text matches will have been
513         computed by the time this method returns.
514
515 2006-06-12  Brady Eidson  <beidson@apple.com>
516
517         Reviewed by Levi and Tim Omernick.
518
519         -Added a skeleton sqlite3 icon database file to IconDatabase
520         -Added functionality to validate and recreate this icon.db file
521         -Fixed some buggys in SQLDatabase.cpp
522
523         * icon/IconDatabase.cpp:
524         (WebCore::IconDatabase::open):
525         (WebCore::IconDatabase::isValidDatabase):
526         (WebCore::IconDatabase::clearDatabase):
527         (WebCore::IconDatabase::recreateDatabase):
528         * icon/IconDatabase.h:
529
530         * icon/SQLStatement.cpp:
531         (WebCore::SQLStatement::columnCount):
532         (WebCore::SQLStatement::getColumnName):
533         (WebCore::SQLStatement::getColumnName16):
534         (WebCore::SQLStatement::getColumnText):
535         (WebCore::SQLStatement::getColumnText16):
536         (WebCore::SQLStatement::getColumnDouble):
537         (WebCore::SQLStatement::getColumnInt):
538         (WebCore::SQLStatement::getColumnInt64):
539         (WebCore::SQLStatement::getColumnBlob):
540         -Added checks to make sure we had a valid working sqlite3_statement as the sqlite3_*
541         function calls weren't as error-tolerant as documentation advertised
542         (maybe differences between the 3.3 docs I looked at and the 3.1.3 version installed on OSX)
543
544 2006-06-12  Brady Eidson  <beidson@apple.com>
545
546         Reviewed by Levi.
547
548         -Added SQLite helper wrappers to ease use of SQLite in the IconDatabase.  
549         -Changed the base IconDatabase over to this new framework.
550
551         * WebCore.xcodeproj/project.pbxproj:
552         * bridge/mac/WebCoreIconDatabaseBridge.mm:
553         (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
554             -By popular request, removed an annoying log message I'd accidentally left in
555
556         * icon/IconDatabase.cpp:
557         (WebCore::IconDatabase::IconDatabase):
558         (WebCore::IconDatabase::open):
559         (WebCore::IconDatabase::close):
560         (WebCore::IconDatabase::~IconDatabase):
561         * icon/IconDatabase.h:
562         (WebCore::IconDatabase::isOpen):
563             -Changed over IconDatabase from direct sqlite3_* calls to the new SQLDatabase calls
564
565         * icon/SQLDatabase.cpp: Added.
566         (SQLDatabase::SQLDatabase):
567         (SQLDatabase::open):
568         (SQLDatabase::close):
569         (SQLDatabase::executeCommand):
570         (SQLDatabase::tableExists):
571         * icon/SQLDatabase.h: Added.
572         (WebCore::SQLDatabase::isOpen):
573         (WebCore::SQLDatabase::getPath):
574         (WebCore::SQLDatabase::lastError):
575         (WebCore::SQLDatabase::lastErrorMsg):
576         (WebCore::SQLStatement::isPrepared):
577         (WebCore::SQLStatement::lastError):
578         (WebCore::SQLStatement::lastErrorMsg):
579         * icon/SQLStatement.cpp: Added.
580         (WebCore::SQLStatement::SQLStatement):
581         (WebCore::SQLStatement::~SQLStatement):
582         (WebCore::SQLStatement::prepare):
583         (WebCore::SQLStatement::step):
584         (WebCore::SQLStatement::finalize):
585         (WebCore::SQLStatement::reset):
586         (WebCore::SQLStatement::executeCommand):
587         (WebCore::SQLStatement::bindBlob):
588         (WebCore::SQLStatement::bindText):
589         (WebCore::SQLStatement::columnCount):
590         (WebCore::SQLStatement::getColumnName):
591         (WebCore::SQLStatement::getColumnName16):
592         (WebCore::SQLStatement::getColumnText):
593         (WebCore::SQLStatement::getColumnText16):
594         (WebCore::SQLStatement::getColumnDouble):
595         (WebCore::SQLStatement::getColumnInt):
596         (WebCore::SQLStatement::getColumnInt64):
597         (WebCore::SQLStatement::getColumnBlob):
598         (WebCore::SQLStatement::returnTextResults):
599         (WebCore::SQLStatement::returnTextResults16):
600         (WebCore::SQLStatement::returnIntResults):
601         (WebCore::SQLStatement::returnInt64Results):
602         (WebCore::SQLStatement::returnDoubleResults):
603             -Initial checking of SQLDatabase framework
604
605         * platform/PlatformString.h:
606         * platform/String.cpp:
607         (WebCore::String::String):
608             -Added an explicit UChar* constructor to our string class as much of sqlite3's UTF16 handling is based on 
609             null-terminated UTF16 which we didn't yet support.
610
611 >>>>>>> .r14837
612 2006-06-11  David Kilzer  <ddkilzer@kilzer.net>
613
614         Reviewed by Maciej.
615
616         http://bugzilla.opendarwin.org/show_bug.cgi?id=9408
617         Clean build fails with "make: *** No rule to make target `SVGElementFactory.cpp', needed by `all'. Stop"
618
619         * DerivedSources.make: Fix clean builds.
620
621 2006-06-11  Darin Adler  <darin@apple.com>
622
623         - another try at fixing Windows
624
625         * loader/CachedResource.h:
626         * platform/cairo/GraphicsContextCairo.cpp:
627         * platform/image-decoders/ImageDecoder.h:
628         (WebCore::ImageDecoder::setData):
629         * platform/image-decoders/gif/GIFImageDecoder.cpp:
630         (WebCore::GIFImageDecoderPrivate::decode):
631         (WebCore::GIFImageDecoder::setData):
632         * platform/image-decoders/gif/GIFImageDecoder.h:
633         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
634         (WebCore::JPEGImageReader::decode):
635         (WebCore::JPEGImageDecoder::setData):
636         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
637         * platform/image-decoders/png/PNGImageDecoder.cpp:
638         (WebCore::PNGImageReader::decode):
639         (WebCore::PNGImageDecoder::setData):
640         * platform/image-decoders/png/PNGImageDecoder.h:
641         s/DeprecatedByteArray/Vector<char>/
642
643 2006-06-11  Darin Adler  <darin@apple.com>
644
645         - try to fix Windows build
646
647         * platform/cairo/ImageCairo.cpp: (WebCore::Image::loadResource):
648         Use Vector<char> instead of DeprecatedByteArray.
649
650         * platform/win/TemporaryLinkStubs.cpp: (KWQServeSynchronousRequest):
651         Don't try to return 0 from a function that returns a Vector<char>.
652
653 2006-06-11  Sam Weinig  <sam.weinig@gmail.com>
654
655         Reviewed by Hyatt, tweaked quite a bit and landed by Darin.
656
657         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8039
658           Remove use of DeprecatedArray in favor of new Vector class
659
660         This removes most of the uses of DeprecatedArray and 
661         DeprecatedByteArray, with the exception of DeprecatedCString.
662
663         No test cases added because there is no change in
664         functionality.
665
666         * loader/CachedCSSStyleSheet.cpp:
667         (WebCore::CachedCSSStyleSheet::data):
668         * loader/CachedCSSStyleSheet.h:
669         * loader/CachedImage.cpp:
670         (WebCore::CachedImage::bufferData):
671         (WebCore::CachedImage::data):
672         (WebCore::CachedImage::checkNotify):
673         (WebCore::CachedImage::shouldStopAnimation):
674         * loader/CachedImage.h:
675         * loader/CachedObject.cpp:
676         (WebCore::CachedObject::bufferData):
677         (WebCore::CachedObject::setExpireDate):
678         * loader/CachedObject.h:
679         (WebCore::CachedObject::setCharset):
680         * loader/CachedScript.cpp:
681         (WebCore::CachedScript::data):
682         * loader/CachedScript.h:
683         * loader/CachedXBLDocument.cpp:
684         (WebCore::CachedXBLDocument::data):
685         (WebCore::CachedXBLDocument::checkNotify):
686         * loader/CachedXBLDocument.h:
687         * loader/CachedXSLStyleSheet.cpp:
688         (WebCore::CachedXSLStyleSheet::data):
689         * loader/CachedXSLStyleSheet.h:
690         * loader/Request.cpp:
691         (WebCore::Request::Request):
692         (WebCore::Request::~Request):
693         * loader/Request.h:
694         (WebCore::Request::buffer):
695         (WebCore::Request::cachedObject):
696         (WebCore::Request::docLoader):
697         (WebCore::Request::isIncremental):
698         (WebCore::Request::setIsIncremental):
699         (WebCore::Request::isMultipart):
700         (WebCore::Request::setIsMultipart):
701         * loader/loader.cpp:
702         (WebCore::crossDomain):
703         (WebCore::Loader::Loader):
704         (WebCore::Loader::load):
705         (WebCore::Loader::servePendingRequests):
706         (WebCore::Loader::receivedAllData):
707         (WebCore::Loader::receivedResponse):
708         (WebCore::Loader::receivedData):
709         (WebCore::Loader::numRequests):
710         (WebCore::Loader::cancelRequests):
711         (WebCore::Loader::removeBackgroundDecodingRequest):
712         (WebCore::Loader::jobForRequest):
713         * platform/Image.cpp:
714         (WebCore::Image::setData):
715         * platform/Image.h:
716         (WebCore::Image::dataBuffer):
717
718         * css/cssstyleselector.cpp:
719         (WebCore::CSSStyleSelector::init):
720         (WebCore::CSSStyleSelector::matchRules):
721         (WebCore::CSSStyleSelector::matchRulesForList):
722         (WebCore::CSSStyleSelector::sortMatchedRules):
723         (WebCore::CSSStyleSelector::initForStyleResolve):
724         (WebCore::CSSStyleSelector::createStyleForElement):
725         (WebCore::CSSStyleSelector::createPseudoStyleForElement):
726         * css/cssstyleselector.h:
727         (WebCore::CSSStyleSelector::addMatchedRule):
728         (WebCore::CSSStyleSelector::addMatchedDeclaration):
729         * dom/xml_tokenizer.cpp:
730         (WebCore::OffsetBuffer::OffsetBuffer):
731         (WebCore::openFunc):
732         * html/HTMLOptionElement.cpp:
733         (WebCore::HTMLOptionElement::index):
734         * html/HTMLSelectElement.cpp:
735         (WebCore::HTMLSelectElement::selectedIndex):
736         (WebCore::HTMLSelectElement::setSelectedIndex):
737         (WebCore::HTMLSelectElement::length):
738         (WebCore::HTMLSelectElement::remove):
739         (WebCore::HTMLSelectElement::value):
740         (WebCore::HTMLSelectElement::setValue):
741         (WebCore::HTMLSelectElement::state):
742         (WebCore::HTMLSelectElement::restoreState):
743         (WebCore::HTMLSelectElement::appendFormData):
744         (WebCore::HTMLSelectElement::optionToListIndex):
745         (WebCore::HTMLSelectElement::listToOptionIndex):
746         (WebCore::HTMLSelectElement::recalcListItems):
747         (WebCore::HTMLSelectElement::reset):
748         (WebCore::HTMLSelectElement::notifyOptionSelected):
749         * html/HTMLSelectElement.h:
750         (WebCore::HTMLSelectElement::listItems):
751         * kwq/KWQLoader.h:
752         * kwq/KWQLoader.mm:
753         (KWQServeSynchronousRequest):
754         * kwq/KWQTextStream.cpp:
755         (QTextStream::operator<<):
756         * kwq/KWQTextStream.h:
757         * loader/FormData.cpp:
758         (WebCore::FormData::flatten):
759         (WebCore::FormData::flattenToString):
760         * loader/FormData.h:
761         (WebCore::FormDataElement::FormDataElement):
762         * platform/DeprecatedString.cpp:
763         * platform/DeprecatedString.h:
764         * platform/IntPointArray.cpp: Removed.
765         * platform/IntPointArray.h: Removed.
766         * platform/TextEncoding.cpp:
767         (WebCore::TextEncoding::toUnicode):
768         * platform/TextEncoding.h:
769         * platform/cairo/pixman/src/pixregion.c:
770         * platform/cg/PathCG.cpp:
771         (WebCore::Path::Path):
772         * rendering/RenderObject.cpp:
773         (WebCore::RenderObject::drawBorder):
774         * rendering/RenderTable.h:
775         (WebCore::RenderTable::colToEffCol):
776         (WebCore::RenderTable::effColToCol):
777         * rendering/RenderTableSection.cpp:
778         (WebCore::RenderTableSection::ensureRows):
779         (WebCore::RenderTableSection::addCell):
780         (WebCore::RenderTableSection::setCellWidths):
781         * rendering/RenderTableSection.h:
782         * rendering/bidi.cpp:
783         (WebCore::addMidpoint):
784         (WebCore::RenderBlock::layoutInlineChildren):
785         * rendering/render_form.cpp:
786         (WebCore::RenderSelect::updateFromElement):
787         (WebCore::RenderSelect::layout):
788         (WebCore::RenderSelect::valueChanged):
789         (WebCore::RenderSelect::selectionChanged):
790         (WebCore::RenderSelect::updateSelection):
791         * rendering/table_layout.cpp:
792         (WebCore::FixedTableLayout::layout):
793         * rendering/table_layout.h:
794         * xml/XSLTProcessor.cpp:
795         (WebCore::docLoaderFunc):
796         * xml/xmlhttprequest.cpp:
797         (WebCore::XMLHttpRequest::send):
798         (WebCore::XMLHttpRequest::processSyncLoadResults):
799         * xml/xmlhttprequest.h:
800
801 2006-06-11  David Kilzer  <ddkilzer@kilzer.net>
802
803         Reviewed by darin.
804
805         http://bugzilla.opendarwin.org/show_bug.cgi?id=9394
806         Fix no-SVG build
807
808         * DerivedSources.make: Removed tabs. Create empty SVGElementFactory.cpp on no-svg build.
809         * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Added #if SVG_SUPPORT/#endif.
810         * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Ditto.
811         * ksvg2/bindings/idl/svg/SVGAElement.idl: Add "Conditional=SVG" to all interfaces.
812         * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl: Ditto.
813         * ksvg2/bindings/idl/svg/SVGAnimateElement.idl: Ditto.
814         * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl: Ditto.
815         * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl: Ditto.
816         * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl: Ditto.
817         * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl: Ditto.
818         * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl: Ditto.
819         * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl: Ditto.
820         * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Ditto.
821         * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl: Ditto.
822         * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl: Ditto.
823         * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl: Ditto.
824         * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl: Ditto.
825         * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl: Ditto.
826         * ksvg2/bindings/idl/svg/SVGAnimatedString.idl: Ditto.
827         * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl: Ditto.
828         * ksvg2/bindings/idl/svg/SVGAnimationElement.idl: Ditto.
829         * ksvg2/bindings/idl/svg/SVGCircleElement.idl: Ditto.
830         * ksvg2/bindings/idl/svg/SVGClipPathElement.idl: Ditto.
831         * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl: Ditto.
832         * ksvg2/bindings/idl/svg/SVGCursorElement.idl: Ditto.
833         * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Ditto.
834         * ksvg2/bindings/idl/svg/SVGDefsElement.idl: Ditto.
835         * ksvg2/bindings/idl/svg/SVGDescElement.idl: Ditto.
836         * ksvg2/bindings/idl/svg/SVGElementInstance.idl: Ditto.
837         * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl: Ditto.
838         * ksvg2/bindings/idl/svg/SVGEllipseElement.idl: Ditto.
839         * ksvg2/bindings/idl/svg/SVGEvent.idl: Ditto.
840         * ksvg2/bindings/idl/svg/SVGException.idl: Ditto.
841         * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl: Ditto.
842         * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl: Ditto.
843         * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl: Ditto.
844         * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl: Ditto.
845         * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl: Ditto.
846         * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl: Ditto.
847         * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl: Ditto.
848         * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl: Ditto.
849         * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl: Ditto.
850         * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl: Ditto.
851         * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl: Ditto.
852         * ksvg2/bindings/idl/svg/SVGFEImageElement.idl: Ditto.
853         * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl: Ditto.
854         * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl: Ditto.
855         * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl: Ditto.
856         * ksvg2/bindings/idl/svg/SVGFETileElement.idl: Ditto.
857         * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl: Ditto.
858         * ksvg2/bindings/idl/svg/SVGFilterElement.idl: Ditto.
859         * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl: Ditto.
860         * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl: Ditto.
861         * ksvg2/bindings/idl/svg/SVGGElement.idl: Ditto.
862         * ksvg2/bindings/idl/svg/SVGGradientElement.idl: Ditto.
863         * ksvg2/bindings/idl/svg/SVGICCColor.idl: Ditto.
864         * ksvg2/bindings/idl/svg/SVGImageElement.idl: Ditto.
865         * ksvg2/bindings/idl/svg/SVGLangSpace.idl: Ditto.
866         * ksvg2/bindings/idl/svg/SVGLengthList.idl: Ditto.
867         * ksvg2/bindings/idl/svg/SVGLineElement.idl: Ditto.
868         * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl: Ditto.
869         * ksvg2/bindings/idl/svg/SVGLocatable.idl: Ditto.
870         * ksvg2/bindings/idl/svg/SVGMarkerElement.idl: Ditto.
871         * ksvg2/bindings/idl/svg/SVGNumberList.idl: Ditto.
872         * ksvg2/bindings/idl/svg/SVGPaint.idl: Ditto.
873         * ksvg2/bindings/idl/svg/SVGPathElement.idl: Ditto.
874         * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Ditto.
875         * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Ditto.
876         * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Ditto.
877         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Ditto.
878         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Ditto.
879         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Ditto.
880         * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Ditto.
881         * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Ditto.
882         * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Ditto.
883         * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Ditto.
884         * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Ditto.
885         * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Ditto.
886         * ksvg2/bindings/idl/svg/SVGPatternElement.idl: Ditto.
887         * ksvg2/bindings/idl/svg/SVGPointList.idl: Ditto.
888         * ksvg2/bindings/idl/svg/SVGPolygonElement.idl: Ditto.
889         * ksvg2/bindings/idl/svg/SVGPolylineElement.idl: Ditto.
890         * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl: Ditto.
891         * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl: Ditto.
892         * ksvg2/bindings/idl/svg/SVGRectElement.idl: Ditto.
893         * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl: Ditto.
894         * ksvg2/bindings/idl/svg/SVGScriptElement.idl: Ditto.
895         * ksvg2/bindings/idl/svg/SVGSetElement.idl: Ditto.
896         * ksvg2/bindings/idl/svg/SVGStopElement.idl: Ditto.
897         * ksvg2/bindings/idl/svg/SVGStringList.idl: Ditto.
898         * ksvg2/bindings/idl/svg/SVGStylable.idl: Ditto.
899         * ksvg2/bindings/idl/svg/SVGStyleElement.idl: Ditto.
900         * ksvg2/bindings/idl/svg/SVGSwitchElement.idl: Ditto.
901         * ksvg2/bindings/idl/svg/SVGSymbolElement.idl: Ditto.
902         * ksvg2/bindings/idl/svg/SVGTSpanElement.idl: Ditto.
903         * ksvg2/bindings/idl/svg/SVGTests.idl: Ditto.
904         * ksvg2/bindings/idl/svg/SVGTextContentElement.idl: Ditto.
905         * ksvg2/bindings/idl/svg/SVGTextElement.idl: Ditto.
906         * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl: Ditto.
907         * ksvg2/bindings/idl/svg/SVGTitleElement.idl: Ditto.
908         * ksvg2/bindings/idl/svg/SVGTransformList.idl: Ditto.
909         * ksvg2/bindings/idl/svg/SVGTransformable.idl: Ditto.
910         * ksvg2/bindings/idl/svg/SVGURIReference.idl: Ditto.
911         * ksvg2/bindings/idl/svg/SVGUnitTypes.idl: Ditto.
912         * ksvg2/bindings/idl/svg/SVGUseElement.idl: Ditto.
913         * ksvg2/bindings/idl/svg/SVGViewElement.idl: Ditto.
914         * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl: Ditto.
915         * ksvg2/bindings/idl/svg/SVGZoomEvent.idl: Ditto.
916         * ksvg2/svg/SVGAngle.idl: Ditto.
917         * ksvg2/svg/SVGAnimatedLength.idl: Ditto.
918         * ksvg2/svg/SVGColor.idl: Ditto.
919         * ksvg2/svg/SVGDocument.idl: Ditto.
920         * ksvg2/svg/SVGElement.idl: Ditto.
921         * ksvg2/svg/SVGEvent.idl: Ditto.
922         * ksvg2/svg/SVGLength.idl: Ditto.
923         * ksvg2/svg/SVGMatrix.idl: Ditto.
924         * ksvg2/svg/SVGNumber.idl: Ditto.
925         * ksvg2/svg/SVGPoint.idl: Ditto.
926         * ksvg2/svg/SVGRect.idl: Ditto.
927         * ksvg2/svg/SVGSVGElement.idl: Ditto.
928         * ksvg2/svg/SVGTransform.idl: Ditto.
929
930 2006-06-11  Anders Carlsson  <acarlsson@apple.com>
931
932         Reviewed by Geoff.
933
934         http://bugzilla.opendarwin.org/show_bug.cgi?id=9390
935         Move full-frame plugins to WebCore
936         
937         * WebCore.vcproj/WebCore/WebCore.vcproj:
938         * WebCore.xcodeproj/project.pbxproj:
939         Add PluginDocument
940         
941         * bridge/mac/FrameMac.h:
942         * bridge/mac/FrameMac.mm:
943         (WebCore::FrameMac::redirectDataToPlugin):
944         Call the bridge.
945         
946         * bridge/mac/WebCoreFrameBridge.h:
947         * bridge/mac/WebCoreFrameBridge.mm:
948         Add redirectDataToPlugin which is used to redirect incoming data
949         to a plugin.
950         
951         * bridge/mac/WebCoreViewFactory.h:
952         Add pluginSupportsMIMEType which returns whether any plugins support a given MIME type.
953         
954         * dom/DOMImplementation.cpp:
955         * dom/DOMImplementation.h:
956         Get rid of createTextDocument and just create a text document explicitly when needed.
957         
958         * dom/Document.h:
959         (WebCore::Document::isPluginDocument):
960         * loader/PluginDocument.cpp: Added.
961         (WebCore::PluginTokenizer::PluginTokenizer):
962         (WebCore::PluginTokenizer::wantsRawData):
963         (WebCore::PluginTokenizer::write):
964         (WebCore::PluginTokenizer::createDocumentStructure):
965         (WebCore::PluginTokenizer::writeRawData):
966         (WebCore::PluginTokenizer::stopParsing):
967         (WebCore::PluginTokenizer::finish):
968         (WebCore::PluginTokenizer::isWaitingForScripts):
969         (WebCore::PluginDocument::PluginDocument):
970         (WebCore::PluginDocument::createTokenizer):
971         * loader/PluginDocument.h: Added.
972         (WebCore::PluginDocument::isPluginDocument):
973         Add PluginDocument.
974         
975         * page/Frame.cpp:
976         (WebCore::Frame::begin):
977         Possibly create a plugin document.
978         
979         * page/Frame.h:
980         (WebCore::Frame::redirectDataToPlugin):
981         Add declaration.
982         
983         * platform/PlugInInfoStore.h:
984         * platform/mac/PlugInInfoStoreMac.mm:
985         (WebCore::PlugInInfoStore::supportsMIMEType):
986         Ask WebCoreViewFactory if the MIME type is supported.
987
988 2006-06-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
989
990         Reviewed by hyatt.
991
992         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9334
993           Incomplete repaint when changing block from non-positioned to positioned
994
995         Test: fast/repaint/static-to-positioned.html
996
997         * rendering/RenderObject.cpp:
998         (WebCore::RenderObject::setStyle): If changing from static to positioned, repaint
999         as static.
1000
1001 2006-06-10  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1002
1003         Reviewed by hyatt.
1004
1005         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9193
1006           REGRESSION: setting an opacity on an element with an outline causes the outline to disappear completely
1007
1008         Test: fast/layers/opacity-outline.html
1009
1010         - fix repainting of layer children's outlines that extend beyond the layer
1011
1012         Test: fast/repaint/layer-child-outline.html
1013
1014         * rendering/RenderLayer.cpp:
1015         (WebCore::RenderLayer::intersectsDamageRect): Account for outlines.
1016         (WebCore::RenderLayer::absoluteBoundingBox): Ditto.
1017         * rendering/RenderObject.cpp:
1018         (WebCore::RenderObject::maximalOutlineSize): Changed to return the view's maximal
1019         outline size rather than 0 for PaintPhaseChildOutlines.
1020
1021 2006-06-10  Steve Falkenburg  <sfalken@apple.com>
1022
1023         Fix build break
1024
1025         * platform/cairo/GraphicsContextCairo.cpp:
1026         * platform/win/TemporaryLinkStubs.cpp:
1027         (GraphicsContext::scale):
1028
1029 2006-06-10  Geoffrey Garen  <ggaren@apple.com>
1030
1031         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8515
1032         Linux porting compile bug
1033         
1034         Fix by Mike Emmel, Reviewed by Darin.
1035
1036         * Projects/gdk/webcore-gdk.bkl:
1037         * WebCoreSources.bkl:
1038         * css/maketokenizer:
1039         * html/HTMLCanvasElement.cpp:
1040         * html/HTMLImageElement.h:
1041         * icon/IconDatabase.cpp:
1042         * make-generated-sources.sh:
1043         * page/Frame.h:
1044         * page/FramePrivate.h:
1045         * platform/Cursor.h:
1046         * platform/FontData.h:
1047         (WebCore::FontData::getGlyphIndex):
1048         * platform/GlyphBuffer.h:
1049         (WebCore::GlyphBuffer::glyphAt):
1050         (WebCore::GlyphBuffer::advanceAt):
1051         (WebCore::GlyphBuffer::add):
1052         * platform/GraphicsContext.h:
1053         * platform/PlatformKeyboardEvent.h:
1054         * platform/PlatformMouseEvent.h:
1055         * platform/PlatformWheelEvent.h:
1056         * platform/ScrollView.h:
1057         * platform/TransferJob.h:
1058         (WebCore::TransferJob::getInternal):
1059         * platform/TransferJobInternal.h:
1060         (WebCore::TransferJobInternal::TransferJobInternal):
1061         * platform/Widget.h:
1062         * platform/cairo/GraphicsContextCairo.cpp:
1063         (WebCore::GraphicsContext::GraphicsContext):
1064         (WebCore::GraphicsContext::roundToDevicePixels):
1065         * webcore-base.bkl:
1066         * xpath/impl/XPathValue.cpp:
1067
1068 2006-06-09  John Sullivan  <sullivan@apple.com>
1069
1070         Reviewed by Tim Omernick and Dave Hyatt.
1071
1072         WebCore support for computing but not highlighting rects for text matches.
1073
1074         * dom/Document.h:
1075         added setRenderedRectForMarker() and renderedRectsForMarkers(), and redefined
1076         MarkerMap to be a hashtable of node -> (pair of vectors), one vector of markers
1077         and one vector of rects
1078         
1079         * dom/Document.cpp:
1080         (placeholderRectForMarker()):
1081         new function, returns a recognizable degenerate rect used until a real rect has been set
1082         (WebCore::Document::addMarker):
1083         Reworked for new MarkerMap data structure; now adds parallel placeholder rect
1084         along with marker
1085         (WebCore::Document::copyMarkers):
1086         Reworked for new MarkerMap data structure
1087         (WebCore::Document::removeMarkers):
1088         Reworked for new MarkerMap data structure; now removed corresponding rect along
1089         with marker
1090         (WebCore::Document::markersForNode):
1091         Reworked for new MarkerMap data structure
1092         (WebCore::Document::renderedRectsForMarkers):
1093         New method, returns an array of all non-placeholder rects for the given marker type
1094         (WebCore::Document::repaintMarkers):
1095         Reworked for new MarkerMap data structure
1096         (WebCore::Document::setRenderedRectForMarker):
1097         New method, sets the rendered rect for a given marker
1098         (WebCore::Document::shiftMarkers):
1099         Reworked for new MarkerMap data structure; resets rendered rects to placeholders.
1100         
1101         * rendering/InlineTextBox.cpp:
1102         (WebCore::InlineTextBox::paint):
1103         removed markedTextMatchesAreHighlighted guard; we always want to call paintTextMatchMarker
1104         now, but sometimes we will end up only computing the rect, not actually highlighting it.
1105         (Maybe some names should be improved here?)
1106         (WebCore::InlineTextBox::paintTextMatchMarker):
1107         Reorganized to move all the code that actually draws into a block that's guarded by
1108         markedTextMatchesAreHighlighted. The rest of the code computes where the highlight will
1109         go, and now we always use that computation in order to call setRenderedRectForMarker.
1110
1111         * bridge/mac/WebCoreFrameBridge.h:
1112         * bridge/mac/WebCoreFrameBridge.mm:
1113         (-[WebCoreFrameBridge rectsForTextMatches]):
1114         New method, returns an array of NSValues representing NSRects. Gets them
1115         from Document::renderedRectsForMarkers
1116         
1117 2006-06-10  Anders Carlsson  <acarlsson@apple.com>
1118
1119         Reviewed by Eric.
1120
1121         * bindings/js/kjs_html.cpp:
1122         (KJS::JSHTMLElement::put):
1123         Call WebCore::JSHTMLElement::put so that autogenerated setters will work 
1124         for HTMLElement.
1125
1126 2006-06-09  Geoffrey Garen  <ggaren@apple.com>
1127
1128         - Build fix after last JSC check-in (oops!)
1129         
1130         * bridge/mac/WebCoreScriptDebugger.mm:
1131         (-[WebCoreScriptCallFrame scopeChain]):
1132         (-[WebCoreScriptCallFrame functionName]):
1133         (-[WebCoreScriptCallFrame evaluateWebScript:]):
1134
1135 2006-06-09  David Hyatt  <hyatt@apple.com>
1136
1137         Rename m_isFocused on the frame to m_isActive, since it isn't really
1138         about focus but is instead about whether or not the top-level window is
1139         active.
1140
1141         Pull code that was incorrectly factored into Mac-only code out of FrameMac
1142         and back up into Frame.
1143
1144         Reviewed by andersca
1145
1146         * bridge/mac/FrameMac.h:
1147         * bridge/mac/FrameMac.mm:
1148         * page/Frame.cpp:
1149         (WebCore::Frame::setFocusNodeIfNeeded):
1150         (WebCore::Frame::isActive):
1151         (WebCore::Frame::setIsActive):
1152         * page/FramePrivate.h:
1153         (WebCore::FramePrivate::FramePrivate):
1154
1155 2006-06-09  David Hyatt  <hyatt@apple.com>
1156
1157         Rework selection coloring.  Rename displaysWithFocusAttributes
1158         to isActive.  Move the white-blending code onto the Color API to make
1159         it more convenient to mutate colors for selection blending.  Eliminate all
1160         the selection state from the GraphicsContext and move it to the RenderTheme.
1161         Implement both Win32 and Mac theme selection colors.
1162
1163         Reviewed by sfalken
1164
1165         * bridge/mac/FrameMac.h:
1166         * bridge/mac/FrameMac.mm:
1167         (WebCore::FrameMac::setIsActive):
1168         * bridge/mac/WebCoreFrameBridge.h:
1169         * bridge/mac/WebCoreFrameBridge.mm:
1170         (-[WebCoreFrameBridge drawRect:]):
1171         (-[WebCoreFrameBridge setIsActive:]):
1172         (-[WebCoreFrameBridge selectionColor]):
1173         * css/cssstyleselector.cpp:
1174         (WebCore::CSSStyleSelector::checkOneSelector):
1175         * page/Frame.cpp:
1176         (WebCore::Frame::isActive):
1177         (WebCore::Frame::setIsActive):
1178         * page/Frame.h:
1179         * platform/Color.cpp:
1180         (WebCore::blend):
1181         (WebCore::Color::blendWithWhite):
1182         * platform/Color.h:
1183         (WebCore::Color::hasAlpha):
1184         * platform/GraphicsContext.cpp:
1185         (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
1186         * platform/GraphicsContext.h:
1187         * platform/mac/GraphicsContextMac.mm:
1188         * platform/win/TemporaryLinkStubs.cpp:
1189         (GraphicsContext::endTransparencyLayer):
1190         * rendering/InlineTextBox.cpp:
1191         (WebCore::InlineTextBox::paintSelection):
1192         * rendering/RenderBlock.cpp:
1193         (WebCore::RenderBlock::fillHorizontalSelectionGap):
1194         (WebCore::RenderBlock::fillVerticalSelectionGap):
1195         (WebCore::RenderBlock::fillLeftSelectionGap):
1196         (WebCore::RenderBlock::fillRightSelectionGap):
1197         * rendering/RenderHTMLCanvas.cpp:
1198         (WebCore::RenderHTMLCanvas::paint):
1199         * rendering/RenderImage.cpp:
1200         (WebCore::RenderImage::paint):
1201         * rendering/RenderListMarker.cpp:
1202         (WebCore::RenderListMarker::paint):
1203         * rendering/RenderListMarker.h:
1204         * rendering/RenderObject.cpp:
1205         (WebCore::RenderObject::selectionColor):
1206         * rendering/RenderObject.h:
1207         * rendering/RenderReplaced.cpp:
1208         * rendering/RenderReplaced.h:
1209         * rendering/RenderTheme.cpp:
1210         (WebCore::RenderTheme::activeSelectionColor):
1211         (WebCore::RenderTheme::inactiveSelectionColor):
1212         (WebCore::RenderTheme::platformActiveSelectionColor):
1213         (WebCore::RenderTheme::platformInactiveSelectionColor):
1214         * rendering/RenderTheme.h:
1215         * rendering/RenderThemeMac.h:
1216         * rendering/RenderThemeMac.mm:
1217         (WebCore::RenderThemeMac::platformActiveSelectionColor):
1218         (WebCore::RenderThemeMac::platformInactiveSelectionColor):
1219         * rendering/RenderThemeWin.cpp:
1220         (WebCore::RenderThemeWin::platformActiveSelectionColor):
1221         (WebCore::RenderThemeWin::platformInactiveSelectionColor):
1222         * rendering/RenderThemeWin.h:
1223         * rendering/RenderWidget.cpp:
1224         (WebCore::RenderWidget::paint):
1225
1226 2006-06-09  Justin Garcia  <justin.garcia@apple.com>
1227
1228         Reviewed by levi
1229         
1230         <rdar://problem/4549980>
1231         REGRESSION: "Find Again" can get stuck when searching for string with a trailing space
1232
1233         * bridge/mac/FrameMac.h: Moved findString to Frame.
1234         * bridge/mac/FrameMac.mm: Ditto.
1235         * bridge/mac/WebCoreFrameBridge.mm:
1236         (-[WebCoreFrameBridge searchFor:direction:caseSensitive:wrap:]): 
1237         Convert the NSString to a String.
1238         * editing/JSEditor.cpp: Added execCommand(FindString, ...)
1239         * editing/Selection.cpp: Added a constructor for Ranges
1240         (WebCore::Selection::Selection): 
1241         * editing/Selection.h:
1242         * page/Frame.cpp:
1243         (WebCore::Frame::findString): Moved from FrameMac.  Compare a selection created 
1244         using the found range with the current selection in case the current selection is
1245         the found range minus some collapsed whitespace on the edges.
1246         * page/Frame.h:
1247
1248 2006-06-09  Steve Falkenburg  <sfalken@apple.com>
1249
1250         Fix build break
1251
1252         * WebCore.vcproj/WebCore/WebCore.vcproj:
1253         * css/MediaQueryEvaluator.cpp:
1254         * platform/win/TemporaryLinkStubs.cpp:
1255         (GraphicsContext::addRoundedRectClip):
1256         (GraphicsContext::addInnerRoundedRectClip):
1257         (WebCore::screenDepthPerComponent):
1258         (WebCore::screenIsMonochrome):
1259
1260 2006-06-09  Kimmo Kinnunen  <kimmo.t.kinnunen@nokia.com>
1261
1262         Reviewed by Hyatt. Tweaked by Maciej. Tweaks reviewed by Beth. 
1263         Landed by Beth.
1264
1265         CSS3 Media Queries implementation.
1266         <http://bugzilla.opendarwin.org/show_bug.cgi?id=4127>
1267
1268         * WebCore.xcodeproj/project.pbxproj:
1269         * bindings/js/kjs_css.cpp:
1270         (KJS::DOMMediaList::put):
1271         (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
1272         * bindings/objc/DOMCSS.mm:
1273         (-[DOMMediaList setMediaText:]):
1274         (-[DOMMediaList deleteMedium:]):
1275         (-[DOMMediaList appendMedium:]):
1276         * css/CSSGrammar.y:
1277         * css/MediaFeatureNames.cpp: Added.
1278         (WebCore::MediaFeatureNames::init):
1279         * css/MediaFeatureNames.h: Added.
1280         * css/MediaList.cpp:
1281         (WebCore::MediaList::MediaList):
1282         (WebCore::MediaList::~MediaList):
1283         (WebCore::parseMediaDescriptor):
1284         (WebCore::MediaList::deleteMedium):
1285         (WebCore::MediaList::mediaText):
1286         (WebCore::MediaList::setMediaText):
1287         (WebCore::MediaList::item):
1288         (WebCore::MediaList::appendMedium):
1289         (WebCore::MediaList::appendMediaQuery):
1290         * css/MediaList.h:
1291         (WebCore::MediaList::MediaList):
1292         (WebCore::MediaList::length):
1293         (WebCore::MediaList::mediaQueries):
1294         * css/MediaQuery.cpp: Added.
1295         (WebCore::MediaQuery::MediaQuery):
1296         (WebCore::MediaQuery::~MediaQuery):
1297         (WebCore::MediaQuery::operator==):
1298         (WebCore::MediaQuery::cssText):
1299         * css/MediaQuery.h: Added.
1300         (WebCore::MediaQuery::):
1301         (WebCore::MediaQuery::restrictor):
1302         (WebCore::MediaQuery::expressions):
1303         (WebCore::MediaQuery::mediaType):
1304         (WebCore::MediaQuery::append):
1305         * css/MediaQueryEvaluator.cpp: Added.
1306         (WebCore::):
1307         (WebCore::MediaQueryEvaluator):
1308         (WebCore::MediaQueryEvaluator::~MediaQueryEvaluator):
1309         (WebCore::MediaQueryEvaluator::mediaTypeMatch):
1310         (WebCore::applyRestrictor):
1311         (WebCore::MediaQueryEvaluator::eval):
1312         (WebCore::parseAspectRatio):
1313         (WebCore::cmpvalue):
1314         (WebCore::numberValue):
1315         (WebCore::colorMediaFeatureEval):
1316         (WebCore::monochromeMediaFeatureEval):
1317         (WebCore::device_aspect_ratioMediaFeatureEval):
1318         (WebCore::gridMediaFeatureEval):
1319         (WebCore::device_heightMediaFeatureEval):
1320         (WebCore::device_widthMediaFeatureEval):
1321         (WebCore::heightMediaFeatureEval):
1322         (WebCore::widthMediaFeatureEval):
1323         (WebCore::min_colorMediaFeatureEval):
1324         (WebCore::max_colorMediaFeatureEval):
1325         (WebCore::min_monochromeMediaFeatureEval):
1326         (WebCore::max_monochromeMediaFeatureEval):
1327         (WebCore::min_device_aspect_ratioMediaFeatureEval):
1328         (WebCore::max_device_aspect_ratioMediaFeatureEval):
1329         (WebCore::min_heightMediaFeatureEval):
1330         (WebCore::max_heightMediaFeatureEval):
1331         (WebCore::min_widthMediaFeatureEval):
1332         (WebCore::max_widthMediaFeatureEval):
1333         (WebCore::min_device_heightMediaFeatureEval):
1334         (WebCore::max_device_heightMediaFeatureEval):
1335         (WebCore::min_device_widthMediaFeatureEval):
1336         (WebCore::max_device_widthMediaFeatureEval):
1337         (WebCore::createFunctionMap):
1338         * css/MediaQueryEvaluator.h: Added.
1339         * css/MediaQueryExp.cpp: Added.
1340         (WebCore::MediaQueryExp::MediaQueryExp):
1341         (WebCore::MediaQueryExp::~MediaQueryExp):
1342         * css/MediaQueryExp.h: Added.
1343         (WebCore::MediaQueryExp::mediaFeature):
1344         (WebCore::MediaQueryExp::value):
1345         (WebCore::MediaQueryExp::operator==):
1346         * css/StyleSheet.cpp:
1347         (WebCore::StyleSheet::setMedia):
1348         * css/cssparser.cpp:
1349         (WebCore::CSSParser::CSSParser):
1350         (WebCore::CSSParser::~CSSParser):
1351         (WebCore::CSSParser::setupParser):
1352         (WebCore::CSSParser::parseMediaQuery):
1353         (WebCore::CSSParser::createFloatingMediaQueryExp):
1354         (WebCore::CSSParser::sinkFloatingMediaQueryExp):
1355         (WebCore::CSSParser::createFloatingMediaQueryExpList):
1356         (WebCore::CSSParser::sinkFloatingMediaQueryExpList):
1357         (WebCore::CSSParser::createFloatingMediaQuery):
1358         (WebCore::CSSParser::sinkFloatingMediaQuery):
1359         * css/cssparser.h:
1360         * css/cssstyleselector.cpp:
1361         (WebCore::CSSStyleSelector::CSSStyleSelector):
1362         (WebCore::CSSStyleSelector::init):
1363         (WebCore::CSSStyleSelector::~CSSStyleSelector):
1364         (WebCore::CSSStyleSelector::loadDefaultStyle):
1365         (WebCore::CSSStyleSelector::matchUARules):
1366         (WebCore::CSSStyleSelector::styleForElement):
1367         (WebCore::CSSStyleSelector::pseudoStyleForElement):
1368         (WebCore::CSSStyleSelector::updateFont):
1369         (WebCore::CSSStyleSelector::cacheBorderAndBackground):
1370         (WebCore::CSSStyleSelector::styleRulesForElement):
1371         (WebCore::CSSRuleSet::addRulesFromSheet):
1372         * css/cssstyleselector.h:
1373         * css/maketokenizer:
1374         * css/tokenizer.flex:
1375         * dom/DOMImplementation.cpp:
1376         (WebCore::DOMImplementation::createCSSStyleSheet):
1377         * html/HTMLLinkElement.cpp:
1378         (WebCore::HTMLLinkElement::process):
1379         (WebCore::HTMLLinkElement::setStyleSheet):
1380         * html/HTMLStyleElement.cpp:
1381         (WebCore::HTMLStyleElement::childrenChanged):
1382         * ksvg2/svg/SVGDOMImplementation.cpp:
1383         (SVGDOMImplementation::createCSSStyleSheet):
1384         * ksvg2/svg/SVGStyleElement.cpp:
1385         (WebCore::SVGStyleElement::childrenChanged):
1386         * page/Frame.cpp:
1387         (WebCore::Frame::Frame):
1388         * platform/Screen.h:
1389         * platform/mac/ScreenMac.mm:
1390         (WebCore::screenDepthPerComponent):
1391         (WebCore::screenIsMonochrome):
1392
1393 2006-06-08  Levi Weintraub  <lweintraub@apple.com>
1394
1395         Reviewed by justin
1396         
1397         <http://bugzilla.opendarwin.org/show_bug.cgi?id=4468>
1398         Implement execCommand(Insert{Un}OrderedList)
1399
1400         * WebCore.xcodeproj/project.pbxproj: Added InsertListCommand.{h,cpp} to the project.
1401         * dom/Position.cpp:
1402         (WebCore::hasRenderedNonAnonymousDescendantsWithHeight): 
1403         Added. A block with height is only a candidate if this is false.  This should fix the problems
1404         getting carets into empty blocks.
1405         (WebCore::Position::inRenderedContent):
1406         * editing/AppendNodeCommand.cpp:
1407         (WebCore::AppendNodeCommand::doApply):
1408         * editing/CompositeEditCommand.cpp:
1409         (WebCore::hasARenderedDescendant):
1410         (WebCore::CompositeEditCommand::prune): A node can have DOM descendants that are rendered, yet
1411         have a renderer with no descendants.  Fixed the pruning rule to avoid removing a node like this.
1412         (WebCore::CompositeEditCommand::mergeIdenticalElements): Put the two elements next to
1413         each other if they aren't already, as a convenience.
1414         (WebCore::CompositeEditCommand::moveParagraph): Added code to preserve the current selection.
1415         (WebCore::CompositeEditCommand::moveParagraphs): Ditto. 
1416         * editing/CompositeEditCommand.h:
1417         * editing/DeleteSelectionCommand.cpp:
1418         (WebCore::DeleteSelectionCommand::initializeStartEnd): Expansion for special elements should
1419         continue to happen until it is no longer possible.
1420         (WebCore::DeleteSelectionCommand::handleGeneralDelete): The code to adjust the start node
1421         wouldn't always avoid removing the start block.
1422         * editing/InsertListCommand.cpp: Added.
1423         (WebCore::InsertListCommand::fixOrphanedListChild): Puts a list item that isn't inside a list
1424         into a list.
1425         (WebCore::InsertListCommand::InsertListCommand):
1426         (WebCore::InsertListCommand::modifyRange):
1427         (WebCore::InsertListCommand::doApply):
1428         * editing/InsertListCommand.h: Added.
1429         (WebCore::InsertListCommand::):
1430         * editing/InsertNodeBeforeCommand.cpp:
1431         (WebCore::InsertNodeBeforeCommand::doApply):
1432         * editing/InsertParagraphSeparatorCommand.cpp:
1433         * editing/JSEditor.cpp:
1434         * editing/TextIterator.cpp:
1435         (WebCore::TextIterator::advance): Don't handle a node if the end of the range used to create the 
1436         iterator ends at the start of that node.
1437         * editing/VisiblePosition.cpp:
1438         (WebCore::VisiblePosition::next):
1439         (WebCore::VisiblePosition::previous):
1440         * editing/VisiblePosition.h: 
1441         Added a parameter to next/previous that can prevent them from leaving the current editable region.
1442         * editing/htmlediting.cpp:
1443         (WebCore::highestAncestor):
1444         (WebCore::enclosingList):
1445         (WebCore::enclosingListChild):
1446         (WebCore::outermostEnclosingList):
1447         (WebCore::createListItemElement):
1448         * editing/htmlediting.h:
1449         * page/Frame.cpp:
1450         (WebCore::Frame::selectionListState): Added.
1451         * page/Frame.h:
1452
1453 2006-06-08  David Harrison  <harrison@apple.com>
1454
1455         Reviewed by Geoff and John.
1456
1457         <rdar://problem/4558879> -[DOMCSSPrimitiveValue setStringValue:] throws an exception (12)
1458         
1459         Problem was the primitive value was getting reset to a generic state before the parameter
1460         check that relies on that state.
1461
1462         Test: fast/dom/setPrimitiveValue.html
1463
1464         * css/CSSPrimitiveValue.cpp:
1465         (WebCore::CSSPrimitiveValue::setFloatValue):
1466         (WebCore::CSSPrimitiveValue::setStringValue):
1467         Move parameter checks ahead of call to cleanup().
1468
1469 2006-06-08  Alice Liu  <alice.liu@apple.com>
1470
1471         Reviewed by justin.
1472
1473         - fixed <rdar://problem/4578115> support Range.isPointInRange
1474         - fixed <rdar://problem/4578123> support Range.comparePoint
1475
1476         * dom/Range.cpp:
1477         (WebCore::Range::isPointInRange):
1478         added implementation
1479         (WebCore::Range::comparePoint):
1480         added implementation
1481         * dom/Range.h:
1482         added prototypes
1483         * dom/Range.idl:
1484         added bindings
1485
1486 2006-06-08  Darin Adler  <darin@apple.com>
1487
1488         Reviewed by justin.
1489
1490         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8616
1491           REGRESSION: TinyMCE: Crash on Undo
1492
1493         * bridge/mac/WebCoreFrameBridge.mm:
1494         (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]):
1495         Changed to call nodeInfoAtPoint directly.
1496         (-[WebCoreFrameBridge _visiblePositionForPoint:]): Changed to call nodeInfoAtPoint directly.
1497         Also added code to convert coordinates so it works for points that are in nodes in subframes.
1498
1499         * page/Frame.cpp:
1500         (WebCore::Frame::setMark): Added assertions to catch if we attempt to set selection
1501         endpoints in another document.
1502         (WebCore::Frame::setSelection): Ditto.
1503
1504 2006-06-07  Justin Garcia  <justin.garcia@apple.com>
1505
1506         Reviewed by levi
1507         
1508         Fixed some comments and removed an unused variable.
1509
1510         * editing/CompositeEditCommand.cpp:
1511         (WebCore::CompositeEditCommand::removeBlockPlaceholder):
1512         Don't remove a br if it isn't at the start of a block, since
1513         it isn't really a "block placeholder".
1514         * editing/DeleteSelectionCommand.cpp:
1515         (WebCore::DeleteSelectionCommand::initializePositionData):
1516         (WebCore::DeleteSelectionCommand::mergeParagraphs):
1517         (WebCore::DeleteSelectionCommand::doApply):
1518         * editing/InsertLineBreakCommand.cpp:
1519         (WebCore::InsertLineBreakCommand::doApply):
1520         * editing/ReplaceSelectionCommand.cpp:
1521         (WebCore::ReplaceSelectionCommand::doApply):
1522         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
1523         * editing/htmlediting.cpp:
1524
1525 2006-06-07  David Hyatt  <hyatt@apple.com>
1526
1527         Add support for custom highlighting.  This is all ifdefed to be Mac-only.
1528
1529         Reviewed by justin
1530
1531         * WebCore.xcodeproj/project.pbxproj:
1532         * bridge/mac/FrameMac.h:
1533         * bridge/mac/FrameMac.mm:
1534         (WebCore::FrameMac::paintCustomHighlight):
1535         * bridge/mac/WebCoreFrameBridge.h:
1536         * platform/mac/ClipboardMac.h:
1537         * rendering/InlineTextBox.cpp:
1538         (WebCore::InlineTextBox::paint):
1539         (WebCore::InlineTextBox::paintCustomHighlight):
1540         * rendering/InlineTextBox.h:
1541
1542 2006-06-07  Adele Peterson  <adele@apple.com>
1543
1544         Reviewed by Hyatt 
1545
1546         Added support for cross-platform resize property.
1547
1548         * platform/PlatformMouseEvent.h: Removed isMouseButtonDown, since we
1549         already cache this info when we handle mouse down and mouse up.
1550         * platform/mac/MouseEventMac.mm: ditto.
1551         * platform/win/TemporaryLinkStubs.cpp: ditto.
1552
1553         * page/Frame.cpp:
1554         (WebCore::Frame::autoscrollTimerFired): Use d->m_bMousePressed instead of isMouseButtonDown.
1555         * page/FrameView.cpp:
1556         (WebCore::FrameView::handleMouseMoveEvent): Passes event to layer resize method.
1557         (WebCore::FrameView::mousePressed): Added.
1558         * page/FrameView.h: Added mousePressed.
1559
1560         * rendering/RenderTheme.h: Removed paintResizeControl.
1561         Since its not dependent on the theme, the layer can just paint this.
1562         * rendering/RenderTheme.cpp: ditto.
1563         * rendering/RenderLayer.cpp:
1564         (WebCore::RenderLayer::RenderLayer): Initializes m_resizeCornerImage.
1565         (WebCore::RenderLayer::~RenderLayer): Deletes m_resizeCornerImage.
1566         (WebCore::RenderLayer::resize): Uses passed in event instead of creating a new one.
1567         (WebCore::RenderLayer::paintResizeControl): Now loads and paints the resize image.
1568         * rendering/RenderLayer.h: Added m_resizeCornerImage.  Important to have one per-layer for when we allow
1569         more customization.
1570
1571         * platform/cairo/ImageCairo.cpp:
1572         (WebCore::Image::loadResource): Loads image resources.
1573
1574 2006-06-07  David Hyatt  <hyatt@apple.com>
1575
1576         Add support for a new property for custom highlighting.  This patch just
1577         adds support for the parsing of the property.  It doesn't do anything yet.
1578
1579         Reviewed by beth
1580
1581         * css/CSSComputedStyleDeclaration.cpp:
1582         (WebCore::):
1583         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1584         * css/CSSPropertyNames.in:
1585         * css/cssparser.cpp:
1586         (WebCore::CSSParser::parseValue):
1587         * css/cssstyleselector.cpp:
1588         (WebCore::CSSStyleSelector::applyProperty):
1589         * rendering/render_style.cpp:
1590         (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData):
1591         (WebCore::StyleCSS3InheritedData::operator==):
1592         (WebCore::RenderStyle::diff):
1593         * rendering/render_style.h:
1594         (WebCore::RenderStyle::highlight):
1595         (WebCore::RenderStyle::setHighlight):
1596         (WebCore::RenderStyle::initialHighlight):
1597
1598 2006-06-07  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1599
1600         Fix suggested by Rob Buis. Reviewed by Darin.
1601
1602         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9341
1603           REGRESSION: Repro crash caused by style="font:bold"
1604
1605         Test: fast/css/font-shorthand-weight-only.html
1606
1607         * css/cssparser.cpp: (WebCore::CSSParser::parseFont): Revert part of the change
1608         made to fix bug 5564.
1609
1610 2006-06-07  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1611
1612         Reviewed by Hyatt.
1613
1614         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9122
1615           REGRESSION: Incorrect vertical position for text fields in a "display: table" block
1616
1617         Test: fast/table/text-field-baseline.html
1618
1619         * rendering/RenderTableCell.cpp:
1620         (WebCore::RenderTableCell::baselinePosition): Do not descend into replaced objects, just
1621         use their baseline.
1622
1623 2006-06-07  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1624
1625         Reviewed by Hyatt (concept) and Darin (some coding details).
1626
1627         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4334
1628           REGRESSION: Flickering when css-hover should change opacity on floating elements
1629
1630         Pixel test: fast/block/float/nopaint-after-layer-destruction.html
1631
1632         * rendering/RenderBlock.cpp:
1633         (WebCore::RenderBlock::setPaintsFloatingObject): Added. Changes the noPaint flag
1634         in the block's FloatingObject for the given float and calls setChildNeedsLayout.
1635         * rendering/RenderBlock.h:
1636         * rendering/RenderBox.cpp:
1637         (WebCore::blockThatPaintsFloat): Added this helper function.
1638         (WebCore::RenderBox::setStyle): Added. Calls to setPaintsFloatingObject when a float
1639         gains or loses its layer.
1640
1641 2006-06-06  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1642
1643         Reviewed by Hyatt.
1644
1645         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9121
1646           REGRESSION: [Incremental Repaint] DHTML movement test failures
1647
1648         Test (repaint): fast/repaint/containing-block-position-change.html
1649
1650         * manual-tests/containing-block-position-chage.html: Added.
1651         * rendering/RenderBlock.cpp:
1652         (WebCore::RenderBlock::layoutBlock): Unrelated change: fixed typo from
1653         the RenderCanvas to RenderView rename.
1654         (WebCore::RenderBlock::removePositionedObject): Added a return immediately
1655         after removing the object.
1656         (WebCore::RenderBlock::removePositionedObjects): Added.
1657         * rendering/RenderBlock.h:
1658         * rendering/RenderObject.cpp:
1659         (WebCore::RenderObject::setStyle): Added code to remove absolutely positioned
1660         descendants from the positioned objects list of their current containing block
1661         when they are going to have a new one as a result of this block's position
1662         property changing. 
1663         * rendering/RenderObject.h:
1664         (WebCore::RenderObject::removePositionedObjects):
1665
1666 2006-06-06  Justin Garcia  <justin.garcia@apple.com>
1667
1668         Reviewed by levi
1669
1670         * dom/Node.cpp:
1671         (WebCore::Node::firstDescendant): Added.
1672         * dom/Node.h:
1673         * dom/Range.cpp: Added a constructor that takes in Positions.
1674         (WebCore::Range::Range):
1675         * dom/Range.h:
1676         * editing/CompositeEditCommand.cpp:
1677         (WebCore::CompositeEditCommand::insertNodeAt): 
1678         Let this function insert children into empty containers.  
1679         Calls canHaveChildrenForEditing.
1680         (WebCore::CompositeEditCommand::appendNode): Assert that the parent canHaveChildrenForEditing.
1681         (WebCore::CompositeEditCommand::moveParagraph): Tell ReplaceSelectionCommand to select the 
1682         replacement so that moveParagraph's callers have a valid destination after the move.
1683         * editing/CompositeEditCommand.h: Moved removeFullySelectedNode to DeleteSelectionCommand,
1684         made deleteTextFromNode virtual so that DeleteSelectionCommand can update it's endingPosition.
1685         * editing/DeleteSelectionCommand.cpp:
1686         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): 
1687         Removed m_startNode, used a local variable.
1688         (WebCore::DeleteSelectionCommand::initializeStartEnd): Fixed special element expansion.
1689         (WebCore::DeleteSelectionCommand::initializePositionData): Compute the endingPosition up
1690         front and keep track of it as nodes and text are removed.
1691         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Removed use of m_startNode.
1692         (WebCore::DeleteSelectionCommand::removeFullySelectedNode): Moved from CompositeEditCommand.
1693         Update m_endingPosition as we remove nodes.
1694         (WebCore::DeleteSelectionCommand::deleteTextFromNode): 
1695         Update m_endingPosition as we delete text.
1696         (WebCore::DeleteSelectionCommand::handleGeneralDelete): Retain the start block.  Cleaned up.
1697         (WebCore::DeleteSelectionCommand::mergeParagraphs): Recompute m_endingPosition since moveParagraph
1698         clobbers the old one.
1699         (WebCore::DeleteSelectionCommand::doApply): Fixed the logic for placeholder insertion after 
1700         deletion. Make the placeholder decision before we do special element expansion.
1701         * editing/DeleteSelectionCommand.h:
1702         * editing/InsertLineBreakCommand.cpp:
1703         (WebCore::InsertLineBreakCommand::doApply): Fixed a bug where an extra br was inserted and cleaned 
1704         up the code.
1705         * editing/InsertParagraphSeparatorCommand.cpp:
1706         (WebCore::InsertParagraphSeparatorCommand::doApply): Deletion of the current selection should do
1707         a merge (added a testcase).
1708         * editing/RebalanceWhitespaceCommand.cpp:
1709         (WebCore::RebalanceWhitespaceCommand::doUnapply): Remove/insert in a way that will trigger a layout.
1710         * editing/ReplaceSelectionCommand.cpp:
1711         (WebCore::ReplaceSelectionCommand::doApply): Ditto.
1712         Merge even when the incoming fragment has interchange newlines (added a testcase).
1713         Merge when the selection being pasted into starts at the start of a block because not
1714         doing so would leave one or more hanging empty blocks.
1715         (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
1716         Rebalance whitespace using rebalanceWhitespaceAt because rebalanceWhitespace requires
1717         a selection, and a selection can't be created until whitespace has been rebalanced.
1718         * editing/htmlediting.cpp:
1719         (WebCore::canHaveChildrenForEditing): Added.
1720         * editing/htmlediting.h:
1721
1722 2006-06-06  Beth Dakin  <bdakin@apple.com>
1723
1724         Reviewed by Maciej.
1725
1726         Fix for <rdar://problem/4570475> Dashboard regions do not scale for 
1727         non-1.0 scale factors.
1728
1729         No test cases added since this only affects non-1.0 resolution 
1730         scale factors.
1731
1732         * platform/FloatRect.cpp:
1733         (WebCore::FloatRect::scale): Added new function that scales a 
1734         rect's origin and size by a given factor.
1735         * platform/FloatRect.h:
1736         * platform/IntRect.cpp:
1737         (WebCore::IntRect::scale): Same as above.
1738         * platform/IntRect.h:
1739         * rendering/RenderObject.cpp:
1740         (WebCore::RenderObject::addDashboardRegions): After the bounds and 
1741         clip rects on the Dashboard region have been calculated, get the 
1742         user space scale factor, and if it is not 1.0, scale the rects.
1743
1744 2006-06-06  John Sullivan  <sullivan@apple.com>
1745
1746         Reviewed by Darin Adler.
1747         
1748         - fixed <rdar://problem/4566087> REGRESSION (420+): Crash occurs while completing a find again query at 
1749         http://www.apple.com/ (RenderObject::repaint(bool))
1750         
1751         This wasn't a new problem in the code, but the recent use of DocumentMarkers for find results brought
1752         it to the surface.
1753
1754         * dom/Document.h:
1755         Use a RefPtr<Node> instead of a Node* in MarkerMap, so the node will be retained
1756
1757         * dom/Document.cpp:
1758         (WebCore::Document::removeMarkers):
1759         Add a .get() to compensate for using RefPtr. Also, only repaint if this node actually had a marker
1760         removed.
1761         (WebCore::Document::repaintMarkers):
1762         Add a .get() to compensate for using RefPtr.
1763
1764 2006-06-06  Anders Carlsson  <acarlsson@apple.com>
1765
1766         Reviewed by Darin.
1767
1768         http://bugzilla.opendarwin.org/show_bug.cgi?id=9325
1769         clientWidth/clientHeight on document element in strict mode should return visible frame size
1770         
1771         * dom/Element.cpp:
1772         (WebCore::Element::clientWidth):
1773         (WebCore::Element::clientHeight):
1774         If we're the document element, and in strict mode, return the visible size of the frame.
1775         
1776 2006-06-06  Anders Carlsson  <acarlsson@apple.com>
1777
1778         Reviewed by John.
1779
1780         * bridge/mac/WebCoreFrameBridge.h:
1781         * bridge/mac/WebCoreFrameBridge.mm:
1782         (-[WebCoreFrameBridge containsPlugins]):
1783         * page/Frame.cpp:
1784         (WebCore::Frame::containsPlugins):
1785         * page/Frame.h:
1786         Add containsPlugins function which returns whether a frame contains plugins
1787         or not.
1788
1789 2006-06-05  Rob Buis  <buis@kde.org>
1790
1791         Reviewed by mjs.
1792
1793         http://bugzilla.opendarwin.org/show_bug.cgi?id=5564
1794         'font' shorthand parsing should be more tolerant in quirks mode
1795
1796         When not in strict mode accept font property specifications
1797         lacking a font family part, like WinIE does.
1798
1799         * css/cssparser.cpp:
1800         (WebCore::CSSParser::parseFont):
1801
1802 2006-06-05  Beth Dakin  <bdakin@apple.com>
1803
1804         Reviewed by Darin.
1805
1806         Fix for <rdar://problem/4567520> Pixel cracks in weather widget at 
1807         1.83 scaling
1808
1809         To prevent pixel cracks at non-integral scaling factors, before we 
1810         call into CG to draw an image, we have to convert the rect to 
1811         device space, round the origin and size to integers in device 
1812         space, and convert back to user space. 
1813         
1814         No test cases added since this only affects non-1.0 resolution 
1815         scale factors.
1816
1817         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
1818         (WebCore::JSCanvasRenderingContext2D::drawImage): drawImage() now 
1819         takes FloatRects.
1820         * html/CanvasPattern.cpp:
1821         (WebCore::patternCallback): Call roundToDevicePixels()
1822         * html/CanvasRenderingContext2D.cpp:
1823         (WebCore::CanvasRenderingContext2D::drawImage): drawImage() now 
1824         takes FloatRects and call roundToDevicePixels()
1825         * html/CanvasRenderingContext2D.h: drawImage() now takes 
1826         FloatRects.
1827         * html/HTMLCanvasElement.cpp:
1828         (WebCore::HTMLCanvasElement::paint): Call roundToDevicePixels()
1829         * kcanvas/device/quartz/QuartzSupport.mm:
1830         (WebCore::debugDumpCGImageToFile): Same as above.
1831         * platform/GraphicsContext.h:
1832         * platform/cg/GraphicsContextCG.cpp:
1833         (WebCore::GraphicsContext::roundToDevicePixels): Takes care of 
1834         converting between coordinate spaces and rounding.
1835         (WebCore::GraphicsContext::drawLineForText):
1836         * platform/mac/ImageMac.mm: Call roundToDevicePixels()
1837         (WebCore::Image::draw): Same as above.
1838         (WebCore::drawPattern): Same as above.
1839
1840 2006-06-05  Geoffrey Garen  <ggaren@apple.com>
1841
1842         Reviewed by Darin.
1843
1844         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9310
1845         Add missing DOM prototypes and other DOM cleanup
1846
1847         - Added the built-in object prototype to DOM objects that were missing it
1848         so that primitive operations like == work on them.
1849         
1850         - Removed dead EventConstructor class (it's autogenerated now)
1851         
1852         - Changed HTML collections to describe themselves as "[object Collection]",
1853         to match IE.
1854         
1855         - Made DOMCSSRule constructor private because JSCSSRule is the class
1856         to use.
1857         
1858         * bindings/js/JSHTMLOptionElementConstructor.cpp:
1859         (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
1860         * bindings/js/kjs_css.cpp:
1861         (KJS::DOMStyleSheet::DOMStyleSheet):
1862         (KJS::DOMStyleSheetList::DOMStyleSheetList):
1863         (KJS::DOMCSSRule::DOMCSSRule):
1864         (KJS::DOMCSSValue::DOMCSSValue):
1865         (KJS::toJS):
1866         (KJS::DOMRGBColor::DOMRGBColor):
1867         (KJS::getDOMRGBColor):
1868         (KJS::DOMRect::DOMRect):
1869         * bindings/js/kjs_css.h:
1870         * bindings/js/kjs_dom.cpp:
1871         (KJS::DOMNodeList::DOMNodeList):
1872         (KJS::DOMExceptionConstructor::DOMExceptionConstructor):
1873         (KJS::DOMExceptionConstructor::getOwnPropertySlot):
1874         (KJS::):
1875         (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
1876         * bindings/js/kjs_dom.h:
1877         (KJS::DOMNamedNodesCollection::classInfo):
1878         * bindings/js/kjs_events.h:
1879         * bindings/js/kjs_html.cpp:
1880         (KJS::):
1881
1882 2006-06-04  Darin Adler  <darin@apple.com>
1883
1884         Reviewed by Maciej.
1885
1886         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9031
1887           REGRESSION: Crash when closing tabs on newegg.com
1888         - removed a no-longer-needed Win32-specific workaround (not reviewed)
1889
1890         * bindings/js/kjs_window.cpp: Added include of <wtf/MathExtras.h>.
1891         (WebCore::floatFeature): Remove WIN32 ifdef around isnan.
1892         (WebCore::toJS): Add null checks.
1893
1894 2006-06-04  Darin Adler  <darin@apple.com>
1895
1896         Reviewed by Maciej.
1897
1898         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9176
1899           REGRESSION: repro crash in WebCore::StringImpl::hash() const + 28 (StringImpl.h:67)
1900
1901         Test: fast/loader/link-no-URL.html
1902
1903         * loader/Cache.h:
1904         * loader/Cache.cpp:
1905         (WebCore::Cache::updateCacheStatus): Removed the URL parameter. Instead get the URL
1906         from the cached object itself. Callers were passing in the wrong URL. When it was a
1907         null string, it caused the crash mentioned above. But in other cases it may have
1908         caused some other minor problems as well. Added an assert to catch cases where the
1909         URL is null (should never happen).
1910         (WebCore::Cache::requestImage): Changed call site to not pass URL.
1911         (WebCore::Cache::requestStyleSheet): Ditto.
1912         (WebCore::Cache::requestScript): Ditto.
1913         (WebCore::Cache::requestXSLStyleSheet): Ditto.
1914         (WebCore::Cache::requestXBLDocument): Ditto.
1915
1916 2006-06-04  Darin Adler  <darin@apple.com>
1917
1918         Reviewed by Adele.
1919
1920         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7291
1921           REGRESSION: delete key does not work in isIndex fields
1922
1923         * platform/mac/WebCoreTextField.mm:
1924         (inputElement): Added. Helper function to get the Objective-C wrapper for an
1925         input element associated with a QTextEdit. Returns nil if the element is not
1926         an input element. The bug was caused by passing a non-input element to the
1927         delegate methods.
1928         (-[KWQTextFieldController controlTextDidBeginEditing:]): Use inputElement
1929         and don't make the delegate call at all if there is none. This happens only
1930         with isindex elements; it's not important to have auto-fill work with those.
1931         (-[KWQTextFieldController controlTextDidEndEditing:]): Ditto.
1932         (-[KWQTextFieldController controlTextDidChange:]): Ditto.
1933         (-[KWQTextFieldController control:textShouldEndEditing:]): Ditto.
1934         (-[KWQTextFieldController control:textView:doCommandBySelector:]): Ditto.
1935         (-[KWQTextFieldController textView:shouldHandleEvent:]): Ditto.
1936
1937 2006-06-04  Darin Adler  <darin@apple.com>
1938
1939         Reviewed by Anders.
1940
1941         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8995
1942           memory leak in XPath code -- seen in layout tests
1943         - fixed malloc error on exit due to SVGDOMImplementation destructor
1944         - attempted to fix the no-XPATH_SUPPORT build by adding an #if
1945         - changed around includes and header-file formatting in XPath code
1946
1947         * bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h when
1948         generating the bindings for XPathNSResolver.
1949
1950         * dom/DOMImplementation.h: Added a virtual destructor for the benefit of
1951         SVGDOMImplementation.
1952         * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::~DOMImplementation): Added.
1953
1954         * ksvg2/svg/SVGDOMImplementation.h: Reformatted a bit, removed unneeded declarations.
1955         * ksvg2/svg/SVGDOMImplementation.cpp:
1956         (SVGDOMImplementation::~SVGDOMImplementation): Remove commented-out code.
1957         (SVGDOMImplementation::createDocument): Remove a reference to KDOMView.
1958
1959         * xpath/XPathExpression.cpp:
1960         (WebCore::XPathExpression::createExpression): Called release to avoid a tiny bit of
1961         reference count churn.
1962         (WebCore::XPathExpression::evaluate): Set exception code explicitly, because the code
1963         relies on it being 0 when the function succeeds.
1964
1965         * xpath/XPathResult.cpp:
1966         (WebCore::InvalidatingEventListener::InvalidatingEventListener): Removed
1967         unneeded target node data member.
1968         (WebCore::XPathResult::XPathResult): Updated for enum name changes and
1969         InvalidatingEventListener name change. Added an assertion.
1970
1971         * xpath/impl/XPathFunctions.h: Removed the FunctionLibrary class. Changed the parameter
1972         for createFunction to be a String instead of char*.
1973         * xpath/impl/XPathFunctions.cpp: Got rid of local implementation of "round", and
1974         used <wtf/MathExtras.h> instead. Also removed unused Interval::asString. Marked all
1975         the Interval functions inline.
1976         (WebCore::XPath::FunSubstring::doEvaluate): Use lround() instead of (long)round().
1977         (WebCore::XPath::FunLang::doEvaluate): Removed some unneeded temporary String variables.
1978         Use equalIgnoringCase() instead of calling lower() on two strings.
1979         (WebCore::XPath::createFunctionMap): Changed how this works so that it's all local to
1980         this function. Also removed a duplicate entry for the "last" function.
1981         (WebCore::XPath::createFunction): Changed from a member function to a separate function.
1982         Also changed so that if the args are not used in the function they are deleted.
1983         This was one of the sources of the storage leaks.
1984
1985         * xpath/impl/XPathGrammar.y: Put XPATH_SUPPORT ifdef in. Replaced <num> with values of
1986         specific types (numop, eqop). Updated for name change from AxisType to Axis. Changed
1987         tokens that were declared as <str> but weren't actually using the string to be
1988         declared with no type (PLUS, MINUS, OR, AND, DOTDOT, SLASHSLASH). Replaced use of
1989         unregisterString, unregisterPredicateVector, and unregisterExpressionVector to
1990         call delete functions instead that both unregister and delete. Change call sites for
1991         createFunction to just use the String, removing the deprecatedString().latin1() call
1992         that is no longer needed. Added a call to unregisterParseNode that was missing in the
1993         "FilterExpr DescendantOrSelf RelativeLocationPath" production.
1994
1995         * xpath/impl/XPathParser.h: Changed Token to hold a String, Step::Axis, NumericOp::Opcode,
1996         and EqTestOp::Opcode. The token ID number tells us which to use. Rearranged to put the private
1997         part of the Parser class last. Moved a number of private things inside the cpp file.
1998         * xpath/impl/XPathParser.cpp:
1999         (WebCore::XPath::charCat): Made this a separate function, instead of a static member.
2000         (WebCore::XPath::isAxisName): Ditto. Also put the global axis map inside the function,
2001         allowing use of a map instead of a map pointer.
2002         (WebCore::XPath::isNodeTypeName): Ditto.
2003         (WebCore::XPath::Parser::isOperatorContext): Made this const.
2004         (WebCore::XPath::Parser::makeTokenAndAdvance): Got rid of the "int" version of this.
2005         By using the actual types, we can safely use overload instead.
2006         (WebCore::XPath::Parser::lexString): Use substring() instead of deprecatedString().mid().
2007         (WebCore::XPath::Parser::lexNumber): Ditto.
2008         (WebCore::XPath::Parser::lexNCName): Changed to return a bool and a String instead of a
2009         Token. This avoids the hack of using a token value of "ERROR + 1" which I found quite
2010         confusing and is also a bit more explicit.
2011         (WebCore::XPath::Parser::lexQName): Ditto.
2012         (WebCore::XPath::Parser::nextTokenInternal): Changed to adapt to the changes above and
2013         to remove some unneeded else statements.
2014         (WebCore::XPath::Parser::lex): Changed the logic that sets up yylval to use the token ID
2015         to decide what the type is. This matches what the grammar expects, and removes the need
2016         for the token object to track which part of the value is good and the need to reserve 0
2017         to have a special meaning.
2018         (WebCore::XPath::Parser::parseStatement): Added code to delete the predicates and the
2019         expressions in the predicate and expression vectors. Before, we were only deleting
2020         the vectors. This was one of the sources of the storage leaks.
2021         (WebCore::XPath::Parser::deletePredicateVector): Renamed, and changed to delete
2022         the vector. However this does not delete the predicates in the vector.
2023         (WebCore::XPath::Parser::deleteExpressionVector): Renamed, and changed to delete
2024         the vector. However this does not delete the expressions in the vector.
2025         (WebCore::XPath::Parser::deleteString): Renamed, and changed to delete the string.
2026
2027         * xpath/impl/XPathPredicate.h:
2028         * xpath/impl/XPathPredicate.cpp:
2029         (WebCore::XPath::NumericOp::NumericOp): Changed opcode from an int to an enum, and
2030         renamed to "opcode" instead of "opCode".
2031         (WebCore::XPath::NumericOp::doEvaluate): More of the same.
2032         (WebCore::XPath::EqTestOp::EqTestOp): Ditto.
2033         (WebCore::XPath::EqTestOp::doEvaluate): Ditto.
2034         (WebCore::XPath::LogicalOp::LogicalOp): Ditto.
2035         (WebCore::XPath::LogicalOp::shortCircuitOn): Ditto.
2036         (WebCore::XPath::Predicate::evaluate): Removed an unneeded "new".
2037
2038         * xpath/impl/XPathStep.h:
2039         * xpath/impl/XPathStep.cpp: Renamed AxisType to Axis. Removed unused axisAsString
2040         function and default constructor.
2041
2042         * xpath/impl/XPathValue.h: Renamed the type constants to have a Value suffix,
2043         instead of the underscore suffix used before on NodeVector and String.
2044         * xpath/impl/XPathValue.cpp: Updated for name change. Added asserts.
2045
2046         * xpath/impl/XPathVariableReference.cpp: (WebCore::XPath::VariableReference::doEvaluate):
2047         Use a reference instead of a pointer.
2048
2049         * xpath/XPathEvaluator.cpp:
2050         * xpath/XPathEvaluator.h:
2051         * xpath/XPathExpression.h:
2052         * xpath/XPathNSResolver.cpp:
2053         * xpath/XPathNSResolver.h:
2054         * xpath/XPathNamespace.cpp:
2055         * xpath/XPathNamespace.h:
2056         * xpath/XPathResult.h:
2057         * xpath/impl/XPathExpressionNode.cpp:
2058         * xpath/impl/XPathExpressionNode.h:
2059         * xpath/impl/XPathPath.cpp:
2060         * xpath/impl/XPathPath.h:
2061         * xpath/impl/XPathUtil.cpp:
2062         * xpath/impl/XPathUtil.h:
2063         * xpath/impl/XPathVariableReference.h:
2064         Reformatted and changed includes around; no substantive changes.
2065
2066 2006-06-04  Sam Weinig  <sam.weinig@gmail.com>
2067
2068         Reviewed by hyatt.
2069
2070         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9213
2071           Absolutely positioned objects with relatively positioned inline 
2072           containing blocks are rendered incorrectly
2073
2074         * rendering/RenderBox.cpp:
2075         (WebCore::RenderBox::containingBlockWidthForPositioned):
2076         (WebCore::RenderBox::containingBlockHeightForPositioned):
2077         (WebCore::RenderBox::calcAbsoluteHorizontal):
2078         (WebCore::RenderBox::calcAbsoluteHorizontalValues):
2079         (WebCore::RenderBox::calcAbsoluteVertical):
2080         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
2081         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
2082         * rendering/RenderBox.h:
2083
2084 2006-06-04  Anders Carlsson  <acarlsson@apple.com>
2085
2086         Reviewed by Darin.
2087
2088         http://bugzilla.opendarwin.org/show_bug.cgi?id=9035
2089         document.evaluate and createNSResolver miss on namespaced elements
2090         
2091         * xpath/XPathExpression.cpp:
2092         (WebCore::XPathExpression::createExpression):
2093         Pass the resolver to the parser.
2094         
2095         * xpath/XPathResult.cpp:
2096         (WebCore::XPathResult::iterateNext):
2097         Fix off-by-one error.
2098         
2099         * xpath/impl/XPathExpressionNode.h:
2100         (WebCore::XPath::EvaluationContext::EvaluationContext):
2101         Get rid of the resolver in the evaluation context.
2102         
2103         * xpath/impl/XPathGrammar.y:
2104         Fetch the resolver from the parser. Only return the local name.
2105         
2106         * xpath/impl/XPathParser.cpp:        
2107         (WebCore::XPath::Parser::parseStatement):
2108         * xpath/impl/XPathParser.h:
2109         (WebCore::XPath::Parser::resolver):
2110         Update to hold the resolver.
2111         
2112         * xpath/impl/XPathStep.cpp:
2113         (WebCore::XPath::Step::Step):
2114         If the parser has stored a namespace URI, set it.
2115         
2116         (WebCore::XPath::Step::nodeTestMatches):
2117         Check namespace URIs.
2118         
2119         * xpath/impl/XPathStep.h:
2120         Add m_namespaceURI.
2121
2122 2006-06-03  Rob Buis  <buis@kde.org>
2123
2124         Reviewed by mjs.  Tweaked and landed by ddkilzer.
2125
2126         http://bugzilla.opendarwin.org/show_bug.cgi?id=7281
2127         With java disabled wrong information is displayed.
2128
2129         Test: fast/replaced/applet-rendering-java-disabled.html
2130
2131         Match WinIE, render applet content inline when java is
2132         disabled. 
2133
2134         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RenderEmptyApplet.cpp and RenderEmptyApplet.h.
2135         * WebCore.xcodeproj/project.pbxproj: Ditto.
2136         * WebCoreSources.bkl: Ditto.
2137         * html/HTMLAppletElement.cpp:
2138         (WebCore::HTMLAppletElement::createRenderer):
2139         * rendering/RenderEmptyApplet.cpp: Removed.
2140         * rendering/RenderEmptyApplet.h: Removed.
2141
2142 2006-06-03  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2143
2144         Reviewed by Hyatt.
2145
2146         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9252
2147           REGRESSION: Very odd roll-over issues (content disappearing)
2148
2149         Test: fast/dom/HTMLLinkElement/pending-stylesheet-count.html
2150
2151         * html/HTMLLinkElement.cpp:
2152         (WebCore::HTMLLinkElement::~HTMLLinkElement): If the stylesheet was being
2153         loaded, call stylesheetLoaded() on the document, to keep the pending stylesheet
2154         count correct.
2155
2156 2006-06-03  Darin Adler  <darin@apple.com>
2157
2158         - fix Windows build
2159
2160         * platform/Widget.h: Moved scaleFactor function out of Apple-specific
2161         section of the header into the common part.
2162
2163 2006-06-03  Beth Dakin  <bdakin@apple.com>
2164
2165         Reviewed by Darin.
2166
2167         Fix for <rdar://problem/4537274> HiDPI: <canvas> needs to apply a 
2168         scale. <canvas> needs to scale itself along with whatever scale 
2169         factor is set on the window.
2170
2171         * html/HTMLCanvasElement.cpp:
2172         (WebCore::HTMLCanvasElement::createDrawingContext): Get the scale 
2173         factor and use it to create a larger buffer and to scale the 
2174         CGContext.
2175         * platform/Widget.h: Provide a new function that returns the user 
2176         space scale factor.
2177         * platform/mac/WidgetMac.mm:
2178         (WebCore::Widget::scaleFactor): Get the scale factor from the 
2179         window and return it.
2180         * platform/win/WidgetWin.cpp:
2181         (WebCore::Widget::scaleFactor): Just return 1.0f for now.
2182
2183 2006-06-03  Steve Falkenburg  <sfalken@apple.com>
2184
2185         Reviewed by hyatt.
2186
2187         Don't send empty referrers.  Fixes image load fail on Spinneret default content.
2188
2189         * platform/win/TransferJobWin.cpp:
2190         (WebCore::TransferJob::start):
2191
2192 2006-06-02  Adele Peterson  <adele@apple.com>
2193
2194         Reviewed by Darin. 
2195
2196         Windows theme for textareas.  Also made some formatting changes. 
2197
2198         * rendering/RenderThemeWin.cpp:
2199         (WebCore::RenderThemeWin::supportsFocus):
2200         (WebCore::RenderThemeWin::getThemeData):
2201         (WebCore::RenderThemeWin::adjustButtonStyle):
2202         (WebCore::RenderThemeWin::adjustTextFieldStyle):
2203         (WebCore::RenderThemeWin::adjustTextAreaStyle):
2204         (WebCore::RenderThemeWin::paintTextArea):
2205         * rendering/RenderThemeWin.h:
2206         (WebCore::RenderThemeWin::supportsHover):
2207
2208 2006-06-02  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
2209
2210         Reviewed by Hyatt, checked in by Tim H.
2211
2212         Explicitly run perl on *.pl files instead of relying
2213         on Windows shell figuring out which program to run for
2214         this extention.
2215
2216         * DerivedSources.make:
2217
2218 2006-06-02  David Carson  <dacarson@gmail.com>
2219
2220         Reviewed by Hyatt, checked in by Tim H.
2221
2222         fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=9115
2223         Changed RenderLayer to only render layers that are not
2224         totally transparent.
2225
2226         * rendering/RenderLayer.cpp
2227         (RenderLayer::paintLayer):
2228         Changed function to also check if the layer is totally transparent
2229         and if it is, don't bother painting it.
2230
2231 2006-06-02  Rob Buis  <buis@kde.org>
2232
2233         Reviewed by Hyatt, checked in by Tim H.
2234
2235         http://bugzilla.opendarwin.org/show_bug.cgi?id=8223
2236         WebKit fails to update style on element via DOM
2237
2238         Handle !important by detecting it and using a different code
2239         path from normal priority.
2240
2241         * bindings/js/kjs_css.cpp:
2242         (KJS::DOMCSSStyleDeclaration::put):
2243         * css/CSSStyleDeclaration.cpp:
2244         (WebCore::CSSStyleDeclaration::setProperty):
2245         * css/CSSStyleDeclaration.h:
2246
2247 2006-06-02  Darin Adler  <darin@apple.com>
2248         
2249         Reviewed by Geoff, checked in by Maciej.
2250         
2251         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9236
2252         REGRESSION: focus method does not work on some elements before they are laid out
2253         
2254         * dom/Element.cpp: (WebCore::Element::focus): Do the updateLayout call before
2255         calling isFocusable, since isFocusable looks at the size of the renderer.
2256         
2257 2006-06-02  Steve Falkenburg  <sfalken@apple.com>
2258
2259         Reviewed by darin.
2260
2261         Platform hookup fixes
2262
2263         * bridge/win/FrameWin.cpp:
2264         (WebCore::FrameWin::urlSelected):
2265         (WebCore::FrameWin::setTitle):
2266         (WebCore::FrameWin::setStatusBarText):
2267         * bridge/win/FrameWin.h:
2268         * platform/win/TemporaryLinkStubs.cpp:
2269         (FrameWin::overrideMediaType):
2270         * platform/win/TransferJobWin.cpp:
2271         (WebCore::TransferJobWndProc):
2272         (WebCore::TransferJob::start):
2273         (WebCore::TransferJob::fileLoadTimer):
2274         (WebCore::TransferJob::cancel):
2275
2276 2006-06-02  RĂ©mi Zara  <remi_zara@mac.com>
2277
2278         Reviewed by Hyatt.
2279
2280         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3379
2281           attr(X) does not work
2282
2283         Test: fast/css-generated-content/016.html
2284
2285         * css/cssstyleselector.cpp:
2286         (WebCore::CSSStyleSelector::canShareStyleWithElement): Don't share style
2287         if the unique bit is set.
2288         (WebCore::CSSStyleSelector::applyProperty): When applying the "attr" property,
2289         set the unique bit and add to m_selectorAttrs.
2290
2291         * rendering/render_style.cpp: Did a lot of reformatting, and this one real change.
2292         (WebCore::RenderStyle::RenderStyle): Initialize m_unique to false.
2293
2294         * rendering/render_style.h:
2295         (WebCore::RenderStyle::unique): Added. Returns value of m_unique.
2296         (WebCore::RenderStyle::setUnique): Added. Sets m_unique.
2297
2298 2006-06-02  David Kilzer  <ddkilzer@kilzer.net>
2299
2300         Reviewed by mjs.
2301
2302         http://bugzilla.opendarwin.org/show_bug.cgi?id=9183
2303         Finish renaming of RenderCanvas to RenderView
2304
2305         * rendering/RenderView.h: Changed renderName from "RenderCanvas" to "RenderView".
2306
2307 2006-06-01  Darin Adler  <darin@apple.com>
2308
2309         - try to fix Windows build
2310
2311         * bridge/win/FrameWin.cpp: Added include of Decoder.h.
2312
2313 2006-06-01  Darin Adler  <darin@apple.com>
2314
2315         Reviewed by Maciej.
2316
2317         - WebCore doesn't need to load WebKit images any more; removed code for that
2318
2319         * WebCore.exp: Removed WebCoreImageRendererFactory.
2320         * WebCore.xcodeproj/project.pbxproj: Removed WebCoreImageRendererFactory.h/mm.
2321         * bridge/mac/WebCoreFrameBridge.mm: Removed include of WebCoreImageRendererFactory.h.
2322         * platform/mac/ImageMac.mm: Removed include of WebCoreImageRendererFactory.h.
2323         * platform/mac/WebCoreImageRendererFactory.h: Removed.
2324         * platform/mac/WebCoreImageRendererFactory.m: Removed.
2325
2326 2006-06-01  Sam Weinig  <sam.weinig@gmail.com>
2327
2328         Reviewed by Geoff, tweaked a bit by Darin.
2329
2330         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9064
2331           Split dom2_traversalimpl.* into separate files (one class per file).
2332
2333         * WebCore.xcodeproj/project.pbxproj: Updated for new files.
2334         * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
2335
2336         * bindings/js/kjs_traversal.h:
2337         * bindings/scripts/CodeGeneratorJS.pm:
2338         * bindings/objc/DOM.mm:
2339         * dom/Document.cpp:
2340         * dom/Document.h:
2341         Updated includes.
2342
2343         * dom/NodeFilter.cpp: Added.
2344         * dom/NodeFilter.h: Added.
2345         * dom/NodeFilterCondition.cpp: Added.
2346         * dom/NodeFilterCondition.h: Added.
2347         * dom/NodeIterator.cpp: Added.
2348         * dom/NodeIterator.h: Added.
2349         * dom/Traversal.cpp: Added.
2350         * dom/Traversal.h: Added.
2351         * dom/TreeWalker.cpp: Added.
2352         * dom/TreeWalker.h: Added.
2353
2354         * dom/dom2_traversalimpl.cpp: Removed.
2355         * dom/dom2_traversalimpl.h: Removed.
2356
2357 2006-06-01  David Carson  <dacarson@gmail.com>
2358
2359         Reviewed by Maciej and Adele
2360
2361         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8398
2362         REGRESSION: LABEL in OPTION element is clobbering display #TEXT
2363         Patch provided by Darin.
2364         
2365         * rendering/RenderSelect.cpp
2366         (RenderSelect::updateFromElement): 
2367         Changed to use the containing text by default, and not the label text
2368
2369 2006-06-01  David Carson  <dacarson@gmail.com>
2370
2371         Reviewed by Hyatt.
2372
2373         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8646
2374         Correcting the value returned for window.screen.pixelDepth and
2375         window.screen.colorDepth
2376         
2377         * platform/mac/ScreenMac.mm
2378         (screenDepth): 
2379         Changed to return the BitsPerPixelFromDepth rather than the WindowDepth
2380
2381 2006-06-01  Adele Peterson  <adele@apple.com>
2382
2383         Reviewed by Maciej.
2384
2385         Missed an initialization in my last checkin which caused too many
2386         resizers to be drawn.
2387
2388         * rendering/render_style.cpp: (WebCore::resize):
2389         Initialize resize to RESIZE_NONE.
2390
2391 2006-06-01  Dave Hyatt <hyatt@apple.com>
2392
2393         Implement form POST using WinINet.  This code is crazy... CRAZY!
2394
2395         * platform/TransferJobInternal.h:
2396         (WebCore::TransferJobInternal::TransferJobInternal):
2397         * platform/win/CookieJarWin.cpp:
2398         (WebCore::setCookies):
2399         (WebCore::cookies):
2400         * platform/win/TransferJobWin.cpp:
2401         (WebCore::TransferJobWndProc):
2402         (WebCore::TransferJob::start):
2403
2404 2006-06-01  Adele Peterson  <adele@apple.com>
2405
2406         Reviewed by Hyatt.
2407
2408         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9216
2409         Implement CSS3 resize property
2410
2411         * css/html4.css: Sets resize:both for textareas. This won't affect old-style textareas.
2412
2413         * css/CSSPropertyNames.in: Added resize property.
2414         * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Added case for CSS_PROP_RESIZE.
2415         * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
2416         * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): ditto.
2417
2418         * rendering/render_style.cpp: (WebCore::StyleCSS3InheritedData): Initialize resize.
2419         * rendering/render_style.h:
2420         (WebCore::): Added EResize enum.
2421         (WebCore::RenderStyle::resize):
2422         (WebCore::RenderStyle::setResize):
2423         (WebCore::RenderStyle::initialResize):
2424
2425         * page/FrameView.cpp:
2426         (WebCore::FrameViewPrivate::FrameViewPrivate): Added m_resizeLayer to keep track of a layer that has begun resizing.
2427         (WebCore::FrameViewPrivate::reset): Reset m_resizeLayer.
2428         (WebCore::FrameView::handleMousePressEvent): If the mouse was pressed in a layer's resize control, then put the layer into resize mode.
2429         (WebCore::selectCursor): Updated so we get a pointer cursor for the resize control.
2430         (WebCore::FrameView::handleMouseMoveEvent): If there's a layer currently resizing, then tell the layer to continue resizing.
2431         (WebCore::FrameView::handleMouseReleaseEvent): If there's a layer currently resizing, then pull it out of resize mode.
2432
2433         * rendering/RenderBlock.cpp: (WebCore::RenderBlock::isPointInScrollbar): Updated so the resize control isn't considered part of the scrollbar.
2434         * rendering/RenderLayer.cpp:
2435         (WebCore::RenderLayer::RenderLayer): Initialize m_inResizeMode
2436         (WebCore::RenderLayer::updateLayerPositions): Calls positionResizeControl.
2437         (WebCore::RenderLayer::resize): Added. Sets a new width and height based on the current mouse point.
2438         (WebCore::RenderLayer::isPointInResizeControl): Added.
2439         (WebCore::RenderLayer::positionResizeControl): Added.
2440         (WebCore::RenderLayer::positionScrollbars): Calls positionResizeControl.
2441         (WebCore::RenderLayer::paintScrollbars): Calls positionResizeControl.
2442         (WebCore::RenderLayer::paintResizeControl): Added.
2443         (WebCore::RenderLayer::paintLayer): Calls paintResizeControl.
2444         * rendering/RenderLayer.h: Added m_inResizeMode.
2445         (WebCore::RenderLayer::resizeControlRect):
2446         (WebCore::RenderLayer::setResizeControlRect):
2447         (WebCore::RenderLayer::inResizeMode): Added.
2448         (WebCore::RenderLayer::setInResizeMode): Added. 
2449
2450         * platform/mac/ImageMac.mm: (WebCore::Image::loadResource): Moved code from WebImageRendererFactory.  Now loads images from WebCore's resources.
2451         WebImageRendererFactory is no longer used and should be removed.
2452         * Resources/missingImage.tiff: Added. Copied from WebKit.
2453         * WebCore.xcodeproj/project.pbxproj: Added missingImage.tiff
2454         * loader/Cache.cpp: (WebCore::Cache::init): Updated name from missing_image to missingImage.
2455
2456         * rendering/RenderTheme.h:
2457         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::paintResizeControl): Added.
2458         * rendering/RenderThemeMac.h:
2459         * rendering/RenderThemeMac.mm:
2460         (WebCore::RenderThemeMac::RenderThemeMac): Initialize resizeCornerImage.
2461         (WebCore::RenderThemeMac::paintResizeControl): Paints resizeCornerImage.
2462
2463 2006-06-01  Brady Eidson  <beidson@apple.com>
2464
2465         Reviewed by Maciej.
2466
2467         Added the beginnings of sqlite-based code in a WebCore
2468         based version of the Icon Database.  Right now the code
2469         is very loosely hooked up through a Bridge and only
2470         creates an sqlite3 database.
2471
2472         There are also changes to our String classes to allow appending
2473         a single character to a String without creating a temporary object.
2474
2475         * WebCore.exp:
2476         -Added a symbol export
2477
2478         * WebCore.xcodeproj/project.pbxproj:
2479         * bridge/mac/WebCoreIconDatabaseBridge.h: Added.
2480         * bridge/mac/WebCoreIconDatabaseBridge.mm: Added.
2481         (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
2482         (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
2483         (-[WebCoreIconDatabaseBridge isOpen]):
2484         -This class will eventually shadow WebIconDatabase but for now
2485         is a minimal interface to make the sql code live
2486
2487         * icon: Added.
2488         * icon/IconDatabase.cpp: Added.
2489         -This class will eventually resemble WebIconDatabase but for now
2490         is minimal just to make the sql code live
2491         (WebCore::IconDatabase::sharedIconDatabase):
2492         (WebCore::IconDatabase::IconDatabase):
2493         (WebCore::IconDatabase::open):
2494         -This method calls a mkdir to make sure the target directory
2495         exists
2496         (WebCore::IconDatabase::close):
2497         (WebCore::IconDatabase::~IconDatabase):
2498
2499         * icon/IconDatabase.h: Added.
2500         (WebCore::IconDatabase::isOpen):
2501         * platform/Logging.cpp:
2502         * platform/Logging.h:
2503         -Added an IconDatabase logging channel
2504
2505         * platform/PlatformString.h:
2506         * platform/String.cpp:
2507         (WebCore::String::append):
2508         * platform/StringImpl.cpp:
2509         (WebCore::StringImpl::append):
2510         * platform/StringImpl.h:
2511         -Added append(char) and append(UChar) to allow appending a
2512         single character without creating a temporary object.  Required
2513         to facilitate manually adding a null character to a unicode 16
2514         string
2515
2516 2006-06-01  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2517
2518         Reviewed and landed by Anders.
2519
2520         - fixed all places in the Canvas to RenderView rename patch where
2521           view() should have been changed to frameView().
2522
2523         * kwq/WebCoreAXObject.mm:
2524         (-[WebCoreAXObject position]):
2525         (-[WebCoreAXObject accessibilityAttributeValue:]):
2526         * rendering/RenderBlock.cpp:
2527         (WebCore::RenderBlock::layoutBlock):
2528         * rendering/RenderBox.cpp:
2529         (WebCore::RenderBox::paintBackgroundExtended):
2530         * rendering/RenderTreeAsText.cpp:
2531         (externalRepresentation):
2532
2533 2006-06-01  Geoffrey Garen  <ggaren@apple.com>
2534
2535         Fix by Mitz. Reviewed, tweaked, tested, landed by me.
2536
2537         - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9113
2538         REGRESSION (14581): XMLHttpRequest never calls onreadystatechange with 
2539         a readystate == 4
2540         
2541         An XMLHttpRequest must be added to the DOMObject cache so that its
2542         DOM implementation object can protect it, and by extension, its event
2543         listeners.
2544         
2545         This design seems slightly backwards to me -- the bindings should know
2546         about the DOM, not the other way around -- but I'm restoring it for
2547         now to fix the regression.
2548         
2549         * bindings/js/JSXMLHttpRequest.cpp:
2550         (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
2551         (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
2552
2553 2006-06-01  Anders Carlsson  <acarlsson@apple.com>
2554
2555         * platform/KURL.cpp:
2556         (equalIgnoringRef):
2557         Whoops. Fix build.
2558         
2559 2006-06-01  Anders Carlsson  <acarlsson@apple.com>
2560
2561         Reviewed by Darin.
2562
2563         http://bugzilla.opendarwin.org/show_bug.cgi?id=6309
2564         multiple problems prevent bookmarking/back button technique for AJAX/DHTML applications from working
2565         
2566         * bindings/js/kjs_window.cpp:
2567         (KJS::Location::put):
2568         Handle the case where the hash starts with a "#". Also, don't do anything if the previous and new hashes
2569         are equal.
2570         
2571         * bridge/BrowserExtension.h:
2572         * bridge/mac/BrowserExtensionMac.h:
2573         * bridge/mac/BrowserExtensionMac.mm:        
2574         (WebCore::BrowserExtensionMac::historyURL):
2575         * bridge/mac/WebCoreFrameBridge.h:
2576         * bridge/mac/WebCoreFrameBridge.mm:
2577         New function historyURL which returns the complete URL for a given item in the history.
2578         
2579         * page/Frame.cpp:
2580         (WebCore::Frame::scheduleLocationChange):        
2581         (WebCore::Frame::scheduleHistoryNavigation):
2582         If the URL of the new location only differs in the hash, don't schedule the load. Instead, load it
2583         directly.
2584         
2585         * platform/KURL.cpp:
2586         * platform/KURL.h:
2587         Add equalsIgnoringRef which returns whether two URLs are equal, ignoring the ref.
2588
2589 2006-06-01  Anders Carlsson  <acarlsson@apple.com>
2590
2591         Reviewed by Maciej.
2592
2593         http://bugzilla.opendarwin.org/show_bug.cgi?id=9212
2594         dispatchEvent13.html crashes under GuardMalloc
2595
2596         * dom/EventTargetNode.cpp:
2597         (WebCore::EventTargetNode::addEventListener):
2598         (WebCore::EventTargetNode::removeEventListener):        
2599         (WebCore::EventTargetNode::handleLocalEvents):
2600         
2601         (WebCore::EventTargetNode::removeHTMLEventListener):
2602         (WebCore::EventTargetNode::getHTMLEventListener):
2603         * dom/EventTargetNode.h:
2604         Make the list of registered event listeners refcount the listeners
2605         by using a value list of RefPtr objects.
2606         
2607         Set removed flag to true in removeEventListener
2608         Only invoke event listeners if they don't have the removed flag.
2609         
2610         * dom/dom2_eventsimpl.cpp:
2611         (WebCore::RegisteredEventListener::RegisteredEventListener):
2612         * dom/dom2_eventsimpl.h:
2613         Make RegisteredEventListener refcounted.
2614         
2615         (WebCore::RegisteredEventListener::removed):
2616         (WebCore::RegisteredEventListener::setRemoved):
2617         Add removed flag and getter and setter
2618
2619 2006-06-01  Justin Garcia  <justin.garcia@apple.com>
2620
2621         Reviewed by harrison
2622         
2623         <rdar://problem/4567752> When forwarding a message, pressing TAB key to place caret in body actually selects the entire message instead
2624
2625         * dom/Element.cpp:
2626         (WebCore::Element::focus):
2627
2628 2006-06-01  David Kilzer  <ddkilzer@kilzer.net>
2629
2630         Reviewed by darin.
2631
2632         http://bugzilla.opendarwin.org/show_bug.cgi?id=9144
2633         Test for Bug 8079 (REGRESSION: Redraw from page cache does not show visited links)
2634
2635         * manual-tests/redraw-page-cache-visited-links.html: Added.
2636         * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added.
2637
2638 2006-05-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2639
2640         Reviewed by Hyatt.
2641
2642         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9124
2643           Drop shadow obscures "add more stuff" bubble at live.com
2644
2645         Test: fast/css/find-next-layer.html
2646
2647         * rendering/RenderObject.cpp:
2648         (WebCore::RenderObject::findNextLayer): Fixed a bug where this function could reach
2649         two levels down in the layer tree and return 0.
2650
2651 2006-05-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2652
2653         Reviewed by Geoff.
2654
2655         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9109
2656           Remove bogus assertion in RenderBlock::tabWidth
2657
2658         Changed the uninitialized value of m_tabWidth to -1 and removed the
2659         assertion that it cannot be 0.
2660
2661         * rendering/RenderBlock.cpp:
2662         (WebCore:::RenderBlock::RenderBlock):
2663         (WebCore::RenderBlock::setStyle):
2664         * rendering/bidi.cpp:
2665         (WebCore::RenderBlock::tabWidth):
2666
2667 2006-05-31  Sam Weinig  <sam.weinig@gmail.com>
2668
2669         Reviewed by Hyatt.
2670
2671         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9100
2672           Absolutely positioned replaced elements with all non-auto
2673           values are rendered incorrectly
2674
2675         * rendering/RenderBox.cpp:
2676         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): Add support for case when all values are specified.
2677         (WebCore::RenderBox::calcAbsoluteVerticalReplaced): ditto
2678
2679 2006-05-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2680
2681         Reviewed by Hyatt.
2682
2683         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9012
2684           Row height not updated when cell heights change
2685
2686         Test: fast/table/row-height-recalc.html
2687
2688         * rendering/RenderTableCell.cpp:
2689         (WebCore::RenderTableCell::setStyle): Mark the section as needing recalculation
2690         if the height property changed.
2691         * rendering/RenderTableRow.cpp:
2692         (WebCore::RenderTableRow::setStyle): Ditto.
2693         * rendering/RenderTableSection.cpp:
2694         (WebCore::RenderTableSection::recalcCells): Initialize the grid row height
2695         to the height of the row element (like addChild() does).
2696
2697 2006-05-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2698
2699         Reviewed by Hyatt.
2700
2701         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8969
2702           REGRESSION: typing in textfield repaints whole web page at gamefaqs.com
2703
2704         No test possible (no functionality change)
2705
2706         * dom/Document.cpp:
2707         (WebCore::Document::updateLayout): Changed to ensure that pending subtree
2708         layouts are performed too.
2709         * page/Frame.cpp:
2710         (WebCore::Frame::forceLayout): Force a full layout.
2711         * page/FrameView.cpp:
2712         (WebCore::FrameViewPrivate::reset):
2713         (WebCore::FrameView::layout): Changed to relayout only the subtree rooted
2714         at d->layoutRoot if it's non-zero and allowSubtree is true.
2715         (WebCore::FrameView::scheduleRelayout): Change pending subtree relayout into
2716         normal relayout by clearing d->layoutRoot and propagating needsLayout to the
2717         root. 
2718         (WebCore::FrameView::scheduleRelayoutOfSubtree): Added.
2719         * page/FrameView.h:
2720         * rendering/RenderObject.cpp:
2721         (WebCore::RenderObject::markContainingBlocksForLayout): Added scheduleRelayout
2722         parameter. FrameView passes false to force marking all the way to the root
2723         when turning a pending subtree relayout into a full relayout. Otherwise,
2724         marking stops at the first textField (or at the root) and
2725         relayout of the last object reached is scheduled.
2726         (WebCore::RenderObject::scheduleRelayout):
2727         * rendering/RenderObject.h:
2728
2729 2006-05-31  Sam Weinig  <sam.weinig@gmail.com>
2730
2731         Reviewed by Darin.
2732
2733         patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8910>
2734         Bug 8910: Various code cleanups in RenderBox
2735         
2736         Clean up with some slight optimizations.
2737
2738         * rendering/RenderBox.cpp:
2739         (WebCore::RenderBox::contentWidth):
2740         (WebCore::RenderBox::contentHeight):
2741         (WebCore::RenderBox::setPos):
2742         (WebCore::RenderBox::calcWidth):
2743         (WebCore::RenderBox::calcWidthUsing):
2744         * rendering/RenderBox.h:
2745
2746 2006-05-31  Sam Weinig  <sam.weinig@gmail.com>
2747
2748         Reviewed by Hyatt.
2749
2750         patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8899>
2751         Bug 8899: Removes some unneeded code from RenderBox
2752         
2753         Removes the use of WidthType where not needed to simplify
2754         the code a little.
2755         
2756         * rendering/RenderBox.cpp:
2757         (WebCore::RenderBox::calcWidthUsing):
2758         (WebCore::RenderBox::sizesToIntrinsicWidth):
2759         (WebCore::RenderBox::calcReplacedWidth):
2760         (WebCore::RenderBox::calcReplacedWidthUsing):
2761         (WebCore::RenderBox::calcReplacedHeight):
2762         (WebCore::RenderBox::calcReplacedHeightUsing):
2763         * rendering/RenderBox.h:
2764         (WebCore::):
2765         (WebCore::RenderBox::renderName):
2766         * rendering/RenderImage.cpp:
2767         (WebCore::RenderImage::calcReplacedWidth):
2768         (WebCore::RenderImage::calcReplacedHeight):
2769
2770 2006-05-31  Rob Buis  <buis@kde.org>
2771
2772         Reviewed by Geoff.
2773
2774         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8455
2775         selectedIndex for a select after a Form reset() has wrong value
2776
2777         Make sure the list items are reset properly by selecting
2778         the first option in case no options have the selected attribute
2779         set.
2780
2781         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::reset):
2782
2783 2006-05-31  Rob Buis  <buis@kde.org>
2784
2785         Reviewed by Geoff.
2786
2787         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8024
2788         "Go" button (search) doesn't work at fifa.com (document.all.FormName)
2789
2790         Allow input elements with name attributes as possible named
2791         items for document.all.
2792
2793         * html/HTMLCollection.cpp:
2794         (WebCore::HTMLCollection::checkForNameMatch):
2795         (WebCore::HTMLCollection::updateNameCache):
2796
2797 2006-05-31  Dave Hyatt <hyatt@apple.com>
2798
2799         Adding stubs for BMP/ICO/XBM image decoders.  They don't
2800         do anything yet though.
2801
2802         * WebCore.vcproj/WebCore/WebCore.vcproj:
2803         * platform/cairo/ImageSourceCairo.cpp:
2804         (WebCore::createDecoder):
2805         * platform/image-decoders/bmp: Added.
2806         * platform/image-decoders/bmp/BMPImageDecoder.cpp: Added.
2807         (WebCore::BMPImageDecoder::isSizeAvailable):
2808         (WebCore::BMPImageDecoder::frameBufferAtIndex):
2809         * platform/image-decoders/bmp/BMPImageDecoder.h: Added.
2810         * platform/image-decoders/ico: Added.
2811         * platform/image-decoders/ico/ICOImageDecoder.cpp: Added.
2812         (WebCore::ICOImageDecoder::isSizeAvailable):
2813         (WebCore::ICOImageDecoder::frameBufferAtIndex):
2814         * platform/image-decoders/ico/ICOImageDecoder.h: Added.
2815         * platform/image-decoders/xbm: Added.
2816         * platform/image-decoders/xbm/XBMImageDecoder.cpp: Added.
2817         (WebCore::XBMImageDecoder::isSizeAvailable):
2818         (WebCore::XBMImageDecoder::frameBufferAtIndex):
2819         * platform/image-decoders/xbm/XBMImageDecoder.h: Added.
2820
2821 2006-05-31  David Hyatt  <hyatt@apple.com>
2822
2823         Fix for the gmail tab-focus-stealing bug.
2824
2825         Reviewed by darin
2826
2827         * bindings/js/kjs_window.cpp:
2828         (KJS::WindowFunc::callAsFunction):
2829         * bridge/mac/BrowserExtensionMac.mm:
2830         (WebCore::BrowserExtensionMac::createNewWindow):
2831         * bridge/mac/FrameMac.h:
2832         * bridge/mac/FrameMac.mm:
2833         (WebCore::FrameMac::focusWindow):
2834         (WebCore::FrameMac::unfocusWindow):
2835         * bridge/mac/WebCoreFrameBridge.h:
2836         * page/Frame.h:
2837         * platform/Widget.h:
2838         * platform/mac/WidgetMac.mm:
2839         * platform/win/TemporaryLinkStubs.cpp:
2840         (FrameWin::focusWindow):
2841         * platform/win/WidgetWin.cpp:
2842
2843 2006-05-31  Beth Dakin  <bdakin@apple.com>
2844
2845         Reviewed by Hyatt.
2846
2847         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6755 CSS3: 
2848         Borders rounded with border-radius don't draw the roundings
2849
2850         This patch does not draw all of the different border styles 
2851         perfectly, so I have filed a few followup bugs that I will 
2852         reference from this Bugzilla.
2853
2854         * platform/GraphicsContext.h:
2855         * platform/cairo/GraphicsContextCairo.cpp:
2856         (WebCore::GraphicsContext::drawArc): drawArc() has different 
2857         parameters now, but mostly this needs to be implemented to match 
2858         the Mac side later.
2859         (WebCore::GraphicsContext::addRoundedRectClip): Just a stub. 
2860         Implement this later.
2861         (WebCore::GraphicsContext::addInnerRoundedRectClip): Just a stub. 
2862         Implement this later.
2863         * platform/cg/GraphicsContextCG.cpp:
2864         (WebCore::GraphicsContext::drawArc): drawArc() now handles drawing 
2865         elliptical arcs as well as circular arcs, it also takes a thickness 
2866         parameter to draw an arc of a given thickness and draws with the 
2867         appropriate pen style.
2868         (WebCore::GraphicsContext::addInnerRoundedRectClip): Adds a clip to 
2869         the inside of an arc instead of to the outside which is already 
2870         done by addRoundedClipRect()
2871         * rendering/RenderObject.cpp:
2872         (WebCore::RenderObject::drawBorderArc): Draws the border arcs in 
2873         the appropriate styles.
2874         (WebCore::RenderObject::paintBorder): Calls drawBorderArc() when 
2875         border arcs are needed.
2876         * rendering/RenderObject.h:
2877
2878 2006-05-30  Eric Seidel  <eric@eseidel.com>
2879
2880         Reviewed by andersca.
2881
2882         Add first-cut SVG JS bindings autogeneration.
2883         SVGSVGElement and various other support classes are generated.
2884         Various small style fixes.
2885         http://bugzilla.opendarwin.org/show_bug.cgi?id=4249
2886
2887         * DerivedSources.make:
2888         * WebCore+SVG/RGBColor.cpp: Removed.
2889         * WebCore+SVG/RGBColor.h: Removed.
2890         * WebCore.xcodeproj/project.pbxproj:
2891         * bindings/js/JSHTMLElementWrapperFactory.cpp:
2892         (WebCore::createJSHTMLWrapper): renamed from createJSWrapper
2893         * bindings/js/JSHTMLElementWrapperFactory.h:
2894         * bindings/js/kjs_dom.cpp:
2895         (KJS::DOMNode::DOMNode):
2896         (KJS::DOMNode::toBoolean):
2897         (KJS::DOMNode::getOwnPropertySlot):
2898         (KJS::DOMNode::getValueProperty):
2899         (KJS::DOMNode::put):
2900         (KJS::DOMNode::putValueProperty):
2901         (KJS::DOMNode::toPrimitive):
2902         (KJS::DOMNode::toString):
2903         (KJS::DOMNodeProtoFunc::callAsFunction):
2904         (KJS::toEventTargetNode):
2905         (KJS::DOMEventTargetNode::getOwnPropertySlot):
2906         (KJS::DOMEventTargetNode::getValueProperty):
2907         (KJS::DOMEventTargetNode::put):
2908         (KJS::DOMEventTargetNode::putValueProperty):
2909         (KJS::DOMEventTargetNode::setListener):
2910         (KJS::DOMEventTargetNode::getListener):
2911         (KJS::DOMEventTargetNode::pushEventHandlerScope):
2912         (KJS::DOMEventTargetNodeProtoFunc::callAsFunction):
2913         (KJS::DOMNodeList::toPrimitive):
2914         (KJS::DOMNodeList::getValueProperty):
2915         (KJS::DOMNodeList::indexGetter):
2916         (KJS::DOMNodeList::nameGetter):
2917         (KJS::DOMNodeList::getOwnPropertySlot):
2918         (KJS::DOMNodeList::callAsFunction):
2919         (KJS::DOMNodeListFunc::callAsFunction):
2920         (KJS::toElement):
2921         (KJS::toDocumentType):
2922         (KJS::DOMNamedNodeMap::DOMNamedNodeMap):
2923         (KJS::DOMNamedNodeMap::~DOMNamedNodeMap):
2924         (KJS::DOMNamedNodeMap::lengthGetter):
2925         (KJS::DOMNamedNodeMap::indexGetter):
2926         (KJS::DOMNamedNodeMap::nameGetter):
2927         (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
2928         (KJS::toJS):
2929         (KJS::checkNodeSecurity):
2930         (KJS::getRuntimeObject):
2931         (KJS::DOMExceptionConstructor::getOwnPropertySlot):
2932         (KJS::DOMExceptionConstructor::getValueProperty):
2933         (KJS::getDOMExceptionConstructor):
2934         (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
2935         (KJS::DOMNamedNodesCollection::lengthGetter):
2936         (KJS::DOMNamedNodesCollection::indexGetter):
2937         (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
2938         * bindings/scripts/CodeGenerator.pm:
2939         * bindings/scripts/CodeGeneratorJS.pm:
2940         * dom/Document.cpp:
2941         (WebCore::Document::implicitClose):
2942         * dom/Element.h:
2943         * dom/StyledElement.h:
2944         * ksvg2/bindings/idl/svg/SVGAngle.idl: Removed.
2945         * ksvg2/bindings/idl/svg/SVGAnimatedLength.idl: Removed.
2946         * ksvg2/bindings/idl/svg/SVGColor.idl: Removed.
2947         * ksvg2/bindings/idl/svg/SVGDocument.idl: Removed.
2948         * ksvg2/bindings/idl/svg/SVGElement.idl: Removed.
2949         * ksvg2/bindings/idl/svg/SVGLength.idl: Removed.
2950         * ksvg2/bindings/idl/svg/SVGMatrix.idl: Removed.
2951         * ksvg2/bindings/idl/svg/SVGNumber.idl: Removed.
2952         * ksvg2/bindings/idl/svg/SVGPoint.idl: Removed.
2953         * ksvg2/bindings/idl/svg/SVGRect.idl: Removed.
2954         * ksvg2/bindings/idl/svg/SVGSVGElement.idl: Removed.
2955         * ksvg2/bindings/idl/svg/SVGTransform.idl: Removed.
2956         * ksvg2/bindings/idl/svg/kdomdefs.idl: Removed.
2957         * ksvg2/bindings/js: Added.
2958         * ksvg2/bindings/js/JSSVGNumber.cpp: Added.
2959         (WebCore::):
2960         (WebCore::JSSVGNumber::~JSSVGNumber):
2961         (WebCore::JSSVGNumber::getOwnPropertySlot):
2962         (WebCore::JSSVGNumber::getValue):
2963         (WebCore::getJSSVGNumber):
2964         * ksvg2/bindings/js/JSSVGNumber.h: Added.
2965         (WebCore::JSSVGNumber::JSSVGNumber):
2966         (WebCore::JSSVGNumber::classInfo):
2967         * ksvg2/bindings/js/JSSVGPoint.cpp: Added.
2968         (WebCore::):
2969         (WebCore::JSSVGPoint::~JSSVGPoint):
2970         (WebCore::JSSVGPoint::getOwnPropertySlot):
2971         (WebCore::JSSVGPoint::getValueProperty):
2972         (WebCore::getJSSVGPoint):
2973         (WebCore::toFloatPoint):
2974         * ksvg2/bindings/js/JSSVGPoint.h: Added.
2975         (WebCore::JSSVGPoint::JSSVGPoint):
2976         (WebCore::JSSVGPoint::classInfo):
2977         (WebCore::JSSVGPoint::):
2978         (WebCore::JSSVGPoint::impl):
2979         * ksvg2/bindings/js/JSSVGRect.cpp: Added.
2980         (WebCore::):
2981         (WebCore::JSSVGRect::~JSSVGRect):
2982         (WebCore::JSSVGRect::getOwnPropertySlot):
2983         (WebCore::JSSVGRect::getValueProperty):
2984         (WebCore::getJSSVGRect):
2985         (WebCore::toFloatRect):
2986         * ksvg2/bindings/js/JSSVGRect.h: Added.
2987         (WebCore::JSSVGRect::JSSVGRect):
2988         (WebCore::JSSVGRect::classInfo):
2989         (WebCore::JSSVGRect::):
2990         (WebCore::JSSVGRect::impl):
2991         * ksvg2/css/SVGCSSParser.cpp:
2992         (WebCore::CSSParser::parseSVGValue):
2993         * ksvg2/css/SVGCSSStyleSelector.cpp:
2994         (WebCore::CSSStyleSelector::applySVGProperty):
2995         * ksvg2/events/SVGZoomEvent.cpp:
2996         (SVGZoomEvent::SVGZoomEvent):
2997         (SVGZoomEvent::zoomRectScreen):
2998         (SVGZoomEvent::previousTranslate):
2999         (SVGZoomEvent::newTranslate):
3000         * ksvg2/events/SVGZoomEvent.h:
3001         * ksvg2/ksvg.h:
3002         (WebCore::):
3003         * ksvg2/misc/SVGDocumentExtensions.cpp:
3004         (WebCore::SVGDocumentExtensions::SVGDocumentExtensions):
3005         (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
3006         (WebCore::SVGDocumentExtensions::addTimeContainer):
3007         (WebCore::SVGDocumentExtensions::removeTimeContainer):
3008         (WebCore::SVGDocumentExtensions::startAnimations):
3009         (WebCore::SVGDocumentExtensions::pauseAnimations):
3010         (WebCore::SVGDocumentExtensions::unpauseAnimations):
3011         * ksvg2/misc/SVGDocumentExtensions.h:
3012         * ksvg2/svg/SVGAElement.h:
3013         * ksvg2/svg/SVGAngle.h:
3014         (WebCore::SVGAngle::):
3015         * ksvg2/svg/SVGAngle.idl: Added.
3016         * ksvg2/svg/SVGAnimateColorElement.cpp:
3017         (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
3018         (WebCore::SVGAnimateColorElement::handleTimerEvent):
3019         (WebCore::SVGAnimateColorElement::clampColor):
3020         * ksvg2/svg/SVGAnimateColorElement.h:
3021         * ksvg2/svg/SVGAnimateElement.cpp:
3022         (SVGAnimateElement::SVGAnimateElement):
3023         (SVGAnimateElement::handleTimerEvent):
3024         * ksvg2/svg/SVGAnimateElement.h:
3025         * ksvg2/svg/SVGAnimateTransformElement.cpp:
3026         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
3027         (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
3028         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
3029         (WebCore::SVGAnimateTransformElement::parseTransformValue):
3030         (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
3031         (WebCore::SVGAnimateTransformElement::initialMatrix):
3032         * ksvg2/svg/SVGAnimateTransformElement.h:
3033         * ksvg2/svg/SVGAnimatedLength.idl: Added.
3034         * ksvg2/svg/SVGAnimationElement.cpp:
3035         (SVGAnimationElement::closeRenderer):
3036         * ksvg2/svg/SVGAnimationElement.h:
3037         * ksvg2/svg/SVGCircleElement.h:
3038         * ksvg2/svg/SVGClipPathElement.h:
3039         * ksvg2/svg/SVGColor.cpp:
3040         (WebCore::SVGColor::SVGColor):
3041         (WebCore::SVGColor::rgbColor):
3042         (WebCore::SVGColor::setRGBColor):
3043         (WebCore::SVGColor::setRGBColorICCColor):
3044         (WebCore::SVGColor::setColor):
3045         (WebCore::SVGColor::color):
3046         * ksvg2/svg/SVGColor.h:
3047         (WebCore::SVGColor::):
3048         (WebCore::SVGColor::setRGBColor):
3049         * ksvg2/svg/SVGColor.idl: Added.
3050         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
3051         * ksvg2/svg/SVGCursorElement.h:
3052         * ksvg2/svg/SVGDefsElement.h:
3053         * ksvg2/svg/SVGDescElement.h:
3054         * ksvg2/svg/SVGDocument.idl: Added.
3055         * ksvg2/svg/SVGElement.cpp:
3056         (WebCore::SVGElement::SVGElement):
3057         (WebCore::SVGElement::isSupported):
3058         (WebCore::SVGElement::id):
3059         (WebCore::SVGElement::setId):
3060         (WebCore::SVGElement::xmlbase):
3061         (WebCore::SVGElement::setXmlbase):
3062         (WebCore::SVGElement::ownerSVGElement):
3063         (WebCore::SVGElement::viewportElement):
3064         (WebCore::SVGElement::tryGetAttribute):
3065         (WebCore::SVGElement::tryGetAttributeNS):
3066         (WebCore::SVGElement::childShouldCreateRenderer):
3067         * ksvg2/svg/SVGElement.h:
3068         * ksvg2/svg/SVGElement.idl: Added.
3069         * ksvg2/svg/SVGEllipseElement.h:
3070         * ksvg2/svg/SVGEvent.idl: Added.
3071         * ksvg2/svg/SVGFEBlendElement.h:
3072         * ksvg2/svg/SVGFEColorMatrixElement.h:
3073         * ksvg2/svg/SVGFEComponentTransferElement.h:
3074         * ksvg2/svg/SVGFECompositeElement.h:
3075         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
3076         * ksvg2/svg/SVGFEDistantLightElement.h:
3077         * ksvg2/svg/SVGFEFloodElement.h:
3078         * ksvg2/svg/SVGFEFuncAElement.h:
3079         * ksvg2/svg/SVGFEFuncBElement.h:
3080         * ksvg2/svg/SVGFEFuncGElement.h:
3081         * ksvg2/svg/SVGFEFuncRElement.h:
3082         * ksvg2/svg/SVGFEGaussianBlurElement.h:
3083         * ksvg2/svg/SVGFEImageElement.h:
3084         * ksvg2/svg/SVGFELightElement.h:
3085         * ksvg2/svg/SVGFEMergeElement.h:
3086         * ksvg2/svg/SVGFEMergeNodeElement.h:
3087         * ksvg2/svg/SVGFEOffsetElement.h:
3088         * ksvg2/svg/SVGFEPointLightElement.h:
3089         * ksvg2/svg/SVGFESpecularLightingElement.h:
3090         * ksvg2/svg/SVGFESpotLightElement.h:
3091         * ksvg2/svg/SVGFETileElement.h:
3092         * ksvg2/svg/SVGFETurbulenceElement.h:
3093         * ksvg2/svg/SVGFilterElement.h:
3094         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
3095         * ksvg2/svg/SVGForeignObjectElement.h:
3096         * ksvg2/svg/SVGGElement.h:
3097         * ksvg2/svg/SVGGradientElement.h:
3098         * ksvg2/svg/SVGHelper.cpp:
3099         (WebCore::SVGHelper::PercentageOfViewport):
3100         (WebCore::SVGHelper::ParseSeperatedList):
3101         * ksvg2/svg/SVGImageElement.h:
3102         * ksvg2/svg/SVGLength.h:
3103         (WebCore::SVGLength::):
3104         * ksvg2/svg/SVGLength.idl: Added.
3105         * ksvg2/svg/SVGLineElement.h:
3106         * ksvg2/svg/SVGLinearGradientElement.h:
3107         * ksvg2/svg/SVGLocatable.cpp:
3108         (SVGLocatable::getBBox):
3109         * ksvg2/svg/SVGLocatable.h:
3110         * ksvg2/svg/SVGMarkerElement.h:
3111         * ksvg2/svg/SVGMaskElement.h:
3112         * ksvg2/svg/SVGMatrix.cpp:
3113         (SVGMatrix::inverse):
3114         (SVGMatrix::rotateFromVector):
3115         * ksvg2/svg/SVGMatrix.h:
3116         * ksvg2/svg/SVGMatrix.idl: Added.
3117         * ksvg2/svg/SVGNumber.idl: Added.
3118         * ksvg2/svg/SVGPathElement.cpp:
3119         (WebCore::SVGPathElement::getPointAtLength):
3120         * ksvg2/svg/SVGPathElement.h:
3121         * ksvg2/svg/SVGPatternElement.cpp:
3122         (WebCore::SVGPatternElement::x):
3123         (WebCore::SVGPatternElement::y):
3124         (WebCore::SVGPatternElement::width):
3125         (WebCore::SVGPatternElement::height):
3126         (WebCore::SVGPatternElement::pushAttributeContext):
3127         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
3128         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
3129         (WebCore::SVGPatternElement::notifyClientsToRepaint):
3130         (WebCore::SVGPatternElement::notifyAttributeChange):
3131         (WebCore::SVGPatternElement::canvasResource):
3132         (WebCore::SVGPatternElement::getCTM):
3133         * ksvg2/svg/SVGPatternElement.h:
3134         * ksvg2/svg/SVGPoint.idl: Added.
3135         * ksvg2/svg/SVGPolyElement.h:
3136         * ksvg2/svg/SVGPolygonElement.h:
3137         * ksvg2/svg/SVGPolylineElement.h:
3138         * ksvg2/svg/SVGRadialGradientElement.h:
3139         * ksvg2/svg/SVGRect.idl: Added.
3140         * ksvg2/svg/SVGRectElement.h:
3141         * ksvg2/svg/SVGSVGElement.cpp:
3142         (WebCore::SVGSVGElement::SVGSVGElement):
3143         (WebCore::SVGSVGElement::~SVGSVGElement):
3144         (WebCore::SVGSVGElement::viewport):
3145         (WebCore::SVGSVGElement::currentTranslate):
3146         (WebCore::SVGSVGElement::unsuspendRedraw):
3147         (WebCore::SVGSVGElement::getIntersectionList):
3148         (WebCore::SVGSVGElement::getEnclosureList):
3149         (WebCore::SVGSVGElement::checkIntersection):
3150         (WebCore::SVGSVGElement::checkEnclosure):
3151         (WebCore::SVGSVGElement::createSVGNumber):
3152         (WebCore::SVGSVGElement::createSVGPoint):
3153         (WebCore::SVGSVGElement::createSVGRect):
3154         (WebCore::SVGSVGElement::pauseAnimations):
3155         (WebCore::SVGSVGElement::unpauseAnimations):
3156         (WebCore::SVGSVGElement::animationsPaused):
3157         (WebCore::SVGSVGElement::getCurrentTime):
3158         (WebCore::SVGSVGElement::setCurrentTime):
3159         * ksvg2/svg/SVGSVGElement.h:
3160         (WebCore::SVGSVGElement::timeScheduler):
3161         * ksvg2/svg/SVGSVGElement.idl: Added.
3162         * ksvg2/svg/SVGScriptElement.h:
3163         * ksvg2/svg/SVGSetElement.cpp:
3164         (WebCore::SVGSetElement::SVGSetElement):
3165         (WebCore::SVGSetElement::handleTimerEvent):
3166         * ksvg2/svg/SVGSetElement.h:
3167         * ksvg2/svg/SVGStopElement.h:
3168         * ksvg2/svg/SVGStyleElement.h:
3169         * ksvg2/svg/SVGStyledElement.h:
3170         * ksvg2/svg/SVGStyledLocatableElement.cpp:
3171         (SVGStyledLocatableElement::getBBox):
3172         * ksvg2/svg/SVGStyledLocatableElement.h:
3173         * ksvg2/svg/SVGStyledTransformableElement.cpp:
3174         (SVGStyledTransformableElement::getBBox):
3175         * ksvg2/svg/SVGStyledTransformableElement.h:
3176         * ksvg2/svg/SVGSwitchElement.h:
3177         * ksvg2/svg/SVGSymbolElement.h:
3178         * ksvg2/svg/SVGTRefElement.h:
3179         * ksvg2/svg/SVGTSpanElement.h:
3180         * ksvg2/svg/SVGTextContentElement.cpp:
3181         (SVGTextContentElement::getStartPositionOfChar):
3182         (SVGTextContentElement::getEndPositionOfChar):
3183         (SVGTextContentElement::getExtentOfChar):
3184         (SVGTextContentElement::getCharNumAtPosition):
3185         (SVGTextContentElement::parseMappedAttribute):
3186         * ksvg2/svg/SVGTextContentElement.h:
3187         * ksvg2/svg/SVGTextElement.cpp:
3188         (WebCore::SVGTextElement::getBBox):
3189         * ksvg2/svg/SVGTextElement.h:
3190         * ksvg2/svg/SVGTextPositioningElement.h:
3191         * ksvg2/svg/SVGTitleElement.h:
3192         * ksvg2/svg/SVGTransform.h:
3193         (WebCore::SVGTransform::):
3194         * ksvg2/svg/SVGTransform.idl: Added.
3195         * ksvg2/svg/SVGUseElement.h:
3196         * ksvg2/svg/SVGViewElement.h:
3197         * page/Frame.cpp:
3198         (WebCore::Frame::Frame):
3199         (WebCore::Frame::pauseTimeouts):
3200         (WebCore::Frame::resumeTimeouts):
3201         * platform/Color.h:
3202         * rendering/RenderBR.h:
3203         * rendering/RenderBox.h:
3204         (WebCore::RenderBox::renderName):
3205         * rendering/RenderCanvas.h:
3206         (WebCore::RenderCanvas::view):
3207         * rendering/RenderContainer.h:
3208         * rendering/RenderFlexibleBox.h:
3209         * rendering/RenderFlow.h:
3210         (WebCore::RenderFlow::RenderFlow):
3211         * rendering/RenderInline.h:
3212         * rendering/RenderTableSection.h:
3213         * rendering/RenderTextFragment.h:
3214         (WebCore::RenderTextFragment::contentString):
3215         * xml/xmlattrs.in: Added.
3216
3217 2006-05-30  Geoffrey Garen  <ggaren@apple.com>
3218
3219         Reviewed by Maciej.
3220
3221         - Fixed <rdar://problem/4559720> window sizing: make javascript window 
3222         and screen sizing methods and properties work @ HIDPI
3223         
3224         The general approach here is to change some ints to floats, make 
3225         a few key functions that scale between WebView and window/screen 
3226         coordinates, and change other functions that work with screen 
3227         coordinates to use the scaling functions for their underlying 
3228         implementations.
3229
3230         * manual-tests/window-open-features.html: Removed.
3231         * manual-tests/window-sizing.html: Added. More test coverage.
3232
3233         * bindings/js/kjs_window.cpp: Changed ints to floats and IntRects to
3234         FloatRects, because window coordinates can be fractional when scaled 
3235         to WebView/DOM coordinates.
3236         (KJS::floatFeature):
3237         (KJS::showModalDialog):
3238         (KJS::Window::getValueProperty):
3239         (KJS::constrainToVisible):
3240         (KJS::WindowFunc::callAsFunction):
3241         * bridge/BrowserExtension.h:
3242         * bridge/mac/BrowserExtensionMac.mm:
3243         (WebCore::BrowserExtensionMac::createNewWindow): Removed custom scaling
3244         code and replaced with calls to Page::windowRect and 
3245         Page::setWindowRect. Renamed 'page' and 'bridge' to 'pageBridge' and
3246         'frameBridge,' respectively.
3247         * bridge/mac/PageMac.mm:
3248         (WebCore::Page::windowRect): Changed to use scaling
3249         (WebCore::Page::setWindowRect): ditto
3250         * bridge/mac/WebCoreFrameBridge.mm:
3251         (globalPoint):
3252         * page/Page.h:
3253         * platform/IntRect.h:
3254         * platform/Screen.h:
3255         * platform/mac/MouseEventMac.mm:
3256         (WebCore::globalPositionForEvent): Changed to use flipScreenPoint
3257         * platform/mac/ScreenMac.mm:
3258         (WebCore::flipScreenRect): New key function
3259         (WebCore::flipScreenPoint): New key function
3260         (WebCore::scaleScreenRectToView): New key function
3261         (WebCore::scaleViewRectToScreen): New key function
3262         (WebCore::screenRect): Changed to use scaling
3263         (WebCore::usableScreenRect): ditto
3264
3265         Feeble attempt to preserve Windows build:
3266         
3267         * platform/win/ScreenWin.cpp:
3268         (WebCore::scaleScreenRectToWidget): stub -- doesn't actually scale
3269         (WebCore::scaleWidgetRectToScreen): ditto
3270         * bridge/win/PageWin.cpp:
3271         (WebCore::Page::Page):
3272         (WebCore::Page::widget):
3273
3274 2006-05-30  David Hyatt  <hyatt@apple.com>
3275
3276         Rename RenderCanvas to RenderView. Rename canvas(), isCanvas()
3277         to view(), isView().  Rename the frame view accessor on the old canvas
3278         from view() to frameView() (to avoid view()->view(), since that just looks
3279         stupid). :)
3280
3281         Reviewed by andersca
3282
3283         * WebCore.vcproj/WebCore/WebCore.vcproj:
3284         * WebCore.xcodeproj/project.pbxproj:
3285         * bindings/js/kjs_dom.cpp:
3286         * bindings/js/kjs_window.cpp:
3287         * bridge/mac/FrameMac.mm:
3288         * bridge/mac/WebCoreFrameBridge.mm:
3289         (-[WebCoreFrameBridge _setupRootForPrinting:]):
3290         (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
3291         (-[WebCoreFrameBridge selectionColor]):
3292         (-[WebCoreFrameBridge accessibilityTree]):
3293         * dom/Document.cpp:
3294         (WebCore::Document::attach):
3295         (WebCore::Document::updateSelection):
3296         (WebCore::Document::prepareMouseEvent):
3297         * editing/SelectionController.cpp:
3298         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3299         * ksvg2/svg/SVGClipPathElement.cpp:
3300         (SVGClipPathElement::canvasResource):
3301         * ksvg2/svg/SVGFEFloodElement.cpp:
3302         (SVGFEFloodElement::filterEffect):
3303         * ksvg2/svg/SVGGradientElement.cpp:
3304         (SVGGradientElement::rebuildStops):
3305         * ksvg2/svg/SVGHelper.cpp:
3306         (SVGHelper::PercentageOfViewport):
3307         * ksvg2/svg/SVGPathElement.cpp:
3308         (WebCore::SVGPathElement::getPointAtLength):
3309         * ksvg2/svg/SVGSVGElement.cpp:
3310         (WebCore::SVGSVGElement::currentTranslate):
3311         * ksvg2/svg/SVGStyledElement.cpp:
3312         (WebCore::SVGStyledElement::view):
3313         (WebCore::SVGStyledElement::pushAttributeContext):
3314         * ksvg2/svg/SVGStyledElement.h:
3315         * kwq/WebCoreAXObject.mm:
3316         (-[WebCoreAXObject accessibilityShouldUseUniqueId]):
3317         (-[WebCoreAXObject role]):
3318         (-[WebCoreAXObject value]):
3319         (-[WebCoreAXObject position]):
3320         (-[WebCoreAXObject accessibilityIsIgnored]):
3321         (-[WebCoreAXObject accessibilityAttributeNames]):
3322         (-[WebCoreAXObject topView]):
3323         (-[WebCoreAXObject accessibilityAttributeValue:]):
3324         * page/Frame.cpp:
3325         (WebCore::Frame::selectionRect):
3326         (WebCore::Frame::paint):
3327         (WebCore::Frame::adjustPageHeight):
3328         (WebCore::Frame::forceLayoutWithPageWidthRange):
3329         * page/FrameView.cpp:
3330         (WebCore::FrameView::adjustViewSize):
3331         (WebCore::FrameView::layout):
3332         * page/FrameView.h:
3333         * rendering/AutoTableLayout.cpp:
3334         (WebCore::shouldScaleColumns):
3335         * rendering/RenderBlock.cpp:
3336         (WebCore::RenderBlock::MarginInfo::MarginInfo):
3337         (WebCore::RenderBlock::isSelfCollapsingBlock):
3338         (WebCore::RenderBlock::layoutBlock):
3339         (WebCore::RenderBlock::paintChildren):
3340         (WebCore::RenderBlock::setSelectionState):
3341         (WebCore::RenderBlock::isSelectionRoot):
3342         (WebCore::RenderBlock::fillInlineSelectionGaps):
3343         (WebCore::RenderBlock::lowestPosition):
3344         (WebCore::RenderBlock::rightmostPosition):
3345         (WebCore::RenderBlock::leftmostPosition):
3346         (WebCore::RenderBlock::clearFloats):
3347         (WebCore::RenderBlock::nodeAtPoint):
3348         (WebCore::RenderBlock::calcBlocminMaxWidth):
3349         (WebCore::RenderBlock::inRootBlockContext):
3350         * rendering/RenderBox.cpp:
3351         (WebCore::RenderBox::setStyle):
3352         (WebCore::RenderBox::paintRootBoxDecorations):
3353         (WebCore::RenderBox::paintBackgroundExtended):
3354         (WebCore::RenderBox::calcHeight):
3355         (WebCore::RenderBox::calcPercentageHeight):
3356         (WebCore::RenderBox::availableHeightUsing):
3357         * rendering/RenderCanvas.cpp: Removed.
3358         * rendering/RenderCanvas.h: Removed.
3359         * rendering/RenderContainer.cpp:
3360         (WebCore::RenderContainer::removeChildNode):
3361         * rendering/RenderFileButton.cpp:
3362         (WebCore::RenderFileButton::RenderFileButton):
3363         * rendering/RenderFlow.cpp:
3364         (WebCore::RenderFlow::destroy):
3365         (WebCore::RenderFlow::paintLines):
3366         * rendering/RenderFrameSet.cpp:
3367         (WebCore::RenderFrameSet::layout):
3368         (WebCore::RenderFrameSet::userResize):
3369         (WebCore::RenderFrameSet::setResizing):
3370         * rendering/RenderImage.cpp:
3371         (WebCore::RenderImage::paint):
3372         * rendering/RenderLayer.cpp:
3373         (WebCore::RenderLayer::updateLayerPositions):
3374         (WebCore::RenderLayer::updateLayerPosition):
3375         (WebCore::RenderLayer::stackingContext):
3376         (WebCore::RenderLayer::enclosingPositionedAncestor):
3377         (WebCore::RenderLayer::convertToLayerCoords):
3378         (WebCore::RenderLayer::scrollToOffset):
3379         (WebCore::isSubframeCanvas):
3380         (WebCore::RenderLayer::intersectsDamageRect):
3381         * rendering/RenderLayer.h:
3382         (WebCore::RenderLayer::isStackingContext):
3383         * rendering/RenderListMarker.cpp:
3384         (WebCore::RenderListMarker::paint):
3385         * rendering/RenderObject.cpp:
3386         (WebCore::RenderObject::scroll):
3387         (WebCore::RenderObject::containingBlock):
3388         (WebCore::RenderObject::repaint):
3389         (WebCore::RenderObject::repaintRectangle):
3390         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
3391         (WebCore::RenderObject::draggableNode):
3392         (WebCore::RenderObject::selectionStartEnd):
3393         (WebCore::RenderObject::setStyle):
3394         (WebCore::RenderObject::viewRect):
3395         (WebCore::RenderObject::view):
3396         (WebCore::RenderObject::container):
3397         (WebCore::RenderObject::removeFromObjectLists):
3398         (WebCore::RenderObject::scheduleRelayout):
3399         (WebCore::RenderObject::imageChanged):
3400         (WebCore::RenderObject::maximalOutlineSize):
3401         * rendering/RenderObject.h:
3402         (WebCore::RenderObject::isRenderView):
3403         * rendering/RenderTextArea.cpp:
3404         (WebCore::RenderTextArea::RenderTextArea):
3405         * rendering/RenderThemeMac.mm:
3406         (WebCore::RenderThemeMac::paintCheckbox):
3407         (WebCore::RenderThemeMac::paintRadio):
3408         (WebCore::RenderThemeMac::paintButton):
3409         * rendering/RenderTreeAsText.cpp:
3410         (externalRepresentation):
3411         * rendering/RenderView.cpp: Added.
3412         (WebCore::RenderView::RenderView):
3413         (WebCore::RenderView::~RenderView):
3414         (WebCore::RenderView::calcHeight):
3415         (WebCore::RenderView::calcWidth):
3416         (WebCore::RenderView::calcMinMaxWidth):
3417         (WebCore::RenderView::layout):
3418         (WebCore::RenderView::absolutePosition):
3419         (WebCore::RenderView::paint):
3420         (WebCore::RenderView::paintBoxDecorations):
3421         (WebCore::RenderView::repaintViewRectangle):
3422         (WebCore::RenderView::getAbsoluteRepaintRect):
3423         (WebCore::RenderView::computeAbsoluteRepaintRect):
3424         (WebCore::RenderView::absoluteRects):
3425         (WebCore::RenderView::selectionRect):
3426         (WebCore::RenderView::setSelection):
3427         (WebCore::RenderView::clearSelection):
3428         (WebCore::RenderView::selectionStartEnd):
3429         (WebCore::RenderView::updateWidgetPositions):
3430         (WebCore::RenderView::addWidget):
3431         (WebCore::RenderView::removeWidget):
3432         (WebCore::RenderView::viewRect):
3433         (WebCore::RenderView::docHeight):
3434         (WebCore::RenderView::docWidth):
3435         (WebCore::RenderView::setBestTruncatedAt):
3436         * rendering/RenderView.h: Added.
3437         (WebCore::RenderView::renderName):
3438         (WebCore::RenderView::isRenderView):
3439         (WebCore::RenderView::frameView):
3440         * rendering/RenderWidget.cpp:
3441         (WebCore::RenderWidget::RenderWidget):
3442         (WebCore::RenderWidget::destroy):
3443         (WebCore::RenderWidget::updateWidgetPosition):
3444         * rendering/RenderWidget.h:
3445         (WebCore::RenderWidget::widget):
3446         * rendering/bidi.cpp:
3447         (WebCore::RenderBlock::layoutInlineChildren):
3448
3449 2006-05-30  Tim Omernick  <timo@apple.com>
3450
3451         Reviewed by Geoff.
3452
3453         <rdar://problem/4567776> REGRESSION: window.open() links do not work at www.newarchery.com
3454
3455         * bindings/js/kjs_window.cpp:
3456         (KJS::WindowFunc::callAsFunction):
3457         Set the URL in the ResourceRequest; otherwise, it'll be uninitialized and createNewWindow() will
3458         not be able to load the URL into a pre-existing frame.
3459
3460 2006-05-30  Sam Weinig  <sam.weinig@gmail.com>
3461
3462         Reviewed by Maciej, landed by Beth.
3463
3464         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9137
3465           Children with percentage heights of absolutely positioned element 
3466           with height: auto and top and bottom non-auto does not lay out 
3467           correctly
3468
3469         Adds special case.
3470
3471         * rendering/RenderBox.cpp:
3472         (WebCore::RenderBox::calcPercentageHeight):
3473         (WebCore::RenderBox::calcReplacedHeightUsing):
3474
3475 2006-05-30  Sam Weinig  <sam.weinig@gmail.com>
3476
3477         Reviewed by Hyatt, landed by Beth.
3478
3479         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9085
3480           Absolutely positioned objects with 'height': auto and 'top': and
3481           'bottom': non-auto should not be content based
3482
3483         * rendering/RenderBox.cpp:
3484         (WebCore::RenderBox::calcAbsoluteVertical):
3485         (WebCore::RenderBox::calcAbsoluteVerticalValues):
3486         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
3487         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
3488
3489 2006-05-30  Eric Seidel  <eric@eseidel.com>
3490
3491         Reviewed by andersca.
3492
3493         Small amount of svg-related code cleanup.
3494         No test case possible.
3495
3496         * ksvg2/svg/SVGColor.h:
3497         * ksvg2/svg/SVGLength.cpp:
3498         (SVGLength::SVGLength):
3499         (SVGLength::value):
3500         * ksvg2/svg/SVGMarkerElement.cpp:
3501         * ksvg2/svg/SVGMatrix.cpp:
3502         (SVGMatrix::SVGMatrix):
3503         (SVGMatrix::copy):
3504         (SVGMatrix::postMultiply):
3505         (SVGMatrix::inverse):
3506         (SVGMatrix::postTranslate):
3507         (SVGMatrix::postScale):
3508         (SVGMatrix::postScaleNonUniform):
3509         (SVGMatrix::postRotate):
3510         (SVGMatrix::postRotateFromVector):
3511         (SVGMatrix::postFlipX):
3512         (SVGMatrix::postFlipY):
3513         (SVGMatrix::postSkewX):
3514         (SVGMatrix::postSkewY):
3515         (SVGMatrix::multiply):
3516         (SVGMatrix::translate):
3517         (SVGMatrix::scale):
3518         (SVGMatrix::scaleNonUniform):
3519         (SVGMatrix::rotate):
3520         (SVGMatrix::rotateFromVector):
3521         (SVGMatrix::flipX):
3522         (SVGMatrix::flipY):
3523         (SVGMatrix::skewX):
3524         (SVGMatrix::skewY):
3525         (SVGMatrix::setMatrix):
3526         (SVGMatrix::qmatrix):
3527         (SVGMatrix::removeScale):
3528         * ksvg2/svg/SVGMatrix.h:
3529
3530 2006-05-30  Eric Seidel  <eric@eseidel.com>
3531
3532         Reviewed by andersca.
3533
3534         Small amount of bindings-related code cleanup.
3535         No test case possible.
3536
3537         * bindings/js/JSHTMLFormElementCustom.cpp:
3538         (WebCore::JSHTMLFormElement::nameGetter):
3539         * bindings/js/JSXMLSerializer.cpp:
3540         (WebCore::JSXMLSerializerConstructorImp::JSXMLSerializerConstructorImp):
3541         (WebCore::JSXMLSerializerConstructorImp::implementsConstruct):
3542         (WebCore::JSXMLSerializerConstructorImp::construct):
3543         (WebCore::):
3544         (WebCore::JSXMLSerializer::JSXMLSerializer):
3545         (WebCore::JSXMLSerializerProtoFunc::callAsFunction):
3546         * bindings/js/JSXMLSerializer.h:
3547         (WebCore::JSXMLSerializer::toBoolean):
3548         (WebCore::JSXMLSerializer::classInfo):
3549         (WebCore::JSXMLSerializer::):
3550         * bindings/js/kjs_window.cpp:
3551         (KJS::Window::getValueProperty):
3552
3553 2006-05-27  Anders Carlsson  <acarlsson@apple.com>
3554
3555         * bindings/js/JSHTMLElementWrapperFactory.cpp:
3556         Correct include file names.
3557
3558 2006-05-26  Justin Garcia  <justin.garcia@apple.com>
3559
3560         Reviewed by levi
3561         
3562         <rdar://problem/4564296> Mail crashes on Leopard9A184 when I attempt to compose a new message
3563
3564         * dom/Position.cpp:
3565         (WebCore::Position::inRenderedContent):
3566         Removed a candidate at [html, 0].
3567         * editing/CreateLinkCommand.cpp:
3568         (WebCore::CreateLinkCommand::doApply): Added early return when there is no selection.
3569         * editing/InsertLineBreakCommand.cpp:
3570         (WebCore::InsertLineBreakCommand::doApply): Ditto.
3571         * editing/InsertTextCommand.cpp:
3572         (WebCore::InsertTextCommand::input): Ditto.
3573         * editing/Selection.cpp:
3574         (WebCore::Selection::validate): If visible positions can't be created from the endpoints, 
3575         then create a null selection.  Not doing this was making editing code think there was
3576         a valid, editable selection even though there wasn't.
3577         * editing/UnlinkCommand.cpp:
3578         (WebCore::UnlinkCommand::doApply): Early return.
3579         * editing/VisiblePosition.cpp:
3580         (WebCore::VisiblePosition::initDeepPosition): Special case the html/body element boundary.
3581         It looks like a non-editable/editable boundary since rootEditableElement stops at the body
3582         even if the html element is editable.
3583
3584 2006-05-26  Adele Peterson  <adele@apple.com>
3585
3586         Reviewed by Justin.
3587
3588         Fixes a mistake in my last checkin.  Uses maxDeepOffset to get the end position for
3589         the textarea's inner div.
3590
3591         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::textWithHardLineBreaks):
3592
3593 2006-05-26  Adele Peterson  <adele@apple.com>
3594
3595         Reviewed by Hyatt.
3596
3597         Added support for wrap=hard for new textarea implementation.
3598
3599         Tests: fast/forms/textarea-appearance-wrap.html
3600
3601         * dom/Range.h: Added version of toString that will convert BRs to newlines.
3602         * dom/Range.cpp: (WebCore::Range::toString):
3603         * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment): 
3604           When in plain-text mode, and a white-space mode that doesn't collapse whitespace, create a fragment with one text node.
3605         * editing/visible_units.cpp:
3606         (WebCore::previousLinePosition): Subtract scroll offset so the absolute position for the containing block is correct.
3607         (WebCore::nextLinePosition): ditto.
3608         * rendering/RenderText.cpp:
3609         (WebCore::RenderText::positionForCoordinates): If the position is equal to the left edge of the box,
3610         make the affinity downstream so the position doesn't jump back to the previous line.
3611         (WebCore::RenderText::atLineWrap): The logic was reversed here in a recent change.
3612         If the box is not at a line break, then its at a line wrap.
3613         (WebCore::RenderText::caretRect): Only go to the next text box if its at a line wrap and the
3614          affinity is also downstream.  If its upstream, then the correct box is on the current line.
3615         (WebCore::RenderText::inlineBox): ditto.
3616         * rendering/RenderTextField.cpp:
3617         (WebCore::RenderTextField::updateFromElement): multi line controls don't need to check
3618          valueMatchesRenderer before updating the renderer.  For textareas, the renderer should always try to update.
3619          This matches our old textarea behavior.
3620         (WebCore::RenderTextField::text): Pass true to textContent so it converts BRs to newlines.
3621         (WebCore::RenderTextField::textWithHardLineBreaks): Iterate through the RootLineBoxes to find the soft wraps and replace them with newlines.
3622
3623 2006-05-26  Anders Carlsson  <acarlsson@apple.com>
3624
3625         Reviewed by Geoff.
3626
3627         http://bugzilla.opendarwin.org/show_bug.cgi?id=9127
3628         Invoke capturing event listeners when AT_TARGET
3629         
3630         * dom/EventTargetNode.cpp:
3631         (WebCore::EventTargetNode::handleLocalEvents):    
3632         Invoke capturing event listeners for the AT_TARGET phase. This violates the
3633         DOM spec but it's what Mozilla does.
3634         
3635 2006-05-26  David Harrison  <harrison@apple.com>
3636
3637         Reviewed by John Sullivan.
3638
3639         <rdar://problem/4514529> Add a list type parameter and a return value to _increaseSelectionListLevel
3640         
3641         * WebCore.vcproj/WebCore/WebCore.vcproj:
3642         * WebCore.xcodeproj/project.pbxproj:
3643         - Renamed ModifySelectionListLevelCommand .cpp and .h to ModifySelectionListLevel .cpp and .h
3644         
3645         * bridge/mac/WebCoreFrameBridge.h:
3646         * bridge/mac/WebCoreFrameBridge.mm:
3647         (-[WebCoreFrameBridge canIncreaseSelectionListLevel]):
3648         (-[WebCoreFrameBridge canDecreaseSelectionListLevel]):
3649         (-[WebCoreFrameBridge increaseSelectionListLevel]):
3650         (-[WebCoreFrameBridge decreaseSelectionListLevel]):
3651         - Call functions in IncreaseSelectionListLevelCommand or DecreaseSelectionListLevelCommand instead
3652         of ModifySelectionListLevelCommand.
3653         
3654         (-[WebCoreFrameBridge increaseSelectionListLevelOrdered]):
3655         (-[WebCoreFrameBridge increaseSelectionListLevelUnordered]):
3656         - Added.
3657         
3658         * editing/ModifySelectionListLevel.cpp: Added.
3659         - Renamed from ModifySelectionListLevelCommand.cpp
3660         - Made ModifySelectionListLevelCommand class into a useful base class for new
3661         classes IncreaseSelectionListLevelCommand and DecreaseSelectionListLevelCommand.
3662         
3663         (WebCore::ModifySelectionListLevelCommand::ModifySelectionListLevelCommand):
3664         (WebCore::getStartEndListChildren):
3665         (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeBefore):
3666         (WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange):
3667         - ModifySelectionListLevelCommand is base class for IncreaseSelectionListLevelCommand and DecreaseSelectionListLevelCommand
3668         
3669         (WebCore::IncreaseSelectionListLevelCommand::IncreaseSelectionListLevelCommand):
3670         (WebCore::IncreaseSelectionListLevelCommand::listElement):
3671         (WebCore::canIncreaseListLevel):
3672         (WebCore::IncreaseSelectionListLevelCommand::doApply):
3673         (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
3674         (WebCore::increaseSelectionListLevelWithType):
3675         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevel):
3676         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelOrdered):
3677         (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelUnordered):
3678         - Now a subclass of ModifySelectionListLevelCommand
3679         - Added Ordered and Unordered increaser functions
3680         - Increaser functions return the list element that the items were moved into
3681         
3682         (WebCore::DecreaseSelectionListLevelCommand::DecreaseSelectionListLevelCommand):
3683         (WebCore::canDecreaseListLevel):
3684         (WebCore::DecreaseSelectionListLevelCommand::doApply):
3685         (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
3686         (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel):
3687         - No functional changes other than to become a subclass of ModifySelectionListLevelCommand
3688
3689         * editing/ModifySelectionListLevel.h: Added.
3690         (WebCore::):
3691          - Renamed from ModifySelectionListLevelCommand.cpp
3692        
3693         * editing/ModifySelectionListLevelCommand.cpp: Removed.
3694         - Renamed to ModifySelectionListLevel.cpp
3695         
3696         * editing/ModifySelectionListLevelCommand.h: Removed.
3697         - Renamed to ModifySelectionListLevel.h
3698
3699         * editing/htmlediting.cpp:
3700         (WebCore::createOrderedListElement):
3701         (WebCore::createUnorderedListElement):
3702         * editing/htmlediting.h:
3703
3704 2006-05-26  Steve Falkenburg  <sfalken@apple.com>
3705
3706         Reviewed by adele.
3707
3708         Build fixes/tweaks
3709
3710         * WebCore.vcproj/WebCore/WebCore.vcproj:
3711         * config.h:
3712         * ksvg2/scripts/make_names.pl:
3713
3714 2006-05-26  Steve Falkenburg  <sfalken@apple.com>
3715
3716         Reviewed by adele.
3717
3718         Fix build
3719
3720         * WebCore.vcproj/WebCore/WebCore.vcproj:
3721         * config.h:
3722
3723 2006-05-25  Dave Hyatt <hyatt@apple.com>
3724
3725         Change default font size for fixed pitch to 13 to match Safari
3726         on Mac (and every other browser on the planet too).
3727
3728         Reviewed by adele
3729
3730         * bridge/win/FrameWin.cpp:
3731         (WebCore::FrameWin::FrameWin):
3732         * platform/win/FontCacheWin.cpp:
3733         (WebCore::FontCache::getFontLinkInterface):
3734
3735 2006-05-25  Alice Liu  <alice.liu@apple.com>
3736
3737         Reviewed by Adele.
3738
3739         * bindings/js/kjs_html.cpp:
3740         added bindings
3741         (KJS::HTMLElementFunction::callAsFunction):
3742         added case to handle namedItem for select elements
3743         * bindings/js/kjs_html.h:
3744         added enum value for bindings
3745         (KJS::JSHTMLElement::):
3746         * html/HTMLSelectElement.cpp:
3747         (WebCore::HTMLSelectElement::namedItem):
3748         implemented namedItem method
3749         * html/HTMLSelectElement.h:
3750         added prototype for namedItem method
3751
3752 2006-05-25  Dave Hyatt <hyatt@apple.com>
3753
3754         Make soft hyphens work on Win32 by special casing them
3755         along with normal hyphens.
3756
3757         Reviewed by mjs
3758
3759         * rendering/break_lines.cpp:
3760         (WebCore::nextBreakablePosition):
3761
3762 2006-05-25  Dave Hyatt <hyatt@apple.com>
3763
3764         Implement the fallback method containsCharacters for
3765         checking if a font has the necessary glyphs to be
3766         selected as a fallback choide.
3767
3768         * platform/win/FontDataWin.cpp:
3769         (WebCore::FontData::containsCharacters):
3770
3771 2006-05-25  Dave Hyatt <hyatt@apple.com>
3772
3773         For now eliminate the logical scale factor from Cairo.
3774         This enables bitmap fonts like MS Sans Serif to work on
3775         Win32.
3776
3777         * platform/cairo/cairo/src/cairo-win32-font.c:
3778         (cairo_win32_scaled_font_select_font):
3779         * platform/cairo/cairo/src/cairo-win32-private.h:
3780         * platform/cairo/font-bug-patch.txt: Removed.
3781         * platform/cairo/scale-removal.txt: Added.
3782         * platform/win/FontCacheWin.cpp:
3783         (WebCore::FontCache::createFontPlatformData):
3784         * platform/win/FontDataWin.cpp:
3785         (WebCore::FontData::smallCapsFontData):
3786         (WebCore::FontData::platformWidthForGlyph):
3787         * platform/win/FontPlatformData.h:
3788         * platform/win/GlyphMapWin.cpp:
3789         (WebCore::GlyphMap::fillPage):
3790
3791 2006-05-25  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3792
3793         Reviewed by hyatt.  Landed by eseidel.
3794
3795         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8848
3796           TFOOT borders are copied to THEAD and TBODY
3797
3798         Test: fast/table/border-collapsing/border-collapsing-head-foot.html
3799
3800         * rendering/RenderTable.cpp:
3801         (WebCore::RenderTable::sectionAbove): Added.
3802         (WebCore::RenderTable::sectionBelow): Added.
3803         (WebCore::RenderTable::cellAbove): Changed to call sectionAbove.
3804         (WebCore::RenderTable::cellBelow): Changed to call sectionBelow.
3805         * rendering/RenderTable.h:
3806         * rendering/RenderTableCell.cpp:
3807         (WebCore::RenderTableCell::collapsedTopBorder): Changed to call sectionAbove.
3808         (WebCore::RenderTableCell::collapsedBottomBorder): Changed to call sectionBelow.
3809
3810 2006-05-25  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3811
3812         Reviewed by hyatt.  Landed by eseidel.
3813
3814         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3297
3815           height property is not honored on table rows
3816
3817         * rendering/RenderTableSection.cpp:
3818         (WebCore::RenderTableSection::addChild): Assign the row renderer to the
3819         grid row.
3820         (WebCore::RenderTableSection::calcRowHeight): Fix off-by-one index bug
3821         and add vertical spacing only for grid rows that have a renderer.
3822         (WebCore::RenderTableSection::recalcCells): Assign row renderers to
3823         grid rows.
3824
3825 2006-05-25  Rob Buis  <buis@kde.org>
3826
3827         Reviewed by darin.  Landed by eseidel.
3828
3829         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=5978
3830         WebKIt+SVG should use SVGDocumentImpl for image/svg+xml
3831
3832         Make sure SVGDocument is created for standalone svg
3833         documents.
3834
3835         * ksvg2/svg/SVGDOMImplementation.cpp:
3836         (SVGDOMImplementation::instance):
3837         (SVGDOMImplementation::createDocument):
3838         * ksvg2/svg/SVGDOMImplementation.h:
3839         * ksvg2/svg/SVGDocument.cpp:
3840         (WebCore::SVGDocument::SVGDocument):
3841         (WebCore::SVGDocument::~SVGDocument):
3842         * ksvg2/svg/SVGDocument.h:
3843         * ksvg2/svg/SVGTests.cpp:
3844         (WebCore::SVGTests::isValid):
3845         * ksvg2/svg/SVGTitleElement.cpp:
3846         * ksvg2/svg/SVGTitleElement.h:
3847         * page/Frame.cpp:
3848         (WebCore::Frame::begin):
3849
3850 2006-05-25  Rob Buis  <buis@kde.org>
3851
3852         Reviewed by darin.  Landed by eseidel.
3853
3854         http://bugzilla.opendarwin.org/show_bug.cgi?id=5889
3855         HTMLNames.* should be generated using make_names.pl
3856
3857         Use a patched make_names.pl to autogenerate HTMLNames.*
3858
3859         * DerivedSources.make:
3860         * WebCore.xcodeproj/project.pbxproj:
3861         * html/HTMLNames.cpp: Removed.
3862         * html/HTMLNames.h: Removed.
3863         * html/HTMLTagNames.in: Added.
3864         * html/HTMLAttributeNames.in: Added.
3865         * ksvg2/scripts/make_names.pl:
3866
3867 2006-05-25  Eric Seidel  <eric@eseidel.com>
3868
3869         Reviewed by andersca.
3870
3871         Add "HasIndexGetter" support to bindings autogen system.
3872         http://bugzilla.opendarwin.org/show_bug.cgi?id=9057
3873
3874         * DerivedSources.make:
3875         * WebCore.xcodeproj/project.pbxproj:
3876         * bindings/js/JSHTMLInputElementBase.cpp:
3877         * bindings/js/kjs_css.cpp:
3878         (KJS::toJS):
3879         * bindings/js/kjs_css.h:
3880         * bindings/js/kjs_dom.cpp:
3881         (KJS::DOMNamedNodeMap::getOwnPropertySlot):
3882         * bindings/scripts/CodeGeneratorJS.pm:
3883         * css/CSSValueList.idl: Added.
3884
3885 2006-05-24  David Hyatt  <hyatt@apple.com>
3886
3887         Implement font aliasing of family names for Courier/Courier New,
3888         Arial/Helvetica, and Times/Times New Roman.  This behavior matches
3889         WinIE and Firefox.
3890
3891         Reviewed by maciej
3892
3893         Test cases not really possible, since they would have to rely on people
3894         not having the fonts installed (so not having installed Office).
3895
3896         * platform/FontCache.cpp:
3897         (WebCore::alternateFamilyName):
3898         (WebCore::FontCache::getCachedFontPlatformData):
3899         * platform/FontCache.h:
3900         * rendering/RenderContainer.cpp:
3901         (WebCore::RenderContainer::removeLeftoverAnonymousBoxes):
3902
3903 === WebCore-521.11 ===
3904
3905 2006-05-24  Justin Garcia  <justin.garcia@apple.com>
3906
3907         Reviewed by levi
3908         
3909         <rdar://problem/4549610> REGRESSION: No initial cursor in Mail reply or Blot document
3910         <rdar://problem/4560698> Mail is very crashy in Leopard9A182, WebCore::Range::compareBoundaryPoints(WebCore::Node*, int, WebCore::Node*, int)
3911
3912         * page/Frame.cpp:
3913         (WebCore::Frame::setSelectionFromNone): Find the body and stick a caret 
3914         in it.
3915
3916 2006-05-24  Geoffrey Garen  <ggaren@apple.com>
3917
3918         Rubber stamped by Anders.
3919         
3920         Removed meaningless 'dom::' prefix in IDL files.
3921
3922         * dom/Range.idl:
3923         * html/CanvasRenderingContext2D.idl:
3924         * html/HTMLOptionElement.idl:
3925
3926 2006-05-24  Geoffrey Garen  <ggaren@apple.com>
3927
3928         Reviewed by andersca.
3929         
3930         - Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=9095
3931         regression: can't select by setting option.selected to true
3932         
3933         'text' and 'selected' were erroneously marked read-only for option elements.
3934         
3935         * html/HTMLOptionElement.idl:
3936
3937 2006-05-24  Geoffrey Garen  <ggaren@apple.com>
3938
3939         Reviewed by mjs.
3940
3941         - WebCore half of fix for <rdar://problem/4557926> TOT REGRESSION: Crash
3942         occurs when attempting to view image in slideshow mode at
3943         http://d.smugmug.com/gallery/581716 ( KJS::IfNode::execute
3944         (KJS::ExecState*) + 312)
3945
3946         On alternate threads, DOMObjects remain in the
3947         ScriptInterpreter's cache because they're not collected. So, they
3948         need an opportunity to mark their children.
3949         
3950         I'm not particularly happy with this solution because it fails to
3951         resolve many outstanding issues with the DOM object cache. Since none
3952         of those issues is a crasher or a serious compatibility concern,
3953         and since the behavior of other browsers is not much to go on in this
3954         case, I've filed <rdar://problem/4561439> about that, and I'm moving 
3955         on with my life.
3956
3957         Also added functionality for testing garbage collection from inside
3958         DumpRenderTree.
3959         
3960         Also removed XMLHttpRequest from the DOM object cache because XMLHttpRequest
3961         objects aren't accessed through the DOM.
3962         
3963         Also added JS locking around access to some shared data structures in
3964         WebCoreJavaScript, even though it probably doesn't matter in practice.
3965
3966         * bindings/js/JSXMLHttpRequest.cpp:
3967         (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
3968         (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
3969         * bindings/js/kjs_binding.cpp:
3970         (KJS::ScriptInterpreter::mark):
3971         * bindings/js/kjs_binding.h:
3972         * bridge/mac/WebCoreJavaScript.h:
3973         * bridge/mac/WebCoreJavaScript.mm:
3974         (collect):
3975         (+[WebCoreJavaScript objectCount]):
3976         (+[WebCoreJavaScript interpreterCount]):
3977         (+[WebCoreJavaScript protectedObjectCount]):
3978         (+[WebCoreJavaScript garbageCollect]):
3979         (+[WebCoreJavaScript garbageCollectOnAlternateThread:]):
3980         (+[WebCoreJavaScript shouldPrintExceptions]):
3981         (+[WebCoreJavaScript setShouldPrintExceptions:]):
3982
3983 2006-05-24  Dave Hyatt <hyatt@apple.com>
3984
3985         Fix the font cache corruption problems on Win32.  Move the
3986         native font destruction code out of FontPlatformData and
3987         into FontData.  Implement smallCaps.
3988
3989         * platform/win/FontDataWin.cpp:
3990         (WebCore::FontData::platformDestroy):
3991         (WebCore::FontData::smallCapsFontData):
3992         * platform/win/FontPlatformDataWin.cpp:
3993         (WebCore::FontPlatformData::~FontPlatformData):
3994
3995 2006-05-24  Anders Carlsson  <acarlsson@apple.com>
3996
3997         Reviewed by Maciej.
3998
3999         http://bugzilla.opendarwin.org/show_bug.cgi?id=9093
4000         Implement document.scripts
4001         
4002         * bindings/js/kjs_html.cpp:
4003         (KJS::JSHTMLDocument::getValueProperty):
4004         Return document.scripts() instead of a placeholder object.
4005         
4006         * dom/Document.cpp:
4007         (WebCore::Document::scripts):
4008         * dom/Document.h:
4009         Add Document::scripts.
4010         
4011         * html/HTMLCollection.cpp:
4012         (WebCore::HTMLCollection::traverseNextItem):
4013         * html/HTMLCollection.h:
4014         (WebCore::HTMLCollection::):
4015         Add scripts collection type which traverses all script elements.
4016         
4017 2006-05-24  Anders Carlsson  <acarlsson@apple.com>
4018
4019         Reviewed by Geoff.
4020
4021         http://bugzilla.opendarwin.org/show_bug.cgi?id=9092
4022         innerText is empty for elements without renderers
4023
4024         * dom/Node.cpp:
4025         (WebCore::Node::textContent):
4026         * dom/Node.h:
4027         Add optional convertBRsToNewlines argument for textContent.
4028         
4029         * html/HTMLElement.cpp:
4030         (WebCore::HTMLElement::innerText):
4031         If the element doesn't have a renderer, return textContent.
4032
4033 2006-05-24  Dave Hyatt <hyatt@apple.com>
4034
4035         Fix a bug with the computation of the Cairo glyph offsets
4036         on the Win32 code path.
4037
4038         * ChangeLog:
4039         * platform/GlyphBuffer.h:
4040         (WebCore::GlyphBuffer::add):
4041         * platform/win/FontWin.cpp:
4042         (WebCore::Font::drawGlyphs):
4043
4044 2006-05-23  Dave Hyatt <hyatt@apple.com>
4045
4046         Disable some code in Cairo that is attempting to clip
4047         runs of text to their glyph boundaries, since:
4048
4049         (a) Why re-measure text again when I just gave you
4050         the glyph bounds anyway.
4051         (b) It gets the measurements wrong.
4052
4053         * platform/GlyphBuffer.h:
4054         (WebCore::GlyphBuffer::add):
4055         * platform/cairo/cairo/src/cairo-surface-fallback.c:
4056         (_cairo_surface_fallback_show_glyphs):
4057         * platform/cairo/clipping-cleartype-font-bug-patch.txt: Added.
4058         * platform/win/FontWin.cpp:
4059         (WebCore::Font::drawGlyphs):
4060
4061 2006-05-23  Timothy Hatcher  <timothy@apple.com>
4062
4063         Reviewed by Eric.
4064
4065         Remove the recent idl files from the WebCore target to prevent them
4066         from being copied into the framework resources.
4067
4068         * WebCore.xcodeproj/project.pbxproj:
4069
4070 2006-05-23  John Sullivan  <sullivan@apple.com>
4071
4072         Reviewed by Justin Garcia and Levi Weintraub.
4073         
4074         - fixed Bug 9072: REGRESSION: Misspelling marker incorrect in editing/deleting/delete-and-undo.html
4075
4076         * dom/Document.cpp:
4077         (WebCore::Document::removeMarkers):
4078         One more time to get this right, ugh. There is still one case where we don't want to advance the
4079         iterator, and that's when we remove a marker and do not insert a replacement marker. So I undid
4080         my previous patch, and added it++ to each of the two cases that insert a replacement marker. Now
4081         the layout tests pass even with the pixel tests enabled.
4082
4083 2006-05-23  Dave Hyatt <hyatt@apple.com>
4084
4085         Do an initial implementation of CookieJar on Win32.  No policy
4086         checking yet and the cookies are just always on.
4087
4088         Reviewed by mjs
4089
4090         * WebCore.vcproj/WebCore/WebCore.vcproj:
4091         * platform/win/CookieJarWin.cpp: Added.
4092         (WebCore::setCookies):
4093         (WebCore::cookies):
4094         (WebCore::cookiesEnabled):
4095         * platform/win/TemporaryLinkStubs.cpp:
4096
4097 2006-05-23  Dave Hyatt <hyatt@apple.com>
4098
4099         Fix the JS autogeneration for WebCore so that the hashtables
4100         are correct on Win32.
4101
4102         Switch to using GetCharWidthI so that we can obtain widths
4103         for glyphs instead of having to obtain them from UChars.
4104
4105         Reviewed by eric (autogeneration) and maciej (fonts)
4106
4107         * bindings/scripts/CodeGeneratorJS.pm:
4108         * platform/Font.cpp:
4109         (WebCore::WidthIterator::advance):
4110         * platform/FontData.cpp:
4111         (WebCore::m_smallCapsFontData):
4112         (WebCore::FontData::widthForGlyph):
4113         * platform/FontData.h:
4114         * platform/mac/FontDataMac.mm:
4115         (-[NSFont WebCore]):
4116         * platform/win/FontDataWin.cpp:
4117         (WebCore::FontData::platformWidthForGlyph):
4118
4119 2006-05-23  Levi Weintraub  <lweintraub@apple.com>
4120
4121         Reviewed by Hyatt.
4122
4123         Cleaned up changes to markup by adding the non-virtual
4124         nodeNamePreservingCase accessor function.
4125
4126         * dom/Element.cpp:
4127         (WebCore::Element::nodeNamePreservingCase):
4128         * dom/Element.h:
4129         * editing/markup.cpp:
4130         (WebCore::startMarkup):
4131         (WebCore::endMarkup):
4132
4133 2006-05-23  John Sullivan  <sullivan@apple.com>
4134
4135         Reviewed by Anders Carlsson.
4136
4137         * dom/Document.cpp:
4138         (WebCore::Document::removeMarkers):
4139         Fix to my previous checkin (which broke a layout test).
4140         Advance the iterator position every time through the loop; formerly it was not advanced in the 
4141         case where a marker was actually removed, causing an infinite loop in certain cases. Also
4142         modified a comment that was confusing the situation by falsely claiming that iterating over a 
4143         just-inserted node would always be OK.
4144
4145 2006-05-23  Anders Carlsson  <acarlsson@apple.com>
4146
4147         Reviewed by Maciej.
4148
4149         http://bugzilla.opendarwin.org/show_bug.cgi?id=9017
4150         Weather2.css incorrectly treated as JavaScript file @ www.live.com
4151         
4152         * dom/Element.cpp:
4153         (WebCore::Element::getAttribute):
4154         (WebCore::Element::setAttribute):
4155         (WebCore::Element::removeAttribute):
4156         (WebCore::Element::getAttributeNode):
4157         (WebCore::Element::hasAttribute):
4158         Use new getAttributeItem method.
4159         
4160         * dom/NamedAttrMap.cpp:
4161         (WebCore::NamedAttrMap::getNamedItem):
4162         (WebCore::NamedAttrMap::removeNamedItem):
4163         Use new getAttributeItem method.
4164         
4165