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