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