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