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