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