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