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