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