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