509bd897603be33b67069b6052f23c4bb6b71b8b
[WebKit-https.git] / WebCore / ChangeLog
1 2006-10-12  Dave Hyatt  <hyatt@apple.com>
2
3         Patch to add more clipping retrieval functionality for widgets.
4        
5         Reviewed by mjs
6
7         * page/Frame.h:
8         Remove windowResizerRect.  This is in the wrong place.
9         
10         * page/FrameView.cpp:
11         (WebCore::FrameView::windowClipRect):
12         (WebCore::FrameView::windowClipRectForLayer):
13         Break out windowClipRect into helper functions that can be called separately (to make
14         it easier for scrollbars in overflow sections and list boxes to get to an enclosing
15         layer and get the right clip.
16         
17         * page/FrameView.h:
18         Add the new windowClipRect helper methods.
19         
20         * platform/ScrollBar.h:
21         Add a new interface to ScrollbarClient so that scrollbars can hand back proper
22         clip rects for themselves depending on how they are used.
23         
24         * platform/ScrollView.h:
25         Stub out methods for talking to a double buffer backing store on Win32.
26         
27         * platform/Widget.h:
28         Add the ability to query for invalidation suppression.
29         
30         * rendering/RenderLayer.cpp:
31         (WebCore::RenderLayer::windowClipRect):
32         (WebCore::RenderLayer::paintOverflowControls):
33         (WebCore::RenderLayer::calculateRects):
34         (WebCore::RenderLayer::childrenClipRect):
35         (WebCore::RenderLayer::selfClipRect):
36         * rendering/RenderLayer.h:
37         Enhance layers so that they can return either their foreground or background
38         document clip rects.  Make sure a layer scrollbar can return a proper clip.
39         
40         * rendering/RenderListBox.cpp:
41         (WebCore::RenderListBox::windowClipRect):
42         * rendering/RenderListBox.h:
43         Make sure a list box scrollbar can return a proper clip.
44         
45         * rendering/RenderObject.cpp:
46         (WebCore::RenderObject::enclosingLayer):
47         * rendering/RenderObject.h:
48         Make enclosingLayer const.
49         
50 2006-10-11  Darin Adler  <darin@apple.com>
51
52         Reviewed by John.
53
54         - some changes to prepare for converting more code to C++
55
56         * bridge/mac/WebCoreFrameBridge.h: Added import of <Cocoa/Cocoa.h> so this header is
57         self-sufficient.
58
59         * bridge/mac/WebCoreViewFactory.h: Added forward declaration of the NSMenu class.
60         Needed since the class is used in this header (for some work I have not landed yet).
61
62         * loader/mac/LoaderNSURLExtras.h:
63         * loader/mac/WebFormDataStream.h:
64         Added extern "C" so this code can be used from C++.
65
66         * loader/mac/LoaderNSURLExtras.m:
67         * loader/mac/WebDataProtocol.mm:
68         * loader/mac/WebDocumentLoader.mm:
69         * loader/mac/WebFormDataStream.m:
70         * loader/mac/WebLoader.mm:
71         * loader/mac/WebMainResourceLoader.mm:
72         * loader/mac/WebNetscapePlugInStreamLoader.mm:
73         * loader/mac/WebPolicyDecider.mm:
74         * loader/mac/WebSubresourceLoader.mm:
75         Added missing includes of config.h.
76
77 2006-10-11  John Sullivan  <sullivan@apple.com>
78         
79         Darin wrote this code; we tested it; I give it the thumbs up.
80         
81         - fixed regression from svn revision 16982 that was generating the wrong Obj-C classes
82
83         The hash table to look up an element class given a QualifiedName was
84         not working at all.
85
86         * dom/QualifiedName.h:
87         (WebCore::QualifiedName::impl):
88         Added. This new accessor method for impl is needed if we want to use
89         a QualifiedName as a hash table key without doing the kind of specialization
90         we do for String. Maybe later we can do the String thing.
91
92         * bindings/objc/DOM.mm:
93         (WebCore::addElementClass):
94         Use QualifiedName.impl instead of the QualifiedName pointer itself.
95         The QualifiedName pointer is *not* unique so almost nothing would be found
96         in this hash table!
97         (WebCore::elementClass):
98         ditto
99         
100 2006-10-11  Adam Roben  <aroben@apple.com>
101
102         Rubberstamped by Anders.
103
104         Clean up FileChooser::create and Icon::newIconForFile.
105
106         * WebCore.xcodeproj/project.pbxproj:
107         * platform/mac/FileChooserMac.mm:
108         (WebCore::FileChooser::create):
109         * platform/mac/IconMac.mm:
110         (WebCore::Icon::newIconForFile):
111
112 2006-10-11  Oliver Hunt  <oliver@apple.com>
113
114         Reviewed by Adam.
115
116         Fix for http://bugs.webkit.org/show_bug.cgi?id=11251
117         Corrects canvas tag to not throw JS exception when drawing
118         zero sized rects, arcs, etc
119
120         * html/CanvasRenderingContext2D.cpp:
121         (WebCore::CanvasRenderingContext2D::arcTo):
122         (WebCore::CanvasRenderingContext2D::arc):
123         (WebCore::CanvasRenderingContext2D::rect):
124         (WebCore::CanvasRenderingContext2D::clearRect):
125         (WebCore::CanvasRenderingContext2D::fillRect):
126         (WebCore::CanvasRenderingContext2D::strokeRect):
127
128 2006-10-11  Rob Buis  <buis@kde.org>
129
130         Reviewed by Mitz.
131
132         http://bugs.webkit.org/show_bug.cgi?id=11221
133         REGRESSION: iExploder crash due to style="cursor: url()"
134
135         Take better care of empty cursor lists.
136
137         Test: fast/css/invalid-cursor-property-crash.html
138
139         * css/cssparser.cpp:
140         (WebCore::CSSParser::parseValue):
141
142 2006-10-11  Adam Roben  <aroben@apple.com>
143
144         Fixing Windows for real this time.
145
146         * platform/win/TemporaryLinkStubs.cpp:
147         (FileChooser::create):
148
149 2006-10-11  Adam Roben  <aroben@apple.com>
150
151         Fix Windows build.
152
153         * platform/win/TemporaryLinkStubs.cpp:
154         (FileChooser::create):
155
156 2006-10-11  Antti Koivisto  <koivisto@iki.fi>
157
158         Reviewed by Hyatt.
159         
160         http://bugs.webkit.org/show_bug.cgi?id=4377
161         
162         Respect css visibility semantics for layers too
163
164         * rendering/RenderContainer.cpp:
165         (WebCore::RenderContainer::removeChildNode):
166         (WebCore::RenderContainer::appendChildNode):
167         (WebCore::RenderContainer::insertChildNode):
168         * rendering/RenderLayer.cpp:
169         (WebCore::RenderLayer::RenderLayer):
170         (WebCore::RenderLayer::updateLayerPositions):
171         (WebCore::RenderLayer::setHasVisibleContent):
172         (WebCore::RenderLayer::dirtyVisibleContentStatus):
173         (WebCore::RenderLayer::childVisibilityChanged):
174         (WebCore::RenderLayer::dirtyVisibleDescendantStatus):
175         (WebCore::RenderLayer::updateVisibilityStatus):
176         (WebCore::RenderLayer::addChild):
177         (WebCore::RenderLayer::removeChild):
178         (WebCore::RenderLayer::updateZOrderLists):
179         (WebCore::RenderLayer::collectLayers):
180         * rendering/RenderLayer.h:
181         (WebCore::RenderLayer::hasVisibleContent):
182         * rendering/RenderObject.cpp:
183         (WebCore::RenderObject::setStyle):
184
185 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
186
187         Reviewed by Oliver.
188
189         - added RetainPtr, smart pointer for refcounted ObjC objects and CFTypes
190
191         * WebCore.xcodeproj/project.pbxproj:
192         * platform/cf/RetainPtr.h: Added.
193         (WTF::):
194         (WTF::RetainPtr::RetainPtr):
195         (WTF::RetainPtr::~RetainPtr):
196         (WTF::RetainPtr::get):
197         (WTF::RetainPtr::operator*):
198         (WTF::RetainPtr::operator->):
199         (WTF::RetainPtr::operator!):
200         (WTF::RetainPtr::operator UnspecifiedBoolType):
201         (WTF::::operator):
202         (WTF::::swap):
203         (WTF::swap):
204         (WTF::operator==):
205         (WTF::operator!=):
206         (WTF::static_pointer_cast):
207         (WTF::const_pointer_cast):
208         (WTF::getPtr):
209         
210         - use it in WidgetMac so it gets tested in at least one place
211         
212         * platform/mac/WidgetMac.mm:
213         (WebCore::Widget::Widget):
214         (WebCore::Widget::~Widget):
215         (WebCore::Widget::setEnabled):
216         (WebCore::Widget::isEnabled):
217         (WebCore::Widget::setCursor):
218         (WebCore::Widget::getView):
219         (WebCore::Widget::setView):
220         (WebCore::Widget::getOuterView):
221
222 2006-10-10  Brady Eidson  <beidson@apple.com>
223
224         Reviewed by Maciej.
225
226         Moved WebFrameLoader from WebFrameBridge into WebCoreFrameBridge
227
228         * bridge/mac/WebCoreFrameBridge.h:
229         * bridge/mac/WebCoreFrameBridge.mm:
230         (-[WebCoreFrameBridge initMainFrameWithPage:]):
231         (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
232         (-[WebCoreFrameBridge dealloc]):
233         (-[WebCoreFrameBridge close]):
234         (-[WebCoreFrameBridge setFrameLoaderClient:]):
235         (-[WebCoreFrameBridge frameLoader]):
236         * loader/mac/WebFrameLoader.h:
237         * loader/mac/WebFrameLoader.mm:
238         (-[WebFrameLoader initWithFrameBridge:]):
239         (-[WebFrameLoader setFrameLoaderClient:]):
240
241 2006-10-10  Adam Roben  <aroben@apple.com>
242
243         Reviewed by Oliver.
244
245         Make FileChooser ref-counted.
246
247         * platform/FileChooser.h:
248         * platform/mac/FileChooserMac.mm:
249         (WebCore::FileChooser::create):
250         * rendering/RenderFileUploadControl.cpp:
251         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
252         (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
253         * rendering/RenderFileUploadControl.h:
254
255 2006-10-10  Sam Weinig  <sam.weinig@gmail.com>
256
257         Reviewed by Tim H.
258
259         Patch for http://bugs.webkit.org/show_bug.cgi?id=11248
260         Even More auto-generated Objective-C DOM bindings changes
261
262         - Auto-generate DOMSVGPathElement.
263
264         - Auto-generate the internal interfaces even for classes that have
265           custom internal implementations.  Change IDL property from ObjCNoInternal
266           to ObjCCustomInternalImpl to indicate the change.
267
268         - Add SVG classes to DOMNode and DOMEvent internal interfaces.
269
270         - Add isSVGZoomEvent() method to Event class to match other Event subclasses
271           and make DOM binding possible.
272
273         - Assorted cleanups.
274
275         * DerivedSources.make:
276         * WebCore.xcodeproj/project.pbxproj:
277         * bindings/objc/DOM.mm:
278         (WebCore::addElementClass):
279         (WebCore::createElementClassMap):
280         (WebCore::elementClass):
281         (-[DOMNode description]):
282         (+[DOMNode _nodeWith:WebCore::]):
283         (-[DOMNode addEventListener:listener:useCapture:]):
284         (-[DOMNode removeEventListener:listener:useCapture:]):
285         (-[DOMElement _NPObject]):
286         (WebCore::ObjCEventListener::handleEvent):
287         * bindings/objc/DOMEvents.mm:
288         (+[DOMEvent _eventWith:WebCore::]):
289         * bindings/objc/DOMInternal.h:
290         * bindings/objc/DOMRGBColor.mm:
291         (-[DOMRGBColor WebCore::]):
292         * bindings/objc/DOMSVGPathSegInternal.h: Removed.
293         * bindings/scripts/CodeGeneratorObjC.pm:
294         * css/CSSRule.idl:
295         * css/CSSValue.idl:
296         * css/StyleSheet.idl:
297         * dom/Event.cpp:
298         (WebCore::Event::isSVGZoomEvent):
299         * dom/Event.h:
300         * dom/Event.idl:
301         * dom/Node.idl:
302         * ksvg2/events/SVGZoomEvent.cpp:
303         (WebCore::SVGZoomEvent::isSVGZoomEvent):
304         * ksvg2/events/SVGZoomEvent.h:
305         * ksvg2/svg/SVGAnimatedAngle.idl:
306         * ksvg2/svg/SVGCircleElement.idl:
307         * ksvg2/svg/SVGClipPathElement.idl:
308         * ksvg2/svg/SVGPathElement.idl:
309         * ksvg2/svg/SVGPathSeg.idl:
310
311 2006-10-10  Oliver Hunt  <oliver@apple.com>
312
313         rubber stamped by Anders.
314
315         More buildbot bustage
316
317         * kcanvas/SVGInlineFlowBox.cpp:
318         (WebCore::placeBoxesVerticallyWithAbsBaseline):
319
320 2006-10-10  Oliver Hunt  <oliver@apple.com>
321
322         Reviewed by Anders 
323
324         Unbreak build bots
325
326         * dom/Text.cpp:
327         * kcanvas/RenderSVGText.cpp:
328         (WebCore::RenderSVGText::layout):
329         * kcanvas/SVGInlineFlowBox.cpp:
330         (WebCore::placePositionedBoxesHorizontally):
331         (WebCore::placeBoxesVerticallyWithAbsBaseline):
332
333 2006-10-10  Oliver Hunt  <oliver@apple.com>
334
335         Reviewed by hyatt.
336
337         Fixes bugs #6423, #6559, #10380 and #10839 
338
339         * WebCore.xcodeproj/project.pbxproj:
340         * css/svg.css:
341         * dom/Text.cpp:
342         (WebCore::Text::createRenderer):
343         * kcanvas/RenderSVGInline.cpp: Added.
344         (WebCore::RenderSVGInline::RenderSVGInline):
345         (WebCore::RenderSVGInline::createInlineBox):
346         * kcanvas/RenderSVGInline.h: Added.
347         (WebCore::RenderSVGInline::renderName):
348         (WebCore::RenderSVGInline::requiresLayer):
349         * kcanvas/RenderSVGInlineText.cpp: Added.
350         (WebCore::RenderSVGInlineText::RenderSVGInlineText):
351         (WebCore::RenderSVGInlineText::absoluteRects):
352         (WebCore::RenderSVGInlineText::selectionRect):
353         * kcanvas/RenderSVGInlineText.h: Added.
354         (WebCore::RenderSVGInlineText::renderName):
355         (WebCore::RenderSVGInlineText::requiresLayer):
356         * kcanvas/RenderSVGTSpan.cpp: Added.
357         (WebCore::RenderSVGTSpan::RenderSVGTSpan):
358         (WebCore::RenderSVGTSpan::absoluteRects):
359         * kcanvas/RenderSVGTSpan.h: Added.
360         (WebCore::RenderSVGTSpan::renderName):
361         * kcanvas/RenderSVGText.cpp:
362         (WebCore::RenderSVGText::RenderSVGText):
363         (WebCore::RenderSVGText::computeAbsoluteRepaintRect):
364         (WebCore::RenderSVGText::layout):
365         (WebCore::RenderSVGText::createInlineBox):
366         (WebCore::RenderSVGText::nodeAtPoint):
367         (WebCore::RenderSVGText::absoluteRects):
368         (WebCore::RenderSVGText::paint):
369         (WebCore::RenderSVGText::relativeBBox):
370         * kcanvas/RenderSVGText.h:
371         (WebCore::RenderSVGText::renderName):
372         * kcanvas/SVGInlineFlowBox.cpp: Added.
373         (WebCore::SVGInlineFlowBox::paint):
374         (WebCore::SVGInlineFlowBox::placeBoxesHorizontally):
375         (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
376         (WebCore::paintSVGInlineFlow):
377         (WebCore::translateBox):
378         (WebCore::placePositionedBoxesHorizontally):
379         (WebCore::placeSVGFlowHorizontally):
380         (WebCore::placeBoxesVerticallyWithAbsBaseline):
381         (WebCore::placeSVGFlowVertically):
382         * kcanvas/SVGInlineFlowBox.h: Added.
383         (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
384         * kcanvas/SVGRootInlineBox.cpp: Added.
385         (WebCore::SVGRootInlineBox::paint):
386         (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
387         (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
388         * kcanvas/SVGRootInlineBox.h: Added.
389         (WebCore::SVGRootInlineBox::SVGRootInlineBox):
390         * ksvg2/svg/SVGTRefElement.cpp:
391         (SVGTRefElement::createRenderer):
392         * ksvg2/svg/SVGTSpanElement.cpp:
393         (SVGTSpanElement::createRenderer):
394         * rendering/InlineFlowBox.h:
395
396 2006-10-10  Adam Roben  <aroben@apple.com>
397
398         Reviewed by Adele.
399
400         Improve popup menu behavior.
401
402         * html/HTMLSelectElement.cpp:
403         (WebCore::HTMLSelectElement::HTMLSelectElement): Cache
404         m_lastOnChangeIndex so we know when to fire onChange.
405         (WebCore::HTMLSelectElement::setSelectedIndex): Added parameter to
406         specify whether we should fire onChange.
407         (WebCore::HTMLSelectElement::dispatchBlurEvent): Fire onChange on blur.
408         (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Fire
409         onChange when using the Enter key to change the selection.
410         * html/HTMLSelectElement.h:
411         * rendering/RenderMenuList.cpp:
412         (WebCore::RenderMenuList::updateFromElement): Extract setText logic
413         into its own method.
414         (WebCore::RenderMenuList::setTextFromOption): New method.
415         (WebCore::RenderMenuList::valueChanged): Let setSelectedIndex call
416         onChange instead of calling it directly here.
417         * rendering/RenderMenuList.h:
418
419 2006-10-10  Adele Peterson  <adele@apple.com>
420
421         Reviewed by Beth. 
422
423
424         - Fix for <rdar://problem/4707489> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active <input type=text>
425           and <rdar://problem/4707519> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active textarea
426
427         Moved autoscroll code to the Frame class
428
429         * bridge/mac/FrameMac.h: Moved _mouseDownMayStartDrag and _mouseDownMayStartAutoscroll flags to the frame.
430         * bridge/mac/FrameMac.mm: Use new getters and setters for drag and autoscroll flags.  Moved autoscroll code to Frame::handleMouseMoveEvent.
431         (WebCore::FrameMac::FrameMac):
432         (WebCore::FrameMac::handleMousePressEvent):
433         (WebCore::FrameMac::eventMayStartDrag):
434         (WebCore::FrameMac::handleMouseMoveEvent):
435         (WebCore::FrameMac::mouseDown):
436
437         * bridge/mac/WebCoreFrameBridge.h: Removed handleAutoscrollForMouseDragged, which called over the bridge for AppKit to do autoscroll for us.
438         Now we scroll our views in WebCore.
439
440         * page/Frame.cpp:
441         (WebCore::Frame::handleMousePressEvent): Initialize the mouseDownMayStartAutoscroll flag.
442         (WebCore::Frame::handleMouseMoveEvent): Now kicks off autoscroll if appropriate.  Moved from FrameMac.
443         (WebCore::Frame::updateSelectionForMouseDragOverPosition): Factored code out from handleMouseMoveEvent so we can update the selection from autoscroll too.
444         (WebCore::Frame::mouseDownMayStartAutoscroll): Added.
445         (WebCore::Frame::setMouseDownMayStartAutoscroll): Added.
446         (WebCore::Frame::mouseDownMayStartDrag): Added.
447         (WebCore::Frame::setMouseDownMayStartDrag): Added.
448         (WebCore::Frame::autoscrollRenderer): Added
449         (WebCore::Frame::setAutoscrollRenderer): Added.
450         (WebCore::Frame::handleAutoscroll): Updated to use autoscrollRenderer getter and setter.
451         (WebCore::Frame::autoscrollTimerFired): ditto.
452         (WebCore::Frame::stopAutoscrollTimer): ditto. 
453         * page/Frame.h: Made autoscrollRenderer and stopAutoscrollTimer public, so the renderer being autoscrolled can kill the timer when it dies.
454
455         * page/FramePrivate.h:
456         (WebCore::FramePrivate::FramePrivate): Added mouseDownMayStartDrag and mouseDownMayStartAutoscroll flags.  Moved from FrameMac.
457
458         * page/FrameView.cpp: Store the current mouse position in window coordinates.  The callers can convert to their own coordinate space.
459         (WebCore::FrameView::handleMousePressEvent):
460         (WebCore::FrameView::handleMouseDoubleClickEvent):
461         (WebCore::FrameView::handleMouseMoveEvent):
462         (WebCore::FrameView::handleMouseReleaseEvent):
463
464         * rendering/RenderLayer.cpp:
465         (WebCore::RenderLayer::autoscroll): Rewrote this to scroll recursively, and to scroll based on the mouse position (not the selection).  
466          We also need to update the selection here, since autoscroll can occur without a mouseMove event, and the selection needs to get reset as we scroll.
467
468         * rendering/RenderListBox.cpp:
469         (WebCore::RenderListBox::autoscroll): Convert the mouse coordinates to the right space.
470
471         * rendering/RenderObject.cpp:
472         (WebCore::RenderObject::shouldAutoscroll): Also return true if the renderer is a root (so we know to autoscroll views too)
473         (WebCore::RenderObject::destroy): If this renderer is being autoscrolled, stop the frame's autoscroll timer.
474
475 2006-10-10  Darin Adler  <darin@apple.com>
476
477         Rubber stamped by Maciej.
478
479         - convert many of the loader source files to Objective-C++ to prepare
480           to convert some of them to C++
481
482         * WebCore.xcodeproj/project.pbxproj:
483         * loader/mac/WebDataProtocol.m: Removed.
484         * loader/mac/WebDocumentLoader.m: Removed.
485         * loader/mac/WebFormState.m: Removed.
486         * loader/mac/WebFrameLoader.m: Removed.
487         * loader/mac/WebLoader.m: Removed.
488         * loader/mac/WebMainResourceLoader.m: Removed.
489         * loader/mac/WebNetscapePlugInStreamLoader.m: Removed.
490         * loader/mac/WebPolicyDecider.m: Removed.
491         * loader/mac/WebSubresourceLoader.m: Removed.
492         * loader/mac/WebDataProtocol.mm: Added.
493         * loader/mac/WebDocumentLoader.mm: Added.
494         * loader/mac/WebFormState.mm: Added.
495         * loader/mac/WebFrameLoader.mm: Added.
496         * loader/mac/WebLoader.mm: Added.
497         * loader/mac/WebMainResourceLoader.mm: Added.
498         * loader/mac/WebNetscapePlugInStreamLoader.mm: Added.
499         * loader/mac/WebPolicyDecider.mm: Added.
500         * loader/mac/WebSubresourceLoader.mm: Added.
501
502 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
503
504         Reviewed by Mitz.
505
506         - fixed REGRESSION (r16960): crash on navigating to site
507         http://www.zoominfo.com/Search/CompanyDetail.aspx?CompanyID=62948057&cs=QGDwILZIE
508         
509         * loader/mac/WebFrameLoader.m:
510         (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
511         Add back a mistakenly removed retain.
512
513 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
514
515         Not reviewed, build fix.
516
517         - fixed release build
518
519         * WebCore.xcodeproj/project.pbxproj:
520
521 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
522
523         Rubber stamped by Eric.
524
525         - moved a big honkin' pile of code over from WebKit; made minimal needed changes to compile
526
527         * WebCore.exp:
528         * WebCore.xcodeproj/project.pbxproj:
529         * loader/mac/LoaderNSURLExtras.m: Added.
530         * loader/mac/WebDataProtocol.m: Added.
531         * loader/mac/WebDocumentLoader.m: Added.
532         * loader/mac/WebFormDataStream.m: Added.
533         * loader/mac/WebFrameLoader.m: Added.
534         * loader/mac/WebLoader.m: Added.
535         (-[NSURLProtocol didReceiveResponse:]):
536         (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
537         * loader/mac/WebMainResourceLoader.m: Added.
538         (-[WebMainResourceLoader didReceiveResponse:]):
539         * loader/mac/WebPolicyDecider.m: Added.
540         * loader/mac/WebSubresourceLoader.h: Added.
541         * loader/mac/WebSubresourceLoader.m: Added.
542
543 2006-10-10  Maciej Stachowiak  <mjs@apple.com>
544
545         Reviewed by Oliver (sort of?)
546
547         - WebCore part of moving down NSURL extras
548
549         * WebCore.exp:
550         * platform/mac/WebCoreSystemInterface.h:
551         * platform/mac/WebCoreSystemInterface.mm:
552
553 2006-10-09  Rob Buis  <buis@kde.org>
554
555         Reviewed by Mitz.
556
557         http://bugs.webkit.org/show_bug.cgi?id=11217
558         Cleanup svg coding style
559
560         Cleanup coding style in svg animation classes.
561
562         * ksvg2/svg/SVGAnimateColorElement.cpp:
563         (WebCore::SVGAnimateColorElement::handleTimerEvent):
564         * ksvg2/svg/SVGAnimateElement.cpp:
565         (WebCore::SVGAnimateElement::SVGAnimateElement):
566         (WebCore::SVGAnimateElement::handleTimerEvent):
567         * ksvg2/svg/SVGAnimateTransformElement.cpp:
568         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
569         (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
570         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
571         (WebCore::SVGAnimateTransformElement::parseTransformValue):
572         (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
573         (WebCore::SVGAnimateTransformElement::initialMatrix):
574         (WebCore::SVGAnimateTransformElement::transformMatrix):
575         * ksvg2/svg/SVGAnimateTransformElement.h:
576         * ksvg2/svg/SVGAnimatedPathData.cpp:
577         * ksvg2/svg/SVGAnimatedPathData.h:
578         * ksvg2/svg/SVGAnimatedPoints.cpp:
579         * ksvg2/svg/SVGAnimatedPoints.h:
580         * ksvg2/svg/SVGAnimationElement.cpp:
581         (WebCore::SVGAnimationElement::targetElement):
582
583 2006-10-09  Maciej Stachowiak  <mjs@apple.com>
584
585         Reviewed by Oliver.
586
587         - added isMainFrame and frameLoader to WebCoreFrameBridge for ease of future code motion
588
589         * bridge/mac/WebCoreFrameBridge.h:
590         * bridge/mac/WebCoreFrameBridge.mm:
591         (-[WebCoreFrameBridge isMainFrame]):
592
593 2006-10-09  Adam Roben  <aroben@apple.com>
594
595         Backing out accidental commit.
596
597         * page/Frame.cpp:
598         (WebCore::Frame::finishedParsing):
599
600 2006-10-09  Adam Roben  <aroben@apple.com>
601
602         Reviewed by Darin.
603
604         Add ASSERTs to RefPtr to make sure we don't ref within a destructor, as
605         this could cause recursive calls to the destructor. RefPtr now also
606         inherits from Noncopyable.
607
608         * dom/NodeFilter.h:
609         * dom/Traversal.h:
610         * page/DOMWindow.h:
611         * page/Frame.cpp:
612         (WebCore::Frame::finishedParsing):
613         * page/Frame.h:
614         * page/Plugin.h:
615         * platform/FontFallbackList.h:
616         * platform/Icon.h:
617         * platform/Shared.h:
618         (WebCore::Shared::Shared):
619         (WebCore::Shared::ref):
620         (WebCore::Shared::deref):
621         (WebCore::Shared::hasOneRef):
622         (WebCore::Shared::refCount):
623         * platform/StringImpl.h:
624
625 2006-10-09  Oliver Hunt <ohunt@apple.com>
626
627         Reviewed by Anders.
628
629         Correcting ifdef's
630
631         * html/CanvasGradient.cpp:
632         (WebCore::CanvasGradient::CanvasGradient):
633         (WebCore::CanvasGradient::~CanvasGradient):
634         (WebCore::CanvasGradient::addColorStop):
635         * html/CanvasGradient.h:
636         * html/CanvasPattern.cpp:
637         (WebCore::CanvasPattern::CanvasPattern):
638         (WebCore::CanvasPattern::~CanvasPattern):
639         * html/CanvasPattern.h:
640         * html/CanvasRenderingContext2D.cpp:
641         (WebCore::CanvasRenderingContext2D::fill):
642         (WebCore::CanvasRenderingContext2D::stroke):
643         (WebCore::CanvasRenderingContext2D::fillRect):
644         (WebCore::CanvasRenderingContext2D::setShadow):
645         (WebCore::CanvasRenderingContext2D::applyShadow):
646         (WebCore::CanvasRenderingContext2D::drawImage):
647         (WebCore::CanvasRenderingContext2D::createPattern):
648         (WebCore::CanvasRenderingContext2D::applyStrokePattern):
649         (WebCore::CanvasRenderingContext2D::applyFillPattern):
650         * html/CanvasRenderingContext2D.h:
651         * html/CanvasStyle.cpp:
652         (WebCore::CanvasStyle::applyStrokeColor):
653         (WebCore::CanvasStyle::applyFillColor):
654         * html/HTMLCanvasElement.cpp:
655         (WebCore::HTMLCanvasElement::paint):
656         (WebCore::HTMLCanvasElement::createDrawingContext):
657         * html/HTMLCanvasElement.h:
658
659 2006-10-09  Adam Roben  <aroben@apple.com>
660
661         Reviewed by Maciej.
662
663         Fix a possible recursive destructor call.
664
665         * page/Frame.cpp:
666         (WebCore::Frame::~Frame): Add a FIXME about cleaning up the destructor.
667         (WebCore::Frame::finishedParsing): Don't create a protector RefPtr if
668         we're already being destroyed.
669
670 2006-10-09  Sam Weinig  <sam.weinig@gmail.com>
671
672         Reviewed by Tim H.
673
674         Patch for http://bugs.webkit.org/show_bug.cgi?id=11234
675         Assorted Objective-C bindings changes
676
677         - Auto-generate DOMSVGPathSegArcAbs, DOMSVGPathSegArcRel, DOMSVGPathSegClosePath, 
678           DOMSVGPathSegCurvetoCubicAbs, DOMSVGPathSegCurvetoCubicRel, 
679           DOMSVGPathSegCurvetoCubicSmoothAbs, DOMSVGPathSegCurvetoCubicSmoothRel, 
680           DOMSVGPathSegCurvetoQuadraticAbs, DOMSVGPathSegCurvetoQuadraticRel, 
681           DOMSVGPathSegCurvetoQuadraticSmoothAbs, DOMSVGPathSegCurvetoQuadraticSmoothRel, 
682           DOMSVGPathSegLinetoAbs, DOMSVGPathSegLinetoHorizontalAbs, 
683           DOMSVGPathSegLinetoHorizontalRel, DOMSVGPathSegLinetoRel, 
684           DOMSVGPathSegLinetoVerticalAbs, DOMSVGPathSegLinetoVerticalRel, 
685           DOMSVGPathSegMovetoAbs, DOMSVGPathSegMovetoRel and DOMSVGSVGElement.
686
687         - Auto-generate absoluteImageURL method for DOMHTMLInputElement and
688           DOMHTMLObjectElement.
689
690         - Auto-generate the internal methods for classes with ivars (notably 
691           DOMNodeIterator and DOMTreeWalker)
692
693         - Put more methods in the WebCore namespace and factor out the  
694           displayString method into DOMInternal.h as done by Darin in his 
695           patch for http://bugs.webkit.org/show_bug.cgi?id=11219.
696
697         * DerivedSources.make:
698         * WebCore.xcodeproj/project.pbxproj:
699         * bindings/objc/DOM.mm:
700         (-[DOMNode _initWithNode:WebCore::]):
701         (+[DOMNode _nodeWith:WebCore::]):
702         (-[DOMNode addEventListener:listener:useCapture:]):
703         (-[DOMNode removeEventListener:listener:useCapture:]):
704         (-[DOMNode dispatchEvent:]):
705         (-[DOMElement _imageTIFFRepresentation]):
706         (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
707         (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
708         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
709         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
710         * bindings/objc/DOMCSS.mm:
711         (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
712         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
713         (-[DOMCSSRule _initWithCSSRule:WebCore::]):
714         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
715         (-[DOMCSSValue _initWithCSSValue:WebCore::]):
716         (+[DOMCSSValue _CSSValueWith:WebCore::]):
717         * bindings/objc/DOMEvents.mm:
718         (-[DOMEvent _initWithEvent:WebCore::]):
719         (+[DOMEvent _eventWith:WebCore::]):
720         * bindings/objc/DOMExtensions.h:
721         * bindings/objc/DOMHTML.mm:
722         (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
723         * bindings/objc/DOMInternal.h:
724         (-[DOMNodeFilter WebCore::]):
725         * bindings/objc/DOMInternal.mm:
726         (-[WebScriptObject _init]):
727         (-[WebScriptObject _initializeScriptDOMNodeImp]):
728         (WebCore::displayString):
729         * bindings/objc/DOMObject.mm:
730         (-[DOMObject dealloc]):
731         (-[DOMObject finalize]):
732         * bindings/objc/DOMRGBColor.mm:
733         (-[DOMRGBColor dealloc]):
734         (-[DOMRGBColor finalize]):
735         (-[DOMRGBColor color]):
736         (-[DOMRGBColor _initWithRGB:WebCore::]):
737         (+[DOMRGBColor _RGBColorWithRGB:WebCore::]):
738         * bindings/objc/DOMSVG.h:
739         * bindings/objc/DOMSVGPathSegInternal.h: Added.
740         * bindings/objc/DOMSVGPathSegInternal.mm: Added.
741         (-[DOMSVGPathSeg WebCore::]):
742         (-[DOMSVGPathSeg _initWithSVGPathSeg:WebCore::]):
743         (+[DOMSVGPathSeg _SVGPathSegWith:WebCore::]):
744         * bindings/objc/DOMXPath.mm:
745         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
746         (+[DOMNativeXPathNSResolver _xpathNSResolverWith:WebCore::]):
747         * bindings/objc/PublicDOMInterfaces.h:
748         * bindings/scripts/CodeGeneratorObjC.pm:
749         * dom/NodeIterator.idl:
750         * dom/TreeWalker.idl:
751         * html/HTMLInputElement.idl:
752         * html/HTMLObjectElement.idl:
753         * ksvg2/svg/SVGDocument.idl:
754         * ksvg2/svg/SVGElement.idl:
755         * ksvg2/svg/SVGPathSeg.idl:
756         * ksvg2/svg/SVGPathSegArcAbs.idl:
757         * ksvg2/svg/SVGPathSegArcRel.idl:
758         * ksvg2/svg/SVGPathSegClosePath.idl:
759         * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl:
760         * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl:
761         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
762         * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl:
763         * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl:
764         * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl:
765         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
766         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
767         * ksvg2/svg/SVGPathSegLinetoAbs.idl:
768         * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl:
769         * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl:
770         * ksvg2/svg/SVGPathSegLinetoRel.idl:
771         * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl:
772         * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl:
773         * ksvg2/svg/SVGPathSegMovetoAbs.idl:
774         * ksvg2/svg/SVGPathSegMovetoRel.idl:
775
776 2006-10-09  Don Gibson  <dgibson77@gmail.com>
777
778         Unreviewed build fix.
779
780         Fix windows build bustage.
781
782         * platform/win/TemporaryLinkStubs.cpp:
783
784 2006-10-09  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
785
786         Reviewed by Geoff.
787
788         Fix memory leaks discovered via valgrind. Gdk build fixes.
789
790         * Projects/gdk/webcore-gdk.bkl:
791         * make-generated-sources.sh:
792         * platform/cairo/ImageCairo.cpp:
793         (WebCore::Image::draw):
794         * platform/gdk/FrameGdk.cpp:
795         (WebCore::FrameGdk::handleGdkEvent):
796         * platform/gdk/FrameGdk.h:
797         * platform/gdk/PlatformScrollBar.h:
798         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
799         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
800
801 2006-10-09  Nikolas Zimmermann  <zimmermann@kde.org>
802
803         Reviewed by Beth.
804
805         Fix LayoutTests/fast/css/case-transform.html with Qt - the last crashing layout test.
806
807         * platform/qt/GlyphMapQt.cpp: Handle UTF-16 characters properly
808         (WebCore::GlyphMap::fillPage):
809
810 2006-10-09  Nikolas Zimmermann  <zimmermann@kde.org>
811
812         Unreviewed build fix.
813
814         Fix for Qt/Linux build, based on fixes to the Win32 build in r16928 and r16929.
815
816         * platform/qt/FrameQt.cpp:
817         (WebCore::FrameQt::createJavaAppletWidget):
818         * platform/qt/FrameQt.h:
819         * platform/qt/TemporaryLinkStubs.cpp:
820
821 2006-10-09  Brady Eidson  <beidson@apple.com>
822
823         Reviewed by Maciej
824
825         Tiny changes to help reorganize WebFrameLoader code in WebKit
826
827         * bridge/mac/WebCoreIconDatabaseBridge.h: Added "createInstance"
828         * bridge/mac/WebCoreIconDatabaseBridge.mm:
829         (+[WebCoreIconDatabaseBridge sharedInstance]): Added, uses createInstance from WebKit side
830
831 2006-10-09  Adam Roben  <aroben@apple.com>
832
833         Reviewed by Adele.
834
835         Remove redundant call to Frame::cancelAndClear from ~Frame, since it's
836         already called frome ~FrameMac.
837
838         * page/Frame.cpp:
839         (WebCore::Frame::~Frame):
840
841 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
842
843         * bridge/win/FrameWin.h:
844         Add function declaration.
845         
846 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
847
848         * platform/win/TemporaryLinkStubs.cpp:
849         (FrameWin::createJavaAppletWidget):
850         Try fixing the Win32 build.
851
852 2006-10-09  Anders Carlsson  <acarlsson@apple.com>
853
854         Reviewed by Adam.
855
856         Move applet widget creation to Frame and get rid of JavaAppletWidget.
857         * WebCore.xcodeproj/project.pbxproj:
858         * bridge/JavaAppletWidget.h: Removed.
859         * bridge/mac/FrameMac.h:
860         * bridge/mac/FrameMac.mm:
861         (WebCore::FrameMac::createJavaAppletWidget):
862         * bridge/mac/JavaAppletWidget.mm: Removed.
863         * page/Frame.h:
864         * rendering/RenderApplet.cpp:
865         (WebCore::RenderApplet::createWidgetIfNecessary):
866
867 2006-10-09  Mitz Pettel  <mitz@webkit.org>
868
869         Reviewed by Darin.
870
871         - http://bugs.webkit.org/show_bug.cgi?id=11220
872           Fix manual test for http://bugs.webkit.org/show_bug.cgi?id=8276
873
874         Subversion does not support resource forks and HFS metadata, so
875         the resources for this test need to be on a disk image.
876
877         * manual-tests/plain-text-paste.html: Changed instructions to refer to the disk image.
878         * manual-tests/resources/plain-text-paste.dmg: Added.
879         * manual-tests/resources/plain-text-paste/._1.textClipping: Removed.
880         * manual-tests/resources/plain-text-paste/._2.textClipping: Removed.
881         * manual-tests/resources/plain-text-paste/._4.txt: Removed.
882         * manual-tests/resources/plain-text-paste/._5.webloc: Removed.
883         * manual-tests/resources/plain-text-paste/1.textClipping: Removed.
884         * manual-tests/resources/plain-text-paste/2.textClipping: Removed.
885         * manual-tests/resources/plain-text-paste/3.gif: Removed.
886         * manual-tests/resources/plain-text-paste/4.txt: Removed.
887         * manual-tests/resources/plain-text-paste/5.webloc: Removed.
888
889 2006-10-09  Rob Buis  <buis@kde.org>
890
891         Reviewed by Darin.
892
893         http://bugs.webkit.org/show_bug.cgi?id=11217
894         Cleanup svg coding style
895
896         Cleanup coding style in filter classes.
897
898         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
899         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
900         (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
901         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
902         * ksvg2/svg/SVGFEBlendElement.cpp:
903         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
904         (WebCore::SVGFEBlendElement::parseMappedAttribute):
905         (WebCore::SVGFEBlendElement::filterEffect):
906         * ksvg2/svg/SVGFEBlendElement.h:
907         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
908         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
909         (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
910         (WebCore::SVGFEColorMatrixElement::filterEffect):
911         * ksvg2/svg/SVGFEColorMatrixElement.h:
912         * ksvg2/svg/SVGFECompositeElement.cpp:
913         (WebCore::SVGFECompositeElement::parseMappedAttribute):
914         * ksvg2/svg/SVGFECompositeElement.h:
915         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
916         (WebCore::SVGFEDisplacementMapElement::stringToChannel):
917         * ksvg2/svg/SVGFEDisplacementMapElement.h:
918         * ksvg2/svg/SVGFEFloodElement.cpp:
919         (WebCore::SVGFEFloodElement::filterEffect):
920         * ksvg2/svg/SVGFEFuncAElement.cpp:
921         (WebCore::SVGFEFuncAElement::SVGFEFuncAElement):
922         * ksvg2/svg/SVGFEFuncBElement.cpp:
923         (WebCore::SVGFEFuncBElement::SVGFEFuncBElement):
924         * ksvg2/svg/SVGFEFuncGElement.cpp:
925         (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
926         * ksvg2/svg/SVGFEFuncRElement.cpp:
927         (WebCore::SVGFEFuncRElement::SVGFEFuncRElement):
928         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
929         (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
930         (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
931         (WebCore::SVGFEGaussianBlurElement::filterEffect):
932         * ksvg2/svg/SVGFEGaussianBlurElement.h:
933         * ksvg2/svg/SVGFELightElement.cpp:
934         (WebCore::SVGFELightElement::SVGFELightElement):
935         (WebCore::SVGFELightElement::parseMappedAttribute):
936         * ksvg2/svg/SVGFELightElement.h:
937         * ksvg2/svg/SVGFEMergeElement.cpp:
938         (WebCore::SVGFEMergeElement::SVGFEMergeElement):
939
940 2006-10-09  Rob Buis  <buis@kde.org>
941
942         Reviewed by olliej.
943
944         http://bugs.webkit.org/show_bug.cgi?id=11217
945         Cleanup svg coding style
946
947         Cleanup coding style in SVGPath* classes.
948
949         * ksvg2/svg/SVGPathElement.cpp:
950         (WebCore::SVGPathElement::SVGPathElement):
951         (WebCore::SVGPathElement::getPointAtLength):
952         (WebCore::SVGPathElement::createSVGPathSegClosePath):
953         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
954         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
955         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
956         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
957         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
958         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
959         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
960         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
961         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
962         (WebCore::SVGPathElement::createSVGPathSegArcRel):
963         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
964         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
965         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
966         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
967         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
968         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
969         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
970         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
971         (WebCore::SVGPathElement::svgMoveTo):
972         (WebCore::SVGPathElement::svgLineTo):
973         (WebCore::SVGPathElement::svgLineToHorizontal):
974         (WebCore::SVGPathElement::svgLineToVertical):
975         (WebCore::SVGPathElement::svgCurveToCubic):
976         (WebCore::SVGPathElement::svgCurveToCubicSmooth):
977         (WebCore::SVGPathElement::svgCurveToQuadratic):
978         (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
979         (WebCore::SVGPathElement::svgArcTo):
980         (WebCore::SVGPathElement::parseMappedAttribute):
981         (WebCore::SVGPathElement::pathSegList):
982         (WebCore::SVGPathElement::normalizedPathSegList):
983         (WebCore::SVGPathElement::animatedPathSegList):
984         (WebCore::SVGPathElement::animatedNormalizedPathSegList):
985         (WebCore::SVGPathElement::toPathData):
986         * ksvg2/svg/SVGPathElement.h:
987         (WebCore::SVGPathElement::rendererIsNeeded):
988         * ksvg2/svg/SVGPathSeg.h:
989         * ksvg2/svg/SVGPathSegArc.cpp:
990
991 2006-10-09  Rob Buis  <buis@kde.org>
992
993         Reviewed by aroben.
994
995         http://bugs.webkit.org/show_bug.cgi?id=11217
996         Cleanup svg coding style
997
998         Cleanup coding style in svg shape classes.
999
1000         * ksvg2/svg/SVGCircleElement.cpp:
1001         (WebCore::SVGCircleElement::SVGCircleElement):
1002         (WebCore::SVGCircleElement::parseMappedAttribute):
1003         (WebCore::SVGCircleElement::pushAttributeContext):
1004         * ksvg2/svg/SVGCircleElement.h:
1005         (WebCore::SVGCircleElement::rendererIsNeeded):
1006         * ksvg2/svg/SVGEllipseElement.cpp:
1007         * ksvg2/svg/SVGEllipseElement.h:
1008         (WebCore::SVGEllipseElement::rendererIsNeeded):
1009         * ksvg2/svg/SVGLineElement.cpp:
1010         (WebCore::SVGLineElement::parseMappedAttribute):
1011         (WebCore::SVGLineElement::pushAttributeContext):
1012         * ksvg2/svg/SVGLineElement.h:
1013         (WebCore::SVGLineElement::rendererIsNeeded):
1014         * ksvg2/svg/SVGPolyElement.cpp:
1015         (WebCore::SVGPolyElement::SVGPolyElement):
1016         (WebCore::SVGPolyElement::points):
1017         (WebCore::SVGPolyElement::animatedPoints):
1018         (WebCore::SVGPolyElement::parseMappedAttribute):
1019         (WebCore::SVGPolyElement::notifyAttributeChange):
1020         * ksvg2/svg/SVGPolyElement.h:
1021         (WebCore::SVGPolyElement::rendererIsNeeded):
1022         * ksvg2/svg/SVGPolygonElement.cpp:
1023         (WebCore::SVGPolygonElement::SVGPolygonElement):
1024         (WebCore::SVGPolygonElement::toPathData):
1025         * ksvg2/svg/SVGPolygonElement.h:
1026         * ksvg2/svg/SVGPolylineElement.cpp:
1027         (WebCore::SVGPolylineElement::SVGPolylineElement):
1028         (WebCore::SVGPolylineElement::toPathData):
1029         * ksvg2/svg/SVGPolylineElement.h:
1030         * ksvg2/svg/SVGRectElement.cpp:
1031         (WebCore::SVGRectElement::parseMappedAttribute):
1032         (WebCore::SVGRectElement::pushAttributeContext):
1033         * ksvg2/svg/SVGRectElement.h:
1034         (WebCore::SVGRectElement::rendererIsNeeded):
1035
1036 2006-10-08  Darin Adler  <darin@apple.com>
1037
1038         Reviewed by Maciej.
1039
1040         - added a bit more WebCoreSystemInterface
1041
1042             wkGetNSURLResponseCalculatedExpiration
1043             wkGetNSURLResponseLastModifiedDate
1044             wkGetNSURLResponseMustRevalidate
1045
1046         * WebCore.exp: Added the new symbols.
1047         * platform/mac/WebCoreSystemInterface.h: Ditto.
1048         * platform/mac/WebCoreSystemInterface.mm: Ditto.
1049
1050         - quiet down the code generation script
1051
1052         * bindings/scripts/CodeGenerator.pm:
1053
1054 2006-10-08  Maciej Stachowiak  <mjs@apple.com>
1055
1056         Reviewed by Darin.
1057
1058         - more code laundering - add wkSupportsMultipartXMixedReplace
1059
1060         * WebCore.exp:
1061         * platform/mac/WebCoreSystemInterface.h:
1062         * platform/mac/WebCoreSystemInterface.mm:
1063
1064 2006-10-08  Nikolas Zimmermann  <zimmermann@kde.org>
1065
1066         Reviewed by Darin and Oliver.
1067
1068         Fix artefacts when drawing polygons, most noticeable when painting <hr> elements.
1069
1070         * platform/qt/GraphicsContextQt.cpp: Fix wrong operator<< usage.
1071         (WebCore::GraphicsContext::drawConvexPolygon):
1072
1073 2006-10-08  Anders Carlsson  <acarlsson@apple.com>
1074
1075         Reviewed by Darin.
1076
1077         * page/Frame.cpp:
1078         (WebCore::Frame::submitForm):
1079         No need to use latin1() here.
1080
1081 2006-10-08  Nikolas Zimmermann  <zimmermann@kde.org>
1082
1083         Reviewed by Darin.
1084
1085         Kill warnings when generating IDL files on Qt/Linux, as the
1086         SOURCE_ROOT environment variable is not defined (and not needed) for us.
1087
1088         * bindings/scripts/CodeGenerator.pm:
1089
1090 2006-10-08  Maciej Stachowiak  <mjs@apple.com>
1091
1092         Reviewed by Darin.
1093
1094         - split didNotOpenURL: into general and page-cache-specific parts
1095
1096         * bridge/mac/WebCoreFrameBridge.h:
1097         * bridge/mac/WebCoreFrameBridge.mm:
1098         (-[WebCoreFrameBridge didNotOpenURL:]):
1099         (-[WebCoreFrameBridge invalidatePageCache:]):
1100
1101 2006-10-08  Anders Carlsson  <acarlsson@apple.com>
1102
1103         Reviewed by Darin.
1104
1105         * loader/loader.cpp:
1106         Remove DeprecatedStringList.h include.
1107         
1108         * page/Frame.cpp:
1109         (WebCore::Frame::submitForm):
1110         Don't remove "attach" from mailto URLs, we don't do it anywhere else.
1111
1112 2006-10-08  Sam Weinig  <sam.weinig@gmail.com>
1113
1114         Reviewed by Darin.
1115
1116         Patch for http://bugs.webkit.org/show_bug.cgi?id=11215
1117         Yet another round of Objective-C SVG DOM bindings auto-generation
1118
1119         - Auto-generate DOMSVGPatternElement, DOMSVGPointList, DOMSVGPolygonElement, 
1120           DOMSVGPolylineElement, DOMSVGRadialGradientElement, DOMSVGRenderingIntent,
1121           DOMSVGScriptElement, DOMSVGSetElement, DOMSVGStopElement, DOMSVGSwitchElement, 
1122           DOMSVGSymbolElement, DOMSVGTRefElement, DOMSVGTSpanElement, 
1123           DOMSVGTextContentElement, DOMSVGTextElement, DOMSVGTextPositioningElement, 
1124           DOMSVGTitleElement, DOMSVGUnitTypes, DOMSVGUseElement, DOMSVGViewElement, 
1125           DOMSVGZoomAndPan and DOMSVGZoomEvent.
1126
1127         - Auto-generate the implementations of DOMHTMLAppletElement and DOMHTMLEmbedElement
1128           using the new [ConvertFromString] property.
1129
1130         - Add forward declarations for NS* types to auto-generated classes.
1131
1132         * DerivedSources.make:
1133         * WebCore.xcodeproj/project.pbxproj:
1134         * bindings/objc/DOMHTMLAppletElement.mm: Removed.
1135         * bindings/objc/DOMHTMLEmbedElement.mm: Removed.
1136         * bindings/objc/DOMInternal.h:
1137         * bindings/objc/DOMSVG.h:
1138         * bindings/scripts/CodeGeneratorObjC.pm:
1139         * html/HTMLAppletElement.idl:
1140         * html/HTMLEmbedElement.idl:
1141         * ksvg2/svg/SVGPatternElement.idl:
1142         * ksvg2/svg/SVGPolygonElement.idl:
1143         * ksvg2/svg/SVGPolylineElement.idl:
1144         * ksvg2/svg/SVGRadialGradientElement.idl:
1145         * ksvg2/svg/SVGRenderingIntent.idl:
1146         * ksvg2/svg/SVGScriptElement.idl:
1147         * ksvg2/svg/SVGSetElement.idl:
1148         * ksvg2/svg/SVGStopElement.idl:
1149         * ksvg2/svg/SVGSwitchElement.idl:
1150         * ksvg2/svg/SVGSymbolElement.idl:
1151         * ksvg2/svg/SVGTRefElement.idl:
1152         * ksvg2/svg/SVGTSpanElement.idl:
1153         * ksvg2/svg/SVGTextContentElement.idl:
1154         * ksvg2/svg/SVGTextElement.idl:
1155         * ksvg2/svg/SVGTextPositioningElement.idl:
1156         * ksvg2/svg/SVGTitleElement.idl:
1157         * ksvg2/svg/SVGUseElement.idl:
1158         * ksvg2/svg/SVGViewElement.idl:
1159         * ksvg2/svg/SVGZoomEvent.idl:
1160
1161 2006-10-07  Anders Carlsson  <acarlsson@apple.com>
1162
1163         Reviewed by Maciej.
1164
1165         Remove crossDomain, it was unused and is one of the last functions that use DeprecatedStringList.        
1166         * loader/loader.cpp:
1167         (WebCore::Loader::servePendingRequests):
1168         
1169 2006-10-07  Anders Carlsson  <acarlsson@apple.com>
1170
1171         Reviewed by Darin.
1172
1173         Convert a bunch of RefPtr<StringImpl> to String.
1174         
1175         * bridge/mac/FrameMac.h:
1176         * bridge/mac/FrameMac.mm:
1177         (WebCore::FrameMac::didTellBridgeAboutLoad):
1178         (WebCore::FrameMac::haveToldBridgeAboutLoad):
1179         * dom/BeforeUnloadEvent.cpp:
1180         (WebCore::BeforeUnloadEvent::storeResult):
1181         * dom/BeforeUnloadEvent.h:
1182         (WebCore::BeforeUnloadEvent::result):
1183         * dom/Document.cpp:
1184         (WebCore::Document::createEntityReference):
1185         * dom/Entity.cpp:
1186         (WebCore::Entity::Entity):
1187         (WebCore::Entity::nodeName):
1188         (WebCore::Entity::toString):
1189         * dom/Entity.h:
1190         (WebCore::Entity::publicId):
1191         (WebCore::Entity::systemId):
1192         (WebCore::Entity::notationName):
1193         * dom/EntityReference.cpp:
1194         (WebCore::EntityReference::EntityReference):
1195         (WebCore::EntityReference::nodeName):
1196         (WebCore::EntityReference::cloneNode):
1197         (WebCore::EntityReference::toString):
1198         * dom/EntityReference.h:
1199         * dom/KeyboardEvent.cpp:
1200         (WebCore::KeyboardEvent::KeyboardEvent):
1201         (WebCore::KeyboardEvent::initKeyboardEvent):
1202         * dom/KeyboardEvent.h:
1203         (WebCore::KeyboardEvent::keyIdentifier):
1204         * dom/MutationEvent.cpp:
1205         (WebCore::MutationEvent::MutationEvent):
1206         (WebCore::MutationEvent::initMutationEvent):
1207         * dom/MutationEvent.h:
1208         (WebCore::MutationEvent::prevValue):
1209         (WebCore::MutationEvent::newValue):
1210         (WebCore::MutationEvent::attrName):
1211         * dom/Notation.cpp:
1212         (WebCore::Notation::Notation):
1213         (WebCore::Notation::nodeName):
1214         * dom/Notation.h:
1215         (WebCore::Notation::publicId):
1216         (WebCore::Notation::systemId):
1217         * dom/ProcessingInstruction.cpp:
1218         (WebCore::ProcessingInstruction::ProcessingInstruction):
1219         (WebCore::ProcessingInstruction::setData):
1220         (WebCore::ProcessingInstruction::nodeName):
1221         (WebCore::ProcessingInstruction::nodeValue):
1222         (WebCore::ProcessingInstruction::cloneNode):
1223         (WebCore::ProcessingInstruction::checkStyleSheet):
1224         (WebCore::ProcessingInstruction::toString):
1225         * dom/ProcessingInstruction.h:
1226         (WebCore::ProcessingInstruction::target):
1227         (WebCore::ProcessingInstruction::data):
1228         (WebCore::ProcessingInstruction::localHref):
1229
1230 2006-10-07  Sam Weinig  <sam.weinig@gmail.com>
1231
1232         Reviewed by Tim H.
1233
1234         Patch for http://bugs.webkit.org/show_bug.cgi?id=11206
1235         10 more SVG Objective-C auto-generated bindings
1236
1237         - Auto-generate DOMSVGFilterElement, DOMSVGFitToViewBox, 
1238           DOMSVGForeignObjectElement, DOMSVGGElement, DOMSVGGradientElement,
1239           DOMSVGImageElement, DOMSVGLineElement, DOMSVGLinearGradientElement, 
1240           DOMSVGMarkerElement, DOMSVGMaskElement and DOMSVGPaint.
1241
1242         - Auto-generate the text method for DOMRange.
1243
1244         * DerivedSources.make:
1245         * WebCore.xcodeproj/project.pbxproj:
1246         * bindings/objc/DOM.mm:
1247         * bindings/objc/DOMExtensions.h:
1248         * bindings/objc/DOMInternal.h:
1249         * bindings/objc/DOMPrivate.h:
1250         * bindings/objc/DOMRGBColor.mm:
1251         * bindings/objc/DOMSVG.h:
1252         * bindings/objc/PublicDOMInterfaces.h:
1253         * bindings/scripts/CodeGeneratorObjC.pm:
1254         * dom/Range.idl:
1255         * ksvg2/svg/SVGFilterElement.cpp:
1256         * ksvg2/svg/SVGFilterElement.h:
1257         * ksvg2/svg/SVGFilterElement.idl:
1258         * ksvg2/svg/SVGForeignObjectElement.idl:
1259         * ksvg2/svg/SVGGElement.idl:
1260         * ksvg2/svg/SVGGradientElement.idl:
1261         * ksvg2/svg/SVGImageElement.idl:
1262         * ksvg2/svg/SVGLineElement.idl:
1263         * ksvg2/svg/SVGLinearGradientElement.idl:
1264         * ksvg2/svg/SVGMarkerElement.idl:
1265         * ksvg2/svg/SVGMaskElement.idl:
1266         * ksvg2/svg/SVGPaint.idl:
1267
1268 2006-10-07  Sam Weinig  <sam.weinig@gmail.com>
1269
1270         Reviewed by Tim H.
1271
1272         Patch for http://bugs.webkit.org/show_bug.cgi?id=11198
1273         Auto-generate a few more Objective-C DOM interfaces
1274
1275         - Fully auto-generate DOMAbstractView and DOMRange.
1276
1277         - Auto-generate just the interface for DOMRGBColor.
1278
1279         - Add DOMRanges.h as the new top level file for Ranges
1280           module.
1281
1282         - Add DOMRanges.h and DOMXPath.h to DOM.mm
1283
1284         * DerivedSources.make:
1285         * WebCore.xcodeproj/project.pbxproj:
1286         * bindings/objc/DOM.h:
1287         * bindings/objc/DOM.mm:
1288         * bindings/objc/DOMAbstractView.h: Removed.
1289         * bindings/objc/DOMAbstractView.mm: Removed.
1290         * bindings/objc/DOMInternal.h:
1291         * bindings/objc/DOMPrivate.h:
1292         * bindings/objc/DOMRGBColor.h: Removed.
1293         * bindings/objc/DOMRGBColor.mm:
1294         * bindings/objc/DOMRange.h: Removed.
1295         * bindings/objc/DOMRanges.h: Added.
1296         * bindings/objc/PublicDOMInterfaces.h:
1297         * bindings/scripts/CodeGeneratorObjC.pm:
1298         * css/RGBColor.idl:
1299         * dom/Range.idl:
1300         * page/AbstractView.idl: Added.
1301
1302 2006-10-07  Andrew Wellington  <proton@wiretapped.net>
1303
1304         Reviewed by Eric.
1305
1306         Bug 10837: REGRESSION: Yahoo New Charts Crashes WebKit
1307         http://bugzilla.opendarwin.org/show_bug.cgi?id=10837
1308
1309         Return null when there is no frame. This matches Firefox.
1310
1311         * bindings/js/kjs_html.cpp:
1312         (KJS::JSHTMLDocument::getValueProperty):
1313
1314 2006-10-07  David Hyatt  <hyatt@apple.com>
1315
1316         Implement scroll corner painting (a white rect fill) for overflow areas to cover up
1317         scrollbar joins properly.
1318
1319         Refactor painting of scrollbars and resizers into common functions.  Eliminate the
1320         extra 20 bytes per RenderLayer by cutting out m_resizerImage and m_resizerControlRect.
1321
1322         Reviewed by mitz
1323
1324         * page/FrameView.cpp:
1325         (WebCore::selectCursor):
1326         (WebCore::FrameView::handleMouseMoveEvent):
1327         * platform/mac/PlatformScrollBar.h:
1328         (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
1329         (WebCore::PlatformScrollbar::verticalScrollbarWidth):
1330         * rendering/RenderLayer.cpp:
1331         (WebCore::RenderLayer::RenderLayer):
1332         (WebCore::RenderLayer::~RenderLayer):
1333         (WebCore::RenderLayer::updateLayerPositions):
1334         (WebCore::scrollCornerRect):
1335         (WebCore::RenderLayer::positionOverflowControls):
1336         (WebCore::RenderLayer::paintOverflowControls):
1337         (WebCore::RenderLayer::isPointInResizeControl):
1338         (WebCore::RenderLayer::paintLayer):
1339         * rendering/RenderLayer.h:
1340
1341 2006-10-07  Mark Rowe  <bdash@webkit.org>
1342
1343         Reviewed by Mitz.
1344
1345         Linux/Gdk build fixes, primarily consisting of s/ScrollBar/Scrollbar/ and
1346         matching recent ResourceLoader changes.
1347
1348         * platform/gdk/FrameGdk.cpp:
1349         (WebCore::FrameGdk::openURL):
1350         (WebCore::FrameGdk::urlSelected):
1351         * platform/gdk/PlatformScrollBar.h:
1352         * platform/gdk/ResourceLoaderCurl.cpp:
1353         (WebCore::ResourceLoader::start):
1354         * platform/gdk/ScrollViewGdk.cpp:
1355         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
1356         (WebCore::ScrollView::resizeContents):
1357         (WebCore::ScrollView::scrollBy):
1358         (WebCore::ScrollView::hScrollbarMode):
1359         (WebCore::ScrollView::vScrollbarMode):
1360         (WebCore::ScrollView::suppressScrollbars):
1361         (WebCore::ScrollView::setHScrollbarMode):
1362         (WebCore::ScrollView::setVScrollbarMode):
1363         (WebCore::ScrollView::setScrollbarsMode):
1364         * platform/gdk/TemporaryLinkStubs.cpp:
1365         (FrameView::passMousePressEventToScrollbar):
1366         (Widget::removeFromParent):
1367         (ScrollView::addChild):
1368         (ScrollView::updateScrollbars):
1369         (ScrollView::scrollbarUnderMouse):
1370         (PlatformScrollbar::PlatformScrollbar):
1371         (PlatformScrollbar::~PlatformScrollbar):
1372         (PlatformScrollbar::width):
1373         (PlatformScrollbar::height):
1374         (PlatformScrollbar::setEnabled):
1375         (PlatformScrollbar::paint):
1376         (PlatformScrollbar::updateThumbPosition):
1377         (PlatformScrollbar::updateThumbProportion):
1378         (PlatformScrollbar::setRect):
1379         (Scrollbar::Scrollbar):
1380         (Scrollbar::setSteps):
1381         (Scrollbar::scroll):
1382         (Scrollbar::setValue):
1383         (Scrollbar::setProportion):
1384
1385 2006-10-06  Dave Hyatt  <hyatt@apple.com>
1386
1387         Implement a new method for obtaining accurate clip rectangles that can be used by plugins to properly clip.
1388
1389         * page/FrameView.cpp:
1390         (WebCore::FrameView::windowClipRect):
1391         * page/FrameView.h:
1392         * platform/ScrollView.h:
1393         * platform/Widget.cpp:
1394         (WebCore::Widget::windowClipRect):
1395         * platform/Widget.h:
1396         (WebCore::Widget::geometryChanged):
1397         (WebCore::Widget::handleMouseMoveEvent):
1398         (WebCore::Widget::handleMouseReleaseEvent):
1399         * platform/mac/ScrollViewMac.mm:
1400         (WebCore::ScrollView::addChild):
1401         * rendering/RenderLayer.cpp:
1402         (WebCore::RenderLayer::documentClipRect):
1403         * rendering/RenderLayer.h:
1404
1405 2006-10-06  Steve Falkenburg  <sfalken@apple.com>
1406
1407         Reviewed by Adam.
1408
1409         Add another method we'll need for scrollbar dodging
1410
1411         * platform/ScrollView.h:
1412         * platform/win/TemporaryLinkStubs.cpp:
1413         (ScrollView::resizerOverlapsContent):
1414
1415 2006-10-06  Sam Weinig  <sam.weinig@gmail.com>
1416
1417         Reviewed by Tim H.
1418
1419         Patch for http://bugs.webkit.org/show_bug.cgi?id=11191
1420         Auto-generate the interfaces even for Objective-C DOM 
1421         bindings that need custom implementations
1422
1423         - Fully auto-generate DOMEventTarget, DOMNodeFilter and 
1424           DOMHTMLOptionElement.
1425
1426         - Auto-generate just the interface for DOMHTMLAppletElement,
1427           DOMHTMLEmbedElement, DOMSVGNumber, DOMSVGPoint and DOMSVGRect
1428           using the new IDL property ObjCCustomImplementation.
1429
1430         * DerivedSources.make:
1431         * WebCore.xcodeproj/project.pbxproj:
1432         * bindings/objc/DOMEventTarget.h: Removed.
1433         * bindings/objc/DOMHTMLAppletElement.h: Removed.
1434         * bindings/objc/DOMHTMLEmbedElement.h: Removed.
1435         * bindings/objc/DOMHTMLOptionElement.h: Removed.
1436         * bindings/objc/DOMHTMLOptionElement.mm: Removed.
1437         * bindings/objc/DOMInternal.h:
1438         * bindings/objc/DOMNodeFilter.h: Removed.
1439         * bindings/objc/DOMSVGNumber.h: Removed.
1440         * bindings/objc/DOMSVGPoint.h: Removed.
1441         * bindings/objc/DOMSVGPoint.mm:
1442         (-[DOMSVGPoint matrixTransform:]):
1443         * bindings/objc/DOMSVGRect.h: Removed.
1444         * bindings/objc/PublicDOMInterfaces.h:
1445         * bindings/scripts/CodeGeneratorObjC.pm:
1446         * dom/EventTarget.idl:
1447         * html/HTMLAppletElement.idl:
1448         * html/HTMLEmbedElement.idl:
1449         * html/HTMLOptionElement.idl:
1450         * ksvg2/svg/SVGNumber.idl:
1451         * ksvg2/svg/SVGPoint.idl:
1452         * ksvg2/svg/SVGRect.idl:
1453
1454 2006-10-06  Nikolas Zimmermann  <zimmermann@kde.org>
1455
1456         Reviewed by Tim H.
1457
1458         Make Qt/Linux compile again completly.
1459
1460         * platform/qt/WidgetQt.cpp:
1461         (WebCore::Widget::removeFromParent):
1462
1463 2006-10-06  Nikolas Zimmermann  <zimmermann@kde.org>
1464
1465         Reviewed by Tim H.
1466
1467         Fix Qt/Linux build by adapting the s/ScrollBar/Scrollbar/ patch.
1468
1469         * platform/qt/PlatformScrollBar.h:
1470         * platform/qt/ScrollViewQt.cpp:
1471         (WebCore::ScrollView::hScrollbarMode):
1472         (WebCore::ScrollView::vScrollbarMode):
1473         (WebCore::ScrollView::suppressScrollbars):
1474         (WebCore::ScrollView::setHScrollbarMode):
1475         (WebCore::ScrollView::setVScrollbarMode):
1476         (WebCore::ScrollView::setScrollbarsMode):
1477         (WebCore::ScrollView::scrollbarUnderMouse):
1478         * platform/qt/TemporaryLinkStubs.cpp:
1479         (WebCore::Scrollbar::Scrollbar):
1480         (WebCore::Scrollbar::setSteps):
1481         (WebCore::Scrollbar::scroll):
1482         (WebCore::Scrollbar::setValue):
1483         (WebCore::Scrollbar::setProportion):
1484         (WebCore::PlatformScrollbar::PlatformScrollbar):
1485         (WebCore::PlatformScrollbar::~PlatformScrollbar):
1486         (WebCore::PlatformScrollbar::width):
1487         (WebCore::PlatformScrollbar::height):
1488         (WebCore::PlatformScrollbar::setEnabled):
1489         (WebCore::PlatformScrollbar::paint):
1490         (WebCore::PlatformScrollbar::updateThumbPosition):
1491         (WebCore::PlatformScrollbar::updateThumbProportion):
1492         (WebCore::PlatformScrollbar::setRect):
1493         (FrameView::passMousePressEventToScrollbar):
1494
1495 2006-10-06  Sam Weinig  <sam.weinig@gmail.com>
1496
1497         Reviewed by Tim H.
1498
1499         Patch for http://bugs.webkit.org/show_bug.cgi?id=11177
1500         Another round of Objective-C SVG DOM bindings auto-generation
1501
1502         - Auto-generate DOMSVGAnimatedNumberList, DOMSVGAnimatedRect, 
1503           DOMSVGComponentTransferFunctionElement, DOMSVGFEBlendElement, 
1504           DOMSVGFEColorMatrixElement, DOMSVGFEComponentTransferElement, 
1505           DOMSVGFECompositeElement, DOMSVGFEDiffuseLightingElement,
1506           DOMSVGFEDisplacementMapElement, DOMSVGFEDistantLightElement, 
1507           DOMSVGFEFloodElement, DOMSVGFEFuncAElement, DOMSVGFEFuncBElement, 
1508           DOMSVGFEFuncGElement, DOMSVGFEFuncRElement, DOMSVGFEGaussianBlurElement, 
1509           DOMSVGFEImageElement, DOMSVGFEMergeElement, DOMSVGFEMergeNodeElement, 
1510           DOMSVGFEOffsetElement, DOMSVGFEPointLightElement, 
1511           DOMSVGFESpecularLightingElement, DOMSVGFESpotLightElement, 
1512           DOMSVGFETileElement, DOMSVGFETurbulenceElement, 
1513           DOMSVGFilterPrimitiveStandardAttributes and DOMSVGNumberList. 
1514
1515         - Adds interfaces and implementation stubs for DOMSVGNumber, DOMSVGPoint
1516           and DOMSVGRect.
1517
1518         - IDL clean up.
1519
1520         - Make numOctaves in SVGFETurbulenceElement use a long instead of an int
1521           in it's macro declaration and definition.
1522
1523         * DerivedSources.make:
1524         * WebCore.xcodeproj/project.pbxproj:
1525         * bindings/objc/DOMCSS.mm:
1526         (+[DOMCSSValue _CSSValueWith:WebCore::]):
1527         * bindings/objc/DOMInternal.h:
1528         * bindings/objc/DOMSVG.h:
1529         * bindings/objc/DOMSVGNumber.h: Added.
1530         * bindings/objc/DOMSVGNumber.mm: Added.
1531         (-[DOMSVGNumber dealloc]):
1532         (-[DOMSVGNumber finalize]):
1533         (-[DOMSVGNumber value]):
1534         (-[DOMSVGNumber setValue:]):
1535         (-[DOMSVGNumber _SVGNumber]):
1536         (-[DOMSVGNumber _initWithFloat:]):
1537         (+[DOMSVGNumber _SVGNumberWith:]):
1538         * bindings/objc/DOMSVGPoint.h: Added.
1539         * bindings/objc/DOMSVGPoint.mm: Added.
1540         (-[DOMSVGPoint dealloc]):
1541         (-[DOMSVGPoint finalize]):
1542         (-[DOMSVGPoint x]):
1543         (-[DOMSVGPoint setX:]):
1544         (-[DOMSVGPoint y]):
1545         (-[DOMSVGPoint setY:]):
1546         (-[DOMSVGPoint WebCore::]):
1547         (-[DOMSVGPoint _initWithFloatPoint:WebCore::]):
1548         (+[DOMSVGPoint _SVGPointWith:WebCore::]):
1549         * bindings/objc/DOMSVGRect.h: Added.
1550         * bindings/objc/DOMSVGRect.mm: Added.
1551         (-[DOMSVGRect dealloc]):
1552         (-[DOMSVGRect finalize]):
1553         (-[DOMSVGRect x]):
1554         (-[DOMSVGRect setX:]):
1555         (-[DOMSVGRect y]):
1556         (-[DOMSVGRect setY:]):
1557         (-[DOMSVGRect width]):
1558         (-[DOMSVGRect setWidth:]):
1559         (-[DOMSVGRect height]):
1560         (-[DOMSVGRect setHeight:]):
1561         (-[DOMSVGRect WebCore::]):
1562         (-[DOMSVGRect _initWithFloatRect:WebCore::]):
1563         (+[DOMSVGRect _SVGRectWith:WebCore::]):
1564         * bindings/scripts/CodeGeneratorObjC.pm:
1565         * ksvg2/svg/SVGAnimatedNumberList.idl:
1566         * ksvg2/svg/SVGAnimatedRect.idl:
1567         * ksvg2/svg/SVGComponentTransferFunctionElement.idl:
1568         * ksvg2/svg/SVGCursorElement.idl:
1569         * ksvg2/svg/SVGFEBlendElement.idl:
1570         * ksvg2/svg/SVGFEColorMatrixElement.idl:
1571         * ksvg2/svg/SVGFEComponentTransferElement.idl:
1572         * ksvg2/svg/SVGFECompositeElement.idl:
1573         * ksvg2/svg/SVGFEDiffuseLightingElement.idl:
1574         * ksvg2/svg/SVGFEDisplacementMapElement.idl:
1575         * ksvg2/svg/SVGFEDistantLightElement.idl:
1576         * ksvg2/svg/SVGFEFloodElement.idl:
1577         * ksvg2/svg/SVGFEFuncAElement.idl:
1578         * ksvg2/svg/SVGFEFuncBElement.idl:
1579         * ksvg2/svg/SVGFEFuncGElement.idl:
1580         * ksvg2/svg/SVGFEFuncRElement.idl:
1581         * ksvg2/svg/SVGFEGaussianBlurElement.idl:
1582         * ksvg2/svg/SVGFEImageElement.idl:
1583         * ksvg2/svg/SVGFEMergeElement.idl:
1584         * ksvg2/svg/SVGFEMergeNodeElement.idl:
1585         * ksvg2/svg/SVGFEOffsetElement.idl:
1586         * ksvg2/svg/SVGFEPointLightElement.idl:
1587         * ksvg2/svg/SVGFESpecularLightingElement.idl:
1588         * ksvg2/svg/SVGFESpotLightElement.idl:
1589         * ksvg2/svg/SVGFETileElement.idl:
1590         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1591         * ksvg2/svg/SVGFETurbulenceElement.h:
1592         * ksvg2/svg/SVGFETurbulenceElement.idl:
1593         * ksvg2/svg/SVGNumberList.idl:
1594
1595 2006-10-06  Adam Roben  <aroben@apple.com>
1596
1597         Backing out my previous change.
1598
1599         * WebCore.xcodeproj/project.pbxproj:
1600         * page/FrameView.cpp:
1601         (WebCore::FrameView::adjustViewSize):
1602
1603 2006-10-06  Adam Roben  <aroben@apple.com>
1604
1605         Build fix.
1606
1607         * WebCore.xcodeproj/project.pbxproj:
1608         * page/FrameView.cpp:
1609         (WebCore::FrameView::windowResizerRect):
1610
1611 2006-10-06  Adam Roben  <aroben@apple.com>
1612
1613         Reviewed by Maciej.
1614
1615         More loader tweaks.
1616
1617         * platform/ResourceLoader.h:
1618         * platform/ResourceLoaderInternal.h:
1619         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
1620         * platform/win/TemporaryLinkStubs.cpp:
1621         (WebCore::ResourceLoader::newHTTPRequest):
1622
1623 2006-10-05  Steve Falkenburg  <sfalken@apple.com>
1624
1625         Reviewed by aroben.
1626
1627         Stub out some methods that we'll be able to use to dodge a window resizer.
1628
1629         * bridge/win/FrameWin.h:
1630         * page/Frame.h:
1631         (WebCore::Frame::windowResizerRect):
1632         * page/FrameView.h:
1633         * platform/ScrollView.h:
1634         (WebCore::ScrollView::windowResizerRect):
1635         * platform/Widget.h:
1636         * platform/win/TemporaryLinkStubs.cpp:
1637         (FrameView::windowResizerRect):
1638         (Widget::setParent):
1639         (Widget::parent):
1640         (FrameWin::windowResizerRect):
1641
1642 2006-10-05  Dave Hyatt  <hyatt@apple.com>
1643
1644         Stub out setFrameGeometry.
1645         
1646         * platform/ScrollView.h:
1647
1648 2006-10-05  Adele Peterson  <adele@apple.com>
1649
1650         Reverting autoscroll fix.  I need to rework this a little.
1651
1652         * page/Frame.cpp:
1653         (WebCore::Frame::handleAutoscroll):
1654         (WebCore::Frame::autoscrollTimerFired):
1655         (WebCore::Frame::stopAutoscrollTimer):
1656         * page/Frame.h:
1657         * rendering/RenderLayer.cpp:
1658         (WebCore::RenderLayer::~RenderLayer):
1659         * rendering/RenderListBox.cpp:
1660         (WebCore::RenderListBox::~RenderListBox):
1661
1662 2006-10-05  Alice  <alice.liu@apple.com>
1663
1664         Reviewed by Adam.
1665
1666         Fixed <rdar://problem/4731778>
1667
1668         * editing/CommandByName.cpp:
1669         (WebCore::Frame::Command::):
1670         was calling the wrong enabledFn for arrow selection and navigation
1671
1672 2006-10-05  Adele Peterson  <adele@apple.com>
1673
1674         Reviewed by Maciej.
1675
1676         - Fix for <rdar://problem/4707489> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active <input type="text">
1677           and <rdar://problem/4707519> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active textarea
1678
1679         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::~RenderLayer): If the renderer is being autoscrolled, then stop the autoscroll timer.
1680         * rendering/RenderListBox.cpp: (WebCore::RenderListBox::~RenderListBox): ditto.
1681
1682         * page/Frame.cpp: Added getter and setter for the renderer being autoscrolled.
1683         (WebCore::Frame::handleAutoscroll):
1684         (WebCore::Frame::autoscrollTimerFired):
1685         (WebCore::Frame::autoscrollRenderer):
1686         (WebCore::Frame::setAutoscrollRenderer):
1687         (WebCore::Frame::stopAutoscrollTimer):
1688         * page/Frame.h:
1689
1690 2006-10-05  Don Gibson  <dgibson77@gmail.com>
1691
1692         Reviewed by Eric.
1693
1694         Fix win32 build bustage after ggaren's Scrollbar renaming changes.
1695         Properly include PlatformScrollBar.h in WbCore.vcproj.
1696         Clean up WidgetWin.cpp a bit.
1697
1698         * WebCore.vcproj/WebCore/WebCore.vcproj:
1699         * platform/Widget.h:
1700         * platform/win/PlatformScrollBar.h:
1701         * platform/win/ScrollViewWin.cpp:
1702         (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
1703         (WebCore::ScrollView::resizeContents):
1704         (WebCore::ScrollView::scrollBy):
1705         (WebCore::ScrollView::hScrollbarMode):
1706         (WebCore::ScrollView::vScrollbarMode):
1707         (WebCore::ScrollView::suppressScrollbars):
1708         (WebCore::ScrollView::setHScrollbarMode):
1709         (WebCore::ScrollView::setVScrollbarMode):
1710         (WebCore::ScrollView::setScrollbarsMode):
1711         (WebCore::ScrollView::updateScrollbars):
1712         * platform/win/TemporaryLinkStubs.cpp:
1713         (FrameView::passMousePressEventToScrollbar):
1714         (Widget::removeFromParent):
1715         (ScrollView::scrollbarUnderMouse):
1716         (PlatformScrollbar::PlatformScrollbar):
1717         (PlatformScrollbar::~PlatformScrollbar):
1718         (PlatformScrollbar::width):
1719         (PlatformScrollbar::height):
1720         (PlatformScrollbar::setEnabled):
1721         (PlatformScrollbar::paint):
1722         (PlatformScrollbar::updateThumbPosition):
1723         (PlatformScrollbar::updateThumbProportion):
1724         (PlatformScrollbar::setRect):
1725         (Scrollbar::Scrollbar):
1726         (Scrollbar::setSteps):
1727         (Scrollbar::scroll):
1728         (Scrollbar::setValue):
1729         (Scrollbar::setProportion):
1730         * platform/win/WidgetWin.cpp:
1731         (WebCore::WidgetPrivate::WidgetPrivate):
1732         (WebCore::Widget::Widget):
1733         (WebCore::Widget::setContainingWindow):
1734         (WebCore::Widget::containingWindow):
1735
1736 2006-10-05  Geoffrey Garen  <ggaren@apple.com>
1737
1738         build fix.
1739         
1740         * WebCore.xcodeproj/project.pbxproj:
1741         * bridge/mac/BrowserExtensionMac.mm:
1742         (WebCore::BrowserExtensionMac::createNewWindow):
1743         * bridge/mac/FrameMac.mm:
1744         (WebCore::FrameMac::createFrame):
1745         * bridge/mac/FrameViewMac.mm:
1746         (WebCore::FrameView::passMousePressEventToScrollbar):
1747         * bridge/mac/WebCoreFrameBridge.mm:
1748         (-[WebCoreFrameBridge installInFrame:]):
1749         * bridge/mac/WebCoreFrameView.h:
1750         * platform/ScrollBar.cpp:
1751         * platform/Widget.h:
1752         * platform/mac/PlatformScrollBar.h:
1753         * platform/mac/PlatformScrollBarMac.mm:
1754         (NSControlSizeForScrollBarControlSize):
1755         (-[WebCoreScrollBar initWithPlatformScrollbar:]):
1756         (-[WebCoreScrollBar detachPlatformScrollbar]):
1757         (-[WebCoreScrollBar scroll:]):
1758         (-[WebCoreScrollBar widget]):
1759         (WebCore::PlatformScrollbar::PlatformScrollbar):
1760         (WebCore::PlatformScrollbar::~PlatformScrollbar):
1761         (WebCore::PlatformScrollbar::updateThumbPosition):
1762         (WebCore::PlatformScrollbar::updateThumbProportion):
1763         (WebCore::PlatformScrollbar::scrollbarHit):
1764         (WebCore::PlatformScrollbar::width):
1765         (WebCore::PlatformScrollbar::height):
1766         (WebCore::PlatformScrollbar::setRect):
1767         (WebCore::PlatformScrollbar::setEnabled):
1768         (WebCore::PlatformScrollbar::paint):
1769         * platform/mac/ScrollViewMac.mm:
1770         (WebCore::ScrollView::setVScrollbarMode):
1771         (WebCore::ScrollView::setHScrollbarMode):
1772         (WebCore::ScrollView::setScrollbarsMode):
1773         (WebCore::ScrollView::vScrollbarMode):
1774         (WebCore::ScrollView::hScrollbarMode):
1775         (WebCore::ScrollView::suppressScrollbars):
1776         (WebCore::ScrollView::scrollbarUnderMouse):
1777         * platform/mac/WidgetMac.mm:
1778         (WebCore::Widget::removeFromParent):
1779         * rendering/RenderLayer.cpp:
1780         (WebCore::RenderLayer::destroyScrollbar):
1781
1782 2006-10-05  Geoffrey Garen  <ggaren@apple.com>
1783
1784         build fix.
1785         
1786         * platform/Widget.h:
1787         * rendering/RenderLayer.cpp:
1788         (WebCore::RenderLayer::destroyScrollbar):
1789
1790 2006-10-06  Mitz Pettel  <mitz@webkit.org>
1791
1792         http://bugs.webkit.org/show_bug.cgi?id=8276
1793         Fix broken manual test added back in r13990.
1794
1795         Add resource forks for test resources.
1796
1797         * manual-tests/resources/plain-text-paste/._1.textClipping: Added.
1798         * manual-tests/resources/plain-text-paste/._2.textClipping: Added.
1799         * manual-tests/resources/plain-text-paste/._4.txt: Added.
1800         * manual-tests/resources/plain-text-paste/._5.webloc: Added.
1801
1802 2006-10-05  David Hyatt  <hyatt@apple.com>
1803
1804         Rename addClip to clip.
1805
1806         Reviewed by darin
1807
1808         * kcanvas/RenderForeignObject.cpp:
1809         (WebCore::RenderForeignObject::paint):
1810         * kcanvas/RenderSVGContainer.cpp:
1811         (WebCore::RenderSVGContainer::paint):
1812         * kcanvas/RenderSVGImage.cpp:
1813         (WebCore::RenderSVGImage::paint):
1814         * platform/GraphicsContext.h:
1815         * platform/cairo/GraphicsContextCairo.cpp:
1816         (WebCore::GraphicsContext::clip):
1817         * platform/cg/GraphicsContextCG.cpp:
1818         (WebCore::GraphicsContext::savePlatformState):
1819         (WebCore::GraphicsContext::restorePlatformState):
1820         (WebCore::GraphicsContext::clip):
1821         (WebCore::GraphicsContext::addRoundedRectClip):
1822         (WebCore::GraphicsContext::addInnerRoundedRectClip):
1823         (WebCore::GraphicsContext::scale):
1824         (WebCore::GraphicsContext::rotate):
1825         (WebCore::GraphicsContext::translate):
1826         (WebCore::GraphicsContext::concatCTM):
1827         * platform/cg/GraphicsContextPlatformPrivate.h:
1828         (WebCore::GraphicsContextPlatformPrivate::save):
1829         (WebCore::GraphicsContextPlatformPrivate::restore):
1830         (WebCore::GraphicsContextPlatformPrivate::clip):
1831         (WebCore::GraphicsContextPlatformPrivate::scale):
1832         (WebCore::GraphicsContextPlatformPrivate::rotate):
1833         (WebCore::GraphicsContextPlatformPrivate::translate):
1834         (WebCore::GraphicsContextPlatformPrivate::concatCTM):
1835         * platform/qt/GraphicsContextQt.cpp:
1836         (WebCore::GraphicsContext::clip):
1837         (WebCore::GraphicsContext::addInnerRoundedRectClip):
1838         (WebCore::GraphicsContext::addRoundedRectClip):
1839         * rendering/InlineFlowBox.cpp:
1840         (WebCore::InlineFlowBox::paintBackground):
1841         (WebCore::InlineFlowBox::paintBackgroundAndBorder):
1842         * rendering/InlineTextBox.cpp:
1843         (WebCore::InlineTextBox::paintSelection):
1844         (WebCore::InlineTextBox::paintTextMatchMarker):
1845         * rendering/RenderBox.cpp:
1846         (WebCore::RenderBox::paintBackgroundExtended):
1847         * rendering/RenderButton.cpp:
1848         (WebCore::RenderButton::paintObject):
1849         * rendering/RenderFileUploadControl.cpp:
1850         (WebCore::RenderFileUploadControl::paintObject):
1851         * rendering/RenderLayer.cpp:
1852         (WebCore::RenderLayer::beginTransparencyLayers):
1853         (WebCore::setClip):
1854         * rendering/RenderListBox.cpp:
1855         (WebCore::RenderListBox::paintObject):
1856         * rendering/RenderMenuList.cpp:
1857         (WebCore::RenderMenuList::paintObject):
1858         * rendering/RenderTableCell.cpp:
1859         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
1860
1861 2006-10-05  Mitz Pettel  <mitz@webkit.org>
1862
1863         Reviewed by Darin.
1864
1865         - http://bugs.webkit.org/show_bug.cgi?id=10386
1866           Delete RenderImageButton.* and remove references from .vcproj and .bkl files
1867
1868         * CMakeLists.txt:
1869         * WebCore.vcproj/WebCore/WebCore.vcproj:
1870         * WebCoreSources.bkl:
1871         * rendering/RenderImageButton.cpp: Removed.
1872         * rendering/RenderImageButton.h: Removed.
1873
1874 2006-10-05  Mitz Pettel  <opendarwin.org@mitzpettel.com>
1875
1876         Reviewed by Darin.
1877
1878         - http://bugs.webkit.org/show_bug.cgi?id=11067
1879           manual-tests/scrollbar-hittest2.html is invalid
1880
1881         * manual-tests/scrollbar-hittest2.html:
1882
1883 2006-10-05  David Carson  <dacarson@gmail.com>
1884
1885         Reviewed by Darin.
1886
1887         http://bugs.webkit.org/show_bug.cgi?id=11152
1888         Adjust the tokenizer chunk size to be smaller for
1889         mobile devices, and also decrease the yield timer
1890         for the tokenizer so that it can resume earlier.
1891
1892         * html/HTMLTokenizer.cpp:
1893         * config.h:
1894
1895 2006-10-05  Adam Roben  <aroben@apple.com>
1896
1897         Removing accidentally-checked-in do-nothing code.
1898
1899         * html/HTMLInputElement.cpp:
1900         (WebCore::HTMLInputElement::defaultEventHandler):
1901
1902 2006-10-05  David Carson  <dacarson@gmail.com>
1903
1904         Reviewed by Mitz.
1905
1906         http://bugs.webkit.org/show_bug.cgi?id=11158
1907         Initialize class variables
1908
1909         * rendering/RenderLayer.cpp:
1910         (WebCore::RenderLayer::RenderLayer):
1911
1912 2006-10-05  Don Gibson  <dgibson77@gmail.com>
1913
1914         Reviewed by Darin, landed by Adam.
1915
1916         http://bugs.webkit.org/show_bug.cgi?id=11176
1917         Fix win32 build, adapt to Maciej's ResourceLoader changes.
1918
1919         * platform/win/ResourceLoaderWin.cpp:
1920         (WebCore::ResourceLoader::start):
1921
1922 2006-10-05  Marvin Decker  <marv.decker@gmail.com>
1923
1924         Reviewed by Darin.
1925
1926         http://bugs.webkit.org/show_bug.cgi?id=10989
1927         Provide a way for embedders to implement BrowserExtensionWin
1928
1929         * WebCore.vcproj/WebCore/WebCore.vcproj:
1930         * bridge/win/BrowserExtensionWin.cpp: Added.
1931         (BrowserExtensionWin::BrowserExtensionWin):
1932         (BrowserExtensionWin::setTypedIconURL):
1933         (BrowserExtensionWin::setIconURL):
1934         (BrowserExtensionWin::getHistoryLength):
1935         (BrowserExtensionWin::canRunModal):
1936         (BrowserExtensionWin::createNewWindow):
1937         (BrowserExtensionWin::canRunModalNow):
1938         (BrowserExtensionWin::runModal):
1939         (BrowserExtensionWin::goBackOrForward):
1940         (BrowserExtensionWin::historyURL):
1941         * bridge/win/BrowserExtensionWin.h:
1942         * bridge/win/FrameWin.cpp:
1943         (WebCore::FrameWin::createNewWindow):
1944         * bridge/win/FrameWin.h:
1945         * platform/win/TemporaryLinkStubs.cpp:
1946
1947 2006-10-05  Geoffrey Garen  <ggaren@apple.com>
1948
1949         Reviewed by Darin.
1950         
1951         Fixed <rdar://problem/4766987>
1952         
1953         - renamed ScrollBar to Scrollbar and scroll bar to scrollbar in every case
1954         except for file names.
1955         
1956         - fixed RenderLayer to properly tear down scrollbars, removing them from
1957         their parents.
1958
1959         * bindings/js/kjs_window.cpp:
1960         (KJS::showModalDialog):
1961         (KJS::setWindowFeature):
1962         (KJS::parseWindowFeatures):
1963         * bridge/BrowserExtension.h:
1964         * dom/Document.cpp:
1965         (WebCore::Document::setInPageCache):
1966         * html/HTMLFrameElement.cpp:
1967         (WebCore::HTMLFrameElement::init):
1968         (WebCore::HTMLFrameElement::parseMappedAttribute):
1969         * html/HTMLFrameElement.h:
1970         (WebCore::HTMLFrameElement::scrollingMode):
1971         * page/Frame.cpp:
1972         (WebCore::Frame::finishedParsing):
1973         (WebCore::Frame::scrollbarsVisible):
1974         * page/FrameView.cpp:
1975         (WebCore::FrameViewPrivate::FrameViewPrivate):
1976         (WebCore::FrameViewPrivate::reset):
1977         (WebCore::FrameView::~FrameView):
1978         (WebCore::FrameView::resetScrollbars):
1979         (WebCore::FrameView::clear):
1980         (WebCore::FrameView::initScrollbars):
1981         (WebCore::FrameView::applyOverflowToViewport):
1982         (WebCore::FrameView::layout):
1983         (WebCore::FrameView::handleMousePressEvent):
1984         (WebCore::selectCursor):
1985         (WebCore::FrameView::handleMouseMoveEvent):
1986         (WebCore::FrameView::setScrollbarsMode):
1987         (WebCore::FrameView::setVScrollbarMode):
1988         (WebCore::FrameView::setHScrollbarMode):
1989         (WebCore::FrameView::restoreScrollbar):
1990         (WebCore::FrameView::dispatchMouseEvent):
1991         (WebCore::FrameView::scrollbarMoved):
1992         * page/FrameView.h:
1993         * page/MouseEventWithHitTestResults.cpp:
1994         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
1995         * page/MouseEventWithHitTestResults.h:
1996         (WebCore::MouseEventWithHitTestResults::scrollbar):
1997         * platform/ScrollBar.cpp:
1998         (WebCore::Scrollbar::Scrollbar):
1999         (WebCore::Scrollbar::setValue):
2000         (WebCore::Scrollbar::setProportion):
2001         (WebCore::Scrollbar::setSteps):
2002         (WebCore::Scrollbar::scroll):
2003         * platform/ScrollBar.h:
2004         (WebCore::):
2005         (WebCore::ScrollbarClient::~ScrollbarClient):
2006         (WebCore::Scrollbar::~Scrollbar):
2007         (WebCore::Scrollbar::orientation):
2008         (WebCore::Scrollbar::controlSize):
2009         (WebCore::Scrollbar::hasPlatformScrollbars):
2010         (WebCore::Scrollbar::client):
2011         * platform/ScrollBarMode.h:
2012         (WebCore::):
2013         * platform/ScrollView.h:
2014         * rendering/RenderBlock.cpp:
2015         (WebCore::RenderBlock::isPointInScrollbar):
2016         * rendering/RenderLayer.cpp:
2017         (WebCore::RenderLayer::RenderLayer):
2018         (WebCore::RenderLayer::~RenderLayer):
2019         (WebCore::RenderLayer::scrollToOffset):
2020         (WebCore::RenderLayer::horizontaScrollbarWidget):
2021         (WebCore::RenderLayer::verticalScrollbarWidget):
2022         (WebCore::RenderLayer::valueChanged):
2023         (WebCore::RenderLayer::createScrollbar):
2024         (WebCore::RenderLayer::destroyScrollbar):
2025         (WebCore::RenderLayer::setHasHorizontalScrollbar):
2026         (WebCore::RenderLayer::setHasVerticalScrollbar):
2027         (WebCore::RenderLayer::verticalScrollbarWidth):
2028         (WebCore::RenderLayer::horizontalScrollbarHeight):
2029         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2030         * rendering/RenderLayer.h:
2031         (WebCore::RenderLayer::horizontalScrollbar):
2032         (WebCore::RenderLayer::verticalScrollbar):
2033         * rendering/RenderListBox.cpp:
2034         (WebCore::RenderListBox::~RenderListBox):
2035         (WebCore::RenderListBox::calcMinMaxWidth):
2036         (WebCore::RenderListBox::isPointInScrollbar):
2037         (WebCore::RenderListBox::optionAtPoint):
2038         (WebCore::RenderListBox::valueChanged):
2039         * rendering/RenderListBox.h:
2040         * rendering/RenderObject.h:
2041         (WebCore::RenderObject::NodeInfo::scrollbar):
2042         (WebCore::RenderObject::NodeInfo::setScrollbar):
2043
2044 2006-10-05  Don Gibson  <dgibson77@gmail.com>
2045
2046         Reviewed by Adam.
2047
2048         http://bugs.webkit.org/show_bug.cgi?id=11138
2049         Incorrect mouse event generation on Windows
2050
2051         * platform/win/MouseEventWin.cpp:
2052         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2053         (1) Set mouse button even for non-click-related messages.
2054         (2) Track clicks correctly for all buttons, not just the left button.
2055
2056 2006-10-05  Nikolas Zimmermann  <zimmermann@kde.org>
2057
2058         Reviewed and landed by ap.
2059
2060         Fix Qt/Linux build, adapt to Eric's quartz changes and to Maciej's ResourceLoader changes.
2061
2062         * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
2063         (WebCore::KRenderingPaintServerLinearGradientQt::renderPath):
2064         (WebCore::KRenderingPaintServerLinearGradientQt::setup):
2065         (WebCore::KRenderingPaintServerRadialGradientQt::setup):
2066         (WebCore::KRenderingPaintServerRadialGradientQt::renderPath):
2067         * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
2068         (WebCore::KRenderingPaintServerPatternQt::renderPath):
2069         * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
2070         (WebCore::KRenderingPaintServerQt::setPenProperties):
2071         * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
2072         (WebCore::KRenderingPaintServerSolidQt::setup):
2073         (WebCore::KRenderingPaintServerSolidQt::renderPath):
2074         * kcanvas/device/qt/RenderPathQt.cpp:
2075         (WebCore::getPathStroke):
2076
2077 2006-10-05  Alexey Proskuryakov  <ap@nypop.com>
2078
2079         Reviewed by Darin.
2080
2081         http://bugs.webkit.org/show_bug.cgi?id=11054
2082         REGRESSION: Traditional Chinese encoding in login authentication
2083
2084         1. Treat GB2312 encoding as GBK (its more modern superset), to match other browsers.
2085         2. On the Web, GB2312 is encoded as EUC-CN or HZ, while ICU provides a native encoding
2086         for encoding GB_2312-80 and several others. So, we need to override this behavior, too.
2087
2088         * platform/StreamingTextDecoderICU.cpp:
2089         (WebCore::TextCodecICU::registerEncodingNames):
2090
2091 2006-10-05  Eric Seidel  <eric@eseidel.com>
2092
2093         Reviewed by mjs.
2094
2095         Removed dead code.
2096         Filed http://bugs.webkit.org/show_bug.cgi?id=11167 to for followup on removed FIXMEs
2097
2098         * WebCore.xcodeproj/project.pbxproj:
2099         * ksvg2/ecma/GlobalObject.cpp: Removed.
2100         * ksvg2/ecma/GlobalObject.h: Removed.
2101
2102 2006-10-05  Adam Roben  <aroben@apple.com>
2103
2104         Reviewed by Maciej.
2105
2106         Small ResourceLoaderInternal tweak.
2107
2108         * platform/ResourceLoaderInternal.h:
2109         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2110
2111 2006-10-05  Eric Seidel  <eric@eseidel.com>
2112
2113         Reviewed by mjs.
2114
2115         More incremental KCanvas cleanup and optimization.
2116         Added SVGRenderStyle::hasFill() and hasStroke() removed more KSVGPainterFactory methods.
2117         Optimized dash array usage to not malloc.
2118         Also removed un-needed KSVGRenderingStyle includes.
2119
2120         * kcanvas/KCanvasTreeDebug.cpp:
2121         (WebCore::operator<<):
2122         * kcanvas/RenderPath.cpp:
2123         (WebCore::RenderPath::nodeAtPoint):
2124         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2125         (WebCore::RenderPath::strokeBBox):
2126         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2127         (WebCore::KRenderingPaintServerGradientQuartz::setup):
2128         (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
2129         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
2130         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2131         (WebCore::KRenderingPaintServerSolidQuartz::setup):
2132         (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
2133         (WebCore::KRenderingPaintServerPatternQuartz::setup):
2134         (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
2135         * kcanvas/device/quartz/QuartzSupport.mm:
2136         (WebCore::applyStrokeStyleToContext):
2137         * ksvg2/css/SVGRenderStyle.h:
2138         (WebCore::SVGRenderStyle::hasStroke):
2139         (WebCore::SVGRenderStyle::hasFill):
2140         * ksvg2/misc/KCanvasRenderingStyle.cpp:
2141         (WebCore::KSVGPainterFactory::fillPaintServer):
2142         (WebCore::KSVGPainterFactory::strokePaintServer):
2143         * ksvg2/misc/KCanvasRenderingStyle.h:
2144
2145 2006-10-05  Maciej Stachowiak  <mjs@apple.com>
2146
2147         Reviewed by Adam.
2148
2149         - changed ResourceLoader to be refcounted
2150
2151         It keeps a ref on itself while loading as well. This makes
2152         for a much saner memory management model than the previous.
2153
2154         * bridge/mac/WebCoreResourceLoaderImp.mm:
2155         (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
2156         * dom/XMLTokenizer.cpp:
2157         (WebCore::openFunc):
2158         * loader/icon/IconLoader.cpp:
2159         (IconLoader::IconLoader):
2160         (IconLoader::~IconLoader):
2161         (IconLoader::startLoading):
2162         (IconLoader::stopLoading):
2163         (IconLoader::receivedData):
2164         * loader/icon/IconLoader.h:
2165         * loader/loader.cpp:
2166         (WebCore::Loader::servePendingRequests):
2167         * platform/ResourceLoader.cpp:
2168         (WebCore::ResourceLoader::create):
2169         (WebCore::ResourceLoader::kill):
2170         * platform/ResourceLoader.h:
2171         * platform/ResourceLoaderInternal.h:
2172         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2173         * platform/mac/ResourceLoaderMac.mm:
2174         (WebCore::ResourceLoader::start):
2175         * xml/XSLTProcessor.cpp:
2176         (WebCore::docLoaderFunc):
2177         * xml/xmlhttprequest.cpp:
2178         (WebCore::XMLHttpRequest::send):
2179         * xml/xmlhttprequest.h:
2180
2181 2006-10-05  Eric Seidel  <eric@eseidel.com>
2182
2183         Reviewed by mjs.
2184
2185         Improve SVG opacity performance by clipping to the object bbox before starting a new opacity layer.
2186         http://bugs.webkit.org/show_bug.cgi?id=11163
2187         
2188         No SVG performance tests yet.
2189
2190         * kcanvas/RenderForeignObject.cpp:
2191         (WebCore::RenderForeignObject::paint):
2192         * kcanvas/RenderSVGContainer.cpp:
2193         (WebCore::RenderSVGContainer::paint):
2194         * kcanvas/RenderSVGImage.cpp:
2195         (WebCore::RenderSVGImage::paint):
2196         * kcanvas/RenderSVGText.cpp:
2197         (WebCore::RenderSVGText::paint):
2198
2199 2006-10-05  Dave Hyatt  <hyatt@apple.com>
2200
2201         Stub out some stuff for widget focusability.
2202
2203         Reviewed by maciej
2204  
2205         * page/FrameView.cpp:
2206         (WebCore::FrameView::dispatchMouseEvent):
2207         * platform/ScrollView.h:
2208         * platform/Widget.h:
2209
2210 2006-10-05  Adam Roben  <aroben@apple.com>
2211
2212         Reviewed by Maciej and Tim H.
2213
2214         Copy some WebKit frame lifetime logic into WebCore -- just a step
2215         along the path to frame lifetime being handled completely in WebCore.
2216
2217         * bridge/mac/FrameMac.mm:
2218         (WebCore::FrameMac::setView): Move platform-independent parts of this
2219         method into Frame.
2220         * page/Frame.cpp:
2221         (WebCore::Frame::setView): Adding platform-independent parts of
2222         FrameMac::setView
2223         (WebCore::Frame::detachChildren): New method to accomplish what
2224         -[WebFrameBridge _detachChildren] currently does.
2225         (WebCore::Frame::clear): Call detachChildren
2226         * page/Frame.h: Add declaration for detachChildren
2227
2228 2006-10-04  Alice Liu  <alice.liu@apple.com>
2229
2230         Reviewed by Darin.
2231
2232         Fixed <rdar://problem/4758577> REGRESSION: Business and People widgets fails to complete search query
2233
2234         * xml/xmlhttprequest.cpp:
2235         (WebCore::XMLHttpRequest::setRequestHeader):
2236         removed exception set when the request is not open yet
2237
2238 2006-10-04  Anders Carlsson  <acarlsson@apple.com>
2239
2240         Reviewed by John Sullivan.
2241
2242         <rdar://problem/4654328>
2243         Safari Crashes in WebCore::PluginTokenizer::writeRawData If I Try to Open a SWF File With Plug-ins Turned Off
2244         
2245         * loader/PluginDocument.cpp:
2246         (WebCore::PluginTokenizer::writeRawData):
2247         Only send the data to the plug-in if plug-ins are enabled, otherwise just silently eat it.
2248
2249 2006-10-03  Alexey Proskuryakov  <ap@nypop.com>
2250
2251         Reviewed by Tim H.
2252
2253         http://bugs.webkit.org/show_bug.cgi?id=11130
2254         Convert "undefined" to AE missing value
2255
2256         * bridge/mac/WebCoreFrameBridge.mm:
2257         (aeDescFromJSValue): return missing value for UndefinedType.
2258
2259 2006-10-03  Dave Hyatt  <hyatt@apple.com>
2260
2261         Scrolling work.  Eliminate convertTo/FromContainingWindow as cross-platform functions.  Add back in
2262         the windowToContents/contentsToWindow functions.
2263         
2264         Reviewed by anders
2265
2266         * bridge/mac/FrameMac.mm:
2267         (WebCore::FrameMac::eventMayStartDrag):
2268         (WebCore::FrameMac::dragHysteresisExceeded):
2269         (WebCore::FrameMac::mouseDown):
2270         (WebCore::FrameMac::shouldDragAutoNode):
2271         (WebCore::FrameMac::sendContextMenuEvent):
2272         * bridge/mac/FrameViewMac.mm:
2273         (WebCore::FrameView::passMousePressEventToScrollbar):
2274         * bridge/mac/WebCoreFrameBridge.mm:
2275         (-[WebCoreFrameBridge _visiblePositionForPoint:]):
2276         * dom/EventTargetNode.cpp:
2277         (WebCore::EventTargetNode::dispatchMouseEvent):
2278         (WebCore::EventTargetNode::dispatchWheelEvent):
2279         * page/Frame.cpp:
2280         (WebCore::Frame::selectClosestWordFromMouseEvent):
2281         (WebCore::Frame::handleMousePressEventTripleClick):
2282         (WebCore::Frame::handleMousePressEventSingleClick):
2283         (WebCore::Frame::handleMouseMoveEvent):
2284         (WebCore::Frame::handleMouseReleaseEvent):
2285         * page/FrameView.cpp:
2286         (WebCore::FrameView::handleMousePressEvent):
2287         (WebCore::FrameView::handleMouseDoubleClickEvent):
2288         (WebCore::selectCursor):
2289         (WebCore::FrameView::handleMouseMoveEvent):
2290         (WebCore::FrameView::handleMouseReleaseEvent):
2291         (WebCore::FrameView::dispatchDragEvent):
2292         (WebCore::FrameView::prepareMouseEvent):
2293         (WebCore::FrameView::handleWheelEvent):
2294         * page/FrameView.h:
2295         * platform/ScrollBar.cpp:
2296         (WebCore::ScrollBar::setValue):
2297         * platform/ScrollView.h:
2298         * platform/Widget.h:
2299         (WebCore::Widget::scrolled):
2300         * platform/mac/ScrollViewMac.mm:
2301         (WebCore::ScrollView::contentsToWindow):
2302         (WebCore::ScrollView::windowToContents):
2303         (WebCore::ScrollView::scrollbarUnderMouse):
2304         * platform/mac/WidgetMac.mm:
2305         * rendering/RenderLayer.cpp:
2306         (WebCore::RenderLayer::resize):
2307         (WebCore::RenderLayer::positionScrollbars):
2308         * rendering/RenderReplaced.cpp:
2309         (WebCore::RenderReplaced::shouldPaint):
2310         * rendering/RenderView.cpp:
2311         * rendering/RenderView.h:
2312         * rendering/RenderWidget.cpp:
2313         (WebCore::RenderWidget::setWidget):
2314
2315 2006-09-26  David Smith  <catfish.man@gmail.com>
2316
2317         Reviewed by Timothy.
2318
2319         http://bugs.webkit.org/show_bug.cgi?id=3723
2320         Add -scrollDOMRangeToVisible:
2321
2322         No automated tests are possible as this code path isn't reachable from JavaScript.
2323
2324         * bridge/mac/WebCoreFrameBridge.h:
2325         * bridge/mac/WebCoreFrameBridge.mm:
2326         (-[WebCoreFrameBridge scrollDOMRangeToVisible:]):
2327
2328 2006-10-03  Graham Dennis  <graham.dennis@gmail.com>
2329
2330         Reviewed by Timothy.
2331
2332         <http://bugs.webkit.org/show_bug.cgi?id=10338>
2333         When contentEditable, cursor doesn't change to hand
2334         
2335         Allow the behaviour of editable links to be specified by a WebPreference
2336         The preference WebKitEditableLinkBehavior has four options:
2337          - AlwaysLive: Safari 2.0 behaviour
2338          - OnlyLiveWithShiftKey: Firefox/WinIE behaviour (and prior WebKit-ToT behaviour)
2339          - LiveWhenNotFocused: Editable links are live only when their editable block is not
2340              focused, or when the shift key is pressed
2341          - DefaultBehavior: This is the same as OnlyLiveWithShiftKey.
2342          
2343         No layout tests, just a modification of a manual-test as it isn't possible to test
2344         this automatically.
2345
2346         * bridge/mac/WebCoreSettings.h:
2347         * bridge/mac/WebCoreSettings.mm:
2348         (-[WebCoreSettings setEditableLinkBehavior:]):
2349         (-[WebCoreSettings editableLinkBehavior]):
2350         * html/HTMLAnchorElement.cpp:
2351         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
2352         (WebCore::HTMLAnchorElement::defaultEventHandler):
2353         (WebCore::HTMLAnchorElement::setActive):
2354         * html/HTMLAnchorElement.h:
2355         * manual-tests/contenteditable-link.html:
2356         * page/FrameView.cpp:
2357         (WebCore::nodeIsNotBeingEdited):
2358         (WebCore::selectCursor):
2359         * page/Settings.h:
2360         (WebCore::Settings::):
2361         (WebCore::Settings::Settings):
2362         (WebCore::Settings::editableLinkBehavior):
2363         (WebCore::Settings::setEditableLinkBehavior):
2364
2365 2006-10-03  Beth Dakin  <bdakin@apple.com>
2366
2367         Reviewed Darin.
2368
2369         No test cases needed.
2370
2371         Implemented a version of StringImpl::append that takes a UChar* and 
2372         a length.
2373
2374         * platform/StringImpl.cpp:
2375         (WebCore::StringImpl::append):
2376         (WebCore::StringImpl::insert): Call new append instead of making a 
2377         new StringImpl.
2378         * platform/StringImpl.h:
2379
2380 2006-10-03  MorganL  <morganl.webkit@yahoo.com>
2381
2382         Reviewed by Darin.
2383
2384         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11099
2385         HttpSendRequestEx results in ERROR_HTTP_HEADER_NOT_FOUND
2386
2387         * platform/win/ResourceLoaderWin.cpp:
2388         (WebCore::ResourceLoader::onHandleCreated):
2389
2390 2006-10-02  Geoffrey Garen  <ggaren@apple.com>
2391
2392         Feared, loathed, reviewed by Darin.
2393
2394         More frame/iframe merging. Merged IFRAME::willRemove and IFRAME::detach 
2395         into FRAME, plus other cleanup.
2396         
2397         No new behavior, so no new test. Layout tests pass. Basic browsing and
2398         Mail editing seem to work.
2399         
2400         * dom/Node.cpp:
2401         (WebCore::Node::detach): Removed random commented-out code.
2402         * html/HTMLFrameElement.cpp:
2403         (WebCore::HTMLFrameElement::isURLAllowed): 
2404         (1) Removed reference to FrameView, to dissociate frame loading from rendering.
2405         (2) Renamed newURL to completeURL because the difference between newURL
2406         and URLString is that newURL is a KURL that is the complete version of URLString,
2407         not that it is new.
2408         (WebCore::HTMLFrameElement::willRemove): 
2409         (1) Removed close() call and moved close() code into willRemove(), also removing 
2410         close() call from detach(), since willRemove is the well-defined place 
2411         from DOM tear-down, not detach().
2412         (2) Removed manual renderer detach code because the DOM is not responsible
2413         for managing the render tree. I confirmed that this change not
2414         regress <rdar://problem/4132581>.
2415         (3) Removed questionable ASSERT. The ASSERT assumed that iframe elements
2416         lost their content frames after being removed from the DOM. That's our 
2417         current behavior, but it's going to change in future rounds of refactoring.
2418         This also fixes <rdar://problem/4750835>.
2419         (WebCore::HTMLFrameElement::setLocation): Removed wacky manual calls to
2420         attach/detach, because the render tree should not be in charge of deciding
2421         when to load.
2422         * html/HTMLFrameElement.h:
2423         * html/HTMLIFrameElement.cpp:
2424         (WebCore::HTMLIFrameElement::attach): Renamed renderPart to renderPartObject,
2425         because the renderer is a renderPartObject, not a renderPart.
2426         * html/HTMLIFrameElement.h:
2427
2428 2006-10-03  Mark Rowe  <bdash@webkit.org>
2429
2430         Reviewed by Mitz.
2431
2432         http://bugs.webkit.org/show_bug.cgi?id=11137
2433         Bug 11137: GdkLauncher dies with "pure virtual method called" if
2434         window is closed while page still loading
2435
2436         * platform/gdk/FrameGdk.cpp:
2437         (WebCore::FrameGdk::~FrameGdk): Call cancelAndClear to allow virtual
2438         methods to be called before the FrameGdk portion of "this" is torn down.
2439
2440 2006-10-03  Adam Roben  <aroben@apple.com>
2441
2442         Reviewed by Darin.
2443
2444         Handle tab key presses in the DOM.
2445
2446         * dom/EventTargetNode.cpp:
2447         (WebCore::EventTargetNode::defaultEventHandler): Add tab key handling.
2448         * page/FrameView.cpp:
2449         (WebCore::FrameView::advanceFocus): Rename and reimplement
2450         focusNextPrevNode. Now we just call Element::focus().
2451         * page/FrameView.h: Rename focusNextPrevNode to advanceFocus and make
2452         it public.
2453
2454 2006-10-03  Justin Garcia  <justin.garcia@apple.com>
2455
2456         Reviewed by mjs
2457         
2458         <rdar://problem/4760612>
2459         TOT REGRESSION: Repro assertion failure when forwarding draft in Range::compareBoundaryPoints
2460         
2461         No layout test possible, attributedStringFrom:(DOMNode*)...etc isn't available to DRT.
2462         
2463         * dom/Range.cpp:
2464         (WebCore::Range::boundaryPointsValid): compareBoundaryPoints asserts that the incoming 
2465         positions are non-null since most of it's callers would be in a bad state if the positions 
2466         were null.  boundaryPointsValid, which calls compareBoundaryPoints, is an exception.  
2467         Instead of removing the assert I've added nil checks in boundaryPointsValid, to keep it 
2468         from entering compareBoundaryPoints and hitting the assert.
2469
2470 2006-10-03  Adele Peterson  <adele@apple.com>
2471
2472         Reviewed by Geoff.
2473
2474         Make code for turning off new listbox implementation mac-only, since there's no implementation on other platforms.
2475
2476         * html/HTMLSelectElement.cpp:
2477         (WebCore::HTMLSelectElement::recalcStyle):
2478         (WebCore::HTMLSelectElement::isKeyboardFocusable):
2479         (WebCore::HTMLSelectElement::isMouseFocusable):
2480         (WebCore::HTMLSelectElement::createRenderer):
2481         (WebCore::HTMLSelectElement::setRecalcListItems):
2482         (WebCore::HTMLSelectElement::notifyOptionSelected):
2483         (WebCore::HTMLSelectElement::defaultEventHandler):
2484
2485 2006-10-04  Darin Adler  <darin@apple.com>
2486
2487         Reviewed by Geoff.
2488
2489         - fix http://bugs.webkit.org/show_bug.cgi?id=11132
2490           Caret disappears when you're typing
2491
2492         * editing/SelectionController.cpp:
2493         (WebCore::SelectionController::setSelection): Remove unnecessary call to
2494         clearCaretRectIfNeeded. The recomputeCaretRect now takes care of this.
2495         (WebCore::SelectionController::recomputeCaretRect): Explicitly set m_needsLayout
2496         to false so we can get the old caret repaint rect. Later we need to change the
2497         design so getting the rect doesn't have a side effect of causing a layout without
2498         invalidation.
2499
2500 2006-10-03  David Harrison  <harrison@apple.com>
2501
2502         Reviewed by Maciej.
2503
2504         <rdar://problem/4671286> Candidate Window isn't displayed and only first candidate is displayed at typing location.
2505
2506         Updated test:
2507         * fast/text/justified-text-rect.html
2508
2509         * bridge/mac/WebCoreFrameBridge.mm:
2510         (-[WebCoreFrameBridge convertToNSRange:]):
2511         (-[WebCoreFrameBridge convertToDOMRange:]):
2512         Make the selection's root editable element (or the document itself) be
2513         the basis for NSRange conversions. This supports "shadow DOM" like
2514         that for text fields and text areas.
2515         
2516         * editing/CompositeEditCommand.cpp:
2517         (WebCore::CompositeEditCommand::moveParagraphs):
2518         Pass the document element as the scope.
2519         
2520         * editing/TextIterator.cpp:
2521         (WebCore::TextIterator::rangeFromLocationAndLength):
2522         Make the first parameter the scope.
2523         
2524         * editing/TextIterator.h:
2525         Make the first parameter of rangeFromLocationAndLength() the scope.
2526
2527 2006-10-03  Nikolas Zimmermann  <zimmermann@kde.org>
2528
2529         Reviewed by Eric.
2530
2531         Fix Qt/Linux build.
2532
2533         * CMakeLists.txt: Add counter related files.
2534
2535 2006-10-03  Mark Rowe  <bdash@webkit.org>
2536
2537         Reviewed by Eric.
2538
2539         http://bugs.webkit.org/show_bug.cgi?id=10981
2540         Linux/GDK build fixes
2541
2542         Based on a patch by Krzysztof Kowalczyk.
2543
2544         * WebCoreSources.bkl:
2545         * platform/gdk/FrameGdk.cpp:
2546         (WebCore::doScroll):
2547         (WebCore::FrameGdk::handleGdkEvent):
2548         * platform/gdk/PlatformScrollBar.h: Added.
2549         (WebCore::PlatformScrollBar::isWidget):
2550         * platform/gdk/ScrollViewGdk.cpp:
2551         * platform/gdk/TemporaryLinkStubs.cpp:
2552         (FrameView::passMousePressEventToScrollbar):
2553         (FrameView::passMousePressEventToSubframe):
2554         (FrameView::passMouseReleaseEventToSubframe):
2555         (FrameView::passMouseMoveEventToSubframe):
2556         (FrameView::passWheelEventToSubframe):
2557         (Cursor::Cursor):
2558         (Widget::invalidate):
2559         (Widget::invalidateRect):
2560         (ScrollView::wheelEvent):
2561         (ScrollView::convertToContainingWindow):
2562         (ScrollView::convertFromContainingWindow):
2563         (GraphicsContext::clip):
2564         (PlatformScrollBar::PlatformScrollBar):
2565         (PlatformScrollBar::updateThumbPosition):
2566         (PlatformScrollBar::updateThumbProportion):
2567         (ScrollBar::ScrollBar):
2568         (ScrollBar::setProportion):
2569         (WebCore::supportedKeySizes):
2570         (WebCore::signedPublicKeyAndChallengeString):
2571         * platform/gdk/WheelEventGdk.cpp:
2572         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2573         * platform/gdk/WidgetGdk.cpp:
2574         (WebCore::Widget::convertToContainingWindow):
2575         (WebCore::Widget::convertFromContainingWindow):
2576
2577 2006-10-02  Adam Roben  <aroben@apple.com>
2578
2579         Reviewed by Maciej.
2580
2581         Let Windows determine which mouse button is pressed.
2582
2583         * platform/PlatformMouseEvent.h: Add message parameter to constructor.
2584         * platform/win/MouseEventWin.cpp:
2585         (WebCore::PlatformMouseEvent::PlatformMouseEvent): Use message
2586         parameter to determine which mouse button is pressed.
2587
2588 2006-10-02  Justin Garcia  <justin.garcia@apple.com>
2589
2590         Reviewed by anders
2591         
2592         Build fix
2593         
2594         * editing/SelectionController.cpp:
2595         (WebCore::SelectionController::empty):
2596         * editing/SelectionController.h:
2597
2598 2006-10-02  Justin Garcia  <justin.garcia@apple.com>
2599
2600         Reviewed by john
2601         
2602         <rdar://problem/4755287>
2603         Writely Editor: Crash occurs at WebCore::maxDeepOffset(WebCore::Node const*) when attempting to create a OL/UL following a HR element
2604
2605         * editing/markup.cpp:
2606         (WebCore::createMarkup): Migrate to isBlock (isBlockFlow is true for inline replaced 
2607         elements).  Don't skip blocks that aren't containers (like horizontal rules).
2608
2609 2006-10-03  Darin Adler  <darin@apple.com>
2610
2611         Reviewed by Justin Garcia.
2612
2613         - correct mistaken code that would restart blinking every
2614           time "invalidateSelection" is called even if the caret
2615           has not moved
2616
2617         * editing/SelectionController.h:
2618         * editing/SelectionController.cpp:
2619         (WebCore::SelectionController::setSelection): Update for name change.
2620         (WebCore::SelectionController::recomputeCaretRect): New function.
2621         Computes caret rect and does any necessary invalidation if the rect
2622         changes.
2623         (WebCore::SelectionController::invalidateCaretRect): Renamed from
2624         needsCaretRepaint. Invalidates the caret rect unconditionally. Also
2625         calls recomputeCaretRect as a side effect.
2626
2627         * page/Frame.cpp:
2628         (WebCore::Frame::invalidateSelection): Remove unneeded call to
2629         clearCaretRectIfNeeded.
2630         (WebCore::Frame::clearCaretRectIfNeeded): Updated for name change.
2631         (WebCore::Frame::selectionLayoutChanged): Restructured to use the new
2632         recomputeCaretRect function and not restart blinking if caret has
2633         not changed position.
2634         (WebCore::Frame::caretBlinkTimerFired): Removed some checks that
2635         are not needed since selectionLayoutChanged already checks these.
2636
2637         * page/FramePrivate.h: Removed unused m_blinkCaret.
2638
2639 2006-10-02  Beth Dakin  <bdakin@apple.com>
2640
2641         Reviewed by Adam.
2642
2643         Build fix. Add counters to vcproj.
2644
2645         * WebCore.vcproj/WebCore/WebCore.vcproj:
2646
2647 2006-10-02  Brady Eidson  <beidson@apple.com>
2648
2649         Reviewed by Adele
2650
2651         If the Icon DB schema changes underneath you, the latest ToT can crash and burn when writing
2652         icon data out because we don't correctly check SQL error conditions.
2653
2654         * loader/icon/IconDataCache.cpp:
2655         (WebCore::IconDataCache::writeToDatabase):
2656
2657 2006-10-02  Steve Falkenburg  <sfalken@apple.com>
2658
2659         Reviewed by Hyatt.
2660
2661         Added method to find out whether a layout has occurred.
2662
2663         * page/FrameView.cpp:
2664         (WebCore::FrameView::didFirstLayout):
2665         * page/FrameView.h:
2666
2667 2006-10-02  Beth Dakin  <bdakin@apple.com>
2668
2669         Reviewed by Darin.
2670
2671         Initial implementation of CSS2 counters. See http://
2672         bugs.webkit.org/show_bug.cgi?id=4980 for more details.
2673
2674         * WebCore.xcodeproj/project.pbxproj:
2675         * css/CSSComputedStyleDeclaration.cpp: 
2676         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return 
2677         the increment/reset list now that this is implemented.
2678         * css/CSSPrimitiveValue.cpp:
2679         (WebCore::CSSPrimitiveValue::cssText): 
2680         * css/Counter.h:
2681         (WebCore::Counter::Counter):
2682         (WebCore::Counter::~Counter):
2683         (WebCore::Counter::identifier):
2684         (WebCore::Counter::listStyle):
2685         (WebCore::Counter::separator):
2686         (WebCore::Counter::listStyleNumber):
2687         (WebCore::Counter::setIdentifier):
2688         (WebCore::Counter::setListStyle):
2689         (WebCore::Counter::setSeparator):
2690         * css/cssparser.cpp:
2691         (WebCore::CSSParser::addProperty): Take care of reset/increment
2692         (WebCore::CSSParser::parseValue):
2693         (WebCore::CSSParser::parseContent): content can now take counters
2694         (WebCore::CSSParser::parseCounterContent): Parse counter() and 
2695         counters()
2696         (WebCore::CSSParser::parseCounter): Parse counter-reset and 
2697         counter-increment
2698         * css/cssparser.h:
2699         * css/cssstyleselector.cpp:
2700         (WebCore::CSSStyleSelector::matchUARules):
2701         (WebCore::CSSStyleSelector::applyProperty):
2702         * platform/PlatformString.h:
2703         * platform/String.cpp:
2704         (WebCore::String::insert): Implemented a version of insert that 
2705         accepts a UChar* and a length.
2706         * platform/StringImpl.cpp:
2707         (WebCore::StringImpl::insert): Same as above.
2708         * platform/StringImpl.h:
2709         * rendering/CounterListItem.h: Added.
2710         * rendering/CounterNode.cpp: Added.
2711         (WebCore::CounterNode::CounterNode):
2712         (WebCore::CounterNode::insertAfter):
2713         (WebCore::CounterNode::removeChild):
2714         (WebCore::CounterNode::remove):
2715         (WebCore::CounterNode::setUsesSeparator):
2716         (WebCore::CounterNode::recountAndGetNext):
2717         (WebCore::CounterNode::recountTree):
2718         (WebCore::CounterNode::setSelfDirty):
2719         (WebCore::CounterNode::setParentDirty):
2720         * rendering/CounterNode.h: Added.
2721         (WebCore::CounterNode::~CounterNode):
2722         (WebCore::CounterNode::parent):
2723         (WebCore::CounterNode::previousSibling):
2724         (WebCore::CounterNode::nextSibling):
2725         (WebCore::CounterNode::firstChild):
2726         (WebCore::CounterNode::lastChild):
2727         (WebCore::CounterNode::value):
2728         (WebCore::CounterNode::setValue):
2729         (WebCore::CounterNode::count):
2730         (WebCore::CounterNode::setCount):
2731         (WebCore::CounterNode::setHasSeparator):
2732         (WebCore::CounterNode::isReset):
2733         (WebCore::CounterNode::hasSeparator):
2734         (WebCore::CounterNode::willNeedLayout):
2735         (WebCore::CounterNode::setWillNeedLayout):
2736         (WebCore::CounterNode::isRoot):
2737         (WebCore::CounterNode::setRenderer):
2738         (WebCore::CounterNode::renderer):
2739         * rendering/CounterResetNode.cpp: Added.
2740         (WebCore::CounterResetNode::CounterResetNode):
2741         (WebCore::CounterResetNode::insertAfter):
2742         (WebCore::CounterResetNode::removeChild):
2743         (WebCore::CounterResetNode::recountAndGetNext):
2744         (WebCore::CounterResetNode::setParentDirty):
2745         (WebCore::CounterResetNode::updateTotal):
2746         * rendering/CounterResetNode.h: Added.
2747         (WebCore::CounterResetNode::firstChild):
2748         (WebCore::CounterResetNode::lastChild):
2749         (WebCore::CounterResetNode::isReset):
2750         (WebCore::CounterResetNode::total):
2751         * rendering/RenderContainer.cpp:
2752         (WebCore::RenderContainer::updatePseudoChildForObject): Account for 
2753         counter content.
2754         * rendering/RenderCounter.cpp: Added.
2755         (WebCore::RenderCounter::RenderCounter):
2756         (WebCore::RenderCounter::layout):
2757         (WebCore::toRoman):
2758         (WebCore::toLetterString):
2759         (WebCore::toHebrew):
2760         (WebCore::RenderCounter::convertValueToType):
2761         (WebCore::RenderCounter::calcMinMaxWidth):
2762         * rendering/RenderCounter.h: Added.
2763         (WebCore::RenderCounter::renderName):
2764         (WebCore::RenderCounter::isCounter):
2765         * rendering/RenderObject.cpp:
2766         (WebCore::getRenderObjectsToCounterNodeMaps): Maps RenderObjects to 
2767         maps of CounterNodes
2768         (WebCore::RenderObject::RenderObject):
2769         (WebCore::RenderObject::destroy): Destroy the maps.
2770         (WebCore::RenderObject::findCounter): Finds/creates counters.
2771         * rendering/RenderObject.h:
2772         (WebCore::RenderObject::isCounter):
2773         * rendering/RenderStyle.cpp:
2774         (WebCore::StyleVisualData::StyleVisualData):
2775         (WebCore::RenderStyle::arenaDelete):
2776         (WebCore::RenderStyle::RenderStyle):
2777         (WebCore::RenderStyle::diff):
2778         (WebCore::RenderStyle::setContent):
2779         (WebCore::ContentData::clearContent):
2780         (WebCore::RenderStyle::counterDataEquivalent):
2781         (WebCore::hasCounter):
2782         (WebCore::RenderStyle::hasCounterReset):
2783         (WebCore::RenderStyle::hasCounterIncrement):
2784         (WebCore::readCounter):
2785         (WebCore::RenderStyle::counterReset):
2786         (WebCore::RenderStyle::counterIncrement):
2787         * rendering/RenderStyle.h:
2788         (WebCore::StyleVisualData::operator==):
2789         (WebCore::CounterData::CounterData):
2790         (WebCore::CounterData::identifier):
2791         (WebCore::CounterData::listStyle):
2792         (WebCore::CounterData::separator):
2793         (WebCore::ContentData::contentCounter):
2794         (WebCore::ContentData::):
2795         (WebCore::RenderStyle::counterIncrement):
2796         (WebCore::RenderStyle::counterReset):
2797         (WebCore::RenderStyle::setCounterIncrement):
2798         (WebCore::RenderStyle::setCounterReset):
2799         (WebCore::RenderStyle::setCounterResetList):
2800         (WebCore::RenderStyle::setCounterIncrementList):
2801         (WebCore::RenderStyle::counterResetValueList):
2802         (WebCore::RenderStyle::counterIncrementValueList):
2803
2804 2006-10-02  Adele Peterson  <adele@apple.com>
2805
2806         Reviewed by Adam.
2807
2808         - Fix for <rdar://problem/4463841> Switch to use new list box implementation for <select multiple>
2809
2810         There are a few outstanding issues, so I've left the old code in for now.  So you can use the old-style listboxes
2811         by using "-webkit-appearance:none".
2812
2813         * css/html4.css:
2814
2815 2006-10-02  David Harrison  <harrison@apple.com>
2816
2817         Reverted the code part of r16696, my patch for <rdar://problem/4641262>, because the problem was
2818         addressed at a deeper level by r16696, the patch for <http://bugs.webkit.org/show_bug.cgi?id=10842>.
2819         Left the layout test.
2820         
2821         * rendering/bidi.cpp:
2822         (WebCore::checkMidpoints):
2823
2824 2006-10-02  Nikolas Zimmermann  <zimmermann@kde.org>
2825
2826         Reviewed by eseidel.  Landed by eseidel.
2827
2828         Fix Qt/Linux build.
2829
2830         * platform/qt/TemporaryLinkStubs.cpp: s/DeprecatedStringList/Vector<String>/
2831         (WebCore::supportedKeySizes):
2832
2833 2006-10-02  Nikolas Zimmermann <zimmermann@kde.org>
2834
2835         Reviewed by eseidel & mjs.  Landed by eseidel.
2836
2837         Fix Qt/Linux build with older gcc 3.3.4.
2838         http://bugs.webkit.org/show_bug.cgi?id=11116
2839
2840         As discussed with Maciej, the GCC_ROOT_NS_HACK
2841         can be completely removed, as well as the friendship
2842         between cacheGlobalObject & the JS* objects.
2843
2844         * bindings/scripts/CodeGeneratorJS.pm: Remove friendship.
2845         * platform/image-decoders/png/pnggccrd.c: Fix comments for gcc3.
2846         (png_read_filter_row_mmx_avg):
2847         * platform/image-decoders/png/pngvcrd.c: Ditto.
2848         (png_mmx_support):
2849         (png_read_filter_row_mmx_avg):
2850
2851 2006-10-01  Maciej Stachowiak  <mjs@apple.com>
2852
2853         Rubber stamped by Alexey.
2854
2855         - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=10893 since it led to layout test crashes
2856
2857         * css/CSSGrammar.y:
2858
2859 2006-10-01  Eric Seidel  <eric@webkit.org>
2860
2861         Reviewed by mjs.
2862
2863         Eliminate a few more hotspots in SVG drawing code.
2864         
2865         No test cases were harmed in the making of this patch.  (And SVG has no perf tests.)
2866
2867         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2868         (WebCore::KRenderingPaintServerSolidQuartz::setup): use a single shared colorspace, avoid a few mallocs
2869         * platform/mac/ColorMac.mm:
2870         (+[WebCoreControlTintObserver WebCore]): store a single shared colorspace instance
2871
2872 2006-10-01  Geoffrey Garen  <ggaren@apple.com>
2873
2874         Reviewed by Maciej.
2875         
2876         More frame/iframe merging.
2877         
2878         - Removed needWidgetUpdate and related code. needWidgetUpdate is always
2879         false, so this was dead code.
2880         - Removed FIXME about setInViewSourceMode inside openURL(). openURL(), rather
2881         than attach(), is the correct place for setInViewSourceMode, because
2882         openURL() is the function that creates our frame.
2883         - Moved IFRAME insertedIntoDocument() code into FRAME, and removed FRAME
2884         code that did the same thing in other places.
2885         - Made FRAME's attach() method suffuciently generic so that IFRAME could
2886         call up to it, rather than skipping its superclass and calling up directly 
2887         to ELEMENT.
2888         - Changed a few IFRAME up-calls to ELEMENT into up-calls to FRAME.
2889         - Replaced ad hoc frame loading code in FRAME::attach() with call to
2890         openURL(), the designated frame loading function.
2891
2892         Layout tests pass. I added a layout test for viewsource mode, since I
2893         broke it in the course of writing this patch.
2894
2895 2006-10-01  Anders Carlsson  <acarlsson@apple.com>
2896
2897         Reviewed by Geoff.
2898
2899         * dom/Document.cpp:
2900         (WebCore::Document::recalcStyleSelector):
2901         * dom/Document.h:
2902         Get rid of availableStyleSheets() and remove DeprecatedStringList.h include.
2903         
2904         * dom/Node.h:
2905         Remove DeprecatedStringList class forward declaration.
2906         
2907         * editing/markup.cpp:
2908         Include DeprecatedStringList.h here since it's not included by Document.h anymore.
2909         
2910         * kcanvas/KCanvasTreeDebug.cpp:
2911         * kcanvas/KCanvasTreeDebug.h:
2912         Remove unused functions.
2913         
2914         * loader/loader.cpp:
2915         * page/Frame.cpp:
2916         * page/Frame.h:
2917         * page/FrameView.h:
2918         Fixup DeprecatedStringList.h includes.
2919
2920 2006-09-30  David Harrison  <harrison@apple.com>
2921
2922         Reviewed by John Sullivan.
2923
2924         <rdar://problem/4641262> REGRESSION: Japanese text corrupts on wrapping point
2925
2926         Problem was that the decision to trim was based only on whether the character
2927         is a soft hyphen, which caused pretty much any Japanese character to go.
2928         Changed to decide based on whether the character is ignorable whitespace.
2929         
2930         Test:
2931         * fast/text/international/wrap-CJK-001.html
2932
2933         * rendering/bidi.cpp:
2934         (WebCore::isTrimmableChar):
2935         New. Checks whether character is whitespace that can be ignored
2936         according to the text node's style.
2937         trimmed from the end of wrapped line.
2938         (WebCore::checkMidpoints):
2939         Call isTrimmable() rather than checking for char != SOFT_HYPHEN.
2940
2941 2006-10-01  Anders Carlsson  <acarlsson@apple.com>
2942
2943         Reviewed by Mitz Pettel.
2944
2945         Convert the SVG code to use Vector<String> instead of DeprecatedStringList.
2946
2947         * ksvg2/svg/SVGColor.cpp:
2948         (WebCore::SVGColor::setRGBColor):
2949         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2950         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2951         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
2952         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2953         (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
2954         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2955         (SVGFESpecularLightingElement::parseMappedAttribute):
2956         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2957         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
2958         * ksvg2/svg/SVGLengthList.cpp:
2959         * ksvg2/svg/SVGNumberList.cpp:
2960         (SVGNumberList::parse):
2961         * ksvg2/svg/SVGNumberList.h:
2962         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
2963         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
2964         * ksvg2/svg/SVGStringList.cpp:
2965         (WebCore::SVGStringList::reset):
2966         * ksvg2/svg/SVGStringList.h:
2967         * ksvg2/svg/SVGTransformable.cpp:
2968         (SVGTransformable::parseTransformAttribute):
2969
2970 2006-10-01  Nikolas Zimmermann  <zimmermann@kde.org>
2971
2972         Reviewed by Eric, tweaked and landed by ap.
2973
2974         Fix Qt/Linux build.
2975
2976         * CMakeLists.txt:
2977         * platform/qt/PlatformScrollBar.h:
2978         * platform/qt/TemporaryLinkStubs.cpp:
2979         (WebCore::ScrollBar::ScrollBar):
2980         (WebCore::PlatformScrollBar::PlatformScrollBar):
2981         (FrameView::passMousePressEventToSubframe):
2982         (FrameView::passMouseMoveEventToSubframe):
2983         (FrameView::passMouseReleaseEventToSubframe):
2984         (FrameView::passWheelEventToSubframe):
2985         (FrameView::passMousePressEventToScrollbar):
2986         * ksvg2/svg/SVGDocument.h:
2987
2988 2006-10-01  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2989
2990         Reviewed by Darin.
2991
2992         Fix for http://bugs.webkit.org/show_bug.cgi?id=10190
2993         REGRESSION: Repro crash when navigating away from an image document that hasn't finished loading
2994
2995         No test case added (probably requires new DumpRenderTree functionality)
2996
2997         * rendering/RenderImage.cpp:
2998         (WebCore::RenderImage::imageChanged): Added early return if the document is
2999         being destroyed.
3000
3001 2006-10-01  Graham Dennis  <graham.dennis@gmail.com>
3002
3003         Reviewed by Hyatt.
3004
3005         Fix for http://bugs.webkit.org/show_bug.cgi?id=10842
3006         REGRESSION (r15418): contenteditable div truncates rightmost Japanese character
3007         
3008         Make sure we only break after a space (and not any other valid line-break) if
3009         the style is -webkit-line-break: after-white-space (e.g. for a contentEditable div).
3010         I also did a logic shuffle at Mitz's request to prevent doing an if on the same expression
3011         twice in quick succession.
3012
3013         * rendering/bidi.cpp:
3014         (WebCore::RenderBlock::findNextLineBreak): 
3015
3016 2006-10-01  Alexey Proskuryakov  <ap@nypop.com>
3017
3018         Reviewed by Maciej and Darin.
3019
3020         http://bugs.webkit.org/show_bug.cgi?id=4372
3021         JavaScript document.write page form does not submit in Safari
3022
3023         Test: fast/forms/document-write.html
3024
3025         * page/Frame.cpp:
3026         (WebCore::Frame::submitForm): Don't check for parsing().
3027
3028 2006-10-01  Alexey Proskuryakov  <ap@nypop.com>
3029
3030         Build fix.
3031
3032         * bridge/mac/FrameViewMac.mm: Add missing #imports.
3033
3034 2006-10-01  Dave Hyatt  <hyatt@apple.com>
3035
3036         Refactor the code that passes mouse presses to the Mac scrollbar and make it cross-platform.
3037        
3038         Reviewed by mitz
3039
3040         * bridge/mac/FrameMac.mm:
3041         (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
3042         * bridge/mac/FrameViewMac.mm:
3043         (WebCore::FrameView::passMousePressEventToScrollbar):
3044         * page/FrameView.cpp:
3045         (WebCore::FrameView::handleMousePressEvent):
3046         (WebCore::FrameView::setMousePressed):
3047         * page/FrameView.h:
3048         * platform/win/TemporaryLinkStubs.cpp:
3049         (FrameView::passMousePressEventToScrollbar):
3050
3051 2006-09-30  Sam Weinig  <sam.weinig@gmail.com>
3052
3053         Reviewed by Darin.
3054
3055         Patch for http://bugs.webkit.org/show_bug.cgi?id=11102
3056         Add more SVG Objective-C DOM bindings
3057
3058         - Auto-generate Objective-C DOM bindings for DOMSVGAElement,
3059           DOMSVGAnimateColorElement, DOMSVGAnimateElement, DOMSVGAnimateTransformElement,
3060           DOMSVGAnimatedPathData, DOMSVGAnimatedPoints, DOMSVGAnimatedPreserveAspectRatio,
3061           DOMSVGAnimationElement, DOMSVGCircleElement, DOMSVGClipPathElement, DOMSVGColor,
3062           DOMSVGCursorElement, DOMSVGDefsElement, DOMSVGDescElement, DOMSVGDocument, 
3063           DOMSVGEllipseElement, DOMSVGPreserveAspectRatio, and DOMSVGURIReference.
3064
3065         * DerivedSources.make:
3066         * WebCore.xcodeproj/project.pbxproj:
3067         * bindings/objc/DOMInternal.h:
3068         * bindings/objc/DOMSVG.h:
3069         * bindings/scripts/CodeGeneratorObjC.pm:
3070         * ksvg2/svg/SVGAElement.idl:
3071         * ksvg2/svg/SVGAnimateColorElement.idl:
3072         * ksvg2/svg/SVGAnimateElement.idl:
3073         * ksvg2/svg/SVGAnimateTransformElement.idl:
3074         * ksvg2/svg/SVGAnimatedPathData.idl:
3075         * ksvg2/svg/SVGAnimatedPoints.idl:
3076         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl:
3077         * ksvg2/svg/SVGAnimationElement.idl:
3078         * ksvg2/svg/SVGCircleElement.idl:
3079         * ksvg2/svg/SVGClipPathElement.idl:
3080         * ksvg2/svg/SVGColor.idl:
3081         * ksvg2/svg/SVGCursorElement.idl:
3082         * ksvg2/svg/SVGDefsElement.idl:
3083         * ksvg2/svg/SVGDescElement.idl:
3084         * ksvg2/svg/SVGDocument.idl:
3085         * ksvg2/svg/SVGEllipseElement.idl:
3086         * ksvg2/svg/SVGPointList.idl:
3087         * ksvg2/svg/SVGPreserveAspectRatio.idl:
3088         * ksvg2/svg/SVGRect.idl:
3089         * ksvg2/svg/SVGSVGElement.idl:
3090
3091 2006-09-30  Maciej Stachowiak  <mjs@apple.com>
3092
3093         Reviewed by Adele.
3094
3095         - fix build
3096
3097         * platform/FloatRect.h:
3098         (WebCore::FloatRect::contains): Added; not exactly the same semantic as IntRect containment
3099         but more appropriate for path-type stuff.
3100         * platform/cg/PathCG.cpp:
3101         (WebCore::Path::contains): Don't use enclosingIntRect, just use FloatRect::contains.
3102
3103 2006-09-30  Alexey Proskuryakov  <ap@nypop.com>
3104
3105         Reviewed by Darin.
3106
3107         http://bugs.webkit.org/show_bug.cgi?id=11011
3108         External CSS is parsed as iso-8859-1 even though the main document is utf-8
3109
3110         Test: fast/encoding/css-charset-default.xhtml
3111
3112         * loader/CachedResourceClient.h:
3113         (WebCore::CachedResourceClient::setCSSStyleSheet):
3114         (WebCore::CachedResourceClient::setXSLStyleSheet):
3115         Divided setStyleSheet into setCSSStyleSheet and setXSLStyleSheet. The former
3116         takes an additional charset parameter, to be passed to CSSStyleSheet constructor.
3117
3118         * css/CSSImportRule.cpp:
3119         (WebCore::CSSImportRule::setCSSStyleSheet):
3120         (WebCore::CSSImportRule::insertedIntoParent): Default to parent stylesheet's charset.
3121         * css/CSSImportRule.h:
3122
3123         * css/CSSStyleSheet.cpp:
3124         (WebCore::CSSStyleSheet::CSSStyleSheet):
3125         * css/CSSStyleSheet.h:
3126         Added an m_charset member to be used when loading child stylesheets. Removed an unused m_implicit
3127         member. Changed some String parameters to const String&.
3128
3129         * css/StyleSheet.cpp:
3130         (WebCore::StyleSheet::StyleSheet):
3131         * css/StyleSheet.h:
3132         Changed some String parameters to const String&. Removed an unused (even unimplemented) constructor.
3133
3134         * css/StyleSheetList.cpp:
3135         (WebCore::StyleSheetList::length):
3136         (WebCore::StyleSheetList::item):
3137         * css/StyleSheetList.h:
3138         Special-casing implicit stylesheets seemed to be dead code, removed.
3139
3140         * dom/Document.cpp:
3141         (WebCore::Document::setCSSStyleSheet):
3142         (WebCore::Document::recalcStyleSelector):
3143         * dom/Document.h:
3144         Renamed setStyleSheet() to setCSSStyleSheet().
3145
3146         * dom/ProcessingInstruction.cpp:
3147         (WebCore::ProcessingInstruction::checkStyleSheet): Pass a correct charset to requestCSSStyleSheet().
3148         (WebCore::ProcessingInstruction::setCSSStyleSheet):
3149         (WebCore::ProcessingInstruction::setXSLStyleSheet):
3150         (WebCore::ProcessingInstruction::parseStyleSheet):
3151         * dom/ProcessingInstruction.h:
3152
3153         * html/HTMLLinkElement.cpp:
3154         (WebCore::HTMLLinkElement::process): Default to document encoding if a charset attribute 
3155         is not specified.
3156         (WebCore::HTMLLinkElement::setCSSStyleSheet):
3157         * html/HTMLLinkElement.h:
3158
3159         * html/HTMLStyleElement.cpp:
3160         (WebCore::HTMLStyleElement::childrenChanged):
3161         * ksvg2/svg/SVGStyleElement.cpp:
3162         (WebCore::SVGStyleElement::childrenChanged):
3163         Inherit URL and charset from the document.
3164
3165         * loader/Cache.cpp:
3166         (WebCore::Cache::requestCSSStyleSheet):
3167         * loader/Cache.h:
3168         Adjust for setStyleSheet() renaming.
3169
3170         * loader/CachedCSSStyleSheet.h: Removed an unused constructor.
3171         * loader/CachedCSSStyleSheet.cpp:
3172         (WebCore::CachedCSSStyleSheet::ref):
3173         (WebCore::CachedCSSStyleSheet::deref):
3174         (WebCore::CachedCSSStyleSheet::checkNotify):
3175         Pass the encoding to setCSSStyleSheet().
3176
3177         * loader/CachedXSLStyleSheet.cpp:
3178         (WebCore::CachedXSLStyleSheet::ref):
3179         (WebCore::CachedXSLStyleSheet::checkNotify):
3180         * loader/DocLoader.cpp:
3181         (WebCore::DocLoader::requestCSSStyleSheet):
3182         * loader/DocLoader.h:
3183         * page/Frame.cpp:
3184         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
3185         (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
3186         * xml/XSLImportRule.cpp:
3187         (WebCore::XSLImportRule::setXSLStyleSheet):
3188         (WebCore::XSLImportRule::loadSheet):
3189         * xml/XSLImportRule.h:
3190         Adjust for setStyleSheet() renaming.
3191
3192 2006-09-30  Rob Buis  <buis@kde.org>
3193
3194         Reviewed by eseidel.
3195
3196         http://bugs.webkit.org/show_bug.cgi?id=11096
3197         Hit testing for polylines fails
3198
3199         Fix Path::contains so it handles filled, non-closed paths too.
3200
3201         * platform/cg/PathCG.cpp:
3202         (WebCore::Path::contains):
3203
3204 2006-09-30  Dave Hyatt  <hyatt@apple.com>
3205
3206         Refactor subframe event handling to hide more of the Mac-specific logic from the cross-platform code.
3207         Stub out a capturing API that mimics the way Web browsers capture events and route them to specific
3208         subframes while the mouse is down.
3209       
3210         Reviewed by mitzpettel
3211
3212         * bridge/mac/FrameMac.h:
3213         * bridge/mac/FrameMac.mm:
3214         (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
3215         (WebCore::FrameMac::passWheelEventToWidget):
3216         * bridge/mac/FrameViewMac.mm:
3217         (WebCore::FrameView::passMousePressEventToSubframe):
3218         (WebCore::FrameView::passMouseMoveEventToSubframe):
3219         (WebCore::FrameView::passMouseReleaseEventToSubframe):
3220         (WebCore::FrameView::passWheelEventToSubframe):
3221         * page/Frame.cpp:
3222         * page/Frame.h:
3223         * page/FrameView.cpp:
3224         (WebCore::subframeForTargetNode):
3225         (WebCore::FrameView::handleMousePressEvent):
3226         (WebCore::FrameView::handleMouseDoubleClickEvent):
3227         (WebCore::FrameView::handleMouseMoveEvent):
3228         (WebCore::FrameView::handleMouseReleaseEvent):
3229         (WebCore::FrameView::handleWheelEvent):
3230         * page/FrameView.h:
3231         * platform/ScrollBar.h:
3232         (WebCore::ScrollBar::handleMouseMoveEvent):
3233         (WebCore::ScrollBar::handleMouseOutEvent):
3234         * platform/Widget.h:
3235         (WebCore::Widget::handleMouseMoveEvent):
3236         (WebCore::Widget::handleMouseReleaseEvent):
3237         * platform/win/TemporaryLinkStubs.cpp:
3238         (FrameView::passMousePressEventToSubframe):
3239         (FrameView::passMouseMoveEventToSubframe):
3240         (FrameView::passMouseReleaseEventToSubframe):
3241         (FrameView::passWheelEventToSubframe):
3242         (Widget::capturingMouse):
3243         (Widget::setCapturingMouse):
3244         (Widget::capturingTarget):
3245         (Widget::capturingChild):
3246         (Widget::setCapturingChild):
3247         * rendering/RenderView.cpp:
3248         (WebCore::RenderView::paintBoxDecorations):
3249
3250 2006-09-29  MorganL  <morganl.webkit@yahoo.com>
3251
3252         Reviewed by Adele.
3253
3254         Fixes windows bustage:
3255         http://bugs.webkit.org/show_bug.cgi?id=11093
3256
3257         * platform/win/PlatformScrollBar.h:
3258         * platform/win/TemporaryLinkStubs.cpp:
3259         (PlatformScrollBar::PlatformScrollBar):
3260         (ScrollBar::ScrollBar):
3261
3262 2006-09-29  David Hyatt  <hyatt@apple.com>
3263
3264         Eliminate RenderLayer::gScrollBar in favor of caching the scrollbar hit
3265         in RenderObject::NodeInfo (and then propagating that Widget to
3266         MouseEventWithHitTestResults).
3267
3268         This allows RenderListBox and RenderBlock to do the same thing when the
3269         mouse is over the scrollbar.
3270
3271         Also land fix to support font-size: 0.
3272
3273         Reviewed by mjs (scrollbar), eric (font-size)
3274
3275         * dom/Document.cpp:
3276         (WebCore::Document::prepareMouseEvent):
3277         * page/Frame.cpp:
3278         (WebCore::Frame::passWidgetMouseDownEventToWidget):
3279         * page/FrameView.cpp:
3280         (WebCore::selectCursor):
3281         (WebCore::FrameView::handleMouseMoveEvent):
3282         (WebCore::FrameView::dispatchMouseEvent):
3283         * page/MouseEventWithHitTestResults.cpp:
3284         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
3285         * page/MouseEventWithHitTestResults.h:
3286         (WebCore::MouseEventWithHitTestResults::scrollbar):
3287         * rendering/RenderBlock.cpp:
3288         (WebCore::RenderBlock::isPointInScrollbar):
3289         (WebCore::RenderBlock::nodeAtPoint):
3290         * rendering/RenderBlock.h:
3291         * rendering/RenderLayer.cpp:
3292         (WebCore::RenderLayer::hitTest):
3293         * rendering/RenderLayer.h:
3294         (WebCore::RenderLayer::getHiddenBehavior):
3295         * rendering/RenderListBox.cpp:
3296         (WebCore::RenderListBox::RenderListBox):
3297         (WebCore::RenderListBox::~RenderListBox):
3298         (WebCore::RenderListBox::isPointInScrollbar):
3299         * rendering/RenderListBox.h:
3300         * rendering/RenderObject.h:
3301         (WebCore::RenderObject::NodeInfo::NodeInfo):
3302         (WebCore::RenderObject::NodeInfo::scrollbar):
3303         (WebCore::RenderObject::NodeInfo::setScrollbar):
3304
3305 2006-09-29  MorganL  <morganl.webkit@yahoo.com>
3306
3307         Reviewed by Adele.
3308
3309         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11092
3310
3311         * platform/win/ScrollViewWin.cpp:
3312         (WebCore::ScrollView::convertToContainingWindow):
3313         (WebCore::ScrollView::convertFromContainingWindow):
3314         * platform/win/WidgetWin.cpp:
3315         (WebCore::Widget::convertToContainingWindow):
3316         (WebCore::Widget::convertFromContainingWindow):
3317
3318 2006-09-29  Adele Peterson  <adele@apple.com>
3319
3320         Updated with new argument for PlatformScrollBar.
3321
3322         * platform/win/TemporaryLinkStubs.cpp:
3323         (PlatformScrollBar::PlatformScrollBar):
3324
3325 2006-09-29  Adele Peterson  <adele@apple.com>
3326
3327         Reviewed by Hyatt.
3328
3329         Fixing build bustage with cast to int.
3330
3331         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::lastSelectedListIndex):
3332
3333 2006-09-29  Adele Peterson  <adele@apple.com>
3334
3335         Fixing accidental include.
3336
3337         * rendering/RenderListBox.cpp:
3338
3339 2006-09-29  Adele Peterson  <adele@apple.com>
3340
3341         Adding RenderListBox files.
3342
3343         * WebCore.vcproj/WebCore/WebCore.vcproj:
3344
3345 2006-09-29  Adele Peterson  <adele@apple.com>
3346
3347         Reviewed by Adam.
3348
3349         Initial implementation of engine-based list box control.
3350
3351         * WebCore.xcodeproj/project.pbxproj: Added RenderListBox.h and RenderListBox.cpp
3352
3353         * bridge/mac/FrameMac.h: Added _mouseDownMayStartAutoscroll.
3354         * bridge/mac/FrameMac.mm: Updated autoscroll code to use renderers instead of layers, so any renderer that implements autoscroll will work.
3355         (WebCore::FrameMac::FrameMac):
3356         (WebCore::FrameMac::handleMousePressEvent):
3357         (WebCore::FrameMac::handleMouseMoveEvent):
3358         (WebCore::FrameMac::mouseDown):
3359
3360         * page/Frame.cpp:
3361         (WebCore::Frame::handleMouseMoveEvent):
3362         (WebCore::Frame::scrollOverflow): Don't scroll list box here- this would cause arrow keys to scroll instead of select.
3363         (WebCore::Frame::handleAutoscroll): Updated to use a renderer instead of a layer when setting up autoscroll.
3364         (WebCore::Frame::autoscrollTimerFired): ditto.
3365         (WebCore::Frame::stopAutoscrollTimer): ditto.
3366         (WebCore::Frame::passWidgetMouseDownEventToWidget): Updated to check for list box's scroll bar.
3367         * page/Frame.h:
3368         * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Updated to use renderer unstead of layer for autoscroll.
3369
3370         * page/FrameView.cpp: Keep track of current mouse position so this can be used for list box autoscroll.
3371         (WebCore::FrameViewPrivate::reset):
3372         (WebCore::FrameView::currentMousePosition):
3373         (WebCore::FrameView::handleMousePressEvent):
3374         (WebCore::FrameView::handleMouseDoubleClickEvent):
3375         (WebCore::selectCursor):
3376         (WebCore::FrameView::handleMouseMoveEvent):
3377         (WebCore::FrameView::handleMouseReleaseEvent):
3378         * page/FrameView.h:
3379
3380         * platform/ScrollBar.cpp: (WebCore::ScrollBar::ScrollBar): Added controlSize argument.  The list box will use a smaller scroll bar size.
3381         * platform/ScrollBar.h:
3382         (WebCore::):
3383         (WebCore::ScrollBar::controlSize):
3384         * platform/mac/PlatformScrollBar.h:
3385         * platform/mac/PlatformScrollBarMac.mm:
3386         (NSControlSizeForScrollBarControlSize):
3387         (-[WebCoreScrollBar initWithPlatformScrollBar:]):
3388         (WebCore::PlatformScrollBar::PlatformScrollBar):
3389
3390         * rendering/RenderBlock.h:
3391         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar): Updated to pass regular control size to scrollbar constructor.
3392         * rendering/RenderLayer.h:
3393         * rendering/RenderObject.cpp:
3394         (WebCore::RenderObject::shouldAutoscroll):
3395         (WebCore::RenderObject::autoscroll):
3396         * rendering/RenderObject.h: (WebCore::RenderObject::isListBox):
3397
3398         * css/html4.css: Added properties for new list boxes.
3399
3400         * html/HTMLOptionElement.cpp:
3401         (WebCore::HTMLOptionElement::setSelected): Doesn't allow selection to be changed here if the option is disabled.
3402         (WebCore::HTMLOptionElement::disabled): Added. Checks the parent's disabled status.
3403         * html/HTMLOptionElement.h: Added disabled method.
3404
3405         * html/HTMLSelectElement.cpp: Added appearance switch for new list box implementation.
3406         (WebCore::HTMLSelectElement::recalcStyle):
3407         (WebCore::HTMLSelectElement::lastSelectedListIndex):
3408         (WebCore::HTMLSelectElement::deselectItems):
3409         (WebCore::HTMLSelectElement::setSelectedIndex):
3410         (WebCore::HTMLSelectElement::isKeyboardFocusable):
3411         (WebCore::HTMLSelectElement::isMouseFocusable):
3412         (WebCore::HTMLSelectElement::createRenderer):
3413         (WebCore::HTMLSelectElement::recalcListItems):
3414         (WebCore::HTMLSelectElement::setRecalcListItems):
3415         (WebCore::HTMLSelectElement::reset):
3416         (WebCore::HTMLSelectElement::notifyOptionSelected):
3417         (WebCore::HTMLSelectElement::defaultEventHandler): Added code to select options for list box when clicking and using arrow keys.
3418         (WebCore::HTMLSelectElement::nextSelectableListIndex):
3419         (WebCore::HTMLSelectElement::previousSelectableListIndex):
3420         * html/HTMLSelectElement.h:
3421
3422         * rendering/RenderTheme.cpp: Added support for ListBoxAppearance
3423         (WebCore::RenderTheme::paint):
3424         (WebCore::RenderTheme::paintBorderOnly):
3425         (WebCore::RenderTheme::paintDecorations):
3426         (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
3427         (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
3428         (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
3429         (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
3430         (WebCore::RenderTheme::isControlStyled):
3431         (WebCore::RenderTheme::supportsFocusRing):
3432         * rendering/RenderTheme.h:
3433         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
3434
3435         * rendering/RenderListBox.cpp: Added.
3436         (WebCore::RenderListBox::RenderListBox):
3437         (WebCore::RenderListBox::~RenderListBox):
3438         (WebCore::RenderListBox::setStyle):
3439         (WebCore::RenderListBox::updateFromElement):
3440         (WebCore::RenderListBox::calcMinMaxWidth):
3441         (WebCore::RenderListBox::size):
3442         (WebCore::RenderListBox::numItems):
3443         (WebCore::RenderListBox::calcHeight):
3444         (WebCore::RenderListBox::baselinePosition):
3445         (WebCore::RenderListBox::itemBoundingBoxRect):
3446         (WebCore::RenderListBox::paintObject):
3447         (WebCore::RenderListBox::paintScrollbar):
3448         (WebCore::RenderListBox::paintItemForeground):
3449         (WebCore::RenderListBox::paintItemBackground):
3450         (WebCore::RenderListBox::scrollBarTarget):
3451         (WebCore::RenderListBox::isPointInScrollbar):
3452         (WebCore::RenderListBox::optionAtPoint):
3453         (WebCore::RenderListBox::autoscroll):
3454         (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
3455         (WebCore::RenderListBox::scroll):
3456         (WebCore::RenderListBox::valueChanged):
3457         * rendering/RenderListBox.h: Added.
3458         (WebCore::RenderListBox::isListBox):
3459         (WebCore::RenderListBox::selectionChanged):
3460         (WebCore::RenderListBox::setSelectionChanged):
3461         (WebCore::RenderListBox::canHaveChildren):
3462         (WebCore::RenderListBox::renderName):
3463         (WebCore::RenderListBox::setOptionsChanged):
3464         (WebCore::RenderListBox::shouldAutoscroll):
3465         (WebCore::RenderListBox::listIndexIsVisible):
3466
3467 2006-09-29  Beth Dakin  <bdakin@apple.com>
3468
3469         Reviewed by Darin.
3470
3471         We had a bug where html4.css was ignoring Media Queries. In the end 
3472         the problem was that we were trying to send a char* to the 
3473         MediaQueryEvaluator constructor that expects a String, but the 
3474         char* got interpreted as a bool, the wrong constructor was called, 
3475         and the media type was never set.
3476
3477         No test case possible since this only affects html4.css
3478
3479         * css/MediaQueryEvaluator.cpp: New constructor that expects takes a 
3480         char*
3481         (WebCore::MediaQueryEvaluator):
3482         * css/MediaQueryEvaluator.h: Same.
3483
3484 2006-09-29  Geoffrey Garen  <ggaren@apple.com>
3485
3486         Reviewed by John, Maciej.
3487         
3488         Integrated some frame and iframe code. I'm trying to fix up frame ownership
3489         and loading. Reducing the number of different code paths involved
3490         seemed like a good first step.
3491         
3492         As a side effect, I fixed a bug where FRAME elements would report their
3493         src attributes as relative, rather than compelete, URLs. (IFRAME elements
3494         had the correct complete URL behavior.)
3495
3496         * html/HTMLFrameElement.cpp:
3497         (WebCore::HTMLFrameElement::isURLAllowed): Fixed comment typo
3498         (WebCore::HTMLFrameElement::openURL):
3499             (1) Removed checks that requestFrame does for us
3500             (2) Added isURLAllowed check, to have one clear bottleneck for it
3501             (3) Added viewsource check, to have one clear bottleneck for it
3502         (WebCore::HTMLFrameElement::close): Changed to use the common contentFrame()
3503         method, instead of finding our content frame in our own unique way.
3504         (WebCore::HTMLFrameElement::setLocation): Removed isURLAllowed check,
3505         since openURL does this for us now.
3506         (WebCore::HTMLFrameElement::src): Return complete URL instead of relative.
3507         This is what FF does, and it made no sense to have different behaviors
3508         for FRAME and IFRAME elements.
3509         * html/HTMLIFrameElement.cpp:
3510         (WebCore::HTMLIFrameElement::HTMLIFrameElement): Removed duplicate init
3511         code.
3512         * html/HTMLIFrameElement.h: Removed src() and openURL() methods, since
3513         HTMLFrameElement now does everything we need.
3514
3515 2006-09-30  Nikolas Zimmermann  <zimmermann@kde.org>
3516
3517         Reviewed by Hyatt.
3518
3519         Fix Qt/Linux build.
3520
3521         * CMakeLists.txt:
3522         * platform/qt/ScrollViewQt.cpp:
3523         (WebCore::ScrollView::convertToContainingWindow):
3524         (WebCore::ScrollView::convertFromContainingWindow):
3525         * platform/qt/TemporaryLinkStubs.cpp:
3526         (WebCore::signedPublicKeyAndChallengeString):
3527         * platform/qt/WidgetQt.cpp:
3528         (WebCore::Widget::convertToContainingWindow):
3529         (WebCore::Widget::convertFromContainingWindow):
3530
3531 2006-09-29  Sam Weinig  <sam.weinig@gmail.com>
3532
3533         Reviewed by Tim H.
3534
3535         Patch for http://bugs.webkit.org/show_bug.cgi?id=11082
3536         Simplify Internal methods for the auto-generated Objective-C DOM code
3537
3538         - Auto-generate the internal methods for more Objective-C classes.
3539
3540         * WebCore.xcodeproj/project.pbxproj:
3541         * bindings/objc/DOM.mm:
3542         * bindings/objc/DOMCSS.mm:
3543         (-[DOMStyleSheet WebCore::]):
3544         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
3545         (-[DOMCSSRule WebCore::]):
3546         (-[DOMCSSRule _initWithCSSRule:WebCore::]):
3547         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
3548         (-[DOMCSSValue WebCore::]):
3549         (-[DOMCSSValue _initWithCSSValue:WebCore::]):
3550         (+[DOMCSSValue _CSSValueWith:WebCore::]):
3551         * bindings/objc/DOMHTMLAppletElement.mm:
3552         (-[DOMHTMLAppletElement WebCore::]):
3553         (+[DOMHTMLAppletElement _HTMLOptionElementWith:WebCore::]):
3554         * bindings/objc/DOMHTMLEmbedElement.mm:
3555         (-[DOMHTMLEmbedElement WebCore::]):
3556         (+[DOMHTMLEmbedElement _HTMLEmbedElementWith:WebCore::]):
3557         * bindings/objc/DOMInternal.h:
3558         * bindings/objc/DOMInternal.mm:
3559         * bindings/scripts/CodeGeneratorObjC.pm:
3560         * css/CSSCharsetRule.idl:
3561         * css/CSSFontFaceRule.idl:
3562         * css/CSSImportRule.idl:
3563         * css/CSSMediaRule.idl:
3564         * css/CSSPageRule.idl:
3565         * css/CSSPrimitiveValue.idl:
3566         * css/CSSStyleRule.idl:
3567         * css/CSSStyleSheet.idl:
3568         * css/CSSUnknownRule.idl:
3569         * css/CSSValueList.idl:
3570         * dom/KeyboardEvent.idl:
3571         * dom/MouseEvent.idl:
3572         * dom/MutationEvent.idl:
3573         * dom/NodeIterator.idl:
3574         * dom/OverflowEvent.idl:
3575         * dom/UIEvent.idl:
3576         * dom/WheelEvent.idl:
3577
3578 2006-09-29  David Harrison  <harrison@apple.com>
3579
3580         Reviewed by John Sullivan.
3581
3582         <rdar://problem/4663772> REGRESSION: Cannot type in Japanese after replying to a particular message
3583         <rdar://problem/4673293> REGRESSION: Can't enter the Japanese characters in Mail or Blot
3584
3585         Test added
3586         * fast/text/attributed-substring-from-range-001.html
3587
3588         * bridge/mac/FrameMac.mm:
3589         (WebCore::FrameMac::attributedString):
3590         Handle non-zero offsets when start and/or end node is a container. Offset used to be ignored in this case.
3591         Also, add validation of the range.
3592
3593 2006-09-29  Rob Buis  <buis@kde.org>
3594
3595         Reviewed by Maciej.
3596
3597         http://bugs.webkit.org/show_bug.cgi?id=10893
3598         InsertRule can not handle @import statements
3599
3600         Allow @import as part of a css rule.
3601
3602         * css/CSSGrammar.y:
3603
3604 2006-09-28  David Hyatt  <hyatt@apple.com>
3605
3606         Switch over the Mac-specific uses of viewportToContents/contentsToViewport.
3607
3608         * bridge/mac/FrameMac.mm:
3609         (WebCore::FrameMac::eventMayStartDrag):
3610         (WebCore::FrameMac::dragHysteresisExceeded):
3611         (WebCore::FrameMac::mouseDown):
3612         (WebCore::FrameMac::shouldDragAutoNode):
3613         (WebCore::FrameMac::sendContextMenuEvent):
3614         * bridge/mac/WebCoreFrameBridge.mm:
3615         (-[WebCoreFrameBridge _visiblePositionForPoint:]):
3616
3617 2006-09-28  Dave Hyatt  <hyatt@apple.com>
3618
3619         This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
3620         ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
3621         view.
3622        
3623         Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
3624         the patch after review, once I realized that these new functions essentially do the same thing.)
3625
3626         * dom/EventTargetNode.cpp:
3627         (WebCore::EventTargetNode::dispatchMouseEvent):
3628         (WebCore::EventTargetNode::dispatchWheelEvent):
3629         * page/Frame.cpp:
3630         (WebCore::Frame::selectClosestWordFromMouseEvent):
3631         (WebCore::Frame::handleMousePressEventTripleClick):
3632         (WebCore::Frame::handleMousePressEventSingleClick):
3633         (WebCore::Frame::handleMouseMoveEvent):
3634         (WebCore::Frame::handleMouseReleaseEvent):
3635         * page/FrameView.cpp:
3636         (WebCore::FrameView::handleMousePressEvent):
3637         (WebCore::selectCursor):
3638         (WebCore::FrameView::dispatchDragEvent):
3639         (WebCore::FrameView::prepareMouseEvent):
3640         (WebCore::FrameView::handleWheelEvent):
3641         * platform/ScrollView.h:
3642         * platform/Widget.cpp:
3643         (WebCore::Widget::convertToContainingWindow):
3644         * platform/Widget.h:
3645         * platform/mac/ScrollViewMac.mm:
3646         (WebCore::ScrollView::convertToContainingWindow):
3647         (WebCore::ScrollView::convertFromContainingWindow):
3648         * platform/mac/WidgetMac.mm:
3649         (WebCore::Widget::convertToContainingWindow):
3650         (WebCore::Widget::convertFromContainingWindow):
3651         * platform/win/ScrollViewWin.cpp:
3652         (WebCore::ScrollView::convertToContainingWindow):
3653         (WebCore::ScrollView::convertFromContainingWindow):
3654         * rendering/RenderLayer.cpp:
3655         (WebCore::RenderLayer::resize):
3656
3657 2006-09-28  Alice Liu  <alice.liu@apple.com>
3658
3659         Build fix by adding missing files for CommandByName
3660
3661         * WebCore.xcodeproj/project.pbxproj:
3662
3663 2006-09-28  Alice Liu  <alice.liu@apple.com>
3664
3665         Adding CommandByName files to the vcproj
3666
3667         * WebCore.vcproj/WebCore/WebCore.vcproj:
3668
3669 2006-09-28  Alice Liu  <alice.liu@apple.com>
3670
3671         Reviewed by Adam Roben.
3672
3673         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. 
3674         This patch also exposes some UBRK-related utilities so that they can be used elsewhere.
3675         This patch also changes windows PlatformMouseEvent so that we can detect multiple-click mouse events
3676
3677         * editing/CommandByName.cpp: Added.
3678         Added a command class that hangs off the frame so the frame can call commands more easily.  
3679         (WebCore::Frame::commandImp):
3680         (WebCore::Frame::execCopy):
3681         (WebCore::Frame::execCut):
3682         (WebCore::Frame::execDelete):
3683         (WebCore::Frame::execForwardDelete):
3684         (WebCore::Frame::execPaste):
3685         (WebCore::Frame::execMoveLeft):
3686         (WebCore::Frame::execMoveRight):
3687         (WebCore::Frame::execMoveUp):
3688         (WebCore::Frame::execMoveDown):
3689         (WebCore::Frame::execSelectAll):
3690         (WebCore::Frame::execSelectLeft):
3691         (WebCore::Frame::execSelectRight):
3692         (WebCore::Frame::execSelectUp):
3693         (WebCore::Frame::execSelectDown):
3694         (WebCore::Frame::enabled):
3695         (WebCore::Frame::enabledAnySelection):
3696         (WebCore::Frame::enabledAnyEditableSelection):
3697         (WebCore::Frame::enabledPaste):
3698         (WebCore::Frame::enabledAnyRangeSelection):
3699         (WebCore::Frame::enabledAnyEditableRangeSelection):
3700         (WebCore::Frame::createCommandDictionary):
3701         (WebCore::Frame::Command::):
3702         (WebCore:::m_frame):
3703         (WebCore::CommandByName::execCommand):
3704         * editing/CommandByName.h: Added.
3705         * page/Frame.cpp:
3706         Added implementation of accessor for CommandByName member
3707         (WebCore::Frame::command):
3708         * page/Frame.h:
3709         Added accessor for CommandByName member
3710         * page/FramePrivate.h:
3711         Added a CommandByName member
3712         (WebCore::FramePrivate::FramePrivate):
3713         * platform/PlatformMouseEvent.h:
3714         Changed constructor prototype
3715         * platform/StringImpl.cpp:
3716         Exposing getWordBreakIterator to be used elsewhere
3717         (WebCore::getWordBreakIterator):
3718         * platform/StringImpl.h:
3719         Exposing getWordBreakIterator to be used elsewhere
3720         * platform/win/MouseEventWin.cpp:
3721         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
3722         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3723
3724 2006-09-28  Adam Roben  <aroben@apple.com>
3725
3726         Reviewed by Adele.
3727
3728         Remove no-longer-used PopUpButton.
3729
3730         * WebCore.vcproj/WebCore/WebCore.vcproj: Remove PopUpButton.h
3731         * WebCore.xcodeproj/project.pbxproj: Remove PopUpButton.h,
3732         PopUpButtonMac.mm
3733         * platform/PopUpButton.h: Removed.
3734         * platform/mac/PopUpButtonMac.mm: Removed.
3735         * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
3736         * rendering/DeprecatedRenderSelect.cpp: Change #include of
3737         PopUpButton.h to ListBox.h
3738
3739 2006-09-28  Darin Adler  <darin@apple.com>
3740
3741         Reviewed by Alice.
3742
3743         - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
3744           10% perf. regression (copying strings while decoding)
3745
3746         Use Vector<UChar> instead of String when building up the decoded string in
3747         the ICU and Mac decoders. Using String leads to O(n^2) behavior because
3748         String grows the buffer every single time that append is called. Using
3749         Vector::append instead of String::append also avoids constructing a string
3750         each time just to append and a questionable copy that is done inside the
3751         String::append function which also contributed to the slowness.
3752
3753         * platform/PlatformString.h:
3754         * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
3755         Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
3756         allocation.
3757         * platform/StringImpl.h:
3758         * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
3759
3760         * platform/StreamingTextDecoder.h:
3761         * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
3762         Change to use a Vector<UChar> instead of a String, since vectors have better
3763         resizing performance (they store a separate capacity).
3764
3765         * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
3766         * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
3767         Change to use Vector<UChar> instead of String and then create a string at
3768         the end of the process using the new adopt function.
3769
3770 2006-09-28  Sam Weinig  <sam.weinig@gmail.com>
3771
3772         Reviewed by Tim H.
3773
3774         Patch for http://bugs.webkit.org/show_bug.cgi?id=11057
3775         Auto-generate more SVG Objective-C bindings
3776
3777         - Auto-generates DOMSVGAnimatedAngle, DOMSVGAnimatedBoolean, 
3778           DOMSVGAnimatedEnumeration, DOMSVGAnimatedInteger, DOMSVGAnimatedLength,
3779           DOMSVGAnimatedLengthList, DOMSVGAnimatedNumber, DOMSVGAnimatedString,
3780           DOMSVGAnimatedTransformList, DOMSVGExternalResourcesRequired,
3781           DOMSVGLangSpace, DOMSVGLocatable, DOMSVGMetadataElement, DOMSVGRectElement,
3782           DOMSVGStringList, DOMSVGStylable, DOMSVGStyleElement, DOMSVGTests, 
3783           and DOMSVGTransformable.
3784
3785         - Adds ability to CodeGeneratorObjC.pm to handle interfaces with mulitple
3786           parent interfaces and the SVG animated classes.
3787
3788         - Corrects CodeGenerator.pm to only skip the first parent for the main 
3789           interface.
3790
3791         * DerivedSources.make:
3792         * WebCore.xcodeproj/project.pbxproj:
3793         * bindings/objc/DOMInternal.h:
3794         * bindings/objc/DOMSVG.h:
3795         * bindings/scripts/CodeGenerator.pm:
3796         * bindings/scripts/CodeGeneratorObjC.pm:
3797         * ksvg2/svg/SVGAnimatedAngle.idl:
3798         * ksvg2/svg/SVGAnimatedBoolean.idl:
3799         * ksvg2/svg/SVGAnimatedEnumeration.idl:
3800         * ksvg2/svg/SVGAnimatedInteger.idl:
3801         * ksvg2/svg/SVGAnimatedLength.idl:
3802         * ksvg2/svg/SVGAnimatedLengthList.idl:
3803         * ksvg2/svg/SVGAnimatedNumber.idl:
3804         * ksvg2/svg/SVGAnimatedPathData.idl:
3805         * ksvg2/svg/SVGAnimatedString.idl:
3806         * ksvg2/svg/SVGAnimatedTransformList.idl:
3807         * ksvg2/svg/SVGExternalResourcesRequired.idl:
3808         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl:
3809         * ksvg2/svg/SVGFitToViewBox.idl:
3810         * ksvg2/svg/SVGLangSpace.idl:
3811         * ksvg2/svg/SVGLocatable.idl:
3812         * ksvg2/svg/SVGMetadataElement.idl:
3813         * ksvg2/svg/SVGStringList.idl:
3814         * ksvg2/svg/SVGStylable.idl:
3815         * ksvg2/svg/SVGStyleElement.idl:
3816         * ksvg2/svg/SVGTests.idl:
3817         * ksvg2/svg/SVGTransformable.idl:
3818         * ksvg2/svg/SVGURIReference.idl:
3819         * ksvg2/svg/SVGUnitTypes.idl:
3820         * ksvg2/svg/SVGZoomAndPan.idl:
3821
3822 2006-09-28  Brady Eidson  <beidson@apple.com>
3823
3824         Reviewed by Mitz Pettel!!!
3825
3826         Change the error code check for common functions from SQLResultOk to SQLResultDone 
3827
3828         * loader/icon/IconDatabase.cpp:
3829         (WebCore::IconDatabase::forgetPageURLQuery):
3830         (WebCore::IconDatabase::setIconIDForPageURLQuery):
3831         (WebCore::IconDatabase::addIconForIconURLQuery):
3832
3833 2006-09-28  Dave Hyatt  <hyatt@apple.com>
3834
3835         Just eliminate MapWindowPoints usage and use the HWND as
3836         the viewport.
3837
3838         * platform/win/MouseEventWin.cpp:
3839         (WebCore::positionForEvent):
3840         * platform/win/ScrollViewWin.cpp:
3841         (WebCore::ScrollView::viewportToContents):
3842         (WebCore::ScrollView::contentsToViewport):
3843
3844 2006-09-27  David Hyatt  <hyatt@apple.com>
3845
3846         Fix for bug 9222, cursor is wrong when mousing over overflow scrollbars in textareas.  Make sure
3847         selectCursor checks for whether or not a scrollbar was hit.  Also stub out a mouseMoved method for
3848         scrollbars to provide hover feedback if needed.
3849
3850         Reviewed by Eric
3851
3852         * page/FrameView.cpp:
3853         (WebCore::selectCursor):
3854         (WebCore::FrameView::handleMouseMoveEvent):
3855         * platform/ScrollBar.h:
3856         (WebCore::ScrollBar::mouseMoved):
3857
3858 2006-09-27  MorganL  <morganl.webkit@yahoo.com>
3859
3860         Reviewed by Maciej and Adam, landed by Adam
3861
3862         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11072
3863         Windows build is busted
3864
3865         * platform/win/TemporaryLinkStubs.cpp:
3866         (ScrollView::paint):
3867         (ScrollView::themeChanged):
3868
3869 2006-09-27  Eric Seidel  <eric@eseidel.com>
3870
3871         Reviewed by mitz.
3872
3873         paths with no fill specified default to black but do not recieve paint-related mouse events
3874         http://bugs.webkit.org/show_bug.cgi?id=11069
3875         The default fill was being applied at the wrong place in the rendering chain, causing this problem.
3876
3877         Test: svg/custom/hover-default-fill.svg
3878
3879         * kcanvas/RenderPath.cpp:
3880         (WebCore::RenderPath::nodeAtPoint): use isFilled and isStroked
3881         * ksvg2/css/SVGRenderStyle.h: use defaultFill() and defaultStroke()
3882         * ksvg2/misc/KCanvasRenderingStyle.cpp:
3883         (WebCore::KSVGPainterFactory::isFilled): remove null check
3884         (WebCore::KSVGPainterFactory::fillPaintServer): remove null check
3885         (WebCore::KSVGPainterFactory::isStroked): remove null check
3886         (WebCore::KSVGPainterFactory::strokePaintServer): remove null check
3887         * ksvg2/svg/SVGPaint.cpp:
3888         (WebCore::SVGPaint::defaultFill): added.
3889         (WebCore::SVGPaint::defaultStroke): added.
3890         * ksvg2/svg/SVGPaint.h:
3891
3892 2006-09-27  Rob Buis  <buis@kde.org>
3893
3894         Reviewed by eseidel.
3895
3896         http://bugs.webkit.org/show_bug.cgi?id=11015
3897         SVG handles em units incorrectly
3898
3899         Calculate viewport coordinates at layout time, since
3900         at this point the font size is known and lengths depending
3901         on font sizes can be calculated correctly.
3902
3903         * kcanvas/RenderSVGContainer.cpp:
3904         (WebCore::RenderSVGContainer::layout):
3905         (WebCore::RenderSVGContainer::viewport):
3906         (WebCore::RenderSVGContainer::calcViewport):
3907         * kcanvas/RenderSVGContainer.h:
3908         * ksvg2/svg/SVGLength.cpp:
3909         (WebCore::SVGLength::updateValue):
3910         * ksvg2/svg/SVGMarkerElement.cpp:
3911         (WebCore::SVGMarkerElement::createRenderer):
3912         * ksvg2/svg/SVGSVGElement.cpp:
3913         (WebCore::SVGSVGElement::createRenderer):
3914         (WebCore::SVGSVGElement::attributeChanged):
3915         * ksvg2/svg/SVGSVGElement.h:
3916
3917 2006-09-27  Eric Seidel  <eric@eseidel.com>
3918
3919         Reviewed by darin.
3920
3921         Change our invalid-fill error behavior to match Opera (and soon Firefox)
3922         http://bugs.webkit.org/show_bug.cgi?id=11017
3923
3924         * ksvg2/misc/KCanvasRenderingStyle.cpp:
3925         (WebCore::KSVGPainterFactory::isFilled):
3926         (WebCore::KSVGPainterFactory::fillPaintServer):
3927         (WebCore::KSVGPainterFactory::isStroked):
3928         (WebCore::KSVGPainterFactory::strokePaintServer):
3929
3930 2006-09-27  Brady Eidson  <beidson@apple.com>
3931
3932         Build fix
3933
3934         * loader/icon/IconDatabase.cpp:
3935         (WebCore::readySQLStatement):
3936
3937 2006-09-27  Brady Eidson  <beidson@apple.com>
3938
3939         Reviewed by Adam
3940
3941         In very specific circumstances, prepared SQLStatements can become invalid without
3942         any warning.  This checks for that state and re-prepares the statement and also
3943         adds more aggressive error-checking everywhere these statements are used.
3944
3945         * loader/icon/IconDatabase.cpp:
3946         (WebCore::readySQLStatement): Check if the statement is expired - reprepare it
3947         (WebCore::IconDatabase::imageDataForIconURLQuery): More thoroughly catch error cases
3948         (WebCore::IconDatabase::timeStampForIconURLQuery): Ditto
3949         (WebCore::IconDatabase::iconURLForPageURLQuery): Ditto
3950         (WebCore::IconDatabase::forgetPageURLQuery): Ditto
3951         (WebCore::IconDatabase::setIconIDForPageURLQuery): Ditto
3952         (WebCore::IconDatabase::getIconIDForIconURLQuery): Ditto
3953         (WebCore::IconDatabase::addIconForIconURLQuery): Ditto
3954         (WebCore::IconDatabase::hasIconForIconURLQuery): Ditto
3955         * loader/icon/SQLStatement.cpp:
3956         (WebCore::SQLStatement::isExpired): Added (accessor to sqlite3_expired())
3957         * loader/icon/SQLStatement.h:
3958
3959 2006-09-26  Darin Adler  <darin@apple.com>
3960
3961         Reviewed by Steve.
3962
3963         - clean up options for font code path
3964
3965         * platform/Font.h:
3966         * platform/Font.cpp:
3967         (WebCore::Font::setCodePath): Added. Replaces boolean version.
3968         (WebCore::Font::canUseGlyphCache): Update to handle "never use complex" case too.
3969
3970         * platform/mac/WebCoreTextRenderer.mm:
3971         (WebCoreSetAlwaysUseATSU): Change to call setCodePath.
3972
3973 2006-09-26  John Sullivan  <sullivan@apple.com>
3974
3975         Reviewed by Darin
3976
3977         * bridge/mac/WebCoreFrameBridge.h:
3978         * bridge/mac/WebCoreFrameBridge.mm:
3979         (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:limit:]):
3980         Added limit parameter, passed down to Frame
3981         
3982         * page/Frame.h:
3983         * page/Frame.cpp:
3984         (WebCore::Frame::markAllMatchesForText):
3985         Added limit parameter. Stop the search if it hits limit.
3986
3987 2006-09-26  Sean Gies  <seangies@apple.com>
3988
3989         Reviewed by Brady Eidson.
3990
3991         * platform/cg/ImageCG.cpp: Removed #if's -- Darin said we don't need these.
3992
3993 2006-09-26  Justin Garcia  <justin.garcia@apple.com>
3994
3995         Reviewed by john
3996         
3997         <rdar://problem/4747695> 
3998         Gmail Editor: Crash at WebCore::Range::startPosition() when decreasing a indent
3999         
4000         * editing/DeleteSelectionCommand.cpp:
4001         (WebCore::DeleteSelectionCommand::initializeStartEnd): Stop expanding
4002         to select special elements that are fully selected after expansion
4003         moves to positions that are visually distinct from the originals.
4004         * editing/InsertListCommand.cpp:
4005         (WebCore::InsertListCommand::doApply): If the content of the list 
4006         item will be moved into another list, put it in a list item.
4007
4008 2006-09-26  Geoffrey Garen <ggaren@apple.com>
4009
4010         Reviewed by Darin.
4011         
4012         Temporary work-around for frame lifetime issue.
4013
4014         * page/Frame.cpp:
4015         (WebCore::Frame::clear):
4016         (WebCore::Frame::disconnectOwnerElement):
4017
4018 2006-09-26  Sam Weinig  <sam.weinig@gmail.com>
4019
4020         Reviewed by Tim H.
4021
4022         Patch for http://bugs.webkit.org/show_bug.cgi?id=11038
4023         Auto-generate DOMSVGElement for the Objective-C bindings
4024
4025         - Auto-generates DOMSVGElement.
4026
4027         - Make SVGExceptions work like all the other ExceptionCode
4028           extensions (Range, XPath, etc.) by adding SVGExceptionOffset
4029           and SVGExceptionMax.
4030
4031         * DerivedSources.make:
4032         * WebCore.xcodeproj/project.pbxproj:
4033         * bindings/js/kjs_binding.cpp:
4034         (KJS::):
4035         (KJS::setDOMException):
4036         * bindings/objc/DOMInternal.h:
4037         * bindings/objc/DOMInternal.mm:
4038         (raiseDOMException):
4039         * bindings/objc/DOMSVG.h:
4040         * bindings/objc/DOMSVGExecption.h: Added.
4041         * ksvg2/ksvg.h:
4042         * ksvg2/svg/SVGElement.cpp:
4043         (WebCore::SVGElement::setId):
4044         (WebCore::SVGElement::setXmlbase):
4045         * ksvg2/svg/SVGElement.h:
4046         * ksvg2/svg/SVGElement.idl:
4047         * ksvg2/svg/SVGException.h: Added.
4048         (WebCore::):
4049
4050 2006-09-26  Eric Seidel  <eric@eseidel.com>
4051
4052         Reviewed by Tim H.
4053         
4054         viewbox parser does not allow <tab> as a delimiter
4055         http://bugs.webkit.org/show_bug.cgi?id=11014
4056
4057         Test: svg/hixie/viewbox/003.xml
4058
4059         * ksvg2/svg/svgpathparser.cpp:
4060         (WebCore::isWhitespace): new function
4061         (WebCore::skipOptionalSpaces):
4062         (WebCore::skipOptionalSpacesOrComma):
4063
4064 2006-09-26  Eric Seidel  <eric@eseidel.com>
4065
4066         Reviewed by Tim H.
4067
4068         SVGDocument::createElement does not create elements in the SVG namespace
4069         http://bugs.webkit.org/show_bug.cgi?id=10932
4070         
4071         Test: svg/custom/createelement.svg
4072
4073         * ksvg2/svg/SVGDocument.cpp:
4074         (WebCore::SVGDocument::createElement):
4075         * ksvg2/svg/SVGDocument.h:
4076
4077 2006-09-26  Eric Seidel  <eric@eseidel.com>
4078
4079         Reviewed by Tim H.
4080         
4081         RenderPath::nodeAtPoint does not respect stroke width
4082         http://bugs.webkit.org/show_bug.cgi?id=10829
4083
4084         Test: svg/custom/stroke-width-click.svg
4085
4086         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
4087         (WebCore::RenderPath::strokeContains):
4088         * kcanvas/device/quartz/QuartzSupport.h:
4089         * kcanvas/device/quartz/QuartzSupport.mm:
4090
4091 2006-09-26  Eric Seidel  <eric@eseidel.com>
4092
4093         Reviewed by mitz.
4094
4095         Bring animation back to life
4096         http://bugs.webkit.org/show_bug.cgi?id=11021
4097         
4098         Register/unregister SVGSVGElements as time containers on insertion/removal.
4099         Replace uses of DeprecatedString with String in SVGAnimationElement
4100         Various whitespace clean-up.
4101
4102         * ksvg2/misc/KSVGTimeScheduler.cpp:
4103         (WebCore::SVGTimer::notifyAll):
4104         * ksvg2/misc/SVGDocumentExtensions.cpp:
4105         (WebCore::SVGDocumentExtensions::startAnimations):
4106         (WebCore::SVGDocumentExtensions::pauseAnimations):
4107         (WebCore::SVGDocumentExtensions::unpauseAnimations):
4108         * ksvg2/svg/SVGAnimateTransformElement.cpp:
4109         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
4110         (WebCore::SVGAnimateTransformElement::parseTransformValue):
4111         * ksvg2/svg/SVGAnimateTransformElement.h:
4112         * ksvg2/svg/SVGAnimationElement.cpp:
4113         (WebCore::SVGAnimationElement::SVGAnimationElement):
4114         (WebCore::SVGAnimationElement::parseMappedAttribute):
4115         (WebCore::SVGAnimationElement::parseClockValue):
4116         (WebCore::SVGAnimationElement::targetAttribute):
4117         (WebCore::SVGAnimationElement::setTargetAttribute):
4118         (WebCore::SVGAnimationElement::attributeName):
4119         * ksvg2/svg/SVGAnimationElement.h:
4120         (WebCore::SVGAnimationElement::rendererIsNeeded):
4121         * ksvg2/svg/SVGSVGElement.cpp:
4122         (WebCore::SVGSVGElement::getScreenCTM):
4123         (WebCore::SVGSVGElement::createRenderer):
4124         (WebCore::SVGSVGElement::insertedIntoDocument): added, calls addTimeContainer(this)
4125         (WebCore::SVGSVGElement::removedFromDocument): added, calls removeTimeContainer(this)
4126         * ksvg2/svg/SVGSVGElement.h:
4127         * ksvg2/svg/SVGSetElement.cpp:
4128         (WebCore::SVGSetElement::handleTimerEvent):
4129         * ksvg2/svg/SVGURIReference.cpp:
4130         (WebCore::SVGURIReference::getTarget):
4131         * ksvg2/svg/SVGURIReference.h:
4132
4133 2006-09-26  Graham Dennis  <graham.dennis@gmail.com>
4134
4135         Reviewed by mitzpettel.
4136
4137         - fix http://bugs.webkit.org/show_bug.cgi?id=11020
4138         No-SVG build broken since r16549
4139         
4140         Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT
4141
4142         * css/cssparser.cpp:
4143         (WebCore::CSSParser::parseValue):
4144         * css/cssstyleselector.cpp:
4145         (WebCore::CSSStyleSelector::applyProperty):
4146         * page/FrameView.cpp:
4147         (WebCore::selectCursor):
4148         * platform/qt/GraphicsContextQt.cpp:
4149
4150 2006-09-26  Anders Carlsson  <acarlsson@apple.com>
4151
4152         Reviewed by Maciej.
4153
4154         http://bugs.webkit.org/show_bug.cgi?id=10820
4155         Add StringImpl::toDouble() and remove uses of .deprecatedString().toDouble()
4156         
4157         (Originally written by Eric Seidel).
4158         
4159         * bindings/js/kjs_window.cpp:
4160         (KJS::floatFeature):
4161         * ksvg2/svg/SVGAngle.cpp:
4162         (SVGAngle::setValueAsString):
4163         * ksvg2/svg/SVGAnimationElement.cpp:
4164         (SVGAnimationElement::parseMappedAttribute):
4165         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
4166         (SVGComponentTransferFunctionElement::parseMappedAttribute):
4167         * ksvg2/svg/SVGFECompositeElement.cpp:
4168         (WebCore::SVGFECompositeElement::parseMappedAttribute):
4169         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
4170         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
4171         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
4172         (SVGFEDisplacementMapElement::parseMappedAttribute):
4173         * ksvg2/svg/SVGFELightElement.cpp:
4174         (SVGFELightElement::parseMappedAttribute):
4175         * ksvg2/svg/SVGFEOffsetElement.cpp:
4176         (WebCore::SVGFEOffsetElement::parseMappedAttribute):
4177         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
4178         (SVGFESpecularLightingElement::parseMappedAttribute):
4179         * ksvg2/svg/SVGFETurbulenceElement.cpp:
4180         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
4181         * ksvg2/svg/SVGStopElement.cpp:
4182         (SVGStopElement::parseMappedAttribute):
4183         * platform/AtomicString.h:
4184         (WebCore::AtomicString::toDouble):
4185         * platform/PlatformString.h:
4186         * platform/String.cpp:
4187         (WebCore::String::toDouble):
4188         * platform/StringImpl.cpp:
4189         (WebCore::StringImpl::toDouble):
4190         * platform/StringImpl.h:
4191         * rendering/DeprecatedSlider.cpp:
4192         (WebCore::DeprecatedSlider::updateFromElement):
4193         * xml/XPathGrammar.y:
4194
4195 2006-09-25  David Harrison  <harrison@apple.com>
4196
4197         Reviewed by Tim Omernick and Tim Hatcher.
4198
4199         <rdar://problem/4717965> Text Field text parameterized attributes should work
4200         <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
4201
4202         * bridge/mac/WebCoreAXObject.mm:
4203         (-[WebCoreAXObject accessibilityAttributeValue:]):
4204         Use new line number support to implement NSAccessibilityInsertionPointLineNumberAttribute.
4205         
4206         (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
4207         Cleaned up. Added text field and text area parameterzed attributes.
4208         
4209         (-[WebCoreAXObject doAXLineForTextMarker:]):
4210         Fixed to be zero-based and to deal with the first position properly.
4211         
4212         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
4213         Minor formatting.
4214         
4215         (-[WebCoreAXObject textMarkerForIndex:lastIndexOK:]):
4216         (-[WebCoreAXObject indexForTextMarker:]):
4217         (-[WebCoreAXObject textMarkerRangeForRange:]):
4218         (-[WebCoreAXObject rangeForTextMarkerRange:]):
4219         New utility methods.
4220         
4221         (-[WebCoreAXObject doAXLineForIndex:]):
4222         (-[WebCoreAXObject doAXRangeForLine:]):
4223         (-[WebCoreAXObject doAXStringForRange:]):
4224         (-[WebCoreAXObject doAXRangeForPosition:]):
4225         (-[WebCoreAXObject doAXRangeForIndex:]):
4226         (-[WebCoreAXObject doAXBoundsForRange:]):
4227         (-[WebCoreAXObject doAXAttributedStringForRange:]):
4228         (-[WebCoreAXObject doAXRTFForRange:]):
4229         (-[WebCoreAXObject doAXStyleRangeForIndex:]):
4230         Implement text field and text area parameterized attributes.
4231          
4232         (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
4233         Added text field and text area parameterzed attributes.
4234
4235         * rendering/RenderTextControl.h:
4236         Made indexForVisiblePosition() and visiblePositionForIndex() public.
4237
4238 2006-09-25  Adam Roben  <aroben@apple.com>
4239
4240         Reviewed by Brady.
4241
4242         Build fixes.
4243
4244         * WebCore.vcproj/WebCore/WebCore.vcproj: Fix malformed XML.
4245         * platform/ResourceLoader.h: Store whether a particular job
4246         has received a response within the ResourceLoader object itself, since
4247         it's possible that we will enter the InternetReadFileExA while loop
4248         twice for the same job.
4249         * platform/ResourceLoaderInternal.h: Add private instance variable to
4250         store whether we've received a response.
4251         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
4252         * platform/win/GraphicsContextWin.cpp: Fix order of preprocessor
4253         directives.
4254         * platform/win/ResourceLoaderWin.cpp: 
4255         (WebCore::ResourceLoader::onRequestComplete): Ask the ResourceLoader
4256         whether it has received a response instead of assuming it hasn't.
4257         (WebCore::ResourceLoader::setHasReceivedResponse): Added.
4258         (WebCore::ResourceLoader::hasReceivedResponse): Added.
4259         * platform/win/TemporaryLinkStubs.cpp: Rename setKnobProportion to
4260         setProportion
4261         (ScrollBar::setProportion):
4262
4263 2006-09-25  Brady Eidson  <beidson@apple.com>
4264
4265         Requested by ggaren
4266
4267         Disabled IconDatabase logging by default
4268
4269         * platform/Logging.cpp:
4270         (WebCore::):
4271
4272 2006-09-25  Steve Falkenburg  <sfalken@apple.com>