c369f484c435d03301abf5a4cf9eecc64f8df5a7
[WebKit.git] / WebCore / ChangeLog
1 2006-10-02  Nikolas Zimmermann <zimmermann@kde.org>
2
3         Reviewed by eseidel & mjs.  Landed by eseidel.
4
5         Fix Qt/Linux build with older gcc 3.3.4.
6         http://bugs.webkit.org/show_bug.cgi?id=11116
7
8         As discussed with Maciej, the GCC_ROOT_NS_HACK
9         can be completely removed, as well as the friendship
10         between cacheGlobalObject & the JS* objects.
11
12         * bindings/scripts/CodeGeneratorJS.pm: Remove friendship.
13         * platform/image-decoders/png/pnggccrd.c: Fix comments for gcc3.
14         (png_read_filter_row_mmx_avg):
15         * platform/image-decoders/png/pngvcrd.c: Ditto.
16         (png_mmx_support):
17         (png_read_filter_row_mmx_avg):
18
19 2006-10-01  Maciej Stachowiak  <mjs@apple.com>
20
21         Rubber stamped by Alexey.
22
23         - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=10893 since it led to layout test crashes
24
25         * css/CSSGrammar.y:
26
27 2006-10-01  Eric Seidel  <eric@webkit.org>
28
29         Reviewed by mjs.
30
31         Eliminate a few more hotspots in SVG drawing code.
32         
33         No test cases were harmed in the making of this patch.  (And SVG has no perf tests.)
34
35         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
36         (WebCore::KRenderingPaintServerSolidQuartz::setup): use a single shared colorspace, avoid a few mallocs
37         * platform/mac/ColorMac.mm:
38         (+[WebCoreControlTintObserver WebCore]): store a single shared colorspace instance
39
40 2006-10-01  Geoffrey Garen  <ggaren@apple.com>
41
42         Reviewed by Maciej.
43         
44         More frame/iframe merging.
45         
46         - Removed needWidgetUpdate and related code. needWidgetUpdate is always
47         false, so this was dead code.
48         - Removed FIXME about setInViewSourceMode inside openURL(). openURL(), rather
49         than attach(), is the correct place for setInViewSourceMode, because
50         openURL() is the function that creates our frame.
51         - Moved IFRAME insertedIntoDocument() code into FRAME, and removed FRAME
52         code that did the same thing in other places.
53         - Made FRAME's attach() method suffuciently generic so that IFRAME could
54         call up to it, rather than skipping its superclass and calling up directly 
55         to ELEMENT.
56         - Changed a few IFRAME up-calls to ELEMENT into up-calls to FRAME.
57         - Replaced ad hoc frame loading code in FRAME::attach() with call to
58         openURL(), the designated frame loading function.
59
60         Layout tests pass. I added a layout test for viewsource mode, since I
61         broke it in the course of writing this patch.
62
63 2006-10-01  Anders Carlsson  <acarlsson@apple.com>
64
65         Reviewed by Geoff.
66
67         * dom/Document.cpp:
68         (WebCore::Document::recalcStyleSelector):
69         * dom/Document.h:
70         Get rid of availableStyleSheets() and remove DeprecatedStringList.h include.
71         
72         * dom/Node.h:
73         Remove DeprecatedStringList class forward declaration.
74         
75         * editing/markup.cpp:
76         Include DeprecatedStringList.h here since it's not included by Document.h anymore.
77         
78         * kcanvas/KCanvasTreeDebug.cpp:
79         * kcanvas/KCanvasTreeDebug.h:
80         Remove unused functions.
81         
82         * loader/loader.cpp:
83         * page/Frame.cpp:
84         * page/Frame.h:
85         * page/FrameView.h:
86         Fixup DeprecatedStringList.h includes.
87
88 2006-09-30  David Harrison  <harrison@apple.com>
89
90         Reviewed by John Sullivan.
91
92         <rdar://problem/4641262> REGRESSION: Japanese text corrupts on wrapping point
93
94         Problem was that the decision to trim was based only on whether the character
95         is a soft hyphen, which caused pretty much any Japanese character to go.
96         Changed to decide based on whether the character is ignorable whitespace.
97         
98         Test:
99         * fast/text/international/wrap-CJK-001.html
100
101         * rendering/bidi.cpp:
102         (WebCore::isTrimmableChar):
103         New. Checks whether character is whitespace that can be ignored
104         according to the text node's style.
105         trimmed from the end of wrapped line.
106         (WebCore::checkMidpoints):
107         Call isTrimmable() rather than checking for char != SOFT_HYPHEN.
108
109 2006-10-01  Anders Carlsson  <acarlsson@apple.com>
110
111         Reviewed by Mitz Pettel.
112
113         Convert the SVG code to use Vector<String> instead of DeprecatedStringList.
114
115         * ksvg2/svg/SVGColor.cpp:
116         (WebCore::SVGColor::setRGBColor):
117         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
118         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
119         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
120         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
121         (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
122         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
123         (SVGFESpecularLightingElement::parseMappedAttribute):
124         * ksvg2/svg/SVGFETurbulenceElement.cpp:
125         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
126         * ksvg2/svg/SVGLengthList.cpp:
127         * ksvg2/svg/SVGNumberList.cpp:
128         (SVGNumberList::parse):
129         * ksvg2/svg/SVGNumberList.h:
130         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
131         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
132         * ksvg2/svg/SVGStringList.cpp:
133         (WebCore::SVGStringList::reset):
134         * ksvg2/svg/SVGStringList.h:
135         * ksvg2/svg/SVGTransformable.cpp:
136         (SVGTransformable::parseTransformAttribute):
137
138 2006-10-01  Nikolas Zimmermann  <zimmermann@kde.org>
139
140         Reviewed by Eric, tweaked and landed by ap.
141
142         Fix Qt/Linux build.
143
144         * CMakeLists.txt:
145         * platform/qt/PlatformScrollBar.h:
146         * platform/qt/TemporaryLinkStubs.cpp:
147         (WebCore::ScrollBar::ScrollBar):
148         (WebCore::PlatformScrollBar::PlatformScrollBar):
149         (FrameView::passMousePressEventToSubframe):
150         (FrameView::passMouseMoveEventToSubframe):
151         (FrameView::passMouseReleaseEventToSubframe):
152         (FrameView::passWheelEventToSubframe):
153         (FrameView::passMousePressEventToScrollbar):
154         * ksvg2/svg/SVGDocument.h:
155
156 2006-10-01  Mitz Pettel  <opendarwin.org@mitzpettel.com>
157
158         Reviewed by Darin.
159
160         Fix for http://bugs.webkit.org/show_bug.cgi?id=10190
161         REGRESSION: Repro crash when navigating away from an image document that hasn't finished loading
162
163         No test case added (probably requires new DumpRenderTree functionality)
164
165         * rendering/RenderImage.cpp:
166         (WebCore::RenderImage::imageChanged): Added early return if the document is
167         being destroyed.
168
169 2006-10-01  Graham Dennis  <graham.dennis@gmail.com>
170
171         Reviewed by Hyatt.
172
173         Fix for http://bugs.webkit.org/show_bug.cgi?id=10842
174         REGRESSION (r15418): contenteditable div truncates rightmost Japanese character
175         
176         Make sure we only break after a space (and not any other valid line-break) if
177         the style is -webkit-line-break: after-white-space (e.g. for a contentEditable div).
178         I also did a logic shuffle at Mitz's request to prevent doing an if on the same expression
179         twice in quick succession.
180
181         * rendering/bidi.cpp:
182         (WebCore::RenderBlock::findNextLineBreak): 
183
184 2006-10-01  Alexey Proskuryakov  <ap@nypop.com>
185
186         Reviewed by Maciej and Darin.
187
188         http://bugs.webkit.org/show_bug.cgi?id=4372
189         JavaScript document.write page form does not submit in Safari
190
191         Test: fast/forms/document-write.html
192
193         * page/Frame.cpp:
194         (WebCore::Frame::submitForm): Don't check for parsing().
195
196 2006-10-01  Alexey Proskuryakov  <ap@nypop.com>
197
198         Build fix.
199
200         * bridge/mac/FrameViewMac.mm: Add missing #imports.
201
202 2006-10-01  Dave Hyatt  <hyatt@apple.com>
203
204         Refactor the code that passes mouse presses to the Mac scrollbar and make it cross-platform.
205        
206         Reviewed by mitz
207
208         * bridge/mac/FrameMac.mm:
209         (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
210         * bridge/mac/FrameViewMac.mm:
211         (WebCore::FrameView::passMousePressEventToScrollbar):
212         * page/FrameView.cpp:
213         (WebCore::FrameView::handleMousePressEvent):
214         (WebCore::FrameView::setMousePressed):
215         * page/FrameView.h:
216         * platform/win/TemporaryLinkStubs.cpp:
217         (FrameView::passMousePressEventToScrollbar):
218
219 2006-09-30  Sam Weinig  <sam.weinig@gmail.com>
220
221         Reviewed by Darin.
222
223         Patch for http://bugs.webkit.org/show_bug.cgi?id=11102
224         Add more SVG Objective-C DOM bindings
225
226         - Auto-generate Objective-C DOM bindings for DOMSVGAElement,
227           DOMSVGAnimateColorElement, DOMSVGAnimateElement, DOMSVGAnimateTransformElement,
228           DOMSVGAnimatedPathData, DOMSVGAnimatedPoints, DOMSVGAnimatedPreserveAspectRatio,
229           DOMSVGAnimationElement, DOMSVGCircleElement, DOMSVGClipPathElement, DOMSVGColor,
230           DOMSVGCursorElement, DOMSVGDefsElement, DOMSVGDescElement, DOMSVGDocument, 
231           DOMSVGEllipseElement, DOMSVGPreserveAspectRatio, and DOMSVGURIReference.
232
233         * DerivedSources.make:
234         * WebCore.xcodeproj/project.pbxproj:
235         * bindings/objc/DOMInternal.h:
236         * bindings/objc/DOMSVG.h:
237         * bindings/scripts/CodeGeneratorObjC.pm:
238         * ksvg2/svg/SVGAElement.idl:
239         * ksvg2/svg/SVGAnimateColorElement.idl:
240         * ksvg2/svg/SVGAnimateElement.idl:
241         * ksvg2/svg/SVGAnimateTransformElement.idl:
242         * ksvg2/svg/SVGAnimatedPathData.idl:
243         * ksvg2/svg/SVGAnimatedPoints.idl:
244         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl:
245         * ksvg2/svg/SVGAnimationElement.idl:
246         * ksvg2/svg/SVGCircleElement.idl:
247         * ksvg2/svg/SVGClipPathElement.idl:
248         * ksvg2/svg/SVGColor.idl:
249         * ksvg2/svg/SVGCursorElement.idl:
250         * ksvg2/svg/SVGDefsElement.idl:
251         * ksvg2/svg/SVGDescElement.idl:
252         * ksvg2/svg/SVGDocument.idl:
253         * ksvg2/svg/SVGEllipseElement.idl:
254         * ksvg2/svg/SVGPointList.idl:
255         * ksvg2/svg/SVGPreserveAspectRatio.idl:
256         * ksvg2/svg/SVGRect.idl:
257         * ksvg2/svg/SVGSVGElement.idl:
258
259 2006-09-30  Maciej Stachowiak  <mjs@apple.com>
260
261         Reviewed by Adele.
262
263         - fix build
264
265         * platform/FloatRect.h:
266         (WebCore::FloatRect::contains): Added; not exactly the same semantic as IntRect containment
267         but more appropriate for path-type stuff.
268         * platform/cg/PathCG.cpp:
269         (WebCore::Path::contains): Don't use enclosingIntRect, just use FloatRect::contains.
270
271 2006-09-30  Alexey Proskuryakov  <ap@nypop.com>
272
273         Reviewed by Darin.
274
275         http://bugs.webkit.org/show_bug.cgi?id=11011
276         External CSS is parsed as iso-8859-1 even though the main document is utf-8
277
278         Test: fast/encoding/css-charset-default.xhtml
279
280         * loader/CachedResourceClient.h:
281         (WebCore::CachedResourceClient::setCSSStyleSheet):
282         (WebCore::CachedResourceClient::setXSLStyleSheet):
283         Divided setStyleSheet into setCSSStyleSheet and setXSLStyleSheet. The former
284         takes an additional charset parameter, to be passed to CSSStyleSheet constructor.
285
286         * css/CSSImportRule.cpp:
287         (WebCore::CSSImportRule::setCSSStyleSheet):
288         (WebCore::CSSImportRule::insertedIntoParent): Default to parent stylesheet's charset.
289         * css/CSSImportRule.h:
290
291         * css/CSSStyleSheet.cpp:
292         (WebCore::CSSStyleSheet::CSSStyleSheet):
293         * css/CSSStyleSheet.h:
294         Added an m_charset member to be used when loading child stylesheets. Removed an unused m_implicit
295         member. Changed some String parameters to const String&.
296
297         * css/StyleSheet.cpp:
298         (WebCore::StyleSheet::StyleSheet):
299         * css/StyleSheet.h:
300         Changed some String parameters to const String&. Removed an unused (even unimplemented) constructor.
301
302         * css/StyleSheetList.cpp:
303         (WebCore::StyleSheetList::length):
304         (WebCore::StyleSheetList::item):
305         * css/StyleSheetList.h:
306         Special-casing implicit stylesheets seemed to be dead code, removed.
307
308         * dom/Document.cpp:
309         (WebCore::Document::setCSSStyleSheet):
310         (WebCore::Document::recalcStyleSelector):
311         * dom/Document.h:
312         Renamed setStyleSheet() to setCSSStyleSheet().
313
314         * dom/ProcessingInstruction.cpp:
315         (WebCore::ProcessingInstruction::checkStyleSheet): Pass a correct charset to requestCSSStyleSheet().
316         (WebCore::ProcessingInstruction::setCSSStyleSheet):
317         (WebCore::ProcessingInstruction::setXSLStyleSheet):
318         (WebCore::ProcessingInstruction::parseStyleSheet):
319         * dom/ProcessingInstruction.h:
320
321         * html/HTMLLinkElement.cpp:
322         (WebCore::HTMLLinkElement::process): Default to document encoding if a charset attribute 
323         is not specified.
324         (WebCore::HTMLLinkElement::setCSSStyleSheet):
325         * html/HTMLLinkElement.h:
326
327         * html/HTMLStyleElement.cpp:
328         (WebCore::HTMLStyleElement::childrenChanged):
329         * ksvg2/svg/SVGStyleElement.cpp:
330         (WebCore::SVGStyleElement::childrenChanged):
331         Inherit URL and charset from the document.
332
333         * loader/Cache.cpp:
334         (WebCore::Cache::requestCSSStyleSheet):
335         * loader/Cache.h:
336         Adjust for setStyleSheet() renaming.
337
338         * loader/CachedCSSStyleSheet.h: Removed an unused constructor.
339         * loader/CachedCSSStyleSheet.cpp:
340         (WebCore::CachedCSSStyleSheet::ref):
341         (WebCore::CachedCSSStyleSheet::deref):
342         (WebCore::CachedCSSStyleSheet::checkNotify):
343         Pass the encoding to setCSSStyleSheet().
344
345         * loader/CachedXSLStyleSheet.cpp:
346         (WebCore::CachedXSLStyleSheet::ref):
347         (WebCore::CachedXSLStyleSheet::checkNotify):
348         * loader/DocLoader.cpp:
349         (WebCore::DocLoader::requestCSSStyleSheet):
350         * loader/DocLoader.h:
351         * page/Frame.cpp:
352         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
353         (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
354         * xml/XSLImportRule.cpp:
355         (WebCore::XSLImportRule::setXSLStyleSheet):
356         (WebCore::XSLImportRule::loadSheet):
357         * xml/XSLImportRule.h:
358         Adjust for setStyleSheet() renaming.
359
360 2006-09-30  Rob Buis  <buis@kde.org>
361
362         Reviewed by eseidel.
363
364         http://bugs.webkit.org/show_bug.cgi?id=11096
365         Hit testing for polylines fails
366
367         Fix Path::contains so it handles filled, non-closed paths too.
368
369         * platform/cg/PathCG.cpp:
370         (WebCore::Path::contains):
371
372 2006-09-30  Dave Hyatt  <hyatt@apple.com>
373
374         Refactor subframe event handling to hide more of the Mac-specific logic from the cross-platform code.
375         Stub out a capturing API that mimics the way Web browsers capture events and route them to specific
376         subframes while the mouse is down.
377       
378         Reviewed by mitzpettel
379
380         * bridge/mac/FrameMac.h:
381         * bridge/mac/FrameMac.mm:
382         (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
383         (WebCore::FrameMac::passWheelEventToWidget):
384         * bridge/mac/FrameViewMac.mm:
385         (WebCore::FrameView::passMousePressEventToSubframe):
386         (WebCore::FrameView::passMouseMoveEventToSubframe):
387         (WebCore::FrameView::passMouseReleaseEventToSubframe):
388         (WebCore::FrameView::passWheelEventToSubframe):
389         * page/Frame.cpp:
390         * page/Frame.h:
391         * page/FrameView.cpp:
392         (WebCore::subframeForTargetNode):
393         (WebCore::FrameView::handleMousePressEvent):
394         (WebCore::FrameView::handleMouseDoubleClickEvent):
395         (WebCore::FrameView::handleMouseMoveEvent):
396         (WebCore::FrameView::handleMouseReleaseEvent):
397         (WebCore::FrameView::handleWheelEvent):
398         * page/FrameView.h:
399         * platform/ScrollBar.h:
400         (WebCore::ScrollBar::handleMouseMoveEvent):
401         (WebCore::ScrollBar::handleMouseOutEvent):
402         * platform/Widget.h:
403         (WebCore::Widget::handleMouseMoveEvent):
404         (WebCore::Widget::handleMouseReleaseEvent):
405         * platform/win/TemporaryLinkStubs.cpp:
406         (FrameView::passMousePressEventToSubframe):
407         (FrameView::passMouseMoveEventToSubframe):
408         (FrameView::passMouseReleaseEventToSubframe):
409         (FrameView::passWheelEventToSubframe):
410         (Widget::capturingMouse):
411         (Widget::setCapturingMouse):
412         (Widget::capturingTarget):
413         (Widget::capturingChild):
414         (Widget::setCapturingChild):
415         * rendering/RenderView.cpp:
416         (WebCore::RenderView::paintBoxDecorations):
417
418 2006-09-29  MorganL  <morganl.webkit@yahoo.com>
419
420         Reviewed by Adele.
421
422         Fixes windows bustage:
423         http://bugs.webkit.org/show_bug.cgi?id=11093
424
425         * platform/win/PlatformScrollBar.h:
426         * platform/win/TemporaryLinkStubs.cpp:
427         (PlatformScrollBar::PlatformScrollBar):
428         (ScrollBar::ScrollBar):
429
430 2006-09-29  David Hyatt  <hyatt@apple.com>
431
432         Eliminate RenderLayer::gScrollBar in favor of caching the scrollbar hit
433         in RenderObject::NodeInfo (and then propagating that Widget to
434         MouseEventWithHitTestResults).
435
436         This allows RenderListBox and RenderBlock to do the same thing when the
437         mouse is over the scrollbar.
438
439         Also land fix to support font-size: 0.
440
441         Reviewed by mjs (scrollbar), eric (font-size)
442
443         * dom/Document.cpp:
444         (WebCore::Document::prepareMouseEvent):
445         * page/Frame.cpp:
446         (WebCore::Frame::passWidgetMouseDownEventToWidget):
447         * page/FrameView.cpp:
448         (WebCore::selectCursor):
449         (WebCore::FrameView::handleMouseMoveEvent):
450         (WebCore::FrameView::dispatchMouseEvent):
451         * page/MouseEventWithHitTestResults.cpp:
452         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
453         * page/MouseEventWithHitTestResults.h:
454         (WebCore::MouseEventWithHitTestResults::scrollbar):
455         * rendering/RenderBlock.cpp:
456         (WebCore::RenderBlock::isPointInScrollbar):
457         (WebCore::RenderBlock::nodeAtPoint):
458         * rendering/RenderBlock.h:
459         * rendering/RenderLayer.cpp:
460         (WebCore::RenderLayer::hitTest):
461         * rendering/RenderLayer.h:
462         (WebCore::RenderLayer::getHiddenBehavior):
463         * rendering/RenderListBox.cpp:
464         (WebCore::RenderListBox::RenderListBox):
465         (WebCore::RenderListBox::~RenderListBox):
466         (WebCore::RenderListBox::isPointInScrollbar):
467         * rendering/RenderListBox.h:
468         * rendering/RenderObject.h:
469         (WebCore::RenderObject::NodeInfo::NodeInfo):
470         (WebCore::RenderObject::NodeInfo::scrollbar):
471         (WebCore::RenderObject::NodeInfo::setScrollbar):
472
473 2006-09-29  MorganL  <morganl.webkit@yahoo.com>
474
475         Reviewed by Adele.
476
477         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11092
478
479         * platform/win/ScrollViewWin.cpp:
480         (WebCore::ScrollView::convertToContainingWindow):
481         (WebCore::ScrollView::convertFromContainingWindow):
482         * platform/win/WidgetWin.cpp:
483         (WebCore::Widget::convertToContainingWindow):
484         (WebCore::Widget::convertFromContainingWindow):
485
486 2006-09-29  Adele Peterson  <adele@apple.com>
487
488         Updated with new argument for PlatformScrollBar.
489
490         * platform/win/TemporaryLinkStubs.cpp:
491         (PlatformScrollBar::PlatformScrollBar):
492
493 2006-09-29  Adele Peterson  <adele@apple.com>
494
495         Reviewed by Hyatt.
496
497         Fixing build bustage with cast to int.
498
499         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::lastSelectedListIndex):
500
501 2006-09-29  Adele Peterson  <adele@apple.com>
502
503         Fixing accidental include.
504
505         * rendering/RenderListBox.cpp:
506
507 2006-09-29  Adele Peterson  <adele@apple.com>
508
509         Adding RenderListBox files.
510
511         * WebCore.vcproj/WebCore/WebCore.vcproj:
512
513 2006-09-29  Adele Peterson  <adele@apple.com>
514
515         Reviewed by Adam.
516
517         Initial implementation of engine-based list box control.
518
519         * WebCore.xcodeproj/project.pbxproj: Added RenderListBox.h and RenderListBox.cpp
520
521         * bridge/mac/FrameMac.h: Added _mouseDownMayStartAutoscroll.
522         * bridge/mac/FrameMac.mm: Updated autoscroll code to use renderers instead of layers, so any renderer that implements autoscroll will work.
523         (WebCore::FrameMac::FrameMac):
524         (WebCore::FrameMac::handleMousePressEvent):
525         (WebCore::FrameMac::handleMouseMoveEvent):
526         (WebCore::FrameMac::mouseDown):
527
528         * page/Frame.cpp:
529         (WebCore::Frame::handleMouseMoveEvent):
530         (WebCore::Frame::scrollOverflow): Don't scroll list box here- this would cause arrow keys to scroll instead of select.
531         (WebCore::Frame::handleAutoscroll): Updated to use a renderer instead of a layer when setting up autoscroll.
532         (WebCore::Frame::autoscrollTimerFired): ditto.
533         (WebCore::Frame::stopAutoscrollTimer): ditto.
534         (WebCore::Frame::passWidgetMouseDownEventToWidget): Updated to check for list box's scroll bar.
535         * page/Frame.h:
536         * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Updated to use renderer unstead of layer for autoscroll.
537
538         * page/FrameView.cpp: Keep track of current mouse position so this can be used for list box autoscroll.
539         (WebCore::FrameViewPrivate::reset):
540         (WebCore::FrameView::currentMousePosition):
541         (WebCore::FrameView::handleMousePressEvent):
542         (WebCore::FrameView::handleMouseDoubleClickEvent):
543         (WebCore::selectCursor):
544         (WebCore::FrameView::handleMouseMoveEvent):
545         (WebCore::FrameView::handleMouseReleaseEvent):
546         * page/FrameView.h:
547
548         * platform/ScrollBar.cpp: (WebCore::ScrollBar::ScrollBar): Added controlSize argument.  The list box will use a smaller scroll bar size.
549         * platform/ScrollBar.h:
550         (WebCore::):
551         (WebCore::ScrollBar::controlSize):
552         * platform/mac/PlatformScrollBar.h:
553         * platform/mac/PlatformScrollBarMac.mm:
554         (NSControlSizeForScrollBarControlSize):
555         (-[WebCoreScrollBar initWithPlatformScrollBar:]):
556         (WebCore::PlatformScrollBar::PlatformScrollBar):
557
558         * rendering/RenderBlock.h:
559         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar): Updated to pass regular control size to scrollbar constructor.
560         * rendering/RenderLayer.h:
561         * rendering/RenderObject.cpp:
562         (WebCore::RenderObject::shouldAutoscroll):
563         (WebCore::RenderObject::autoscroll):
564         * rendering/RenderObject.h: (WebCore::RenderObject::isListBox):
565
566         * css/html4.css: Added properties for new list boxes.
567
568         * html/HTMLOptionElement.cpp:
569         (WebCore::HTMLOptionElement::setSelected): Doesn't allow selection to be changed here if the option is disabled.
570         (WebCore::HTMLOptionElement::disabled): Added. Checks the parent's disabled status.
571         * html/HTMLOptionElement.h: Added disabled method.
572
573         * html/HTMLSelectElement.cpp: Added appearance switch for new list box implementation.
574         (WebCore::HTMLSelectElement::recalcStyle):
575         (WebCore::HTMLSelectElement::lastSelectedListIndex):
576         (WebCore::HTMLSelectElement::deselectItems):
577         (WebCore::HTMLSelectElement::setSelectedIndex):
578         (WebCore::HTMLSelectElement::isKeyboardFocusable):
579         (WebCore::HTMLSelectElement::isMouseFocusable):
580         (WebCore::HTMLSelectElement::createRenderer):
581         (WebCore::HTMLSelectElement::recalcListItems):
582         (WebCore::HTMLSelectElement::setRecalcListItems):
583         (WebCore::HTMLSelectElement::reset):
584         (WebCore::HTMLSelectElement::notifyOptionSelected):
585         (WebCore::HTMLSelectElement::defaultEventHandler): Added code to select options for list box when clicking and using arrow keys.
586         (WebCore::HTMLSelectElement::nextSelectableListIndex):
587         (WebCore::HTMLSelectElement::previousSelectableListIndex):
588         * html/HTMLSelectElement.h:
589
590         * rendering/RenderTheme.cpp: Added support for ListBoxAppearance
591         (WebCore::RenderTheme::paint):
592         (WebCore::RenderTheme::paintBorderOnly):
593         (WebCore::RenderTheme::paintDecorations):
594         (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
595         (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
596         (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
597         (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
598         (WebCore::RenderTheme::isControlStyled):
599         (WebCore::RenderTheme::supportsFocusRing):
600         * rendering/RenderTheme.h:
601         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
602
603         * rendering/RenderListBox.cpp: Added.
604         (WebCore::RenderListBox::RenderListBox):
605         (WebCore::RenderListBox::~RenderListBox):
606         (WebCore::RenderListBox::setStyle):
607         (WebCore::RenderListBox::updateFromElement):
608         (WebCore::RenderListBox::calcMinMaxWidth):
609         (WebCore::RenderListBox::size):
610         (WebCore::RenderListBox::numItems):
611         (WebCore::RenderListBox::calcHeight):
612         (WebCore::RenderListBox::baselinePosition):
613         (WebCore::RenderListBox::itemBoundingBoxRect):
614         (WebCore::RenderListBox::paintObject):
615         (WebCore::RenderListBox::paintScrollbar):
616         (WebCore::RenderListBox::paintItemForeground):
617         (WebCore::RenderListBox::paintItemBackground):
618         (WebCore::RenderListBox::scrollBarTarget):
619         (WebCore::RenderListBox::isPointInScrollbar):
620         (WebCore::RenderListBox::optionAtPoint):
621         (WebCore::RenderListBox::autoscroll):
622         (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
623         (WebCore::RenderListBox::scroll):
624         (WebCore::RenderListBox::valueChanged):
625         * rendering/RenderListBox.h: Added.
626         (WebCore::RenderListBox::isListBox):
627         (WebCore::RenderListBox::selectionChanged):
628         (WebCore::RenderListBox::setSelectionChanged):
629         (WebCore::RenderListBox::canHaveChildren):
630         (WebCore::RenderListBox::renderName):
631         (WebCore::RenderListBox::setOptionsChanged):
632         (WebCore::RenderListBox::shouldAutoscroll):
633         (WebCore::RenderListBox::listIndexIsVisible):
634
635 2006-09-29  Beth Dakin  <bdakin@apple.com>
636
637         Reviewed by Darin.
638
639         We had a bug where html4.css was ignoring Media Queries. In the end 
640         the problem was that we were trying to send a char* to the 
641         MediaQueryEvaluator constructor that expects a String, but the 
642         char* got interpreted as a bool, the wrong constructor was called, 
643         and the media type was never set.
644
645         No test case possible since this only affects html4.css
646
647         * css/MediaQueryEvaluator.cpp: New constructor that expects takes a 
648         char*
649         (WebCore::MediaQueryEvaluator):
650         * css/MediaQueryEvaluator.h: Same.
651
652 2006-09-29  Geoffrey Garen  <ggaren@apple.com>
653
654         Reviewed by John, Maciej.
655         
656         Integrated some frame and iframe code. I'm trying to fix up frame ownership
657         and loading. Reducing the number of different code paths involved
658         seemed like a good first step.
659         
660         As a side effect, I fixed a bug where FRAME elements would report their
661         src attributes as relative, rather than compelete, URLs. (IFRAME elements
662         had the correct complete URL behavior.)
663
664         * html/HTMLFrameElement.cpp:
665         (WebCore::HTMLFrameElement::isURLAllowed): Fixed comment typo
666         (WebCore::HTMLFrameElement::openURL):
667             (1) Removed checks that requestFrame does for us
668             (2) Added isURLAllowed check, to have one clear bottleneck for it
669             (3) Added viewsource check, to have one clear bottleneck for it
670         (WebCore::HTMLFrameElement::close): Changed to use the common contentFrame()
671         method, instead of finding our content frame in our own unique way.
672         (WebCore::HTMLFrameElement::setLocation): Removed isURLAllowed check,
673         since openURL does this for us now.
674         (WebCore::HTMLFrameElement::src): Return complete URL instead of relative.
675         This is what FF does, and it made no sense to have different behaviors
676         for FRAME and IFRAME elements.
677         * html/HTMLIFrameElement.cpp:
678         (WebCore::HTMLIFrameElement::HTMLIFrameElement): Removed duplicate init
679         code.
680         * html/HTMLIFrameElement.h: Removed src() and openURL() methods, since
681         HTMLFrameElement now does everything we need.
682
683 2006-09-30  Nikolas Zimmermann  <zimmermann@kde.org>
684
685         Reviewed by Hyatt.
686
687         Fix Qt/Linux build.
688
689         * CMakeLists.txt:
690         * platform/qt/ScrollViewQt.cpp:
691         (WebCore::ScrollView::convertToContainingWindow):
692         (WebCore::ScrollView::convertFromContainingWindow):
693         * platform/qt/TemporaryLinkStubs.cpp:
694         (WebCore::signedPublicKeyAndChallengeString):
695         * platform/qt/WidgetQt.cpp:
696         (WebCore::Widget::convertToContainingWindow):
697         (WebCore::Widget::convertFromContainingWindow):
698
699 2006-09-29  Sam Weinig  <sam.weinig@gmail.com>
700
701         Reviewed by Tim H.
702
703         Patch for http://bugs.webkit.org/show_bug.cgi?id=11082
704         Simplify Internal methods for the auto-generated Objective-C DOM code
705
706         - Auto-generate the internal methods for more Objective-C classes.
707
708         * WebCore.xcodeproj/project.pbxproj:
709         * bindings/objc/DOM.mm:
710         * bindings/objc/DOMCSS.mm:
711         (-[DOMStyleSheet WebCore::]):
712         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
713         (-[DOMCSSRule WebCore::]):
714         (-[DOMCSSRule _initWithCSSRule:WebCore::]):
715         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
716         (-[DOMCSSValue WebCore::]):
717         (-[DOMCSSValue _initWithCSSValue:WebCore::]):
718         (+[DOMCSSValue _CSSValueWith:WebCore::]):
719         * bindings/objc/DOMHTMLAppletElement.mm:
720         (-[DOMHTMLAppletElement WebCore::]):
721         (+[DOMHTMLAppletElement _HTMLOptionElementWith:WebCore::]):
722         * bindings/objc/DOMHTMLEmbedElement.mm:
723         (-[DOMHTMLEmbedElement WebCore::]):
724         (+[DOMHTMLEmbedElement _HTMLEmbedElementWith:WebCore::]):
725         * bindings/objc/DOMInternal.h:
726         * bindings/objc/DOMInternal.mm:
727         * bindings/scripts/CodeGeneratorObjC.pm:
728         * css/CSSCharsetRule.idl:
729         * css/CSSFontFaceRule.idl:
730         * css/CSSImportRule.idl:
731         * css/CSSMediaRule.idl:
732         * css/CSSPageRule.idl:
733         * css/CSSPrimitiveValue.idl:
734         * css/CSSStyleRule.idl:
735         * css/CSSStyleSheet.idl:
736         * css/CSSUnknownRule.idl:
737         * css/CSSValueList.idl:
738         * dom/KeyboardEvent.idl:
739         * dom/MouseEvent.idl:
740         * dom/MutationEvent.idl:
741         * dom/NodeIterator.idl:
742         * dom/OverflowEvent.idl:
743         * dom/UIEvent.idl:
744         * dom/WheelEvent.idl:
745
746 2006-09-29  David Harrison  <harrison@apple.com>
747
748         Reviewed by John Sullivan.
749
750         <rdar://problem/4663772> REGRESSION: Cannot type in Japanese after replying to a particular message
751         <rdar://problem/4673293> REGRESSION: Can't enter the Japanese characters in Mail or Blot
752
753         Test added
754         * fast/text/attributed-substring-from-range-001.html
755
756         * bridge/mac/FrameMac.mm:
757         (WebCore::FrameMac::attributedString):
758         Handle non-zero offsets when start and/or end node is a container. Offset used to be ignored in this case.
759         Also, add validation of the range.
760
761 2006-09-29  Rob Buis  <buis@kde.org>
762
763         Reviewed by Maciej.
764
765         http://bugs.webkit.org/show_bug.cgi?id=10893
766         InsertRule can not handle @import statements
767
768         Allow @import as part of a css rule.
769
770         * css/CSSGrammar.y:
771
772 2006-09-28  David Hyatt  <hyatt@apple.com>
773
774         Switch over the Mac-specific uses of viewportToContents/contentsToViewport.
775
776         * bridge/mac/FrameMac.mm:
777         (WebCore::FrameMac::eventMayStartDrag):
778         (WebCore::FrameMac::dragHysteresisExceeded):
779         (WebCore::FrameMac::mouseDown):
780         (WebCore::FrameMac::shouldDragAutoNode):
781         (WebCore::FrameMac::sendContextMenuEvent):
782         * bridge/mac/WebCoreFrameBridge.mm:
783         (-[WebCoreFrameBridge _visiblePositionForPoint:]):
784
785 2006-09-28  Dave Hyatt  <hyatt@apple.com>
786
787         This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
788         ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
789         view.
790        
791         Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
792         the patch after review, once I realized that these new functions essentially do the same thing.)
793
794         * dom/EventTargetNode.cpp:
795         (WebCore::EventTargetNode::dispatchMouseEvent):
796         (WebCore::EventTargetNode::dispatchWheelEvent):
797         * page/Frame.cpp:
798         (WebCore::Frame::selectClosestWordFromMouseEvent):
799         (WebCore::Frame::handleMousePressEventTripleClick):
800         (WebCore::Frame::handleMousePressEventSingleClick):
801         (WebCore::Frame::handleMouseMoveEvent):
802         (WebCore::Frame::handleMouseReleaseEvent):
803         * page/FrameView.cpp:
804         (WebCore::FrameView::handleMousePressEvent):
805         (WebCore::selectCursor):
806         (WebCore::FrameView::dispatchDragEvent):
807         (WebCore::FrameView::prepareMouseEvent):
808         (WebCore::FrameView::handleWheelEvent):
809         * platform/ScrollView.h:
810         * platform/Widget.cpp:
811         (WebCore::Widget::convertToContainingWindow):
812         * platform/Widget.h:
813         * platform/mac/ScrollViewMac.mm:
814         (WebCore::ScrollView::convertToContainingWindow):
815         (WebCore::ScrollView::convertFromContainingWindow):
816         * platform/mac/WidgetMac.mm:
817         (WebCore::Widget::convertToContainingWindow):
818         (WebCore::Widget::convertFromContainingWindow):
819         * platform/win/ScrollViewWin.cpp:
820         (WebCore::ScrollView::convertToContainingWindow):
821         (WebCore::ScrollView::convertFromContainingWindow):
822         * rendering/RenderLayer.cpp:
823         (WebCore::RenderLayer::resize):
824
825 2006-09-28  Alice Liu  <alice.liu@apple.com>
826
827         Build fix by adding missing files for CommandByName
828
829         * WebCore.xcodeproj/project.pbxproj:
830
831 2006-09-28  Alice Liu  <alice.liu@apple.com>
832
833         Adding CommandByName files to the vcproj
834
835         * WebCore.vcproj/WebCore/WebCore.vcproj:
836
837 2006-09-28  Alice Liu  <alice.liu@apple.com>
838
839         Reviewed by Adam Roben.
840
841         This patch adds a command class that is attached to the frame so the frame can more easily execute commands such as copy, paste, select, etc. 
842         This patch also exposes some UBRK-related utilities so that they can be used elsewhere.
843         This patch also changes windows PlatformMouseEvent so that we can detect multiple-click mouse events
844
845         * editing/CommandByName.cpp: Added.
846         Added a command class that hangs off the frame so the frame can call commands more easily.  
847         (WebCore::Frame::commandImp):
848         (WebCore::Frame::execCopy):
849         (WebCore::Frame::execCut):
850         (WebCore::Frame::execDelete):
851         (WebCore::Frame::execForwardDelete):
852         (WebCore::Frame::execPaste):
853         (WebCore::Frame::execMoveLeft):
854         (WebCore::Frame::execMoveRight):
855         (WebCore::Frame::execMoveUp):
856         (WebCore::Frame::execMoveDown):
857         (WebCore::Frame::execSelectAll):
858         (WebCore::Frame::execSelectLeft):
859         (WebCore::Frame::execSelectRight):
860         (WebCore::Frame::execSelectUp):
861         (WebCore::Frame::execSelectDown):
862         (WebCore::Frame::enabled):
863         (WebCore::Frame::enabledAnySelection):
864         (WebCore::Frame::enabledAnyEditableSelection):
865         (WebCore::Frame::enabledPaste):
866         (WebCore::Frame::enabledAnyRangeSelection):
867         (WebCore::Frame::enabledAnyEditableRangeSelection):
868         (WebCore::Frame::createCommandDictionary):
869         (WebCore::Frame::Command::):
870         (WebCore:::m_frame):
871         (WebCore::CommandByName::execCommand):
872         * editing/CommandByName.h: Added.
873         * page/Frame.cpp:
874         Added implementation of accessor for CommandByName member
875         (WebCore::Frame::command):
876         * page/Frame.h:
877         Added accessor for CommandByName member
878         * page/FramePrivate.h:
879         Added a CommandByName member
880         (WebCore::FramePrivate::FramePrivate):
881         * platform/PlatformMouseEvent.h:
882         Changed constructor prototype
883         * platform/StringImpl.cpp:
884         Exposing getWordBreakIterator to be used elsewhere
885         (WebCore::getWordBreakIterator):
886         * platform/StringImpl.h:
887         Exposing getWordBreakIterator to be used elsewhere
888         * platform/win/MouseEventWin.cpp:
889         Changed the PlatformMouseEvent on windows so that we "roll our own" multi-click mouse events instead of relying on the system to tell us, enabling us to detect triple-clicks
890         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
891
892 2006-09-28  Adam Roben  <aroben@apple.com>
893
894         Reviewed by Adele.
895
896         Remove no-longer-used PopUpButton.
897
898         * WebCore.vcproj/WebCore/WebCore.vcproj: Remove PopUpButton.h
899         * WebCore.xcodeproj/project.pbxproj: Remove PopUpButton.h,
900         PopUpButtonMac.mm
901         * platform/PopUpButton.h: Removed.
902         * platform/mac/PopUpButtonMac.mm: Removed.
903         * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
904         * rendering/DeprecatedRenderSelect.cpp: Change #include of
905         PopUpButton.h to ListBox.h
906
907 2006-09-28  Darin Adler  <darin@apple.com>
908
909         Reviewed by Alice.
910
911         - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
912           10% perf. regression (copying strings while decoding)
913
914         Use Vector<UChar> instead of String when building up the decoded string in
915         the ICU and Mac decoders. Using String leads to O(n^2) behavior because
916         String grows the buffer every single time that append is called. Using
917         Vector::append instead of String::append also avoids constructing a string
918         each time just to append and a questionable copy that is done inside the
919         String::append function which also contributed to the slowness.
920
921         * platform/PlatformString.h:
922         * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
923         Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
924         allocation.
925         * platform/StringImpl.h:
926         * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
927
928         * platform/StreamingTextDecoder.h:
929         * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
930         Change to use a Vector<UChar> instead of a String, since vectors have better
931         resizing performance (they store a separate capacity).
932
933         * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
934         * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
935         Change to use Vector<UChar> instead of String and then create a string at
936         the end of the process using the new adopt function.
937
938 2006-09-28  Sam Weinig  <sam.weinig@gmail.com>
939
940         Reviewed by Tim H.
941
942         Patch for http://bugs.webkit.org/show_bug.cgi?id=11057
943         Auto-generate more SVG Objective-C bindings
944
945         - Auto-generates DOMSVGAnimatedAngle, DOMSVGAnimatedBoolean, 
946           DOMSVGAnimatedEnumeration, DOMSVGAnimatedInteger, DOMSVGAnimatedLength,
947           DOMSVGAnimatedLengthList, DOMSVGAnimatedNumber, DOMSVGAnimatedString,
948           DOMSVGAnimatedTransformList, DOMSVGExternalResourcesRequired,
949           DOMSVGLangSpace, DOMSVGLocatable, DOMSVGMetadataElement, DOMSVGRectElement,
950           DOMSVGStringList, DOMSVGStylable, DOMSVGStyleElement, DOMSVGTests, 
951           and DOMSVGTransformable.
952
953         - Adds ability to CodeGeneratorObjC.pm to handle interfaces with mulitple
954           parent interfaces and the SVG animated classes.
955
956         - Corrects CodeGenerator.pm to only skip the first parent for the main 
957           interface.
958
959         * DerivedSources.make:
960         * WebCore.xcodeproj/project.pbxproj:
961         * bindings/objc/DOMInternal.h:
962         * bindings/objc/DOMSVG.h:
963         * bindings/scripts/CodeGenerator.pm:
964         * bindings/scripts/CodeGeneratorObjC.pm:
965         * ksvg2/svg/SVGAnimatedAngle.idl:
966         * ksvg2/svg/SVGAnimatedBoolean.idl:
967         * ksvg2/svg/SVGAnimatedEnumeration.idl:
968         * ksvg2/svg/SVGAnimatedInteger.idl:
969         * ksvg2/svg/SVGAnimatedLength.idl:
970         * ksvg2/svg/SVGAnimatedLengthList.idl:
971         * ksvg2/svg/SVGAnimatedNumber.idl:
972         * ksvg2/svg/SVGAnimatedPathData.idl:
973         * ksvg2/svg/SVGAnimatedString.idl:
974         * ksvg2/svg/SVGAnimatedTransformList.idl:
975         * ksvg2/svg/SVGExternalResourcesRequired.idl:
976         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl:
977         * ksvg2/svg/SVGFitToViewBox.idl:
978         * ksvg2/svg/SVGLangSpace.idl:
979         * ksvg2/svg/SVGLocatable.idl:
980         * ksvg2/svg/SVGMetadataElement.idl:
981         * ksvg2/svg/SVGStringList.idl:
982         * ksvg2/svg/SVGStylable.idl:
983         * ksvg2/svg/SVGStyleElement.idl:
984         * ksvg2/svg/SVGTests.idl:
985         * ksvg2/svg/SVGTransformable.idl:
986         * ksvg2/svg/SVGURIReference.idl:
987         * ksvg2/svg/SVGUnitTypes.idl:
988         * ksvg2/svg/SVGZoomAndPan.idl:
989
990 2006-09-28  Brady Eidson  <beidson@apple.com>
991
992         Reviewed by Mitz Pettel!!!
993
994         Change the error code check for common functions from SQLResultOk to SQLResultDone 
995
996         * loader/icon/IconDatabase.cpp:
997         (WebCore::IconDatabase::forgetPageURLQuery):
998         (WebCore::IconDatabase::setIconIDForPageURLQuery):
999         (WebCore::IconDatabase::addIconForIconURLQuery):
1000
1001 2006-09-28  Dave Hyatt  <hyatt@apple.com>
1002
1003         Just eliminate MapWindowPoints usage and use the HWND as
1004         the viewport.
1005
1006         * platform/win/MouseEventWin.cpp:
1007         (WebCore::positionForEvent):
1008         * platform/win/ScrollViewWin.cpp:
1009         (WebCore::ScrollView::viewportToContents):
1010         (WebCore::ScrollView::contentsToViewport):
1011
1012 2006-09-27  David Hyatt  <hyatt@apple.com>
1013
1014         Fix for bug 9222, cursor is wrong when mousing over overflow scrollbars in textareas.  Make sure
1015         selectCursor checks for whether or not a scrollbar was hit.  Also stub out a mouseMoved method for
1016         scrollbars to provide hover feedback if needed.
1017
1018         Reviewed by Eric
1019
1020         * page/FrameView.cpp:
1021         (WebCore::selectCursor):
1022         (WebCore::FrameView::handleMouseMoveEvent):
1023         * platform/ScrollBar.h:
1024         (WebCore::ScrollBar::mouseMoved):
1025
1026 2006-09-27  MorganL  <morganl.webkit@yahoo.com>
1027
1028         Reviewed by Maciej and Adam, landed by Adam
1029
1030         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11072
1031         Windows build is busted
1032
1033         * platform/win/TemporaryLinkStubs.cpp:
1034         (ScrollView::paint):
1035         (ScrollView::themeChanged):
1036
1037 2006-09-27  Eric Seidel  <eric@eseidel.com>
1038
1039         Reviewed by mitz.
1040
1041         paths with no fill specified default to black but do not recieve paint-related mouse events
1042         http://bugs.webkit.org/show_bug.cgi?id=11069
1043         The default fill was being applied at the wrong place in the rendering chain, causing this problem.
1044
1045         Test: svg/custom/hover-default-fill.svg
1046
1047         * kcanvas/RenderPath.cpp:
1048         (WebCore::RenderPath::nodeAtPoint): use isFilled and isStroked
1049         * ksvg2/css/SVGRenderStyle.h: use defaultFill() and defaultStroke()
1050         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1051         (WebCore::KSVGPainterFactory::isFilled): remove null check
1052         (WebCore::KSVGPainterFactory::fillPaintServer): remove null check
1053         (WebCore::KSVGPainterFactory::isStroked): remove null check
1054         (WebCore::KSVGPainterFactory::strokePaintServer): remove null check
1055         * ksvg2/svg/SVGPaint.cpp:
1056         (WebCore::SVGPaint::defaultFill): added.
1057         (WebCore::SVGPaint::defaultStroke): added.
1058         * ksvg2/svg/SVGPaint.h:
1059
1060 2006-09-27  Rob Buis  <buis@kde.org>
1061
1062         Reviewed by eseidel.
1063
1064         http://bugs.webkit.org/show_bug.cgi?id=11015
1065         SVG handles em units incorrectly
1066
1067         Calculate viewport coordinates at layout time, since
1068         at this point the font size is known and lengths depending
1069         on font sizes can be calculated correctly.
1070
1071         * kcanvas/RenderSVGContainer.cpp:
1072         (WebCore::RenderSVGContainer::layout):
1073         (WebCore::RenderSVGContainer::viewport):
1074         (WebCore::RenderSVGContainer::calcViewport):
1075         * kcanvas/RenderSVGContainer.h:
1076         * ksvg2/svg/SVGLength.cpp:
1077         (WebCore::SVGLength::updateValue):
1078         * ksvg2/svg/SVGMarkerElement.cpp:
1079         (WebCore::SVGMarkerElement::createRenderer):
1080         * ksvg2/svg/SVGSVGElement.cpp:
1081         (WebCore::SVGSVGElement::createRenderer):
1082         (WebCore::SVGSVGElement::attributeChanged):
1083         * ksvg2/svg/SVGSVGElement.h:
1084
1085 2006-09-27  Eric Seidel  <eric@eseidel.com>
1086
1087         Reviewed by darin.
1088
1089         Change our invalid-fill error behavior to match Opera (and soon Firefox)
1090         http://bugs.webkit.org/show_bug.cgi?id=11017
1091
1092         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1093         (WebCore::KSVGPainterFactory::isFilled):
1094         (WebCore::KSVGPainterFactory::fillPaintServer):
1095         (WebCore::KSVGPainterFactory::isStroked):
1096         (WebCore::KSVGPainterFactory::strokePaintServer):
1097
1098 2006-09-27  Brady Eidson  <beidson@apple.com>
1099
1100         Build fix
1101
1102         * loader/icon/IconDatabase.cpp:
1103         (WebCore::readySQLStatement):
1104
1105 2006-09-27  Brady Eidson  <beidson@apple.com>
1106
1107         Reviewed by Adam
1108
1109         In very specific circumstances, prepared SQLStatements can become invalid without
1110         any warning.  This checks for that state and re-prepares the statement and also
1111         adds more aggressive error-checking everywhere these statements are used.
1112
1113         * loader/icon/IconDatabase.cpp:
1114         (WebCore::readySQLStatement): Check if the statement is expired - reprepare it
1115         (WebCore::IconDatabase::imageDataForIconURLQuery): More thoroughly catch error cases
1116         (WebCore::IconDatabase::timeStampForIconURLQuery): Ditto
1117         (WebCore::IconDatabase::iconURLForPageURLQuery): Ditto
1118         (WebCore::IconDatabase::forgetPageURLQuery): Ditto
1119         (WebCore::IconDatabase::setIconIDForPageURLQuery): Ditto
1120         (WebCore::IconDatabase::getIconIDForIconURLQuery): Ditto
1121         (WebCore::IconDatabase::addIconForIconURLQuery): Ditto
1122         (WebCore::IconDatabase::hasIconForIconURLQuery): Ditto
1123         * loader/icon/SQLStatement.cpp:
1124         (WebCore::SQLStatement::isExpired): Added (accessor to sqlite3_expired())
1125         * loader/icon/SQLStatement.h:
1126
1127 2006-09-26  Darin Adler  <darin@apple.com>
1128
1129         Reviewed by Steve.
1130
1131         - clean up options for font code path
1132
1133         * platform/Font.h:
1134         * platform/Font.cpp:
1135         (WebCore::Font::setCodePath): Added. Replaces boolean version.
1136         (WebCore::Font::canUseGlyphCache): Update to handle "never use complex" case too.
1137
1138         * platform/mac/WebCoreTextRenderer.mm:
1139         (WebCoreSetAlwaysUseATSU): Change to call setCodePath.
1140
1141 2006-09-26  John Sullivan  <sullivan@apple.com>
1142
1143         Reviewed by Darin
1144
1145         * bridge/mac/WebCoreFrameBridge.h:
1146         * bridge/mac/WebCoreFrameBridge.mm:
1147         (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:limit:]):
1148         Added limit parameter, passed down to Frame
1149         
1150         * page/Frame.h:
1151         * page/Frame.cpp:
1152         (WebCore::Frame::markAllMatchesForText):
1153         Added limit parameter. Stop the search if it hits limit.
1154
1155 2006-09-26  Sean Gies  <seangies@apple.com>
1156
1157         Reviewed by Brady Eidson.
1158
1159         * platform/cg/ImageCG.cpp: Removed #if's -- Darin said we don't need these.
1160
1161 2006-09-26  Justin Garcia  <justin.garcia@apple.com>
1162
1163         Reviewed by john
1164         
1165         <rdar://problem/4747695> 
1166         Gmail Editor: Crash at WebCore::Range::startPosition() when decreasing a indent
1167         
1168         * editing/DeleteSelectionCommand.cpp:
1169         (WebCore::DeleteSelectionCommand::initializeStartEnd): Stop expanding
1170         to select special elements that are fully selected after expansion
1171         moves to positions that are visually distinct from the originals.
1172         * editing/InsertListCommand.cpp:
1173         (WebCore::InsertListCommand::doApply): If the content of the list 
1174         item will be moved into another list, put it in a list item.
1175
1176 2006-09-26  Geoffrey Garen <ggaren@apple.com>
1177
1178         Reviewed by Darin.
1179         
1180         Temporary work-around for frame lifetime issue.
1181
1182         * page/Frame.cpp:
1183         (WebCore::Frame::clear):
1184         (WebCore::Frame::disconnectOwnerElement):
1185
1186 2006-09-26  Sam Weinig  <sam.weinig@gmail.com>
1187
1188         Reviewed by Tim H.
1189
1190         Patch for http://bugs.webkit.org/show_bug.cgi?id=11038
1191         Auto-generate DOMSVGElement for the Objective-C bindings
1192
1193         - Auto-generates DOMSVGElement.
1194
1195         - Make SVGExceptions work like all the other ExceptionCode
1196           extensions (Range, XPath, etc.) by adding SVGExceptionOffset
1197           and SVGExceptionMax.
1198
1199         * DerivedSources.make:
1200         * WebCore.xcodeproj/project.pbxproj:
1201         * bindings/js/kjs_binding.cpp:
1202         (KJS::):
1203         (KJS::setDOMException):
1204         * bindings/objc/DOMInternal.h:
1205         * bindings/objc/DOMInternal.mm:
1206         (raiseDOMException):
1207         * bindings/objc/DOMSVG.h:
1208         * bindings/objc/DOMSVGExecption.h: Added.
1209         * ksvg2/ksvg.h:
1210         * ksvg2/svg/SVGElement.cpp:
1211         (WebCore::SVGElement::setId):
1212         (WebCore::SVGElement::setXmlbase):
1213         * ksvg2/svg/SVGElement.h:
1214         * ksvg2/svg/SVGElement.idl:
1215         * ksvg2/svg/SVGException.h: Added.
1216         (WebCore::):
1217
1218 2006-09-26  Eric Seidel  <eric@eseidel.com>
1219
1220         Reviewed by Tim H.
1221         
1222         viewbox parser does not allow <tab> as a delimiter
1223         http://bugs.webkit.org/show_bug.cgi?id=11014
1224
1225         Test: svg/hixie/viewbox/003.xml
1226
1227         * ksvg2/svg/svgpathparser.cpp:
1228         (WebCore::isWhitespace): new function
1229         (WebCore::skipOptionalSpaces):
1230         (WebCore::skipOptionalSpacesOrComma):
1231
1232 2006-09-26  Eric Seidel  <eric@eseidel.com>
1233
1234         Reviewed by Tim H.
1235
1236         SVGDocument::createElement does not create elements in the SVG namespace
1237         http://bugs.webkit.org/show_bug.cgi?id=10932
1238         
1239         Test: svg/custom/createelement.svg
1240
1241         * ksvg2/svg/SVGDocument.cpp:
1242         (WebCore::SVGDocument::createElement):
1243         * ksvg2/svg/SVGDocument.h:
1244
1245 2006-09-26  Eric Seidel  <eric@eseidel.com>
1246
1247         Reviewed by Tim H.
1248         
1249         RenderPath::nodeAtPoint does not respect stroke width
1250         http://bugs.webkit.org/show_bug.cgi?id=10829
1251
1252         Test: svg/custom/stroke-width-click.svg
1253
1254         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1255         (WebCore::RenderPath::strokeContains):
1256         * kcanvas/device/quartz/QuartzSupport.h:
1257         * kcanvas/device/quartz/QuartzSupport.mm:
1258
1259 2006-09-26  Eric Seidel  <eric@eseidel.com>
1260
1261         Reviewed by mitz.
1262
1263         Bring animation back to life
1264         http://bugs.webkit.org/show_bug.cgi?id=11021
1265         
1266         Register/unregister SVGSVGElements as time containers on insertion/removal.
1267         Replace uses of DeprecatedString with String in SVGAnimationElement
1268         Various whitespace clean-up.
1269
1270         * ksvg2/misc/KSVGTimeScheduler.cpp:
1271         (WebCore::SVGTimer::notifyAll):
1272         * ksvg2/misc/SVGDocumentExtensions.cpp:
1273         (WebCore::SVGDocumentExtensions::startAnimations):
1274         (WebCore::SVGDocumentExtensions::pauseAnimations):
1275         (WebCore::SVGDocumentExtensions::unpauseAnimations):
1276         * ksvg2/svg/SVGAnimateTransformElement.cpp:
1277         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
1278         (WebCore::SVGAnimateTransformElement::parseTransformValue):
1279         * ksvg2/svg/SVGAnimateTransformElement.h:
1280         * ksvg2/svg/SVGAnimationElement.cpp:
1281         (WebCore::SVGAnimationElement::SVGAnimationElement):
1282         (WebCore::SVGAnimationElement::parseMappedAttribute):
1283         (WebCore::SVGAnimationElement::parseClockValue):
1284         (WebCore::SVGAnimationElement::targetAttribute):
1285         (WebCore::SVGAnimationElement::setTargetAttribute):
1286         (WebCore::SVGAnimationElement::attributeName):
1287         * ksvg2/svg/SVGAnimationElement.h:
1288         (WebCore::SVGAnimationElement::rendererIsNeeded):
1289         * ksvg2/svg/SVGSVGElement.cpp:
1290         (WebCore::SVGSVGElement::getScreenCTM):
1291         (WebCore::SVGSVGElement::createRenderer):
1292         (WebCore::SVGSVGElement::insertedIntoDocument): added, calls addTimeContainer(this)
1293         (WebCore::SVGSVGElement::removedFromDocument): added, calls removeTimeContainer(this)
1294         * ksvg2/svg/SVGSVGElement.h:
1295         * ksvg2/svg/SVGSetElement.cpp:
1296         (WebCore::SVGSetElement::handleTimerEvent):
1297         * ksvg2/svg/SVGURIReference.cpp:
1298         (WebCore::SVGURIReference::getTarget):
1299         * ksvg2/svg/SVGURIReference.h:
1300
1301 2006-09-26  Graham Dennis  <graham.dennis@gmail.com>
1302
1303         Reviewed by mitzpettel.
1304
1305         - fix http://bugs.webkit.org/show_bug.cgi?id=11020
1306         No-SVG build broken since r16549
1307         
1308         Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT
1309
1310         * css/cssparser.cpp:
1311         (WebCore::CSSParser::parseValue):
1312         * css/cssstyleselector.cpp:
1313         (WebCore::CSSStyleSelector::applyProperty):
1314         * page/FrameView.cpp:
1315         (WebCore::selectCursor):
1316         * platform/qt/GraphicsContextQt.cpp:
1317
1318 2006-09-26  Anders Carlsson  <acarlsson@apple.com>
1319
1320         Reviewed by Maciej.
1321
1322         http://bugs.webkit.org/show_bug.cgi?id=10820
1323         Add StringImpl::toDouble() and remove uses of .deprecatedString().toDouble()
1324         
1325         (Originally written by Eric Seidel).
1326         
1327         * bindings/js/kjs_window.cpp:
1328         (KJS::floatFeature):
1329         * ksvg2/svg/SVGAngle.cpp:
1330         (SVGAngle::setValueAsString):
1331         * ksvg2/svg/SVGAnimationElement.cpp:
1332         (SVGAnimationElement::parseMappedAttribute):
1333         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1334         (SVGComponentTransferFunctionElement::parseMappedAttribute):
1335         * ksvg2/svg/SVGFECompositeElement.cpp:
1336         (WebCore::SVGFECompositeElement::parseMappedAttribute):
1337         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1338         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
1339         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1340         (SVGFEDisplacementMapElement::parseMappedAttribute):
1341         * ksvg2/svg/SVGFELightElement.cpp:
1342         (SVGFELightElement::parseMappedAttribute):
1343         * ksvg2/svg/SVGFEOffsetElement.cpp:
1344         (WebCore::SVGFEOffsetElement::parseMappedAttribute):
1345         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1346         (SVGFESpecularLightingElement::parseMappedAttribute):
1347         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1348         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
1349         * ksvg2/svg/SVGStopElement.cpp:
1350         (SVGStopElement::parseMappedAttribute):
1351         * platform/AtomicString.h:
1352         (WebCore::AtomicString::toDouble):
1353         * platform/PlatformString.h:
1354         * platform/String.cpp:
1355         (WebCore::String::toDouble):
1356         * platform/StringImpl.cpp:
1357         (WebCore::StringImpl::toDouble):
1358         * platform/StringImpl.h:
1359         * rendering/DeprecatedSlider.cpp:
1360         (WebCore::DeprecatedSlider::updateFromElement):
1361         * xml/XPathGrammar.y:
1362
1363 2006-09-25  David Harrison  <harrison@apple.com>
1364
1365         Reviewed by Tim Omernick and Tim Hatcher.
1366
1367         <rdar://problem/4717965> Text Field text parameterized attributes should work
1368         <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
1369
1370         * bridge/mac/WebCoreAXObject.mm:
1371         (-[WebCoreAXObject accessibilityAttributeValue:]):
1372         Use new line number support to implement NSAccessibilityInsertionPointLineNumberAttribute.
1373         
1374         (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
1375         Cleaned up. Added text field and text area parameterzed attributes.
1376         
1377         (-[WebCoreAXObject doAXLineForTextMarker:]):
1378         Fixed to be zero-based and to deal with the first position properly.
1379         
1380         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
1381         Minor formatting.
1382         
1383         (-[WebCoreAXObject textMarkerForIndex:lastIndexOK:]):
1384         (-[WebCoreAXObject indexForTextMarker:]):
1385         (-[WebCoreAXObject textMarkerRangeForRange:]):
1386         (-[WebCoreAXObject rangeForTextMarkerRange:]):
1387         New utility methods.
1388         
1389         (-[WebCoreAXObject doAXLineForIndex:]):
1390         (-[WebCoreAXObject doAXRangeForLine:]):
1391         (-[WebCoreAXObject doAXStringForRange:]):
1392         (-[WebCoreAXObject doAXRangeForPosition:]):
1393         (-[WebCoreAXObject doAXRangeForIndex:]):
1394         (-[WebCoreAXObject doAXBoundsForRange:]):
1395         (-[WebCoreAXObject doAXAttributedStringForRange:]):
1396         (-[WebCoreAXObject doAXRTFForRange:]):
1397         (-[WebCoreAXObject doAXStyleRangeForIndex:]):
1398         Implement text field and text area parameterized attributes.
1399          
1400         (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
1401         Added text field and text area parameterzed attributes.
1402
1403         * rendering/RenderTextControl.h:
1404         Made indexForVisiblePosition() and visiblePositionForIndex() public.
1405
1406 2006-09-25  Adam Roben  <aroben@apple.com>
1407
1408         Reviewed by Brady.
1409
1410         Build fixes.
1411
1412         * WebCore.vcproj/WebCore/WebCore.vcproj: Fix malformed XML.
1413         * platform/ResourceLoader.h: Store whether a particular job
1414         has received a response within the ResourceLoader object itself, since
1415         it's possible that we will enter the InternetReadFileExA while loop
1416         twice for the same job.
1417         * platform/ResourceLoaderInternal.h: Add private instance variable to
1418         store whether we've received a response.
1419         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
1420         * platform/win/GraphicsContextWin.cpp: Fix order of preprocessor
1421         directives.
1422         * platform/win/ResourceLoaderWin.cpp: 
1423         (WebCore::ResourceLoader::onRequestComplete): Ask the ResourceLoader
1424         whether it has received a response instead of assuming it hasn't.
1425         (WebCore::ResourceLoader::setHasReceivedResponse): Added.
1426         (WebCore::ResourceLoader::hasReceivedResponse): Added.
1427         * platform/win/TemporaryLinkStubs.cpp: Rename setKnobProportion to
1428         setProportion
1429         (ScrollBar::setProportion):
1430
1431 2006-09-25  Brady Eidson  <beidson@apple.com>
1432
1433         Requested by ggaren
1434
1435         Disabled IconDatabase logging by default
1436
1437         * platform/Logging.cpp:
1438         (WebCore::):
1439
1440 2006-09-25  Steve Falkenburg  <sfalken@apple.com>
1441
1442         Build fix
1443
1444         * platform/cf/ResourceLoaderCFNet.cpp:
1445         (WebCore::willCacheResponse):
1446
1447 2006-09-25  Justin Garcia  <justin.garcia@apple.com>
1448
1449         Reviewed by john
1450         
1451         <http://bugs.webkit.org/show_bug.cgi?id=11002>
1452         Gmail Editor: Crash at WebCore::SplitElementCommand::doApply() when attempting to indent in a new message
1453         
1454         * editing/IndentOutdentCommand.cpp:
1455         (WebCore::IndentOutdentCommand::indentRegion): Special case
1456         an empty root editable element.
1457
1458 2006-09-25  Brady Eidson  <beidson@apple.com>
1459
1460         Reviewed by Steve
1461
1462         Math error in SystemTimeWin
1463
1464         * platform/win/SystemTimeWin.cpp:
1465         (WebCore::currentTime):
1466
1467 2006-09-25  Alexey Proskuryakov  <ap@nypop.com>
1468
1469         Reviewed by Eric.
1470
1471         Whitespace cleanup; rename *job variables to *loader.
1472
1473         * bindings/js/JSXMLHttpRequest.cpp:
1474         (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
1475         (KJS::JSXMLHttpRequestConstructorImp::implementsConstruct):
1476         (KJS::JSXMLHttpRequestConstructorImp::construct):
1477         (KJS::JSXMLHttpRequest::getOwnPropertySlot):
1478         (KJS::JSXMLHttpRequest::getValueProperty):
1479         (KJS::JSXMLHttpRequest::put):
1480         (KJS::JSXMLHttpRequest::putValueProperty):
1481         (KJS::JSXMLHttpRequest::mark):
1482         (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
1483         (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
1484         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
1485         * bindings/js/JSXMLHttpRequest.h:
1486         (KJS::JSXMLHttpRequest::toBoolean):
1487         * xml/xmlhttprequest.cpp:
1488         (WebCore::XMLHttpRequest::XMLHttpRequest):
1489         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
1490         (WebCore::XMLHttpRequest::send):
1491         (WebCore::XMLHttpRequest::abort):
1492         (WebCore::XMLHttpRequest::receivedAllData):
1493         (WebCore::XMLHttpRequest::receivedData):
1494         * xml/xmlhttprequest.h:
1495         (WebCore::):
1496
1497 2006-09-25  Timothy Hatcher  <timothy@apple.com>
1498
1499         Reviewed by Brady.
1500
1501         - Deprecate the rest of the old-style methods that are not generated.
1502         - Add @property syntax to DOMRange.
1503
1504         * WebCore.xcodeproj/project.pbxproj:
1505         * bindings/objc/DOM.mm:
1506         (-[DOMRange setStart:offset:]):
1507         (-[DOMRange setEnd:offset:]):
1508         (-[DOMRange compareBoundaryPoints:sourceRange:]):
1509         (-[DOMRange setStart::]):
1510         (-[DOMRange setEnd::]):
1511         (-[DOMRange compareBoundaryPoints::]):
1512         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
1513         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
1514         (-[DOMDocument createNodeIterator::::]):
1515         (-[DOMDocument createTreeWalker::::]):
1516         * bindings/objc/DOMCSS.h:
1517         * bindings/objc/DOMCSS.mm:
1518         (-[DOMDocument getComputedStyle:pseudoElement:]):
1519         (-[DOMDocument getComputedStyle::]):
1520         (-[DOMDocument getMatchedCSSRules:pseudoElement:]):
1521         * bindings/objc/DOMExtensions.h:
1522         * bindings/objc/DOMHTML.h:
1523         * bindings/objc/DOMRange.h:
1524         * bindings/objc/DOMTraversal.h:
1525
1526 2006-09-25  Eric Seidel  <eric@eseidel.com>
1527
1528         Reviewed by mjs.
1529         
1530         Outermost <svg> element should clip to viewport
1531         http://bugs.webkit.org/show_bug.cgi?id=11007
1532
1533         Test: svg/custom/viewport-clip.svg
1534
1535         * css/svg.css: change svg:root overflow: from 'visible' to 'hidden'
1536
1537 2006-09-25  Anders Carlsson  <acarlsson@apple.com>
1538
1539         Reviewed by Maciej.
1540
1541         * css/MediaList.cpp:
1542         Remove unused header.
1543         
1544         * dom/Document.cpp:
1545         (WebCore::Document::clear):
1546         Use clear instead of iterating through the list of event listeners, removing each one.
1547         (Doing that causes a crash when running the layout tests with GuardMalloc turned on)
1548         
1549         * html/HTMLKeygenElement.cpp:
1550         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
1551         (WebCore::HTMLKeygenElement::appendFormData):
1552         Update due to changes in the SSL key generator.
1553         
1554         * ksvg2/svg/SVGAngle.cpp:
1555         Remove unused header.
1556         
1557         * ksvg2/svg/SVGAnimationElement.cpp:
1558         (SVGAnimationElement::parseMappedAttribute):
1559         Rename methods and pass Strings instead of DeprecatedStrings to
1560         parseSeparatedList.
1561         
1562         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1563         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1564         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1565         * ksvg2/svg/SVGFEMergeElement.cpp:
1566         * ksvg2/svg/SVGFEOffsetElement.cpp:
1567         Remove unused headers.
1568         
1569         * ksvg2/svg/SVGHelper.cpp:
1570         (WebCore::SVGHelper::parseSeparatedList):
1571         * ksvg2/svg/SVGHelper.h:
1572         Rename ParseSeperatedList to parseSeparatedList, make it take a String instead of a 
1573         DeprecatedString and have it use Vector<String> instead of DeprecatedStringList.
1574         
1575         * ksvg2/svg/SVGLengthList.cpp:
1576         (WebCore::SVGLengthList::parse):
1577         * ksvg2/svg/SVGLengthList.h:
1578         Use Vector<String> instead of DeprecatedStringList.
1579         
1580         * loader/Cache.cpp:
1581         (WebCore::Cache::requestImage):
1582         (WebCore::Cache::requestStyleSheet):
1583         (WebCore::Cache::requestScript):
1584         (WebCore::Cache::requestXSLStyleSheet):
1585         (WebCore::Cache::requestXBLDocument):
1586         (WebCore::Cache::remove):
1587         (WebCore::Cache::get):
1588         Use a String as the key in the cache set instead of a RefPtr<StringImpl>.
1589         
1590         * loader/DocLoader.cpp:
1591         (WebCore::DocLoader::needReload):
1592         * loader/DocLoader.h:
1593         Use a HashSet instead of DeprecatedStringList.
1594         
1595         * page/FrameView.h:
1596         Remove declarations that have no functions.
1597         
1598         * platform/SSLKeyGenerator.h:
1599         * platform/mac/SSLKeyGeneratorMac.mm:
1600         (WebCore::supportedKeySizes):
1601         (WebCore::signedPublicKeyAndChallengeString):
1602         Convert to use Vector<String> instead of DeprecatedStringList, and String instead of
1603         DeprecatedString.
1604
1605 2006-09-25  Dave Hyatt  <hyatt@apple.com>
1606
1607         Shunt the RenderTheme world transform adoption between
1608         Cairo and Windows into getWindowsContext and move the method
1609         out of GraphicsContextCairo and into GraphicsContextWin.
1610
1611         * ChangeLog:
1612         * WebCore.vcproj/WebCore/WebCore.vcproj:
1613         * platform/cairo/GraphicsContextCairo.cpp:
1614         * platform/win/GraphicsContextWin.cpp: Added.
1615         (WebCore::GraphicsContext::getWindowsContext):
1616         (WebCore::GraphicsContext::releaseWindowsContext):
1617         * rendering/RenderThemeWin.cpp:
1618         (WebCore::prepareForDrawing):
1619
1620 2006-09-24  Eric Seidel  <eric@eseidel.com>
1621
1622         Reviewed by hyatt.
1623
1624         <svg:a> cannot be styled with a:hover
1625         http://bugs.webkit.org/show_bug.cgi?id=11005
1626         
1627         Test: svg/hixie/cascade/002.xml
1628
1629         * css/cssstyleselector.cpp:
1630         (WebCore::checkPseudoState):
1631
1632 2006-09-24  Sam Weinig  <sam.weinig@gmail.com>
1633
1634         Reviewed by Tim H.
1635
1636         Patch for http://bugs.webkit.org/show_bug.cgi?id=10882
1637         SVG needs Obj-C DOM bindings
1638
1639         - Auto-generate the first 8 Objective-C SVG DOM bindings.  The 
1640           auto-generated classes are DOMSVGAngle, DOMSVGLength, DOMSVGLengthList,
1641           DOMSVGMatrix, DOMSVGPathSeg, DOMSVGPathSegList, DOMSVGTransform, and 
1642           DOMSVGTransformList.
1643
1644         * DerivedSources.make:
1645         * WebCore.xcodeproj/project.pbxproj:
1646         * bindings/objc/DOMInternal.h:
1647         * bindings/objc/DOMSVG.h: Added.
1648         * ksvg2/svg/SVGAngle.idl:
1649         * ksvg2/svg/SVGLength.idl:
1650         * ksvg2/svg/SVGLengthList.idl:
1651         * ksvg2/svg/SVGMatrix.idl:
1652         * ksvg2/svg/SVGPathSeg.idl:
1653         * ksvg2/svg/SVGPathSegList.idl:
1654         * ksvg2/svg/SVGTransform.idl:
1655         * ksvg2/svg/SVGTransformList.idl:
1656
1657 2006-09-24  Rob Buis  <buis@kde.org>
1658
1659         Reviewed by eseidel.
1660
1661         Fix for http://bugs.webkit.org/show_bug.cgi?id=6001
1662         WebKit does not handle fallback custom cursors
1663         Fix for http://bugs.webkit.org/show_bug.cgi?id=6002
1664         WebKit does not properly handle SVG <cursor> element
1665
1666         Add support for svg cursor images. Also make sure hotspot
1667         settings are handled correctly. Add tests for handling of css3
1668         cursor syntax with hotspots in strict and quirks mode. Finally
1669         implement fallback.
1670
1671         * WebCore.xcodeproj/project.pbxproj:
1672         * css/CSSComputedStyleDeclaration.cpp:
1673         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1674         * css/CSSCursorImageValue.cpp: Added.
1675         (WebCore::CSSCursorImageValue::CSSCursorImageValue):
1676         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
1677         * css/CSSCursorImageValue.h: Added.
1678         (WebCore::CSSCursorImageValue::hotspot):
1679         * css/cssparser.cpp:
1680         (WebCore::CSSParser::parseValue):
1681         * css/cssstyleselector.cpp:
1682         (WebCore::CSSStyleSelector::applyProperty):
1683         * ksvg2/svg/SVGCursorElement.cpp:
1684         * manual-tests/css3-cursor-fallback-quirks.html: Added.
1685         * manual-tests/css3-cursor-fallback-strict.html: Added.
1686         * manual-tests/cursorfallback.xml: Added.
1687         * page/FrameView.cpp:
1688         (WebCore::selectCursor):
1689         * platform/Cursor.h:
1690         * platform/mac/CursorMac.mm:
1691         (WebCore::createCustomCursor):
1692         (WebCore::Cursor::Cursor):
1693         * platform/qt/CursorQt.cpp:
1694         (WebCore::Cursor::Cursor):
1695         * rendering/RenderStyle.cpp:
1696         (WebCore::StyleInheritedData::StyleInheritedData):
1697         (WebCore::StyleInheritedData::operator==):
1698         (WebCore::RenderStyle::diff):
1699         (WebCore::RenderStyle::addCursor):
1700         (WebCore::RenderStyle::addSVGCursor):
1701         (WebCore::RenderStyle::setCursorList):
1702         (WebCore::RenderStyle::clearCursorList):
1703         * rendering/RenderStyle.h:
1704         (WebCore::CursorData::CursorData):
1705         (WebCore::CursorList::operator[]):
1706         (WebCore::CursorList::size):
1707         (WebCore::CursorList::append):
1708         (WebCore::RenderStyle::cursors):
1709
1710 2006-09-24  Sam Weinig  <sam.weinig@gmail.com>
1711
1712         Reviewed by Tim H.
1713
1714         Patch for http://bugs.webkit.org/show_bug.cgi?id=11009
1715         Auto-generate the internal methods interfaces for the Objective-C bindings
1716
1717         - Auto-generate the internal method declarations into their own files
1718           named in the form DOMFooBarInternal.h for class DOMFooBar.
1719
1720         - Remove all use of DOM_cast from code.
1721
1722         - Assorted cleanups.
1723
1724         * WebCore.xcodeproj/project.pbxproj:
1725         * bindings/objc/DOM.mm:
1726         (-[DOMNode _initWithNode:WebCore::]):
1727         (-[DOMNode WebCore::]):
1728         (-[DOMRange dealloc]):
1729         (-[DOMRange finalize]):
1730         (-[DOMRange _initWithRange:WebCore::]):
1731         (-[DOMRange WebCore::]):
1732         (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
1733         (-[DOMNodeFilter WebCore::]):
1734         (-[DOMNodeFilter dealloc]):
1735         (-[DOMNodeFilter finalize]):
1736         (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
1737         (-[DOMNodeIterator WebCore::]):
1738         (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
1739         (-[DOMTreeWalker WebCore::]):
1740         * bindings/objc/DOMAbstractView.mm:
1741         (-[DOMAbstractView _initWithAbstractView:WebCore::]):
1742         * bindings/objc/DOMCSS.mm:
1743         (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
1744         (-[DOMCSSRule _initWithRule:WebCore::]):
1745         (-[DOMCSSValue _initWithValue:WebCore::]):
1746         * bindings/objc/DOMEvents.mm:
1747         (-[DOMEvent _initWithEvent:WebCore::]):
1748         * bindings/objc/DOMHTMLAppletElement.mm:
1749         (-[DOMHTMLAppletElement align]):
1750         (-[DOMHTMLAppletElement setAlign:]):
1751         (-[DOMHTMLAppletElement alt]):
1752         (-[DOMHTMLAppletElement setAlt:]):
1753         (-[DOMHTMLAppletElement archive]):
1754         (-[DOMHTMLAppletElement setArchive:]):
1755         (-[DOMHTMLAppletElement code]):
1756         (-[DOMHTMLAppletElement setCode:]):
1757         (-[DOMHTMLAppletElement codeBase]):
1758         (-[DOMHTMLAppletElement setCodeBase:]):
1759         (-[DOMHTMLAppletElement height]):
1760         (-[DOMHTMLAppletElement setHeight:]):
1761         (-[DOMHTMLAppletElement hspace]):
1762         (-[DOMHTMLAppletElement setHspace:]):
1763         (-[DOMHTMLAppletElement name]):
1764         (-[DOMHTMLAppletElement setName:]):
1765         (-[DOMHTMLAppletElement object]):
1766         (-[DOMHTMLAppletElement setObject:]):
1767         (-[DOMHTMLAppletElement vspace]):
1768         (-[DOMHTMLAppletElement setVspace:]):
1769         (-[DOMHTMLAppletElement width]):
1770         (-[DOMHTMLAppletElement setWidth:]):
1771         * bindings/objc/DOMInternal.h:
1772         (getDOMWrapper):
1773         (addDOMWrapper):
1774         (raiseOnDOMError):
1775         * bindings/objc/DOMXPath.mm:
1776         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
1777         * bindings/scripts/CodeGeneratorObjC.pm:
1778
1779 2006-09-24  Nikolas Zimmermann  <zimmermann@kde.org>
1780
1781         Reviewed by eseidel.
1782
1783         Fix Qt/Linux build after Dave's Scrollbar changes.
1784
1785         * platform/qt/PlatformScrollBar.h: (Somehow this contained the file twice! Removed one instance!)
1786         * platform/qt/TemporaryLinkStubs.cpp:
1787         (WebCore::ScrollBar::setProportion):
1788         (WebCore::PlatformScrollBar::updateThumbPosition):
1789         (WebCore::PlatformScrollBar::updateThumbProportion):
1790
1791 2006-09-24  Nikolas Zimmermann  <zimmermann@kde.org>
1792
1793         Reviewed by eseidel.
1794
1795         Qt/Linux build system changes: enable xpath/xslt by default.
1796         Offer possibility to change all of these using 'ccmake'.
1797
1798         * CMakeLists.txt:
1799
1800 2006-09-24  Dave Hyatt  <hyatt@apple.com>
1801
1802         Cleanup of Scrollbar APIs.  Rename setKnobProportion to setProportion.  Rename setScrollbarValue to updateThumbPosition.
1803         Give setProportion a base class implementation and implement it using the same pattern as setValue/updateThumbPosition (so that
1804         the base calls a protected virtual function, updateThumbProportion, implemented by the derived class to update the actual scrollbar itself).
1805
1806         * platform/ScrollBar.cpp:
1807         (WebCore::ScrollBar::setValue):
1808         (WebCore::ScrollBar::setProportion):
1809         * platform/ScrollBar.h:
1810         (WebCore::ScrollBar::value):
1811         * platform/mac/PlatformScrollBar.h:
1812         * platform/mac/PlatformScrollBarMac.mm:
1813         (WebCore::PlatformScrollBar::updateThumbPosition):
1814         (WebCore::PlatformScrollBar::updateThumbProportion):
1815         * platform/win/PlatformScrollBar.h:
1816         * platform/win/TemporaryLinkStubs.cpp:
1817         (PlatformScrollBar::updateThumbPosition):
1818         (PlatformScrollBar::updateThumbProportion):
1819         * rendering/RenderLayer.cpp:
1820         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1821
1822 2006-09-23  Alexey Proskuryakov  <ap@nypop.com>
1823
1824         Reviewed by Eric.
1825
1826         http://bugs.webkit.org/show_bug.cgi?id=4872
1827         XMLHttpRequest fails to throw an exception when there is a security violation
1828         (mismatching domains)
1829
1830         Raise an exception if there is a security violation, and also in cases required by
1831         the current draft of XHR specification.
1832
1833         * bindings/js/JSXMLHttpRequest.cpp:
1834         (KJS::JSXMLHttpRequest::getValueProperty): Raise an exception if a DOM method reports one.
1835         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Raise an exception if a DOM method
1836         reports one, and also if there were too few arguments passed. 
1837
1838         * bindings/js/kjs_binding.cpp:
1839         (KJS::setDOMException): Added support for custom XHR exceptions.
1840
1841         * xml/xmlhttprequest.h: Changed state names to match the current spec. Defined an
1842         exception code range for XHR exceptions.
1843
1844         * xml/xmlhttprequest.cpp:
1845         (WebCore::XMLHttpRequest::open): Removed a check for m_aborted that could never succeed.
1846         (WebCore::XMLHttpRequest::send):
1847         (WebCore::XMLHttpRequest::setRequestHeader):
1848         (WebCore::XMLHttpRequest::getStatus):
1849         (WebCore::XMLHttpRequest::getStatusText):
1850         (WebCore::XMLHttpRequest::processSyncLoadResults):
1851         (WebCore::XMLHttpRequest::receivedAllData):
1852         (WebCore::XMLHttpRequest::receivedData):
1853
1854 2006-09-22  Steve Falkenburg  <sfalken@apple.com>
1855
1856         Reviewed by Jeff Jenkins.
1857
1858         Tweak CF types.
1859
1860         * platform/cf/ResourceLoaderCFNet.cpp:
1861         (WebCore::willCacheResponse):
1862
1863 2006-09-22  Justin Garcia  <justin.garcia@apple.com>
1864
1865         Reviewed by darin
1866
1867         <http://bugs.webkit.org/show_bug.cgi?id=8029>
1868         Rename Node::isAncestor and RenderObject::hasAncestor to isDescendantOf
1869
1870         * dom/Document.cpp:
1871         (WebCore::Document::clearSelectionIfNeeded):
1872         * dom/Element.cpp:
1873         (WebCore::Element::contains):
1874         * dom/Node.cpp:
1875         (WebCore::Node::traverseNextNode):
1876         (WebCore::Node::traverseNextSibling):
1877         (WebCore::Node::traversePreviousNodePostOrder):
1878         (WebCore::Node::checkAddChild):
1879         (WebCore::Node::isDescendantOf):
1880         * dom/Node.h:
1881         * dom/NodeIterator.cpp:
1882         (WebCore::NodeIterator::notifyBeforeNodeRemoval):
1883         * editing/ApplyStyleCommand.cpp:
1884         (WebCore::ApplyStyleCommand::applyBlockStyle):
1885         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
1886         (WebCore::ApplyStyleCommand::applyInlineStyle):
1887         (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode):
1888         * editing/CompositeEditCommand.cpp:
1889         (WebCore::CompositeEditCommand::mergeIdenticalElements):
1890         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
1891         * editing/DeleteSelectionCommand.cpp:
1892         (WebCore::updatePositionForNodeRemoval):
1893         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
1894         (WebCore::DeleteSelectionCommand::mergeParagraphs):
1895         * editing/FormatBlockCommand.cpp:
1896         (WebCore::FormatBlockCommand::doApply):
1897         * editing/IndentOutdentCommand.cpp:
1898         (WebCore::enclosingListOrBlockquote):
1899         * editing/Selection.cpp:
1900         (WebCore::Selection::validate):
1901         * editing/SelectionController.cpp:
1902         (WebCore::SelectionController::nodeWillBeRemoved):
1903         * editing/TextIterator.cpp:
1904         (WebCore::SimplifiedBackwardsTextIterator::advance):
1905         * editing/VisiblePosition.cpp:
1906         (WebCore::VisiblePosition::next):
1907         (WebCore::VisiblePosition::previous):
1908         (WebCore::VisiblePosition::canonicalPosition):
1909         (WebCore::isFirstVisiblePositionInNode):
1910         (WebCore::isLastVisiblePositionInNode):
1911         * editing/htmlediting.cpp:
1912         (WebCore::firstEditablePositionAfterPositionInRoot):
1913         (WebCore::lastEditablePositionBeforePositionInRoot):
1914         (WebCore::enclosingNodeWithTag):
1915         (WebCore::enclosingList):
1916         (WebCore::enclosingListChild):
1917         * editing/markup.cpp:
1918         (WebCore::createMarkup):
1919
1920 2006-09-22  Timothy Hatcher  <timothy@apple.com>
1921
1922         Reviewed by Darin.
1923
1924         - Added @property syntax to non-generated headers
1925           inside #ifndef BUILDING_ON_TIGER.
1926         - Changed the DOMEventTarget protocol to have have new versions
1927           of addEventListener and removeEventListener with named parameters.
1928           These old style methods can be removed once Mail changes to use
1929           the new methods <rdar://problem/4746649>.
1930
1931         * WebCorePrefix.h: define BUILDING_ON_TIGER when Tiger is the target
1932         * bindings/objc/DOM.mm:
1933         (-[DOMNode addEventListener:listener:useCapture:]):
1934         (-[DOMNode addEventListener:::]): call the new method
1935         (-[DOMNode removeEventListener:listener:useCapture:]):
1936         (-[DOMNode removeEventListener:::]): call the new method
1937         * bindings/objc/DOMAbstractView.h:
1938         * bindings/objc/DOMEventTarget.h:
1939         * bindings/objc/DOMHTMLAppletElement.h:
1940         * bindings/objc/DOMHTMLEmbedElement.h:
1941         * bindings/objc/DOMHTMLOptionElement.h:
1942         * bindings/objc/DOMObject.h:
1943         * bindings/objc/DOMRGBColor.h:
1944
1945 2006-09-22  Nikolas Zimmermann  <zimmermann@kde.org>
1946
1947         Reviewed by Eric.
1948
1949         Fix Qt/Linux build and a really stupid mixup in GraphicsContextQt.
1950
1951         * platform/qt/FrameQt.cpp:
1952         * platform/qt/GraphicsContextQt.cpp:
1953         (WebCore::GraphicsContext::translate): Make it actually translate, not scale! :-)
1954         (WebCore::GraphicsContext::origin):
1955         * platform/qt/PlatformScrollBar.h: Added.
1956         (WebCore::PlatformScrollBar::isWidget):
1957         * platform/qt/WidgetQt.cpp:
1958         (WebCore::Widget::invalidate):
1959         (WebCore::Widget::invalidateRect):
1960
1961 2006-09-22  Dave Hyatt <hyatt@apple.com>
1962
1963         Super-minor tweaks to the systemFont function on Mac.
1964         Set the generic family to None rather than to Serif, and
1965         don't waste time setting the computed size, since that is
1966         set from the specified size over in CSSStyleSelector anyway.
1967
1968         * rendering/RenderThemeMac.mm:
1969         (WebCore::RenderThemeMac::systemFont):
1970
1971 2006-09-22  Timothy Hatcher  <timothy@apple.com>
1972
1973         Reviewed by Brady.
1974
1975         Build fix for Xcode 2.3. Convert GraphicsContext::translate() to
1976         take floats. There was already an implicit conversion to float/double
1977         when calling CGContextTranslateCTM or cairo_translate.
1978
1979         * platform/GraphicsContext.h:
1980         * platform/cairo/GraphicsContextCairo.cpp:
1981         (WebCore::GraphicsContext::translate):
1982         * platform/cg/GraphicsContextCG.cpp:
1983         (WebCore::GraphicsContext::translate):
1984
1985 2006-09-22  Brady Eidson  <beidson@apple.com>
1986
1987         Reviewed by Sfalken
1988
1989         Add redirect and other cleanup to ResourceLoaderWin.cpp
1990         Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10927
1991         Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10744
1992
1993         * WebCore.xcodeproj/project.pbxproj:
1994         * platform/ResourceLoader.h:
1995         * platform/win/ResourceLoaderWin.cpp:
1996         (WebCore::ResourceLoaderWndProc):
1997         (WebCore::initializeOffScreenResourceLoaderWindow):
1998         (WebCore::ResourceLoader::onHandleCreated):
1999         (WebCore::ResourceLoader::onRequestRedirected):
2000         (WebCore::ResourceLoader::onRequestComplete):
2001         (WebCore::transferJobStatusCallback):
2002
2003 2006-09-22  Alexey Proskuryakov  <ap@nypop.com>
2004
2005         Reviewed by Geoff.
2006
2007         http://bugs.webkit.org/show_bug.cgi?id=10803
2008         REGRESSION (r15536-r15544): manual-tests/bugzilla-6821.html failing
2009
2010         * page/FrameView.cpp:
2011         (WebCore::FrameView::hoverTimerFired): Use the current event.
2012
2013 2006-09-22  Nikolas Zimmermann  <zimmermann@kde.org>
2014
2015         Reviewed by Anders.
2016
2017         Fix (last) svg memory leak.
2018
2019         * ksvg2/svg/SVGTransformable.cpp: delete 't' in error case.
2020         (SVGTransformable::parseTransformAttribute):
2021
2022 2006-09-22  Eric Seidel  <eric@eseidel.com>
2023
2024         No review necessary, just removing a dead file.
2025
2026         Remove unused file (added previously by mistake) to make room for real implementation.
2027
2028         * platform/mac/BitmapImageMac.mm: Removed.
2029
2030 2006-09-22  Dave Hyatt <hyatt@apple.com>
2031
2032         Move PlatformScrollBar.h down into the platforms.
2033         
2034         Reviewed by andersca
2035
2036         * platform/PlatformScrollBar.h: Removed.
2037         * platform/win/PlatformScrollBar.h: Added.
2038         * platform/mac/PlatformScrollBar.h: Added.
2039
2040 2006-09-22   Dave Hyatt  <hyatt@apple.com>
2041
2042         Add support for invalidation of widgets.  This will be needed for the Win32 widget subsystem (and for
2043         any widget subsystems that don't have any underlying native objects backing the widgets.
2044
2045         Reviewed by anders
2046
2047         * platform/Widget.h:
2048         * platform/mac/WidgetMac.mm:
2049         (WebCore::Widget::invalidate):
2050         (WebCore::Widget::invalidateRect):
2051         * platform/win/TemporaryLinkStubs.cpp:
2052         (Widget::invalidate):
2053         (Widget::invalidateRect):
2054
2055 2006-09-22  Rob Buis  <buis@kd.org>
2056
2057         Reviewed by eseidel.
2058
2059         http://bugs.webkit.org/show_bug.cgi?id=10901
2060         Merge build fixes from unity
2061
2062         * CMakeLists.txt:
2063
2064 2006-09-21  Nikolas Zimmermann  <zimmermann@kde.org>
2065
2066         Reviewed by eseidel.
2067
2068         http://bugs.webkit.org/show_bug.cgi?id=10977
2069         SVGDocument does not expose 'rootElement' property
2070
2071         Enable 'rootElement' property.
2072
2073         * ksvg2/svg/SVGDocument.idl:
2074
2075 2006-09-21  Steve Falkenburg  <sfalken@apple.com>
2076
2077         Tweak includes.
2078
2079         * platform/ResourceLoaderInternal.h:
2080
2081 2006-09-21  Geoffrey Garen  <ggaren@apple.com>
2082
2083         build fixed. band happy.
2084         
2085         * platform/cg/GraphicsContextCG.cpp:
2086         (WebCore::GraphicsContext::translate):
2087         * platform/mac/WidgetMac.mm:
2088
2089 2006-09-21  Geoffrey Garen  <ggaren@apple.com>
2090
2091         Reviewed by Maciej.
2092         
2093         Some Widget refactoring.
2094
2095         * WebCore.vcproj/WebCore/WebCore.vcproj:
2096         * bridge/mac/FrameMac.mm:
2097         * bridge/win/FrameWin.cpp:
2098         (WebCore::FrameWin::runJavaScriptAlert):
2099         (WebCore::FrameWin::runJavaScriptConfirm):
2100         * bridge/win/PageWin.cpp:
2101         (WebCore::Page::Page):
2102         (WebCore::rootWindowForFrame):
2103         * html/CanvasRenderingContext2D.cpp:
2104         (WebCore::CanvasRenderingContext2D::translate):
2105         * page/FrameView.cpp:
2106         (WebCore::FrameView::isFrameView):
2107         * page/Page.h:
2108         (WebCore::Page::setInstanceHandle):
2109         (WebCore::Page::instanceHandle):
2110         * platform/GraphicsContext.h:
2111         * platform/ScrollView.h:
2112         * platform/Widget.h:
2113         * platform/cairo/GraphicsContextCairo.cpp:
2114         (WebCore::GraphicsContext::translate):
2115         (WebCore::GraphicsContext::origin):
2116         * platform/mac/WidgetMac.mm:
2117         (WebCore::Widget::clearFocus):
2118         * platform/win/ResourceLoaderWin.cpp:
2119         (WebCore::initializeOffScreenResourceLoaderWindow):
2120         * platform/win/ScreenWin.cpp:
2121         (WebCore::monitorInfo):
2122         * platform/win/ScrollViewWin.cpp:
2123         (WebCore::ScrollView::updateContents):
2124         (WebCore::ScrollView::visibleWidth):
2125         (WebCore::ScrollView::visibleHeight):
2126         (WebCore::ScrollView::visibleContentRect):
2127         (WebCore::ScrollView::viewportToContents):
2128         (WebCore::ScrollView::contentsToViewport):
2129         (WebCore::ScrollView::scrollBy):
2130         (WebCore::ScrollView::updateScrollInfo):
2131         (WebCore::ScrollView::updateScrollBars):
2132         * platform/win/SharedTimerWin.cpp:
2133         (WebCore::initializeOffScreenTimerWindow):
2134         * platform/win/TemporaryLinkStubs.cpp:
2135         (FrameView::updateBorder):
2136         (ScrollView::paint):
2137         (GraphicsContext::clip):
2138         * platform/win/WidgetWin.cpp:
2139         (WebCore::Widget::Widget):
2140         (WebCore::Widget::parentWindow):
2141         (WebCore::Widget::setParentWindow):
2142         (WebCore::Widget::frameGeometry):
2143         (WebCore::Widget::hasFocus):
2144         (WebCore::Widget::setFocus):
2145         (WebCore::Widget::show):
2146         (WebCore::Widget::hide):
2147         (WebCore::Widget::setFrameGeometry):
2148
2149 2006-09-22  Anders Carlsson  <acarlsson@apple.com>
2150
2151         Reviewed by Tim H.
2152
2153         * platform/TextEncoding.cpp:
2154         (WebCore::TextEncoding::backslashAsCurrencySymbol):
2155         Add comment clarifying why backslashAsCurrencySymbol is needed.
2156
2157 2006-09-21  Sean Gies  <seangies@apple.com>
2158
2159         Reviewed by Adam Roben.
2160
2161         Add utility functions to get and release HDC from GraphicsContext.
2162
2163         * platform/GraphicsContext.h: Add utilities to get and release HDC.
2164         * platform/cairo/GraphicsContextCairo.cpp: Implement new utilities.
2165         * rendering/RenderThemeWin.cpp: Switch to new utilities.
2166
2167 2006-09-21  Justin Garcia  <justin.garcia@apple.com>
2168
2169         Reviewed by anders
2170         
2171         <rdar://problem/4426622>
2172         Plain text paste slow.  Time spent mostly in WebCore::rebalanceWhitespaceInTextNode(...)
2173
2174         * editing/htmlediting.cpp:
2175         (WebCore::rebalanceWhitespaceInTextNode): We no longer need to use a RegExp replace because we
2176         aren't producing complicated sequences here.  Use multiple UChar -> UChar replaces instead for speed.
2177         Got rid of uses of DepricatedString.
2178
2179 2006-09-21  Nikolas Zimmermann  <zimmermann@kde.org>
2180
2181         Reviewed by eseidel.
2182
2183         Don't crash if no IconDatabase is available (ie. on Qt/Gdk)
2184
2185         * page/Frame.cpp:
2186         (WebCore::Frame::endIfNotLoading):
2187
2188 2006-09-21  Nikolas Zimmermann  <zimmermann@kde.org>
2189
2190         Reviewed by eseidel.
2191
2192         Fix Qt/Linux build.
2193
2194         * CMakeLists.txt:
2195         * kcanvas/device/qt/KCanvasClipperQt.h:
2196         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2197         * platform/qt/FrameQt.cpp:
2198         (WebCore::FrameQt::isLoadTypeReload):
2199         (WebCore::FrameQt::originalRequestURL):
2200         * platform/qt/FrameQt.h:
2201         * platform/qt/GraphicsContextQt.cpp:
2202         (WebCore::GraphicsContext::concatCTM):
2203         * platform/qt/ScrollViewQt.cpp:
2204         (WebCore::ScrollView::wheelEvent):
2205         * platform/qt/TemporaryLinkStubs.cpp:
2206         (WebCore::IconDatabase::setIconURLForPageURL):
2207
2208 2006-09-20  Justin Garcia  <justin.garcia@apple.com>
2209
2210         Reviewed by john
2211         
2212         <http://bugs.webkit.org/show_bug.cgi?id=7165>
2213         TinyMCE: Dragging & dropping content always leaves a copy when editing inside a subframe
2214
2215         * editing/MoveSelectionCommand.cpp:
2216         (WebCore::MoveSelectionCommand::MoveSelectionCommand): Set the document
2217         to the position-to-move-to's document, not the fragment's document.  The 
2218         fragment's document is the document used to create the fragment and is irrelavant.
2219
2220 === Safari-521.27 ===
2221
2222 2006-09-21  Brady Eidson  <beidson@apple.com>
2223
2224         Reviewed by Anders
2225
2226         When your assumption is "IconDatabase::sharedIconDatabase()" will never fail but it does, you're in trouble
2227         This fixes Spinneret so it won't crash on its first load!
2228
2229         * page/Frame.cpp:
2230         (WebCore::Frame::endIfNotLoading):
2231
2232 2006-09-21  Brady Eidson  <beidson@apple.com>
2233
2234         Build fix
2235
2236         * platform/win/TemporaryLinkStubs.cpp:
2237         (ScrollView::wheelEvent):
2238
2239 2006-09-20  Rob Buis  <buis@kde.org>
2240
2241         Reviewed by eseidel.
2242
2243         http://bugs.webkit.org/show_bug.cgi?id=10946
2244         new marker code draws end-marker in wrong place
2245
2246         Keep track of the start of the subpath so we can handle
2247         closeTo/moveTo correctly.
2248
2249         * kcanvas/RenderPath.cpp:
2250         (WebCore::DrawMarkersData::DrawMarkersData):
2251         (WebCore::updateMarkerDataForElement):
2252
2253 2006-09-21  David Hyatt <hyatt@apple.com>
2254
2255         Wheel scrolling prep for Win32.
2256
2257         WARNING: NO TEST CASES ADDED OR CHANGED
2258
2259         * platform/PlatformWheelEvent.h:
2260         * platform/ScrollBar.h:
2261         * platform/ScrollView.h:
2262         * platform/mac/ScrollViewMac.mm:
2263         (WebCore::ScrollView::wheelEvent):
2264         * rendering/RenderLayer.cpp:
2265
2266 2006-09-20  Timothy Hatcher  <timothy@apple.com>
2267
2268         Reviewed by Hyatt.
2269
2270         Bug 10917: REGRESSION (r16027): iFrame transparency broken
2271         http://bugs.webkit.org/show_bug.cgi?id=10917
2272
2273         Don't paint the base background color if we transparent.
2274
2275         * rendering/RenderBox.cpp:
2276         (WebCore::RenderBox::paintBackgroundExtended):
2277
2278 2006-09-20  Adam Roben  <aroben@apple.com>
2279
2280         Reviewed by andersca.
2281
2282         * platform/FileChooser.h: Remove no-longer-necessary namespace std
2283
2284 2006-09-20  Eric Seidel  <eric@eseidel.com>
2285
2286         Reviewed by beth.
2287
2288         Cleanup style in KCanvas.
2289         Remove extra white-space, unneeded arguments, etc.
2290
2291         * WebCore.xcodeproj/project.pbxproj:
2292         * kcanvas/KCanvasClipper.cpp:
2293         (WebCore::operator<<):
2294         (WebCore::KCanvasClipper::externalRepresentation):
2295         * kcanvas/KCanvasClipper.h:
2296         * kcanvas/KCanvasFilters.cpp:
2297         (WebCore::KCanvasFilter::externalRepresentation):
2298         (WebCore::operator<<):
2299         (WebCore::KCanvasFilterEffect::externalRepresentation):
2300         (WebCore::KCPointLightSource::externalRepresentation):
2301         (WebCore::KCSpotLightSource::externalRepresentation):
2302         (WebCore::KCDistantLightSource::externalRepresentation):
2303         (WebCore::KCanvasFEBlend::externalRepresentation):
2304         (WebCore::KCanvasFEColorMatrix::externalRepresentation):
2305         (WebCore::KCanvasFEComponentTransfer::externalRepresentation):
2306         (WebCore::KCanvasFEComposite::externalRepresentation):
2307         (WebCore::KCanvasFEConvolveMatrix::externalRepresentation):
2308         (WebCore::KCanvasFEDiffuseLighting::externalRepresentation):
2309         (WebCore::KCanvasFEDisplacementMap::externalRepresentation):
2310         (WebCore::KCanvasFEFlood::externalRepresentation):
2311         (WebCore::KCanvasFEGaussianBlur::externalRepresentation):
2312         (WebCore::KCanvasFEImage::externalRepresentation):
2313         (WebCore::KCanvasFEMerge::externalRepresentation):
2314         (WebCore::KCanvasFEMorphology::externalRepresentation):
2315         (WebCore::KCanvasFEOffset::externalRepresentation):
2316         (WebCore::KCanvasFESpecularLighting::externalRepresentation):
2317         (WebCore::KCanvasFETile::externalRepresentation):
2318         (WebCore::KCanvasFETurbulence::externalRepresentation):
2319         * kcanvas/KCanvasFilters.h:
2320         (WebCore::KCanvasFEDiffuseLighting::lightSource):
2321         (WebCore::KCanvasFESpecularLighting::lightSource):
2322         * kcanvas/KCanvasImage.h:
2323         * kcanvas/KCanvasMarker.cpp:
2324         (WebCore::KCanvasMarker::externalRepresentation):
2325         * kcanvas/KCanvasMarker.h:
2326         * kcanvas/KCanvasResource.cpp:
2327         (WebCore::operator<<):
2328         * kcanvas/KCanvasResource.h:
2329         * kcanvas/KCanvasTreeDebug.cpp:
2330         (WebCore::operator<<):
2331         (WebCore::writeIndent):
2332         (WebCore::writeStyle):
2333         (WebCore::write):
2334         (WebCore::writeRenderResources):
2335         * kcanvas/KCanvasTreeDebug.h:
2336         (WebCore::operator<<):
2337         * kcanvas/RenderForeignObject.cpp:
2338         (WebCore::RenderForeignObject::paint):
2339         * kcanvas/RenderPath.cpp:
2340         (WebCore::RenderPath::paint):
2341         (WebCore::drawStartAndMidMarkers):
2342         * kcanvas/RenderSVGContainer.cpp:
2343         (WebCore::RenderSVGContainer::paint):
2344         * kcanvas/RenderSVGImage.cpp:
2345         (WebCore::RenderSVGImage::translateForAttributes):
2346         * kcanvas/RenderSVGImage.h:
2347         * kcanvas/device/KRenderingDevice.cpp:
2348         (WebCore::KRenderingDevice::currentContext):
2349         (WebCore::KRenderingDevice::popContext):
2350         (WebCore::KRenderingDevice::pushContext):
2351         * kcanvas/device/KRenderingDevice.h:
2352         * kcanvas/device/KRenderingFillPainter.h:
2353         * kcanvas/device/KRenderingPaintServer.h:
2354         (WebCore::KRenderingPaintServer::KRenderingPaintServer):
2355         (WebCore::KRenderingPaintServer::activeClient):
2356         (WebCore::KRenderingPaintServer::setActiveClient):
2357         * kcanvas/device/KRenderingPaintServerGradient.cpp:
2358         (WebCore::operator<<):
2359         (WebCore::KRenderingPaintServerGradient::externalRepresentation):
2360         (WebCore::KRenderingPaintServerLinearGradient::externalRepresentation):
2361         (WebCore::KRenderingPaintServerGradient::listener):
2362         (WebCore::KRenderingPaintServerGradient::setListener):
2363         (WebCore::KRenderingPaintServerRadialGradient::externalRepresentation):
2364         * kcanvas/device/KRenderingPaintServerGradient.h:
2365         * kcanvas/device/KRenderingPaintServerPattern.cpp:
2366         (WebCore::KRenderingPaintServerPattern::tile):
2367         (WebCore::KRenderingPaintServerPattern::setTile):
2368         (WebCore::KRenderingPaintServerPattern::listener):
2369         (WebCore::KRenderingPaintServerPattern::setListener):
2370         (WebCore::KRenderingPaintServerPattern::externalRepresentation):
2371         * kcanvas/device/KRenderingPaintServerPattern.h:
2372         * kcanvas/device/KRenderingPaintServerSolid.cpp:
2373         (WebCore::KRenderingPaintServerSolid::externalRepresentation):
2374         * kcanvas/device/KRenderingPaintServerSolid.h:
2375         * kcanvas/device/KRenderingStrokePainter.cpp:
2376         (WebCore::KRenderingStrokePainter::strokeMiterLimit):
2377         (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
2378         * kcanvas/device/KRenderingStrokePainter.h:
2379         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
2380         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2381         (WebCore::KCanvasFilterQuartz::prepareFilter):
2382         * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
2383         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
2384         (WebCore::KCanvasMaskerQuartz::applyMask):
2385         * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
2386         (WebCore::KCanvasImageQuartz::init):
2387         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
2388         (WebCore::KCanvasClipperQuartz::applyClip):
2389         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2390         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2391         (WebCore::KRenderingDeviceQuartz::quartzContext):
2392         (WebCore::KRenderingDeviceQuartz::contextForImage):
2393         (WebCore::KRenderingDeviceQuartz::createPaintServer):
2394         (WebCore::KRenderingDeviceQuartz::createResource):
2395         (WebCore::KRenderingDeviceQuartz::createFilterEffect):
2396         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2397         (WebCore::CGShadingRefForLinearGradient):
2398         (WebCore::CGShadingRefForRadialGradient):
2399         (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
2400         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
2401         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
2402         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2403         (WebCore::KRenderingPaintServerQuartzHelper::strokePath):
2404         (WebCore::KRenderingPaintServerQuartzHelper::clipToStrokePath):
2405         (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
2406         (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
2407         (WebCore::KRenderingPaintServerSolidQuartz::draw):
2408         (WebCore::KRenderingPaintServerSolidQuartz::setup):
2409         (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
2410         (WebCore::KRenderingPaintServerPatternQuartz::setup):
2411         (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
2412         (WebCore::KRenderingPaintServerPatternQuartz::teardown):
2413         * kcanvas/device/quartz/QuartzSupport.h:
2414         * kcanvas/device/quartz/QuartzSupport.mm:
2415         (WebCore::applyStrokeStyleToContext):
2416
2417 2006-09-20  Anders Carlsson  <acarlsson@apple.com>
2418
2419         Reviewed by Dave Hyatt.
2420
2421         * dom/WheelEvent.cpp:
2422         (WebCore::WheelEvent::WheelEvent):
2423         Use lroundf instead of lround since deltas are floats.
2424
2425 2006-09-20  Julien Palmas  <julien.palmas@gmail.com>
2426
2427         Reviewed by eseidel.  Landed by eseidel.
2428
2429         Test: svg/custom/pattern-y-offset.svg
2430
2431         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2432         (WebCore::KRenderingPaintServerPatternQuartz::setup):
2433
2434 2006-09-20  David Hyatt  <hyatt@apple.com>
2435
2436         Add a new wheelEvent method to ScrollView.  Platforms that wish
2437         to handle the wheel event for the scroll view themselves can then
2438         do so there.  (Mac lets the underlying NSScrollView do it for now.)
2439
2440         * page/FrameView.cpp:
2441         (WebCore::FrameView::handleWheelEvent):
2442         * platform/ScrollView.h:
2443         (WebCore::ScrollView::wheelEvent):
2444
2445 2006-09-20  Brady Eidson  <beidson@apple.com>
2446
2447         Reviewed by Tim Omernick
2448
2449         Part of fixing a crash Tim O showed me that I missed in a release build.
2450         WebKit should be able to call through the bridge to WebCore no matter what -
2451         Replace the _iconDB member with calls to IconDatabase::sharedIconDatabase()
2452
2453         * bridge/mac/WebCoreIconDatabaseBridge.h:
2454         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2455         (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
2456         (-[WebCoreIconDatabaseBridge isOpen]):
2457         (-[WebCoreIconDatabaseBridge removeAllIcons]):
2458         (-[WebCoreIconDatabaseBridge _isEmpty]):
2459         (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
2460         (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
2461         (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
2462         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
2463         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
2464         (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
2465         (-[WebCoreIconDatabaseBridge retainIconForURL:]):
2466         (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
2467         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
2468         (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
2469         (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
2470         (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
2471         (-[WebCoreIconDatabaseBridge _setEnabled:]):
2472         (-[WebCoreIconDatabaseBridge _isEnabled]):
2473
2474 2006-09-20  Anders Carlsson  <acarlsson@apple.com>
2475
2476         Reviewed by Darin.
2477
2478         Add String::split which returns a Vector of Strings and use it instead of 
2479         DeprecatedStringList.
2480         
2481         * bindings/js/kjs_events.cpp:
2482         (KJS::Clipboard::getValueProperty):
2483         * bindings/js/kjs_window.cpp:
2484         (KJS::parseModalDialogFeatures):
2485         * css/MediaList.cpp:
2486         (WebCore::MediaList::setMediaText):
2487         * dom/Clipboard.h:
2488         * html/HTMLFormElement.cpp:
2489         (WebCore::HTMLFormElement::formData):
2490         * html/HTMLLinkElement.cpp:
2491         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
2492         * platform/PlatformString.h:
2493         * platform/String.cpp:
2494         (WebCore::String::split):
2495         * platform/StringImpl.cpp:
2496         * platform/StringImpl.h:
2497         * platform/mac/ClipboardMac.h:
2498         * platform/mac/ClipboardMac.mm:
2499         (WebCore::ClipboardMac::types):
2500
2501 2006-09-20  Justin Garcia  <justin.garcia@apple.com>
2502
2503         Reviewed by harrison
2504
2505         * css/cssstyleselector.cpp:
2506         (WebCore::CSSStyleSelector::adjustRenderStyle): Don't call 
2507         HTMLElement::isContentEditable just to check the Frame's editability, since
2508         it calls updateRenderering, which can get us into infinite recursion.
2509
2510 2006-09-20  Brady Eidson  <beidson@apple.com>
2511
2512         Reviewed by Darin
2513
2514         Cleaned up my last patch alot, and made the WebCore icon database disabled by default
2515
2516         * loader/icon/IconDatabase.cpp:
2517         (WebCore::IconDatabase::IconDatabase): Disabled by default
2518         (WebCore::IconDatabase::removeAllIcons): Respect just isOpen() (disabled database will always be closed)
2519         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto
2520         (WebCore::IconDatabase::iconForPageURL): Ditto
2521         (WebCore::IconDatabase::isIconExpiredForIconURL): Ditto
2522         (WebCore::IconDatabase::iconURLForPageURL): Ditto
2523         (WebCore::IconDatabase::retainIconForPageURL): Ditto
2524         (WebCore::IconDatabase::releaseIconForPageURL): Ditto
2525         (WebCore::IconDatabase::setIconDataForIconURL): Ditto
2526         (WebCore::IconDatabase::setIconURLForPageURL): Ditto
2527         (WebCore::IconDatabase::hasEntryForIconURL): Ditto
2528         (WebCore::IconDatabase::setEnabled): Fixed a big bug here!
2529
2530 2006-09-20  Adam Roben  <aroben@apple.com>
2531
2532         Reviewed by Adele.
2533
2534         Fixes http://bugs.webkit.org/show_bug.cgi?id=10935
2535         REGRESSION: file upload control with direction:rtl or text-align:right
2536         draws button on top of filename/icon
2537
2538         * rendering/RenderFileUploadControl.cpp:
2539         (WebCore::RenderFileUploadControl::setStyle): Force text-align to
2540         match direction
2541         (WebCore::RenderFileUploadControl::paintObject): Fix positioning of
2542         the filename and icon in RTL
2543
2544 2006-09-20  Alice Liu  <alice.liu@apple.com>
2545
2546         Reviewed by Adam Roben.
2547
2548         fixed windows build
2549
2550         * dom/WheelEvent.cpp:
2551         (WebCore::WheelEvent::WheelEvent):
2552         changed lrint to lround
2553
2554 2006-09-20  Sam Weinig  <sam.weinig@gmail.com>
2555
2556         Build Fix.  Adds isHorizontal attribute back to WheelEvent
2557         for the Objective-C bindings.  If it is found that isHorizontal
2558         is not used, we should remove it again but also remove it's
2559         declaration from PublicDOMInterfaces.h
2560
2561         * dom/WheelEvent.h:
2562         (WebCore::WheelEvent::isHorizontal):
2563         * dom/WheelEvent.idl:
2564
2565 2006-09-20  David Hyatt  <hyatt@apple.com>
2566
2567         Fix for 10945, WheelEvent should support two dimensions at once, since
2568         MacBooks allow for diagonal scrolling.  Also enhance the PlatformWheelEvent
2569         to allow for diagonal scrolling.
2570
2571         Reviewed by Eric
2572
2573         * dom/EventTargetNode.cpp:
2574         (WebCore::EventTargetNode::dispatchWheelEvent):
2575         * dom/WheelEvent.cpp:
2576         (WebCore::WheelEvent::WheelEvent):
2577         (WebCore::WheelEvent::initWheelEvent):
2578         * dom/WheelEvent.h:
2579         (WebCore::WheelEvent::wheelDelta):
2580         (WebCore::WheelEvent::wheelDeltaX):
2581         (WebCore::WheelEvent::wheelDeltaY):
2582         * dom/WheelEvent.idl:
2583         * page/FrameView.cpp:
2584         (WebCore::FrameView::handleWheelEvent):
2585         * platform/PlatformWheelEvent.h:
2586         (WebCore::PlatformWheelEvent::deltaX):
2587         (WebCore::PlatformWheelEvent::deltaY):
2588         (WebCore::PlatformWheelEvent::normalize):
2589         * platform/mac/WheelEventMac.mm:
2590         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2591
2592 2006-09-19  Eric Seidel  <eric@eseidel.com>
2593
2594         Reviewed by hyatt.
2595
2596         Split KCanvasResources.* into multiple files (and some other minor spacing changes).
2597         
2598         No tests were harmed in the making of this patch.
2599
2600         * WebCore.xcodeproj/project.pbxproj:
2601         * kcanvas/KCanvasClipper.cpp: Added.
2602         (WebCore::operator<<):
2603         * kcanvas/KCanvasClipper.h: Added.
2604         * kcanvas/KCanvasFilters.h:
2605         * kcanvas/KCanvasImage.h:
2606         * kcanvas/KCanvasMarker.cpp: Added.
2607         * kcanvas/KCanvasMarker.h: Added.
2608         * kcanvas/KCanvasMasker.cpp: Added.
2609         (WebCore::KCanvasMasker::KCanvasMasker):
2610         (WebCore::KCanvasMasker::setMask):
2611         (WebCore::KCanvasMasker::externalRepresentation):
2612         (WebCore::getMaskerById):
2613         * kcanvas/KCanvasMasker.h: Added.
2614         * kcanvas/KCanvasResource.cpp: Added.
2615         (WebCore::KCanvasResource::invalidate):
2616         (WebCore::KCanvasResource::externalRepresentation):
2617         (WebCore::getResourceById):
2618         (WebCore::getPaintServerById):
2619         * kcanvas/KCanvasResource.h: Added.
2620         * kcanvas/KCanvasResources.cpp: Removed.
2621         * kcanvas/KCanvasResources.h: Removed.
2622         * kcanvas/RenderPath.cpp:
2623         * kcanvas/RenderSVGContainer.cpp:
2624         * kcanvas/RenderSVGImage.cpp:
2625         * kcanvas/RenderSVGText.cpp:
2626         * kcanvas/device/KRenderingPaintServer.h:
2627         * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
2628         * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
2629         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2630         * ksvg2/svg/SVGClipPathElement.h:
2631         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2632         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2633         * ksvg2/svg/SVGFECompositeElement.cpp:
2634         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2635         * ksvg2/svg/SVGFELightElement.cpp:
2636         * ksvg2/svg/SVGFEOffsetElement.cpp:
2637         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2638         * ksvg2/svg/SVGFilterElement.cpp:
2639         * ksvg2/svg/SVGLinearGradientElement.cpp:
2640         * ksvg2/svg/SVGMarkerElement.h:
2641         * ksvg2/svg/SVGMaskElement.h:
2642
2643 2006-09-19  Brady Eidson <beidson@apple.com>
2644
2645         Reviewed by Sarge Decker
2646
2647         <rdar://problem/4739892> and <rdar://problem/4729797>
2648         - WebCore::IconDatabase needs to have and respect an enabled() flag
2649         - Mail on ToT WebKit crashes in IconDatabase code when mailing a page from Safari
2650
2651         * bridge/mac/WebCoreIconDatabaseBridge.h:
2652         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2653         (-[WebCoreIconDatabaseBridge _setEnabled:]): Added
2654         (-[WebCoreIconDatabaseBridge _isEnabled]): Added
2655         * loader/icon/IconDatabase.cpp:
2656         (WebCore::IconDatabase::IconDatabase):
2657         (WebCore::IconDatabase::open): Don't open if disabled
2658         (WebCore::IconDatabase::removeAllIcons): Ignore if disabled/closed
2659         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ignore if disabled/closed
2660         (WebCore::IconDatabase::iconForPageURL): Default Icon if disabled/closed
2661         (WebCore::IconDatabase::isIconExpiredForIconURL): Default return if disabled/closed
2662         (WebCore::IconDatabase::iconURLForPageURL): Default return if disabled/closed
2663         (WebCore::IconDatabase::retainIconForPageURL): Ignore if disabled/closed
2664         (WebCore::IconDatabase::releaseIconForPageURL): Ignore if disabled/closed
2665         (WebCore::IconDatabase::releaseIconURL):
2666         (WebCore::IconDatabase::setIconDataForIconURL): Ignore if disabled/closed
2667         (WebCore::IconDatabase::setIconURLForPageURL): Ignore if disabled/closed
2668         (WebCore::IconDatabase::hasEntryForIconURL): Default return if disabled/closed
2669         (WebCore::IconDatabase::setEnabled): Added
2670         * loader/icon/IconDatabase.h:
2671         (WebCore::IconDatabase::enabled): Added
2672         * page/Frame.cpp:
2673         (WebCore::Frame::endIfNotLoading): do an IconDatabase::enabled() check before bothering to load the icon
2674         * platform/mac/ResourceLoaderMac.mm: Removed extraneous #include
2675
2676 2006-09-20  David Hyatt  <hyatt@apple.com>
2677
2678         Massage mouse wheel handling so that it is more cross-platform.  Make
2679         all the work happen in handleWheelEvent on the FrameView.
2680
2681         Reviewed by bradee-oh
2682
2683         * bridge/mac/FrameMac.mm:
2684         (WebCore::FrameMac::wheelEvent):
2685         * page/FrameView.cpp:
2686         (WebCore::FrameView::handleWheelEvent):
2687         * platform/PlatformWheelEvent.h:
2688         (WebCore::PlatformWheelEvent::platformDelta):
2689         (WebCore::PlatformWheelEvent::delta):
2690         * platform/mac/WheelEventMac.mm:
2691         (WebCore::platformDeltaForEvent):
2692         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2693         * rendering/RenderLayer.cpp:
2694         (WebCore::RenderLayer::scroll):
2695         * rendering/RenderObject.cpp:
2696         (WebCore::RenderObject::scroll):
2697
2698 2006-09-19  Eric Seidel  <eric@eseidel.com>
2699
2700         Reviewed by adele.
2701
2702         Improve test output for filters with bounding-box relative sizes.
2703         http://bugs.webkit.org/show_bug.cgi?id=8585
2704
2705         Many test results updated.
2706
2707         * kcanvas/KCanvasFilters.cpp:
2708         (WebCore::KCanvasFilter::externalRepresentation):
2709
2710 2006-09-19  Eric Seidel  <eric@eseidel.com>
2711
2712         Reviewed by adele.
2713         
2714         Markers should clip to their viewport.
2715         http://bugs.webkit.org/show_bug.cgi?id=5967
2716
2717         Test: svg/custom/marker-overflow-clip.svg
2718
2719         * kcanvas/KCanvasResources.cpp:
2720         (WebCore::KCanvasMarker::KCanvasMarker):
2721         (WebCore::KCanvasMarker::setMarker):
2722         (WebCore::KCanvasMarker::draw):
2723         * kcanvas/KCanvasResources.h:
2724         (WebCore::KCanvasMasker::mask):
2725         * ksvg2/svg/SVGMarkerElement.cpp:
2726         (WebCore::SVGMarkerElement::SVGMarkerElement):
2727         (WebCore::SVGMarkerElement::parseMappedAttribute):
2728         (WebCore::SVGMarkerElement::canvasResource):
2729         (WebCore::SVGMarkerElement::createRenderer):
2730
2731 2006-09-19  Justin Garcia  <justin.garcia@apple.com>
2732
2733         Reviewed by eseidel
2734
2735         Backing out my recent change.
2736
2737         * css/cssstyleselector.cpp:
2738         (WebCore::CSSStyleSelector::adjustRenderStyle): 
2739
2740 2006-09-19  Brady Eidson  <beidson@apple.com>
2741
2742         Reviewed by Kevin McCullough
2743
2744         http://bugs.webkit.org/show_bug.cgi?id=10940
2745         Opening a PDF in a new tab/window creates a documentless-frame
2746         and we deref the document without checking its validity
2747
2748         * page/Frame.cpp:
2749         (WebCore::Frame::iconURL):
2750
2751 2006-09-19  Justin Garcia  <justin.garcia@apple.com>
2752
2753         Reviewed by harrison
2754         
2755         <rdar://problem/4735272>
2756         Can not click into link in programmatically editable content
2757
2758         * css/cssstyleselector.cpp:
2759         (WebCore::CSSStyleSelector::adjustRenderStyle): We stopped using
2760         userModify to implement document wide editability.
2761
2762 2006-09-19  MorganL  <morlmor@yahoo.com>
2763
2764         Reviewed by Darin and landed by Brady
2765
2766         Fixes http://bugs.webkit.org/show_bug.cgi?id=10939
2767         Build broken when SVG is not enabled.
2768
2769         * dom/XMLTokenizer.cpp:
2770         (WebCore::XMLTokenizer::startElementNs):
2771
2772 2006-09-19  Justin Garcia  <justin.garcia@apple.com>
2773
2774         Reviewed by harrison
2775         
2776         <rdar://problem/4727383> REGRESSION: Pasting plain text with tabs into Blot converts the tabs to single spaces
2777
2778         Pasting plain text results in a match style paste, and the insertion
2779         position is whitespace normal, which clobbers the whitespace:pre on 
2780         tab spans.  Skip changes to the whitespace mode when computing a style
2781         change for tab spans or the text nodes inside tab spans.
2782
2783         * editing/ApplyStyleCommand.cpp:
2784         (WebCore::StyleChange::init): Don't change the whitespace mode inside
2785         tab spans.
2786
2787 2006-09-19  David Hyatt  <hyatt@apple.com>
2788
2789         Fix for bug 5298, shape=default not supported for image maps.  Implement
2790         support for it.
2791
2792         Reviewed by timo
2793
2794         * html/HTMLAreaElement.cpp:
2795         (WebCore::HTMLAreaElement::getRegion):
2796         * html/HTMLMapElement.cpp:
2797         (WebCore::HTMLMapElement::mapMouseEvent):
2798
2799 2006-09-19  Adam Roben  <aroben@apple.com>
2800
2801         Reviewed by Adele.
2802
2803         Fixes http://bugs.webkit.org/show_bug.cgi?id=10824
2804         "no file selected" placeholder text missing from file upload control
2805
2806         * WebCore.xcodeproj/project.pbxproj:
2807         * rendering/RenderFileUploadControl.cpp: Remove class
2808         RenderFileUploadInnerFileBox, rename defaultFilenameNumChars to
2809         defaultWidthNumChars
2810         (WebCore::RenderFileUploadControl::RenderFileUploadControl): Call
2811         RenderBlock constructor instead of RenderFlexibleBox, 
2812         (WebCore::RenderFileUploadControl::setStyle): Remove references to
2813         m_fileBox.
2814         (WebCore::RenderFileUploadControl::valueChanged): Call repaint()
2815         instead of updateIconAndFileName() (which has been removed)
2816         (WebCore::RenderFileUploadControl::updateFromElement): Remove
2817         references to m_fileBox, don't call updateIconAndFilename()
2818         (WebCore::RenderFileUploadControl::maxFilenameWidth): Calculate width
2819         without using m_fileBox
2820         (WebCore::RenderFileUploadControl::createButtonStyle): Remove
2821         now-unnecessary display:box rule.
2822         (WebCore::RenderFileUploadControl::paintObject): Remove redundant call
2823         to paintingDisabled() now that Icon::paint() does it, and add code to
2824         paint the filename directly.
2825         (WebCore::RenderFileUploadControl::calcMinMaxWidth): Move this method
2826         out of RenderFileUploadInnerFileBox and into RenderFileUploadControl
2827         * rendering/RenderFileUploadControl.h: Make RenderFileUploadControl a
2828         subclass of RenderBlock instead of RenderFlexibleBox, remove
2829         updateIconAndFilename() method, remove m_fileBox instance variable.
2830
2831 2006-09-19  Eric Seidel  <eric@eseidel.com>
2832
2833         Reviewed by hyatt.
2834
2835         Exceptions thrown from <script> tags in XHTML/SVG docs show the wrong line numbers
2836         http://bugs.webkit.org/show_bug.cgi?id=10846
2837         
2838         No automated test case possible until http://bugs.webkit.org/show_bug.cgi?id=10905 is resolved.
2839
2840         * dom/XMLTokenizer.cpp:
2841         (WebCore::XMLTokenizer::XMLTokenizer):
2842         (WebCore::XMLTokenizer::startElementNs):
2843         (WebCore::XMLTokenizer::endElementNs):
2844
2845 2006-09-19  Krzysztof Kowalczyk <kkowalczyk@gmail.com>
2846
2847         Reviewed by eseidel.  Landed by eseidel.
2848         
2849         Build fix only, no tests affected.
2850
2851         * platform/gdk/FontPlatformDataGdk.cpp:
2852         (WebCore::FontPlatformData::FontPlatformData):
2853         (WebCore::FontPlatformData::~FontPlatformData):
2854         * platform/gdk/FrameGdk.h:
2855         * platform/gdk/TemporaryLinkStubs.cpp:
2856         (FrameGdk::isLoadTypeReload):
2857         (FrameGdk::originalRequestURL):
2858         (IconDatabase::setIconURLForPageURL):
2859
2860 2006-09-19  David Hyatt  <hyatt@apple.com>
2861
2862         Refine the fix for 9805 to really get all the complex cases right.
2863
2864         Reviewed by Eric
2865
2866         * rendering/RenderBlock.cpp:
2867         (WebCore::RenderBlock::clearFloatsIfNeeded):
2868         (WebCore::RenderBlock::handleBottomOfBlock):
2869
2870 2006-09-18  David Hyatt  <hyatt@apple.com>
2871
2872         Fix for 9805, <hr> not positioned properly following a previous empty sibling
2873         that had clear:both set on it.  Update self-collapsing block clearance
2874         behavior to match what is specified in the latest draft of CSS2.1.
2875
2876         Reviewed by Eric
2877
2878         Added fast/block/margin-collapse/empty-clear-blocks.html
2879
2880         * rendering/RenderBlock.cpp:
2881         (WebCore::RenderBlock::clearFloatsIfNeeded):
2882         (WebCore::RenderBlock::handleBottomOfBlock):
2883
2884 2006-09-18  MorganL  <morlmor@yahoo.com>
2885
2886         Reviewed by Brady, landed by Brady
2887
2888         Send receivedResponse callback to ResourceLoaderClient when loading
2889         file URLs.
2890
2891         See http://bugs.webkit.org/show_bug.cgi?id=10845
2892
2893         * platform/win/ResourceLoaderWin.cpp:
2894         (WebCore::ResourceLoader::fileLoadTimer):
2895
2896 2006-09-18  Brady Eidson  <beidson@apple.com>
2897
2898         Reviewed by Anders
2899
2900         <rdar://problem/3028061> - WebKit never updates favicon
2901         The WebKit enforced expiration date for icons has worked for some time, but the
2902         move to the new Icon Loader broke the "always get the icon if the user refreshes the page" 
2903         functionality.  This patch fixes that up, along with some other architectural improvements,
2904         the main one being that WebCore::Document now contains an iconURL for the Frame to query if needed.
2905
2906         * bridge/mac/FrameMac.h: Added isLoadTypeReload()
2907         * bridge/mac/FrameMac.mm:
2908         (WebCore::FrameMac::isLoadTypeReload): Implementation, calls into the bridge
2909         * bridge/mac/WebCoreFrameBridge.h: Added isLoadTypeReload:
2910         * bridge/win/FrameWin.h: Added isLoadTypeReload() for temporary link stub
2911         * dom/Document.h: Added m_iconURL
2912         (WebCore::Document::iconURL): Added
2913         (WebCore::Document::setIconURL): Ditto
2914         * html/HTMLLinkElement.cpp:
2915         (WebCore::HTMLLinkElement::process): Sets the iconURL in the Document instead of the Frame
2916         * page/Frame.cpp:
2917         (WebCore::Frame::iconURL): Calculates the iconURL based on the document, then the default favicon.ico url
2918         (WebCore::Frame::endIfNotLoading): Checks for the load type - always loads icon on Reload
2919         * page/Frame.h: Nuked setIconURL(), added isLoadTypeReload()
2920         * page/FramePrivate.h: Nuked IconURL
2921         * platform/win/TemporaryLinkStubs.cpp:
2922         (FrameWin::isLoadTypeReload):
2923
2924 2006-09-18  Sam Weinig  <sam.weinig@gmail.com>
2925
2926         Reviewed by Tim H.
2927
2928         - Re-add private method [DOMRGBColor _color] to DOMPrivate.h as
2929           it is it turns out that AppKit uses it.
2930
2931         * bindings/objc/DOMPrivate.h:
2932         * bindings/objc/DOMRGBColor.mm:
2933         (-[DOMRGBColor _color]):
2934
2935 2006-09-18  Sam Weinig  <sam.weinig@gmail.com>
2936
2937         Reviewed by Tim H.
2938
2939         Patch for http://bugs.webkit.org/show_bug.cgi?id=10903
2940         Yet Another Objective-C Bindings Patch
2941
2942         - Whitespace cleanup for IDLParser.pm
2943
2944         - Split DOMException, DOMRangeException, DOMXPathException, DOMEventsException
2945           and DOMAbstractView into their own files.
2946
2947         - Remove private method [DOMRGBColor _color] from DOMPrivate.h as
2948           it is not used and a public method is available now.
2949
2950         - Remove internal method [DOMDocument _ownerElement] from DOMInternal.h
2951           as it not used.
2952
2953         - Auto-generate method isContentEditable for DOMNode.
2954
2955         - General cleanup of bindings code including removing unneeded #imports
2956           and whitespace cleanup
2957
2958         * WebCore.xcodeproj/project.pbxproj:
2959         * bindings/objc/DOM.mm:
2960         (addElementClass):
2961         (elementClass):
2962         (-[DOMNode _initWithNode:WebCore::]):
2963         (+[DOMNode _nodeWith:WebCore::]):
2964         (-[DOMNode WebCore::]):
2965         (-[DOMNode KJS::Bindings::]):
2966         (-[DOMNode addEventListener:::]):
2967         (-[DOMNode removeEventListener:::]):
2968         (-[DOMNode dispatchEvent:]):
2969         (-[DOMElement image]):
2970         (-[DOMElement _font]):
2971         (-[DOMElement _imageTIFFRepresentation]):
2972         (-[DOMElement _getURLAttribute:]):
2973         (-[DOMElement _NPObject]):
2974         (-[DOMElement isFocused]):
2975         (-[DOMRange dealloc]):
2976         (-[DOMRange finalize]):
2977         (-[DOMRange description]):
2978         (-[DOMRange startContainer]):
2979         (-[DOMRange startOffset]):
2980         (-[DOMRange endContainer]):
2981         (-[DOMRange endOffset]):
2982         (-[DOMRange collapsed]):
2983         (-[DOMRange commonAncestorContainer]):
2984         (-[DOMRange setStart::]):
2985         (-[DOMRange setEnd::]):
2986         (-[DOMRange setStartBefore:]):
2987         (-[DOMRange setStartAfter:]):
2988         (-[DOMRange setEndBefore:]):
2989         (-[DOMRange setEndAfter:]):
2990         (-[DOMRange collapse:]):
2991         (-[DOMRange selectNode:]):
2992         (-[DOMRange selectNodeContents:]):
2993         (-[DOMRange compareBoundaryPoints::]):
2994         (-[DOMRange deleteContents]):
2995         (-[DOMRange extractContents]):
2996         (-[DOMRange cloneContents]):
2997         (-[DOMRange insertNode:]):
2998         (-[DOMRange surroundContents:]):
2999         (-[DOMRange cloneRange]):
3000         (-[DOMRange toString]):
3001         (-[DOMRange detach]):
3002         (-[DOMRange _initWithRange:WebCore::]):
3003         (+[DOMRange _rangeWith:WebCore::]):
3004         (-[DOMRange WebCore::]):
3005         (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
3006         (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
3007         (-[DOMNodeFilter WebCore::]):
3008         (-[DOMNodeFilter dealloc]):
3009         (-[DOMNodeFilter finalize]):
3010         (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
3011         (-[DOMNodeIterator WebCore::]):
3012         (+[DOMNodeIterator _nodeIteratorWith:WebCore::filter:]):
3013         (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
3014         (-[DOMTreeWalker WebCore::]):
3015         (+[DOMTreeWalker _treeWalkerWith:WebCore::filter:]):
3016         (ObjCNodeFilterCondition::acceptNode):
3017         (-[DOMDocument createNodeIterator::::]):
3018         (-[DOMDocument createTreeWalker::::]):
3019         (ObjCEventListener::find):
3020         (ObjCEventListener::create):
3021         (ObjCEventListener::handleEvent):
3022         * bindings/objc/DOMAbstractView.h: Added.
3023         * bindings/objc/DOMAbstractView.mm: Added.
3024         (-[DOMAbstractView document]):
3025         (-[DOMAbstractView WebCore::]):
3026         (-[DOMAbstractView _initWithAbstractView:WebCore::]):
3027         (+[DOMAbstractView _abstractViewWith:WebCore::]):
3028         * bindings/objc/DOMCSS.mm:
3029         (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
3030         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
3031         (+[DOMCSSStyleSheet _CSSStyleSheetWith:WebCore::]):
3032         (-[DOMCSSRule _initWithRule:WebCore::]):
3033         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
3034         (-[DOMCSSValue _initWithValue:WebCore::]):
3035         (+[DOMCSSValue _CSSValueWith:WebCore::]):
3036         (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:WebCore::]):
3037         (-[DOMDocument getComputedStyle::]):
3038         (-[DOMDocument getMatchedCSSRules::]):
3039         * bindings/objc/DOMCore.h:
3040         * bindings/objc/DOMEventException.h: Added.
3041         * bindings/objc/DOMEvents.h:
3042         * bindings/objc/DOMEvents.mm:
3043         * bindings/objc/DOMException.h: Added.
3044         * bindings/objc/DOMHTML.mm:
3045         (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
3046         (viewForElement):
3047         (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
3048         (-[DOMHTMLInputElement _selectedRange]):
3049         (-[DOMHTMLInputElement _setAutofilled:]):
3050         * bindings/objc/DOMInternal.h:
3051         * bindings/objc/DOMObject.h:
3052         * bindings/objc/DOMPrivate.h:
3053         * bindings/objc/DOMRange.h:
3054         * bindings/objc/DOMRangeException.h: Added.
3055         * bindings/objc/DOMViews.h:
3056         * bindings/objc/DOMViews.mm: Removed.
3057         * bindings/objc/DOMXPath.h:
3058         * bindings/objc/DOMXPathException.h: Added.
3059         * bindings/scripts/IDLParser.pm:
3060         * dom/Node.idl:
3061
3062 2006-09-18  Brady Eidson  <beidson@apple.com>
3063
3064         Windows build fix
3065
3066         * platform/win/TemporaryLinkStubs.cpp:
3067         (IconDatabase::setIconURLForPageURL):
3068
3069 2006-09-18  David Hyatt  <hyatt@apple.com>
3070
3071         Fix for bug 3969, hr width doesn't update when it clears a float.  This
3072         was also a problem with tables and overflow sections.
3073
3074         Reviewed by Eric
3075
3076         Added fast/block/float/width-update-after-clear.html
3077
3078         * rendering/RenderBlock.cpp:
3079         (WebCore::RenderBlock::collapseMargins):
3080         (WebCore::RenderBlock::clearFloatsIfNeeded):
3081
3082 2006-09-18  Brady Eidson  <beidson@apple.com>
3083
3084         Reviewed by John
3085
3086         http://bugs.webkit.org/show_bug.cgi?id=10907
3087         REGRESSION: New Icon Loaders don't handle certain non-server-root URLs correctly
3088
3089         * bridge/mac/FrameMac.h: Changed originalRequestURL() to virtual
3090         * bridge/win/FrameWin.h: Added originalRequestURL()
3091         * loader/icon/IconLoader.cpp:
3092         (IconLoader::receivedAllData): Moved the "pageURL to iconURL mapping logic" to Frame::commitIconURLToIconDatabase()
3093         * page/Frame.cpp:
3094         (WebCore::Frame::iconURL): Construct the icon URL from *only* the protocol and host of the frame's url.
3095         (WebCore::Frame::endIfNotLoading): Call commitIconURLToIconDatabase() if we're not kicking off an icon load
3096         (WebCore::Frame::commitIconURLToIconDatabase): Map the completed doc's pageURL to the iconURL
3097         * page/Frame.h: Added pure virtual originalRequestURL()
3098         * platform/win/TemporaryLinkStubs.cpp:
3099         (FrameWin::originalRequestURL): Added
3100
3101 2006-09-18  Rob Buis  <buis@kde.org>
3102
3103         Reviewed by Maciej.
3104
3105         http://bugs.webkit.org/show_bug.cgi?id=10807
3106         REGRESSION (r16259): Repro crash on manual-tests/svg-repaint-image.svg
3107
3108         Make sure the paint method is not exited without popping
3109         context and transparency layer.
3110
3111         WARNING: NO TEST CASES ADDED OR CHANGED
3112
3113         * kcanvas/RenderSVGImage.cpp:
3114         (WebCore::RenderSVGImage::paint):
3115
3116 2006-09-18  Graham Dennis  <graham.dennis@gmail.com>
3117
3118         Reviewed by Eric.
3119         
3120         - fix for http://bugs.webkit.org/show_bug.cgi?id=10896
3121         REGRESSION: WebKit can't be built with SVG disabled
3122         
3123         * bindings/scripts/CodeGeneratorObjC.pm:
3124         For each file generated add a #ifdef <something>_SUPPORT / #endif
3125         pair if the idl file has a Conditional extended attribute
3126
3127 2006-09-17  Eric Seidel  <eric@eseidel.com>
3128
3129         Reviewed by ap.
3130         
3131         REGRESSION (r16245): double-clicking on javascript exceptions fails to show source
3132         http://bugs.webkit.org/show_bug.cgi?id=10813
3133
3134         * bridge/mac/WebCoreFrameBridge.mm:
3135         (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
3136
3137 2006-09-17  Alexey Proskuryakov  <ap@nypop.com>
3138
3139         Reviewed by Hyatt.
3140
3141         http://bugs.webkit.org/show_bug.cgi?id=10779
3142         REGRESSION: Animated GIF ignores frame intervals and loops infinitely
3143
3144         No test possible.
3145
3146         * platform/Image.cpp:
3147         (WebCore::Image::shouldAnimate): Don't check that there is more than one frame,
3148         maybe the rest just hasn't been loaded yet.
3149         (WebCore::Image::startAnimation): Move the frame count check here - there is no need
3150         to start animating before we get at least two frames.
3151
3152 2006-09-17  Brady Eidson <beidson@apple.com>
3153
3154         Reviewed by Sarge
3155
3156         IconLoader now gracefully handles the condition where there's no document in the frame
3157         (ie. PDFs)
3158
3159         * loader/icon/IconLoader.cpp:
3160         (IconLoader::startLoading):
3161
3162 2006-09-17  David Hyatt  <hyatt@apple.com>
3163
3164         Fix for bug 10899, rework how CSS keywords work to be smarter about
3165         using the correct size when generic families change (e.g., monospace to
3166         serif and vice versa).
3167
3168         Reviewed by aroben
3169
3170         Added fast/text/basic/generic-family-changes.html
3171
3172         * css/cssstyleselector.cpp:
3173         (WebCore::CSSStyleSelector::applyProperty):
3174         (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
3175         (WebCore::CSSStyleSelector::fontSizeForKeyword):
3176         * css/cssstyleselector.h:
3177         * dom/Document.cpp:
3178         (WebCore::Document::recalcStyle):
3179         * platform/FontDescription.h:
3180         (WebCore::FontDescription::FontDescription):
3181         (WebCore::FontDescription::keywordSize):
3182         (WebCore::FontDescription::setKeywordSize):
3183         (WebCore::FontDescription::operator==):
3184
3185 2006-09-17  Alexey Proskuryakov  <ap@nypop.com>
3186
3187         Reviewed by Brady.
3188
3189         http://bugs.webkit.org/show_bug.cgi?id=10852
3190         REGRESSION: Reproducible crash in XMLHttpRequest::abort()
3191
3192         Test: http/tests/xmlhttprequest/xhr-onunload.html
3193
3194         * xml/xmlhttprequest.cpp:
3195         (WebCore::XMLHttpRequest::send): Check the return value of ResourceLoader::start().
3196
3197         * loader/icon/IconLoader.cpp:
3198         (IconLoader::startLoading): Fix a similar latent bug here.
3199
3200 2006-09-17  Adam Roben  <aroben@apple.com>
3201
3202         Build fix.
3203
3204         * loader/icon/IconDatabase.cpp:
3205
3206 2006-09-17  Anders Carlsson  <acarlsson@apple.com>
3207
3208         Reviewed by Brady.
3209
3210         Add simplifyWhiteSpace and stripWhiteSpace to the String class. 
3211         Change the XSLT Parameter Map to use Strings instead of StringImpls.
3212         General cleanup.
3213
3214         * bindings/js/JSXSLTProcessor.cpp:
3215         (KJS::XSLTProcessorProtoFunc::callAsFunction):
3216         * bindings/js/kjs_events.cpp:
3217         (KJS::JSAbstractEventListener::handleEvent):
3218         * bindings/js/kjs_window.cpp:
3219         (KJS::ScheduledAction::execute):
3220         * css/MediaList.cpp:
3221         (WebCore::MediaList::setMediaText):
3222         * dom/Document.cpp:
3223         (WebCore::Document::processHttpEquiv):
3224         * editing/ApplyStyleCommand.cpp:
3225         (WebCore::StyleChange::init):
3226         * html/HTMLDocument.cpp:
3227         (WebCore::parseDocTypeDeclaration):
3228         * html/HTMLLinkElement.cpp:
3229         (WebCore::HTMLLinkElement::parseMappedAttribute):
3230         * html/HTMLObjectElement.cpp:
3231         (WebCore::HTMLObjectElement::HTMLObjectElement):
3232         (WebCore::HTMLObjectElement::parseMappedAttribute):
3233         (WebCore::HTMLObjectElement::attach):
3234         (WebCore::HTMLObjectElement::setComplete):
3235         (WebCore::HTMLObjectElement::detach):
3236         (WebCore::HTMLObjectElement::recalcStyle):
3237         (WebCore::HTMLObjectElement::childrenChanged):
3238         (WebCore::HTMLObjectElement::isImageType):
3239         * html/HTMLObjectElement.h:
3240         * html/HTMLOptionElement.cpp:
3241         (WebCore::HTMLOptionElement::value):
3242         * html/HTMLSelectElement.cpp:
3243         (WebCore::HTMLSelectElement::appendFormData):
3244         * html/HTMLTokenizer.cpp:
3245         (WebCore::HTMLTokenizer::parseTag):
3246         * ksvg2/svg/SVGColor.cpp:
3247         (WebCore::SVGColor::setRGBColor):
3248         * ksvg2/svg/SVGDescElement.cpp:
3249         (WebCore::SVGDescElement::description):
3250         * platform/PlatformString.h:
3251         * platform/String.cpp:
3252         (WebCore::String::stripWhiteSpace):
3253         (WebCore::String::simplifyWhiteSpace):
3254         * platform/StringImpl.cpp:
3255         (WebCore::isSpace):
3256         (WebCore::parseLength):
3257         (WebCore::StringImpl::stripWhiteSpace):
3258         (WebCore::StringImpl::simplifyWhiteSpace):
3259         (WebCore::StringImpl::toInt):
3260         * platform/StringImpl.h:
3261         * platform/mac/ClipboardMac.mm:
3262         (WebCore::cocoaTypeFromMIMEType):
3263         * rendering/RenderPartObject.cpp:
3264         (WebCore::RenderPartObject::updateWidget):
3265         * xml/XPathFunctions.cpp:
3266         (WebCore::XPath::FunNormalizeSpace::doEvaluate):
3267         * xml/XPathGrammar.y:
3268         * xml/XPathStep.cpp:
3269         (WebCore::XPath::Step::nodeTestMatches):
3270         * xml/XSLStyleSheet.cpp:
3271         (WebCore::XSLStyleSheet::loadChildSheets):
3272         (WebCore::XSLStyleSheet::locateStylesheetSubResource):
3273         * xml/XSLTProcessor.cpp:
3274         (WebCore::xsltParamArrayFromParameterMap):
3275         (WebCore::XSLTProcessor::setParameter):
3276         (WebCore::XSLTProcessor::getParameter):
3277         (WebCore::XSLTProcessor::removeParameter):
3278         * xml/XSLTProcessor.h:
3279         * xml/xmlhttprequest.cpp:
3280         (WebCore::XMLHttpRequest::getStatusText):
3281
3282 2006-09-17  David Hyatt  <hyatt@apple.com>
3283
3284         Fix for bugzilla bugs 10895 and 6336, fieldsets misbehaving when floats
3285         are declared right before the fieldsets.  It turns out fieldsets in other
3286         browsers avoid floats (like overflow:auto/hidden/scroll sections do), so
3287         adding that behavior to fieldset fixes the bug.
3288
3289         Made avoidsFloats virtual and did some refactoring to make tables, flexboxes
3290         and fieldsets all subclass.
3291
3292         Reviewed by anders
3293
3294         Added fast/forms/float-before-fieldset.html
3295
3296         * rendering/RenderFieldset.h:
3297         (WebCore::RenderFieldset::avoidsFloats):
3298         * rendering/RenderFlexibleBox.h:
3299         (WebCore::RenderFlexibleBox::avoidsFloats):
3300         * rendering/RenderObject.cpp:
3301         (WebCore::RenderObject::avoidsFloats):
3302         * rendering/RenderObject.h:
3303         * rendering/RenderTable.h:
3304         (WebCore::RenderTable::avoidsFloats):
3305
3306 2006-09-17  David Hyatt  <hyatt@apple.com>
3307
3308         Fix for bugzilla bug 3240, implement support for the HTML4 "frame" and
3309         "rules" attributes on tables.
3310
3311         Reviewed by bradee-oh
3312
3313         Well-covered by existing layout tests.
3314
3315         * html/HTMLTableCellElement.cpp:
3316         (WebCore::HTMLTableCellElement::additionalAttributeStyleDecl):
3317         * html/HTMLTableColElement.cpp:
3318         (WebCore::HTMLTableColElement::additionalAttributeStyleDecl):
3319         * html/HTMLTableColElement.h:
3320         * html/HTMLTableElement.cpp:
3321         (WebCore::HTMLTableElement::HTMLTableElement):
3322         (WebCore::HTMLTableElement::~HTMLTableElement):
3323         (WebCore::HTMLTableElement::setCaption):
3324         (WebCore::HTMLTableElement::setTHead):
3325         (WebCore::HTMLTableElement::setTFoot):
3326         (WebCore::HTMLTableElement::setTBody):
3327         (WebCore::HTMLTableElement::createTHead):
3328         (WebCore::HTMLTableElement::deleteTHead):
3329         (WebCore::HTMLTableElement::createTFoot):
3330         (WebCore::HTMLTableElement::deleteTFoot):
3331         (WebCore::HTMLTableElement::createCaption):
3332         (WebCore::HTMLTableElement::deleteCaption):
3333         (WebCore::HTMLTableElement::insertRow):
3334         (WebCore::HTMLTableElement::deleteRow):
3335         (WebCore::HTMLTableElement::addChild):
3336         (WebCore::HTMLTableElement::childrenChanged):
3337         (WebCore::HTMLTableElement::mapToEntry):
3338         (WebCore::HTMLTableElement::parseMappedAttribute):
3339         (WebCore::HTMLTableElement::additionalAttributeStyleDecl):
3340         (WebCore::HTMLTableElement::getSharedCellDecl):
3341         (WebCore::HTMLTableElement::getSharedGroupDecl):
3342         (WebCore::HTMLTableElement::attach):
3343         * html/HTMLTableElement.h:
3344         (WebCore::HTMLTableElement::caption):
3345         (WebCore::HTMLTableElement::tHead):
3346         (WebCore::HTMLTableElement::tFoot):
3347         (WebCore::HTMLTableElement::):
3348         * html/HTMLTableRowElement.h:
3349         * html/HTMLTableSectionElement.cpp:
3350         (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecl):
3351         * html/HTMLTableSectionElement.h:
3352
3353 2006-09-17  David Hyatt  <hyatt@apple.com>
3354
3355         Fix for bugzilla bug 4192, font size wrong for <tt> elements that
3356         specify their own new font-family list.  Make sure to always
3357         reset the generic family along with the family list when mapping in
3358         new font-family values.
3359
3360         Reviewed by bradee-oh
3361
3362         fast/text/basic/generic-family-reset.html
3363
3364         * css/cssstyleselector.cpp:
3365         (WebCore::CSSStyleSelector::applyProperty):
3366
3367 2006-09-16  Brady Eidson <beidson@apple.com>
3368
3369         Reviewed by Hyatt
3370
3371         Pruning code relating to WebKit's icon loader
3372
3373         * bridge/mac/WebCoreIconDatabaseBridge.h:
3374         * bridge/mac/WebCoreIconDatabaseBridge.mm:
3375         * loader/icon/IconDatabase.h:
3376         * page/Frame.cpp:
3377         (WebCore::Frame::endIfNotLoading): Moved a FIXME in from WebKit's IconLoader to 
3378         its new home
3379
3380 2006-09-16  Sam Weinig  <sam.weinig@gmail.com>
3381
3382         Reviewed by Tim H.
3383
3384         Patch for http://bugs.webkit.org/show_bug.cgi?id=10885
3385         Auto-generate DOMHTMLDocument for the Objective-C bindings
3386
3387         * DerivedSources.make:
3388         * WebCore.xcodeproj/project.pbxproj:
3389         * bindings/objc/DOMExtensions.h:
3390         * bindings/objc/DOMHTML.mm:
3391         (-[DOMHTMLDocument createDocumentFragmentWithText:]):
3392         * bindings/objc/DOMHTMLDocument.h: Removed.
3393         * bindings/objc/DOMHTMLDocument.mm: Removed.
3394         * bindings/objc/PublicDOMInterfaces.h:
3395         * bindings/scripts/CodeGeneratorObjC.pm:
3396         * html/HTMLDocument.idl:
3397         * platform/DeprecatedString.h:
3398         (WebCore::DeprecatedString::operator NSString*):
3399
3400 2006-09-16  Rob Buis  <buis@kde.org>
3401
3402         Reviewed by Eric.
3403
3404         http://bugs.webkit.org/show_bug.cgi?id=10866
3405         Code in kcanvas/ should not use Private
3406
3407         Remove Private classes and tweak coding style.
3408
3409         WARNING: NO TEST CASES ADDED OR CHANGED
3410
3411         * kcanvas/RenderPath.cpp:
3412         (WebCore::RenderPath::RenderPath):
3413         (WebCore::RenderPath::~RenderPath):
3414         (WebCore::RenderPath::localTransform):
3415         (WebCore::RenderPath::setLocalTransform):
3416         (WebCore::RenderPath::fillContains):
3417         (WebCore::RenderPath::relativeBBox):
3418         (WebCore::RenderPath::setPath):
3419         (WebCore::RenderPath::path):
3420         (WebCore::RenderPath::layout):
3421         * kcanvas/RenderPath.h:
3422         * kcanvas/RenderSVGContainer.cpp:
3423         (WebCore::RenderSVGContainer::RenderSVGContainer):
3424         (WebCore::RenderSVGContainer::~RenderSVGContainer):
3425         (WebCore::RenderSVGContainer::drawsContents):
3426         (WebCore::RenderSVGContainer::setDrawsContents):
3427         (WebCore::RenderSVGContainer::localTransform):
3428         (WebCore::RenderSVGContainer::setLocalTransform):
3429         (WebCore::RenderSVGContainer::layout):
3430         (WebCore::RenderSVGContainer::paint):
3431         (WebCore::RenderSVGContainer::setViewport):
3432         (WebCore::RenderSVGContainer::viewport):
3433         (WebCore::RenderSVGContainer::setViewBox):
3434         (WebCore::RenderSVGContainer::viewBox):
3435         (WebCore::RenderSVGContainer::setAlign):
3436         (WebCore::RenderSVGContainer::align):
3437         (WebCore::RenderSVGContainer::fillContains):
3438         (WebCore::RenderSVGContainer::strokeContains):
3439         (WebCore::RenderSVGContainer::setSlice):
3440         (WebCore::RenderSVGContainer::slice):
3441         * kcanvas/RenderSVGContainer.h:
3442         * kcanvas/device/KRenderingFillPainter.cpp:
3443         (WebCore::KRenderingFillPainter::KRenderingFillPainter):
3444         (WebCore::KRenderingFillPainter::~KRenderingFillPainter):
3445         (WebCore::KRenderingFillPainter::fillRule):
3446         (WebCore::KRenderingFillPainter::setFillRule):
3447         (WebCore::KRenderingFillPainter::opacity):
3448         (WebCore::KRenderingFillPainter::setOpacity):
3449         * kcanvas/device/KRenderingFillPainter.h:
3450         * kcanvas/device/KRenderingPaintServerGradient.cpp:
3451         (WebCore::KRenderingPaintServerGradient::KRenderingPaintServerGradient):
3452         (WebCore::KRenderingPaintServerGradient::~KRenderingPaintServerGradient):
3453         (WebCore::KRenderingPaintServerGradient::gradientStops):
3454         (WebCore::KRenderingPaintServerGradient::setGradientStops):
3455         (WebCore::KRenderingPaintServerGradient::spreadMethod):
3456         (WebCore::KRenderingPaintServerGradient::setGradientSpreadMethod):
3457         (WebCore::KRenderingPaintServerGradient::boundingBoxMode):
3458         (WebCore::KRenderingPaintServerGradient::setBoundingBoxMode):
3459         (WebCore::KRenderingPaintServerGradient::gradientTransform):
3460         (WebCore::KRenderingPaintServerGradient::setGradientTransform):
3461         (WebCore::KRenderingPaintServerLinearGradient::KRenderingPaintServerLinearGradient):
3462         (WebCore::KRenderingPaintServerLinearGradient::~KRenderingPaintServerLinearGradient):
3463         (WebCore::KRenderingPaintServerLinearGradient::gradientStart):
3464         (WebCore::KRenderingPaintServerLinearGradient::setGradientStart):
3465         (WebCore::KRenderingPaintServerLinearGradient::gradientEnd):
3466         (WebCore::KRenderingPaintServerLinearGradient::setGradientEnd):
3467         (WebCore::KRenderingPaintServerRadialGradient::KRenderingPaintServerRadialGradient):
3468         (WebCore::KRenderingPaintServerRadialGradient::~KRenderingPaintServerRadialGradient):
3469         (WebCore::KRenderingPaintServerRadialGradient::gradientCenter):
3470         (WebCore::KRenderingPaintServerRadialGradient::setGradientCenter):
3471         (WebCore::KRenderingPaintServerRadialGradient::gradientFocal):
3472         (WebCore::KRenderingPaintServerRadialGradient::setGradientFocal):
3473         (WebCore::KRenderingPaintServerRadialGradient::gradientRadius):
3474         (WebCore::KRenderingPaintServerRadialGradient::setGradientRadius):
3475         (WebCore::KRenderingPaintServerGradient::listener):
3476         (WebCore::KRenderingPaintServerGradient::setListener):
3477         * kcanvas/device/KRenderingPaintServerGradient.h:
3478         * kcanvas/device/KRenderingPaintServerPattern.cpp:
3479         (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
3480         (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
3481         (WebCore::KRenderingPaintServerPattern::setBbox):
3482         (WebCore::KRenderingPaintServerPattern::bbox):
3483         (WebCore::KRenderingPaintServerPattern::boundingBoxMode):
3484         (WebCore::KRenderingPaintServerPattern::setBoundingBoxMode):
3485         (WebCore::KRenderingPaintServerPattern::tile):
3486         (WebCore::KRenderingPaintServerPattern::setTile):
3487         (WebCore::KRenderingPaintServerPattern::patternTransform):
3488         (WebCore::KRenderingPaintServerPattern::setPatternTransform):
3489         (WebCore::KRenderingPaintServerPattern::listener):
3490         (WebCore::KRenderingPaintServerPattern::setListener):
3491         * kcanvas/device/KRenderingPaintServerPattern.h:
3492         * kcanvas/device/KRenderingPaintServerSolid.cpp:
3493         (WebCore::KRenderingPaintServerSolid::KRenderingPaintServerSolid):
3494         (WebCore::KRenderingPaintServerSolid::~KRenderingPaintServerSolid):
3495         (WebCore::KRenderingPaintServerSolid::color):
3496         (WebCore::KRenderingPaintServerSolid::setColor):
3497         * kcanvas/device/KRenderingPaintServerSolid.h:
3498         * kcanvas/device/KRenderingStrokePainter.cpp:
3499         (WebCore::KRenderingStrokePainter::KRenderingStrokePainter):
3500         (WebCore::KRenderingStrokePainter::~KRenderingStrokePainter):
3501         (WebCore::KRenderingStrokePainter::strokeWidth):
3502         (WebCore::KRenderingStrokePainter::setStrokeWidth):
3503         (WebCore::KRenderingStrokePainter::strokeMiterLimit):
3504         (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
3505         (WebCore::KRenderingStrokePainter::strokeCapStyle):
3506         (WebCore::KRenderingStrokePainter::setStrokeCapStyle):
3507         (WebCore::KRenderingStrokePainter::strokeJoinStyle):
3508         (WebCore::KRenderingStrokePainter::setStrokeJoinStyle):
3509         (WebCore::KRenderingStrokePainter::dashOffset):
3510         (WebCore::KRenderingStrokePainter::setDashOffset):
3511         (WebCore::KRenderingStrokePainter::dashArray):
3512         (WebCore::KRenderingStrokePainter::setDashArray):
3513         (WebCore::KRenderingStrokePainter::opacity):
3514         (WebCore::KRenderingStrokePainter::setOpacity):
3515         (WebCore::KRenderingStrokePainter::dirty):
3516         (WebCore::KRenderingStrokePainter::setDirty):
3517         * kcanvas/device/KRenderingStrokePainter.h:
3518
3519 2006-09-16  Mark Rowe  <opendarwin.org@bdash.net.nz>
3520
3521         Reviewed by Anders.
3522
3523         http://bugs.webkit.org/show_bug.cgi?id=10887
3524         Fix build error
3525
3526         * bindings/objc/DOMPrivate.h: Remove reference to DOMEventPrivate.h.
3527
3528 2006-09-16  Sam Weinig  <sam.weinig@gmail.com>
3529
3530         Reviewed by Anders.
3531
3532         Fix for http://bugs.webkit.org/show_bug.cgi?id=10886
3533         REGRESSION (r16387): Reproducible crash when mousing over HTML document
3534
3535         - Special case method [DOMNode ownerDocument] to call document() instead
3536           or ownerDocument() to return to the old behavior. 
3537
3538         * WebCore.xcodeproj/project.pbxproj:
3539         * bindings/scripts/CodeGeneratorObjC.pm:
3540
3541 2006-09-15  Brady Eidson  <beidson@apple.com>
3542
3543         Reviewed by Tim Hatcher
3544
3545         <rdar://problem/4730811> - New IconDatabase needs to attempt to create its path.
3546         Otherwise new installs and new user accounts won't have any icons because the icon.db cannot be created
3547
3548         * loader/icon/IconDatabase.cpp: Removed a now obsolete FIXME
3549         (WebCore::makeAllDirectories): Added - candidate to be in a header for "platform neutral file utilities"
3550         (WebCore::IconDatabase::open): Make sure the directory exists
3551
3552 2006-09-15  Timothy Hatcher  <timothy@apple.com>
3553
3554         Reviewed by Brady.
3555
3556         Make new style ObjC methods public API.
3557
3558         * WebCore.xcodeproj/project.pbxproj:
3559         * bindings/objc/DOMPrivate.h:
3560         * bindings/objc/PublicDOMInterfaces.h:
3561
3562 2006-09-15  Sam Weinig  <sam.weinig@gmail.com>
3563
3564         Reviewed by Tim H.
3565
3566         Patch for http://bugs.webkit.org/show_bug.cgi?id=10870
3567         Auto-generate DOMNode for the Objective-C bindings
3568
3569         * DerivedSources.make:
3570         * WebCore.xcodeproj/project.pbxproj:
3571         * bindings/objc/DOM.mm:
3572         (-[DOMNode boundingBox]):
3573         (-[DOMNode lineBoxRects]):
3574         * bindings/objc/DOMEvents.h:
3575         * bindings/objc/DOMExtensions.h:
3576         * bindings/objc/DOMNode.h: Removed.
3577         * bindings/objc/DOMNode.mm: Removed.
3578         * bindings/objc/PublicDOMInterfaces.h:
3579         * bindings/scripts/CodeGeneratorObjC.pm:
3580         * dom/Node.idl:
3581
3582 2006-09-15  Timothy Hatcher  <timothy@apple.com>
3583
3584         Reviewed by Justin.
3585
3586         Removed alter selection logic from WebCoreFrameBridge and moved to SelectionController.
3587
3588         * bridge/mac/WebCoreFrameBridge.h:
3589         * bridge/mac/WebCoreFrameBridge.mm:
3590         (-[WebCoreFrameBridge centerSelectionInVisibleArea]):
3591         (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
3592         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
3593         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
3594         (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
3595         (-[WebCoreFrameBridge replaceMarkedTextWithText:]):
3596         (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
3597         (-[WebCoreFrameBridge increaseSelectionListLevel]):
3598         (-[WebCoreFrameBridge increaseSelectionListLevelOrdered]):
3599         (-[WebCoreFrameBridge increaseSelectionListLevelUnordered]):
3600         (-[WebCoreFrameBridge decreaseSelectionListLevel]):
3601         (-[WebCoreFrameBridge insertLineBreak]):
3602         (-[WebCoreFrameBridge insertParagraphSeparator]):
3603         (-[WebCoreFrameBridge insertParagraphSeparatorInQuotedContent]):
3604         (-[WebCoreFrameBridge insertText:selectInsertedText:]):
3605         (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
3606         (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
3607         (createMouseEventFromDraggingInfo):
3608         * editing/SelectionController.cpp:
3609         (WebCore::SelectionController::moveTo):
3610         (WebCore::SelectionController::setSelection):
3611         (WebCore::SelectionController::modify):
3612         (WebCore::SelectionController::setBase):
3613         (WebCore::SelectionController::setExtent):
3614         * editing/SelectionController.h:
3615         * page/Frame.cpp:
3616         (WebCore::Frame::revealSelection):
3617         (WebCore::Frame::revealCaret):
3618         * page/Frame.h:
3619
3620 2006-09-15  Brady Eidson  <beidson@apple.com>
3621
3622         Reviewed by Anders
3623
3624         Added the ability to get a mutable char* from a CString, which will copy the internal
3625         buffer if the ref count is greater than 1 so your mutable char* won't affect any other
3626         referrer of that buffer.
3627
3628         * platform/CString.cpp:
3629         (WebCore::CString::mutableData):
3630         (WebCore::CString::copyBufferIfNeeded):
3631         * platform/CString.h:
3632
3633 2006-09-15  Justin Garcia  <justin.garcia@apple.com>
3634
3635         Reviewed by harrison
3636         
3637         <rdar://problem/4674869>
3638         REGRESSION: selecting text to write over results in cursor jumping to middle of next line
3639
3640         * editing/SelectionController.cpp:
3641         (WebCore::SelectionController::modify): Added lineBoundary to test fix.
3642         * editing/visible_units.cpp:
3643         (WebCore::endOfLine): If the last box on the line is a lineBreak, return the
3644         position before it, not after it.
3645
3646 2006-09-15  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
3647
3648         Reviewed by Adam.
3649
3650         http://bugs.webkit.org/show_bug.cgi?id=10864
3651         Bug 10864: Linux\GDK build fixes
3652
3653         * Projects/gdk/webcore-gdk.bkl:
3654         * WebCoreSources.bkl:
3655         * platform/gdk/FontCacheGdk.cpp:
3656         * platform/gdk/FontDataGdk.cpp:
3657         (WebCore::FontData::platformInit):
3658         * platform/gdk/FontGdk.cpp:
3659         (WebCore::Font::drawGlyphs):
3660         * platform/gdk/FrameGdk.cpp:
3661         (WebCore::FrameGdk::handleGdkEvent):
3662         * platform/gdk/FrameGdk.h:
3663         * platform/gdk/ImageGdk.cpp: Added.
3664         (WebCore::Image::initPlatformData):
3665         (WebCore::Image::invalidatePlatformData):
3666         (WebCore::Image::loadPlatformResource):
3667         (WebCore::Image::supportsType):
3668         * platform/gdk/RenderPopupMenuGdk.cpp:
3669         (WebCore::RenderPopupMenuGdk::hidePopup):
3670         * platform/gdk/RenderPopupMenuGdk.h:
3671         * platform/gdk/ScreenGdk.cpp:
3672         (WebCore::drawableForPage):
3673         (WebCore::screenRect):
3674         (WebCore::screenDepth):
3675         (WebCore::usableScreenRect):
3676         (WebCore::scaleFactor):
3677         * platform/gdk/SystemTimeLinux.cpp:
3678         (WebCore::currentTime):
3679         * platform/gdk/TemporaryLinkStubs.cpp:
3680         (FrameGdk::bindingRootObject):
3681         (FrameGdk::markMisspellings):
3682         (WebCore::screenDepthPerComponent):
3683         (WebCore::screenIsMonochrome):
3684         (WebCore::fileButtonChooseFileLabel):
3685         (WebCore::fileButtonNoFileSelectedLabel):
3686         (FrameGdk::shouldChangeSelection):
3687         (FrameGdk::respondToChangedSelection):
3688         (FrameGdk::respondToChangedContents):
3689         (Path::contains):
3690         (PlatformScrollBar::PlatformScrollBar):
3691         (PlatformScrollBar::~PlatformScrollBar):
3692         (PlatformScrollBar::width):
3693         (PlatformScrollBar::height):
3694         (PlatformScrollBar::setEnabled):
3695         (PlatformScrollBar::paint):
3696         (PlatformScrollBar::setScrollBarValue):
3697         (PlatformScrollBar::setKnobProportion):
3698         (PlatformScrollBar::setRect):
3699         (ScrollBar::ScrollBar):
3700         (FileChooser::FileChooser):
3701         (FileChooser::~FileChooser):
3702         (FileChooser::openFileChooser):
3703         (FileChooser::basenameForWidth):
3704         (FileChooser::uploadControlDetaching):
3705         (FileChooser::chooseFile):
3706         (Icon::Icon):
3707         (Icon::~Icon):
3708         (Icon::newIconForFile):
3709         (Icon::paint):
3710         (IconLoader::stopLoading):
3711         (IconLoader::startLoading):
3712         (IconLoader::createForFrame):
3713         (IconDatabase::isIconExpiredForIconURL):
3714         (IconDatabase::hasEntryForIconURL):
3715         (IconDatabase::sharedIconDatabase):
3716         * platform/gdk/WidgetGdk.cpp:
3717         * webcore-base.bkl:
3718
3719 2006-09-15  Nikolas Zimmermann  <zimmermann@kde.org>
3720
3721         Reviewed by Eric.
3722
3723         Fixes: http://bugs.webkit.org/show_bug.cgi?id=10835
3724         Fix svg memory leaks.
3725
3726         Reworked SVGList to deal with RefPtr's for ptr types
3727         which makes manual refcounting unnecessary, and is much safer.
3728
3729         Removing all virtual functions (nullItem) from SVGList, and
3730         also remove SVGListBase. Switch to a similar concept like
3731         Vector/VectorTraits (see new file SVGListTraits.h).
3732
3733         Credits go to Eric/Maciej for the inspiration.
3734
3735         * CMakeLists.txt: Add SVGListTraits.cpp to build
3736         * WebCore.xcodeproj/project.pbxproj: Ditto.
3737         * bindings/scripts/CodeGeneratorJS.pm: Generator changes for SVGTransform/PathSeg/LengthList (now RefPtr based)
3738         * kcanvas/RenderSVGText.cpp: Add some get() methods, as SVGLengthList is RefPtr based now.
3739         (WebCore::RenderSVGText::translationForAttributes):
3740         * ksvg2/svg/SVGAnimateTransformElement.cpp: Add some get() methods, as SVGTransformList is RefPtr based now.
3741         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
3742         * ksvg2/svg/SVGElementInstanceList.cpp: Be RefPtr based.
3743         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
3744         * ksvg2/svg/SVGElementInstanceList.h:
3745         * ksvg2/svg/SVGLengthList.cpp: Ditto.
3746         (WebCore::SVGLengthList::SVGLengthList):
3747         * ksvg2/svg/SVGLengthList.h: Ditto.
3748         * ksvg2/svg/SVGList.h: Rewrote, as described above.
3749         (WebCore::SVGListTypeOperations::nullItem):
3750         (WebCore::SVGList::SVGList):
3751         (WebCore::SVGList::~SVGList):
3752         (WebCore::SVGList::clear):
3753         (WebCore::SVGList::getFirst):
3754         (WebCore::SVGList::getLast):
3755         (WebCore::SVGList::getItem):
3756         (WebCore::SVGList::replaceItem):
3757         (WebCore::SVGList::removeItem):
3758         * ksvg2/svg/SVGListTraits.cpp: Added.
3759         * ksvg2/svg/SVGListTraits.h: Added.
3760         (WebCore::):
3761         * ksvg2/svg/SVGPathElement.cpp: Add some get() methods, as SVGPathSegList is RefPtr based now.
3762         (WebCore::SVGPathElement::toPathData):
3763         * ksvg2/svg/SVGPathSegList.cpp: Be RefPtr based.
3764         (WebCore::SVGPathSegList::SVGPathSegList):
3765         * ksvg2/svg/SVGPathSegList.h: Ditto.
3766         * ksvg2/svg/SVGTransform.cpp: Style cleanup.
3767         (SVGTransform::SVGTransform):
3768         * ksvg2/svg/SVGTransformList.cpp: Be RefPtr based.
3769         (SVGTransformList::SVGTransformList):
3770         (SVGTransformList::createSVGTransformFromMatrix):
3771         (SVGTransformList::consolidate):
3772         * ksvg2/svg/SVGTransformList.h: Ditto.
3773         * ksvg2/svg/SVGTransformable.cpp: Fix RefPtr usage of SVGTransform.
3774         (SVGTransformable::parseTransformAttribute):
3775
3776 2006-09-15  Nikolas Zimmermann  <zimmermann@kde.org>
3777
3778         Reviewed by eseidel.  Landed by eseidel.
3779
3780         Fix build on Qt/Linux and implement Frame::addMessageToConsole to
3781         be able to see javascript errors for instance.
3782
3783         * CMakeLists.txt:
3784         * platform/qt/FrameQt.h:
3785         * platform/qt/FrameQt.cpp: Implement addMessageToConsole.
3786         (WebCore::FrameQt::bindingRootObject):
3787         * platform/qt/TemporaryLinkStubs.cp
3788         (WebCore::IconDatabase::hasEntryForIconURL):
3789         (WebCore::IconDatabase::sharedIconDatabase):
3790
3791 2006-09-15  Sam Weinig  <sam.weinig@gmail.com>
3792
3793         Reviewed by Tim H.
3794
3795         Patch for http://bugs.webkit.org/show_bug.cgi?id=10869
3796         Auto-generate the internal methods for the Objective-C bindings
3797
3798         - Auto-generates the internal method (ie. the _fooBar and _fooBarWith methods)
3799           implementations where standard.  For cases where a custom implementation was
3800           needed, added a [ObjCNoInternal] extended attribute to the corresponding IDL.
3801
3802         - Some general cleanup of some of the non-generated bindings, to bring them in-
3803           line with what the generated bindings look like.
3804
3805         * bindings/objc/DOM.mm:
3806         (-[DOMNode description]):
3807         * bindings/objc/DOMCSS.mm:
3808         (-[DOMCSSPrimitiveValue WebCore::]):
3809         (-[DOMDocument getComputedStyle::]):
3810         (-[DOMDocument getMatchedCSSRules::]):
3811         * bindings/objc/DOMEvents.mm:
3812         (-[DOMEvent WebCore::]):
3813         * bindings/objc/DOMHTML.mm:
3814         * bindings/objc/DOMHTMLDocument.mm:
3815         (-[DOMHTMLDocument title]):
3816         (-[DOMHTMLDocument setTitle:]):
3817         (-[DOMHTMLDocument referrer]):
3818         (-[DOMHTMLDocument domain]):
3819         (-[DOMHTMLDocument URL]):
3820         (-[DOMHTMLDocument body]):
3821         (-[DOMHTMLDocument setBody:]):
3822         (-[DOMHTMLDocument images]):
3823         (-[DOMHTMLDocument applets]):
3824         (-[DOMHTMLDocument links]):
3825         (-[DOMHTMLDocument forms]):
3826         (-[DOMHTMLDocument anchors]):
3827         (-[DOMHTMLDocument cookie]):
3828         (-[DOMHTMLDocument setCookie:]):
3829         (-[DOMHTMLDocument open]):
3830         (-[DOMHTMLDocument close]):
3831         (-[DOMHTMLDocument write:]):
3832         (-[DOMHTMLDocument writeln:]):
3833         (-[DOMHTMLDocument getElementById:]):
3834         (-[DOMHTMLDocument getElementsByName:]):
3835         (-[DOMHTMLDocument WebCore::]):
3836         (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
3837         * bindings/objc/DOMHTMLOptionElement.mm:
3838         (-[DOMHTMLOptionElement form]):
3839         (-[DOMHTMLOptionElement defaultSelected]):
3840         (-[DOMHTMLOptionElement setDefaultSelected:]):
3841         (-[DOMHTMLOptionElement text]):
3842         (-[DOMHTMLOptionElement index]):
3843         (-[DOMHTMLOptionElement disabled]):
3844         (-[DOMHTMLOptionElement setDisabled:]):
3845         (-[DOMHTMLOptionElement label]):
3846         (-[DOMHTMLOptionElement setLabel:]):
3847         (-[DOMHTMLOptionElement selected]):
3848         (-[DOMHTMLOptionElement setSelected:]):
3849         (-[DOMHTMLOptionElement value]):
3850         (-[DOMHTMLOptionElement setValue:]):
3851         (-[DOMHTMLOptionElement WebCore::]):
3852         (+[DOMHTMLOptionElement _HTMLOptionElementWith:WebCore::]):
3853         * bindings/objc/DOMInternal.h:
3854         * bindings/objc/DOMNode.mm:
3855         (-[DOMNode dealloc]):
3856         (-[DOMNode finalize]):
3857         (-[DOMNode nodeName]):
3858         (-[DOMNode nodeValue]):
3859         (-[DOMNode setNodeValue:]):
3860         (-[DOMNode nodeType]):
3861         (-[DOMNode parentNode]):
3862         (-[DOMNode childNodes]):
3863         (-[DOMNode firstChild]):
3864         (-[DOMNode lastChild]):
3865         (-[DOMNode previousSibling]):
3866         (-[DOMNode nextSibling]):
3867         (-[DOMNode attributes]):
3868         (-[DOMNode ownerDocument]):
3869         (-[DOMNode insertBefore::]):
3870         (-[DOMNode replaceChild::]):
3871         (-[DOMNode removeChild:]):
3872         (-[DOMNode appendChild:]):
3873         (-[DOMNode hasChildNodes]):
3874         (-[DOMNode cloneNode:]):
3875         (-[DOMNode normalize]):
3876         (-[DOMNode isSupported::]):
3877         (-[DOMNode namespaceURI]):
3878         (-[DOMNode prefix]):
3879         (-[DOMNode setPrefix:]):
3880         (-[DOMNode localName]):
3881         (-[DOMNode hasAttributes]):
3882         (-[DOMNode isSameNode:]):
3883         (-[DOMNode isEqualNode:]):
3884         (-[DOMNode isDefaultNamespace:]):
3885         (-[DOMNode lookupPrefix:]):
3886         (-[DOMNode lookupNamespaceURI:]):
3887         (-[DOMNode textContent]):
3888         (-[DOMNode setTextContent:]):
3889         (-[DOMNode boundingBox]):
3890         (-[DOMNode lineBoxRects]):
3891         * bindings/objc/DOMObject.mm:
3892         (-[DOMObject _init]):
3893         * bindings/objc/DOMXPath.mm:
3894         (-[DOMNativeXPathNSResolver dealloc]):
3895         (-[DOMNativeXPathNSResolver finalize]):
3896         (-[DOMNativeXPathNSResolver WebCore::]):
3897         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
3898         (+[DOMNativeXPathNSResolver _xpathNSResolverWith:WebCore::]):
3899         (-[DOMNativeXPathNSResolver lookupNamespaceURI:]):
3900         * bindings/scripts/CodeGeneratorObjC.pm:
3901         * bridge/mac/WebCoreFrameBridge.mm:
3902         (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
3903         (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
3904         * css/CSSCharsetRule.idl:
3905         * css/CSSFontFaceRule.idl:
3906         * css/CSSImportRule.idl:
3907         * css/CSSMediaRule.idl:
3908         * css/CSSPageRule.idl:
3909         * css/CSSPrimitiveValue.idl:
3910         * css/CSSRule.idl:
3911         * css/CSSStyleRule.idl:
3912         * css/CSSStyleSheet.idl:
3913         * css/CSSUnknownRule.idl:
3914         * css/CSSValue.idl:
3915         * css/CSSValueList.idl:
3916         * css/StyleSheet.idl:
3917         * dom/Event.idl:
3918         * dom/KeyboardEvent.idl:
3919         * dom/MouseEvent.idl:
3920         * dom/MutationEvent.idl:
3921         * dom/NodeIterator.idl:
3922         * dom/OverflowEvent.idl:
3923         * dom/TreeWalker.idl:
3924         * dom/UIEvent.idl:
3925         * dom/WheelEvent.idl:
3926
3927 2006-09-15  Adam Roben  <aroben@apple.com>
3928
3929         Reviewed by timothy.
3930
3931         Fixes http://bugs.webkit.org/show_bug.cgi?id=10865
3932         New file upload control should match the width of the old one
3933
3934         Make width of new file upload control match the old one as closely as
3935         possible.
3936
3937         * rendering/RenderFileUploadControl.cpp:
3938
3939 2006-09-15  Timothy Hatcher  <timothy@apple.com>
3940
3941         Reviewed by Eric.
3942
3943         Remove the SVG IDL files from the Copy Resources phase.
3944
3945         * WebCore.xcodeproj/project.pbxproj:
3946
3947 2006-09-15  Brady Eidson  <beidson@apple.com>
3948
3949         Reviewed by Eric Siedel
3950
3951         Dumped the use of CGColorRef and directly use the floating point data from
3952         WebCore::Color
3953
3954         This fixes the performance regression found between 16285 and 16286
3955
3956         * platform/mac/FontMac.mm:
3957         (WebCore::Font::drawComplexText):
3958         (WebCore::Font::drawGlyphs):
3959
3960 2006-09-14  Mark Rowe  <opendarwin.org@bdash.net.nz>
3961
3962         Reviewed by Adam.
3963
3964         http://bugs.webkit.org/show_bug.cgi?id=10838
3965         Bug 10838: REGRESSION: Leaking of WebScriptObjectPrivate
3966
3967         FrameMac relies on its cleanupPluginObjects being called to perform cleanup.  The virtual
3968         Frame::cleanupPluginObjects method is called from Frame's destructor, which results
3969         in Frame::cleanupPluginObjects being called rather than FrameMac::cleanupPluginObjects.
3970
3971         * bridge/mac/FrameMac.mm:
3972         (WebCore::FrameMac::~FrameMac): Call cancelAndClear to ensure that FrameMac::cleanupPluginObjects
3973         will be called from Frame::clear
3974         * page/Frame.cpp:
3975         (WebCore::Frame::~Frame): Use cancelAndClear.
3976         (WebCore::Frame::cancelAndClear): Move cancellation and clearing into a separate method that
3977         FrameMac can use.
3978         * page/Frame.h:
3979
3980 2006-09-14  Brady Eidson  <beidson@apple.com>
3981
3982         Reviewed by Maciej's rubber stamp
3983
3984         Exact same fix I just made, but in the other method I horked up
3985         Also added a reference to the bugzilla in comments
3986
3987         * page/Frame.cpp:
3988         (WebCore::Frame::endIfNotLoading):
3989         (WebCore::Frame::stop):
3990
3991 2006-09-14  Brady Eidson  <beidson@apple.com>
3992
3993         Reviewed by Maciej
3994
3995         Fixed a bad iFrame crash, resolving some of the layout test badness
3996
3997         * page/Frame.cpp:
3998         (WebCore::Frame::endIfNotLoading):
3999         - Added a RefPtr to protect the frame itself to prevent its destruction during this method
4000
4001 2006-09-14  Justin Garcia  <justin.garcia@apple.com>
4002
4003         Reviewed by harrison
4004         
4005         <rdar://problem/4655880> Up/Down arrows skip over To Do
4006
4007         * bridge/mac/WebCoreFrameBridge.mm:
4008         (-[WebCoreFrameBridge canDeleteRange:]): Added a FIXME.
4009         * dom/Node.cpp: Removed the unused inSameRootEditableElement.
4010         * dom/Node.h:
4011         * editing/SelectionController.cpp:
4012         (WebCore::SelectionController::modify): Added documentboundary to granularities in order test a fix.
4013         * editing/visible_units.cpp:
4014         (WebCore::previousLinePosition): Use highestEditableRoot so that this function can move from
4015         editable content into editable content that's embedded in non-editable content.
4016         (WebCore::nextLinePosition): Ditto.
4017         (WebCore::startOfEditableContent): Renamed from startOfEditableRoot and use highestEditableRoot.
4018         This is the behavior that callers desire.  This fixes Command + Up/Down.
4019         (WebCore::endOfEditableContent): Ditto.
4020         * editing/visible_units.h:
4021
4022 2006-09-14  Karthik Kumar  <karthikkumar@gmail.com>
4023
4024         Reviewed by timothy. Landed by aroben.
4025
4026         Fixes http://bugs.webkit.org/show_bug.cgi?id=10856
4027         Windows build fixes after r16360
4028
4029         * WebCore.vcproj/WebCore/WebCore.vcproj: Add loader\icon to
4030         AdditionalIncludeDirectories
4031         * platform/win/TemporaryLinkStubs.cpp: Add link stubs for IconLoader,
4032         IconDatabase
4033         (IconLoader::stopLoading):
4034         (IconLoader::startLoading):
4035         (IconLoader::createForFrame):
4036         (IconDatabase::isIconExpiredForIconURL):
4037         (IconDatabase::hasEntryForIconURL):
4038         (IconDatabase::sharedIconDatabase):
4039
4040 2006-09-14  Brady Eidson  <beidson@apple.com>
4041
4042         Part of a build fix for Windows - rest will be working out a mess of temporary link stubs
4043
4044         * loader/icon/IconLoader.cpp:
4045         (IconLoader::receivedAllData):
4046         * page/Frame.cpp:
4047         * page/FramePrivate.h:
4048
4049 2006-09-14  Graham Dennis  <graham.dennis@gmail.com>
4050
4051         Reviewed by Justin Garcia.
4052
4053         - http://bugs.webkit.org/show_bug.cgi?id=10726
4054           Crash in ApplyStyleCommand::applyRelativeFontStyleChange
4055
4056         * editing/ApplyStyleCommand.cpp:
4057         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Prevent a crash by
4058         makeing sure that the 'beyondEnd' node is after the start node.
4059
4060 2006-09-14  MorganL  <morlmor@yahoo.com>
4061
4062         Reviewed by Brady.
4063
4064         Fixes http://bugs.webkit.org/show_bug.cgi?id=10845
4065         Various bugs/crashes in ResourceLoaderWin with local files.
4066
4067         * platform/ResourceLoaderInternal.h:
4068         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
4069         * platform/win/ResourceLoaderWin.cpp:
4070         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
4071         (WebCore::ResourceLoader::fileLoadTimer):
4072
4073 2006-09-13  Brady Eidson <beidson@apple.com>
4074
4075         Reviewed by Maciej
4076
4077         Icon loads now take place in WebCore
4078
4079         * WebCore.xcodeproj/project.pbxproj:
4080         * bridge/BrowserExtension.h:
4081         * bridge/mac/BrowserExtensionMac.h:
4082         * bridge/mac/BrowserExtensionMac.mm:
4083         - Moved enforcement of a Mozilla Favicon extension elsewhere
4084         
4085         * bridge/mac/FrameMac.h: 
4086         * bridge/mac/FrameMac.mm: 
4087         (WebCore::FrameMac::originalRequestURL):
4088         - Added accessor to "original request URL"
4089         
4090         * bridge/mac/WebCoreFrameBridge.h: 
4091         - Removed methods to set the iconURL as all loading is now done in WebCore
4092         - Added call throughs to notify WebKit an Icon is done loading, and a to get the original request URL
4093         
4094         * html/HTMLLinkElement.cpp: 
4095         (WebCore::HTMLLinkElement::process):
4096         - Moved enforcement of a Mozilla Favicon extension elsewhere
4097         
4098         * loader/icon/IconDatabase.cpp:
4099         (WebCore::IconDatabase::setIconURLForPageURL):
4100         - Changed an ASSERT to correctly handle a sketchy (invalid) situation
4101
4102         * loader/icon/IconLoader.h: Added.
4103         * loader/icon/IconLoader.cpp: Added.
4104         (IconLoader::IconLoader):
4105         (IconLoader::createForFrame):
4106         - Static factory method with a private constructor to enforce 
4107           "you MUST have a Frame to create an IconLoader" semantics
4108         (IconLoader::~IconLoader):
4109         (IconLoader::startLoading):
4110         (IconLoader::stopLoading):
4111         (IconLoader::receivedData):
4112         - ResourceLoaderClient delegate
4113         (IconLoader::receivedAllData):
4114         - Ditto
4115
4116         * loader/mac/IconLoaderMac.mm: Added.
4117         (IconLoader::receivedResponse):
4118         (IconLoader::notifyIconChanged):
4119         - For now, these are platform specific methods
4120         - One to get the HTTP response code of an icon load
4121         - The other to call through to the app when the icon has changed (loaded)
4122
4123         * page/Frame.h:
4124         * page/Frame.cpp:
4125         (WebCore::Frame::iconURL):
4126         (WebCore::Frame::setIconURL):
4127         - Frame objects now have an inherent icon URL and a way to calculate/access it
4128         (WebCore::Frame::endIfNotLoading):
4129         - This is where we actually kick off the IconLoader
4130         (WebCore::Frame::stop):
4131         - Added call to stop loading the icon
4132
4133         * page/FramePrivate.h:
4134         (WebCore::FramePrivate::FramePrivate):
4135         (WebCore::FramePrivate::~FramePrivate):
4136         - Added the icon URL as a private member
4137         - Added the IconLoader as a private member, and clean it up on deletion
4138
4139         * platform/mac/ResourceLoaderMac.mm:
4140         (WebCore::ResourceLoader::start):  Added a valuable ASSERT
4141
4142 2006-09-13  David Hyatt  <hyatt@apple.com>
4143
4144         Fix for 10841, unable to check checkboxes inside labels.
4145
4146         Reviewed by xenon, bradee-oh
4147
4148         * css/html4.css:
4149         * dom/Element.cpp:
4150         (WebCore::Element::contains):
4151         * dom/Element.h:
4152         * html/HTMLLabelElement.cpp:
4153         (WebCore::HTMLLabelElement::defaultEventHandler):
4154
4155 2006-09-13  Mark Rowe  <opendarwin.org@bdash.net.nz>
4156
4157         Reviewed by Adam.
4158
4159         http://bugs.webkit.org/show_bug.cgi?id=10834
4160         Bug 10834: FileChooser constructor in FileChooserMac appears to overretain m_controller
4161
4162         * platform/mac/FileChooserMac.mm:
4163         (WebCore::FileChooser::FileChooser): Don't over-retain the OpenPanelController.
4164
4165 2006-09-13  Mark Rowe  <opendarwin.org@bdash.net.nz>
4166
4167         Reviewed by Eric.
4168
4169         http://bugs.webkit.org/show_bug.cgi?id=10836
4170         Bug 10836: REGRESSION: Mac implementation of Font::drawGlyphs leaks a CGColorRef
4171
4172         * platform/mac/FontMac.mm:
4173         (WebCore::Font::drawComplexText): Release CGColorRef after use.
4174         (WebCore::Font::drawGlyphs): Ditto.
4175
4176 2006-09-14  Anders Carlsson  <acarlsson@apple.com>
4177
4178         Try fixing the Win32 build.
4179         
4180         * bridge/win/FrameWin.h:
4181         * platform/win/TemporaryLinkStubs.cpp:
4182         (FrameWin::bindingRootObject):
4183
4184 2006-09-14  Anders Carlsson  <acarlsson@apple.com>
4185
4186         Reviewed by Tim O.
4187
4188         Add USE defines for the generic JavaScriptCore bindings as well as NPAPI bindings.
4189         
4190         * bindings/js/kjs_binding.cpp:
4191         (KJS::ScriptInterpreter::createLanguageInstanceForValue):
4192         * bindings/js/kjs_dom.cpp:
4193         (KJS::getRuntimeObject):
4194         * bridge/mac/FrameMac.h:
4195         * config.h:
4196         * html/HTMLAppletElement.cpp:
4197         (WebCore::HTMLAppletElement::~HTMLAppletElement):
4198         (WebCore::HTMLAppletElement::detach):
4199         * html/HTMLAppletElement.h:
4200         * html/HTMLEmbedElement.cpp:
4201         (WebCore::HTMLEmbedElement::~HTMLEmbedElement):
4202         (WebCore::HTMLEmbedElement::detach):
4203         * html/HTMLEmbedElement.h:
4204         * html/HTMLObjectElement.cpp:
4205         (WebCore::HTMLObjectElement::~HTMLObjectElement):
4206         (WebCore::HTMLObjectElement::detach):
4207         * html/HTMLObjectElement.h:
4208         * html/HTMLPlugInElement.cpp:
4209         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
4210         (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
4211         (WebCore::HTMLPlugInElement::createNPObject):
4212         * html/HTMLPlugInElement.h:
4213         * page/Frame.h:
4214
4215 2006-09-13  David Hyatt  <hyatt@apple.com>
4216
4217         Clean up the XBL and XSLT ifdefs to be consistent with the SVG
4218         and XPath ifdefs.  KHTML_NO_XBL is flipped and is now XBL_SUPPORT.
4219         KHTML_XSLT is now XSLT_SUPPORT.
4220
4221         * WebCore.xcodeproj/project.pbxproj:
4222         * bindings/js/JSXSLTProcessor.cpp:
4223         * bindings/js/JSXSLTProcessor.h:
4224         * bindings/js/kjs_window.cpp:
4225         (KJS::Window::getValueProperty):
4226         * config.h:
4227         * css/CSSComputedStyleDeclaration.cpp:
4228         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
4229         * css/cssparser.cpp:
4230         (WebCore::CSSParser::parseValue):
4231         * css/cssstyleselector.cpp:
4232         (WebCore::CSSStyleSelector::applyProperty):
4233         * dom/Document.cpp:
4234         (WebCore::Document::Document):
4235         (WebCore::Document::~Document):
4236         (WebCore::Document::recalcStyleSelector):
4237         * dom/Document.h:
4238         (WebCore::Document::bindingManager):
4239         * dom/Node.cpp:
4240         (WebCore::Node::createRendererIfNeeded):
4241         * dom/ProcessingInstruction.cpp:
4242         (WebCore::ProcessingInstruction::ProcessingInstruction):
4243         (WebCore::ProcessingInstruction::checkStyleSheet):
4244         (WebCore::ProcessingInstruction::setStyleSheet):
4245         * dom/ProcessingInstruction.h:
4246         * dom/XMLTokenizer.cpp:
4247         (WebCore::XMLTokenizer::processingInstruction):
4248         (WebCore::XMLTokenizer::insertErrorMessageBlock):
4249         * dom/XMLTokenizer.h:
4250         * loader/Cache.cpp:
4251         (WebCore::Cache::getStatistics):
4252         * loader/Cache.h:
4253         * loader/CachedResource.h:
4254         (WebCore::CachedResource::):
4255         * loader/CachedResourceClient.h:
4256         * loader/CachedXBLDocument.cpp:
4257         * loader/CachedXBLDocument.h:
4258         * loader/CachedXSLStyleSheet.cpp:
4259         * loader/CachedXSLStyleSheet.h:
4260         * loader/DocLoader.cpp:
4261         * loader/DocLoader.h:
4262         * rendering/RenderStyle.cpp:
4263         (WebCore::StyleCSS3NonInheritedData::StyleCSS3NonInheritedData):
4264         (WebCore::StyleCSS3NonInheritedData::~StyleCSS3NonInheritedData):
4265         (WebCore::StyleCSS3NonInheritedData::operator==):
4266         * rendering/RenderStyle.h:
4267         * xml/XSLImportRule.cpp:
4268         * xml/XSLImportRule.h:
4269         * xml/XSLStyleSheet.cpp:
4270         * xml/XSLStyleSheet.h:
4271         * xml/XSLTProcessor.cpp:
4272         * xml/XSLTProcessor.h:
4273
4274 2006-09-13  Nikolas Zimmermann  <zimmermann@kde.org>
4275
4276         Reviewed by eseidel.  Landed by eseidel.
4277
4278         Fix newly introduced memory leaks in SVG.
4279         http://bugs.webkit.org/show_bug.cgi?id=10835
4280
4281         * ksvg2/svg/SVGList.h:
4282         (WebCore::SVGListBase::~SVGListBase):
4283         (WebCore::SVGListBase::clearVector):
4284         (WebCore::SVGListBase::clear):
4285         (WebCore::SVGList::clearVector):
4286         (WebCore::):
4287         * ksvg2/svg/SVGNumberList.cpp: s/float/double/ - forgot that!
4288         (SVGNumberList::SVGNumberList):
4289         * ksvg2/svg/SVGNumberList.h: Ditto.
4290
4291 2006-09-13  MorganL  <morlmor@yahoo.com>
4292
4293         Reviewed/landed by aroben.
4294
4295         Fixes http://bugs.webkit.org/show_bug.cgi?id=10833
4296         Windows build needs fixed after move to engine-rendered file upload widget
4297
4298         * WebCore.vcproj/WebCore/WebCore.vcproj: Add RenderFileUpload files,
4299         remove RenderFileButton files
4300         * platform/win/TemporaryLinkStubs.cpp: Add stubs for FileChooser, Icon
4301         (FileChooser::FileChooser):
4302         (FileChooser::~FileChooser):
4303         (FileChooser::openFileChooser):
4304         (FileChooser::basenameForWidth):
4305         (FileChooser::uploadControlDetaching):
4306         (FileChooser::chooseFile):
4307         (WebCore::fileButtonChooseFileLabel):
4308         (WebCore::fileButtonNoFileSelectedLabel):
4309         (Icon::Icon):
4310         (Icon::~Icon):
4311         (Icon::newIconForFile):
4312         (Icon::paint):
4313
4314 2006-09-13  MorganL  <morlmor@yahoo.com>
4315
4316         Reviewed/landed by aroben.
4317
4318         Fixes http://bugs.webkit.org/attachment.cgi?id=10537
4319         Webkit WebCore build fails on Windows
4320
4321         * WebCore.vcproj/WebCore/build-generated-files.sh: export SOURCE_ROOT
4322         variable
4323
4324 2006-09-13  Nikolas Zimmermann  <zimmermann@kde.org>
4325
4326         Reviewed by Tim H.
4327
4328         Fix Qt/Linux build.
4329
4330         * CMakeLists.txt: Change SVGZoomEvent.idl location & add RenderFileUploadControl
4331         * platform/Icon.h: Add wtf/Platform.h include
4332         * platform/qt/FileChooserQt.cpp: Added as stub. Easy to implement though.
4333         (WebCore::FileChooser::FileChooser):
4334         (WebCore::FileChooser::~FileChooser):
4335         (WebCore::FileChooser::openFileChooser):
4336         (WebCore::FileChooser::basenameForWidth):
4337         (WebCore::FileChooser::uploadControlDetaching):
4338         (WebCore::FileChooser::chooseFile):
4339         * platform/qt/IconQt.cpp: Added as stub.
4340         (WebCore::Icon::Icon):
4341         (WebCore::Icon::~Icon):
4342         (WebCore::Icon::newIconForFile):
4343         (WebCore::Icon::paint):
4344         * platform/qt/TemporaryLinkStubs.cpp: Remove old RenderFileButton code & some new *Labels needed
4345         (searchableIndexIntroduction):
4346         (fileButtonChooseFileLabel):
4347         (fileButtonNoFileSelectedLabel):
4348
4349 2006-09-12  Adam Roben  <aroben@apple.com>
4350
4351         Reviewed by eseidel.
4352
4353         Switch back to passing relative paths to generate-bindings.pl when
4354         generating JS bindings.
4355
4356         * DerivedSources.make: Pass in relative paths to generate-bindings.pl
4357         * bindings/scripts/CodeGenerator.pm: Make ScanDirectory never call
4358         chdir and always construct absolute paths instead.
4359
4360 2006-09-12  David Hyatt  <hyatt@apple.com>
4361
4362         Fix for bug 3244, implement html4 label support.
4363
4364         Reviewed by mjs, aroben
4365
4366         Added fast/events/label-focus.html
4367
4368         * css/html4.css:
4369         * html/HTMLLabelElement.cpp:
4370         (WebCore::HTMLLabelElement::formElement):
4371         (WebCore::HTMLLabelElement::setActive):
4372         (WebCore::HTMLLabelElement::setHovered):
4373         (WebCore::HTMLLabelElement::defaultEventHandler):
4374         * html/HTMLLabelElement.h:
4375
4376 2006-09-12  Julien Palmas  <julien.palmas@gmail.com>
4377
4378         Reviewed by&n